[oe] [PATCHv2 2/2] recipes,classes: import a lot of recipes from meta-shr

Martin Jansa martin.jansa at gmail.com
Sun Apr 10 12:52:48 UTC 2011


* tested on shr-lite-image for om-gta02 and nokia900 (with meta-shr layer)
---
 meta-oe/classes/gitpkgv.bbclass                    |   84 +
 meta-oe/classes/gitver.bbclass                     |   80 +
 meta-oe/classes/glx-use-tls.bbclass                |    7 +
 meta-oe/classes/gpe.bbclass                        |   17 +
 meta-oe/classes/srctree.bbclass                    |  123 +
 meta-oe/recipes-connectivity/bluez/bluez4.inc      |   71 +
 .../bluez/bluez4/bluetooth.conf                    |   16 +
 .../fix-dfutool-usb-declaration-mismatch.patch     |   13 +
 .../bluez/bluez4/hid2hci_usb_init.patch            |   33 +
 .../bluez/bluez4/sbc-thumb.patch                   |   11 +
 meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb  |   15 +
 meta-oe/recipes-connectivity/connman/connman.inc   |   79 +
 .../recipes-connectivity/connman/connman/connman   |   42 +
 .../connman/connman/link-against-libnl2.patch      |   13 +
 .../connman/connman/shr/connman                    |   42 +
 .../recipes-connectivity/connman/connman_0.72.bb   |   31 +
 .../phonet-utils/phonet-utils_git.bb               |   18 +
 meta-oe/recipes-core/meta/distro-feed-configs.bb   |   32 +
 meta-oe/recipes-core/tasks/task-cli-tools.bb       |   52 +
 meta-oe/recipes-core/tasks/task-x11.bb             |   43 +
 .../gdbus-binding-tool/gdbus-binding-tool/COPYING  |  482 +
 .../gdbus-binding-tool/gdbus-binding-tool_git.bb   |   37 +
 .../use-usr-bin-env-for-python.patch               |   20 +
 .../gobject-introspection_0.9.10.bb                |   32 +
 .../recipes-devtools/json-glib/json-glib_0.10.4.bb |   14 +
 .../libcanberra-increase-buffer-size.patch         |   13 +
 .../libcanberra/libcanberra_0.26.bb                |   56 +
 meta-oe/recipes-devtools/libgee/libgee.inc         |   18 +
 meta-oe/recipes-devtools/libgee/libgee_0.6.0.bb    |   12 +
 .../python/python-dateutil_1.4.1.bb                |   24 +
 .../python/python-numeric/no-lapack.patch          |   33 +
 .../recipes-devtools/python/python-numeric_24.2.bb |   15 +
 .../recipes-devtools/python/python-pexpect_2.3.bb  |   24 +
 .../python/python-phoneutils_git.bb                |   15 +
 .../python/python-pyalsaaudio_0.4.bb               |   16 +
 .../recipes-devtools/python/python-pyserial_2.4.bb |   23 +
 .../recipes-devtools/python/python-pyyaml/setup.py |   64 +
 .../recipes-devtools/python/python-pyyaml_svn.bb   |   22 +
 .../python/python-vobject_0.8.1c.bb                |   17 +
 .../vala-dbus-binding-tool.inc                     |   16 +
 .../vala-dbus-binding-tool_git.bb                  |    6 +
 meta-oe/recipes-devtools/vala/vala.inc             |   25 +
 meta-oe/recipes-devtools/vala/vala_0.12.0.bb       |    7 +
 meta-oe/recipes-extended/tzcode/tzcode-native.inc  |   18 +
 .../recipes-extended/tzcode/tzcode-native_2011e.bb |   19 +
 meta-oe/recipes-extended/tzdata/tzdata.inc         |  178 +
 meta-oe/recipes-extended/tzdata/tzdata_2011e.bb    |   13 +
 .../recipes-graphics/drm/libdrm-2.4.24/glamo.patch | 1095 ++
 .../drm/libdrm-2.4.24/installtests.patch           |   43 +
 meta-oe/recipes-graphics/drm/libdrm_2.4.24.bb      |   39 +
 meta-oe/recipes-graphics/mesa/README               |   12 +
 meta-oe/recipes-graphics/mesa/mesa-7.10.2.inc      |   19 +
 .../recipes-graphics/mesa/mesa-7.10.2/glamo.patch  | 2425 +++
 .../recipes-graphics/mesa/mesa-7.10.2/uclibc.patch |   26 +
 meta-oe/recipes-graphics/mesa/mesa-common.inc      |   53 +
 meta-oe/recipes-graphics/mesa/mesa-dri.inc         |   10 +
 meta-oe/recipes-graphics/mesa/mesa-dri_7.10.2.bb   |    4 +
 meta-oe/recipes-graphics/mesa/mesa-xlib.inc        |    2 +
 meta-oe/recipes-graphics/mesa/mesa-xlib_7.10.2.bb  |    4 +
 meta-oe/recipes-graphics/mesa/mesa_7.10.2.bb       |    6 +
 .../recipes-graphics/tasks/task-fonts-truetype.bb  |   40 +
 .../ttf-fonts/ttf-liberation_0.2.bb                |   23 +
 .../pointercal-xinput/iphone3g/pointercal.xinput   |    1 +
 .../pointercal-xinput/nokia900/pointercal.xinput   |    2 +
 .../pointercal-xinput/om-gta01/pointercal.xinput   |    2 +
 .../pointercal-xinput/om-gta02/pointercal.xinput   |    2 +
 .../pointercal-xinput/pointercal.xinput            |    1 +
 .../xinput-calibrator/pointercal-xinput_0.0.bb     |   21 +
 .../xinput-calibrator/xinput-calibrator.inc        |    8 +
 .../xinput-calibrator/xinput-calibrator_0.6.1.bb   |   17 +
 meta-oe/recipes-graphics/xorg-app/rgb_1.0.4.bb     |   10 +
 meta-oe/recipes-graphics/xorg-app/xinput_1.5.3.bb  |    8 +
 .../recipes-graphics/xorg-app/xorg-app-common.inc  |   15 +
 .../recipes-graphics/xorg-doc/xorg-doc-common.inc  |   12 +
 .../xorg-doc/xorg-sgml-doctools_1.7.bb             |    8 +
 .../xorg-driver/xf86-input-keyboard_1.6.0.bb       |   17 +
 .../xorg-driver/xf86-input-mouse_1.7.0.bb          |   17 +
 .../xf86-input-tslib/10-x11-input-tslib.fdi        |   11 +
 .../xf86-input-tslib/99-xf86-input-tslib.rules     |    5 +
 .../xf86-input-tslib/double-free-crash.patch       |   20 +
 .../xserver-174-XGetPointerControl.patch           |   34 +
 .../xorg-driver/xf86-input-tslib_0.0.6.bb          |   32 +
 .../xorg-driver/xf86-video-fbdev_0.4.2.bb          |    9 +
 ...efine-GLAMO_CMDQ_MAX_COUNT-instead-of-mag.patch |   66 +
 .../xorg-driver/xf86-video-glamo_git.bb            |   19 +
 .../xorg-driver/xorg-driver-common.inc             |   40 +
 .../xorg-driver/xorg-driver-input.inc              |    4 +
 .../xorg-driver/xorg-driver-video.inc              |    4 +
 .../xorg-lib/liblbxutil-1.1.0/mkg3states-1.1.patch |   55 +
 .../recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb  |   14 +
 .../xorg-lib/libx11-1.4.1/keysymdef_include.patch  |   19 +
 .../libx11-1.4.1/x11_disable_makekeys.patch        |   29 +
 .../xorg-lib/libx11-1.4.3/keysymdef_include.patch  |   19 +
 .../libx11-1.4.3/x11_disable_makekeys.patch        |   29 +
 meta-oe/recipes-graphics/xorg-lib/libx11.inc       |   52 +
 meta-oe/recipes-graphics/xorg-lib/libx11_1.4.1.bb  |   12 +
 meta-oe/recipes-graphics/xorg-lib/libx11_1.4.3.bb  |   12 +
 meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.9.bb  |   28 +
 meta-oe/recipes-graphics/xorg-lib/libxfixes_5.0.bb |   22 +
 meta-oe/recipes-graphics/xorg-lib/libxi_1.4.2.bb   |   21 +
 .../recipes-graphics/xorg-lib/libxkbui_1.0.2.bb    |   10 +
 meta-oe/recipes-graphics/xorg-lib/libxt_1.1.1.bb   |   37 +
 meta-oe/recipes-graphics/xorg-lib/pixman_0.20.0.bb |    4 +-
 meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb |    4 +-
 .../recipes-graphics/xorg-lib/xorg-lib-common.inc  |    1 -
 .../recipes-graphics/xorg-proto/fixesproto_5.0.bb  |   21 +
 .../recipes-graphics/xorg-proto/xextproto_7.2.0.bb |   19 +
 .../xorg-proto/xorg-proto-common.inc               |    4 +-
 .../recipes-graphics/xorg-proto/xproto_7.0.21.bb   |   16 +
 .../xorg-util/util-macros_1.13.0.bb                |   15 +
 .../xorg-util/xorg-util-common.inc                 |   11 +
 .../xorg-xserver/xorg-xserver-common.inc           |  112 +
 ...ack-assume-pixman-supports-overlapped-blt.patch |   14 +
 .../hack-fbdev-ignore-return-mode.patch            |   39 +
 .../xorg-xserver/xserver-xorg-1.9.4/dolt-fix.patch |   22 +
 ...ack-assume-pixman-supports-overlapped-blt.patch |   14 +
 .../hack-fbdev-ignore-return-mode.patch            |   39 +
 .../xserver-xorg-1.9.4/randr-support.patch         |  102 +
 .../xserver-xorg-conf/am3517-evm/xorg.conf         |   29 +
 .../xserver-xorg-conf/am37x-evm/xorg.conf          |   29 +
 .../xserver-xorg-conf/archos5/xorg.conf            |   29 +
 .../xserver-xorg-conf/archos5it/xorg.conf          |   29 +
 .../xserver-xorg-conf/at91sam9263ek/xorg.conf      |   11 +
 .../xserver-xorg-conf/at91sam9g45ek/xorg.conf      |   23 +
 .../xserver-xorg-conf/babbage/xorg.conf            |   56 +
 .../xserver-xorg-conf/beagleboard/xorg.conf        |   29 +
 .../xorg-xserver/xserver-xorg-conf/bug/xorg.conf   |   75 +
 .../xorg-xserver/xserver-xorg-conf/bug20/xorg.conf |   37 +
 .../xserver-xorg-conf/cm-t35/xorg.conf             |   29 +
 .../xserver-xorg-conf/dm37x-evm/xorg.conf          |   29 +
 .../xserver-xorg-conf/eee701/xorg.conf             |   97 +
 .../xserver-xorg-conf/htcdream/xorg.conf           |   69 +
 .../xserver-xorg-conf/htcleo/xorg.conf             |   73 +
 .../xserver-xorg-conf/igep0020/xorg.conf           |   29 +
 .../xorg-xserver/xserver-xorg-conf/ion/xorg.conf   |   51 +
 .../xserver-xorg-conf/iphone3g/xorg.conf           |   29 +
 .../xorg-xserver/xserver-xorg-conf/mh355/xorg.conf |   47 +
 .../xserver-xorg-conf/nokia800/xorg.conf           |   29 +
 .../xserver-xorg-conf/nokia900/xorg.conf           |   62 +
 .../xserver-xorg-conf/om-gta01/xorg.conf           |   49 +
 .../xserver-xorg-conf/om-gta02/xorg.conf           |   55 +
 .../xserver-xorg-conf/omap3-pandora/xorg.conf      |   24 +
 .../xserver-xorg-conf/omap3-touchbook/xorg.conf    |   25 +
 .../xorg-xserver/xserver-xorg-conf/omap3/xorg.conf |   29 +
 .../xserver-xorg-conf/omap3evm/xorg.conf           |   29 +
 .../xserver-xorg-conf/omapzoom/xorg.conf           |   29 +
 .../xserver-xorg-conf/omapzoom2/xorg.conf          |   29 +
 .../xserver-xorg-conf/omapzoom36x/xorg.conf        |   29 +
 .../xorg-xserver/xserver-xorg-conf/overo/xorg.conf |   29 +
 .../xserver-xorg-conf/palmpre/xorg.conf            |   58 +
 .../xserver-xorg-conf/ronetix-pm9263/xorg.conf     |   47 +
 .../xorg-xserver/xserver-xorg-conf/spitz/xorg.conf |   49 +
 .../xserver-xorg-conf/vortex86sx/xorg.conf         |   13 +
 .../xserver-xorg-conf/xilinx-ml507/xorg.conf       |   39 +
 .../xserver-xorg-conf/xilinx-virtex5/xorg.conf     |   38 +
 .../xorg-xserver/xserver-xorg-conf_0.1.bb          |   17 +
 .../xorg-xserver/xserver-xorg_1.10.0.901.bb        |   29 +
 .../xorg-xserver/xserver-xorg_1.9.4.bb             |   31 +
 .../xorg-xserver/xserver-xorg_git.bb               |   38 +
 .../89xTs_Calibrate.xinput_calibrator.patch        |   12 +
 .../xserver-common-1.34/89xdgautostart.sh          |    9 +
 .../xserver-common-1.34/90xXWindowManager.patch    |   11 +
 .../Xserver.add.dpi.for.gta.patch                  |   29 +
 .../Xserver.add.nocursor.for.gta.patch             |   20 +
 .../Xserver.add.xserver-system.patch               |   12 +
 .../xserver-common-1.34/Xserver.n900.patch         |   17 +
 .../xserver-common-1.34/gplv2-license.patch        |  353 +
 .../xserver-common/xserver-common-1.34/setDPI.sh   |   92 +
 .../xserver-common/xserver-common_1.34.bb          |   38 +
 .../xserver-nodm-init-2.0/gplv2-license.patch      |  353 +
 .../xserver-nodm-init-2.0/xserver-nodm             |   44 +
 .../xserver-nodm-init/xserver-nodm-init_2.0.bb     |   27 +
 .../ca-certificates_20090814+nmu2.bb               |   40 +
 .../ca-certificates/files/remove-c-rehash.patch    |   29 +
 .../dfu-util/dfu-util-native_svn.bb                |   16 +
 meta-oe/recipes-support/dfu-util/dfu-util.inc      |   13 +
 meta-oe/recipes-support/dfu-util/dfu-util_0.1.bb   |    7 +
 meta-oe/recipes-support/dfu-util/dfu-util_svn.bb   |   16 +
 .../recipes-support/farsight/farsight2_0.0.22.bb   |   23 +
 meta-oe/recipes-support/farsight/libnice_0.0.13.bb |   25 +
 .../recipes-support/fbset/fbset-2.1/makefile.patch |   11 +
 meta-oe/recipes-support/fbset/fbset-modes.bb       |   17 +
 meta-oe/recipes-support/fbset/fbset-modes/fb.modes |    3 +
 .../fbset/fbset-modes/om-gta01/fb.modes            |   29 +
 .../fbset/fbset-modes/omap3-pandora/fb.modes       |    6 +
 .../fbset/fbset-modes/qemuarm/fb.modes             |   17 +
 .../fbset/fbset-modes/qemumips/fb.modes            |   17 +
 meta-oe/recipes-support/fbset/fbset_2.1.bb         |   38 +
 meta-oe/recipes-support/lcms/lcms_1.17.bb          |   14 +
 .../libiconv/libiconv-1.13.1/autoconf.patch        |16018 ++++++++++++++++++++
 meta-oe/recipes-support/libiconv/libiconv.inc      |   15 +
 .../recipes-support/libiconv/libiconv_1.13.1.bb    |   25 +
 meta-oe/recipes-support/libnl/libnl.inc            |    9 +
 .../recipes-support/libnl/libnl/fix-pc-file.patch  |   11 +
 .../libnl/libnl/fix-pktloc-dep-race.patch          |   20 +
 meta-oe/recipes-support/libnl/libnl_2.0.bb         |   23 +
 meta-oe/recipes-support/libnl/libnl_git.bb         |   20 +
 .../libsdl-ttf/libsdl-ttf-2.0.10/configure.patch   |   13 +
 .../libsdl-ttf/libsdl-ttf_2.0.10.bb                |   30 +
 meta-oe/recipes-support/libyaml/libyaml_0.1.3.bb   |   14 +
 .../lzma/lzma-4.65/001-large_files.patch           |   13 +
 .../recipes-support/lzma/lzma-4.65/002-lzmp.patch  | 1059 ++
 .../lzma/lzma-4.65/003-compile_fixes.patch         |   26 +
 .../lzma/lzma-4.65/100-static_library.patch        |   70 +
 .../lzma/lzma-4.65/makefile-cleanup.patch          |   18 +
 meta-oe/recipes-support/lzma/lzma.inc              |   36 +
 meta-oe/recipes-support/lzma/lzma_4.65.bb          |    5 +
 .../mpfr/mpfr-3.0.0/long-long-thumb.patch          |   11 +
 meta-oe/recipes-support/mpfr/mpfr-3.0.0/p4.patch   | 1752 +++
 meta-oe/recipes-support/mpfr/mpfr_3.0.0.bb         |   30 +
 .../nano/nano-2.2.5/ncursesw.includedir.patch      |   12 +
 meta-oe/recipes-support/nano/nano.inc              |   19 +
 meta-oe/recipes-support/nano/nano_2.2.5.bb         |    8 +
 meta-oe/recipes-support/pidgin/pidgin.inc          |   88 +
 .../pidgin/pidgin/pidgin-cross-python-265.patch    |   16 +
 .../pidgin/pidgin/pidgin.desktop-set-icon.patch    |   11 +
 .../pidgin/pidgin/purple-OE-branding-25.patch      |   16 +
 .../pidgin/pidgin/sanitize-configure.ac.patch      |   33 +
 meta-oe/recipes-support/pidgin/pidgin_2.7.9.bb     |   22 +
 .../recipes-support/poppler/poppler-data_0.4.0.bb  |   24 +
 meta-oe/recipes-support/poppler/poppler-fpu.inc    |    6 +
 meta-oe/recipes-support/poppler/poppler.inc        |   25 +
 meta-oe/recipes-support/poppler/poppler_0.12.3.bb  |   10 +
 .../samsung-soc-utils/s3c24xx-gpio_svn.bb          |   19 +
 .../samsung-soc-utils/s3c64xx-gpio_svn.bb          |   19 +
 .../samsung-soc-utils/sjf2410-linux-native_svn.bb  |   34 +
 meta-oe/recipes-support/talloc/talloc_2.0.1.bb     |   27 +
 meta-oe/recipes-support/tangogps/tangogps.inc      |   15 +
 .../recipes-support/tangogps/tangogps_0.99.4.bb    |    4 +
 meta-oe/recipes-support/usbpath/usbpath_svn.bb     |   19 +
 .../vala-terminal/vala-terminal_git.bb             |   18 +
 meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb |   20 +
 232 files changed, 29615 insertions(+), 6 deletions(-)
 create mode 100644 meta-oe/classes/gitpkgv.bbclass
 create mode 100644 meta-oe/classes/gitver.bbclass
 create mode 100644 meta-oe/classes/glx-use-tls.bbclass
 create mode 100644 meta-oe/classes/gpe.bbclass
 create mode 100644 meta-oe/classes/srctree.bbclass
 create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4.inc
 create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf
 create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch
 create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch
 create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch
 create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb
 create mode 100644 meta-oe/recipes-connectivity/connman/connman.inc
 create mode 100755 meta-oe/recipes-connectivity/connman/connman/connman
 create mode 100644 meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch
 create mode 100755 meta-oe/recipes-connectivity/connman/connman/shr/connman
 create mode 100644 meta-oe/recipes-connectivity/connman/connman_0.72.bb
 create mode 100644 meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
 create mode 100644 meta-oe/recipes-core/meta/distro-feed-configs.bb
 create mode 100644 meta-oe/recipes-core/tasks/task-cli-tools.bb
 create mode 100644 meta-oe/recipes-core/tasks/task-x11.bb
 create mode 100644 meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool/COPYING
 create mode 100644 meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool_git.bb
 create mode 100644 meta-oe/recipes-devtools/gobject-introspection/gobject-introspection/use-usr-bin-env-for-python.patch
 create mode 100644 meta-oe/recipes-devtools/gobject-introspection/gobject-introspection_0.9.10.bb
 create mode 100644 meta-oe/recipes-devtools/json-glib/json-glib_0.10.4.bb
 create mode 100644 meta-oe/recipes-devtools/libcanberra/libcanberra/libcanberra-increase-buffer-size.patch
 create mode 100644 meta-oe/recipes-devtools/libcanberra/libcanberra_0.26.bb
 create mode 100644 meta-oe/recipes-devtools/libgee/libgee.inc
 create mode 100644 meta-oe/recipes-devtools/libgee/libgee_0.6.0.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-dateutil_1.4.1.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-numeric/no-lapack.patch
 create mode 100644 meta-oe/recipes-devtools/python/python-numeric_24.2.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-pexpect_2.3.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-phoneutils_git.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-pyalsaaudio_0.4.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-pyserial_2.4.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-pyyaml/setup.py
 create mode 100644 meta-oe/recipes-devtools/python/python-pyyaml_svn.bb
 create mode 100644 meta-oe/recipes-devtools/python/python-vobject_0.8.1c.bb
 create mode 100644 meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
 create mode 100644 meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
 create mode 100644 meta-oe/recipes-devtools/vala/vala.inc
 create mode 100644 meta-oe/recipes-devtools/vala/vala_0.12.0.bb
 create mode 100644 meta-oe/recipes-extended/tzcode/tzcode-native.inc
 create mode 100644 meta-oe/recipes-extended/tzcode/tzcode-native_2011e.bb
 create mode 100644 meta-oe/recipes-extended/tzdata/tzdata.inc
 create mode 100644 meta-oe/recipes-extended/tzdata/tzdata_2011e.bb
 create mode 100644 meta-oe/recipes-graphics/drm/libdrm-2.4.24/glamo.patch
 create mode 100644 meta-oe/recipes-graphics/drm/libdrm-2.4.24/installtests.patch
 create mode 100644 meta-oe/recipes-graphics/drm/libdrm_2.4.24.bb
 create mode 100644 meta-oe/recipes-graphics/mesa/README
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-7.10.2.inc
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-7.10.2/glamo.patch
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-7.10.2/uclibc.patch
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-common.inc
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-dri.inc
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-dri_7.10.2.bb
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-xlib.inc
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa-xlib_7.10.2.bb
 create mode 100644 meta-oe/recipes-graphics/mesa/mesa_7.10.2.bb
 create mode 100644 meta-oe/recipes-graphics/tasks/task-fonts-truetype.bb
 create mode 100644 meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/iphone3g/pointercal.xinput
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/nokia900/pointercal.xinput
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta01/pointercal.xinput
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta02/pointercal.xinput
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/pointercal.xinput
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator.inc
 create mode 100644 meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator_0.6.1.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-app/rgb_1.0.4.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-app/xinput_1.5.3.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-app/xorg-app-common.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-doc/xorg-doc-common.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-doc/xorg-sgml-doctools_1.7.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-keyboard_1.6.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-mouse_1.7.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/10-x11-input-tslib.fdi
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/99-xf86-input-tslib.rules
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/double-free-crash.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xserver-174-XGetPointerControl.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-video-fbdev_0.4.2.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-drm-define-GLAMO_CMDQ_MAX_COUNT-instead-of-mag.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xorg-driver-common.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xorg-driver-input.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-driver/xorg-driver-video.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/liblbxutil-1.1.0/mkg3states-1.1.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/keysymdef_include.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/x11_disable_makekeys.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/keysymdef_include.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/x11_disable_makekeys.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11_1.4.1.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libx11_1.4.3.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.9.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libxfixes_5.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libxi_1.4.2.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-lib/libxt_1.1.1.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-proto/fixesproto_5.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-proto/xextproto_7.2.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-proto/xproto_7.0.21.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-util/util-macros_1.13.0.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-util/xorg-util-common.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xorg-xserver-common.inc
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-assume-pixman-supports-overlapped-blt.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-fbdev-ignore-return-mode.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/dolt-fix.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-assume-pixman-supports-overlapped-blt.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-fbdev-ignore-return-mode.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/randr-support.patch
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am3517-evm/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am37x-evm/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5it/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9263ek/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9g45ek/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/babbage/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/beagleboard/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug20/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/cm-t35/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/dm37x-evm/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/eee701/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcdream/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcleo/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/igep0020/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ion/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/iphone3g/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/mh355/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia800/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia900/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta01/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta02/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-pandora/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-touchbook/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3evm/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom2/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom36x/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/overo/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/palmpre/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ronetix-pm9263/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/spitz/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/vortex86sx/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-ml507/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-virtex5/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xorg.conf
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf_0.1.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.10.0.901.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.9.4.bb
 create mode 100644 meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_git.bb
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xTs_Calibrate.xinput_calibrator.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xdgautostart.sh
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/90xXWindowManager.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.dpi.for.gta.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.nocursor.for.gta.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.xserver-system.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.n900.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/gplv2-license.patch
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/setDPI.sh
 create mode 100644 meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
 create mode 100644 meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch
 create mode 100755 meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm
 create mode 100644 meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb
 create mode 100644 meta-oe/recipes-support/ca-certificates/ca-certificates_20090814+nmu2.bb
 create mode 100644 meta-oe/recipes-support/ca-certificates/files/remove-c-rehash.patch
 create mode 100644 meta-oe/recipes-support/dfu-util/dfu-util-native_svn.bb
 create mode 100644 meta-oe/recipes-support/dfu-util/dfu-util.inc
 create mode 100644 meta-oe/recipes-support/dfu-util/dfu-util_0.1.bb
 create mode 100644 meta-oe/recipes-support/dfu-util/dfu-util_svn.bb
 create mode 100644 meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
 create mode 100644 meta-oe/recipes-support/farsight/libnice_0.0.13.bb
 create mode 100644 meta-oe/recipes-support/fbset/fbset-2.1/makefile.patch
 create mode 100644 meta-oe/recipes-support/fbset/fbset-modes.bb
 create mode 100644 meta-oe/recipes-support/fbset/fbset-modes/fb.modes
 create mode 100644 meta-oe/recipes-support/fbset/fbset-modes/om-gta01/fb.modes
 create mode 100644 meta-oe/recipes-support/fbset/fbset-modes/omap3-pandora/fb.modes
 create mode 100644 meta-oe/recipes-support/fbset/fbset-modes/qemuarm/fb.modes
 create mode 100644 meta-oe/recipes-support/fbset/fbset-modes/qemumips/fb.modes
 create mode 100644 meta-oe/recipes-support/fbset/fbset_2.1.bb
 create mode 100644 meta-oe/recipes-support/lcms/lcms_1.17.bb
 create mode 100644 meta-oe/recipes-support/libiconv/libiconv-1.13.1/autoconf.patch
 create mode 100644 meta-oe/recipes-support/libiconv/libiconv.inc
 create mode 100644 meta-oe/recipes-support/libiconv/libiconv_1.13.1.bb
 create mode 100644 meta-oe/recipes-support/libnl/libnl.inc
 create mode 100644 meta-oe/recipes-support/libnl/libnl/fix-pc-file.patch
 create mode 100644 meta-oe/recipes-support/libnl/libnl/fix-pktloc-dep-race.patch
 create mode 100644 meta-oe/recipes-support/libnl/libnl_2.0.bb
 create mode 100644 meta-oe/recipes-support/libnl/libnl_git.bb
 create mode 100644 meta-oe/recipes-support/libsdl-ttf/libsdl-ttf-2.0.10/configure.patch
 create mode 100644 meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.10.bb
 create mode 100644 meta-oe/recipes-support/libyaml/libyaml_0.1.3.bb
 create mode 100644 meta-oe/recipes-support/lzma/lzma-4.65/001-large_files.patch
 create mode 100644 meta-oe/recipes-support/lzma/lzma-4.65/002-lzmp.patch
 create mode 100644 meta-oe/recipes-support/lzma/lzma-4.65/003-compile_fixes.patch
 create mode 100644 meta-oe/recipes-support/lzma/lzma-4.65/100-static_library.patch
 create mode 100644 meta-oe/recipes-support/lzma/lzma-4.65/makefile-cleanup.patch
 create mode 100644 meta-oe/recipes-support/lzma/lzma.inc
 create mode 100644 meta-oe/recipes-support/lzma/lzma_4.65.bb
 create mode 100644 meta-oe/recipes-support/mpfr/mpfr-3.0.0/long-long-thumb.patch
 create mode 100644 meta-oe/recipes-support/mpfr/mpfr-3.0.0/p4.patch
 create mode 100644 meta-oe/recipes-support/mpfr/mpfr_3.0.0.bb
 create mode 100644 meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch
 create mode 100644 meta-oe/recipes-support/nano/nano.inc
 create mode 100644 meta-oe/recipes-support/nano/nano_2.2.5.bb
 create mode 100644 meta-oe/recipes-support/pidgin/pidgin.inc
 create mode 100644 meta-oe/recipes-support/pidgin/pidgin/pidgin-cross-python-265.patch
 create mode 100644 meta-oe/recipes-support/pidgin/pidgin/pidgin.desktop-set-icon.patch
 create mode 100644 meta-oe/recipes-support/pidgin/pidgin/purple-OE-branding-25.patch
 create mode 100644 meta-oe/recipes-support/pidgin/pidgin/sanitize-configure.ac.patch
 create mode 100644 meta-oe/recipes-support/pidgin/pidgin_2.7.9.bb
 create mode 100644 meta-oe/recipes-support/poppler/poppler-data_0.4.0.bb
 create mode 100644 meta-oe/recipes-support/poppler/poppler-fpu.inc
 create mode 100644 meta-oe/recipes-support/poppler/poppler.inc
 create mode 100644 meta-oe/recipes-support/poppler/poppler_0.12.3.bb
 create mode 100644 meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb
 create mode 100644 meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb
 create mode 100644 meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb
 create mode 100644 meta-oe/recipes-support/talloc/talloc_2.0.1.bb
 create mode 100644 meta-oe/recipes-support/tangogps/tangogps.inc
 create mode 100644 meta-oe/recipes-support/tangogps/tangogps_0.99.4.bb
 create mode 100644 meta-oe/recipes-support/usbpath/usbpath_svn.bb
 create mode 100644 meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
 create mode 100644 meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb

diff --git a/meta-oe/classes/gitpkgv.bbclass b/meta-oe/classes/gitpkgv.bbclass
new file mode 100644
index 0000000..bedceb9
--- /dev/null
+++ b/meta-oe/classes/gitpkgv.bbclass
@@ -0,0 +1,84 @@
+# gitpkgv.bbclass provides a GITPKGV and GITPKGVTAG variables to be
+# used in PKGV, as described bellow:
+#
+# - GITPKGV which is a sortable version with the format NN+GITHASH, to
+#   be used in PKGV, where
+#
+#   NN equals the total number of revs up to SRCREV
+#   GITHASH is SRCREV's (full) hash
+#
+# - GITPKGVTAG which is the output of 'git describe' allowing for
+#   automatic versioning
+#
+# gitpkgv.bbclass assumes the git repository has been cloned, and
+# contains SRCREV. So ${GITPKGV} and ${GITPKGVTAG} should never be
+# used in PV, only in PKGV.  It can handle SRCREV = ${AUTOREV}, as
+# well as SRCREV = "<some fixed git hash>".
+#
+# WARNING: if upstream repository is always using consistent and
+# sortable tag name scheme you can get sortable version including tag
+# name with ${GITPKGVTAG}, but be aware that ie tag sequence "v1.0,
+# v1.2, xtest, v2.0" will force you to increment PE to get upgradeable
+# path to v2.0 revisions
+#
+# use example:
+#
+# inherit gitpkgv
+#
+# PV = "1.0+gitr${SRCPV}"      # expands to something like 1.0+gitr3+4c1c21d7dbbf93b0df336994524313dfe0d4963b
+# PKGV = "1.0+gitr${GITPKGV}"  # expands also to something like 1.0+gitr31337+4c1c21d7d
+#
+# or
+#
+# inherit gitpkgv
+#
+# PV = "1.0+gitr${SRCPV}" # expands to something like 1.0+gitr3+4c1c21d7dbbf93b0df336994524313dfe0d4963b
+# PKGV = "${GITPKGVTAG}"  # expands to something like 1.0-31337+g4c1c21d
+#                           if there is tag v1.0 before this revision or
+#                           ver1.0-31337+g4c1c21d if there is tag ver1.0
+
+GITPKGV = "${@get_git_pkgv(d, False)}"
+GITPKGVTAG = "${@get_git_pkgv(d, True)}"
+
+def gitpkgv_drop_tag_prefix(version):
+    import re
+    if re.match("v\d", version):
+        return version[1:]
+    else:
+        return version
+
+def get_git_pkgv(d, use_tags):
+	import os
+	import bb
+
+	urls = bb.data.getVar('SRC_URI', d, 1).split()
+
+	for url in urls:
+		(type, host, path, user, pswd, parm) = bb.decodeurl(bb.data.expand(url, d))
+		if type in ['git']:
+
+			gitsrcname = '%s%s' % (host, path.replace('/', '.'))
+			repodir = os.path.join(bb.data.expand('${GITDIR}', d), gitsrcname)
+			if not os.path.exists(repodir):
+				return None
+
+			rev = bb.fetch.get_srcrev(d).split('+')[1]
+
+			cwd = os.getcwd()
+			os.chdir(repodir)
+
+			commits = bb.fetch.runfetchcmd("git rev-list %s -- 2> /dev/null | wc -l" % rev, d, quiet=True).strip()
+
+			if use_tags:
+				try:
+					ver = gitpkgv_drop_tag_prefix(bb.fetch.runfetchcmd("git describe %s 2>/dev/null" % rev, d, quiet=True).strip())
+				except Exception:
+					ver = "0.0-%s-g%s" % (commits, rev[:7])
+			else:
+				ver = "%s+%s" % (commits, rev[:7])
+
+			os.chdir(cwd)
+
+			return ver
+
+	return "0+0"
diff --git a/meta-oe/classes/gitver.bbclass b/meta-oe/classes/gitver.bbclass
new file mode 100644
index 0000000..ee8323d
--- /dev/null
+++ b/meta-oe/classes/gitver.bbclass
@@ -0,0 +1,80 @@
+# Copyright (C) 2009 Chris Larson <clarson at kergoth.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+#
+# gitver.bbclass provides a GITVER variable which is a (fairly) sane version,
+# for use in ${PV}, extracted from the ${S} git checkout, assuming it is one.
+# This is most useful in concert with srctree.bbclass.
+
+def git_drop_tag_prefix(version):
+    import re
+    if re.match("v\d", version):
+        return version[1:]
+    else:
+        return version
+
+GIT_TAGADJUST = "git_drop_tag_prefix(version)"
+GITVER = "${@get_git_pv('${S}', d, tagadjust=lambda version:${GIT_TAGADJUST})}"
+GITSHA = "${@get_git_hash('${S}', d)}"
+
+def get_git_hash(path, d):
+    return oe_run(d, ["git", "rev-parse", "--short", "HEAD"], cwd=path).rstrip()
+
+def get_git_pv(path, d, tagadjust=None):
+    import os
+    import oe.process
+
+    gitdir = os.path.abspath(os.path.join(d.getVar("S", True), ".git"))
+    def git(cmd):
+        try:
+            return oe_run(d, ["git"] + cmd, cwd=gitdir).rstrip()
+        except oe.process.CmdError, exc:
+            bb.fatal(str(exc))
+
+    try:
+        ver = oe_run(d, ["git", "describe", "--tags"], cwd=gitdir).rstrip()
+    except Exception, exc:
+        bb.fatal(str(exc))
+
+    if not ver:
+        try:
+            ver = get_git_hash(gitdir, d)
+        except Exception, exc:
+            bb.fatal(str(exc))
+
+        if ver:
+            return "0.0+%s" % ver
+        else:
+            return "0.0"
+    else:
+        if tagadjust:
+            ver = tagadjust(ver)
+        return ver
+
+def mark_recipe_dependencies(path, d):
+    from bb.parse import mark_dependency
+
+    gitdir = os.path.join(path, ".git")
+
+    # Force the recipe to be reparsed so the version gets bumped
+    # if the active branch is switched, or if the branch changes.
+    mark_dependency(d, os.path.join(gitdir, "HEAD"))
+
+    # Force a reparse if anything in the index changes.
+    mark_dependency(d, os.path.join(gitdir, "index"))
+
+    try:
+        ref = oe_run(d, ["git", "symbolic-ref", "-q", "HEAD"], cwd=gitdir).rstrip()
+    except oe.process.CmdError:
+        pass
+    else:
+        if ref:
+            mark_dependency(d, os.path.join(gitdir, ref))
+
+    # Catch new tags.
+    tagdir = os.path.join(gitdir, "refs", "tags")
+    if os.path.exists(tagdir):
+        mark_dependency(d, tagdir)
+
+python () {
+    mark_recipe_dependencies(d.getVar("S", True), d)
+}
diff --git a/meta-oe/classes/glx-use-tls.bbclass b/meta-oe/classes/glx-use-tls.bbclass
new file mode 100644
index 0000000..7530872
--- /dev/null
+++ b/meta-oe/classes/glx-use-tls.bbclass
@@ -0,0 +1,7 @@
+def get_tls_setting(bb, d):
+    # until we have no prober TLS support in uclibc disable it
+    if bb.data.getVar('TARGET_OS', d, 1).find('uclibc') >= 0 :
+        return ""
+    return "--enable-glx-tls"
+
+EXTRA_OECONF += "${@get_tls_setting(bb, d)}"
diff --git a/meta-oe/classes/gpe.bbclass b/meta-oe/classes/gpe.bbclass
new file mode 100644
index 0000000..7e042ee
--- /dev/null
+++ b/meta-oe/classes/gpe.bbclass
@@ -0,0 +1,17 @@
+DEPENDS_prepend = "virtual/libintl intltool-native "
+GPE_TARBALL_SUFFIX ?= "gz"
+SRC_URI = "${GPE_MIRROR}/${PN}-${PV}.tar.${GPE_TARBALL_SUFFIX}"
+FILES_${PN} += "${datadir}/gpe ${datadir}/application-registry"
+SECTION ?= "gpe"
+
+inherit gettext
+
+gpe_do_compile() {
+	oe_runmake PREFIX=${prefix}
+}
+
+gpe_do_install() {
+	oe_runmake PREFIX=${prefix} DESTDIR=${D} install
+}
+
+EXPORT_FUNCTIONS do_compile do_install
diff --git a/meta-oe/classes/srctree.bbclass b/meta-oe/classes/srctree.bbclass
new file mode 100644
index 0000000..1457e56
--- /dev/null
+++ b/meta-oe/classes/srctree.bbclass
@@ -0,0 +1,123 @@
+# Copyright (C) 2009 Chris Larson <clarson at kergoth.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+#
+# srctree.bbclass enables operation inside of an existing source tree for a
+# project, rather than using the fetch/unpack/patch idiom.
+#
+# By default, it expects that you're keeping the recipe(s) inside the
+# aforementioned source tree, but you could override S to point at an external
+# directory and place the recipes in a normal collection/overlay, if you so
+# chose.
+#
+# It also provides some convenience python functions for assembling your
+# do_clean, if you want to leverage things like 'git clean' to simplify the
+# operation.
+
+
+# Grab convenience methods & sane default for do_clean
+inherit clean
+
+# Build here
+S = "${FILE_DIRNAME}"
+SRC_URI = ""
+
+def remove_tasks(deltasks, d):
+    for task in filter(lambda k: d.getVarFlag(k, "task"), d.keys()):
+        deps = d.getVarFlag(task, "deps")
+        for preptask in deltasks:
+            if preptask in deps:
+                deps.remove(preptask)
+        d.setVarFlag(task, "deps", deps)
+
+addtask configure after do_setscene
+
+def merge_tasks(d):
+    """
+    Merges all of the operations that occur prior to do_populate_sysroot
+    into do_populate_sysroot.
+
+    This is necessary because of recipe variants (normal, native, cross,
+    sdk).  If a bitbake run happens to want to build more than one of
+    these variants in a single run, it's possible for them to step on one
+    another's toes, due to the shared ${S}.  Interleaved
+    configure/compile/install amongst variants will break things badly.
+    """
+    from itertools import chain
+    from bb import note
+
+    def __gather_taskdeps(task, seen):
+        for dep in d.getVarFlag(task, "deps"):
+            if not dep in seen:
+                __gather_taskdeps(dep, seen)
+        if not task in seen:
+            seen.append(task)
+
+    def gather_taskdeps(task):
+        items = []
+        __gather_taskdeps(task, items)
+        return items
+
+    newtask = "do_populate_sysroot_post"
+    mergedtasks = gather_taskdeps(newtask)
+    mergedtasks.pop()
+
+    for task in (key for key in d.keys()
+                 if d.getVarFlag(key, "task") and
+                 not key in mergedtasks):
+        deps = d.getVarFlag(task, "deps")
+        for mergetask in mergedtasks:
+            if mergetask in (d.getVarFlag(task, "recrdeptask"),
+                             d.getVarFlag(task, "recdeptask"),
+                             d.getVarFlag(task, "deptask")):
+                continue
+
+            if mergetask in deps:
+                deps.remove(mergetask)
+                #note("removing dep on %s from %s" % (mergetask, task))
+
+                if not newtask in deps:
+                    #note("adding dep on %s to %s" % (newtask, task))
+                    deps.append(newtask)
+        d.setVarFlag(task, "deps", deps)
+
+    # Pull cross recipe task deps over
+    depends = []
+    deptask = []
+    for task in mergedtasks[:-1]:
+        depends.append(d.getVarFlag(task, "depends") or "")
+        deptask.append(d.getVarFlag(task, "deptask") or "")
+
+    d.setVarFlag("do_populate_sysroot_post", "depends", " ".join(depends))
+    d.setVarFlag("do_populate_sysroot_post", "deptask", " ".join(deptask))
+
+python () {
+    remove_tasks(["do_patch", "do_unpack", "do_fetch"], d)
+    b = d.getVar("B", True)
+    if not b or b == d.getVar("S", True):
+        merge_tasks(d)
+}
+
+# Manually run do_install & all of its deps
+python do_populate_sysroot_post () {
+    from os.path import exists
+    from bb.build import exec_func, make_stamp
+    from bb import note
+
+    stamp = d.getVar("STAMP", True)
+
+    def rec_exec_task(task, seen):
+        for dep in d.getVarFlag(task, "deps"):
+            if not dep in seen:
+                rec_exec_task(dep, seen)
+        seen.add(task)
+        if not exists("%s.%s" % (stamp, task)):
+            note("%s: executing task %s" % (d.getVar("PF", True), task))
+            exec_func(task, d)
+            flags = d.getVarFlags(task)
+            if not flags.get('nostamp') and not flags.get('selfstamp'):
+                make_stamp(task, d)
+
+    rec_exec_task("do_populate_sysroot", set())
+}
+addtask populate_sysroot_post after do_populate_sysroot
+do_populate_sysroot_post[lockfiles] += "${S}/.lock"
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4.inc b/meta-oe/recipes-connectivity/bluez/bluez4.inc
new file mode 100644
index 0000000..747ae77
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4.inc
@@ -0,0 +1,71 @@
+DESCRIPTION = "Linux Bluetooth Stack Userland V4"
+HOMEPAGE = "http://www.bluez.org"
+SECTION = "libs"
+PRIORITY = "optional"
+LICENSE = "GPLv2/LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
+                    file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
+"
+DEPENDS = "gst-plugins-base alsa-lib virtual/libusb0 dbus-glib"
+INC_PR = "r8"
+
+# temporary solution until bug 5176 is properly fixed
+PROVIDES += "bluez-utils bluez-libs bluez-utils-dbus"
+RPROVIDES_bluez4 += "bluez-utils bluez-libs bluez-utils-dbus"
+RPROVIDES_bluez4-dev = "bluez-libs-dev"
+
+SRC_URI = "\
+  http://www.kernel.org/pub/linux/bluetooth/bluez-${PV}.tar.gz \
+  file://fix-dfutool-usb-declaration-mismatch.patch \
+  file://bluetooth.conf \
+"
+S = "${WORKDIR}/bluez-${PV}"
+
+inherit autotools update-rc.d
+
+EXTRA_OECONF = "\
+  --enable-gstreamer \
+  --enable-alsa \
+  --enable-usb \
+  --enable-netlink \
+  --enable-tools \
+  --enable-bccmd \
+  --enable-hid2hci \
+  --enable-dfutool \
+  --enable-hidd \
+  --enable-pand \
+  --enable-dund \
+  --disable-cups \
+  --enable-test \
+  --enable-manpages \
+  --enable-configfiles \
+  --enable-initscripts \
+  --disable-pcmciarules \
+"
+
+do_install_append() {
+        install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
+        install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
+        install -m 0644 ${S}/input/input.conf ${D}/${sysconfdir}/bluetooth/
+        # at_console doesn't really work with the current state of OE, so punch some more holes so people can actually use BT
+        install -m 0644 ${WORKDIR}/bluetooth.conf ${D}/${sysconfdir}/dbus-1/system.d/
+}
+
+INITSCRIPT_NAME = "bluetooth"
+INITSCRIPT_PARAMS = "defaults 23 19"
+
+PACKAGES =+ "gst-plugin-bluez libasound-module-bluez"
+
+FILES_gst-plugin-bluez = "${libdir}/gstreamer-0.10/lib*.so"
+FILES_libasound-module-bluez = "${libdir}/alsa-lib/lib*.so ${datadir}/alsa/bluetooth.conf"
+FILES_${PN} += "${libdir}/bluetooth/plugins/*.so ${base_libdir}/udev"
+FILES_${PN}-dev += "\
+  ${libdir}/bluetooth/plugins/*.la \
+  ${libdir}/alsa-lib/*.la \
+  ${libdir}/gstreamer-0.10/*.la \
+"
+
+FILES_${PN}-dbg += "\
+  ${libdir}/bluetooth/plugins/.debug \
+  ${libdir}/*/.debug \
+"
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf b/meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf
new file mode 100644
index 0000000..ca5e9e4
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf
@@ -0,0 +1,16 @@
+<!-- This configuration file specifies the required security policies
+     for Bluetooth core daemon to work. -->
+
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+
+  <!-- ../system.conf have denied everything, so we just punch some holes -->
+
+  <policy context="default">
+    <allow own="org.bluez"/>
+    <allow send_destination="org.bluez"/>
+    <allow send_interface="org.bluez.Agent"/>
+  </policy>
+
+</busconfig>
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch b/meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch
new file mode 100644
index 0000000..b1ee510
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch
@@ -0,0 +1,13 @@
+Index: bluez-4.27/tools/dfutool.c
+===================================================================
+--- bluez-4.27.orig/tools/dfutool.c
++++ bluez-4.27/tools/dfutool.c
+@@ -59,7 +59,7 @@
+ #endif
+ 
+ #ifdef NEED_USB_GET_BUSSES
+-static inline struct usb_bus *usb_get_busses(void)
++inline struct usb_bus *usb_get_busses(void)
+ {
+ 	return usb_busses;
+ }
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch b/meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch
new file mode 100644
index 0000000..ed15fd5
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch
@@ -0,0 +1,33 @@
+# Signed-off-by: Khem Raj <raj.khem at gmail.com>
+#
+# Use the new usb1 API for usb_init() and check for fails from 
+# usb_init (). Currently we see a crash on a system which does
+# not have USB because usb_init() fails and it cleans up all initialized
+# data (e.g. ctx) which is used in subsequent calls to libusb
+# We return immediately if usb_init() fails for some reason.
+
+Index: bluez-4.24/tools/hid2hci.c
+===================================================================
+--- bluez-4.24.orig/tools/hid2hci.c	2008-10-25 23:40:34.000000000 -0700
++++ bluez-4.24/tools/hid2hci.c	2008-12-29 22:06:04.000000000 -0800
+@@ -337,7 +337,7 @@
+ int main(int argc, char *argv[])
+ {
+ 	struct device_info dev[16];
+-	int i, opt, num, quiet = 0, mode = HCI;
++	int i, ret, opt, num, quiet = 0, mode = HCI;
+ 
+ 	while ((opt = getopt_long(argc, argv, "+01qh", main_options, NULL)) != -1) {
+ 		switch (opt) {
+@@ -361,8 +361,9 @@
+ 	argc -= optind;
+ 	argv += optind;
+ 	optind = 0;
+-
+-	usb_init();
++	ret = libusb_init();
++	if (ret < 0)
++		return ret;
+ 
+ 	num = find_devices(mode, dev, sizeof(dev) / sizeof(dev[0]));
+ 	if (num <= 0) {
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch b/meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch
new file mode 100644
index 0000000..3505426
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch
@@ -0,0 +1,11 @@
+--- bluez/sbc/sbc_math.h~	2008-03-05 20:18:03.000000000 +0000
++++ bluez/sbc/sbc_math.h	2008-10-27 13:39:27.000000000 +0000
+@@ -59,7 +59,7 @@
+ 
+ #define SBC_FIXED_0(val) { val = 0; }
+ #define MUL(a, b)        ((a) * (b))
+-#ifdef __arm__
++#if defined(__arm__) && !defined(__thumb__)
+ #define MULA(a, b, res) ({				\
+ 		int tmp = res;			\
+ 		__asm__(				\
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb b/meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb
new file mode 100644
index 0000000..ebb2dab
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb
@@ -0,0 +1,15 @@
+require bluez4.inc
+
+SRC_URI[md5sum] = "3059b7ef5168c84cd0c6a67034ce79f9"
+SRC_URI[sha256sum] = "11e9279e2669db996afd464b96d2c68f41f157f6eb9b8842a0bbcad8a4eac18d"
+
+DEPENDS += "libsndfile1"
+
+PR = "${INC_PR}.0"
+
+# Not all distros have a recent enough udev
+BTUDEV = " --disable-udevrules"
+BTUDEV_angstrom = " --enable-udevrules"
+BTUDEV_shr = " --enable-udevrules"
+
+EXTRA_OECONF += "${BTUDEV}"
diff --git a/meta-oe/recipes-connectivity/connman/connman.inc b/meta-oe/recipes-connectivity/connman/connman.inc
new file mode 100644
index 0000000..69f91b3
--- /dev/null
+++ b/meta-oe/recipes-connectivity/connman/connman.inc
@@ -0,0 +1,79 @@
+SUMMARY = "A daemon for managing internet connections within embedded devices"
+DESCRIPTION = "The ConnMan project provides a daemon for managing \
+internet connections within embedded devices running the Linux \
+operating system.  The Connection Manager is designed to be slim and \
+to use as few resources as possible, so it can be easily integrated. \
+It is a fully modular system that can be extended, through plug-ins, \
+to support all kinds of wired or wireless technologies. Also, \
+configuration methods, like DHCP and domain name resolving, are \
+implemented using plug-ins."
+HOMEPAGE = "http://connman.net/"
+BUGTRACKER = "http://bugs.meego.com/buglist.cgi?quicksearch=connman"
+LICENSE  = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
+                    file://src/main.c;beginline=1;endline=20;md5=4b55b550fa6b33cc2055ef30dd262b3e"
+
+# we need to define the depends here, the dynamic stuff is too late
+DEPENDS  = "libnl wpa-supplicant dbus glib-2.0 ppp busybox dhcp resolvconf bluez4"
+
+EXTRA_OECONF += "\
+    ac_cv_path_WPASUPPLICANT=/usr/sbin/wpa_supplicant \
+    ac_cv_path_DHCLIENT=/sbin/dhclient \
+    ac_cv_path_UDHCPC=/sbin/udhcpc \
+    ac_cv_path_RESOLVCONF=/sbin/resolvconf \
+    ac_cv_path_PPPD=/usr/sbin/pppd \
+"
+
+INITSCRIPT_NAME = "connman"
+INITSCRIPT_PARAMS = "start 05 5 2 . stop 22 0 1 6 ."
+
+PARALLEL_MAKE = ""
+
+inherit autotools pkgconfig update-rc.d
+
+do_configure_append() {
+	ln -sf . include/connman
+}
+
+do_compile_append() {
+	sed -i -e s:deny:allow:g src/connman-dbus.conf
+}
+
+do_install_append() {
+	install -d ${D}${sysconfdir}/init.d
+    install -m 0755 ${WORKDIR}/connman ${D}${sysconfdir}/init.d/connman
+}
+
+python populate_packages_prepend() {
+	depmap = dict( pppd="ppp", udhcp="busybox connman-scripts", dhclient="dhcp-client", wifi="wpa-supplicant", resolvconf="resolvconf", bluetooth="bluez4" )
+	packages = []
+	hook = lambda file,pkg,b,c,d:packages.append((file,pkg))
+	plugin_dir = bb.data.expand('${libdir}/connman/plugins/', d)
+	plugin_name = bb.data.expand('${PN}-plugin-%s', d)
+	do_split_packages(d, plugin_dir, '^(.*).so$', plugin_name, '${PN} plugin for %s', extra_depends='', hook=hook )
+	for (file, package) in packages:
+		plugintype = package.split( '-' )[-1]
+		if plugintype in depmap:
+			rdepends = bb.data.getVar( "RDEPENDS_%s" % package, d )
+			bb.note( "Adding rdependency on %s to package %s" % ( depmap[plugintype], package ) )
+			bb.data.setVar("RDEPENDS_%s" % package, depmap[plugintype], d)
+}
+
+PACKAGES_DYNAMIC = "${PN}-plugin-*"
+
+PACKAGES += "${PN}-scripts ${PN}-test-utils"
+
+FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*.so.* \
+            ${sysconfdir} ${sharedstatedir} ${localstatedir} \
+            ${base_bindir}/* ${base_sbindir}/* ${base_libdir}/*.so* ${datadir}/${PN} \
+            ${datadir}/pixmaps ${datadir}/applications \
+            ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
+            ${libdir}/bonobo/servers \
+            ${datadir}/dbus-1/system-services/*"
+
+FILES_${PN}-test-utils += "${libdir}/connman/test/*"
+
+FILES_${PN}-scripts += "${libdir}/connman/scripts"
+FILES_${PN}-dbg += "${libdir}/connman/*/.debug"
+FILES_${PN}-dev += "${libdir}/connman/*/*.la"
+
diff --git a/meta-oe/recipes-connectivity/connman/connman/connman b/meta-oe/recipes-connectivity/connman/connman/connman
new file mode 100755
index 0000000..f8154f6
--- /dev/null
+++ b/meta-oe/recipes-connectivity/connman/connman/connman
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+DAEMON=/usr/sbin/connmand
+PIDFILE=/var/run/connmand.pid
+DESC="Connection Manager"
+
+if [ -f /etc/default/connman ] ; then
+	. /etc/default/connman
+fi
+
+set -e
+
+do_start() {
+	$DAEMON
+}
+
+do_stop() {
+	start-stop-daemon --stop --name connmand --quiet
+}
+
+case "$1" in
+  start)
+	echo "Starting $DESC"
+	do_start
+	;;
+  stop)
+	echo "Stopping $DESC"
+	do_stop
+	;;
+  restart|force-reload)
+	echo "Restarting $DESC"
+	do_stop
+	sleep 1
+	do_start
+	;;
+  *)
+	echo "Usage: $0 {start|stop|restart|force-reload}" >&2
+	exit 1
+	;;
+esac
+
+exit 0
diff --git a/meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch b/meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch
new file mode 100644
index 0000000..5be1618
--- /dev/null
+++ b/meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch
@@ -0,0 +1,13 @@
+Index: connman-0.46/configure.ac
+===================================================================
+--- connman-0.46.orig/configure.ac
++++ connman-0.46/configure.ac
+@@ -326,7 +326,7 @@
+ AC_ARG_ENABLE(tools, AC_HELP_STRING([--enable-tools],
+ 		[enable testing tools]), [enable_tools=${enableval}])
+ if (test "${enable_tools}" = "yes"); then
+-	PKG_CHECK_MODULES(NETLINK, libnl-1, dummy=yes,
++	PKG_CHECK_MODULES(NETLINK, libnl-2.0, dummy=yes,
+ 				AC_MSG_ERROR(Netlink library is required))
+ 	AC_SUBST(NETLINK_CFLAGS)
+ 	AC_SUBST(NETLINK_LIBS)
diff --git a/meta-oe/recipes-connectivity/connman/connman/shr/connman b/meta-oe/recipes-connectivity/connman/connman/shr/connman
new file mode 100755
index 0000000..708b1b4
--- /dev/null
+++ b/meta-oe/recipes-connectivity/connman/connman/shr/connman
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+DAEMON="/usr/sbin/connmand -I usb0"
+PIDFILE=/var/run/connmand.pid
+DESC="Connection Manager"
+
+if [ -f /etc/default/connman ] ; then
+	. /etc/default/connman
+fi
+
+set -e
+
+do_start() {
+	$DAEMON
+}
+
+do_stop() {
+	start-stop-daemon --stop --name connmand --quiet
+}
+
+case "$1" in
+  start)
+	echo "Starting $DESC"
+	do_start
+	;;
+  stop)
+	echo "Stopping $DESC"
+	do_stop
+	;;
+  restart|force-reload)
+	echo "Restarting $DESC"
+	do_stop
+	sleep 1
+	do_start
+	;;
+  *)
+	echo "Usage: $0 {start|stop|restart|force-reload}" >&2
+	exit 1
+	;;
+esac
+
+exit 0
diff --git a/meta-oe/recipes-connectivity/connman/connman_0.72.bb b/meta-oe/recipes-connectivity/connman/connman_0.72.bb
new file mode 100644
index 0000000..8eb1e14
--- /dev/null
+++ b/meta-oe/recipes-connectivity/connman/connman_0.72.bb
@@ -0,0 +1,31 @@
+require connman.inc
+# connman requires libXtables now
+DEPENDS += "iptables"
+PR = "r0"
+
+EXTRA_OECONF += "\
+  --disable-gtk-doc \
+  --enable-debug \
+  --enable-threads \
+  --enable-loopback \
+  --enable-ethernet \
+  --enable-wifi \
+  --disable-wimax \
+  --enable-bluetooth \
+  --enable-ofono \
+  --enable-resolvconf \
+  --enable-dnsproxy \
+  --enable-tools \
+  --disable-polkit \
+  --enable-client \
+  --enable-fake \
+"
+
+SRC_URI  = "\
+  http://www.kernel.org/pub/linux/network/connman/connman-${PV}.tar.gz \
+  file://link-against-libnl2.patch \
+  file://connman \
+"
+
+SRC_URI[md5sum] = "800f9356e0471c88819eee7184713a1f"
+SRC_URI[sha256sum] = "9c8ad312573683fc9f50d5042d4a87ddc8e0700b27ac1b0fb8dc2e8b7424a60f"
diff --git a/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb b/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
new file mode 100644
index 0000000..257f012
--- /dev/null
+++ b/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
@@ -0,0 +1,18 @@
+DESCRIPTION = "This small package provides a few command line tools for Linux Phonet"
+HOMEPAGE = ""
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+SRC_URI = "git://gitorious.org/meego-cellular/phonet-utils.git;branch=master;protocol=git"
+PR = "r0"
+S = "${WORKDIR}/git"
+SRCREV = "4acfa720fd37d178a048fc2be17180137d4a70ea"
+PV = "0.0.0+gitr${SRCPV}"
+
+do_compile () {
+	make
+}
+
+do_install () {
+	DESTDIR=${D} oe_runmake install
+}
+
diff --git a/meta-oe/recipes-core/meta/distro-feed-configs.bb b/meta-oe/recipes-core/meta/distro-feed-configs.bb
new file mode 100644
index 0000000..4da2b14
--- /dev/null
+++ b/meta-oe/recipes-core/meta/distro-feed-configs.bb
@@ -0,0 +1,32 @@
+DESCRIPTION = "Configuration files for online package repositories aka feeds"
+PR = "r1"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+DISTRO_FEED_PREFIX ?= "remote"
+DISTRO_FEED_URI ?= "http://my-distribution.example/remote-feed/"
+
+do_compile() {
+    mkdir -p ${S}/${sysconfdir}/opkg
+    for feed in all ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}; do
+        echo "src/gz ${DISTRO_FEED_PREFIX}-${feed} ${DISTRO_FEED_URI}/${feed}" > ${S}/${sysconfdir}/opkg/${feed}-feed.conf
+    done
+}
+do_install () {
+        install -d ${D}${sysconfdir}/opkg
+        install -m 0644 ${S}/${sysconfdir}/opkg/* ${D}${sysconfdir}/opkg/
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+#def distro_feed_configs(d):
+#    import bb
+#    parchs = bb.data.getVar( "PACKAGE_EXTRA_ARCHS", d, 1 ).split()
+#    march = bb.data.getVar( "MACHINE_ARCH", d, 1 ).split()
+#    archs = [ "all" ] + parchs + march
+#    confs = [ ( "${sysconfdir}/opkg/%s-feed.conf" % feed ) for feed in archs ]
+#    return " ".join( confs )
+#
+#CONFFILES_${PN} += '${@distro_feed_configs(d)}'
+
+CONFFILES_${PN} += '${@ " ".join( [ ( "${sysconfdir}/opkg/%s-feed.conf" % feed ) for feed in "all ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}".split() ] ) }'
diff --git a/meta-oe/recipes-core/tasks/task-cli-tools.bb b/meta-oe/recipes-core/tasks/task-cli-tools.bb
new file mode 100644
index 0000000..c271f71
--- /dev/null
+++ b/meta-oe/recipes-core/tasks/task-cli-tools.bb
@@ -0,0 +1,52 @@
+DESCRIPTION = "A set of useful command line tools"
+DESCRIPTION_${PN}-debug = "A set of command line tools useful for debugging"
+SECTION = "console"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+PV = "1.0"
+PR = "r18"
+
+inherit task
+
+PACKAGES += "${PN}-debug"
+
+def get_ltrace(bb, d):
+    if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'sh4', 'sh3' ] :
+        return ""
+    return "ltrace"
+
+RDEPENDS_${PN} = "\
+  dbus-daemon-proxy \
+  dosfstools \
+  htop \
+  iptables \
+  lsof \
+  mbuffer \
+  mdbus2 \
+  mtd-utils \
+  mterm2 \
+  nano \
+  nfs-utils-client \
+  nmon \
+  powertop \
+  screen \
+  socat \
+  sysstat \
+"
+
+RDEPENDS_${PN}-debug = "\
+  evtest \
+  devmem2 \
+  i2c-tools \
+  gdb \
+  ${@get_ltrace(bb, d)} \
+  mkdump \
+  mioctl \
+  procps \
+  pxaregs \
+  s3c24xx-gpio \
+  s3c64xx-gpio \
+  serial-forward \
+  strace \
+  tcpdump \
+"
diff --git a/meta-oe/recipes-core/tasks/task-x11.bb b/meta-oe/recipes-core/tasks/task-x11.bb
new file mode 100644
index 0000000..208b168
--- /dev/null
+++ b/meta-oe/recipes-core/tasks/task-x11.bb
@@ -0,0 +1,43 @@
+DESCRIPTION = "The X Window System -- install this task to get a client/server based display multiplexer."
+SECTION = "x11/server"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+PV = "1.0"
+PR = "r7"
+
+# WORK IN PROGRESS
+
+inherit task
+
+PACKAGES += "\
+  ${PN}-server \
+  ${PN}-utils \
+"
+
+RRECOMMENDS_${PN} = "\
+  ${PN}-server \
+  ${PN}-utils \
+"
+
+# Some machines don't set a *runtime* provider for X, so default to Xfbdev here
+# virtual/xserver won't work, since the kdrive recipes will build multiple xserver packages
+XSERVER ?= "xserver-kdrive-fbdev"
+XSERVER_COMMON ?= "xserver-kdrive-common"
+XSERVER_COMMON_shr = "xserver-common"
+
+# This is also the reason why we have to make this package machine specific :/
+PACKAGE_ARCH_${PN}-server = "${MACHINE_ARCH}"
+
+RDEPENDS_${PN}-server = "\
+  ${XSERVER} \
+"
+
+RDEPENDS_${PN}-utils = "\
+  ${XSERVER_COMMON} \
+  xserver-nodm-init \
+  xauth \
+  xhost \
+  xset \
+  xrandr \
+"
+
diff --git a/meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool/COPYING b/meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool/COPYING
new file mode 100644
index 0000000..bf50f20
--- /dev/null
+++ b/meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool/COPYING
@@ -0,0 +1,482 @@
+		  GNU LIBRARY GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1991 Free Software Foundation, Inc.
+    		    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the library GPL.  It is
+ numbered 2 because it goes with version 2 of the ordinary GPL.]
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Library General Public License, applies to some
+specially designated Free Software Foundation software, and to any
+other libraries whose authors decide to use it.  You can use it for
+your libraries, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if
+you distribute copies of the library, or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link a program with the library, you must provide
+complete object files to the recipients so that they can relink them
+with the library, after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  Our method of protecting your rights has two steps: (1) copyright
+the library, and (2) offer you this license which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  Also, for each distributor's protection, we want to make certain
+that everyone understands that there is no warranty for this free
+library.  If the library is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original
+version, so that any problems introduced by others will not reflect on
+the original authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that companies distributing free
+software will individually obtain patent licenses, thus in effect
+transforming the program into proprietary software.  To prevent this,
+we have made it clear that any patent must be licensed for everyone's
+free use or not licensed at all.
+
+  Most GNU software, including some libraries, is covered by the ordinary
+GNU General Public License, which was designed for utility programs.  This
+license, the GNU Library General Public License, applies to certain
+designated libraries.  This license is quite different from the ordinary
+one; be sure to read it in full, and don't assume that anything in it is
+the same as in the ordinary license.
+
+  The reason we have a separate public license for some libraries is that
+they blur the distinction we usually make between modifying or adding to a
+program and simply using it.  Linking a program with a library, without
+changing the library, is in some sense simply using the library, and is
+analogous to running a utility program or application program.  However, in
+a textual and legal sense, the linked executable is a combined work, a
+derivative of the original library, and the ordinary General Public License
+treats it as such.
+
+  Because of this blurred distinction, using the ordinary General
+Public License for libraries did not effectively promote software
+sharing, because most developers did not use the libraries.  We
+concluded that weaker conditions might promote sharing better.
+
+  However, unrestricted linking of non-free programs would deprive the
+users of those programs of all benefit from the free status of the
+libraries themselves.  This Library General Public License is intended to
+permit developers of non-free programs to use free libraries, while
+preserving your freedom as a user of such programs to change the free
+libraries that are incorporated in them.  (We have not seen how to achieve
+this as regards changes in header files, but we have achieved it as regards
+changes in the actual functions of the Library.)  The hope is that this
+will lead to faster development of free libraries.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, while the latter only
+works together with the library.
+
+  Note that it is possible for a library to be covered by the ordinary
+General Public License rather than by this special one.
+
+		  GNU LIBRARY GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library which
+contains a notice placed by the copyright holder or other authorized
+party saying it may be distributed under the terms of this Library
+General Public License (also called "this License").  Each licensee is
+addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+  
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also compile or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    c) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    d) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the source code distributed need not include anything that is normally
+distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Library General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+			    NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This 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.
+
+    This 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 this library; if not, write to the 
+    Free Software Foundation, Inc., 59 Temple Place - Suite 330, 
+    Boston, MA  02111-1307  USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
diff --git a/meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool_git.bb b/meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool_git.bb
new file mode 100644
index 0000000..286434d
--- /dev/null
+++ b/meta-oe/recipes-devtools/gdbus-binding-tool/gdbus-binding-tool_git.bb
@@ -0,0 +1,37 @@
+DESCRIPTION = "gdbus-binding-tool is used to generate C code for interacting with remote objects using D-Bus."
+DEPENDS = "glib-2.0 gdbus-binding-tool-native"
+DEPENDS_virtclass-native = "glib-2.0-native"
+RDEPENDS_${PN} = "glib-2.0-utils"
+# taken from glib where this is supposed to be moved later
+LICENSE = "LGPLv2+ & BSD & public domain"
+LIC_FILES_CHKSUM = "file://${WORKDIR}/COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
+
+PR = "r2"
+
+inherit autotools pkgconfig
+
+SRC_URI = "git://anongit.freedesktop.org/~david/${BPN};protocol=git;branch=master \
+           file://COPYING"
+SRCREV = "229fd9adbb6bd9d824b38a3bd092229016540f41"
+PV = "0.1+gitr${SRCPV}"
+S = "${WORKDIR}/git"
+
+do_configure() {
+  # missing ${topdir}/gtk-doc.make and --disable-gtk-doc* is not enough
+  sed -i '/^doc\/Makefile/d' ${S}/configure.ac
+  sed -i 's/SUBDIRS = src doc/SUBDIRS = src/g' ${S}/Makefile.am
+
+  # cannot execute target binary, so use staged native
+  sed -i "s#\$(top_builddir)/src/gdbus-codegen#${STAGING_BINDIR_NATIVE}/gdbus-codegen#g" ${S}/src/Makefile.am
+
+  autotools_do_configure
+}
+do_configure_virtclass-native() {
+  # missing ${topdir}/gtk-doc.make and --disable-gtk-doc* is not enough
+  sed -i '/^doc\/Makefile/d' ${S}/configure.ac
+  sed -i 's/SUBDIRS = src doc/SUBDIRS = src/g' ${S}/Makefile.am
+
+  autotools_do_configure
+}
+
+BBCLASSEXTEND = "native"
diff --git a/meta-oe/recipes-devtools/gobject-introspection/gobject-introspection/use-usr-bin-env-for-python.patch b/meta-oe/recipes-devtools/gobject-introspection/gobject-introspection/use-usr-bin-env-for-python.patch
new file mode 100644
index 0000000..67b8547
--- /dev/null
+++ b/meta-oe/recipes-devtools/gobject-introspection/gobject-introspection/use-usr-bin-env-for-python.patch
@@ -0,0 +1,20 @@
+Index: gobject-introspection-0.9.10/tools/g-ir-annotation-tool.in
+===================================================================
+--- gobject-introspection-0.9.10.orig/tools/g-ir-annotation-tool.in
++++ gobject-introspection-0.9.10/tools/g-ir-annotation-tool.in
+@@ -1,4 +1,4 @@
+-#!@PYTHON@
++#!/usr/bin/env python
+ # -*- Mode: Python -*-
+ # GObject-Introspection - a framework for introspecting GObject libraries
+ # Copyright (C) 2008  Johan Dahlin
+Index: gobject-introspection-0.9.10/tools/g-ir-scanner.in
+===================================================================
+--- gobject-introspection-0.9.10.orig/tools/g-ir-scanner.in
++++ gobject-introspection-0.9.10/tools/g-ir-scanner.in
+@@ -1,4 +1,4 @@
+-#!@PYTHON@
++#!/usr/bin/env python
+ # -*- Mode: Python -*-
+ # GObject-Introspection - a framework for introspecting GObject libraries
+ # Copyright (C) 2008  Johan Dahlin
diff --git a/meta-oe/recipes-devtools/gobject-introspection/gobject-introspection_0.9.10.bb b/meta-oe/recipes-devtools/gobject-introspection/gobject-introspection_0.9.10.bb
new file mode 100644
index 0000000..f1a46a1
--- /dev/null
+++ b/meta-oe/recipes-devtools/gobject-introspection/gobject-introspection_0.9.10.bb
@@ -0,0 +1,32 @@
+# NOTE: WIP! This recipe does not cross-compile atm., only -native
+SECTION = "libs"
+DEPENDS = "glib-2.0 libffi bison-native"
+BBCLASSEXTEND = "native"
+PR = "r1"
+
+LICENSE = "GPLv2+ & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=90d577535a3898e1ae5dbf0ae3509a8c \
+                    file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f \
+                    file://COPYING.LGPL;md5=3bf50002aefd002f49e7bb854063f7e7"
+
+SRC_URI[md5sum] = "e5cd63d6bcc5c105e898e7c33cf42175"
+SRC_URI[sha256sum] = "4bf244db75df04499dea704e7734376c0fc5a3a17fb59be2123c8d76111e6fb8"
+
+SRC_URI = "\
+  ${GNOME_MIRROR}/gobject-introspection/0.9/${BPN}-${PV}.tar.bz2 \
+  file://use-usr-bin-env-for-python.patch \
+"
+S = "${WORKDIR}/${BPN}-${PV}"
+
+inherit autotools
+
+do_configure_prepend() {
+	touch -f gtk-doc.make
+}
+
+EXTRA_OECONF = "\
+  --disable-gtk-doc \
+  --disable-gtk-doc-html \
+  --disable-gtk-doc-pdf \
+  --disable-tests \
+"
diff --git a/meta-oe/recipes-devtools/json-glib/json-glib_0.10.4.bb b/meta-oe/recipes-devtools/json-glib/json-glib_0.10.4.bb
new file mode 100644
index 0000000..87c60cb
--- /dev/null
+++ b/meta-oe/recipes-devtools/json-glib/json-glib_0.10.4.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "JSON-GLib is a library providing serialization and deserialization support for the JavaScript Object Notation (JSON) format"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
+DEPENDS = "glib-2.0"
+
+PR = "r1"
+
+EXTRA_OECONF = "--enable-introspection=no"
+
+inherit autotools
+SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/json-glib/0.10/json-glib-0.10.4.tar.gz"
+
+SRC_URI[md5sum] = "87677e939a4b3d42e1c56b2a3046b9bb"
+SRC_URI[sha256sum] = "9561b3c58b350c89333d154f1e8669b8ece611c9c724252aed0e6273cda9cc6f"
diff --git a/meta-oe/recipes-devtools/libcanberra/libcanberra/libcanberra-increase-buffer-size.patch b/meta-oe/recipes-devtools/libcanberra/libcanberra/libcanberra-increase-buffer-size.patch
new file mode 100644
index 0000000..1005d78
--- /dev/null
+++ b/meta-oe/recipes-devtools/libcanberra/libcanberra/libcanberra-increase-buffer-size.patch
@@ -0,0 +1,13 @@
+Index: libcanberra-0.14/src/alsa.c
+===================================================================
+--- libcanberra-0.14.orig/src/alsa.c
++++ libcanberra-0.14/src/alsa.c
+@@ -272,7 +272,7 @@
+     return translate_error(ret);
+ }
+ 
+-#define BUFSIZE (16*1024)
++#define BUFSIZE (128*1024)
+ 
+ static void* thread_func(void *userdata) {
+     struct outstanding *out = userdata;
diff --git a/meta-oe/recipes-devtools/libcanberra/libcanberra_0.26.bb b/meta-oe/recipes-devtools/libcanberra/libcanberra_0.26.bb
new file mode 100644
index 0000000..09e11f9
--- /dev/null
+++ b/meta-oe/recipes-devtools/libcanberra/libcanberra_0.26.bb
@@ -0,0 +1,56 @@
+DESCRIPTION = "Libcanberra is an implementation of the XDG Sound Theme and Name \
+Specifications, for generating event sounds on free desktops."
+LICENSE = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1"
+DEPENDS = "alsa-lib gstreamer gtk+ libtool libvorbis gconf"
+SECTION = "libs/multimedia"
+AUTHOR = "Lennart Poettering"
+HOMEPAGE = "http://0pointer.de/lennart/projects/libcanberra"
+PR = "r1"
+
+inherit autotools vala
+
+SRC_URI = "http://0pointer.de/lennart/projects/libcanberra/libcanberra-${PV}.tar.gz \
+           file://libcanberra-increase-buffer-size.patch"
+
+SRC_URI[md5sum] = "ee2c66ada7c851a4e7b6eb1682285a24"
+SRC_URI[sha256sum] = "4b5d8d2c2835133620adbc53745dd107b6e58b9a2963059e8f457143fee00982"
+
+EXTRA_OECONF = "\
+  --enable-alsa \
+  --enable-gstreamer \
+  --enable-gtk \
+  --enable-multi \
+  --enable-null \
+  --disable-oss \
+  --disable-pulse \
+  --disable-tdb \
+"
+# enable pulse again when pulseaudio >= 0.9.11 is the default in OE
+
+python populate_packages_prepend() {
+	plugindir = bb.data.expand('${libdir}/${P}/', d)
+	do_split_packages(d, plugindir, '^libcanberra-(.*)\.so$', 'libcanberra-%s', '%s support library', extra_depends='' )
+}
+
+PACKAGES =+ "${PN}-gtk"
+
+PACKAGES_DYNAMIC = "libcanberra-*"
+
+FILES_${PN}-gtk = "\
+  ${sysconfdir}/gconf \
+  ${bindir}/* \
+  ${libdir}/libcanberra-gtk.so.* \
+  ${libdir}/gtk-2.0/modules/* \
+  ${datadir}/gnome \
+  ${datadir}/gdm \
+"
+
+FILES_${PN}-dev += "\
+  ${libdir}/${P}/*.la \
+"
+
+FILES_${PN}-dbg += "\
+  ${libdir}/gtk-2.0/modules/.debug \
+  ${libdir}/${P}/.debug \
+"
diff --git a/meta-oe/recipes-devtools/libgee/libgee.inc b/meta-oe/recipes-devtools/libgee/libgee.inc
new file mode 100644
index 0000000..8542cde
--- /dev/null
+++ b/meta-oe/recipes-devtools/libgee/libgee.inc
@@ -0,0 +1,18 @@
+DESCRIPTION = "libgee is a collection library providing GObject-based interfaces \
+and classes for commonly used data structures."
+HOMEPAGE = "http://live.gnome.org/Libgee"
+SECTION = "libs"
+DEPENDS = "glib-2.0"
+BBCLASSEXTEND = "native"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+INC_PR = "r6"
+PE = "1"
+
+inherit autotools vala
+do_configure_prepend() {
+     MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4"
+      for i in ${MACROS}; do
+         rm -f m4/$i
+      done
+}
diff --git a/meta-oe/recipes-devtools/libgee/libgee_0.6.0.bb b/meta-oe/recipes-devtools/libgee/libgee_0.6.0.bb
new file mode 100644
index 0000000..4e305b6
--- /dev/null
+++ b/meta-oe/recipes-devtools/libgee/libgee_0.6.0.bb
@@ -0,0 +1,12 @@
+require libgee.inc
+PE = "1"
+PR = "${INC_PR}.1"
+#autoreconf needs introspection.m4 (staged by gobject-introspection-native) after http://git.gnome.org/browse/libgee/commit/?id=d026a29b38ca1a3388981c6e75a92602212373d8
+DEPENDS += "gobject-introspection-native"
+DEPENDS_virtclass-native += "gobject-introspection-native"
+
+SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libgee/0.6/${BPN}-${PV}.tar.bz2"
+S = "${WORKDIR}/${BPN}-${PV}"
+
+SRC_URI[md5sum] = "4eb513b23ab6ea78884989518a4acf6f"
+SRC_URI[sha256sum] = "e586678d0a88637abeaaf850b62231000772e79ea6d9c4b45dc3cea99f778a7a"
diff --git a/meta-oe/recipes-devtools/python/python-dateutil_1.4.1.bb b/meta-oe/recipes-devtools/python/python-dateutil_1.4.1.bb
new file mode 100644
index 0000000..8cde288
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-dateutil_1.4.1.bb
@@ -0,0 +1,24 @@
+DESCRIPTION = "Extensions to the standard Python date/time support"
+HOMEPAGE = "http://labix.org/python-dateutil"
+SECTION = "devel/python"
+PRIORITY = "optional"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d82268718c68bda0b091006ec6e583c6"
+SRCNAME = "${PN}"
+PR = "r1"
+
+SRC_URI = "http://labix.org/download/python-dateutil/${SRCNAME}-${PV}.tar.gz"
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+inherit setuptools
+
+PACKAGES =+ "${PN}-zoneinfo"
+FILES_${PN}-zoneinfo = "${libdir}/${PYTHON_DIR}/site-packages/dateutil/zoneinfo"
+
+RDEPENDS_${PN} = "\
+  python-core \
+  python-datetime \
+"
+
+SRC_URI[md5sum] = "2a5f25ab12fcefcf0b21348f2d47595a"
+SRC_URI[sha256sum] = "74b615c6a55b4421187feba1633fc233e7c5ebdd7abe9b092447a32946823357"
diff --git a/meta-oe/recipes-devtools/python/python-numeric/no-lapack.patch b/meta-oe/recipes-devtools/python/python-numeric/no-lapack.patch
new file mode 100644
index 0000000..c1916b8
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-numeric/no-lapack.patch
@@ -0,0 +1,33 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- Numeric-23.7/setup.py~nolapack
++++ Numeric-23.7/setup.py
+@@ -32,7 +32,7 @@
+     mathlibs = []
+ 
+ # delete all but the first one in this list if using your own LAPACK/BLAS
+-sourcelist = [os.path.join('Src', 'lapack_litemodule.c'),
++sourcelist = [
+               #os.path.join('Src', 'blas_lite.c'), 
+               #os.path.join('Src', 'f2c_lite.c'), 
+               #os.path.join('Src', 'zlapack_lite.c'),
+@@ -40,12 +40,12 @@
+              ]
+ # set these to use your own BLAS;
+ 
+-library_dirs_list = ['/usr/lib/atlas']
+-libraries_list = ['lapack', 'cblas', 'f77blas', 'atlas', 'g2c'] 
++library_dirs_list = []
++libraries_list = [] 
+ 
+ # set to true (1), if you also want BLAS optimized matrixmultiply/dot/innerproduct
+-use_dotblas = 1 
+-include_dirs = ['/usr/include/atlas']  
++use_dotblas = 0
++include_dirs = []  
+                    # You may need to set this to find cblas.h
+                    #  e.g. on UNIX using ATLAS this should be ['/usr/include/atlas']
+ extra_link_args = []
diff --git a/meta-oe/recipes-devtools/python/python-numeric_24.2.bb b/meta-oe/recipes-devtools/python/python-numeric_24.2.bb
new file mode 100644
index 0000000..436718f
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-numeric_24.2.bb
@@ -0,0 +1,15 @@
+DESCRIPTION = "A sophisticated Numeric Processing Package for Python"
+SECTION = "devel/python"
+PRIORITY = "optional"
+LICENSE = "PSF & LLNL"
+LIC_FILES_CHKSUM = "file://Legal.htm;md5=e3ce75dedd4043918d15979ae43e312e"
+
+PR = "ml1"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/numpy/Numeric-${PV}.tar.gz"
+S = "${WORKDIR}/Numeric-${PV}"
+
+inherit distutils
+
+SRC_URI[md5sum] = "2ae672656e06716a149acb048cca3093"
+SRC_URI[sha256sum] = "5f72e729eb6ff57442f2a38bfc9931738b59e5077928e2e70d22b4610ff15258"
diff --git a/meta-oe/recipes-devtools/python/python-pexpect_2.3.bb b/meta-oe/recipes-devtools/python/python-pexpect_2.3.bb
new file mode 100644
index 0000000..8111ba3
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-pexpect_2.3.bb
@@ -0,0 +1,24 @@
+DESCRIPTION = "A Pure Python Expect like Module for Python"
+SECTION = "devel/python"
+PRIORITY = "optional"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=04a2bf11b85ce49d4a8c0c413fd34404"
+SRCNAME = "pexpect"
+PR = "ml1"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${SRCNAME}/${SRCNAME}-${PV}.tar.gz"
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+inherit distutils
+
+RDEPENDS_${PN} = "\
+  python-core \
+  python-io \
+  python-terminal \
+  python-resource \
+  python-fcntl \
+"
+
+
+SRC_URI[md5sum] = "bf107cf54e67bc6dec5bea1f3e6a65c3"
+SRC_URI[sha256sum] = "d315e7f3a8544fd85034d7e17fd7c5854e8f0828f5791f83cf313f8fa5740b75"
diff --git a/meta-oe/recipes-devtools/python/python-phoneutils_git.bb b/meta-oe/recipes-devtools/python/python-phoneutils_git.bb
new file mode 100644
index 0000000..b46a772
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-phoneutils_git.bb
@@ -0,0 +1,15 @@
+DESCRIPTION = "Python Bindings for libphone-utils"
+SECTION = "devel/python"
+DEPENDS = "libphone-utils python-cython-native python-pyrex-native"
+RDEPENDS_${PN} = "libphone-utils"
+LICENSE = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://phoneutils/c_phoneutils.pyx;endline=18;md5=ca321e4ec3a30a44469b23ebca782665"
+
+SRCREV = "8a7c719e0c3f1f8c10f77f17422da02d7177f0dd"
+PV = "0.0.2+gitr${SRCPV}"
+PR = "r3"
+
+SRC_URI = "git://git.shr-project.org/repo/libphone-utils.git;protocol=http;branch=master"
+S = "${WORKDIR}/git/src/python"
+
+inherit setuptools
diff --git a/meta-oe/recipes-devtools/python/python-pyalsaaudio_0.4.bb b/meta-oe/recipes-devtools/python/python-pyalsaaudio_0.4.bb
new file mode 100644
index 0000000..5a6dd54
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-pyalsaaudio_0.4.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "Support for the Linux 2.6.x ALSA Sound System"
+SECTION = "devel/python"
+DEPENDS = "alsa-lib"
+PRIORITY = "optional"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1a3b161aa0fcec32a0c8907a2219ad9d"
+SRCNAME = "pyalsaaudio"
+PR = "ml0"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/pyalsaaudio/${SRCNAME}-${PV}.tar.gz"
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+inherit distutils
+
+SRC_URI[md5sum] = "b312c28efba7db0494836a79f0a49898"
+SRC_URI[sha256sum] = "07148ce16024724b17cc24c51d0f4fb78af214b09b7dc8dcb7b06e5647f4c582"
diff --git a/meta-oe/recipes-devtools/python/python-pyserial_2.4.bb b/meta-oe/recipes-devtools/python/python-pyserial_2.4.bb
new file mode 100644
index 0000000..cc138d1
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-pyserial_2.4.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "Serial Port Support for Python"
+SECTION = "devel/python"
+PRIORITY = "optional"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7424386ffe323e815ee62ee9ad591dd8"
+SRCNAME = "pyserial"
+PR = "ml2"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${SRCNAME}/${SRCNAME}-${PV}.tar.gz"
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+inherit setuptools
+
+# FIXME might stop packaging serialwin32 and serialjava files
+
+RDEPENDS_${PN} = "\
+  python-fcntl \
+  python-io \
+  python-stringold \
+"
+
+SRC_URI[md5sum] = "eec19df59fd75ba5a136992897f8e468"
+SRC_URI[sha256sum] = "6b6a9e3d2fd5978c92c843e0109918a4bcac481eecae316254481c0e0f7e73c8"
diff --git a/meta-oe/recipes-devtools/python/python-pyyaml/setup.py b/meta-oe/recipes-devtools/python/python-pyyaml/setup.py
new file mode 100644
index 0000000..fb64983
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-pyyaml/setup.py
@@ -0,0 +1,64 @@
+NAME = 'PyYAML'
+VERSION = '3.06'
+DESCRIPTION = "YAML parser and emitter for Python"
+LONG_DESCRIPTION = """\
+YAML is a data serialization format designed for human readability and
+interaction with scripting languages.  PyYAML is a YAML parser and
+emitter for Python.
+
+PyYAML features a complete YAML 1.1 parser, Unicode support, pickle
+support, capable extension API, and sensible error messages.  PyYAML
+supports standard YAML tags and provides Python-specific tags that allow
+to represent an arbitrary Python object.
+
+PyYAML is applicable for a broad range of tasks from complex
+configuration files to object serialization and persistance."""
+AUTHOR = "Kirill Simonov"
+AUTHOR_EMAIL = 'xi at resolvent.net'
+LICENSE = "MIT"
+PLATFORMS = "Any"
+URL = "http://pyyaml.org/wiki/PyYAML"
+DOWNLOAD_URL = "http://pyyaml.org/download/pyyaml/%s-%s.tar.gz" % (NAME, VERSION)
+CLASSIFIERS = [
+    "Development Status :: 5 - Production/Stable",
+    "Intended Audience :: Developers",
+    "License :: OSI Approved :: MIT License",
+    "Operating System :: OS Independent",
+    "Programming Language :: Python",
+    "Topic :: Software Development :: Libraries :: Python Modules",
+    "Topic :: Text Processing :: Markup",
+]
+
+from distutils.core import setup
+from distutils.extension import Extension
+from Cython.Distutils import build_ext
+
+import sys, os.path
+
+
+if __name__ == '__main__':
+
+    setup(
+        name=NAME,
+        version=VERSION,
+        description=DESCRIPTION,
+        long_description=LONG_DESCRIPTION,
+        author=AUTHOR,
+        author_email=AUTHOR_EMAIL,
+        license=LICENSE,
+        platforms=PLATFORMS,
+        url=URL,
+        download_url=DOWNLOAD_URL,
+        classifiers=CLASSIFIERS,
+
+        package_dir={'': 'lib'},
+        packages=['yaml'],
+
+        ext_modules = [
+        Extension( "_yaml", ["ext/_yaml.pyx"], libraries = ["yaml"] )
+        ],
+
+        cmdclass={
+            'build_ext': build_ext,
+        },
+    )
diff --git a/meta-oe/recipes-devtools/python/python-pyyaml_svn.bb b/meta-oe/recipes-devtools/python/python-pyyaml_svn.bb
new file mode 100644
index 0000000..965b1cc
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-pyyaml_svn.bb
@@ -0,0 +1,22 @@
+DESCRIPTION = "Python support for YAML"
+HOMEPAGE = "http://www.pyyaml.org"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=6015f088759b10e0bc2bf64898d4ae17"
+DEPENDS = "libyaml python-cython-native"
+SRCREV = "344"
+PV = "3.08+svnr${SRCPV}"
+PR = "ml0"
+
+SRC_URI = "\
+  svn://svn.pyyaml.org/pyyaml;module=trunk;proto=http \
+  file://setup.py \
+"
+S = "${WORKDIR}/trunk"
+
+inherit distutils
+
+do_configure_prepend() {
+	# upstream setup.py overcomplicated, use ours
+	install -m 0644 ${WORKDIR}/setup.py ${S}
+}
diff --git a/meta-oe/recipes-devtools/python/python-vobject_0.8.1c.bb b/meta-oe/recipes-devtools/python/python-vobject_0.8.1c.bb
new file mode 100644
index 0000000..6b7e7a4
--- /dev/null
+++ b/meta-oe/recipes-devtools/python/python-vobject_0.8.1c.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Python package for parsing and generating vCard and vCalendar files" 
+SECTION = "devel/python" 
+PRIORITY = "optional" 
+LICENSE = "Apache License V2.0" 
+LIC_FILES_CHKSUM = "file://LICENSE-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
+HOMEPAGE = "http://vobject.skyhouseconsulting.com/" 
+SRCNAME = "vobject" 
+RDEPENDS_${PN} = "python python-dateutil"
+PR = "r2"
+
+SRC_URI = "http://vobject.skyhouseconsulting.com/${SRCNAME}-${PV}.tar.gz" 
+S = "${WORKDIR}/${SRCNAME}-${PV}" 
+
+inherit setuptools  
+
+SRC_URI[md5sum] = "c9686dd74d39fdae140890d9c694c076"
+SRC_URI[sha256sum] = "594113117f2017ed837c8f3ce727616f9053baa5a5463a7420c8249b8fc556f5"
diff --git a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
new file mode 100644
index 0000000..d86e923
--- /dev/null
+++ b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
@@ -0,0 +1,16 @@
+DESCRIPTION = "Vala DBus Binding Tool"
+SECTION = "devel"
+DEPENDS = "vala libgee libxml2 intltool-native"
+HOMEPAGE = "http://wiki.freesmartphone.org/index.php/Implementations/vala-dbus-binding-tool"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+PE = "1"
+INC_PR = "r3"
+
+export XDG_DATA_DIRS = "${STAGING_DATADIR}"
+
+SRC_URI = "http://downloads.freesmartphone.org/sources/vala-dbus-binding-tool-${PV}.tar.bz2;name=archive"
+
+inherit autotools
+
+BBCLASSEXTEND = "native"
diff --git a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
new file mode 100644
index 0000000..66df4ed
--- /dev/null
+++ b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
@@ -0,0 +1,6 @@
+require vala-dbus-binding-tool.inc
+SRCREV = "fd89af4941d6478575900128d09029fa5549e0db"
+PV = "0.3.2+gitr${SRCPV}"
+
+SRC_URI = "${FREESMARTPHONE_GIT}/vala-dbus-binding-tool.git;protocol=git;branch=master"
+S = "${WORKDIR}/git"
diff --git a/meta-oe/recipes-devtools/vala/vala.inc b/meta-oe/recipes-devtools/vala/vala.inc
new file mode 100644
index 0000000..b63cdfa
--- /dev/null
+++ b/meta-oe/recipes-devtools/vala/vala.inc
@@ -0,0 +1,25 @@
+DESCRIPTION = "Vala is a C#-like language dedicated to ease GObject programming. \
+Vala compiles to plain C and has no runtime environment nor penalities whatsoever."
+SECTION = "devel"
+DEPENDS = "glib-2.0 dbus"
+BBCLASSEXTEND = "native"
+DEPENDS_virtclass-native = "glib-2.0-native dbus-native"
+HOMEPAGE = "http://vala-project.org"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+INC_PR = "r0"
+
+#
+# WARNING: This source release has specifically been built for OpenEmbedded.
+# Don't update to any upstream release without consulting the recipe maintainer.
+#
+
+SRC_URI = "\
+  http://downloads.freesmartphone.org/sources/vala-${PV}.tar.bz2;name=archive \
+"
+
+inherit autotools
+
+EXTRA_OECONF = "--disable-vapigen"
+
+FILES_${PN}-doc += ${datadir}/devhelp
diff --git a/meta-oe/recipes-devtools/vala/vala_0.12.0.bb b/meta-oe/recipes-devtools/vala/vala_0.12.0.bb
new file mode 100644
index 0000000..9ca89db
--- /dev/null
+++ b/meta-oe/recipes-devtools/vala/vala_0.12.0.bb
@@ -0,0 +1,7 @@
+require vala.inc
+SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/vala/0.12/vala-0.12.0.tar.bz2"
+
+FILES_${PN} += "${datadir}/vala-0.12/vapi"
+
+SRC_URI[md5sum] = "b11fafaa705085342156312e356b6ff2"
+SRC_URI[sha256sum] = "9a398e16fba2c78c9bcadb05e489c9bc318e34901d43451ac5d2ce4bc46b1225"
diff --git a/meta-oe/recipes-extended/tzcode/tzcode-native.inc b/meta-oe/recipes-extended/tzcode/tzcode-native.inc
new file mode 100644
index 0000000..b946e71
--- /dev/null
+++ b/meta-oe/recipes-extended/tzcode/tzcode-native.inc
@@ -0,0 +1,18 @@
+DESCRIPTION = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect"
+INC_PR = "r4"
+
+SRC_URI = " \
+        ftp://elsie.nci.nih.gov/pub/tzcode${PV}.tar.gz;name=tzcode-${PV};subdir=${BPN}-${PV} \
+        ftp://elsie.nci.nih.gov/pub/tzdata${TZDATA_PV}.tar.gz;name=tzdata-${TZDATA_PV};subdir=${BPN}-${PV} \
+	"
+
+inherit native
+
+do_install () {
+        install -d ${D}${bindir}
+        install -m 755 zic ${D}${bindir}/
+        install -m 755 zdump ${D}${bindir}/
+        install -m 755 tzselect ${D}${bindir}/
+}
+
+NATIVE_INSTALL_WORKS = "1"
diff --git a/meta-oe/recipes-extended/tzcode/tzcode-native_2011e.bb b/meta-oe/recipes-extended/tzcode/tzcode-native_2011e.bb
new file mode 100644
index 0000000..280840c
--- /dev/null
+++ b/meta-oe/recipes-extended/tzcode/tzcode-native_2011e.bb
@@ -0,0 +1,19 @@
+require tzcode-native.inc
+
+LICENSE = "PD"
+LIC_FILES_CHKSUM = "file://README;md5=3ae8198f82258417ce29066d3b034035"
+
+# Note that elsie.nci.nih.gov removes old versions when new is coming out
+# So if this doesn't build for you because of missing source file, just
+# bump it to the latest available version, removing old one
+# Also, tzdata (and it is needed to build tzcode) version can differ from
+# tzcode version, thus this variable
+
+TZDATA_PV = "2011e"
+
+PR = "${INC_PR}.0"
+
+SRC_URI[tzcode-2011e.md5sum] = "fbfc05dbf9ebcfe7c4bba18549870173"
+SRC_URI[tzcode-2011e.sha256sum] = "8fb00f8763aa51d83d6f3190d144124bb7176ca829fc08823d6205297bf0426b"
+SRC_URI[tzdata-2011e.md5sum] = "044a07072300a0ee72b046e5a9a4ec90"
+SRC_URI[tzdata-2011e.sha256sum] = "44fef01de4589a4979eb6b5fdbbfd21a3b135852af1ecbfb9e0368ae47392c79"
diff --git a/meta-oe/recipes-extended/tzdata/tzdata.inc b/meta-oe/recipes-extended/tzdata/tzdata.inc
new file mode 100644
index 0000000..732ebb3
--- /dev/null
+++ b/meta-oe/recipes-extended/tzdata/tzdata.inc
@@ -0,0 +1,178 @@
+DESCRIPTION = "Timezone data"
+SECTION = "base"
+PRIORITY = "optional"
+DEPENDS = "tzcode-native"
+
+INC_PR = "r9"
+
+DEFAULT_TIMEZONE ?= "Europe/London"
+
+RCONFLICTS_${PN} = "timezones timezone-africa timezone-america timezone-antarctica \
+             timezone-arctic timezone-asia timezone-atlantic \
+             timezone-australia timezone-europe timezone-indian \
+             timezone-iso3166.tab timezone-pacific timezone-zone.tab"
+
+SRC_URI = "ftp://elsie.nci.nih.gov/pub/tzdata${PV}.tar.gz;subdir=${BPN}-${PV}"
+
+TZONES= "africa antarctica asia australasia europe northamerica southamerica  \
+         factory solar87 solar88 solar89 etcetera backward systemv \
+        "
+#        pacificnew \
+
+CONFFILES_${PN} = "${sysconfdir}/timezone ${sysconfdir}/localtime"
+
+do_compile () {
+        mkdir -p build
+        for zone in ${TZONES}; do \
+            ${STAGING_BINDIR_NATIVE}/zic -d ${S}/build${datadir}/zoneinfo -L /dev/null \
+                -y ${S}/yearistype.sh ${S}/${zone} ; \
+            ${STAGING_BINDIR_NATIVE}/zic -d ${S}/build${datadir}/zoneinfo/posix -L /dev/null \
+                -y ${S}/yearistype.sh ${S}/${zone} ; \
+            ${STAGING_BINDIR_NATIVE}/zic -d ${S}/build${datadir}/zoneinfo/right -L ${S}/leapseconds \
+                -y ${S}/yearistype.sh ${S}/${zone} ; \
+        done
+}
+
+do_install () {
+        install -d ${D}${prefix} ${D}${datadir}/zoneinfo
+        cp -pPR ${S}/build${prefix}/* ${D}${prefix}
+        # Only eglibc is removing zoneinfo files from package
+        if [ "${LIBC}"x = "eglibc"x ] ; then
+          cp -pP "${S}/zone.tab" ${D}${datadir}/zoneinfo
+          cp -pP "${S}/iso3166.tab" ${D}${datadir}/zoneinfo
+        fi
+
+        # Install a sane default for timezones
+        install -d ${D}${sysconfdir}
+        echo ${DEFAULT_TIMEZONE} > ${D}${sysconfdir}/timezone
+        cp -pPR ${S}/build${datadir}/zoneinfo/${DEFAULT_TIMEZONE} ${D}${sysconfdir}/localtime
+}
+
+PACKAGE_ARCH = "all"
+# Packages primarily organized by directory with a major city
+# in most time zones in the base package
+
+PACKAGES = "${PN}-dbg tzdata tzdata-misc tzdata-posix tzdata-right tzdata-africa \
+    tzdata-americas tzdata-antarctica tzdata-arctic tzdata-asia \
+    tzdata-atlantic tzdata-australia tzdata-europe tzdata-pacific"
+
+ALLOW_EMPTY_${PN}-dbg = "1"
+
+FILES_tzdata-africa += "${datadir}/zoneinfo/Africa/*"
+RPROVIDES_tzdata-africa = "tzdata-africa"
+
+FILES_tzdata-americas += "${datadir}/zoneinfo/America/*  \
+                ${datadir}/zoneinfo/US/*                \
+                ${datadir}/zoneinfo/Brazil/*            \
+                ${datadir}/zoneinfo/Canada/*            \
+                ${datadir}/zoneinfo/Mexico/*            \
+                ${datadir}/zoneinfo/Chile/*"
+RPROVIDES_tzdata-americas = "tzdata-americas"
+
+FILES_tzdata-antarctica += "${datadir}/zoneinfo/Antarctica/*"
+RPROVIDES_tzdata-antarctica = "tzdata-antarctica"
+
+FILES_tzdata-arctic += "${datadir}/zoneinfo/Arctic/*"
+RPROVIDES_tzdata-arctic = "tzdata-arctic"
+
+FILES_tzdata-asia += "${datadir}/zoneinfo/Asia/*        \
+                ${datadir}/zoneinfo/Indian/*            \
+                ${datadir}/zoneinfo/Mideast/*"
+RPROVIDES_tzdata-asia = "tzdata-asia"
+
+FILES_tzdata-atlantic += "${datadir}/zoneinfo/Atlantic/*"
+RPROVIDES_tzdata-atlantic = "tzdata-atlantic"
+
+FILES_tzdata-australia += "${datadir}/zoneinfo/Australia/*"
+RPROVIDES_tzdata-australia = "tzdata-australia"
+
+FILES_tzdata-europe += "${datadir}/zoneinfo/Europe/*"
+RPROVIDES_tzdata-europe = "tzdata-europe"
+
+FILES_tzdata-pacific += "${datadir}/zoneinfo/Pacific/*"
+RPROVIDES_tzdata-pacific = "tzdata-pacific"
+
+FILES_tzdata-posix += "${datadir}/zoneinfo/posix/*"
+RPROVIDES_tzdata-posix = "tzdata-posix"
+
+FILES_tzdata-right += "${datadir}/zoneinfo/right/*"
+RPROVIDES_tzdata-right = "tzdata-right"
+
+
+FILES_tzdata-misc += "${datadir}/zoneinfo/Cuba           \
+                ${datadir}/zoneinfo/Egypt                \
+                ${datadir}/zoneinfo/Eire                 \
+                ${datadir}/zoneinfo/Factory              \
+                ${datadir}/zoneinfo/GB-Eire              \
+                ${datadir}/zoneinfo/Hongkong             \
+                ${datadir}/zoneinfo/Iceland              \
+                ${datadir}/zoneinfo/Iran                 \
+                ${datadir}/zoneinfo/Israel               \
+                ${datadir}/zoneinfo/Jamaica              \
+                ${datadir}/zoneinfo/Japan                \
+                ${datadir}/zoneinfo/Kwajalein            \
+                ${datadir}/zoneinfo/Libya                \
+                ${datadir}/zoneinfo/Navajo               \
+                ${datadir}/zoneinfo/Poland               \
+                ${datadir}/zoneinfo/Portugal             \
+                ${datadir}/zoneinfo/Singapore            \
+                ${datadir}/zoneinfo/Turkey"
+RPROVIDES_tzdata-misc = "tzdata-misc"
+
+
+FILES_${PN} += "${datadir}/zoneinfo/Pacific/Honolulu     \
+                ${datadir}/zoneinfo/America/Anchorage    \
+                ${datadir}/zoneinfo/America/Los_Angeles  \
+                ${datadir}/zoneinfo/America/Denver       \
+                ${datadir}/zoneinfo/America/Chicago      \
+                ${datadir}/zoneinfo/America/New_York     \
+                ${datadir}/zoneinfo/America/Caracas      \
+                ${datadir}/zoneinfo/America/Sao_Paulo    \
+                ${datadir}/zoneinfo/Europe/London        \
+                ${datadir}/zoneinfo/Europe/Paris         \
+                ${datadir}/zoneinfo/Africa/Cairo         \
+                ${datadir}/zoneinfo/Europe/Moscow        \
+                ${datadir}/zoneinfo/Asia/Dubai           \
+                ${datadir}/zoneinfo/Asia/Karachi         \
+                ${datadir}/zoneinfo/Asia/Dhaka           \
+                ${datadir}/zoneinfo/Asia/Bankok          \
+                ${datadir}/zoneinfo/Asia/Hong_Kong       \
+                ${datadir}/zoneinfo/Asia/Tokyo           \
+                ${datadir}/zoneinfo/Australia/Perth      \
+                ${datadir}/zoneinfo/Australia/Darwin     \
+                ${datadir}/zoneinfo/Australia/Adelaide   \
+                ${datadir}/zoneinfo/Australia/Brisbane   \
+                ${datadir}/zoneinfo/Australia/Sydney     \
+                ${datadir}/zoneinfo/Pacific/Noumea       \
+                ${datadir}/zoneinfo/CET                  \
+                ${datadir}/zoneinfo/CST6CDT              \
+                ${datadir}/zoneinfo/EET                  \
+                ${datadir}/zoneinfo/EST                  \
+                ${datadir}/zoneinfo/EST5EDT              \
+                ${datadir}/zoneinfo/GB                   \
+                ${datadir}/zoneinfo/GMT                  \
+                ${datadir}/zoneinfo/GMT+0                \
+                ${datadir}/zoneinfo/GMT-0                \
+                ${datadir}/zoneinfo/GMT0                 \
+                ${datadir}/zoneinfo/Greenwich            \
+                ${datadir}/zoneinfo/HST                  \
+                ${datadir}/zoneinfo/MET                  \
+                ${datadir}/zoneinfo/MST                  \
+                ${datadir}/zoneinfo/MST7MDT              \
+                ${datadir}/zoneinfo/NZ                   \
+                ${datadir}/zoneinfo/NZ-CHAT              \
+                ${datadir}/zoneinfo/PRC                  \
+                ${datadir}/zoneinfo/PST8PDT              \
+                ${datadir}/zoneinfo/ROC                  \
+                ${datadir}/zoneinfo/ROK                  \
+                ${datadir}/zoneinfo/UCT                  \
+                ${datadir}/zoneinfo/UTC                  \
+                ${datadir}/zoneinfo/Universal            \
+                ${datadir}/zoneinfo/W-SU                 \
+                ${datadir}/zoneinfo/WET                  \
+                ${datadir}/zoneinfo/Zulu                 \
+                ${datadir}/zoneinfo/Etc/*                \
+                ${datadir}/zoneinfo/iso3166.tab          \
+                ${datadir}/zoneinfo/zone.tab             \
+                ${sysconfdir}/localtime                  \
+                ${sysconfdir}/timezone                   "
diff --git a/meta-oe/recipes-extended/tzdata/tzdata_2011e.bb b/meta-oe/recipes-extended/tzdata/tzdata_2011e.bb
new file mode 100644
index 0000000..c0f5291
--- /dev/null
+++ b/meta-oe/recipes-extended/tzdata/tzdata_2011e.bb
@@ -0,0 +1,13 @@
+require tzdata.inc
+
+LICENSE = "PD"
+LIC_FILES_CHKSUM = "file://asia;beginline=2;endline=3;md5=06468c0e84ef4d4c97045a4a29b08234"
+
+# Note that elsie.nci.nih.gov removes old archives after a new one is
+# released. So if this doesn't build for you because of missing source file
+# just bump it to the latest available version, removing the old one
+
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "044a07072300a0ee72b046e5a9a4ec90"
+SRC_URI[sha256sum] = "44fef01de4589a4979eb6b5fdbbfd21a3b135852af1ecbfb9e0368ae47392c79"
diff --git a/meta-oe/recipes-graphics/drm/libdrm-2.4.24/glamo.patch b/meta-oe/recipes-graphics/drm/libdrm-2.4.24/glamo.patch
new file mode 100644
index 0000000..b397ded
--- /dev/null
+++ b/meta-oe/recipes-graphics/drm/libdrm-2.4.24/glamo.patch
@@ -0,0 +1,1095 @@
+diff --git a/Makefile.am b/Makefile.am
+index 25d1747..f384228 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -41,7 +41,11 @@ if HAVE_RADEON
+ RADEON_SUBDIR = radeon
+ endif
+ 
+-SUBDIRS = . $(LIBKMS_SUBDIR) $(INTEL_SUBDIR) $(NOUVEAU_SUBDIR) $(RADEON_SUBDIR) tests include
++if HAVE_GLAMO
++GLAMO_SUBDIR = glamo
++endif
++
++SUBDIRS = . $(LIBKMS_SUBDIR) $(INTEL_SUBDIR) $(NOUVEAU_SUBDIR) $(RADEON_SUBDIR) $(GLAMO_SUBDIR) tests include
+ 
+ libdrm_la_LTLIBRARIES = libdrm.la
+ libdrm_ladir = $(libdir)
+diff --git a/configure.ac b/configure.ac
+index 62db817..0b2a33e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -73,6 +73,11 @@ AC_ARG_ENABLE(nouveau-experimental-api,
+ 	      [NOUVEAU=$enableval], [NOUVEAU=no])
+ 
+ 
++AC_ARG_ENABLE(glamo-experimental-api,
++	      AS_HELP_STRING([--enable-glamo-experimental-api],
++	      [Enable support for Glamo's KMS API (default: disabled)]),
++	      [GLAMO=$enableval], [GLAMO=no])
++
+ dnl ===========================================================================
+ dnl check compiler flags
+ AC_DEFUN([LIBDRM_CC_TRY_FLAG], [
+@@ -169,6 +174,11 @@ if test "x$NOUVEAU" = xyes; then
+ 	AC_DEFINE(HAVE_NOUVEAU, 1, [Have nouveau (nvidia) support])
+ fi
+ 
++AM_CONDITIONAL(HAVE_GLAMO, [test "x$GLAMO" = xyes])
++if test "x$GLAMO" = xyes; then
++	AC_DEFINE(HAVE_GLAMO, 1, [Have glamo support])
++fi
++
+ PKG_CHECK_MODULES(CAIRO, cairo, [HAVE_CAIRO=yes], [HAVE_CAIRO=no])
+ if test "x$HAVE_CAIRO" = xyes; then
+ 	AC_DEFINE(HAVE_CAIRO, 1, [Have cairo support])
+@@ -262,6 +272,8 @@ AC_OUTPUT([
+ 	radeon/libdrm_radeon.pc
+ 	nouveau/Makefile
+ 	nouveau/libdrm_nouveau.pc
++	glamo/Makefile
++	glamo/libdrm_glamo.pc
+ 	tests/Makefile
+ 	tests/modeprint/Makefile
+ 	tests/modetest/Makefile
+diff --git a/glamo/Makefile.am b/glamo/Makefile.am
+new file mode 100644
+index 0000000..1f17aa3
+--- /dev/null
++++ b/glamo/Makefile.am
+@@ -0,0 +1,52 @@
++# Copyright (c) 2009 Thomas Whtie <taw at bitwiz.org.uk>
++# Based on libdrm-glamo Copyright © 2008 Jérôme Glisse
++#
++# Permission is hereby granted, free of charge, to any person obtaining a
++# copy of this software and associated documentation files (the "Software"),
++# to deal in the Software without restriction, including without limitation
++# the rights to use, copy, modify, merge, publish, distribute, sublicense,
++# and/or sell copies of the Software, and to permit persons to whom the
++# Software is furnished to do so, subject to the following conditions:
++#
++# The above copyright notice and this permission notice (including the next
++# paragraph) shall be included in all copies or substantial portions of the
++# Software.
++#
++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
++# IN THE SOFTWARE.
++#
++# Authors:
++#    Jérôme Glisse <glisse at freedesktop.org>
++#    Thomas White <taw at bitwiz.org.uk>
++
++AM_CFLAGS = \
++	$(WARN_CFLAGS) \
++	-I$(top_srcdir) \
++	-I$(top_srcdir)/glamo \
++	$(PTHREADSTUBS_CFLAGS) \
++	-I$(top_srcdir)/include/drm
++
++libdrm_glamo_la_LTLIBRARIES = libdrm_glamo.la
++libdrm_glamo_ladir = $(libdir)
++libdrm_glamo_la_LDFLAGS = -version-number 1:0:0 -no-undefined
++libdrm_glamo_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
++
++libdrm_glamo_la_SOURCES = \
++	glamo_bo_gem.c \
++	glamo_track.c
++
++libdrm_glamoincludedir = ${includedir}/libdrm
++libdrm_glamoinclude_HEADERS = \
++	glamo_bo.h \
++	glamo_bo_gem.h \
++	glamo_track.h
++
++pkgconfigdir = @pkgconfigdir@
++pkgconfig_DATA = libdrm_glamo.pc
++
++EXTRA_DIST = libdrm_glamo.pc.in
+diff --git a/glamo/glamo_bo.h b/glamo/glamo_bo.h
+new file mode 100644
+index 0000000..8ef2a18
+--- /dev/null
++++ b/glamo/glamo_bo.h
+@@ -0,0 +1,183 @@
++/*
++ * Copyright (c) 2009 Thomas White
++ *
++ * Heavily based on radeon_bo.h
++ * Copyright © 2008 Jérôme Glisse
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS, AUTHORS
++ * AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
++ * USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ */
++/*
++ * Authors:
++ *      Jérôme Glisse <glisse at freedesktop.org>
++ *	Thomas White <taw at bitwiz.org.uk>
++ */
++#ifndef GLAMO_BO_H
++#define GLAMO_BO_H
++
++#include <stdio.h>
++#include <stdint.h>
++#include "glamo_track.h"
++
++/* bo object */
++#define GLAMO_BO_FLAGS_MACRO_TILE  1
++#define GLAMO_BO_FLAGS_MICRO_TILE  2
++
++struct glamo_bo_manager;
++
++struct glamo_bo {
++    uint32_t                    alignment;
++    uint32_t                    handle;
++    uint32_t                    size;
++    uint32_t                    domains;
++    uint32_t                    flags;
++    unsigned                    cref;
++#ifdef GLAMO_BO_TRACK
++    struct glamo_track		*track;
++#endif
++    struct glamo_bo_manager	*bom;
++    void			*virtual;
++    uint32_t			space_accounted;
++};
++
++/* bo functions */
++struct glamo_bo_funcs {
++    struct glamo_bo *(*bo_open)(struct glamo_bo_manager *bom,
++                                 uint32_t handle,
++                                 uint32_t size,
++                                 uint32_t alignment,
++                                 uint32_t domains,
++                                 uint32_t flags);
++    void (*bo_ref)(struct glamo_bo *bo);
++    struct glamo_bo *(*bo_unref)(struct glamo_bo *bo);
++    int (*bo_map)(struct glamo_bo *bo, int write);
++    int (*bo_unmap)(struct glamo_bo *bo);
++    int (*bo_wait)(struct glamo_bo *bo);
++};
++
++struct glamo_bo_manager {
++    struct glamo_bo_funcs  *funcs;
++    int                     fd;
++    struct glamo_tracker   tracker;
++};
++
++static inline void _glamo_bo_debug(struct glamo_bo *bo,
++                                    const char *op,
++                                    const char *file,
++                                    const char *func,
++                                    int line)
++{
++    fprintf(stderr, "%s %p 0x%08X 0x%08X 0x%08X [%s %s %d]\n",
++            op, (void *)bo, bo->handle, bo->size, bo->cref, file, func, line);
++}
++
++static inline struct glamo_bo *_glamo_bo_open(struct glamo_bo_manager *bom,
++                                                uint32_t handle,
++                                                uint32_t size,
++                                                uint32_t alignment,
++                                                uint32_t domains,
++                                                uint32_t flags,
++                                                const char *file,
++                                                const char *func,
++                                                int line)
++{
++    struct glamo_bo *bo;
++
++    bo = bom->funcs->bo_open(bom, handle, size, alignment, domains, flags);
++#ifdef GLAMO_BO_TRACK
++    if (bo) {
++        bo->track = glamo_tracker_add_track(&bom->tracker, bo->handle);
++        glamo_track_add_event(bo->track, file, func, "open", line);
++    }
++#endif
++    return bo;
++}
++
++static inline void _glamo_bo_ref(struct glamo_bo *bo,
++                                  const char *file,
++                                  const char *func,
++                                  int line)
++{
++    bo->cref++;
++#ifdef GLAMO_BO_TRACK
++    glamo_track_add_event(bo->track, file, func, "ref", line);
++#endif
++    bo->bom->funcs->bo_ref(bo);
++}
++
++static inline struct glamo_bo *_glamo_bo_unref(struct glamo_bo *bo,
++                                                 const char *file,
++                                                 const char *func,
++                                                 int line)
++{
++    bo->cref--;
++#ifdef GLAMO_BO_TRACK
++    glamo_track_add_event(bo->track, file, func, "unref", line);
++    if (bo->cref <= 0) {
++        glamo_tracker_remove_track(&bo->bom->tracker, bo->track);
++        bo->track = NULL;
++    }
++#endif
++    return bo->bom->funcs->bo_unref(bo);
++}
++
++static inline int _glamo_bo_map(struct glamo_bo *bo,
++                                 int write,
++                                 const char *file,
++                                 const char *func,
++                                 int line)
++{
++    return bo->bom->funcs->bo_map(bo, write);
++}
++
++static inline int _glamo_bo_unmap(struct glamo_bo *bo,
++                                   const char *file,
++                                   const char *func,
++                                   int line)
++{
++    return bo->bom->funcs->bo_unmap(bo);
++}
++
++static inline int _glamo_bo_wait(struct glamo_bo *bo,
++                                  const char *file,
++                                  const char *func,
++                                  int line)
++{
++    return bo->bom->funcs->bo_wait(bo);
++}
++
++#define glamo_bo_open(bom, h, s, a, d, f)\
++    _glamo_bo_open(bom, h, s, a, d, f, __FILE__, __FUNCTION__, __LINE__)
++#define glamo_bo_ref(bo)\
++    _glamo_bo_ref(bo, __FILE__, __FUNCTION__, __LINE__)
++#define glamo_bo_unref(bo)\
++    _glamo_bo_unref(bo, __FILE__, __FUNCTION__, __LINE__)
++#define glamo_bo_map(bo, w)\
++    _glamo_bo_map(bo, w, __FILE__, __FUNCTION__, __LINE__)
++#define glamo_bo_unmap(bo)\
++    _glamo_bo_unmap(bo, __FILE__, __FUNCTION__, __LINE__)
++#define glamo_bo_debug(bo, opcode)\
++    _glamo_bo_debug(bo, opcode, __FILE__, __FUNCTION__, __LINE__)
++#define glamo_bo_wait(bo) \
++    _glamo_bo_wait(bo, __FILE__, __func__, __LINE__)
++
++#endif
+diff --git a/glamo/glamo_bo_gem.c b/glamo/glamo_bo_gem.c
+new file mode 100644
+index 0000000..38a4436
+--- /dev/null
++++ b/glamo/glamo_bo_gem.c
+@@ -0,0 +1,336 @@
++/*
++ * Copyright © 2009 Thomas White
++ *
++ * Based on radeon_bo_gem.c, to which the following notice applies:
++ *
++ * Copyright © 2008 Dave Airlie
++ * Copyright © 2008 Jérôme Glisse
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS, AUTHORS
++ * AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
++ * USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ */
++/*
++ * Authors:
++ *      Dave Airlie
++ *      Jérôme Glisse <glisse at freedesktop.org>
++ *
++ *
++ * Memory mapping functions are based on intel_bufmgr_gem.c, to which the
++ * following notice applies:
++ *
++ * Copyright © 2007 Red Hat Inc.
++ * Copyright © 2007 Intel Corporation
++ * Copyright 2006 Tungsten Graphics, Inc., Bismarck, ND., USA
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
++ * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM,
++ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
++ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
++ * USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ *
++ *
++ **************************************************************************/
++/*
++ * Authors: Thomas Hellström <thomas-at-tungstengraphics-dot-com>
++ *          Keith Whitwell <keithw-at-tungstengraphics-dot-com>
++ *	    Eric Anholt <eric at anholt.net>
++ *	    Dave Airlie <airlied at linux.ie>
++ */
++
++#ifdef HAVE_CONFIG_H
++#include "config.h"
++#endif
++
++#include <stdio.h>
++#include <stdint.h>
++#include <stdlib.h>
++#include <string.h>
++#include <sys/mman.h>
++#include <sys/ioctl.h>
++#include <errno.h>
++
++#include "xf86drm.h"
++#include "drm.h"
++#include "glamo_drm.h"
++#include "glamo_bo.h"
++#include "glamo_bo_gem.h"
++
++struct glamo_bo_gem {
++	struct glamo_bo   base;
++	uint32_t          name;
++	int               map_count;
++};
++
++struct bo_manager_gem {
++	struct glamo_bo_manager    base;
++};
++
++static struct glamo_bo *bo_open(struct glamo_bo_manager *bom,
++                                 uint32_t handle,
++                                 uint32_t size,
++                                 uint32_t alignment,
++                                 uint32_t domains,
++                                 uint32_t flags)
++{
++	struct glamo_bo_gem *bo;
++	int r;
++
++	bo = (struct glamo_bo_gem*)calloc(1, sizeof(struct glamo_bo_gem));
++	if (bo == NULL) {
++		return NULL;
++	}
++
++	bo->base.bom = bom;
++	bo->base.handle = 0;
++	bo->base.size = size;
++	bo->base.alignment = alignment;
++	bo->base.domains = domains;
++	bo->base.flags = flags;
++	bo->base.cref = 0;
++	bo->map_count = 0;
++	bo->base.virtual = NULL;
++	if (handle) {
++		struct drm_gem_open open_arg;
++
++		memset(&open_arg, 0, sizeof(open_arg));
++		open_arg.name = handle;
++		r = ioctl(bom->fd, DRM_IOCTL_GEM_OPEN, &open_arg);
++		if (r != 0) {
++			free(bo);
++			return NULL;
++		}
++		bo->base.handle = open_arg.handle;
++		bo->base.size = open_arg.size;
++		bo->name = handle;
++	} else {
++		struct drm_glamo_gem_create args;
++
++		args.size = size;
++		args.alignment = alignment;
++		args.initial_domain = bo->base.domains;
++		args.no_backing_store = 0;
++		args.handle = 0;
++		r = drmCommandWriteRead(bom->fd, DRM_GLAMO_GEM_CREATE,
++		                        &args, sizeof(args));
++		bo->base.handle = args.handle;
++		if (r) {
++			fprintf(stderr, "Failed to allocate :\n");
++			fprintf(stderr, "   size      : %d bytes\n", size);
++			fprintf(stderr, "   alignment : %d bytes\n", alignment);
++			free(bo);
++			return NULL;
++		}
++	}
++	glamo_bo_ref((struct glamo_bo*)bo);
++	return (struct glamo_bo*)bo;
++}
++
++static void bo_ref(struct glamo_bo *bo)
++{
++}
++
++static struct glamo_bo *bo_unref(struct glamo_bo *bo)
++{
++	struct glamo_bo_gem *bo_gem = (struct glamo_bo_gem*)bo;
++	struct drm_gem_close args;
++
++	if (bo == NULL) {
++		return NULL;
++	}
++	if (bo->cref) {
++		return bo;
++	}
++	if (bo_gem->map_count) {
++		munmap(bo->virtual, bo->size);
++	}
++
++	/* close object */
++	args.handle = bo->handle;
++	ioctl(bo->bom->fd, DRM_IOCTL_GEM_CLOSE, &args);
++	memset(bo_gem, 0, sizeof(struct glamo_bo_gem));
++	free(bo_gem);
++	return NULL;
++}
++
++static int bo_map(struct glamo_bo *bo, int write)
++{
++	struct glamo_bo_gem *bo_gem;
++	struct glamo_bo_manager *bufmgr;
++	int ret;
++
++	bo_gem = (struct glamo_bo_gem *)bo;
++	bufmgr = (struct glamo_bo_manager*)bo->bom;
++
++	/* Get a mapping of the buffer if we haven't before. */
++	if (bo->virtual == NULL) {
++
++		struct drm_glamo_gem_mmap mmap_arg;
++
++		memset(&mmap_arg, 0, sizeof(mmap_arg));
++		mmap_arg.handle = bo->handle;
++
++		/* Get the fake offset back... */
++		ret = ioctl(bufmgr->fd, DRM_IOCTL_GLAMO_GEM_MMAP, &mmap_arg);
++		if (ret != 0) {
++			fprintf(stderr,
++			        "%s:%d: Error preparing BO map %d (%d): %s .\n",
++			        __FILE__, __LINE__,
++			        bo->handle, bo_gem->name,
++			        strerror(errno));
++			return ret;
++		}
++		/* and mmap it */
++		bo->virtual = mmap(0, bo->size, PROT_READ | PROT_WRITE,
++		                       MAP_SHARED, bufmgr->fd,
++		                       mmap_arg.offset);
++		if (bo->virtual == MAP_FAILED) {
++			fprintf(stderr,
++			        "%s:%d: Error mapping buffer %d (%d): %s .\n",
++			        __FILE__, __LINE__,
++			        bo->handle, bo_gem->name,
++			        strerror(errno));
++			return errno;
++		}
++	}
++	bo_gem->map_count++;
++
++	return 0;
++}
++
++static int bo_unmap(struct glamo_bo *bo)
++{
++	struct glamo_bo_gem *bo_gem = (struct glamo_bo_gem*)bo;
++
++	if ( bo_gem->map_count == 0 ) {
++		fprintf(stderr, "Not unmapping %p, because its map count"
++		                " is already zero.\n", bo_gem);
++		return 0;
++	}
++
++	if (--bo_gem->map_count > 0) {
++		return 0;
++	}
++	munmap(bo->virtual, bo->size);
++	bo->virtual = NULL;
++	return 0;
++}
++
++static int bo_wait(struct glamo_bo *bo)
++{
++	struct drm_glamo_gem_wait_rendering args;
++	int ret;
++
++	args.handle = bo->handle;
++	args.have_handle = 1;
++	do {
++		ret = drmCommandWriteRead(bo->bom->fd,
++		                          DRM_GLAMO_GEM_WAIT_RENDERING,
++		                          &args, sizeof(args));
++	} while (ret == -EAGAIN);
++	return ret;
++}
++
++static struct glamo_bo_funcs bo_gem_funcs = {
++	bo_open,
++	bo_ref,
++	bo_unref,
++	bo_map,
++	bo_unmap,
++	bo_wait
++};
++
++struct glamo_bo_manager *glamo_bo_manager_gem_ctor(int fd)
++{
++	struct bo_manager_gem *bomg;
++
++	bomg = (struct bo_manager_gem*)calloc(1, sizeof(struct bo_manager_gem));
++	if (bomg == NULL) return NULL;
++
++	bomg->base.funcs = &bo_gem_funcs;
++	bomg->base.fd = fd;
++	return (struct glamo_bo_manager*)bomg;
++}
++
++void glamo_bo_manager_gem_dtor(struct glamo_bo_manager *bom)
++{
++	struct bo_manager_gem *bomg = (struct bo_manager_gem*)bom;
++
++	if (bom == NULL) return;
++	free(bomg);
++}
++
++uint32_t glamo_gem_get_name(struct glamo_bo *bo)
++{
++	struct glamo_bo_gem *bo_gem = (struct glamo_bo_gem*)bo;
++	return bo_gem->name;
++}
++
++int glamo_gem_name_buffer(struct glamo_bo *bo, uint32_t *name)
++{
++	struct drm_gem_flink flink;
++	int r;
++
++	if ( !bo ) {
++		fprintf(stderr, "No buffer object!\n");
++		return -1;
++	}
++
++	flink.handle = bo->handle;
++	r = ioctl(bo->bom->fd, DRM_IOCTL_GEM_FLINK, &flink);
++	if (r) return r;
++
++	*name = flink.name;
++	return 0;
++}
++
++int glamo_bo_subdata(struct glamo_bo *bo, unsigned long offset,
++                     unsigned long size, const void *data)
++{
++	int ret;
++
++	if (size == 0 || data == NULL)
++		return 0;
++
++	ret = bo_map(bo, 1);
++	if ( ret ) return ret;
++
++	memcpy((unsigned char *)bo->virtual + offset, data, size);
++
++	bo_unmap(bo);
++
++	return 0;
++}
+diff --git a/glamo/glamo_bo_gem.h b/glamo/glamo_bo_gem.h
+new file mode 100644
+index 0000000..05b5fb9
+--- /dev/null
++++ b/glamo/glamo_bo_gem.h
+@@ -0,0 +1,43 @@
++/*
++ * Copyright © 2008 Dave Airlie
++ * Copyright © 2008 Jérôme Glisse
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS, AUTHORS
++ * AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
++ * USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ */
++/*
++ * Authors:
++ *      Dave Airlie
++ *      Jérôme Glisse <glisse at freedesktop.org>
++ */
++#ifndef GLAMO_BO_GEM_H
++#define GLAMO_BO_GEM_H
++
++#include "glamo_bo.h"
++
++struct glamo_bo_manager *glamo_bo_manager_gem_ctor(int fd);
++void glamo_bo_manager_gem_dtor(struct glamo_bo_manager *bom);
++int glamo_gem_name_buffer(struct glamo_bo *bo, uint32_t *name);
++uint32_t glamo_gem_get_name(struct glamo_bo *bo);
++extern int glamo_bo_subdata(struct glamo_bo *bo, unsigned long offset,
++                            unsigned long size, const void *data);
++#endif
+diff --git a/glamo/glamo_track.c b/glamo/glamo_track.c
+new file mode 100644
+index 0000000..27ffe41
+--- /dev/null
++++ b/glamo/glamo_track.c
+@@ -0,0 +1,140 @@
++/* 
++ * Copyright © 2008 Jérôme Glisse
++ * All Rights Reserved.
++ * 
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ * 
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS, AUTHORS
++ * AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE 
++ * USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ */
++/*
++ * Authors:
++ *      Jérôme Glisse <glisse at freedesktop.org>
++ */
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include "glamo_track.h"
++
++void glamo_track_add_event(struct glamo_track *track,
++                            const char *file,
++                            const char *func,
++                            const char *op,
++                            unsigned line)
++{
++    struct glamo_track_event *event;
++
++    if (track == NULL) {
++        return;
++    }
++    event = (void*)calloc(1,sizeof(struct glamo_track_event));
++    if (event == NULL) {
++        return;
++    }
++    event->line = line;
++    event->file = strdup(file);
++    event->func = strdup(func);
++    event->op = strdup(op);
++    if (event->file == NULL || event->func == NULL || event->op == NULL) {
++        free(event->file);
++        free(event->func);
++        free(event->op);
++        free(event);
++        return;
++    }
++    event->next = track->events;
++    track->events = event;
++}
++
++struct glamo_track *glamo_tracker_add_track(struct glamo_tracker *tracker,
++                                              unsigned key)
++{
++    struct glamo_track *track;
++
++    track = (struct glamo_track*)calloc(1, sizeof(struct glamo_track));
++    if (track) {
++        track->next = tracker->tracks.next;
++        track->prev = &tracker->tracks;
++        tracker->tracks.next = track;
++        if (track->next) {
++            track->next->prev = track;
++        }
++        track->key = key;
++        track->events = NULL;
++    }
++    return track;
++}
++
++void glamo_tracker_remove_track(struct glamo_tracker *tracker,
++                                 struct glamo_track *track)
++{
++    struct glamo_track_event *event;
++    void *tmp;
++
++    if (track == NULL) {
++        return;
++    }
++    track->prev->next = track->next;
++    if (track->next) {
++        track->next->prev = track->prev;
++    }
++    track->next = track->prev = NULL;
++    event = track->events;
++    while (event) {
++        tmp = event;
++        free(event->file);
++        free(event->func);
++        free(event->op);
++        event = event->next;
++        free(tmp);
++    }
++    track->events = NULL;
++    free(track);
++}
++
++void glamo_tracker_print(struct glamo_tracker *tracker, FILE *file)
++{
++    struct glamo_track *track;
++    struct glamo_track_event *event;
++    void *tmp;
++
++    track = tracker->tracks.next;
++    while (track) {
++        event = track->events;
++        fprintf(file, "[0x%08X] :\n", track->key);
++        while (event) {
++            tmp = event;
++            fprintf(file, "  [0x%08X:%s](%s:%s:%d)\n",
++                    track->key, event->op,  event->file,
++                    event->func, event->line);
++            free(event->file);
++            free(event->func);
++            free(event->op);
++            event->file = NULL;
++            event->func = NULL;
++            event->op = NULL;
++            event = event->next;
++            free(tmp);
++        }
++        track->events = NULL;
++        tmp = track;
++        track = track->next;
++        free(tmp);
++    }
++}
+diff --git a/glamo/glamo_track.h b/glamo/glamo_track.h
+new file mode 100644
+index 0000000..fedead7
+--- /dev/null
++++ b/glamo/glamo_track.h
+@@ -0,0 +1,64 @@
++/*
++ * Copyright © 2008 Jérôme Glisse
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS, AUTHORS
++ * AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
++ * USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ */
++/*
++ * Authors:
++ *      Jérôme Glisse <glisse at freedesktop.org>
++ */
++#ifndef GLAMO_TRACK_H
++#define GLAMO_TRACK_H
++
++struct glamo_track_event {
++    struct glamo_track_event   *next;
++    char                        *file;
++    char                        *func;
++    char                        *op;
++    unsigned                    line;
++};
++
++struct glamo_track {
++    struct glamo_track         *next;
++    struct glamo_track         *prev;
++    unsigned                    key;
++    struct glamo_track_event   *events;
++};
++
++struct glamo_tracker {
++    struct glamo_track         tracks;
++};
++
++void glamo_track_add_event(struct glamo_track *track,
++                            const char *file,
++                            const char *func,
++                            const char *op,
++                            unsigned line);
++struct glamo_track *glamo_tracker_add_track(struct glamo_tracker *tracker,
++                                              unsigned key);
++void glamo_tracker_remove_track(struct glamo_tracker *tracker,
++                                 struct glamo_track *track);
++void glamo_tracker_print(struct glamo_tracker *tracker,
++                          FILE *file);
++
++#endif
+diff --git a/glamo/libdrm_glamo.pc.in b/glamo/libdrm_glamo.pc.in
+new file mode 100644
+index 0000000..d4d8e70
+--- /dev/null
++++ b/glamo/libdrm_glamo.pc.in
+@@ -0,0 +1,10 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++Name: libdrm_glamo
++Description: Userspace interface to kernel DRM services for Glamo
++Version: 1.0.1
++Libs: -L${libdir} -ldrm_glamo
++Cflags: -I${includedir} -I${includedir}/libdrm
+diff --git a/include/drm/Makefile.am b/include/drm/Makefile.am
+index 43695bd..f3f7edf 100644
+--- a/include/drm/Makefile.am
++++ b/include/drm/Makefile.am
+@@ -35,6 +35,7 @@ klibdrminclude_HEADERS = \
+ 	savage_drm.h \
+ 	sis_drm.h \
+ 	via_drm.h \
++	glamo_drm.h \
+ 	mach64_drm.h
+ 
+ 
+diff --git a/include/drm/glamo_drm.h b/include/drm/glamo_drm.h
+new file mode 100644
+index 0000000..7629ebc
+--- /dev/null
++++ b/include/drm/glamo_drm.h
+@@ -0,0 +1,153 @@
++/* glamo_drm.h -- Public header for the Glamo driver
++ *
++ * Copyright 2009 Thomas White
++ * Copyright 2000 Precision Insight, Inc., Cedar Park, Texas.
++ * Copyright 2000 VA Linux Systems, Inc., Fremont, California.
++ * Copyright 2002 Tungsten Graphics, Inc., Cedar Park, Texas.
++ * All rights reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice (including the next
++ * paragraph) shall be included in all copies or substantial portions of the
++ * Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
++ * DEALINGS IN THE SOFTWARE.
++ *
++ * Authors:
++ *    Thomas White <taw at bitwiz.org.uk>
++ *    Kevin E. Martin <martin at valinux.com>
++ *    Gareth Hughes <gareth at valinux.com>
++ *    Keith Whitwell <keith at tungstengraphics.com>
++ */
++
++#ifndef __GLAMO_DRM_H__
++#define __GLAMO_DRM_H__
++
++#include "drm.h"
++
++#define GLAMO_GEM_DOMAIN_VRAM (0x1)
++
++/* Glamo specific ioctls */
++#define DRM_GLAMO_CMDBUF     0x01
++#define DRM_GLAMO_SWAP       0x02
++#define DRM_GLAMO_CMDBURST   0x03
++
++#define DRM_GLAMO_GEM_INFO     0x1c
++#define DRM_GLAMO_GEM_CREATE   0x1d
++#define DRM_GLAMO_GEM_MMAP     0x1e
++#define DRM_GLAMO_GEM_PIN      0x1f
++#define DRM_GLAMO_GEM_UNPIN    0x20
++#define DRM_GLAMO_GEM_PREAD    0x21
++#define DRM_GLAMO_GEM_PWRITE   0x22
++#define DRM_GLAMO_GEM_WAIT_RENDERING 0x24
++
++#define DRM_IOCTL_GLAMO_CMDBUF     DRM_IOW(DRM_COMMAND_BASE + DRM_GLAMO_CMDBUF, drm_glamo_cmd_buffer_t)
++#define DRM_IOCTL_GLAMO_SWAP       DRM_IO(DRM_COMMAND_BASE + DRM_GLAMO_SWAP)
++#define DRM_IOCTL_GLAMO_CMDBURST     DRM_IOW(DRM_COMMAND_BASE + DRM_GLAMO_CMDBURST, drm_glamo_cmd_burst_t)
++
++#define DRM_IOCTL_GLAMO_GEM_INFO   DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_INFO, struct drm_glamo_gem_info)
++#define DRM_IOCTL_GLAMO_GEM_CREATE DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_CREATE, struct drm_glamo_gem_create)
++#define DRM_IOCTL_GLAMO_GEM_MMAP   DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_MMAP, struct drm_glamo_gem_mmap)
++#define DRM_IOCTL_GLAMO_GEM_PIN    DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_PIN, struct drm_glamo_gem_pin)
++#define DRM_IOCTL_GLAMO_GEM_UNPIN  DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_UNPIN, struct drm_glamo_gem_unpin)
++#define DRM_IOCTL_GLAMO_GEM_PREAD  DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_PREAD, struct drm_glamo_gem_pread)
++#define DRM_IOCTL_GLAMO_GEM_PWRITE DRM_IOWR(DRM_COMMAND_BASE + DRM_GLAMO_GEM_PWRITE, struct drm_glamo_gem_pwrite)
++#define DRM_IOCTL_GLAMO_GEM_WAIT_RENDERING DRM_IOW(DRM_COMMAND_BASE + DRM_GLAMO_GEM_WAIT_RENDERING, struct drm_glamo_gem_wait_rendering)
++
++
++/* Simple command submission - a list of 16-bit address-data pairs */
++typedef struct drm_glamo_cmd_buffer {
++	unsigned int bufsz;	/* Size of buffer, in bytes */
++	char *buf;		/* Buffer of stuff to go onto the ring buffer */
++	unsigned int *obj_pos;	/* Offsets (in bytes) at which to put objs */
++	uint32_t *objs;		/* List of buffer object (handles) to use */
++	unsigned int nobjs;	/* Number of objects referenced */
++	int nbox;
++	struct drm_clip_rect *boxes;
++} drm_glamo_cmd_buffer_t;
++
++
++/* Burst command submission - base address and data:
++ *  - Data can be 32-bit (more easily)
++ *  - Easier for the kernel to validate */
++typedef struct drm_glamo_cmd_burst {
++	uint16_t base;		/* Base address (command) */
++	int bufsz;		/* Size of data, in bytes */
++	uint16_t *data;		/* Pointer to data */
++	unsigned int *obj_pos;	/* Offsets (in bytes) at which to put objs */
++	uint32_t *objs;		/* List of buffer object (handles) to use */
++	unsigned int nobjs;	/* Number of objects referenced */
++} drm_glamo_cmd_burst_t;
++
++struct drm_glamo_gem_info {
++	uint64_t vram_start;
++	uint64_t vram_size;
++};
++
++struct drm_glamo_gem_create {
++	uint64_t size;
++	uint64_t alignment;
++	uint32_t handle;
++	uint32_t initial_domain; // to allow VRAM to be created
++	uint32_t no_backing_store;
++};
++
++struct drm_glamo_gem_mmap {
++	uint32_t handle;	/* Handle goes in... */
++	uint64_t offset;	/* ...offset comes out */
++};
++
++struct drm_glamo_gem_wait_rendering {
++	uint32_t handle;
++	int have_handle;
++};
++
++struct drm_glamo_gem_pin {
++	uint32_t handle;
++	uint32_t pin_domain;
++	uint64_t alignment;
++	uint64_t offset;
++};
++
++struct drm_glamo_gem_unpin {
++	uint32_t handle;
++	uint32_t pad;
++};
++
++struct drm_glamo_gem_pread {
++	/** Handle for the object being read. */
++	uint32_t handle;
++	uint32_t pad;
++	/** Offset into the object to read from */
++	uint64_t offset;
++	/** Length of data to read */
++	uint64_t size;
++	/** Pointer to write the data into. */
++	uint64_t data_ptr;	/* void *, but pointers are not 32/64 compatible */
++};
++
++struct drm_glamo_gem_pwrite {
++	/** Handle for the object being written to. */
++	uint32_t handle;
++	uint32_t pad;
++	/** Offset into the object to write to */
++	uint64_t offset;
++	/** Length of data to write */
++	uint64_t size;
++	/** Pointer to read the data from. */
++	uint64_t data_ptr;	/* void *, but pointers are not 32/64 compatible */
++};
++
++#endif
diff --git a/meta-oe/recipes-graphics/drm/libdrm-2.4.24/installtests.patch b/meta-oe/recipes-graphics/drm/libdrm-2.4.24/installtests.patch
new file mode 100644
index 0000000..9d6a168
--- /dev/null
+++ b/meta-oe/recipes-graphics/drm/libdrm-2.4.24/installtests.patch
@@ -0,0 +1,43 @@
+Index: libdrm-2.4.7/tests/Makefile.am
+===================================================================
+--- libdrm-2.4.7.orig/tests/Makefile.am	2009-04-09 20:16:35.000000000 +0100
++++ libdrm-2.4.7/tests/Makefile.am	2009-04-17 12:35:14.000000000 +0100
+@@ -6,10 +6,11 @@
+
+ LDADD = $(top_builddir)/libdrm.la
+
+-check_PROGRAMS = \
++bin_PROGRAMS = \
+ 	dristat \
+ 	drmstat
+
++check_PROGRAMS =
+ SUBDIRS =
+
+ if HAVE_LIBKMS
+Index: libdrm-2.4.7/tests/modeprint/Makefile.am
+===================================================================
+--- libdrm-2.4.7.orig/tests/modeprint/Makefile.am	2009-02-17 19:52:37.000000000 +0000
++++ libdrm-2.4.7/tests/modeprint/Makefile.am	2009-04-17 12:35:32.000000000 +0100
+@@ -3,7 +3,7 @@
+ 	-I$(top_srcdir)/libdrm/intel/ \
+ 	-I$(top_srcdir)/libdrm
+
+-noinst_PROGRAMS = \
++bin_PROGRAMS = \
+ 	modeprint
+
+ modeprint_SOURCES = \
+Index: libdrm-2.4.7/tests/modetest/Makefile.am
+===================================================================
+--- libdrm-2.4.7.orig/tests/modetest/Makefile.am	2009-02-17 19:52:37.000000000 +0000
++++ libdrm-2.4.7/tests/modetest/Makefile.am	2009-04-17 12:35:42.000000000 +0100
+@@ -4,7 +4,7 @@
+ 	-I$(top_srcdir)/libdrm \
+ 	$(CAIRO_CFLAGS)
+
+-noinst_PROGRAMS = \
++bin_PROGRAMS = \
+ 	modetest
+
+ modetest_SOURCES = \
diff --git a/meta-oe/recipes-graphics/drm/libdrm_2.4.24.bb b/meta-oe/recipes-graphics/drm/libdrm_2.4.24.bb
new file mode 100644
index 0000000..0a2365e
--- /dev/null
+++ b/meta-oe/recipes-graphics/drm/libdrm_2.4.24.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Userspace interface to the kernel DRM services"
+DESCRIPTION = "The runtime library for accessing the kernel DRM services.  DRM \
+stands for \"Direct Rendering Manager\", which is the kernel portion of the \
+\"Direct Rendering Infrastructure\" (DRI).  DRI is required for many hardware \
+accelerated OpenGL drivers."
+HOMEPAGE = "http://dri.freedesktop.org"
+SECTION = "x11/base"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71"
+SRC_URI = "http://dri.freedesktop.org/libdrm/libdrm-${PV}.tar.bz2"
+PROVIDES = "drm"
+DEPENDS = "libpthread-stubs udev cairo virtual/libx11"
+
+inherit autotools pkgconfig
+
+PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-kms ${@base_contains('MACHINE_FEATURES', 'x86', '${PN}-intel', '',d)}"
+FILES_${PN}-tests = "${bindir}/dr* ${bindir}/mode*"
+FILES_${PN}-drivers = "${libdir}/libdrm_*.so.*"
+FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*"
+FILES_${PN}-kms = "${libdir}/libkms*.so.*"
+
+LEAD_SONAME = "libdrm.so"
+
+EXTRA_OECONF_append = " ${@base_contains('MACHINE_FEATURES', 'x86', '', '--disable-intel --disable-radeon',d)}"
+EXTRA_OECONF_append_shr = " --enable-glamo-experimental-api"
+
+PR = "r8"
+
+SRC_URI += "file://installtests.patch"
+SRC_URI += "file://glamo.patch"
+
+SRC_URI[md5sum] = "8d802bf3b368f9fac0d7d17516a9436f"
+SRC_URI[sha256sum] = "c7012381f64458af9f291d913309448aac7dd23a28dc86c6970e4bf38effb6a5"
+
+do_compile_prepend_libc-uclibc() {
+	eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "/_FILE_OFFSET_BITS/d" ${S}/libkms/intel.c', d)}"
+	eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "/_FILE_OFFSET_BITS/d" ${S}/libkms/vmwgfx.c', d)}"
+	eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "/_FILE_OFFSET_BITS/d" ${S}/libkms/nouveau.c', d)}"
+}
diff --git a/meta-oe/recipes-graphics/mesa/README b/meta-oe/recipes-graphics/mesa/README
new file mode 100644
index 0000000..3c6de3e
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/README
@@ -0,0 +1,12 @@
+mesa-common.inc
+* Settings shared by ALL recipes
+
+mesa-${PV}.inc
+* Settings for particular version, mostly checksums and additional patches
+* Patches are stored mesa-${PV} dir and -dri and xlib has adjusted FILESPATHPKG
+
+mesa-dri.inc
+* Setting shared by ALL dri recipes - defines what is mesa-dri
+
+mesa-xlib.inc
+* Setting shared by ALL xlib recipes - defines what is mesa-xlib
diff --git a/meta-oe/recipes-graphics/mesa/mesa-7.10.2.inc b/meta-oe/recipes-graphics/mesa/mesa-7.10.2.inc
new file mode 100644
index 0000000..f49f495
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-7.10.2.inc
@@ -0,0 +1,19 @@
+SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2;name=archive \
+           file://glamo.patch \
+           file://uclibc.patch \
+          "
+
+DEPENDS += "talloc"
+
+SRC_URI[archive.md5sum] = "f5de82852f1243f42cc004039e10b771"
+SRC_URI[archive.sha256sum] = "8ced2678ce11cf30804694a92ea3ca6b82f158ae8995bdc626c7e85aac71c7c1"
+
+EXTRA_OECONF += " --disable-gallium"
+
+#needs more testing and updated glamo.patch before making default
+DEFAULT_PREFERENCE = "-2"
+
+do_configure_prepend() {
+  #check for python not python2, because python-native does not stage python2 binary/link
+  sed -i 's/AC_CHECK_PROGS(\[PYTHON2\], \[python2 python\])/AC_CHECK_PROGS(\[PYTHON2\], \[python python\])/g' ${S}/configure.ac
+}
diff --git a/meta-oe/recipes-graphics/mesa/mesa-7.10.2/glamo.patch b/meta-oe/recipes-graphics/mesa/mesa-7.10.2/glamo.patch
new file mode 100644
index 0000000..5aa45d5
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-7.10.2/glamo.patch
@@ -0,0 +1,2425 @@
+git diff upstream/7.10 and gitorious/7.10
+
+http://gitorious.org/mesa/mesa/commits/7.10
+
+diff --git a/configs/autoconf.in b/configs/autoconf.in
+index e2d70c6..5874955 100644
+--- a/configs/autoconf.in
++++ b/configs/autoconf.in
+@@ -120,7 +120,7 @@ OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @OSMESA_MESA_DEPS@ \
+ 	$(EXTRA_LIB_PATH) @OSMESA_LIB_DEPS@
+ EGL_LIB_DEPS = $(EXTRA_LIB_PATH) @EGL_LIB_DEPS@
+ GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLU_MESA_DEPS@ \
+-	$(EXTRA_LIB_PATH) @GLU_LIB_DEPS@
++	$(EXTRA_LIB_PATH) @GLU_LIB_DEPS@ -lstdc++
+ GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLUT_MESA_DEPS@ \
+ 	$(EXTRA_LIB_PATH) @GLUT_LIB_DEPS@
+ GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLW_MESA_DEPS@ \
+diff --git a/src/mesa/drivers/dri/glamo/Makefile b/src/mesa/drivers/dri/glamo/Makefile
+new file mode 100644
+index 0000000..e77193d
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/Makefile
+@@ -0,0 +1,22 @@
++# src/mesa/drivers/dri/glamo/Makefile
++
++TOP = ../../../../..
++include $(TOP)/configs/current
++
++LIBNAME = glamo_dri.so
++
++DRIVER_SOURCES = \
++	glamo_screen.c glamo_context.c glamo_state.c glamo_fbo.c glamo_tris.c \
++	glamo_cmdq.c glamo_render.c
++
++C_SOURCES = \
++	$(COMMON_SOURCES) \
++	$(DRIVER_SOURCES)
++
++ASM_SOURCES =
++
++DRI_LIB_DEPS += -ldrm_glamo
++
++include ../Makefile.template
++
++symlinks:
+diff --git a/src/mesa/drivers/dri/glamo/glamo_cmdq.c b/src/mesa/drivers/dri/glamo/glamo_cmdq.c
+new file mode 100644
+index 0000000..1334f8e
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_cmdq.c
+@@ -0,0 +1,110 @@
++/*
++ * Command queue submission via DRM
++ *
++ * Copyright 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of
++ * the License, or (at your option) any later version.
++ *
++ * This program 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 General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
++ * MA 02111-1307 USA
++ */
++
++
++#include <stdint.h>
++#include <stdlib.h>
++#include <drm.h>
++#include <glamo_drm.h>
++#include <glamo_bo.h>
++
++#include "glamo_context.h"
++#include "glamo_cmdq.h"
++
++
++/* Submit the prepared command sequence to the kernel */
++void glamoDRMDispatch(glamoContext *gCtx)
++{
++	drm_glamo_cmd_burst_t burst;
++	int r;
++
++	burst.base = gCtx->cmd_burst_base;
++	burst.data = gCtx->cmdq_drm;
++	burst.bufsz = gCtx->cmdq_drm_used * 2;	/* -> bytes */
++	burst.nobjs = gCtx->cmdq_obj_used;
++	burst.objs = gCtx->cmdq_objs;
++	burst.obj_pos = gCtx->cmdq_obj_pos;
++
++	r = drmCommandWrite(gCtx->drm_fd, DRM_GLAMO_CMDBURST,
++	                    &burst, sizeof(burst));
++	if ( r != 0 ) {
++		fprintf(stderr, "DRM_GLAMO_CMDBURST failed\n");
++	}
++
++	/* Reset counts to zero for the next sequence */
++	gCtx->cmdq_obj_used = 0;
++	gCtx->cmdq_drm_used = 0;
++}
++
++
++void glamoDRMAddData(glamoContext *gCtx, uint32_t val, int len)
++{
++	if ( gCtx->cmdq_drm_used+4 > gCtx->cmdq_drm_size ) {
++		fprintf(stderr, "Burst command too large\n");
++		return;
++	}
++
++	/* Record command */
++	if ( len == 2 ) {
++		gCtx->cmdq_drm[gCtx->cmdq_drm_used++] = val & 0xffff;
++	} else if ( len == 4 ) {
++		gCtx->cmdq_drm[gCtx->cmdq_drm_used++] = val & 0x0000ffff;
++		gCtx->cmdq_drm[gCtx->cmdq_drm_used++] = val & 0xffff0000;
++	} else {
++		fprintf(stderr, "Wrong command length!\n");
++	}
++}
++
++
++void glamoDRMAddBO(glamoContext *gCtx, struct glamo_bo *bo)
++{
++	if ( gCtx->cmdq_drm_used+4 > gCtx->cmdq_drm_size ) {
++		fprintf(stderr, "Burst command too large\n");
++		return;
++	}
++
++	/* Record object position */
++	gCtx->cmdq_objs[gCtx->cmdq_obj_used] = bo->handle;
++	/* -> bytes */
++	gCtx->cmdq_obj_pos[gCtx->cmdq_obj_used] = gCtx->cmdq_drm_used * 2;
++	gCtx->cmdq_obj_used++;
++
++	/* Record command */
++	gCtx->cmdq_drm[gCtx->cmdq_drm_used++] = 0x0000;
++	gCtx->cmdq_drm[gCtx->cmdq_drm_used++] = 0x0000;
++}
++
++
++void glamoDRMStartBurst(glamoContext *gCtx, uint16_t base)
++{
++	gCtx->cmd_burst_base = base;
++}
++
++
++void glamoInitCmdqCache(glamoContext *gCtx)
++{
++	gCtx->cmdq_objs = malloc(1024);
++	gCtx->cmdq_obj_pos = malloc(1024);
++	gCtx->cmdq_obj_used = 0;
++	gCtx->cmdq_drm_used = 0;
++	gCtx->cmdq_drm_size = 4 * 1024;
++	gCtx->cmdq_drm = malloc(gCtx->cmdq_drm_size);
++}
+diff --git a/src/mesa/drivers/dri/glamo/glamo_cmdq.h b/src/mesa/drivers/dri/glamo/glamo_cmdq.h
+new file mode 100644
+index 0000000..7420d7b
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_cmdq.h
+@@ -0,0 +1,33 @@
++/*
++ * Command queue submission via DRM
++ *
++ * Copyright 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of
++ * the License, or (at your option) any later version.
++ *
++ * This program 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 General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
++ * MA 02111-1307 USA
++ */
++
++
++#include <stdint.h>
++#include <glamo_bo.h>
++
++#include "glamo_context.h"
++
++
++extern void glamoDRMDispatch(glamoContext *gCtx);
++extern void glamoDRMAddBO(glamoContext *gCtx, struct glamo_bo *bo);
++extern void glamoDRMAddData(glamoContext *gCtx, uint32_t val, int len);
++extern void glamoDRMStartBurst(glamoContext *gCtx, uint16_t base);
++extern void glamoInitCmdqCache(glamoContext *gCtx);
+diff --git a/src/mesa/drivers/dri/glamo/glamo_context.c b/src/mesa/drivers/dri/glamo/glamo_context.c
+new file mode 100644
+index 0000000..39eb4e7
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_context.c
+@@ -0,0 +1,360 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on sis_context.c (c) 2003 Eric Anholt
++ *              and radeon_common_context.c
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++
++#include "dri_util.h"
++#include "drirenderbuffer.h"
++#include "utils.h"
++
++#include "swrast/swrast.h"
++#include "swrast_setup/swrast_setup.h"
++#include "drivers/common/driverfuncs.h"
++#include "vbo/vbo.h"
++#include "tnl/tnl.h"
++#include "tnl/t_pipeline.h"
++#include "main/state.h"
++
++#include "glamo_context.h"
++#include "glamo_screen.h"
++#include "glamo_state.h"
++#include "glamo_fbo.h"
++#include "glamo_tris.h"
++#include "glamo_render.h"
++#include "glamo_cmdq.h"
++
++#include <glamo_bo.h>
++#include <glamo_bo_gem.h>
++#include <glamo_drm.h>
++
++
++#define DRIVER_DATE  "20090913"
++
++
++static inline struct glamo_renderbuffer *glamo_get_renderbuffer(
++                                                      struct gl_framebuffer *fb,
++                                                      int att_index)
++{
++	if ( att_index >= 0 ) {
++		struct glamo_renderbuffer *gr;
++		gr = glamo_renderbuffer(fb->Attachment[att_index].Renderbuffer);
++		return gr;
++	} else {
++		return NULL;
++	}
++}
++
++
++static const GLubyte *glamoGetString(struct gl_context *ctx, GLenum name)
++{
++	static char buffer[128];
++
++	switch (name) {
++	case GL_VENDOR:
++		return (GLubyte *)"Thomas White";
++	case GL_RENDERER: {
++		driGetRendererString(buffer, "Glamo", DRIVER_DATE, 0);
++		return (GLubyte *) buffer;
++	}
++	default:
++		return 0;
++	}
++}
++
++
++/* Called when Mesa needs to know the size of the framebuffer */
++static void glamoBufferSize(struct gl_framebuffer *buffer,
++                            GLuint *width, GLuint *height)
++{
++	GET_CURRENT_CONTEXT(ctx);
++	glamoContextPtr glamo = GLAMO_CONTEXT(ctx);
++
++	*width = glamo->driDrawable->w;
++	*height = glamo->driDrawable->h;
++}
++
++
++GLboolean glamoCreateContext(const struct gl_config *glVisual,
++                             __DRIcontext *driContextPriv,
++                             void *sharedContextPrivate)
++{
++	struct gl_context *ctx, *shareCtx;
++	__DRIscreen *sPriv = driContextPriv->driScreenPriv;
++	glamoContextPtr context;
++	glamoScreenPtr glamoScreen;
++	struct dd_function_table functions;
++
++	context = (glamoContextPtr)CALLOC(sizeof(*context));
++	if ( context == NULL ) return GL_FALSE;
++
++	_mesa_init_driver_functions(&functions);
++
++	/* Allocate the Mesa context */
++	if ( sharedContextPrivate )
++		shareCtx = ((glamoContextPtr)sharedContextPrivate)->glCtx;
++	else
++		shareCtx = NULL;
++	context->glCtx = _mesa_create_context(glVisual, shareCtx,
++		                        &functions, (void *)context);
++	if ( context->glCtx == NULL ) {
++		FREE(context);
++		return GL_FALSE;
++	}
++	driContextPriv->driverPrivate = context;
++	ctx = context->glCtx;
++
++	glamoScreen = context->glamoScreen = (glamoScreenPtr)sPriv->private;
++
++	ctx->Driver.GetString = glamoGetString;
++	ctx->Driver.GetBufferSize = glamoBufferSize;
++
++	context->driContext = driContextPriv;
++	context->driScreen = sPriv;
++	context->driDrawable = NULL;
++	context->drm_fd = sPriv->fd;
++
++	/* Initialize the software rasterizer and helper modules. */
++	_swrast_CreateContext(ctx);
++	_vbo_CreateContext(ctx);
++	_tnl_CreateContext(ctx);
++	_swsetup_CreateContext(ctx);
++
++	/* Install our pipeline (see glamo_render.c) */
++	_tnl_install_pipeline(ctx, glamo_pipeline);
++
++	_swrast_allow_pixel_fog(ctx, GL_TRUE);
++	_swrast_allow_vertex_fog(ctx, GL_FALSE);
++	_tnl_allow_pixel_fog(ctx, GL_TRUE);
++	_tnl_allow_vertex_fog(ctx, GL_FALSE);
++
++	glamoInitCmdqCache(context);
++	glamoInitStateFuncs(ctx);
++	glamoInitTriFuncs(ctx);
++
++	return GL_TRUE;
++}
++
++
++void glamoDestroyContext(__DRIcontext *driContextPriv)
++{
++	glamoContextPtr context;
++
++	context = (glamoContextPtr)driContextPriv->driverPrivate;
++	assert(context != NULL);
++
++	if ( context != NULL ) {
++
++		_swsetup_DestroyContext(context->glCtx);
++		_tnl_DestroyContext(context->glCtx);
++		_vbo_DestroyContext(context->glCtx);
++		_swrast_DestroyContext(context->glCtx);
++
++		_mesa_destroy_context(context->glCtx);
++
++	}
++
++	FREE(context);
++}
++
++
++void glamo_update_renderbuffers(__DRIcontext *context,
++                                __DRIdrawable *drawable)
++{
++	unsigned int attachments[10];
++	__DRIbuffer *buffers;
++	__DRIscreen *screen;
++	int i, count;
++	struct glamo_framebuffer *draw;
++	glamoContextPtr glamo;
++	struct glamo_bo *bo;
++
++	draw = drawable->driverPrivate;
++	screen = context->driScreenPriv;
++	glamo = (glamoContextPtr)context->driverPrivate;
++	i = 0;
++	if ( draw->color_rb[0] ) {
++		attachments[i++] = __DRI_BUFFER_FRONT_LEFT;
++	}
++	if ( draw->color_rb[1] ) {
++		attachments[i++] = __DRI_BUFFER_BACK_LEFT;
++	}
++
++	buffers = screen->dri2.loader->getBuffers(drawable,
++	                                          &drawable->w,
++	                                          &drawable->h,
++	                                          attachments, i,
++	                                          &count,
++	                                          drawable->loaderPrivate);
++	if ( buffers == NULL ) return;
++
++	/* Set one cliprect to cover the whole drawable */
++	drawable->x = 0;
++	drawable->y = 0;
++	drawable->backX = 0;
++	drawable->backY = 0;
++	drawable->numClipRects = 1;
++	drawable->pClipRects[0].x1 = 0;
++	drawable->pClipRects[0].y1 = 0;
++	drawable->pClipRects[0].x2 = drawable->w;
++	drawable->pClipRects[0].y2 = drawable->h;
++	drawable->numBackClipRects = 1;
++	drawable->pBackClipRects[0].x1 = 0;
++	drawable->pBackClipRects[0].y1 = 0;
++	drawable->pBackClipRects[0].x2 = drawable->w;
++	drawable->pBackClipRects[0].y2 = drawable->h;
++
++	/* For each attachment */
++	for ( i=0; i<count; i++ ) {
++
++		struct glamo_renderbuffer *grb;
++
++		switch ( buffers[i].attachment ) {
++		case __DRI_BUFFER_FRONT_LEFT:
++			grb = draw->color_rb[0];
++			break;
++		case __DRI_BUFFER_BACK_LEFT:
++			grb = draw->color_rb[1];
++			break;
++		case __DRI_BUFFER_DEPTH:
++			grb = glamo_get_renderbuffer(&draw->base, BUFFER_DEPTH);
++			break;
++		case __DRI_BUFFER_STENCIL:
++			grb = glamo_get_renderbuffer(&draw->base,
++			                                        BUFFER_STENCIL);
++			break;
++		case __DRI_BUFFER_FAKE_FRONT_LEFT:
++			grb = draw->color_rb[0];
++			break;
++		case __DRI_BUFFER_ACCUM:
++		default:
++			fprintf(stderr,
++				"Unhandled buffer attach event,"
++				" attachment type %d\n", buffers[i].attachment);
++			return;
++		}
++
++		if ( grb == NULL ) {
++			/* Don't know how to handle this type of buffer */
++			continue;
++		}
++
++		if ( grb->bo ) {
++			uint32_t name = glamo_gem_get_name(grb->bo);
++			if ( name == buffers[i].name ) {
++				/* Buffer already attached.  No action needed */
++				continue;
++			}
++		}
++
++		grb->cpp = buffers[i].cpp;
++		grb->pitch = buffers[i].pitch;
++		grb->width = drawable->w;
++		grb->height = drawable->h;
++
++		bo = glamo_bo_open(glamo->glamoScreen->bom, buffers[i].name,
++		                   0, 0, GLAMO_GEM_DOMAIN_VRAM,
++		                   buffers[i].flags);
++		if ( bo == NULL ) {
++			fprintf(stderr, "Failed to attach buffer %d\n",
++				buffers[i].name);
++		}
++
++		glamo_renderbuffer_set_bo(grb, bo);
++		glamo_bo_unref(bo);
++
++	}
++
++	driUpdateFramebufferSize(glamo->glCtx, drawable);
++}
++
++
++GLboolean glamoMakeCurrent(__DRIcontext *driContextPriv,
++                           __DRIdrawable *driDrawPriv,
++                           __DRIdrawable *driReadPriv)
++{
++	struct glamo_framebuffer *draw_fb;
++	struct gl_framebuffer *read_fb;
++	glamoContextPtr glamo;
++
++	if ( driContextPriv == NULL ) {
++		_mesa_make_current(NULL, NULL, NULL);
++		return GL_TRUE;
++	}
++
++	/* The Glamo context we're switching to */
++	glamo = (glamoContextPtr)driContextPriv->driverPrivate;
++
++	glamo->driDrawable = driDrawPriv;
++
++	/* These two will probably be the same */
++	draw_fb = (struct glamo_framebuffer *)driDrawPriv->driverPrivate;
++	read_fb = (struct gl_framebuffer *)driReadPriv->driverPrivate;
++
++	glamo_update_renderbuffers(driContextPriv, driDrawPriv);
++	if (driDrawPriv != driReadPriv)
++		glamo_update_renderbuffers(driContextPriv, driReadPriv);
++
++	_mesa_make_current(glamo->glCtx, &draw_fb->base, read_fb);
++	_mesa_update_state(glamo->glCtx);
++
++	return GL_TRUE;
++}
++
++
++GLboolean glamoUnbindContext(__DRIcontext *driContextPriv)
++{
++	return GL_TRUE;
++}
++
++
++/* Convert IEEE754 32-bit float to Glamo's signed 24-bit float */
++uint32_t float7s16(GLfloat in)
++{
++	uint32_t a, b;
++	uint32_t sign, expo, mant;  /* Sign, exponent, significand */
++
++	a = *(uint32_t *)&in;
++
++	/* This is bad */
++	if ( a & 0x40000000 ) {
++		printf(stderr, "Warning: Exponent won't fit into 7 bits\n");
++	}
++
++	/* This hopefully isn't a big problem */
++	if ( a & 0x0000007f ) {
++		printf(stderr, "Warning: Precision lost in FP conversion\n");
++	}
++
++	/* Separate out the right bits */
++	mant = a & 0x007fff80;  /* Bits 7-22 (bits 0-6 are lost) */
++	expo = a & 0x3f800000;  /* Bits 23-29 (bit 30 is lost) */
++	sign = a & 0x80000000;  /* Bit 31 */
++
++	/* Shift and recombine */
++	b  = sign >> 8;  /* Fills bit 23 */
++	b |= expo >> 7;  /* Fills bits 16-22 */
++	b |= mant >> 7;  /* Fills bits 0-15 */
++
++	return b;
++}
+diff --git a/src/mesa/drivers/dri/glamo/glamo_context.h b/src/mesa/drivers/dri/glamo/glamo_context.h
+new file mode 100644
+index 0000000..8de3946
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_context.h
+@@ -0,0 +1,106 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on sis_context.h (c) 2003 Eric Anholt
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++#ifndef __GLAMO_CONTEXT_H
++#define __GLAMO_CONTEXT_H
++
++
++#include "dri_util.h"
++#include "utils.h"
++#include "tnl/t_vertex.h"
++
++#include "glamo_screen.h"
++
++
++typedef struct glamo_context glamoContext;
++typedef struct glamo_context *glamoContextPtr;
++
++struct glamo_context {
++
++	struct gl_context *glCtx;                  /* Must be first in this structure */
++
++	int drm_fd;                        /* DRM fd */
++
++	__DRIcontext  *driContext;  /* DRI context */
++	__DRIscreen   *driScreen;   /* DRI screen */
++	__DRIdrawable *driDrawable; /* DRI drawable bound to this ctx */
++
++	glamoScreenPtr glamoScreen;        /* Screen private DRI data */
++
++	driOptionCache optionCache;
++
++	uint16_t *cmdq_drm;                /* Command queue cache */
++	uint16_t cmd_burst_base;
++	int cmdq_drm_used;
++	int cmdq_drm_size;
++	int cmdq_obj_used;
++	uint32_t *cmdq_objs;
++	unsigned int *cmdq_obj_pos;
++
++	/* Information about the current primitive */
++	struct {
++		GLuint id;
++		uint32_t primitive;	/* Current hardware primitive type */
++		struct glamo_bo *vb_bo;
++		uint8_t *vb;
++		unsigned int start_offset; /* Byte offset of start */
++		unsigned int current_offset; /* Byte offset of next vertex */
++		unsigned int count;	/* Number of vertices */
++	} prim;
++
++	/* Current vertex format and attributes */
++	int vertex_size;
++	struct tnl_attr_map vertex_attrs[VERT_ATTRIB_MAX];
++
++	/* State */
++	GLuint new_state;      /* State which must be updated */
++	uint16_t col_clear;
++
++};
++
++#define GLAMO_CONTEXT(ctx) ((glamoContextPtr)(ctx->DriverCtx))
++
++#define TAG(x) glamo##x
++#include "tnl_dd/t_dd_vertex.h"
++#undef TAG
++
++extern GLboolean glamoCreateContext(const struct gl_config *glVis,
++                                    __DRIcontext *driContextPriv,
++                                    void *sharedContextPrivate);
++extern void glamoDestroyContext(__DRIcontext *dcp);
++extern GLboolean glamoMakeCurrent(__DRIcontext *driContextPriv,
++                                  __DRIdrawable *driDrawPriv,
++                                  __DRIdrawable *driReadPriv);
++extern GLboolean glamoUnbindContext(__DRIcontext *driContextPriv);
++extern void glamo_update_renderbuffers(__DRIcontext *context,
++                                       __DRIdrawable *drawable);
++
++#define GLAMO_PACKCOLOR565(r, g, b) \
++	((((r) & 0xf8) << 8)        \
++	| (((g) & 0xfc) << 3)       \
++	| (((b) & 0xf8) >> 3))
++
++extern uint32_t float7s16(GLfloat in);
++
++#endif   /* __GLAMO_CONTEXT_H */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_fbo.c b/src/mesa/drivers/dri/glamo/glamo_fbo.c
+new file mode 100644
+index 0000000..e25ca31
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_fbo.c
+@@ -0,0 +1,130 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on radeon_fbo.c (c) 2008 Red Hat Inc
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++
++#include "main/imports.h"
++#include "main/macros.h"
++#include "main/mtypes.h"
++#include "main/formats.h"
++#include "main/fbobject.h"
++#include "main/framebuffer.h"
++#include "main/renderbuffer.h"
++#include "main/context.h"
++#include "dri_util.h"
++
++/* This comes from libdrm_glamo */
++#include <glamo_bo.h>
++
++#include "glamo_fbo.h"
++
++
++static void glamo_delete_renderbuffer(struct gl_renderbuffer *rb)
++{
++   struct glamo_renderbuffer *grb = glamo_renderbuffer(rb);
++
++   ASSERT(grb);
++
++   if ( grb && grb->bo ) {
++      glamo_bo_unref(grb->bo);
++   }
++   free(grb);
++}
++
++
++static void *glamo_get_pointer(struct gl_context *ctx, struct gl_renderbuffer *rb,
++                               GLint x, GLint y)
++{
++   return NULL;   /* Can't be directly addressed */
++}
++
++
++/* Called for each hardware renderbuffer when a _window_ is resized.
++ * Just update fields.
++ * Not used for user-created renderbuffers!
++ */
++static GLboolean glamo_alloc_window_storage(struct gl_context *ctx,
++                                            struct gl_renderbuffer *rb,
++                                            GLenum internalFormat,
++                                            GLuint width, GLuint height)
++{
++   ASSERT(rb->Name == 0);
++   rb->Width = width;
++   rb->Height = height;
++   rb->Format = internalFormat;
++   return GL_TRUE;
++}
++
++
++/* Create a buffer, such as a colour or depth buffer */
++struct glamo_renderbuffer *glamo_create_renderbuffer(GLenum format,
++                                              __DRIdrawable *driDrawPriv)
++{
++   struct glamo_renderbuffer *grb;
++
++   grb = CALLOC_STRUCT(glamo_renderbuffer);
++   if ( !grb ) return NULL;
++
++   _mesa_init_renderbuffer(&grb->base, 0);
++   grb->base.ClassID = GLAMO_RB_CLASS;
++
++   switch (format) {
++      case GL_RGB5:
++         grb->base.Format = MESA_FORMAT_RGB565;
++         grb->base._BaseFormat = GL_RGB;
++
++         grb->base.DataType = GL_UNSIGNED_BYTE;
++         break;
++      case GL_DEPTH_COMPONENT16:
++         grb->base.DataType = GL_UNSIGNED_SHORT;
++	 grb->base._BaseFormat = GL_DEPTH_COMPONENT;
++         break;
++      default:
++         fprintf(stderr, "%s: Unknown format 0x%04x\n", __FUNCTION__, format);
++         _mesa_delete_renderbuffer(&grb->base);
++         return NULL;
++   }
++
++   grb->dPriv = driDrawPriv;
++   grb->base.InternalFormat = format;
++
++   grb->base.Delete = glamo_delete_renderbuffer;
++   grb->base.AllocStorage = glamo_alloc_window_storage;
++   grb->base.GetPointer = glamo_get_pointer;
++
++   return grb;
++}
++
++
++void glamo_renderbuffer_set_bo(struct glamo_renderbuffer *grb,
++                               struct glamo_bo *bo)
++{
++  struct glamo_bo *old;
++  old = grb->bo;
++  grb->bo = bo;
++  glamo_bo_ref(bo);
++  if ( old ) glamo_bo_unref(old);
++}
++
++
++/* kate: space-indent on; indent-width 3; mixedindent off; indent-mode cstyle; */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_fbo.h b/src/mesa/drivers/dri/glamo/glamo_fbo.h
+new file mode 100644
+index 0000000..48210dd
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_fbo.h
+@@ -0,0 +1,77 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++#ifndef __GLAMO_FBO_H
++#define __GLAMO_FBO_H
++
++
++#include "main/mtypes.h"
++#include "dri_util.h"
++
++
++/* This is just a marker so we can tell a Glamo renderbuffer from a Mesa one */
++#define GLAMO_RB_CLASS (0xdeadbeef)
++
++
++struct glamo_renderbuffer
++{
++	struct gl_renderbuffer base;   /* Must be first */
++	struct glamo_bo *bo;
++	unsigned int cpp;
++	unsigned int pitch;
++	unsigned int width;
++	unsigned int height;
++
++	__DRIdrawable *dPriv;
++};
++
++
++struct glamo_framebuffer
++{
++	struct gl_framebuffer base;
++	struct glamo_renderbuffer *color_rb[2];
++};
++
++
++/* This is just a small wrapper function to return NULL if the gl_renderbuffer
++ * is not a glamo_renderbuffer */
++static inline struct glamo_renderbuffer
++                                 *glamo_renderbuffer(struct gl_renderbuffer *rb)
++{
++	struct glamo_renderbuffer *grb = (struct glamo_renderbuffer *)rb;
++	if ( grb && grb->base.ClassID == GLAMO_RB_CLASS )
++		return grb;
++	else
++		return NULL;
++}
++
++
++extern struct glamo_renderbuffer *glamo_create_renderbuffer(GLenum format,
++                                             __DRIdrawable *driDrawPriv);
++
++extern void glamo_renderbuffer_set_bo(struct glamo_renderbuffer *grb,
++                               struct glamo_bo *bo);
++
++#endif   /* __GLAMO_FBO_H */
++
++/* kate: space-indent on; indent-width 3; mixedindent off; indent-mode cstyle; */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_regs.h b/src/mesa/drivers/dri/glamo/glamo_regs.h
+new file mode 100644
+index 0000000..02b2294
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_regs.h
+@@ -0,0 +1,174 @@
++#ifndef _GLAMO_REGS_H
++#define _GLAMO_REGS_H
++
++/* Smedia Glamo 336x/337x driver
++ *
++ * (C) 2007 by OpenMoko, Inc.
++ * Author: Harald Welte <laforge at openmoko.org>
++ * All rights reserved.
++ *
++ * Modified for Glamo Mesa driver by Thomas White <taw at bitwiz.org.uk>
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of
++ * the License, or (at your option) any later version.
++ *
++ * This program 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 General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
++ * MA 02111-1307 USA
++ */
++
++enum glamo_regster_offsets {
++	GLAMO_REGOFS_GENERIC	= 0x0000,
++	GLAMO_REGOFS_HOSTBUS	= 0x0200,
++	GLAMO_REGOFS_MEMORY	= 0x0300,
++	GLAMO_REGOFS_VIDCAP	= 0x0400,
++	GLAMO_REGOFS_ISP	= 0x0500,
++	GLAMO_REGOFS_JPEG	= 0x0800,
++	GLAMO_REGOFS_MPEG	= 0x0c00,
++	GLAMO_REGOFS_LCD	= 0x1100,
++	GLAMO_REGOFS_MMC	= 0x1400,
++	GLAMO_REGOFS_MPROC0	= 0x1500,
++	GLAMO_REGOFS_MPROC1	= 0x1580,
++	GLAMO_REGOFS_CMDQUEUE	= 0x1600,
++	GLAMO_REGOFS_RISC	= 0x1680,
++	GLAMO_REGOFS_2D		= 0x1700,
++	GLAMO_REGOFS_3D		= 0x1b00,
++};
++
++
++#define REG_MPEG(x)           (GLAMO_REGOFS_MPEG+(x))
++
++enum glamo_register_mpeg {
++      //
++      GLAMO_REG_MPEG_DC_ADDRL         = REG_MPEG(0x3c),
++      GLAMO_REG_MPEG_DC_ADDRH         = REG_MPEG(0x3e),
++      GLAMO_REG_MPEG_AC_ADDRL         = REG_MPEG(0x40),
++      GLAMO_REG_MPEG_AC_ADDRH         = REG_MPEG(0x42),
++      //
++      GLAMO_REG_MPEG_SAFE_1           = REG_MPEG(0x60),
++      GLAMO_REG_MPEG_SAFE_2           = REG_MPEG(0x62),
++      GLAMO_REG_MPEG_SAFE_3           = REG_MPEG(0x64),
++      //
++      GLAMO_REG_MPEG_DEC_OUT0_Y_ADDRL = REG_MPEG(0x6e),
++      GLAMO_REG_MPEG_DEC_OUT0_Y_ADDRH = REG_MPEG(0x70),
++      GLAMO_REG_MPEG_DEC_OUT0_U_ADDRL = REG_MPEG(0x72),
++      GLAMO_REG_MPEG_DEC_OUT0_U_ADDRH = REG_MPEG(0x74),
++      GLAMO_REG_MPEG_DEC_OUT0_V_ADDRL = REG_MPEG(0x76),
++      GLAMO_REG_MPEG_DEC_OUT0_V_ADDRH = REG_MPEG(0x78),
++      GLAMO_REG_MPEG_DEC_OUT1_Y_ADDRL = REG_MPEG(0x7a),
++      GLAMO_REG_MPEG_DEC_OUT1_Y_ADDRH = REG_MPEG(0x7c),
++      GLAMO_REG_MPEG_DEC_OUT1_U_ADDRL = REG_MPEG(0x7e),
++      GLAMO_REG_MPEG_DEC_OUT1_U_ADDRH = REG_MPEG(0x80),
++      GLAMO_REG_MPEG_DEC_OUT1_V_ADDRL = REG_MPEG(0x82),
++      GLAMO_REG_MPEG_DEC_OUT1_V_ADDRH = REG_MPEG(0x84),
++      GLAMO_REG_MPEG_DEC_OUT2_Y_ADDRL = REG_MPEG(0x86),
++      GLAMO_REG_MPEG_DEC_OUT2_Y_ADDRH = REG_MPEG(0x88),
++      GLAMO_REG_MPEG_DEC_OUT2_U_ADDRL = REG_MPEG(0x8a),
++      GLAMO_REG_MPEG_DEC_OUT2_U_ADDRH = REG_MPEG(0x8c),
++      GLAMO_REG_MPEG_DEC_OUT2_V_ADDRL = REG_MPEG(0x8e),
++      GLAMO_REG_MPEG_DEC_OUT2_V_ADDRH = REG_MPEG(0x90),
++      GLAMO_REG_MPEG_DEC_WIDTH        = REG_MPEG(0x92),
++      GLAMO_REG_MPEG_DEC_HEIGHT       = REG_MPEG(0x94),
++      GLAMO_REG_MPEG_SPECIAL          = REG_MPEG(0x96),
++      GLAMO_REG_MPEG_DEC_IN_ADDRL     = REG_MPEG(0x98),
++      GLAMO_REG_MPEG_DEC_IN_ADDRH     = REG_MPEG(0x9a),
++      //
++      GLAMO_REG_MPEG_DEBLK_THRESHOLD  = REG_MPEG(0xc0),
++      //
++      GLAMO_REG_MPEG_DEC_STATUS       = REG_MPEG(0xc8),
++      GLAMO_REG_MPEG_DEC_RB0          = REG_MPEG(0xca),
++      GLAMO_REG_MPEG_DEC_RB1          = REG_MPEG(0xcc),
++};
++
++
++#define REG_2D(x)		(GLAMO_REGOFS_2D+(x))
++
++enum glamo_register_2d {
++	GLAMO_REG_2D_SRC_ADDRL		= REG_2D(0x00),
++	GLAMO_REG_2D_SRC_ADDRH		= REG_2D(0x02),
++	GLAMO_REG_2D_SRC_PITCH		= REG_2D(0x04),
++	GLAMO_REG_2D_SRC_X		= REG_2D(0x06),
++	GLAMO_REG_2D_SRC_Y		= REG_2D(0x08),
++	GLAMO_REG_2D_DST_X		= REG_2D(0x0a),
++	GLAMO_REG_2D_DST_Y		= REG_2D(0x0c),
++	GLAMO_REG_2D_DST_ADDRL		= REG_2D(0x0e),
++	GLAMO_REG_2D_DST_ADDRH		= REG_2D(0x10),
++	GLAMO_REG_2D_DST_PITCH		= REG_2D(0x12),
++	GLAMO_REG_2D_DST_HEIGHT		= REG_2D(0x14),
++	GLAMO_REG_2D_RECT_WIDTH		= REG_2D(0x16),
++	GLAMO_REG_2D_RECT_HEIGHT	= REG_2D(0x18),
++	GLAMO_REG_2D_PAT_ADDRL		= REG_2D(0x1a),
++	GLAMO_REG_2D_PAT_ADDRH		= REG_2D(0x1c),
++	GLAMO_REG_2D_PAT_FG		= REG_2D(0x1e),
++	GLAMO_REG_2D_PAT_BG		= REG_2D(0x20),
++	GLAMO_REG_2D_SRC_FG		= REG_2D(0x22),
++	GLAMO_REG_2D_SRC_BG		= REG_2D(0x24),
++	GLAMO_REG_2D_MASK1		= REG_2D(0x26),
++	GLAMO_REG_2D_MASK2		= REG_2D(0x28),
++	GLAMO_REG_2D_MASK3		= REG_2D(0x2a),
++	GLAMO_REG_2D_MASK4		= REG_2D(0x2c),
++	GLAMO_REG_2D_ROT_X		= REG_2D(0x2e),
++	GLAMO_REG_2D_ROT_Y		= REG_2D(0x30),
++	GLAMO_REG_2D_LEFT_CLIP		= REG_2D(0x32),
++	GLAMO_REG_2D_TOP_CLIP		= REG_2D(0x34),
++	GLAMO_REG_2D_RIGHT_CLIP		= REG_2D(0x36),
++	GLAMO_REG_2D_BOTTOM_CLIP	= REG_2D(0x38),
++	GLAMO_REG_2D_COMMAND1		= REG_2D(0x3A),
++	GLAMO_REG_2D_COMMAND2		= REG_2D(0x3C),
++	GLAMO_REG_2D_COMMAND3		= REG_2D(0x3E),
++	GLAMO_REG_2D_SAFE		= REG_2D(0x40),
++	GLAMO_REG_2D_STATUS		= REG_2D(0x42),
++	GLAMO_REG_2D_ID1		= REG_2D(0x44),
++	GLAMO_REG_2D_ID2		= REG_2D(0x46),
++	GLAMO_REG_2D_ID3		= REG_2D(0x48),
++};
++
++
++/* No offset this time */
++#define REG_3D(x)		(x)
++
++enum glamo_register_3d
++{
++	/* Fire the engine */
++	G3D_FIRE			= REG_3D(0x2058),
++
++	/* Streams of vertex/colour/normal/texcoord data */
++	G3D_ACTIVE_STREAMS		= REG_3D(0x1f00),
++	G3D_LAST_STREAM__VCOLFMT	= REG_3D(0x2030),
++	G3D_STREAM_MODE_0		= REG_3D(0x1f10),
++	G3D_STREAM_BASE_0		= REG_3D(0x1f14),
++	G3D_STREAM_MODE_1		= REG_3D(0x1f18),
++	G3D_STREAM_BASE_1		= REG_3D(0x1f1c),
++	G3D_STREAM_MODE_2		= REG_3D(0x1f20),
++	G3D_STREAM_BASE_2		= REG_3D(0x1f24),
++	G3D_STREAM_MODE_3		= REG_3D(0x1f28),
++	G3D_STREAM_BASE_3		= REG_3D(0x1f2c),
++	G3D_STREAM_MODE_4		= REG_3D(0x1f30),
++	G3D_STREAM_BASE_4		= REG_3D(0x1f34),
++	G3D_STREAM_MODE_5		= REG_3D(0x1f38),
++	G3D_STREAM_BASE_5		= REG_3D(0x1f3c),
++	G3D_STREAM_MODE_6		= REG_3D(0x1f40),
++	G3D_STREAM_BASE_6		= REG_3D(0x1f44),
++	G3D_STREAM_MODE_7		= REG_3D(0x1f48),
++	G3D_STREAM_BASE_7		= REG_3D(0x1f4c),
++
++	/* Modelview*projection matrix */
++	G3D_MATRIX_MVP			= REG_3D(0x26a0), /* .. 0x27df */
++
++	/* Modelview matrix */
++	G3D_MATRIX_MV			= REG_3D(0x26e0), /* .. 0x270f */
++
++	/* Inverse MVP, 3x3 only */
++	G3D_MATRIX_IMVP			= REG_3D(0x2710), /* .. 0x2733 */
++
++};
++
++#endif /* _GLAMO_REGS_H */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_render.c b/src/mesa/drivers/dri/glamo/glamo_render.c
+new file mode 100644
+index 0000000..d8b21d5
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_render.c
+@@ -0,0 +1,230 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ *
++ * Based on intel_render.c, to which the following notice applies:
++ *
++ * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas.
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
++ * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
++ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
++ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
++ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ */
++
++
++/*
++ * Render unclipped vertex buffers by emitting vertices directly to
++ * dma buffers.  Use strip/fan hardware acceleration where possible.
++ *
++ */
++#include "main/glheader.h"
++#include "main/context.h"
++#include "main/macros.h"
++#include "main/imports.h"
++#include "main/mtypes.h"
++#include "main/enums.h"
++
++#include "tnl/t_context.h"
++#include "tnl/t_vertex.h"
++#include "tnl/t_pipeline.h"
++#include "math/m_xform.h"
++
++#include "glamo_context.h"
++#include "glamo_tris.h"
++#include "glamo_regs.h"
++
++/*
++ * Render unclipped vertex buffers by emitting vertices directly to
++ * VRAM buffers.  Use strip/fan hardware primitives where possible.
++ * Try to simulate missing primitives with indexed vertices.
++ */
++#define HAVE_POINTS      1
++#define HAVE_LINES       1
++#define HAVE_LINE_STRIPS 0
++#define HAVE_TRIANGLES   1
++#define HAVE_TRI_STRIPS  0
++#define HAVE_TRI_STRIP_1 0
++#define HAVE_TRI_FANS    0
++#define HAVE_POLYGONS    0
++#define HAVE_QUADS       0
++#define HAVE_QUAD_STRIPS 0
++#define HAVE_ELTS        0
++
++
++static void glamoFlushPrim(struct glamo_context *gCtx)
++{
++	printf("glamoFlushPrim: %i vertices, %i %i\n", gCtx->prim.count,
++	gCtx->prim.start_offset, gCtx->prim.current_offset);
++
++	if ( gCtx->prim.vb_bo == NULL ) return;
++
++	/* Upload to hardware */
++	glamo_bo_subdata(gCtx->prim.vb_bo, 0, gCtx->prim.current_offset,
++	                 gCtx->prim.vb);
++
++	/* Dispatch to the hardware */
++	glamoDRMStartBurst(gCtx, G3D_STREAM_MODE_0);
++	glamoDRMAddData(gCtx, 0x000f0300, 4);
++	glamoDRMAddBO(gCtx, gCtx->prim.vb_bo);
++	glamoDRMDispatch(gCtx);
++
++	/* Please use a new BO for the next buffer */
++	gCtx->prim.vb_bo = NULL;
++
++	/* Continue from new start */
++	gCtx->prim.start_offset = gCtx->prim.current_offset;
++}
++
++
++static inline GLuint glamoGetVBMax(struct glamo_context *gCtx)
++{
++	return GLAMO_VB_SIZE / gCtx->vertex_size;
++}
++
++
++static inline GLuint glamoGetCurrentMax(struct glamo_context *gCtx)
++{
++	/* How many more vertices can be accommodated?
++	 * Each vertex takes up 4x 32-bit fixed point values */
++	return (GLAMO_VB_SIZE - gCtx->prim.current_offset) / gCtx->vertex_size;
++}
++
++
++#define LOCAL_VARS \
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++
++#define INIT(prim)
++
++#define FLUSH() glamoFlushPrim(gCtx)
++
++#define GET_SUBSEQUENT_VB_MAX_VERTS() glamoGetVBMax(gCtx)
++#define GET_CURRENT_VB_MAX_VERTS() glamoGetCurrentMax(gCtx)
++
++#define ALLOC_VERTS(nr) glamoGetPrimSpace(gCtx, nr)
++
++#define EMIT_VERTS(ctx, j, nr, buf) \
++	_tnl_emit_vertices_to_buffer(ctx, j, (j)+(nr), buf)
++
++#define TAG(x) glamo_##x
++#include "tnl_dd/t_dd_dmatmp.h"
++
++
++/**********************************************************************/
++/*                          Render pipeline stage                     */
++/**********************************************************************/
++
++static void glamoFireEngine(struct glamo_context *gCtx)
++{
++	glamoDRMStartBurst(gCtx, G3D_FIRE);
++	glamoDRMAddData(gCtx, 0, 2);  /* Fire! */
++	glamoDRMDispatch(gCtx);
++}
++
++
++static GLboolean glamoRunRender(struct gl_context *ctx,
++                                struct tnl_pipeline_stage *stage)
++{
++	TNLcontext *tnl = TNL_CONTEXT(ctx);
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++	struct vertex_buffer *VB = &tnl->vb;
++	GLuint i;
++
++	printf("glamoRunRender\n");
++
++	/* Don't handle clipping */
++	if ( !glamo_validate_render(ctx, VB) ) {
++		return GL_TRUE; /* Failed */
++	}
++
++	/* Validate GPU state */
++	if ( gCtx->new_state ) {
++		if ( !glamoValidateState(ctx, gCtx->new_state) ) {
++			printf("Couldn't validate state...\n");
++		}
++	} /* else nothing to update */
++
++	tnl->clipspace.new_inputs |= VERT_BIT_POS;
++
++	tnl->Driver.Render.Start(ctx);
++
++	for ( i=0; i<VB->PrimitiveCount; i++ ) {
++
++		GLuint prim = _tnl_translate_prim(&VB->Primitive[i]);
++		GLuint start = VB->Primitive[i].start;
++		GLuint length = VB->Primitive[i].count;
++
++		if (!length) continue;
++
++		glamo_render_tab_verts[prim & PRIM_MODE_MASK](ctx, start,
++                                                     start + length, prim);
++
++	}
++
++	tnl->Driver.Render.Finish(ctx);
++
++	glamoFireEngine(gCtx);
++
++	return GL_FALSE;  /* Ok */
++}
++
++
++static const struct tnl_pipeline_stage _glamo_render_stage = {
++	"glamo render",
++	NULL,
++	NULL,
++	NULL,
++	NULL,
++	glamoRunRender
++};
++
++
++const struct tnl_pipeline_stage *glamo_pipeline[] = {
++	&_tnl_vertex_transform_stage,
++	&_tnl_normal_transform_stage,
++	&_tnl_lighting_stage,
++	&_tnl_fog_coordinate_stage,
++	&_tnl_texgen_stage,
++	&_tnl_texture_transform_stage,
++	&_tnl_point_attenuation_stage,
++	&_tnl_vertex_program_stage,
++	&_glamo_render_stage,        /* ADD: unclipped rastersetup-to-dma */
++	&_tnl_render_stage,
++	0,
++};
+diff --git a/src/mesa/drivers/dri/glamo/glamo_render.h b/src/mesa/drivers/dri/glamo/glamo_render.h
+new file mode 100644
+index 0000000..99c36a8
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_render.h
+@@ -0,0 +1,31 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++#ifndef __GLAMO_RENDER_H
++#define __GLAMO_RENDER_H
++
++#include "main/mtypes.h"
++
++extern const struct tnl_pipeline_stage *glamo_pipeline[];
++
++#endif   /* __GLAMO_RENDER_H */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_screen.c b/src/mesa/drivers/dri/glamo/glamo_screen.c
+new file mode 100644
+index 0000000..cc8a730
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_screen.c
+@@ -0,0 +1,250 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on sis_screen.c (c) 2003 Eric Anholt
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++
++#include "dri_util.h"
++#include "utils.h"
++#include "xmlconfig.h"
++#include "GL/internal/dri_interface.h"
++#include "main/framebuffer.h"
++#include "main/renderbuffer.h"
++
++#include "glamo_screen.h"
++#include "glamo_context.h"
++#include "glamo_fbo.h"
++
++/* This comes from libdrm_glamo */
++#include <glamo_bo_gem.h>
++
++
++static int glamoInitDriver(__DRIscreen *psp)
++{
++   return 0;
++}
++
++
++static glamoScreenPtr glamoCreateScreen(__DRIscreen *sPriv)
++{
++   glamoScreenPtr glamoScreen;
++
++   /* Allocate the private area */
++   glamoScreen = (glamoScreenPtr)CALLOC(sizeof(*glamoScreen));
++   if ( glamoScreen == NULL )
++      return NULL;
++
++   glamoScreen->driScreen = sPriv;
++
++   /* This is our link to the kernel's memory manager, via libdrm */
++   glamoScreen->bom = glamo_bo_manager_gem_ctor(sPriv->fd);
++
++   return glamoScreen;
++}
++
++
++static void glamoDestroyScreen(__DRIscreen *sPriv)
++{
++   glamoScreenPtr glamoScreen = (glamoScreenPtr)sPriv->private;
++
++   if ( glamoScreen == NULL )
++      return;
++
++   FREE(glamoScreen);
++   sPriv->private = NULL;
++}
++
++
++static const __DRIconfig **glamoInitScreen(__DRIscreen *sPriv)
++{
++   __DRIconfig **configs;
++   uint8_t depth_bits_array[2];
++   uint8_t stencil_bits_array[2];
++   uint8_t msaa_samples_array[1];
++   static const GLenum db_modes[] = { GLX_SWAP_COPY_OML, GLX_NONE };
++
++   /* Driver initialisation */
++   if ( glamoInitDriver(sPriv) ) {
++      return NULL;
++   }
++
++   /* Screen-specific initialisation */
++   sPriv->private = glamoCreateScreen(sPriv);
++   if ( !sPriv->private ) {
++      glamoDestroyScreen(sPriv);
++      return NULL;
++   }
++
++   depth_bits_array[0] = 0;
++   stencil_bits_array[0] = 0;
++   depth_bits_array[1] = 16;
++   stencil_bits_array[1] = 0;
++   msaa_samples_array[0] = 0;
++
++   configs = driCreateConfigs(GL_RGB, GL_UNSIGNED_SHORT_5_6_5,
++                           depth_bits_array, stencil_bits_array, 2,
++                           db_modes, 2, msaa_samples_array, 1, GL_TRUE);
++
++   if ( configs == NULL ) {
++      fprintf(stderr, "[%s:%u] Error creating FBConfig!\n", __func__, __LINE__);
++      return NULL;
++   }
++
++   return (const __DRIconfig **)configs;
++}
++
++
++static const __DRIconfig **glamoInitScreen2(__DRIscreen *sPriv)
++{
++   __DRIconfig **configs;
++   uint8_t depth_bits_array[2];
++   uint8_t stencil_bits_array[2];
++   uint8_t msaa_samples_array[1];
++   static const GLenum db_modes[] = { GLX_SWAP_COPY_OML, GLX_NONE };
++
++   /* Driver initialisation */
++   if ( glamoInitDriver(sPriv) ) {
++      return NULL;
++   }
++
++   /* Screen-specific initialisation */
++   sPriv->private = glamoCreateScreen(sPriv);
++   if ( !sPriv->private ) {
++      glamoDestroyScreen(sPriv);
++      return NULL;
++   }
++
++   depth_bits_array[0] = 0;
++   stencil_bits_array[0] = 0;
++   depth_bits_array[1] = 16;
++   stencil_bits_array[1] = 0;
++   msaa_samples_array[0] = 0;
++
++   configs = driCreateConfigs(GL_RGB, GL_UNSIGNED_SHORT_5_6_5,
++                           depth_bits_array, stencil_bits_array, 2,
++                           db_modes, 2, msaa_samples_array, 1, GL_TRUE);
++
++   if ( configs == NULL ) {
++      fprintf(stderr, "[%s:%u] Error creating FBConfig!\n", __func__, __LINE__);
++      return NULL;
++   }
++
++   return (const __DRIconfig **)configs;
++}
++
++
++/* Allocate buffers for a context.  This is where the fun starts... */
++static GLboolean glamoCreateBuffer(__DRIscreen *driScrnPriv,
++                                   __DRIdrawable *driDrawPriv,
++                                   const struct gl_config *mesaVis,
++                                   GLboolean isPixmap)
++{
++   struct glamo_framebuffer *gfb;
++   GLenum rgbFormat;
++
++   if ( isPixmap ) return GL_FALSE; /* not implemented */
++
++   gfb = CALLOC_STRUCT(glamo_framebuffer);
++   if ( !gfb ) return GL_FALSE;
++
++   _mesa_initialize_window_framebuffer(&gfb->base, mesaVis);
++
++   /* we only support this one format at the moment */
++   rgbFormat = GL_RGB5;
++
++   /* Front color renderbuffer */
++   gfb->color_rb[0] = glamo_create_renderbuffer(rgbFormat, driDrawPriv);
++   _mesa_add_renderbuffer(&gfb->base, BUFFER_FRONT_LEFT,
++                          &gfb->color_rb[0]->base);
++
++   /* Back color renderbuffer, if requested */
++   if ( mesaVis->doubleBufferMode ) {
++      gfb->color_rb[1] = glamo_create_renderbuffer(rgbFormat, driDrawPriv);
++      _mesa_add_renderbuffer(&gfb->base, BUFFER_BACK_LEFT,
++                             &gfb->color_rb[1]->base);
++   }
++
++   if ( mesaVis->depthBits == 16 ) {
++      struct glamo_renderbuffer *depth;
++      depth = glamo_create_renderbuffer(GL_DEPTH_COMPONENT16, driDrawPriv);
++      _mesa_add_renderbuffer(&gfb->base, BUFFER_DEPTH, &depth->base);
++   }
++
++   /* Add software renderbuffers for the things we can't support in hardware */
++   _mesa_add_soft_renderbuffers(&gfb->base,
++      GL_FALSE,  /* color */
++      GL_FALSE,  /* depth */
++      mesaVis->stencilBits > 0,   /* stencil, if required */
++      mesaVis->accumRedBits > 0,  /* accum, if required */
++      GL_FALSE,  /* alpha */
++      GL_FALSE   /* aux */
++   );
++   driDrawPriv->driverPrivate = (void *)gfb;
++
++   return (driDrawPriv->driverPrivate != NULL);
++}
++
++
++static void glamoDestroyBuffer(__DRIdrawable *driDrawPriv)
++{
++}
++
++
++static void glamoSwapBuffers(__DRIdrawable *driDrawPriv)
++{
++   printf("glamoSwapBuffers\n"); fflush(stdout);
++}
++
++
++/*
++ *  Mesa entry points
++ *
++ *  See src/mesa/drivers/dri/common/dri_util.h for information about these
++ */
++const struct __DriverAPIRec driDriverAPI = {
++   .InitScreen      = glamoInitScreen,
++   .DestroyScreen   = glamoDestroyScreen,
++   .CreateContext   = glamoCreateContext,
++   .DestroyContext  = glamoDestroyContext,
++   .CreateBuffer    = glamoCreateBuffer,
++   .DestroyBuffer   = glamoDestroyBuffer,
++   .SwapBuffers     = glamoSwapBuffers,
++   .MakeCurrent     = glamoMakeCurrent,
++   .UnbindContext   = glamoUnbindContext,
++   .GetSwapInfo     = NULL,   /* Not used */
++   .WaitForMSC      = NULL,
++   .WaitForSBC      = NULL,
++   .SwapBuffersMSC  = NULL,
++   .CopySubBuffer   = NULL,
++   .GetDrawableMSC  = NULL,   /* Not used */
++   .InitScreen2     = glamoInitScreen2,    /* For DRI2 */
++};
++
++/* This is the table of extensions that the loader will dlsym() for. */
++PUBLIC const __DRIextension *__driDriverExtensions[] = {
++    &driCoreExtension.base,
++    &driLegacyExtension.base,
++    &driDRI2Extension.base,
++    NULL
++};
++
++/* kate: space-indent on; indent-width 3; mixedindent off; indent-mode cstyle; */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_screen.h b/src/mesa/drivers/dri/glamo/glamo_screen.h
+new file mode 100644
+index 0000000..3f2eb5f
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_screen.h
+@@ -0,0 +1,44 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on sis_screen.h (c) 2003 Eric Anholt
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++#ifndef __GLAMO_SCREEN_H
++#define __GLAMO_SCREEN_H
++
++#include "xmlconfig.h"
++#include "dri_util.h"
++
++#include <glamo_bo_gem.h>
++
++typedef struct {
++
++   __DRIscreen *driScreen;
++   driOptionCache optionCache;
++
++   struct glamo_bo_manager *bom;
++
++} glamoScreenRec, *glamoScreenPtr;
++
++#endif   /* __GLAMO_SCREEN_H */
++
++/* kate: space-indent on; indent-width 3; mixedindent off; indent-mode cstyle; */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_state.c b/src/mesa/drivers/dri/glamo/glamo_state.c
+new file mode 100644
+index 0000000..3aa2f8b
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_state.c
+@@ -0,0 +1,305 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009-2010 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on sis_state.c (c) 2003 Eric Anholt
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ *
++ * Also partially based on intel_fbo.c, to which the following notice applies:
++ *
++ * Copyright 2006 Tungsten Graphics, Inc., Cedar Park, Texas.
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
++ * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
++ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
++ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
++ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++
++#include "main/context.h"
++#include "main/framebuffer.h"
++#include "main/api_arrayelt.h"
++#include "main/macros.h"
++#include "swrast/swrast.h"
++#include "swrast_setup/swrast_setup.h"
++#include "tnl/tnl.h"
++
++#include "glamo_fbo.h"
++#include "glamo_state.h"
++#include "glamo_context.h"
++#include "glamo_cmdq.h"
++#include "glamo_regs.h"
++
++
++static void glamoResizeBuffers(struct gl_context *ctx, struct gl_framebuffer *fb,
++                               GLuint width, GLuint height)
++{
++	struct glamo_framebuffer *glamo_fb = (struct glamo_framebuffer *)fb;
++	int i;
++
++	_mesa_resize_framebuffer(ctx, fb, width, height);
++
++	fb->Initialized = GL_TRUE; /* XXX remove someday */
++
++	if (fb->Name != 0) {
++		return;
++	}
++
++	/* Make sure all window system renderbuffers are up to date */
++	for (i = 0; i < 2; i++) {
++		struct gl_renderbuffer *rb = &glamo_fb->color_rb[i]->base;
++
++		/* only resize if size is changing */
++		if (rb && (rb->Width != width || rb->Height != height)) {
++			rb->AllocStorage(ctx, rb, rb->InternalFormat,
++		                         width, height);
++		}
++	}
++}
++
++
++static void glamoClear(struct gl_context *ctx, GLbitfield mask)
++{
++	glamoContext *gCtx;
++	struct gl_framebuffer *fb;
++	int i;
++
++	gCtx = GLAMO_CONTEXT(ctx);
++	fb = ctx->DrawBuffer;
++
++	printf("glamoClear (%f %f %f %f)\n", ctx->Color.ClearColor[0],
++	       ctx->Color.ClearColor[1], ctx->Color.ClearColor[2],
++	       ctx->Color.ClearColor[3]); fflush(stdout);
++
++	for (i = 0; i < fb->_NumColorDrawBuffers; i++) {
++
++		struct glamo_renderbuffer *grb;
++
++		grb = glamo_renderbuffer(fb->_ColorDrawBuffers[i]);
++
++		glamoDRMStartBurst(gCtx, GLAMO_REG_2D_DST_X);
++		glamoDRMAddData(gCtx, fb->_Xmin, 2);           /* dest X */
++		glamoDRMAddData(gCtx, fb->_Ymin, 2);           /* dest Y */
++		glamoDRMAddBO(gCtx, grb->bo);                  /* dest L/H */
++		glamoDRMAddData(gCtx, grb->pitch & 0x7ff, 2);  /* dest pitch */
++		glamoDRMAddData(gCtx, grb->height, 2);         /* dest height */
++		glamoDRMAddData(gCtx, fb->_Xmax-fb->_Xmin, 2); /* width */
++		glamoDRMAddData(gCtx, fb->_Ymax-fb->_Ymin, 2); /* height */
++		glamoDRMAddData(gCtx, 0x0000, 2);              /* patt L */
++		glamoDRMAddData(gCtx, 0x0000, 2);              /* patt H */
++		glamoDRMAddData(gCtx, gCtx->col_clear, 2);     /* FG colour */
++		glamoDRMDispatch(gCtx);
++
++		glamoDRMStartBurst(gCtx, GLAMO_REG_2D_COMMAND1);
++		glamoDRMAddData(gCtx, 0x0000, 2);    /* Cmd param 1 */
++		glamoDRMAddData(gCtx, 0xf0 << 8, 2); /* Cmd param 2 */
++		glamoDRMAddData(gCtx, 0x0000, 2);    /* Cmd param 3 */
++		glamoDRMDispatch(gCtx);
++
++	}
++}
++
++
++static void glamoClearColor(struct gl_context *ctx, const GLfloat color[4])
++{
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++	GLubyte col_byte[4];
++
++	printf("glamoClearColor (%f %f %f %f)\n", color[0], color[1], color[2],
++	       color[3]); fflush(stdout);
++
++	CLAMPED_FLOAT_TO_UBYTE(col_byte[0], color[0]);
++	CLAMPED_FLOAT_TO_UBYTE(col_byte[1], color[1]);
++	CLAMPED_FLOAT_TO_UBYTE(col_byte[2], color[2]);
++	CLAMPED_FLOAT_TO_UBYTE(col_byte[3], color[3]);
++
++	gCtx->col_clear = GLAMO_PACKCOLOR565(col_byte[0], col_byte[1],
++	                                     col_byte[2]);
++}
++
++
++static void glamoShadeModel(struct gl_context *ctx, GLenum mode)
++{
++	printf("glamoShadeModel\n"); fflush(stdout);
++}
++
++
++static void glamoViewport(struct gl_context *ctx, GLint x, GLint y,
++                          GLsizei width, GLsizei height )
++{
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++	__DRIcontext *driContext = gCtx->driContext;
++	void (*old_viewport)(struct gl_context *ctx, GLint x, GLint y,
++			 GLsizei w, GLsizei h);
++
++	if ( !driContext->driScreenPriv->dri2.enabled ) return;
++
++	/* TODO: Flush before fiddling with fake front buffer */
++
++	if ( ctx->DrawBuffer->Name == 0 ) {
++
++		glamo_update_renderbuffers(driContext,
++		                           driContext->driDrawablePriv);
++		if ( driContext->driDrawablePriv
++		                              != driContext->driReadablePriv ) {
++			glamo_update_renderbuffers(driContext,
++				                   driContext->driReadablePriv);
++		}
++
++	}
++
++	old_viewport = ctx->Driver.Viewport;
++	ctx->Driver.Viewport = NULL;
++	gCtx->driDrawable = driContext->driDrawablePriv;
++	ctx->Driver.Viewport = old_viewport;
++}
++
++
++static void glamoUploadMatrix(struct glamo_context *gCtx, uint16_t mreg,
++                              GLfloat *matrix)
++{
++	int i;
++	char *type;
++
++	switch ( mreg ) {
++	case G3D_MATRIX_MVP :
++		type = "MVP"; break;
++	case G3D_MATRIX_MV :
++		type = "MV"; break;
++	case G3D_MATRIX_IMVP :
++		type = "inverse MVP"; break;
++	default :
++		type = "unknown"; break;
++	}
++	printf("Uploading %s matrix...\n", type);
++
++	glamoDRMStartBurst(gCtx, mreg);
++	if ( mreg != G3D_MATRIX_IMVP ) {
++		for ( i=0; i<16; i++ ) {
++			glamoDRMAddData(gCtx, float7s16(matrix[i]), 4);
++		}
++	} else {
++		/* Normal matrix needs special treatment */
++		for ( i=0; i<3; i++ ) {
++			glamoDRMAddData(gCtx, float7s16(matrix[4*i]), 4);
++			glamoDRMAddData(gCtx, float7s16(matrix[4*i+1]), 4);
++			glamoDRMAddData(gCtx, float7s16(matrix[4*i+2]), 4);
++		}
++	}
++	glamoDRMDispatch(gCtx);
++}
++
++
++GLboolean glamoValidateState(struct gl_context *ctx, GLuint new_state)
++{
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++
++	if ( new_state & (_NEW_MODELVIEW|_NEW_PROJECTION) ) {
++
++		glamoUploadMatrix(gCtx, G3D_MATRIX_MVP,
++		                  ctx->_ModelProjectMatrix.m);
++
++		/* FIXME: The following two aren't needed unless lighting
++		 * is in use... */
++		glamoUploadMatrix(gCtx, G3D_MATRIX_MV,
++		                  ctx->ModelviewMatrixStack.Top->m);
++		_math_matrix_alloc_inv(&(ctx->_ModelProjectMatrix));
++		_math_matrix_analyse(&(ctx->_ModelProjectMatrix));
++		glamoUploadMatrix(gCtx, G3D_MATRIX_IMVP,
++		                  ctx->_ModelProjectMatrix.inv);
++	}
++
++	gCtx->new_state = 0;
++	return GL_TRUE;
++}
++
++
++static void glamoUpdateState(struct gl_context *ctx, GLbitfield new_state)
++{
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++
++	printf("glamoUpdateState\n");
++
++	_swrast_InvalidateState(ctx, new_state);
++	_swsetup_InvalidateState(ctx, new_state);
++	_vbo_InvalidateState(ctx, new_state);
++	_tnl_InvalidateState(ctx, new_state);
++	_ae_invalidate_state(ctx, new_state);
++
++	/* Make a note that some state has changed,
++	 * so that it can be sent to the GPU later. */
++	gCtx->new_state |= new_state;
++}
++
++
++static void glamoFlush(struct gl_context *ctx)
++{
++	printf("glamoFlush\n");
++}
++
++
++void glamoInitStateFuncs(struct gl_context *ctx)
++{
++	ctx->Driver.UpdateState       = glamoUpdateState;
++	ctx->Driver.Clear             = glamoClear;
++	ctx->Driver.ClearColor        = glamoClearColor;
++	ctx->Driver.ClearDepth        = NULL;
++	ctx->Driver.ClearStencil      = NULL;
++	ctx->Driver.AlphaFunc         = NULL;
++	ctx->Driver.BlendFuncSeparate = NULL;
++	ctx->Driver.ColorMask         = NULL;
++	ctx->Driver.CullFace          = NULL;
++	ctx->Driver.DepthMask         = NULL;
++	ctx->Driver.DepthFunc         = NULL;
++	ctx->Driver.DepthRange        = NULL;
++	ctx->Driver.DrawBuffer        = NULL;
++	ctx->Driver.Enable            = NULL;
++	ctx->Driver.FrontFace         = NULL;
++	ctx->Driver.Fogfv             = NULL;
++	ctx->Driver.Hint              = NULL;
++	ctx->Driver.Lightfv           = NULL;
++	ctx->Driver.LogicOpcode       = NULL;
++	ctx->Driver.PolygonMode       = NULL;
++	ctx->Driver.PolygonStipple    = NULL;
++	ctx->Driver.ReadBuffer        = NULL;
++	ctx->Driver.RenderMode        = NULL;
++	ctx->Driver.Scissor           = NULL;
++	ctx->Driver.ShadeModel        = glamoShadeModel;
++	ctx->Driver.LightModelfv      = NULL;
++	ctx->Driver.Viewport          = glamoViewport;
++	ctx->Driver.ResizeBuffers     = glamoResizeBuffers;
++	ctx->Driver.Flush             = glamoFlush;
++}
+diff --git a/src/mesa/drivers/dri/glamo/glamo_state.h b/src/mesa/drivers/dri/glamo/glamo_state.h
+new file mode 100644
+index 0000000..c3872c0
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_state.h
+@@ -0,0 +1,34 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ * Roughly based on sis_state.h (c) 2003 Eric Anholt
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++#ifndef __GLAMO_STATE_H
++#define __GLAMO_STATE_H
++
++#include "main/context.h"
++
++extern void glamoInitStateFuncs(struct gl_context *ctx);
++
++#endif   /* __GLAMO_STATE_H */
++
++/* kate: space-indent on; indent-width 3; mixedindent off; indent-mode cstyle; */
+diff --git a/src/mesa/drivers/dri/glamo/glamo_tris.c b/src/mesa/drivers/dri/glamo/glamo_tris.c
+new file mode 100644
+index 0000000..c45fe53
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_tris.c
+@@ -0,0 +1,310 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ *
++ * Based on intel_tris.c, to which the following notice applies:
++ *
++ * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas.
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sub license, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * The above copyright notice and this permission notice (including the
++ * next paragraph) shall be included in all copies or substantial portions
++ * of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
++ * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
++ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
++ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
++ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ */
++
++
++#include <glamo_bo.h>
++#include <glamo_bo_gem.h>
++#include <glamo_drm.h>
++
++#include "main/mtypes.h"
++#include "swrast/swrast.h"
++#include "tnl/t_context.h"
++#include "tnl/t_vertex.h"
++#include "tnl/t_pipeline.h"
++
++#include "glamo_tris.h"
++#include "glamo_context.h"
++
++
++static void glamoRunPipeline(struct gl_context *ctx)
++{
++	printf("glamoRunPipeline\n");
++
++	/* TODO: Emit state */
++
++	_tnl_run_pipeline(ctx);
++}
++
++
++static void glamoRenderStart(struct gl_context *ctx)
++{
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++
++	/* Decide which attributes will be used */
++	gCtx->vertex_attrs[0].attrib = _TNL_ATTRIB_POS;
++	gCtx->vertex_attrs[0].format = EMIT_4F;
++
++	gCtx->vertex_size = _tnl_install_attrs(ctx, gCtx->vertex_attrs, 1,
++	                                       NULL, 0);
++}
++
++
++static void glamoRenderFinish(struct gl_context *ctx)
++{
++	printf("glamoRenderFinish\n");
++}
++
++
++static void glamoPrimitiveNotify(struct gl_context *ctx, GLenum prim)
++{
++	printf("glamoPrimitiveNotify\n");
++}
++
++
++uint32_t *glamoGetPrimSpace(struct glamo_context *gCtx, unsigned int count)
++{
++	uint32_t *addr;
++
++	printf("glamoGetPrimSpace\n");
++
++	/* Check for space in the existing VB */
++	if (gCtx->prim.vb_bo == NULL || (gCtx->prim.current_offset +
++	                           count * gCtx->vertex_size) > GLAMO_VB_SIZE) {
++
++		/* Not enough space, or no VB existing. Start a new one... */
++		if (gCtx->prim.vb == NULL) {
++			printf("Allocated %i bytes\n", GLAMO_VB_SIZE);
++			gCtx->prim.vb = malloc(GLAMO_VB_SIZE);
++		}
++		gCtx->prim.vb_bo = glamo_bo_open(gCtx->glamoScreen->bom, 0,
++		                                 GLAMO_VB_SIZE, 4,
++		                                 GLAMO_GEM_DOMAIN_VRAM, 0);
++		gCtx->prim.start_offset = 0;
++		gCtx->prim.current_offset = 0;
++	}
++
++	addr = (uint32_t *)(gCtx->prim.vb + gCtx->prim.current_offset);
++	gCtx->prim.current_offset += gCtx->vertex_size * count;
++	gCtx->prim.count += count;
++
++	return addr;
++}
++
++
++#define COPY_DWORDS( j, vb, vertsize, v )	\
++do {						\
++   for ( j = 0 ; j < vertsize ; j++ ) {		\
++      vb[j] = ((GLuint *)v)[j];			\
++   }						\
++   vb += vertsize;				\
++} while (0)
++
++
++static void glamo_draw_triangle(struct glamo_context *gCtx,
++                                glamoVertexPtr v0, glamoVertexPtr v1,
++                                glamoVertexPtr v2)
++{
++	GLuint *vb = glamoGetPrimSpace(gCtx, 3);
++	int j;
++
++	COPY_DWORDS(j, vb, gCtx->vertex_size, v0);
++	COPY_DWORDS(j, vb, gCtx->vertex_size, v1);
++	COPY_DWORDS(j, vb, gCtx->vertex_size, v2);
++}
++
++
++static void glamo_draw_line(struct glamo_context *gCtx,
++                            glamoVertexPtr v0, glamoVertexPtr v1)
++{
++	GLuint *vb = glamoGetPrimSpace(gCtx, 2);
++	int j;
++
++	COPY_DWORDS(j, vb, gCtx->vertex_size, v0);
++	COPY_DWORDS(j, vb, gCtx->vertex_size, v1);
++}
++
++
++static void glamo_draw_point(struct glamo_context *gCtx, glamoVertexPtr v0)
++{
++	GLuint *vb = glamoGetPrimSpace(gCtx, 2);
++	int j;
++
++	COPY_DWORDS(j, vb, gCtx->vertex_size, v0);
++}
++
++
++#define TRI( a, b, c )                          \
++do {                                            \
++        glamo_draw_triangle(gCtx, a, b, c  );   \
++} while (0)
++
++
++#define QUAD( a, b, c, d )                      \
++printf("Drawing a quad\n");                     \
++do {                                            \
++        glamo_draw_triangle(gCtx, a, b, d);     \
++        glamo_draw_triangle(gCtx, b, c, d);     \
++} while (0)
++
++
++#define LINE(v0, v1)                            \
++do {                                            \
++        glamo_draw_line(gCtx, v0, v1);          \
++} while (0)
++
++
++#define POINT(v0)                               \
++do {                                            \
++        glamo_draw_point(gCtx, v0);             \
++} while (0)
++
++
++#define IND (0)
++#define TAG(x) x
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_offset
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_offset
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_unfilled
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_offset_unfilled
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_unfilled
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_offset_unfilled
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_offset_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_offset_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_unfilled_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_offset_unfilled_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_unfilled_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++#define IND (0)
++#define TAG(x) x##_twoside_offset_unfilled_fallback
++#include "tnl_dd/t_dd_tritmp.h"
++
++
++static void init_rast_tab()
++{
++	init();
++	init_offset();
++	init_twoside();
++	init_twoside_offset();
++	init_unfilled();
++	init_offset_unfilled();
++	init_twoside_unfilled();
++	init_twoside_offset_unfilled();
++	init_fallback();
++	init_offset_fallback();
++	init_twoside_fallback();
++	init_twoside_offset_fallback();
++	init_unfilled_fallback();
++	init_offset_unfilled_fallback();
++	init_twoside_unfilled_fallback();
++	init_twoside_offset_unfilled_fallback();
++}
++
++
++void glamoInitTriFuncs(struct gl_context *ctx)
++{
++	TNLcontext *tnl = TNL_CONTEXT(ctx);
++	struct glamo_context *gCtx = GLAMO_CONTEXT(ctx);
++	static int firsttime = 1;
++
++	if (firsttime) {
++		init_rast_tab();
++		firsttime = 0;
++	}
++
++	gCtx->prim.start_offset = 0;
++	gCtx->prim.current_offset = 0;
++	gCtx->prim.vb_bo = NULL;
++	gCtx->prim.vb = NULL;
++	gCtx->prim.count = 0;
++
++	tnl->Driver.RunPipeline = glamoRunPipeline;
++	tnl->Driver.Render.Start = glamoRenderStart;
++	tnl->Driver.Render.Finish = glamoRenderFinish;
++	tnl->Driver.Render.PrimitiveNotify = glamoPrimitiveNotify;
++	tnl->Driver.Render.ResetLineStipple = _swrast_ResetLineStipple;
++	tnl->Driver.Render.BuildVertices = _tnl_build_vertices;
++	tnl->Driver.Render.CopyPV = _tnl_copy_pv;
++	tnl->Driver.Render.Interp = _tnl_interp;
++}
+diff --git a/src/mesa/drivers/dri/glamo/glamo_tris.h b/src/mesa/drivers/dri/glamo/glamo_tris.h
+new file mode 100644
+index 0000000..ea396c1
+--- /dev/null
++++ b/src/mesa/drivers/dri/glamo/glamo_tris.h
+@@ -0,0 +1,38 @@
++/*
++ * Direct Rendering Support for SMedia Glamo 336x/337x
++ *
++ * (c) 2009 Thomas White <taw at bitwiz.org.uk>
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
++ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++#ifndef __GLAMO_TRIS_H
++#define __GLAMO_TRIS_H
++
++#include "main/mtypes.h"
++
++#include "glamo_context.h"
++
++/* Amount of space reserved for vertex submission */
++#define GLAMO_VB_SIZE (32*1024)
++
++extern void glamoInitTriFuncs(struct gl_context *ctx);
++extern uint32_t *glamoGetPrimSpace(struct glamo_context *gCtx,
++                                   unsigned int count);
++
++#endif   /* __GLAMO_TRIS_H */
+diff --git a/src/mesa/tnl_dd/t_dd_dmatmp.h b/src/mesa/tnl_dd/t_dd_dmatmp.h
+index 997fc0b..e3c9119 100644
+--- a/src/mesa/tnl_dd/t_dd_dmatmp.h
++++ b/src/mesa/tnl_dd/t_dd_dmatmp.h
+@@ -127,6 +127,8 @@ static void TAG(render_points_verts)( struct gl_context *ctx,
+ 	 currentsz = dmasz;
+       }
+ 
++      FLUSH();
++
+    } else {
+       fprintf(stderr, "%s - cannot draw primitive\n", __FUNCTION__);
+       return;
+@@ -162,6 +164,8 @@ static void TAG(render_lines_verts)( struct gl_context *ctx,
+ 	 currentsz = dmasz;
+       }
+ 
++      FLUSH();
++
+    } else {
+       fprintf(stderr, "%s - cannot draw primitive\n", __FUNCTION__);
+       return;
+@@ -191,7 +195,7 @@ static void TAG(render_line_strip_verts)( struct gl_context *ctx,
+ 	 TAG(emit_verts)( ctx, j, nr, ALLOC_VERTS(nr) );
+ 	 currentsz = dmasz;
+       }
+- 
++
+       FLUSH();
+ 
+    } else {
+@@ -294,6 +298,8 @@ static void TAG(render_triangles_verts)( struct gl_context *ctx,
+       TAG(emit_verts)( ctx, j, nr, ALLOC_VERTS(nr) );
+       currentsz = dmasz;
+    }
++
++   FLUSH();
+ }
+ 
+ 
+@@ -567,6 +573,8 @@ static void TAG(render_quads_verts)( struct gl_context *ctx,
+          TAG(emit_verts)( ctx, j, nr, ALLOC_VERTS(nr) );
+          currentsz = dmasz;
+       }
++
++      FLUSH();
+    }
+    else if (HAVE_ELTS) {
+       /* Hardware doesn't have a quad primitive type -- try to
+@@ -640,6 +648,8 @@ static void TAG(render_quads_verts)( struct gl_context *ctx,
+ 	 tmp = EMIT_VERTS(ctx, j + 1, 3, tmp);
+ 	 (void) tmp;
+       }
++
++      FLUSH();
+    }
+    else {
+       /* Vertices won't fit in a single buffer, should never happen.
diff --git a/meta-oe/recipes-graphics/mesa/mesa-7.10.2/uclibc.patch b/meta-oe/recipes-graphics/mesa/mesa-7.10.2/uclibc.patch
new file mode 100644
index 0000000..0508112
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-7.10.2/uclibc.patch
@@ -0,0 +1,26 @@
+Index: Mesa-7.9.1/src/mesa/main/imports.c
+===================================================================
+--- Mesa-7.9.1.orig/src/mesa/main/imports.c	2010-12-15 13:50:00.000000000 -0800
++++ Mesa-7.9.1/src/mesa/main/imports.c	2011-01-10 12:23:48.848656001 -0800
+@@ -757,7 +757,7 @@
+ float
+ _mesa_strtof( const char *s, char **end )
+ {
+-#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__)
++#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__) && !defined(__UCLIBC__)
+    static locale_t loc = NULL;
+    if (!loc) {
+       loc = newlocale(LC_CTYPE_MASK, "C", NULL);
+Index: Mesa-7.9.1/src/glsl/strtod.c
+===================================================================
+--- Mesa-7.9.1.orig/src/glsl/strtod.c	2011-01-10 20:08:01.568656001 -0800
++++ Mesa-7.9.1/src/glsl/strtod.c	2011-01-10 20:08:39.898656001 -0800
+@@ -44,7 +44,7 @@
+ double
+ glsl_strtod(const char *s, char **end)
+ {
+-#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__)
++#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__) && !defined(__UCLIBC__)
+    static locale_t loc = NULL;
+    if (!loc) {
+       loc = newlocale(LC_CTYPE_MASK, "C", NULL);
diff --git a/meta-oe/recipes-graphics/mesa/mesa-common.inc b/meta-oe/recipes-graphics/mesa/mesa-common.inc
new file mode 100644
index 0000000..4073d6f
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-common.inc
@@ -0,0 +1,53 @@
+SECTION = "x11"
+
+DESCRIPTION = "An open source implementation of the OpenGL spec"
+HOMEPAGE = "http://mesa3d.org"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d"
+
+INC_PR = "r11"
+PE = "2"
+
+PROTO_DEPS = "xf86driproto glproto"
+LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes"
+
+DEPENDS = "${PROTO_DEPS}  ${LIB_DEPS}"
+
+SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2;name=archive \
+          "
+S = "${WORKDIR}/Mesa-${PV}"
+
+PROVIDES = "virtual/libgl"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "--enable-glu \
+                --disable-glw \
+                --disable-glut \
+	       "
+
+inherit glx-use-tls
+
+# Package contents vary according to ${MACHINE_DRI_MODULES}.
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+PACKAGES =+ "libegl libegl-dev libegl-dbg libglu libglu-dev libosmesa libosmesa-dev libgl libgl-dev"
+FILES_${PN} += "${libdir}/dri/*.so"
+FILES_libegl = "${libdir}/libEGL.so.* ${libdir}/egl/*.so"
+FILES_libgl = "${libdir}/libGL.so.*"
+FILES_libglu = "${libdir}/libGLU.so.*"
+FILES_libosmesa = "${libdir}/libOSMesa.so.*"
+
+FILES_libegl-dev = "${libdir}/libEGL.* ${includedir}/EGL"
+FILES_libgl-dev = "${libdir}/libGL.* ${includedir}/GL"
+FILES_libglu-dev = "${libdir}/libGLU.* ${includedir}/GL/glu*.h"
+FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h"
+
+FILES_${PN}-dbg += "${libdir}/dri/.debug/*"
+FILES_libegl-dbg += "${libdir}/egl/.debug/*"
+
+NATIVE_INSTALL_WORKS = "1"
+do_install_append () {
+    install -d ${D}/${includedir}/GL
+    cp -pPr ${S}/include/GL/internal* ${D}/${includedir}/GL
+}
diff --git a/meta-oe/recipes-graphics/mesa/mesa-dri.inc b/meta-oe/recipes-graphics/mesa/mesa-dri.inc
new file mode 100644
index 0000000..4f42b79
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-dri.inc
@@ -0,0 +1,10 @@
+DEPENDS += "dri2proto expat libdrm makedepend-native"
+
+#not supported in oe-core base.bbclass
+#FILESPATHPKG =. "mesa-${PV}:mesa:"
+FILESPATH =. "${FILE_DIRNAME}/mesa:${FILE_DIRNAME}/mesa-${PV}:"
+
+# most of our targets do not have DRI so will use mesa-xlib
+DEFAULT_PREFERENCE = "-1"
+
+EXTRA_OECONF += " --with-driver=dri --with-dri-drivers=swrast,${MACHINE_DRI_MODULES}"
diff --git a/meta-oe/recipes-graphics/mesa/mesa-dri_7.10.2.bb b/meta-oe/recipes-graphics/mesa/mesa-dri_7.10.2.bb
new file mode 100644
index 0000000..26b56e4
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-dri_7.10.2.bb
@@ -0,0 +1,4 @@
+require mesa-common.inc
+require mesa-${PV}.inc
+require mesa-dri.inc
+PR = "${INC_PR}.0"
diff --git a/meta-oe/recipes-graphics/mesa/mesa-xlib.inc b/meta-oe/recipes-graphics/mesa/mesa-xlib.inc
new file mode 100644
index 0000000..cabe6e5
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-xlib.inc
@@ -0,0 +1,2 @@
+FILESPATHPKG =. "mesa-${PV}:mesa:"
+EXTRA_OECONF += " --with-driver=xlib"
diff --git a/meta-oe/recipes-graphics/mesa/mesa-xlib_7.10.2.bb b/meta-oe/recipes-graphics/mesa/mesa-xlib_7.10.2.bb
new file mode 100644
index 0000000..93bb8cd
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa-xlib_7.10.2.bb
@@ -0,0 +1,4 @@
+require mesa-common.inc
+require mesa-${PV}.inc
+require mesa-xlib.inc
+PR = "${INC_PR}.0"
diff --git a/meta-oe/recipes-graphics/mesa/mesa_7.10.2.bb b/meta-oe/recipes-graphics/mesa/mesa_7.10.2.bb
new file mode 100644
index 0000000..4cb8db7
--- /dev/null
+++ b/meta-oe/recipes-graphics/mesa/mesa_7.10.2.bb
@@ -0,0 +1,6 @@
+# This is a dummy package so OE can use the poky mesa files
+require mesa-dri_${PV}.bb
+
+PR = "${INC_PR}.0"
+
+EXTRA_OECONF += "--disable-egl"
diff --git a/meta-oe/recipes-graphics/tasks/task-fonts-truetype.bb b/meta-oe/recipes-graphics/tasks/task-fonts-truetype.bb
new file mode 100644
index 0000000..8ffa88b
--- /dev/null
+++ b/meta-oe/recipes-graphics/tasks/task-fonts-truetype.bb
@@ -0,0 +1,40 @@
+DESCRIPTION = "Install one of these tasks to get support for truetype fonts."
+SECTION = "fonts"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+PV = "1.0"
+PR = "r0"
+
+inherit task
+
+PACKAGES += "\
+  ${PN}-core \
+  ${PN}-chinese \
+  ${PN}-japanese \
+"
+
+RRECOMMENDS_task-fonts-truetype = "\
+  ${PN}-core \
+  ${PN}-chinese \
+  ${PN}-japanese \
+"
+
+RDEPENDS_task-fonts-truetype-core = "\
+  fontconfig-utils \
+  \
+  ttf-dejavu-common \
+  ttf-dejavu-sans \
+  ttf-dejavu-sans-mono \
+"
+#  ttf-dejavu-serif \
+
+RDEPENDS_task-fonts-truetype-chinese = "\
+  ${PN}-core \
+  ttf-arphic-uming \
+"
+
+RDEPENDS_task-fonts-truetype-japanese = "\
+  ${PN}-core \
+  ttf-sazanami-gothic \
+  ttf-sazanami-mincho \
+"
diff --git a/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb b/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb
new file mode 100644
index 0000000..5ebb257
--- /dev/null
+++ b/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb
@@ -0,0 +1,23 @@
+require ttf.inc
+
+DESCRIPTION = "Liberation fonts - TTF Version"
+HOMEPAGE = "https://www.redhat.com/promo/fonts/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
+                    file://License.txt;md5=5b171c5100029d884fcea21d9a2b7543 \
+"
+
+PR = "r3"
+
+SRC_URI = "http://fedorahosted.org/liberation-fonts/export/807b6dfd069b998cd9b4d3158da98817ef23c79d/F-9/liberation-fonts-ttf-3.tar.gz"
+S = "${WORKDIR}/liberation-fonts-${PV}"
+
+PACKAGES = "${PN}-dbg ttf-liberation-mono ttf-liberation-sans ttf-liberation-serif"
+RRECOMMENDS_${PN}-dbg = ""
+
+FILES_ttf-liberation-mono  = "${datadir}/fonts/truetype/*Mono*"
+FILES_ttf-liberation-sans  = "${datadir}/fonts/truetype/*Sans*"
+FILES_ttf-liberation-serif = "${datadir}/fonts/truetype/*Serif*"
+
+SRC_URI[md5sum] = "77728078a17e39f7c242b42c3bf6feb8"
+SRC_URI[sha256sum] = "174cf27c57612971434ec8cc4a52bfd37bad8408e9b9219539c6d5113df6ff8f"
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/iphone3g/pointercal.xinput b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/iphone3g/pointercal.xinput
new file mode 100644
index 0000000..d6ce56b
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/iphone3g/pointercal.xinput
@@ -0,0 +1 @@
+xinput set-int-prop "Touchscreen" "Evdev Axis Calibration" 32 -102 4739 6 7321;
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/nokia900/pointercal.xinput b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/nokia900/pointercal.xinput
new file mode 100644
index 0000000..66bb32c
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/nokia900/pointercal.xinput
@@ -0,0 +1,2 @@
+xinput set-int-prop "Touchscreen" "Evdev Axis Calibration" 32 204 3897 3763 178;
+
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta01/pointercal.xinput b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta01/pointercal.xinput
new file mode 100644
index 0000000..be25da3
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta01/pointercal.xinput
@@ -0,0 +1,2 @@
+xinput set-int-prop "Touchscreen" "Evdev Axis Calibration" 32 107 918 911 98
+xinput set-int-prop "Touchscreen" "Evdev Axes Swap" 8 1
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta02/pointercal.xinput b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta02/pointercal.xinput
new file mode 100644
index 0000000..be25da3
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/om-gta02/pointercal.xinput
@@ -0,0 +1,2 @@
+xinput set-int-prop "Touchscreen" "Evdev Axis Calibration" 32 107 918 911 98
+xinput set-int-prop "Touchscreen" "Evdev Axes Swap" 8 1
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/pointercal.xinput b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/pointercal.xinput
new file mode 100644
index 0000000..9633fc5
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput/pointercal.xinput
@@ -0,0 +1 @@
+# replace with valid machine specific pointercal.xinput
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
new file mode 100644
index 0000000..e611862
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
@@ -0,0 +1,21 @@
+DESCRIPTION = "Touchscreen calibration data from xinput-calibrator"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+SECTION = "base"
+
+PR = "r2"
+SRC_URI = "file://pointercal.xinput"
+S = "${WORKDIR}"
+
+do_install() {
+	# Only install file if it has a contents
+	if [ -s ${S}/pointercal.xinput ]; then
+	        install -d ${D}${sysconfdir}/
+	        install -m 0644 ${S}/pointercal.xinput ${D}${sysconfdir}/
+	fi
+}
+
+ALLOW_EMPTY_${PN} = "1"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+CONFFILES_${PN} = "${sysconfdir}/pointercal.xinput"
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator.inc b/meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator.inc
new file mode 100644
index 0000000..357b0e5
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator.inc
@@ -0,0 +1,8 @@
+DESCRIPTION = "A generic touchscreen calibration program for X.Org"
+HOMEPAGE = "http://www.freedesktop.org/wiki/Software/xinput_calibrator"
+LICENSE = "MIT/X11"
+DEPENDS = "virtual/libx11 libxi"
+RDEPENDS_${PN} = "xinput pointercal-xinput"
+INC_PR = "r7"
+
+inherit autotools
diff --git a/meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator_0.6.1.bb b/meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator_0.6.1.bb
new file mode 100644
index 0000000..2eb3cc9
--- /dev/null
+++ b/meta-oe/recipes-graphics/xinput-calibrator/xinput-calibrator_0.6.1.bb
@@ -0,0 +1,17 @@
+require xinput-calibrator.inc
+
+LIC_FILES_CHKSUM = "file://src/calibrator.cpp;endline=22;md5=998e238a7638a7446eaeb02398f691fc"
+SRC_URI = "git://github.com/tias/xinput_calibrator.git;protocol=git"
+
+SRCREV = "d2ce98b3f638667dd64b6d718721379b2dc750a7"
+PR = "${INC_PR}.0"
+S = "${WORKDIR}/git/"
+
+do_install_append() {
+        install -d ${D}${bindir}
+        install -m 0755 scripts/xinput_calibrator_pointercal.sh ${D}${bindir}/xinput_calibrator_once.sh
+        ln -s ${bindir}/xinput_calibrator_x11 ${D}${bindir}/xinput_calibrator
+        install -d ${D}${datadir}/applications/
+        install -m 0755 scripts/xinput_calibrator.desktop ${D}${datadir}/applications/xinput-calibrator.desktop
+        install -m 0755 scripts/xinput_calibrator_get_hal_calibration.sh ${D}${bindir}/xinput_calibrator_get_hal_calibration.sh
+}
diff --git a/meta-oe/recipes-graphics/xorg-app/rgb_1.0.4.bb b/meta-oe/recipes-graphics/xorg-app/rgb_1.0.4.bb
new file mode 100644
index 0000000..59dca2a
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-app/rgb_1.0.4.bb
@@ -0,0 +1,10 @@
+require xorg-app-common.inc
+DEPENDS += " xproto util-macros"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ef598adbe241bd0b0b9113831f6e249a"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "35c6cccbf25a872bdd62bfcb1a73d951"
+SRC_URI[sha256sum] = "80887da011ad086fff88bfd16c6d9d5ac7da45ef1bc9d0c192a6f370423370f1"
+
+FILES_${PN} += "${datadir}/X11"
diff --git a/meta-oe/recipes-graphics/xorg-app/xinput_1.5.3.bb b/meta-oe/recipes-graphics/xorg-app/xinput_1.5.3.bb
new file mode 100644
index 0000000..c1acc98
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-app/xinput_1.5.3.bb
@@ -0,0 +1,8 @@
+require xorg-app-common.inc
+LIC_FILES_CHKSUM = "file://COPYING;md5=22c34ea36136407a77702a8b784f9bd0"
+DESCRIPTION = "a utility to configure and test XInput devices"
+DEPENDS += " libxi"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "1e2f0ad4f3fa833b65c568907f171d28"
+SRC_URI[sha256sum] = "6aade131cecddaeefc39ddce1dd5e8473f6039c2e4efbfd9fbb5ee2a75885c76"
diff --git a/meta-oe/recipes-graphics/xorg-app/xorg-app-common.inc b/meta-oe/recipes-graphics/xorg-app/xorg-app-common.inc
new file mode 100644
index 0000000..8358af4
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-app/xorg-app-common.inc
@@ -0,0 +1,15 @@
+DESCRIPTION = "X application"
+HOMEPAGE = "http://www.x.org/"
+SECTION = "x11/apps"
+LICENSE = "MIT-X"
+DEPENDS = "util-macros-native virtual/libx11"
+
+INC_PR = "r5"
+
+SRC_URI = "${XORG_MIRROR}/individual/app/${BPN}-${PV}.tar.bz2"
+
+S = "${WORKDIR}/${BPN}-${PV}"
+
+inherit autotools pkgconfig
+
+FILES_${PN} += "  /usr/lib/X11/${BPN} /usr/share/X11/app-defaults/"
diff --git a/meta-oe/recipes-graphics/xorg-doc/xorg-doc-common.inc b/meta-oe/recipes-graphics/xorg-doc/xorg-doc-common.inc
new file mode 100644
index 0000000..f4b8b00
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-doc/xorg-doc-common.inc
@@ -0,0 +1,12 @@
+DESCRIPTION = "X documentation"
+HOMEPAGE = "http://www.x.org"
+SECTION = "x11/docs"
+LICENSE = "MIT-X"
+
+SRC_URI = "${XORG_MIRROR}/individual/doc/${BPN}-${PV}.tar.bz2"
+
+S = "${WORKDIR}/${BPN}-${PV}"
+
+INC_PR = "r1"
+
+inherit autotools pkgconfig
diff --git a/meta-oe/recipes-graphics/xorg-doc/xorg-sgml-doctools_1.7.bb b/meta-oe/recipes-graphics/xorg-doc/xorg-sgml-doctools_1.7.bb
new file mode 100644
index 0000000..55f4bac
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-doc/xorg-sgml-doctools_1.7.bb
@@ -0,0 +1,8 @@
+require xorg-doc-common.inc
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "2588efb3f49f7fc6ecf41ce42e0b2e5e"
+SRC_URI[sha256sum] = "84fd94e5c50556e6f77501485f8a48724cf3c95c6d58480bc280258ba14580c8"
+
+FILES_${PN} += " /usr/share/sgml/X11"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-keyboard_1.6.0.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-input-keyboard_1.6.0.bb
new file mode 100644
index 0000000..cbbc7c7
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-keyboard_1.6.0.bb
@@ -0,0 +1,17 @@
+require xorg-driver-input.inc
+
+SUMMARY = "X.Org X server -- keyboard input driver"
+
+DESCRIPTION = "keyboard is an Xorg input driver for keyboards. The \
+driver supports the standard OS-provided keyboard interface.  The driver \
+functions as a keyboard input device, and may be used as the X server's \
+core keyboard."
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=ea2099d24ac9e316a6d4b9f20b3d4e10"
+
+DEPENDS += " kbproto"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "e2abe9f13e526a73cb68a7d257546eba"
+SRC_URI[sha256sum] = "c46c790fec905d696573b7a374b10ab8b4389112a8f69993fe011006c99e858e"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-mouse_1.7.0.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-input-mouse_1.7.0.bb
new file mode 100644
index 0000000..88b304f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-mouse_1.7.0.bb
@@ -0,0 +1,17 @@
+require xorg-driver-input.inc
+
+SUMMARY = "X.Org X server -- mouse input driver"
+
+DESCRIPTION = "mouse is an Xorg input driver for mice. The driver \
+supports most available mouse types and interfaces.  The mouse driver \
+functions as a pointer input device, and may be used as the X server's \
+core pointer. Multiple mice are supported by multiple instances of this \
+driver."
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=237eb1d1a602d29ef2af62d8fba60f19"
+
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "7f31472689c15b6de62eff04d0fb57d7"
+SRC_URI[sha256sum] = "4e989542b5e9e0c5f9087288b18e70de1064dd27c83a4bc6dce58f3ea9d74994"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/10-x11-input-tslib.fdi b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/10-x11-input-tslib.fdi
new file mode 100644
index 0000000..9060439
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/10-x11-input-tslib.fdi
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deviceinfo version="0.2">
+  <device>
+    <match key="info.capabilities" contains="input.touchpad">
+      <merge key="input.x11_driver" type="string">tslib</merge>
+    </match>
+    <match key="info.capabilities" contains="input.touchscreen">
+      <merge key="input.x11_driver" type="string">tslib</merge>
+    </match>
+  </device>
+</deviceinfo>
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/99-xf86-input-tslib.rules b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/99-xf86-input-tslib.rules
new file mode 100644
index 0000000..ec130c2
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/99-xf86-input-tslib.rules
@@ -0,0 +1,5 @@
+# create /dev/input/touchscreenX symlink, tag xf86-input-tslib as driver
+SUBSYSTEM=="input", KERNEL=="event[0-9]*", ATTRS{modalias}=="input:*-e0*,3,*a0,1,*18,*", SYMLINK+="input/touchscreen%n", ENV{x11_driver}="tslib"
+SUBSYSTEM=="input", KERNEL=="event[0-9]*", ATTRS{modalias}=="ads7846", SYMLINK+="input/touchscreen%n", ENV{x11_driver}="tslib"
+
+
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/double-free-crash.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/double-free-crash.patch
new file mode 100644
index 0000000..0775473
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/double-free-crash.patch
@@ -0,0 +1,20 @@
+xorg-server-1.7.3/hw/xfree86/common/xf86Helper.c contains this code
+causing a double free crash on chvt or exit:
+
+    /* This should *really* be handled in drv->UnInit(dev) call instead, but
+     * if the driver forgets about it make sure we free it or at least crash
+     * with flying colors */
+    if (pInp->private)
+	xfree(pInp->private);
+Index: xf86-input-tslib-0.0.6/src/tslib.c
+===================================================================
+--- xf86-input-tslib-0.0.6.orig/src/tslib.c
++++ xf86-input-tslib-0.0.6/src/tslib.c
+@@ -435,6 +435,7 @@ xf86TslibUninit(InputDriverPtr drv, Inpu
+ 	xf86TslibControlProc(pInfo->dev, DEVICE_OFF);
+ 	ts_close(priv->ts);
+ 	xfree(pInfo->private);
++	pInfo->private = NULL;
+ 	xf86DeleteInput(pInfo, 0);
+ }
+ 
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xserver-174-XGetPointerControl.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xserver-174-XGetPointerControl.patch
new file mode 100644
index 0000000..a1f6ba8
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xserver-174-XGetPointerControl.patch
@@ -0,0 +1,34 @@
+From Grazvydas Ignotas
+
+At least xserver 1.7.4 crashes on XGetPointerControl request because of xf86-input-tslib:
+
+Program received signal SIGSEGV, Segmentation fault.
+#0  0x000355e0 in ProcGetPointerControl (client=0x4a2e58) at devices.c:2122
+#1  0x00062fa8 in Dispatch () at dispatch.c:439
+#2  0x00022444 in main (argc=4, argv=0xbeebedc4, envp=0xbeebedd8) at main.c:285
+
+This happens because ptrfeed field is not set in device structure from tslib.
+To fix this, call InitPtrFeedbackClassDeviceStruct() during DEVICE_INIT to get necessary setup done (as done in other input drivers).
+
+---
+diff -ur xf86-input-tslib-0.0.6/src/tslib.c xf86-input-tslib-0.0.6_/src/tslib.c
+--- xf86-input-tslib-0.0.6/src/tslib.c	2010-02-09 12:23:22.000000000 +0200
++++ xf86-input-tslib-0.0.6_/src/tslib.c	2010-02-09 12:37:33.000000000 +0200
+@@ -103,8 +103,6 @@
+ static void
+ PointerControlProc(DeviceIntPtr dev, PtrCtrl * ctrl)
+ {
+-	ErrorF("%s\n", __FUNCTION__);
+-	return;
+ }
+ 
+ static Bool
+@@ -406,6 +404,8 @@
+ 		xf86MotionHistoryAllocate(pInfo);
+ #endif
+ 
++		if (!InitPtrFeedbackClassDeviceStruct(device, PointerControlProc))
++			return !Success;
+ 		break;
+ 
+ 	case DEVICE_ON:
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb
new file mode 100644
index 0000000..d5d11ce
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb
@@ -0,0 +1,32 @@
+require xorg-driver-input.inc
+DESCRIPTION = "X.Org X server -- tslib input driver"
+DEPENDS += "tslib"
+RRECOMMENDS_${PN} += "tslib-calibrate"
+RSUGGESTS_${PN} += "hal"
+
+# derived from xf86-input-void, that's why I kept MIT-X, but it's not clear, see COPYING
+LIC_FILES_CHKSUM = "file://src/tslib.c;endline=28;md5=bd62eaef222dcf5cd59e490a12bd795e \
+                    file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94"
+
+PR = "${INC_PR}.1"
+
+SRC_URI = "http://www.pengutronix.de/software/xf86-input-tslib/download/xf86-input-tslib-${PV}.tar.bz2;name=archive \
+           file://double-free-crash.patch \
+           file://10-x11-input-tslib.fdi \
+           file://xserver-174-XGetPointerControl.patch \
+           file://99-xf86-input-tslib.rules \
+"
+SRC_URI[md5sum] = "b7a4d2f11637ee3fcf432e044b1d017f"
+SRC_URI[sha256sum] = "5f46fdef095a6e44a69e0f0b57c7d665224b26d990d006611236d8332e85b105"
+
+do_configure_prepend() {
+        rm -rf ${S}/m4/ || true
+}
+do_install_append() {
+        install -d ${D}/${datadir}/hal/fdi/policy/20thirdparty
+        install -m 0644 ${WORKDIR}/10-x11-input-tslib.fdi ${D}/${datadir}/hal/fdi/policy/20thirdparty
+        install -d ${D}/lib/udev/rules.d
+        install -m 0644 ${WORKDIR}/99-xf86-input-tslib.rules ${D}/lib/udev/rules.d/
+}
+
+FILES_${PN} += "${datadir}/hal /lib/udev"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-fbdev_0.4.2.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-video-fbdev_0.4.2.bb
new file mode 100644
index 0000000..d555fbc
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-video-fbdev_0.4.2.bb
@@ -0,0 +1,9 @@
+require xorg-driver-video.inc
+LIC_FILES_CHKSUM = "file://COPYING;md5=d8cbd99fff773f92e844948f74ef0df8"
+
+DESCRIPTION = "X.Org X server -- fbdev display driver"
+PE = "1"
+PR = "${INC_PR}.1"
+
+SRC_URI[md5sum] = "53a533d9e0c2da50962282526bace074"
+SRC_URI[sha256sum] = "93b271b4b41d7e5ca108849a583b9523e96c51813d046282285355b7001f82d5"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-drm-define-GLAMO_CMDQ_MAX_COUNT-instead-of-mag.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-drm-define-GLAMO_CMDQ_MAX_COUNT-instead-of-mag.patch
new file mode 100644
index 0000000..0c7350f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-drm-define-GLAMO_CMDQ_MAX_COUNT-instead-of-mag.patch
@@ -0,0 +1,66 @@
+From e2d0f9a3ba7f36b0b8ac8d736dd76da6e5e07f38 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa at gmail.com>
+Date: Fri, 29 Oct 2010 11:19:08 +0200
+Subject: [PATCH] glamo-drm: define GLAMO_CMDQ_MAX_COUNT instead of magic constant 1024
+
+* fix check for full queue, because size != count here
+* make sure we have enough space in queue for 2 resp. 4 more commands in
+  GlamoDRMAddCommand resp. GlamoDRMAddCommandBO
+
+Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
+---
+ src/glamo-drm.c |   16 +++++++++++-----
+ 1 files changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/src/glamo-drm.c b/src/glamo-drm.c
+index aac93bb..01e8510 100644
+--- a/src/glamo-drm.c
++++ b/src/glamo-drm.c
+@@ -32,6 +32,8 @@
+ 
+ #include "glamo.h"
+ 
++/* How many commands can be stored before forced dispatch */
++#define GLAMO_CMDQ_MAX_COUNT 1024
+ 
+ /* Submit the prepared command sequence to the kernel */
+ void GlamoDRMDispatch(GlamoPtr pGlamo)
+@@ -60,7 +62,7 @@ void GlamoDRMDispatch(GlamoPtr pGlamo)
+ 
+ void GlamoDRMAddCommand(GlamoPtr pGlamo, uint16_t reg, uint16_t val)
+ {
+-	if ( pGlamo->cmdq_drm_used == pGlamo->cmdq_drm_size ) {
++	if ( pGlamo->cmdq_drm_used >= GLAMO_CMDQ_MAX_COUNT - 2 ) {
+ 		xf86DrvMsg(pGlamo->pScreen->myNum, X_INFO,
+ 		           "Forced command cache flush.\n");
+ 		GlamoDRMDispatch(pGlamo);
+@@ -74,7 +76,8 @@ void GlamoDRMAddCommand(GlamoPtr pGlamo, uint16_t reg, uint16_t val)
+ 
+ void GlamoDRMAddCommandBO(GlamoPtr pGlamo, uint16_t reg, struct glamo_bo *bo)
+ {
+-	if ( pGlamo->cmdq_drm_used == pGlamo->cmdq_drm_size ) {
++	if ( pGlamo->cmdq_drm_used >= GLAMO_CMDQ_MAX_COUNT - 4 ||
++	       pGlamo->cmdq_obj_used >= GLAMO_CMDQ_MAX_COUNT) {
+ 		xf86DrvMsg(pGlamo->pScreen->myNum, X_INFO,
+ 		           "Forced command cache flush.\n");
+ 		GlamoDRMDispatch(pGlamo);
+@@ -98,10 +101,13 @@ void GlamoDRMAddCommandBO(GlamoPtr pGlamo, uint16_t reg, struct glamo_bo *bo)
+ 
+ void GlamoDRMInit(GlamoPtr pGlamo)
+ {
+-	pGlamo->cmdq_objs = malloc(1024);
+-	pGlamo->cmdq_obj_pos = malloc(1024);
++	pGlamo->cmdq_objs = malloc(GLAMO_CMDQ_MAX_COUNT);
++	pGlamo->cmdq_obj_pos = malloc(GLAMO_CMDQ_MAX_COUNT);
+ 	pGlamo->cmdq_obj_used = 0;
+ 	pGlamo->cmdq_drm_used = 0;
+-	pGlamo->cmdq_drm_size = 4 * 1024;
++	/* we're using 2bytes per entry (uint16_t) that's why we need to allocate
++	 * GLAMO_CMDQ_MAX_COUNT * 2 bytes
++	 */
++	pGlamo->cmdq_drm_size = 2 * GLAMO_CMDQ_MAX_COUNT;
+ 	pGlamo->cmdq_drm = malloc(pGlamo->cmdq_drm_size);
+ }
+-- 
+1.7.3.2
+
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
new file mode 100644
index 0000000..c9e1d56
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
@@ -0,0 +1,19 @@
+require xorg-driver-video.inc
+DESCRIPTION = "X.Org X server -- Glamo display driver with KMS support"
+DEPENDS += "libdrm"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=d8cbd99fff773f92e844948f74ef0df8"
+
+RDEPENDS_${PN} = "xserver-xorg-extension-dri xserver-xorg-extension-dri2 xserver-xorg-extension-glx mesa-dri"
+PE = "2"
+PV = "1.0.0+gitr${SRCPV}"
+PR = "${INC_PR}.5"
+
+SRC_URI = "git://git.openmoko.org/git/xf86-video-glamo.git;protocol=git;branch=master \
+           file://0001-glamo-drm-define-GLAMO_CMDQ_MAX_COUNT-instead-of-mag.patch \
+          "
+
+S = "${WORKDIR}/git"
+SRCREV = "16af3c00195adc68cbd508e3613be4b2349260b3"
+
+EXTRA_OECONF = " --enable-kms "
diff --git a/meta-oe/recipes-graphics/xorg-driver/xorg-driver-common.inc b/meta-oe/recipes-graphics/xorg-driver/xorg-driver-common.inc
new file mode 100644
index 0000000..970b0d1
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xorg-driver-common.inc
@@ -0,0 +1,40 @@
+DESCRIPTION = "X driver"
+HOMEPAGE = "http://www.x.org"
+SECTION = "x11/drivers"
+LICENSE = "MIT-X"
+INC_PR = "r15"
+
+DEPENDS = "randrproto xorg-server xproto"
+
+SRC_URI = "${XORG_MIRROR}/individual/driver/${BPN}-${PV}.tar.bz2"
+
+S = "${WORKDIR}/${BPN}-${PV}"
+
+FILES_${PN} += " ${libdir}/xorg/modules"
+FILES_${PN}-dbg +=  "${libdir}/xorg/modules/*/.debug"
+
+inherit autotools pkgconfig
+
+TARGET_CPPFLAGS += "-I${STAGING_DIR_HOST}/usr/include/xorg"
+
+# Another sucky behavor from Xorg configure scripts.
+# They use AC_CHECK_FILE to check for DRI headers. Yuck!
+# Of course this will blow up when cross compiling.
+
+do_configure_prepend() {
+	incdir=${layout_includedir}/xorg
+	for f in dri.h sarea.h dristruct.h exa.h damage.h xf86Module.h; do
+		path="$incdir/$f"
+		if [ -f "${STAGING_DIR_HOST}/$path" ]; then
+			p=`echo "$path" | sed 'y%*+%pp%;s%[^_[:alnum:]]%_%g'`
+			eval "export ac_cv_file_$p=yes"
+		fi
+	done
+}
+
+# FIXME: We don't want to include the libtool archives (*.la) from modules
+# directory, as they serve no useful purpose. Upstream should fix Makefile.am
+do_install_append() {
+	find ${D}${libdir}/xorg/modules -regex ".*\.la$" | xargs rm -f --
+}
+
diff --git a/meta-oe/recipes-graphics/xorg-driver/xorg-driver-input.inc b/meta-oe/recipes-graphics/xorg-driver/xorg-driver-input.inc
new file mode 100644
index 0000000..e44dbd5
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xorg-driver-input.inc
@@ -0,0 +1,4 @@
+include xorg-driver-common.inc
+
+DEPENDS = "randrproto inputproto xserver-xorg xproto"
+
diff --git a/meta-oe/recipes-graphics/xorg-driver/xorg-driver-video.inc b/meta-oe/recipes-graphics/xorg-driver/xorg-driver-video.inc
new file mode 100644
index 0000000..36b5b75
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-driver/xorg-driver-video.inc
@@ -0,0 +1,4 @@
+include xorg-driver-common.inc
+
+DEPENDS = "randrproto renderproto videoproto xextproto fontsproto xserver-xorg xproto"
+
diff --git a/meta-oe/recipes-graphics/xorg-lib/liblbxutil-1.1.0/mkg3states-1.1.patch b/meta-oe/recipes-graphics/xorg-lib/liblbxutil-1.1.0/mkg3states-1.1.patch
new file mode 100644
index 0000000..f9f4a63
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/liblbxutil-1.1.0/mkg3states-1.1.patch
@@ -0,0 +1,55 @@
+diff -uNr liblbxutil-1.1.0.orig/configure.ac liblbxutil-1.1.0/configure.ac
+--- liblbxutil-1.1.0.orig/configure.ac	2009-12-04 23:52:04.000000000 +0100
++++ liblbxutil-1.1.0/configure.ac	2009-12-16 10:45:00.000000000 +0100
+@@ -50,4 +50,5 @@
+ 
+ AC_OUTPUT([Makefile
+ 	   src/Makefile
++	   src/image/Makefile
+ 	   lbxutil.pc])
+diff -uNr liblbxutil-1.1.0.orig/src/image/Makefile.am liblbxutil-1.1.0/src/image/Makefile.am
+--- liblbxutil-1.1.0.orig/src/image/Makefile.am	1970-01-01 01:00:00.000000000 +0100
++++ liblbxutil-1.1.0/src/image/Makefile.am	2009-12-16 10:45:00.000000000 +0100
+@@ -0,0 +1,15 @@
++# evil hack
++CFLAGS=$(CFLAGS_FOR_BUILD)
++CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
++LDFLAGS=$(LDFLAGS_FOR_BUILD)
++
++CC=$(CC_FOR_BUILD)
++LIBTOOL = @LIBTOOL@ --tag=CC
++
++noinst_PROGRAMS = mkg3states
++
++mkg3states_SOURCES =				\
++	mkg3states.c
++
++mkg3states_CFLAGS=$(CFLAGS_FOR_BUILD)
++mkg3states_LDFLAGS=$(LDFLAGS_FOR_BUILD)
+diff -uNr liblbxutil-1.1.0.orig/src/Makefile.am liblbxutil-1.1.0/src/Makefile.am
+--- liblbxutil-1.1.0.orig/src/Makefile.am	2009-12-16 10:48:11.000000000 +0100
++++ liblbxutil-1.1.0/src/Makefile.am	2009-12-16 10:46:47.000000000 +0100
+@@ -3,10 +3,7 @@
+ AM_CFLAGS = $(CWARNFLAGS) $(LBXUTIL_CFLAGS)
+ INCLUDES = -I$(top_srcdir)/include
+ 
+-noinst_PROGRAMS = mkg3states
+-
+-mkg3states_SOURCES =				\
+-	$(srcdir)/image/mkg3states.c
++SUBDIRS = image
+ 
+ liblbxutil_la_SOURCES =				\
+ 	$(srcdir)/lbx_zlib/reqstats.h		\
+@@ -38,9 +35,8 @@
+ 
+ $(srcdir)/image/dfaxg42d.c: g3states.h
+ 
+-g3states.h: mkg3states
+-	-rm -f g3states.h
+-	$(AM_V_GEN) ./mkg3states -c > g3states.h_ && mv g3states.h_ g3states.h
++g3states.h: image/mkg3states
++	$(AM_V_GEN) ./image/mkg3states -c > g3states.h_ && mv g3states.h_ g3states.h
+ 
+ liblbxutil_la_LDFLAGS = -version-number 1:0:0 -no-undefined
+ 
diff --git a/meta-oe/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb b/meta-oe/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb
new file mode 100644
index 0000000..5223586
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb
@@ -0,0 +1,14 @@
+require xorg-lib-common.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=b0d5bdc98f7ebab3b6c3791d9bf40907"
+
+DESCRIPTION = "XFIXES Extension"
+DEPENDS += " xextproto xproto zlib"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI += "file://mkg3states-1.1.patch"
+SRC_URI[md5sum] = "273329a78c2e9ea189ac416c7fde94a1"
+SRC_URI[sha256sum] = "c6b6ff7858ec619cafa8205debca6bf78c5610a2844a782ed643c7fd017cf8ae"
+
+export CC_FOR_BUILD = "gcc"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/keysymdef_include.patch b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/keysymdef_include.patch
new file mode 100644
index 0000000..1a30e34
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/keysymdef_include.patch
@@ -0,0 +1,19 @@
+diff -uNr libX11-1.3.6.orig//configure.ac libX11-1.3.6/configure.ac
+--- libX11-1.3.6.orig//configure.ac	2010-09-20 08:04:16.000000000 +0200
++++ libX11-1.3.6/configure.ac	2010-09-28 16:29:26.000000000 +0200
+@@ -355,7 +355,14 @@
+ # Find keysymdef.h
+ #
+ AC_MSG_CHECKING([keysym definitions])
+-KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11
++AC_ARG_WITH(keysymdefdir,
++        AC_HELP_STRING([--with-keysymdefdir=DIR], [The location of keysymdef.h]),
++        KEYSYMDEFDIR=$withval, KEYSYMDEFDIR="")
++
++if test x$KEYSYMDEFDIR = x; then
++	KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11
++fi
++
+ FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h"
+ for i in $FILES; do
+     if test -f "$KEYSYMDEFDIR/$i"; then
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/x11_disable_makekeys.patch b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/x11_disable_makekeys.patch
new file mode 100644
index 0000000..9763313
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.1/x11_disable_makekeys.patch
@@ -0,0 +1,29 @@
+Index: libX11-1.3.4/src/util/Makefile.am
+===================================================================
+--- libX11-1.3.4.orig/src/util/Makefile.am
++++ libX11-1.3.4/src/util/Makefile.am
+@@ -1,24 +1 @@
+-
+-noinst_PROGRAMS=makekeys
+-
+-makekeys_CFLAGS = \
+-	$(X11_CFLAGS) \
+-	$(CWARNFLAGS)
+-
+-CC = @CC_FOR_BUILD@
+-CPPFLAGS = @CPPFLAGS_FOR_BUILD@
+-CFLAGS = @CFLAGS_FOR_BUILD@
+-LDFLAGS = @LDFLAGS_FOR_BUILD@
+-
+ EXTRA_DIST = mkks.sh
+-
+-if LINT
+-# Check source code with tools like lint & sparse
+-
+-ALL_LINT_FLAGS=$(LINT_FLAGS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+-		$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS)
+-
+-lint:
+-	$(LINT) $(ALL_LINT_FLAGS) makekeys.c
+-
+-endif LINT
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/keysymdef_include.patch b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/keysymdef_include.patch
new file mode 100644
index 0000000..1a30e34
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/keysymdef_include.patch
@@ -0,0 +1,19 @@
+diff -uNr libX11-1.3.6.orig//configure.ac libX11-1.3.6/configure.ac
+--- libX11-1.3.6.orig//configure.ac	2010-09-20 08:04:16.000000000 +0200
++++ libX11-1.3.6/configure.ac	2010-09-28 16:29:26.000000000 +0200
+@@ -355,7 +355,14 @@
+ # Find keysymdef.h
+ #
+ AC_MSG_CHECKING([keysym definitions])
+-KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11
++AC_ARG_WITH(keysymdefdir,
++        AC_HELP_STRING([--with-keysymdefdir=DIR], [The location of keysymdef.h]),
++        KEYSYMDEFDIR=$withval, KEYSYMDEFDIR="")
++
++if test x$KEYSYMDEFDIR = x; then
++	KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11
++fi
++
+ FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h"
+ for i in $FILES; do
+     if test -f "$KEYSYMDEFDIR/$i"; then
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/x11_disable_makekeys.patch b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/x11_disable_makekeys.patch
new file mode 100644
index 0000000..9763313
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11-1.4.3/x11_disable_makekeys.patch
@@ -0,0 +1,29 @@
+Index: libX11-1.3.4/src/util/Makefile.am
+===================================================================
+--- libX11-1.3.4.orig/src/util/Makefile.am
++++ libX11-1.3.4/src/util/Makefile.am
+@@ -1,24 +1 @@
+-
+-noinst_PROGRAMS=makekeys
+-
+-makekeys_CFLAGS = \
+-	$(X11_CFLAGS) \
+-	$(CWARNFLAGS)
+-
+-CC = @CC_FOR_BUILD@
+-CPPFLAGS = @CPPFLAGS_FOR_BUILD@
+-CFLAGS = @CFLAGS_FOR_BUILD@
+-LDFLAGS = @LDFLAGS_FOR_BUILD@
+-
+ EXTRA_DIST = mkks.sh
+-
+-if LINT
+-# Check source code with tools like lint & sparse
+-
+-ALL_LINT_FLAGS=$(LINT_FLAGS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+-		$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS)
+-
+-lint:
+-	$(LINT) $(ALL_LINT_FLAGS) makekeys.c
+-
+-endif LINT
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11.inc b/meta-oe/recipes-graphics/xorg-lib/libx11.inc
new file mode 100644
index 0000000..d1e646a
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11.inc
@@ -0,0 +1,52 @@
+require xorg-lib-common.inc
+
+DESCRIPTION = "Base X libs."
+COMMON_DEPENDS = "util-macros xtrans libxdmcp libxau \
+                  bigreqsproto xproto xextproto xcmiscproto \
+                  xf86bigfontproto kbproto inputproto xproto-native"
+
+DEPENDS = "libxcb ${COMMON_DEPENDS}"		  
+DEPENDS_virtclass-native = "${COMMON_DEPENDS}"
+DEPENDS_virtclass-nativesdk = "${COMMON_DEPENDS}"
+
+FILESPATHPKG .= ":libx11-${PV}:libx11"
+BBCLASSEXTEND = "native nativesdk"
+PROVIDES = "virtual/libx11"
+PE = "1"
+
+PACKAGES =+ "${PN}-xcb"
+
+FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${libdir}/X11/Xcms.txt"
+FILES_${PN}-xcb += "${libdir}/libX11-xcb.so.*"
+FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"
+
+XORG_PN = "libX11"
+
+EXTRA_OECONF += " --with-xcb --with-keysymdefdir=${STAGING_INCDIR}/X11 --with-groff=no --with-ps2pdf=no --with-fop=no"
+EXTRA_OECONF_virtclass-native = " --without-xcb --with-groff=no --with-ps2pdf=no --with-fop=no"
+EXTRA_OECONF_virtclass-nativesdk = " --without-xcb --with-groff=no --with-ps2pdf=no --with-fop=no"
+
+# Below option is added to overcome the GCC bug on ARM
+# see http://gcc.gnu.org/PR42981 for further details.
+# We could potentially take it off when its fixed in gcc 4.5
+
+CFLAGS_append_arm = " -fforward-propagate "
+
+SRC_URI += " file://keysymdef_include.patch \
+             file://x11_disable_makekeys.patch \
+"
+
+do_compile_prepend() {
+	(
+		unset CC LD CXX CCLD CFLAGS CPPFLAGS LDFLAGS CXXFLAGS
+		cd src/util; 
+		mv makekeys.c.orig makekeys.c || true
+		# MIN_REHASH 10 is only in 1.0.1
+		sed -i -e 's:MIN_REHASH 10:MIN_REHASH 16:g' makekeys.c
+		sed -i -e 's:MIN_REHASH 15:MIN_REHASH 16:g' makekeys.c
+		touch makekeys-makekeys.o ; ${BUILD_CC} ${BUILD_CFLAGS} -I${STAGING_INCDIR_NATIVE} makekeys.c -o makekeys
+		# mv to stop it getting rebuilt
+		mv makekeys.c makekeys.c.orig
+		cd ../../
+	) || exit 1
+}
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11_1.4.1.bb b/meta-oe/recipes-graphics/xorg-lib/libx11_1.4.1.bb
new file mode 100644
index 0000000..a442330
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11_1.4.1.bb
@@ -0,0 +1,12 @@
+require libx11.inc
+
+LICENSE = "MIT & MIT-style & BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=172255dee66bb0151435b2d5d709fcf7"
+
+#--without-xcb is not an option anymore
+#http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=15e5eaf62897b3179d1fbe457cb19f886f0449f8
+DEPENDS_virtclass-native = "libxcb-native ${COMMON_DEPENDS}"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "4603bdbce1bd73cbc140de402fe6ed24"
+SRC_URI[sha256sum] = "70f4e0f798645a0f269f362bfdbd4c7934dae3a2dd9ecbad28d6ede414f63ce2"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libx11_1.4.3.bb b/meta-oe/recipes-graphics/xorg-lib/libx11_1.4.3.bb
new file mode 100644
index 0000000..481b90f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libx11_1.4.3.bb
@@ -0,0 +1,12 @@
+require libx11.inc
+
+LICENSE = "MIT & MIT-style & BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=172255dee66bb0151435b2d5d709fcf7"
+
+#--without-xcb is not an option anymore
+#http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=15e5eaf62897b3179d1fbe457cb19f886f0449f8
+DEPENDS_virtclass-native = "libxcb-native ${COMMON_DEPENDS}"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "85e942627aaa020813e0eb8433353563"
+SRC_URI[sha256sum] = "38b5ddd93291714a46a02cb8a5dd94b995a04ed76a608551c44d1598e113635a"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.9.bb b/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.9.bb
new file mode 100644
index 0000000..980de3a
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.9.bb
@@ -0,0 +1,28 @@
+require xorg-lib-common.inc
+DESCRIPTION = "X Athena Widget Set"
+DEPENDS += "xproto virtual/libx11 libxext xextproto libxt libxmu libxpm libxp printproto libxau"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=f1beacbc336a5a256bb28dbfcf01c2be"
+
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "ccc57478c41b7a75b9702241b889b1d4"
+SRC_URI[sha256sum] = "a83977546b78e24ac5dca86affc10b6404a87c16272405b05386feca1a2db037"
+
+# disable docs as groff detection doesn't work on some hosts while cross compilling
+EXTRA_OECONF += " --disable-docs "
+
+do_install_append () {
+        ln -sf libXaw6.so.6 ${D}${libdir}/libXaw.so.6
+        ln -sf libXaw7.so.7 ${D}${libdir}/libXaw.so.7
+        ln -sf libXaw7.so.7 ${D}${libdir}/libXaw.so
+}
+
+PACKAGES =+ "libxaw6 libxaw7 libxaw8"
+
+FILES_libxaw6 = "${libdir}/libXaw*.so.6*"
+FILES_libxaw7 = "${libdir}/libXaw*.so.7*"
+FILES_libxaw8 = "${libdir}/libXaw8.so.8*"
+
+XORG_PN = "libXaw"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libxfixes_5.0.bb b/meta-oe/recipes-graphics/xorg-lib/libxfixes_5.0.bb
new file mode 100644
index 0000000..4ca1ea2
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libxfixes_5.0.bb
@@ -0,0 +1,22 @@
+SUMMARY = "XFixes: X Fixes extension library."
+
+DESCRIPTION = "X applications have often needed to work around various \
+shortcomings in the core X window system.  This extension is designed to \
+provide the minimal server-side support necessary to eliminate problems \
+caused by these workarounds."
+
+require xorg-lib-common.inc
+
+LICENSE = "MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3c1ce42c334a6f5cccb0277556a053e0"
+
+DEPENDS += "virtual/libx11 xproto fixesproto xextproto"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "678071bd7f9f7467e2fc712d81022318"
+SRC_URI[sha256sum] = "537a2446129242737a35db40081be4bbcc126e56c03bf5f2b142b10a79cda2e3"
+
+BBCLASSEXTEND = "native"
+
+XORG_PN = "libXfixes"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libxi_1.4.2.bb b/meta-oe/recipes-graphics/xorg-lib/libxi_1.4.2.bb
new file mode 100644
index 0000000..94299c0
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libxi_1.4.2.bb
@@ -0,0 +1,21 @@
+require xorg-lib-common.inc
+
+SUMMARY = "XI: X Input extension library"
+
+DESCRIPTION = "libxi is an extension to the X11 protocol to support \
+input devices other than the core X keyboard and pointer.  It allows \
+client programs to select input from these devices independently from \
+each other and independently from the core devices."
+
+LICENSE = "MIT & MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=17b064789fab936a1c58c4e13d965b0f \
+                    file://src/XIGetDevFocus.c;endline=23;md5=cdfb0d435a33ec57ea0d1e8e395b729f"
+
+DEPENDS += "libxext inputproto"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "3d14f7bfc4a4335cf0144de9b67a5444"
+SRC_URI[sha256sum] = "272b8041efc0a0203fb0ba33481ddec989539aed862181b58c8c3e410e325691"
+
+XORG_PN = "libXi"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb b/meta-oe/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb
new file mode 100644
index 0000000..499caf1
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb
@@ -0,0 +1,10 @@
+require xorg-lib-common.inc
+DESCRIPTION = "X11 keyboard UI presentation library"
+LICENSE = "GPL"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94"
+DEPENDS += "virtual/libx11 libxt libxkbfile"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "1143e456f7429e18e88f2eadb2f2b6b1"
+SRC_URI[sha256sum] = "20c23101d63234ee5f6d696dfa069b29c6c58e39eff433bcd7705b50b3ffa214"
diff --git a/meta-oe/recipes-graphics/xorg-lib/libxt_1.1.1.bb b/meta-oe/recipes-graphics/xorg-lib/libxt_1.1.1.bb
new file mode 100644
index 0000000..8c22f62
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-lib/libxt_1.1.1.bb
@@ -0,0 +1,37 @@
+require xorg-lib-common.inc
+
+SUMMARY = "Xt: X Toolkit Intrinsics library"
+
+DESCRIPTION = "The Intrinsics are a programming library tailored to the \
+special requirements of user interface construction within a network \
+window system, specifically the X Window System. The Intrinsics and a \
+widget set make up an X Toolkit. The Intrinsics provide the base \
+mechanism necessary to build a wide variety of interoperating widget \
+sets and application environments. The Intrinsics are a layer on top of \
+Xlib, the C Library X Interface. They extend the fundamental \
+abstractions provided by the X Window System while still remaining \
+independent of any particular user interface policy or style."
+
+LICENSE = "MIT & MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3239170e81427c5948287df07691f03f"
+
+DEPENDS += "libsm virtual/libx11 kbproto"
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "eb22c0a1f172b06b97a3f5ae89768412"
+SRC_URI[sha256sum] = "a2a1c29c684e3c9082cdb920b5aea802b179d19107b9ab2170fda07575559da7"
+
+EXTRA_OECONF += "--disable-install-makestrs --disable-xkb"
+
+do_compile() {
+        (
+                unset CC LD CXX CCLD
+                oe_runmake -C util 'XT_CFLAGS=' 'CC=${BUILD_CC}' 'LD=${BUILD_LD}' 'CXX=${BUILD_CXX}' 'CCLD=${BUILD_CCLD}' 'CFLAGS=-D_GNU_SOURCE -I${STAGING_INCDIR_NATIVE} ${BUILD_CFLAGS}' 'LDFLAGS=${BUILD_LDFLAGS}' 'CXXFLAGS=${BUILD_CXXFLAGS}' 'CPPFLAGS=${BUILD_CPPFLAGS}' makestrs
+        ) || exit 1
+        oe_runmake
+}
+
+BBCLASSEXTEND = "native"
+
+XORG_PN = "libXt"
diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman_0.20.0.bb b/meta-oe/recipes-graphics/xorg-lib/pixman_0.20.0.bb
index b3fbd4f..b66bc2a 100644
--- a/meta-oe/recipes-graphics/xorg-lib/pixman_0.20.0.bb
+++ b/meta-oe/recipes-graphics/xorg-lib/pixman_0.20.0.bb
@@ -1,7 +1,7 @@
 require pixman.inc
 
-SRC_URI[archive.md5sum] = "c1a31d5cedfa97c5af7148a2d1fd4356"
-SRC_URI[archive.sha256sum] = "9c02c22c6cc3f28f3633d02ef6f0cac130518f621edb011ebbbf08cd1a81251a"
+SRC_URI[md5sum] = "c1a31d5cedfa97c5af7148a2d1fd4356"
+SRC_URI[sha256sum] = "9c02c22c6cc3f28f3633d02ef6f0cac130518f621edb011ebbbf08cd1a81251a"
 
 PR = "${INC_PR}.0"
 
diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb b/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb
index f0e9e38..237e4ef 100644
--- a/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb
+++ b/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb
@@ -1,7 +1,7 @@
 require pixman.inc
 
-SRC_URI[archive.md5sum] = "e50975ace979cd416a505827c15191b4"
-SRC_URI[archive.sha256sum] = "57783330ee2f96121dc267b7f25b98356fd09fe9de185cd39e72e906b6444013"
+SRC_URI[md5sum] = "e50975ace979cd416a505827c15191b4"
+SRC_URI[sha256sum] = "57783330ee2f96121dc267b7f25b98356fd09fe9de185cd39e72e906b6444013"
 
 LICENSE = "MIT & MIT-style & Public Domain"
 LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3\
diff --git a/meta-oe/recipes-graphics/xorg-lib/xorg-lib-common.inc b/meta-oe/recipes-graphics/xorg-lib/xorg-lib-common.inc
index 93212c5..2f73375 100644
--- a/meta-oe/recipes-graphics/xorg-lib/xorg-lib-common.inc
+++ b/meta-oe/recipes-graphics/xorg-lib/xorg-lib-common.inc
@@ -1,6 +1,5 @@
 HOMEPAGE = "http://www.x.org"
 BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg"
-
 SECTION = "x11/libs"
 LICENSE = "MIT-X"
 DEPENDS = "util-macros"
diff --git a/meta-oe/recipes-graphics/xorg-proto/fixesproto_5.0.bb b/meta-oe/recipes-graphics/xorg-proto/fixesproto_5.0.bb
new file mode 100644
index 0000000..004813f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-proto/fixesproto_5.0.bb
@@ -0,0 +1,21 @@
+require xorg-proto-common.inc
+SUMMARY = "XFixes: X Fixes extension headers"
+
+DESCRIPTION = "This package provides the wire protocol for the X Fixes \
+extension.  This extension is designed to provide server-side support \
+for application work arounds to shortcomings in the core X window \
+system."
+
+
+LICENSE = "MIT & MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=262a7a87da56e66dd639bf7334a110c6 \
+                    file://xfixesproto.h;endline=44;md5=3deb31fbde34b96c9f19072b8d854fea"
+
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "e7431ab84d37b2678af71e29355e101d"
+SRC_URI[sha256sum] = "ba2f3f31246bdd3f2a0acf8bd3b09ba99cab965c7fb2c2c92b7dc72870e424ce"
+
+
+CONFLICTS = "fixesext"
diff --git a/meta-oe/recipes-graphics/xorg-proto/xextproto_7.2.0.bb b/meta-oe/recipes-graphics/xorg-proto/xextproto_7.2.0.bb
new file mode 100644
index 0000000..9272ac1
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-proto/xextproto_7.2.0.bb
@@ -0,0 +1,19 @@
+require xorg-proto-common.inc
+SUMMARY = "XExt: X Extension headers"
+
+DESCRIPTION = "This package provides the wire protocol for several X \
+extensions.  These protocol extensions include DOUBLE-BUFFER, DPMS, \
+Extended-Visual-Information, LBX, MIT_SHM, MIT_SUNDRY-NONSTANDARD, \
+Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP, XC-APPGROUP, XC-MISC, \
+XTEST.  In addition a small set of utility functions are also \
+available."
+
+LICENSE = "MIT & MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=86f273291759d0ba2a22585cd1c06c53"
+
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "220732210ceffb01bf1caf970e3b1bfb"
+SRC_URI[sha256sum] = "d2bc4208c6b1883ebe00bc5c0048e5d825038cda56775f74bb4aa89afdc576d5"
+
diff --git a/meta-oe/recipes-graphics/xorg-proto/xorg-proto-common.inc b/meta-oe/recipes-graphics/xorg-proto/xorg-proto-common.inc
index 3e7c701..dc6fedf 100644
--- a/meta-oe/recipes-graphics/xorg-proto/xorg-proto-common.inc
+++ b/meta-oe/recipes-graphics/xorg-proto/xorg-proto-common.inc
@@ -1,5 +1,6 @@
 DESCRIPTION = "X protocol headers: ${BPN}"
 HOMEPAGE = "http://www.x.org"
+BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg"
 SECTION = "x11/libs"
 LICENSE = "MIT-X"
 
@@ -9,9 +10,10 @@ ALLOW_EMPTY = "1"
 
 INC_PR = "r2"
 
-SRC_URI = "${XORG_MIRROR}/individual/proto/${BPN}-${PV}.tar.bz2;name=archive"
+SRC_URI = "${XORG_MIRROR}/individual/proto/${BPN}-${PV}.tar.bz2"
 
 S = "${WORKDIR}/${BPN}-${PV}"
 
 inherit autotools pkgconfig
 
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-oe/recipes-graphics/xorg-proto/xproto_7.0.21.bb b/meta-oe/recipes-graphics/xorg-proto/xproto_7.0.21.bb
new file mode 100644
index 0000000..2bc9509
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-proto/xproto_7.0.21.bb
@@ -0,0 +1,16 @@
+require xorg-proto-common.inc
+
+SUMMARY = "Xlib: C Language X interface headers"
+
+DESCRIPTION = "This package provides the basic headers for the X Window \
+System."
+
+LICENSE = "MIT & MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b9e051107d5628966739a0b2e9b32676"
+
+PE = "1"
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "c5a93a69b701cf81925fab02b35b0d0e"
+SRC_URI[sha256sum] = "38ee2f032c3a9e30504593f8b5e6c1161a6629daba93748a71c6f70c16f65548"
+
diff --git a/meta-oe/recipes-graphics/xorg-util/util-macros_1.13.0.bb b/meta-oe/recipes-graphics/xorg-util/util-macros_1.13.0.bb
new file mode 100644
index 0000000..3f4471a
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-util/util-macros_1.13.0.bb
@@ -0,0 +1,15 @@
+require xorg-util-common.inc
+
+DESCRIPTION = "X autotools macros"
+PE = "1"
+
+LICENSE = "MIT & MIT-style"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1970511fddd439b07a6ba789d28ff662"
+
+ALLOW_EMPTY = "1"
+BBCLASSEXTEND = "native nativesdk"
+
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "31e9ddcbc1d8bc8c09ab180443974dd1"
+SRC_URI[sha256sum] = "7bff944fb120192e7fe1706e9c0b7e41666e7983ce3e2bdef0b7734392d9e695"
diff --git a/meta-oe/recipes-graphics/xorg-util/xorg-util-common.inc b/meta-oe/recipes-graphics/xorg-util/xorg-util-common.inc
new file mode 100644
index 0000000..e5c8ce9
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-util/xorg-util-common.inc
@@ -0,0 +1,11 @@
+HOMEPAGE = "http://www.x.org"
+SECTION = "x11/utils"
+LICENSE = "MIT-X"
+
+INC_PR = "r2"
+
+SRC_URI = "${XORG_MIRROR}/individual/util/${BPN}-${PV}.tar.gz"
+
+S = "${WORKDIR}/${BPN}-${PV}"
+
+inherit autotools pkgconfig
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xorg-xserver-common.inc b/meta-oe/recipes-graphics/xorg-xserver/xorg-xserver-common.inc
new file mode 100644
index 0000000..79f13fc
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xorg-xserver-common.inc
@@ -0,0 +1,112 @@
+HOMEPAGE = "http://www.x.org"
+SECTION = "x11/base"
+LICENSE = "MIT-X"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3dd2bbe3563837f80ed8926b06c1c353"
+
+INC_PR = "r18"
+
+PROVIDES = "virtual/xserver"
+
+# Config manager for xserver, options are: hal, udev, empty (for configuration in xorg.conf)
+DISTRO_XORG_CONFIG_MANAGER ?= "hal"
+DISTRO_XORG_CONFIG_MANAGER_shr ?= "udev"
+
+# default none, enabled by DISTRO_XORG_CONFIG_MANAGER setting
+CONFIG_MANAGER_OPTION += "${@['--disable-config-hal','--enable-config-hal',''][bb.data.getVar('DISTRO_XORG_CONFIG_MANAGER',d) in ['hal']]}"
+CONFIG_MANAGER_OPTION += "${@['--disable-config-udev','--enable-config-udev',''][bb.data.getVar('DISTRO_XORG_CONFIG_MANAGER',d) in ['udev']]}"
+
+DEPENDS = "fontconfig freetype flex-native liblbxutil kbproto \ 
+xf86driproto drm glproto randrproto renderproto fixesproto damageproto \
+xcmiscproto xextproto xproto xf86miscproto xf86vidmodeproto xf86bigfontproto \
+scrnsaverproto bigreqsproto resourceproto fontsproto inputproto \
+xf86dgaproto videoproto compositeproto trapproto recordproto dmxproto \
+resourceproto xineramaproto xtrans evieext libxkbfile libxfont libxau \
+libfontenc libxdmcp libxxf86vm libxaw libxmu libxt libxpm libxext libx11 \
+libxkbui libxxf86misc libxi libdmx libxtst libxres virtual/libgl libxcalibrate \
+libxv ${DISTRO_XORG_CONFIG_MANAGER}"
+
+RRECOMMENDS_${PN} = "libpciaccess"
+
+XORG_PN = "xorg-server"
+SRC_URI = "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2"
+
+S = "${WORKDIR}/${XORG_PN}-${PV}"
+
+inherit autotools pkgconfig glx-use-tls
+
+EXTRA_OECONF += " --enable-xcalibrate \
+                  --enable-kdrive \
+                  --enable-xephyr \
+                  --disable-xfbdev \
+                  --disable-xnest \
+                  --disable-kdrive-vesa \
+                  --with-default-font-path="/usr/share/fonts/X11/misc" \
+                  ac_cv_file__usr_share_sgml_X11_defs_ent=no"
+
+# CONFIG_MANAGER_OPTION is used only in recipes which support those options
+
+EXTRA_OECONF_append_arm = " ac_cv_header_linux_apm_bios_h=no "
+
+PACKAGES =+ "xserver-security-policy"
+FILES_xserver-security-policy += "${libdir}/xserver/SecurityPolicy"
+RRECOMMENDS_${PN} += "xserver-security-policy xkeyboard-config rgb xserver-xorg-conf"
+
+PACKAGES =+ "${PN}-sdl ${PN}-fbdev ${PN}-xprint ${PN}-xvfb ${PN}-utils ${PN}-xephyr"
+
+RDEPENDS_${PN}-xvfb += "xkeyboard-config"
+
+FILES_${PN}-fbdev = "${bindir}/Xfbdev"
+FILES_${PN}-sdl = "${bindir}/Xsdl"
+FILES_${PN}-xprint = "${libdir}/X11/xserver/*/print"
+FILES_${PN}-xvfb = "${bindir}/Xvfb"
+FILES_${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl"
+FILES_${PN} = "${bindir} ${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/modules ${libdir}/xorg/modules /etc/X11 ${libdir}/xorg/protocol.txt ${datadir}/X11/xorg.conf.d"
+FILES_${PN}-doc += "${libdir}/X11/doc /usr/share/X11/xkb/compiled/README.compiled"
+FILES_${PN}-xephyr = "${bindir}/Xephyr"
+
+FILES_${PN}-dbg += "${libdir}/xorg/modules/.debug \
+                    ${libdir}/xorg/modules/*/.debug \
+		    ${libdir}/xorg/modules/*/*/.debug \
+		    "
+
+# Split out some modules and extensions from the main package
+# These aren't needed for basic operations and only take up space:
+#  32.0k   libdri.so
+#  336.0k  libglx.so
+#  1360k   libint10.so
+#  180.0k  libwfb.so
+#  320.0k  libxaa.so
+#  124.0k  libxf1bpp.so
+#  84.0k   libxf4bpp.so
+
+PACKAGES =+ "${PN}-extension-dri \
+             ${PN}-extension-dri2 \
+             ${PN}-extension-glx \
+             ${PN}-module-libint10 \
+             ${PN}-module-libafb \
+             ${PN}-module-libwfb  \
+             ${PN}-module-libmfb \
+             ${PN}-module-libcfb \
+             ${PN}-module-xaa \
+             ${PN}-module-libxf1bpp \
+             ${PN}-module-libxf4bpp"
+
+FILES_${PN}-extension-dri = "${libdir}/xorg/modules/extensions/libdri.so"
+FILES_${PN}-extension-dri2 = "${libdir}/xorg/modules/extensions/libdri2.so"
+FILES_${PN}-extension-glx = "${libdir}/xorg/modules/extensions/libglx.so"
+FILES_${PN}-module-libint10 = "${libdir}/xorg/modules/libint10.so"
+FILES_${PN}-module-libafb = "${libdir}/xorg/modules/libafb.so"
+FILES_${PN}-module-libwfb = "${libdir}/xorg/modules/libwfb.so"
+FILES_${PN}-module-libmfb = "${libdir}/xorg/modules/libmfb.so"
+FILES_${PN}-module-libcfb = "${libdir}/xorg/modules/libcfb.so"
+FILES_${PN}-module-xaa = "${libdir}/xorg/modules/libxaa.so"
+FILES_${PN}-module-libxf1bpp = "${libdir}/xorg/modules/libxf1bpp.so"
+FILES_${PN}-module-libxf4bpp = "${libdir}/xorg/modules/libxf4bpp.so"
+
+PACKAGES =+ "${PN}-multimedia-modules"
+
+FILES_${PN}-multimedia-modules = "${libdir}/xorg/modules/multimedia/*drv*"
+
+do_install_append () {
+	ln -sf ${datadir}/fonts/X11 ${D}/${libdir}/X11/fonts
+}
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-assume-pixman-supports-overlapped-blt.patch b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-assume-pixman-supports-overlapped-blt.patch
new file mode 100644
index 0000000..a947582
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-assume-pixman-supports-overlapped-blt.patch
@@ -0,0 +1,14 @@
+diff --git a/fb/fbcopy.c b/fb/fbcopy.c
+index 07eb663..ba394b7 100644
+--- a/fb/fbcopy.c
++++ b/fb/fbcopy.c
+@@ -91,8 +91,7 @@ fbCopyNtoN (DrawablePtr	pSrcDrawable,
+     while (nbox--)
+     {
+ #ifndef FB_ACCESS_WRAPPER /* pixman_blt() doesn't support accessors yet */
+-	if (pm == FB_ALLONES && alu == GXcopy && !reverse &&
+-	    !upsidedown)
++	if (pm == FB_ALLONES && alu == GXcopy)
+ 	{
+ 	    if (!pixman_blt ((uint32_t *)src, (uint32_t *)dst, srcStride, dstStride, srcBpp, dstBpp,
+ 			     (pbox->x1 + dx + srcXoff),
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-fbdev-ignore-return-mode.patch b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-fbdev-ignore-return-mode.patch
new file mode 100644
index 0000000..d3661cb
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.10.0.901/hack-fbdev-ignore-return-mode.patch
@@ -0,0 +1,39 @@
+Ugly hack that prevents server termination with xf86-video-fbdev-0.4.1
+(and probably other) while returning from chvt or resume on some
+hardware (e. g. zaurus).
+
+Correct fix would require debugging of fbdev mode during LeaveVT and
+EnterVT.
+
+This patch may cause staying in incorrect or corrupted display mode
+after EnterVT, but on man affected devices it does not cause any visible
+problems.
+
+Hacked code is never called on properly written drivers.
+
+Devices affected and testers involved for future patch removal:
+Sharp Zaurus (spitz/akita): Stanislav Brabec <utx at penguin.cz>
+
+See also:
+https://bugzilla.redhat.com/show_bug.cgi?id=238451
+
+The bug (first line indicates that your device is affected):
+
+(EE) FBDEV(0): FBIOPUT_VSCREENINFO succeeded but modified mode
+
+Fatal server error:
+EnterVT failed for screen 0
+
+Index: xorg-server-1.7.3/hw/xfree86/fbdevhw/fbdevhw.c
+===================================================================
+--- xorg-server-1.7.3.orig/hw/xfree86/fbdevhw/fbdevhw.c
++++ xorg-server-1.7.3/hw/xfree86/fbdevhw/fbdevhw.c
+@@ -571,7 +571,7 @@ fbdevHWSetMode(ScrnInfoPtr pScrn, Displa
+ #if DEBUG
+ 		print_fbdev_mode("returned", &set_var);
+ #endif
+-		return FALSE;
++		/* return FALSE; UGLY HACK to allow return from chvt */
+ 	}
+ 
+ 	if (!check)
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/dolt-fix.patch b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/dolt-fix.patch
new file mode 100644
index 0000000..e332ce0
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/dolt-fix.patch
@@ -0,0 +1,22 @@
+Index: xorg-server/m4/dolt.m4
+===================================================================
+--- xorg-server.orig/m4/dolt.m4	2009-04-14 21:14:56.000000000 +0400
++++ xorg-server/m4/dolt.m4	2009-07-15 12:38:33.796848843 +0400
+@@ -147,7 +147,7 @@
+     cat <<__DOLTLIBTOOL__EOF__ > doltlibtool
+ #!$DOLT_BASH
+ __DOLTLIBTOOL__EOF__
+-    cat <<'__DOLTLIBTOOL__EOF__' >>doltlibtool
++    cat <<'__DOLTLIBTOOL__EOF__' | sed -e "s/@host_alias@/$host_alias/g" >>doltlibtool
+ top_builddir_slash="${0%%doltlibtool}"
+ : ${top_builddir_slash:=./}
+ args=()
+@@ -163,7 +163,7 @@
+ if $modeok && $tagok ; then
+     . ${top_builddir_slash}doltcompile "${args@<:@@@:>@}"
+ else
+-    exec ${top_builddir_slash}libtool "$[]@"
++    exec ${top_builddir_slash}@host_alias at -libtool "$[]@"
+ fi
+ __DOLTLIBTOOL__EOF__
+ 
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-assume-pixman-supports-overlapped-blt.patch b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-assume-pixman-supports-overlapped-blt.patch
new file mode 100644
index 0000000..a947582
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-assume-pixman-supports-overlapped-blt.patch
@@ -0,0 +1,14 @@
+diff --git a/fb/fbcopy.c b/fb/fbcopy.c
+index 07eb663..ba394b7 100644
+--- a/fb/fbcopy.c
++++ b/fb/fbcopy.c
+@@ -91,8 +91,7 @@ fbCopyNtoN (DrawablePtr	pSrcDrawable,
+     while (nbox--)
+     {
+ #ifndef FB_ACCESS_WRAPPER /* pixman_blt() doesn't support accessors yet */
+-	if (pm == FB_ALLONES && alu == GXcopy && !reverse &&
+-	    !upsidedown)
++	if (pm == FB_ALLONES && alu == GXcopy)
+ 	{
+ 	    if (!pixman_blt ((uint32_t *)src, (uint32_t *)dst, srcStride, dstStride, srcBpp, dstBpp,
+ 			     (pbox->x1 + dx + srcXoff),
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-fbdev-ignore-return-mode.patch b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-fbdev-ignore-return-mode.patch
new file mode 100644
index 0000000..d3661cb
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/hack-fbdev-ignore-return-mode.patch
@@ -0,0 +1,39 @@
+Ugly hack that prevents server termination with xf86-video-fbdev-0.4.1
+(and probably other) while returning from chvt or resume on some
+hardware (e. g. zaurus).
+
+Correct fix would require debugging of fbdev mode during LeaveVT and
+EnterVT.
+
+This patch may cause staying in incorrect or corrupted display mode
+after EnterVT, but on man affected devices it does not cause any visible
+problems.
+
+Hacked code is never called on properly written drivers.
+
+Devices affected and testers involved for future patch removal:
+Sharp Zaurus (spitz/akita): Stanislav Brabec <utx at penguin.cz>
+
+See also:
+https://bugzilla.redhat.com/show_bug.cgi?id=238451
+
+The bug (first line indicates that your device is affected):
+
+(EE) FBDEV(0): FBIOPUT_VSCREENINFO succeeded but modified mode
+
+Fatal server error:
+EnterVT failed for screen 0
+
+Index: xorg-server-1.7.3/hw/xfree86/fbdevhw/fbdevhw.c
+===================================================================
+--- xorg-server-1.7.3.orig/hw/xfree86/fbdevhw/fbdevhw.c
++++ xorg-server-1.7.3/hw/xfree86/fbdevhw/fbdevhw.c
+@@ -571,7 +571,7 @@ fbdevHWSetMode(ScrnInfoPtr pScrn, Displa
+ #if DEBUG
+ 		print_fbdev_mode("returned", &set_var);
+ #endif
+-		return FALSE;
++		/* return FALSE; UGLY HACK to allow return from chvt */
+ 	}
+ 
+ 	if (!check)
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/randr-support.patch b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/randr-support.patch
new file mode 100644
index 0000000..abc7db4
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-1.9.4/randr-support.patch
@@ -0,0 +1,102 @@
+diff -uNr xorg-server-1.9.0.orig//hw/xfree86/common/xf86Xinput.c xorg-server-1.9.0/hw/xfree86/common/xf86Xinput.c
+--- xorg-server-1.9.0.orig//hw/xfree86/common/xf86Xinput.c	2010-08-13 07:53:48.000000000 +0200
++++ xorg-server-1.9.0/hw/xfree86/common/xf86Xinput.c	2010-08-28 21:31:10.000000000 +0200
+@@ -106,6 +106,8 @@
+ 
+ #include "os.h"
+ 
++#define RR_Rotate_All    (RR_Rotate_0|RR_Rotate_90|RR_Rotate_180|RR_Rotate_270)
++
+ EventListPtr xf86Events = NULL;
+ 
+ /**
+@@ -1359,4 +1361,73 @@
+     EnableDevice(dev, TRUE);
+ }
+ 
++/* Taken from evdev-properties.h. */
++#define EVDEV_PROP_SWAP_AXES "Evdev Axes Swap"
++#define EVDEV_PROP_INVERT_AXES "Evdev Axis Inversion"
++
++/* This is a hack until we get device -> CRTC association. */
++void
++xf86InputRotationNotify(Rotation rotation)
++{
++    DeviceIntPtr dev;
++    LocalDevicePtr local;
++    int ret;
++    int swap_axes = 0;
++    CARD8 invert[2] = { 0, 0 };
++    static Atom prop_swap = 0, prop_invert = 0;
++    static int atom_generation = -1;
++    
++    if (atom_generation != serverGeneration) {
++        prop_swap = 0;
++        prop_invert = 0;
++    }
++
++    switch (rotation & RR_Rotate_All) {
++    case RR_Rotate_0:
++        swap_axes = 1;
++        invert[0] = 0;
++ 	 invert[1] = 0;
++        break;
++    case RR_Rotate_90:
++        swap_axes = 0;
++        invert[0] = 0;
++ 	 invert[1] = 1;
++        break;
++    case RR_Rotate_180:
++        swap_axes = 1;
++        invert[0] = 0;
++        invert[1] = 0;
++        break;
++    case RR_Rotate_270:
++        swap_axes = 0;
++        invert[0] = 0;
++ 	 invert[1] = 1;
++        break;
++    }
++
++    if (!prop_swap)
++        prop_swap = MakeAtom(EVDEV_PROP_SWAP_AXES,
++                             strlen(EVDEV_PROP_SWAP_AXES), TRUE);
++    if (!prop_invert)
++        prop_invert = MakeAtom(EVDEV_PROP_INVERT_AXES,
++                               strlen(EVDEV_PROP_INVERT_AXES), TRUE);
++
++    for (dev = inputInfo.devices; dev; dev = dev->next) {
++        local = dev->public.devicePrivate;
++        ret = XIChangeDeviceProperty(dev, prop_swap, XA_INTEGER, 8,
++                                     PropModeReplace, 1, &swap_axes, FALSE);
++        if (ret != Success) {
++            xf86Msg(X_ERROR, "Changing swap_xy property failed!\n");
++            continue;
++        }
++        ret = XIChangeDeviceProperty(dev, prop_invert, XA_INTEGER, 8,
++                                     PropModeReplace, 2, invert, FALSE);
++        if (ret != Success) {
++            xf86Msg(X_ERROR, "Changing invert property failed!\n");
++            continue;
++        }
++    }
++}
++
++
+ /* end of xf86Xinput.c */
+diff -uNr xorg-server-1.9.0.orig//hw/xfree86/modes/xf86Crtc.c xorg-server-1.9.0/hw/xfree86/modes/xf86Crtc.c
+--- xorg-server-1.9.0.orig//hw/xfree86/modes/xf86Crtc.c	2010-07-20 05:24:12.000000000 +0200
++++ xorg-server-1.9.0/hw/xfree86/modes/xf86Crtc.c	2010-08-28 21:28:48.000000000 +0200
+@@ -387,6 +387,12 @@
+     if (didLock)
+ 	crtc->funcs->unlock (crtc);
+ 
++    /*
++     * Rotate Touchscreen
++     */
++    xf86InputRotationNotify(crtc->rotation);
++
++    
+     return ret;
+ }
+ 
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am3517-evm/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am3517-evm/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am3517-evm/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am37x-evm/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am37x-evm/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/am37x-evm/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5it/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5it/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/archos5it/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9263ek/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9263ek/xorg.conf
new file mode 100644
index 0000000..7f3eb77
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9263ek/xorg.conf
@@ -0,0 +1,11 @@
+Section "ServerLayout"
+    Identifier "default"
+    InputDevice "atmel-ts" "CorePointer"
+EndSection
+
+Section "InputDevice"
+    Identifier "atmel-ts"
+    Driver "evdev"
+    Option "SwapAxes" "1"
+    Option "Device" "/dev/input/touchscreen0"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9g45ek/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9g45ek/xorg.conf
new file mode 100644
index 0000000..0502f87
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/at91sam9g45ek/xorg.conf
@@ -0,0 +1,23 @@
+Section "ServerLayout"
+    Identifier "default"
+    InputDevice "atmel-tsadcc" "CorePointer"
+EndSection
+
+Section "InputDevice"
+    Identifier "atmel-tsadcc"
+    Driver "evdev"
+    Option "Device" "/dev/input/touchscreen0"
+EndSection
+
+Section "InputDevice"
+	Driver		"mouse"
+	Identifier	"Mouse[1]"
+	Option		"Buttons"	"10"
+	Option		"Device"	"/dev/input/mice"
+EndSection
+
+Section	"InputDevice"
+	Driver		"kbd"
+	Identifier	"Keyboard[0]"
+	Option		"Protocol" "Standard"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/babbage/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/babbage/xorg.conf
new file mode 100644
index 0000000..d4d41db
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/babbage/xorg.conf
@@ -0,0 +1,56 @@
+#
+# X11 configuration for i.MX51 Babbage EVK
+# Based on pm9263 by Koan sas
+#
+
+Section "Monitor"
+        Identifier      "Display"
+EndSection
+
+Section "Device"
+        Identifier      "fbdevice"
+        Driver  	"fbdev"
+	Option 		"fbdev" "/dev/fb0"
+	Option 		"shadowfb" "true"
+EndSection
+
+Section "Screen"
+        Identifier      "fbscreen"
+        Device  	"fbdevice"
+        Monitor 	"Display"
+EndSection
+
+Section "InputDevice"
+        Identifier      "mxc_ts"
+        Driver          "evdev"
+        Option          "SwapAxes" "0"
+        Option          "Device" "/dev/input/touchscreen0"
+EndSection
+
+Section "InputDevice"
+        Identifier      "Generic Mouse"
+        Driver          "mouse"   
+        Option          "CorePointer"
+EndSection
+
+Section "InputDevice"
+        Identifier      "Keypad"
+        Driver          "evdev"
+        Option          "Device"        "/dev/input/event0"
+#        Option          "XkbModel"      "nokiarx51"
+#        Option          "XkbLayout"     "us"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Layout"
+        Screen  	"fbscreen"
+        InputDevice 	"mxc_ts" "CorePointer"
+	InputDevice     "Keypad"
+# Enable mouse only if necessary, it may interfere with touchscreen behaviour
+#        InputDevice     "Generic Mouse"
+EndSection
+
+#Section "ServerFlags"
+#	Option "AutoAddDevices" "false"
+#EndSection
+
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/beagleboard/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/beagleboard/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/beagleboard/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug/xorg.conf
new file mode 100644
index 0000000..cf684ec
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug/xorg.conf
@@ -0,0 +1,75 @@
+#
+# Initial version of X11 configuration for BugLabs BUG device.
+#
+# Up to 2 LCD modules are supported (as DISPLAY=0.0/0.1).
+# Touchscreen on both screen works properly (req tslib 0.0.6 driver).
+#
+# Mouse is not supported yet because the evdev driver need a precise
+# dev node and evdev dev nodes are somewhat random
+#
+
+Section "Monitor"
+        Identifier      "Monitor 1"
+EndSection
+
+Section "Monitor"
+        Identifier      "Monitor 2"
+EndSection
+
+Section "Device"
+        Identifier      "fbdev Device 2"
+        Driver  "fbdev"
+	Option "fbdev" "/dev/fb2"
+	Option "shadowfb" "true"
+EndSection
+
+Section "Device"
+        Identifier      "fbdev Device 1"
+        Driver  "fbdev"
+	Option "fbdev" "/dev/fb1"
+	Option "shadowfb" "true"
+EndSection
+
+Section "Screen"
+        Identifier      "fbdev Screen 2"
+        Device  "fbdev Device 2"
+        Monitor "Monitor 2"
+EndSection
+
+Section "Screen"
+        Identifier      "fbdev Screen 1"
+        Device  "fbdev Device 1"
+        Monitor "Monitor 1"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Layout"
+        Screen  "fbdev Screen 1"
+        Screen  "fbdev Screen 2" Below "fbdev Screen 1"
+        InputDevice "ts4"
+        InputDevice "ts5"
+        InputDevice "Keyboard"
+EndSection
+
+Section "InputDevice"
+    Identifier "ts5"
+    Driver "tslib"
+    Option "Device" "/dev/input/bmi_lcd_ts5"
+    Option "ScreenNumber"  "1"
+EndSection
+
+Section "InputDevice"
+    Identifier "ts4"
+    Driver "tslib"
+    Option "Device" "/dev/input/bmi_lcd_ts4"
+    Option "ScreenNumber"  "0"
+EndSection
+
+Section "InputDevice"
+	Identifier  "Keyboard"
+	Driver      "kbd"
+EndSection
+
+Section "ServerFlags"
+	Option "AutoAddDevices" "false"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug20/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug20/xorg.conf
new file mode 100644
index 0000000..6301d06
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/bug20/xorg.conf
@@ -0,0 +1,37 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+#       Load    "type1"                        
+#       Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+		InputDevice "bmi-lcd-ts" "CorePointer"
+EndSection                                              
+
+Section "InputDevice"
+		Identifier "bmi-lcd-ts"
+		Driver "tslib"
+		Option "SwapAxes" "1"
+		Option "Device" "/dev/input/touchscreen0"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/cm-t35/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/cm-t35/xorg.conf
new file mode 100644
index 0000000..07d849d
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/cm-t35/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"
+        Load    "extmod"
+        Load    "dbe"
+        Load    "glx"
+        Load    "freetype"
+        Load    "type1"
+        Load    "record"
+        Load    "dri"
+EndSection
+
+Section "Monitor"
+        Identifier      "Builtin Default Monitor"
+EndSection
+
+Section "Device"
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection
+
+Section "Screen"
+        Identifier      "Builtin Default fbdev Screen 0"
+        Device  "Builtin Default fbdev Device 0"
+        Monitor "Builtin Default Monitor"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Builtin Default Layout"
+        Screen  "Builtin Default fbdev Screen 0"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/dm37x-evm/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/dm37x-evm/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/dm37x-evm/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/eee701/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/eee701/xorg.conf
new file mode 100644
index 0000000..4ee293b
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/eee701/xorg.conf
@@ -0,0 +1,97 @@
+Section "ServerLayout"
+	Identifier     "X.org Configured"
+	Screen      0  "Screen0" 0 0
+	InputDevice    "Touchpad" 
+	InputDevice    "Keyboard"
+	InputDevice    "Mouse"
+	Option         "AllowEmptyInput"        "false"
+EndSection
+
+Section "Files"
+	ModulePath   "/usr/lib/xorg/modules"
+	FontPath     "/usr/share/fonts/X11/misc"
+EndSection
+
+Section "Module"
+	Load  "dbe"
+	Load  "extmod"
+EndSection
+
+Section "InputDevice"
+	Identifier  "Keyboard"
+	Driver      "kbd"
+	Option 	    "CoreKeyboard"
+EndSection
+
+Section "InputDevice"
+	Identifier  "Touchpad"
+	Driver      "synaptics"
+	Option      "TapButton1" "1"
+	Option	    "CorePointer"
+EndSection
+
+Section "InputDevice"
+        Identifier  "Mouse"
+        Driver      "mouse"
+	Option	    "Protocol" 		"Auto"
+EndSection
+
+
+Section "Monitor"
+	Identifier   "Monitor0"
+	VendorName   "Monitor Vendor"
+	ModelName    "Monitor Model"
+EndSection
+
+Section "Device"
+        ### Available Driver options are:-
+        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
+        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
+        ### [arg]: arg optional
+        #Option     "NoAccel"            	# [<bool>]
+        #Option     "SWcursor"           	# [<bool>]
+        #Option     "ColorKey"           	# <i>
+        #Option     "CacheLines"         	# <i>
+        #Option     "Dac6Bit"            	# [<bool>]
+        #Option     "DRI"                	# [<bool>]
+        #Option     "NoDDC"              	# [<bool>]
+        #Option     "ShowCache"          	# [<bool>]
+        #Option     "XvMCSurfaces"       	# <i>
+        #Option     "PageFlip"           	# [<bool>]
+	Identifier  "Card0"
+	Driver      "intel"
+	VendorName  "Unknown Vendor"
+	BoardName   "Unknown Board"
+	BusID       "PCI:0:2:0"
+EndSection
+
+Section "Screen"
+	Identifier "Screen0"
+	Device     "Card0"
+	Monitor    "Monitor0"
+	SubSection "Display"
+		Viewport   0 0
+		Depth     1
+	EndSubSection
+	SubSection "Display"
+		Viewport   0 0
+		Depth     4
+	EndSubSection
+	SubSection "Display"
+		Viewport   0 0
+		Depth     8
+	EndSubSection
+	SubSection "Display"
+		Viewport   0 0
+		Depth     15
+	EndSubSection
+	SubSection "Display"
+		Viewport   0 0
+		Depth     16
+	EndSubSection
+	SubSection "Display"
+		Viewport   0 0
+		Depth     24
+	EndSubSection
+EndSection
+
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcdream/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcdream/xorg.conf
new file mode 100644
index 0000000..be3c6ec
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcdream/xorg.conf
@@ -0,0 +1,69 @@
+Section "Monitor"
+	Identifier "Monitor0"
+	Mode "320x480"
+        	DotClock 0		
+		HTimings 320 320 320 320
+		VTimings 480 480 480 480
+		Flags    "-HSync" "-VSync"
+	EndMode
+EndSection    
+
+Section "Device"                                  
+        Identifier      "fbdev"
+        Driver  "fbdev"
+	Option "ShadowFB" "on" 
+	Option "Rotate" "CW" # comment for disabling rotation
+EndSection                                                
+
+Section "Screen"
+        Identifier "Framebuffer"
+        Device  "fbdev"
+        Monitor "Monitor0"
+        DefaultFbBpp 16
+        SubSection "Display"
+                Depth 16
+                Modes "320x480"
+        EndSubSection
+EndSection
+
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Framebuffer"        
+	InputDevice "Trackball"
+	InputDevice "Touchscreen"
+        InputDevice "Keyboard"
+EndSection        
+
+Section "InputDevice"
+    Identifier "Trackball"
+    Driver     "evdev"
+    Option     "Device"            "/dev/input/event2"
+    Option     "ScreenNumber"      "0"
+    Option     "ReportingMode"     "Raw"
+    Option     "SwapAxes"          "True" # comment for disabling rotation
+    Option     "InvertY"           "True" # comment for disabling rotation
+EndSection
+
+
+Section "InputDevice"
+	Identifier 	"Touchscreen"
+	Driver     	"evdev"
+	Option     	"Device"        	"/dev/input/event1"
+	Option		"SwapAxes" 		"True"                  # comment for disabling rotation
+	Option		"InvertY" 		"True"			# comment for disabling rotation
+	Option		"ReportingMode"		"Raw"
+EndSection
+
+Section "InputDevice"
+        Identifier  "Keyboard"
+        Driver      "kbd"
+        Option      "XkbLayout" "us"
+        Option      "XkbModel"  "htcdream"
+EndSection
+
+
+Section "ServerFlags"
+	Option "AutoAddDevices" "false"
+EndSection
+
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcleo/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcleo/xorg.conf
new file mode 100644
index 0000000..4153a26
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/htcleo/xorg.conf
@@ -0,0 +1,73 @@
+Section "Monitor"
+	Identifier "Monitor0"
+	Mode "480x800"
+        	DotClock 0		
+		HTimings 480 480 480 480
+		VTimings 800 800 800 800
+		Flags    "-HSync" "-VSync"
+	EndMode
+EndSection    
+
+
+
+Section "Device"                                  
+        Identifier      "fbdev"
+        Driver  "fbdev"
+	Option "ShadowFB" "on" 
+	#Option "Rotate" "CW" 
+EndSection                                                
+
+
+Section "Screen"                                        
+        Identifier "Framebuffer"     
+        Device  "fbdev"            
+        Monitor "Monitor"               
+	DefaultFbBpp 16
+	SubSection "Display"
+		Depth 16
+        	Modes "480x800"
+	EndSubSection
+EndSection                                              
+
+Section "Screen"
+        Identifier "480x800x16"
+        Device  "fbdev"
+        Monitor "Monitor"
+        DefaultFbBpp 16
+        SubSection "Display"
+                Depth 16
+                Modes "480x800"
+        EndSubSection
+EndSection
+
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Framebuffer"        
+	InputDevice "Touchscreen" "CorePointer"
+        InputDevice "Keyboard" "CoreKeyboard"
+EndSection        
+
+Section "InputDevice"
+    Identifier     "Mouse0"
+    Driver         "mouse"
+    Option         "Protocol" "auto"
+    Option         "Device" "/dev/input/mice"
+    Option         "Emulate3Buttons" "no"
+    Option         "ZAxisMapping" "4 5"
+EndSection
+
+
+Section "InputDevice"
+    Identifier     "Touchscreen"
+    Driver         "tslib"
+    Option         "Protocol" "auto"
+    Option         "Device" "/dev/input/event0"
+    Option         "CorePointer"    "true"
+EndSection
+
+Section "InputDevice"
+        Identifier  "Keyboard"
+        Driver      "kbd"
+        Option      "XkbLayout" "en_US"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/igep0020/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/igep0020/xorg.conf
new file mode 100644
index 0000000..07d849d
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/igep0020/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"
+        Load    "extmod"
+        Load    "dbe"
+        Load    "glx"
+        Load    "freetype"
+        Load    "type1"
+        Load    "record"
+        Load    "dri"
+EndSection
+
+Section "Monitor"
+        Identifier      "Builtin Default Monitor"
+EndSection
+
+Section "Device"
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection
+
+Section "Screen"
+        Identifier      "Builtin Default fbdev Screen 0"
+        Device  "Builtin Default fbdev Device 0"
+        Monitor "Builtin Default Monitor"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Builtin Default Layout"
+        Screen  "Builtin Default fbdev Screen 0"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ion/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ion/xorg.conf
new file mode 100644
index 0000000..95a1523
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ion/xorg.conf
@@ -0,0 +1,51 @@
+# xorg.conf (X.Org X Window System server configuration file)
+#
+# This file was generated by dexconf, the Debian X Configuration tool, using
+# values from the debconf database.
+#
+# Edit this file with caution, and see the xorg.conf manual page.
+# (Type "man xorg.conf" at the shell prompt.)
+#
+# This file is automatically updated on xserver-xorg package upgrades *only*
+# if it has not been modified since the last upgrade of the xserver-xorg
+# package.
+#
+# Note that some configuration settings that could be done previously
+# in this file, now are automatically configured by the server and settings
+# here are ignored.
+#
+# If you have edited this file but would like it to be automatically updated
+# again, run the following command:
+#   sudo dpkg-reconfigure -phigh xserver-xorg
+
+Section "Device"
+	Identifier	"NVidia"
+	Driver	"nvidia"
+#	Option	"NoLogo"	"True"
+EndSection
+
+Section "Monitor"
+        Identifier      "DELL 2007WFP"
+#        Option          "DPMS"
+        HorizSync       30.0-83.0
+        VertRefresh     56.0-76.0
+	ModeLine	"1680x1050" 119.0 1680 1728 1760 1840 1050 1053 1059 1080 -HSync +VSync
+EndSection
+
+Section "Screen"
+	Identifier	"Default Screen"
+	Device		"NVidia"
+	Monitor		"DELL 2007WFP"
+	DefaultDepth	24
+	SubSection "Display"
+		Depth		24
+		Modes		"1680x1050"
+		ViewPort	0 0
+	EndSubSection
+EndSection
+
+Section "Module"
+	Load	"glx"
+EndSection
+
+
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/iphone3g/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/iphone3g/xorg.conf
new file mode 100644
index 0000000..83ac9c1
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/iphone3g/xorg.conf
@@ -0,0 +1,29 @@
+Section "Device"
+	Identifier "Builtin Default fbdev Device 0"
+	Driver  "fbdev"
+	Option "ShadowFB" "on"
+EndSection
+
+Section "Screen"
+	Identifier "Builtin Default fbdev Screen 0"
+	Device "Builtin Default fbdev Device 0"
+EndSection
+
+
+Section "InputDevice"
+	Identifier "touchscreen"
+	Driver "evdev"
+	Option "Device" "/dev/input/event2"
+	Option "ReportingMode" "Raw"
+	Option "SendCoreEvents" "On"
+	Option "GrabDevices" "True"
+	Option "InvertY" "0"
+	Option "SwapAxes" "0"
+EndSection
+
+
+Section "ServerLayout"
+	Identifier      "Builtin Default Layout"
+	Screen  "Builtin Default fbdev Screen 0"
+	InputDevice "touchscreen" "CorePointer" "AlwaysCore"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/mh355/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/mh355/xorg.conf
new file mode 100644
index 0000000..4c275c9
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/mh355/xorg.conf
@@ -0,0 +1,47 @@
+#
+# X11 configuration for Microhard MH355 device
+# (C)2010 Koan sas - www.KoanSoftware.com
+#
+
+Section "Monitor"
+        Identifier      "Display"
+EndSection
+
+Section "Device"
+        Identifier      "fbdevice"
+        Driver  	"fbdev"
+	Option 		"fbdev" "/dev/fb0"
+	Option 		"shadowfb" "true"
+EndSection
+
+Section "Screen"
+        Identifier      "fbscreen"
+        Device  	"fbdevice"
+        Monitor 	"Display"
+EndSection
+
+Section "InputDevice"
+        Identifier      "mh355-ts"
+        Driver          "evdev"
+        Option          "SwapAxes" "1"
+        Option          "Device" "/dev/input/touchscreen0"
+EndSection
+
+Section "InputDevice"
+        Identifier      "Generic Mouse"
+        Driver          "mouse"   
+        Option          "CorePointer"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Layout"
+        Screen  	"fbscreen"
+        InputDevice 	"mh355-ts" "CorePointer"
+# Enable mouse only if necessary, it may interfere with touchscreen behaviour
+#        InputDevice     "Generic Mouse"
+EndSection
+
+Section "ServerFlags"
+	Option "AutoAddDevices" "false"
+EndSection
+
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia800/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia800/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia800/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia900/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia900/xorg.conf
new file mode 100644
index 0000000..d9d742f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/nokia900/xorg.conf
@@ -0,0 +1,62 @@
+Section "Module"
+        Load    "extmod"
+        Load    "dbe"
+	Load	"glx"
+        Load    "freetype"
+        Load    "type1"
+        Load    "record"
+	Load	"dri"
+EndSection
+
+Section "Monitor"
+        Identifier      "Default Monitor"
+EndSection
+
+Section "Device"
+        Identifier      "Default omapfb Device"
+        Driver		"omapfb"
+	Option		"fb" "/dev/fb0"
+
+EndSection
+
+Section "InputDevice"
+	Identifier	"gpio-keys"
+        Driver          "evdev"
+        Option          "Device"        "/dev/input/event0"
+EndSection
+
+Section "InputDevice"
+        Identifier	"twl4030_pwrbutton"
+        Driver          "evdev"
+        Option          "Device"        "/dev/input/event3"
+EndSection
+
+
+Section "InputDevice"
+	Identifier      "Keyboard"
+	Driver          "evdev"
+	Option		"Device"	"/dev/input/event1"
+	Option		"XkbModel"	"nokiarx51"
+	Option		"XkbLayout"	"us"
+	Option          "CoreKeyboard"
+EndSection
+
+Section "InputDevice"
+	Identifier      "Touchscreen"
+	Driver          "evdev"
+	Option          "Device"        "/dev/input/event2"
+EndSection
+
+Section "Screen"
+        Identifier      "Default Screen"
+        Device		"Default omapfb Device"
+EndSection
+
+Section "ServerLayout"
+	Identifier      "Default Layout"
+	Screen		"Default Screen"
+	InputDevice     "Touchscreen"
+	InputDevice     "Keyboard"
+	InputDevice     "gpio-keys"
+	InputDevice     "twl4030_pwrbutton"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta01/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta01/xorg.conf
new file mode 100644
index 0000000..edb5e0e
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta01/xorg.conf
@@ -0,0 +1,49 @@
+Section "Monitor"
+        Identifier      "LCD Panel"
+EndSection
+
+
+Section "Device"
+        Identifier      "Fbdev"
+        Driver          "fbdev"
+EndSection  
+
+
+Section "Screen"
+        Identifier      "Default Screen"
+        Device          "Fbdev"
+        Monitor         "LCD Panel"
+EndSection
+
+
+Section "InputDevice"
+	Identifier	"Power Button"
+	Driver		"evdev"
+	Option		"Device"	"/dev/input/event2"
+EndSection
+
+
+Section "InputDevice"
+	Identifier	"AUX Button"
+	Driver		"evdev"
+	Option		"Device"	"/dev/input/event0"
+EndSection
+
+
+Section "InputDevice"
+	Identifier	"Touchscreen"
+	Driver		"evdev"
+	Option		"Device"	"/dev/input/event1"
+EndSection
+
+Section "ServerFlags"
+	Option		"AutoAddDevices"	"False"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Default Layout"
+        Screen          "Default Screen"
+	InputDevice	"Power Button"
+	InputDevice	"AUX Button"
+	InputDevice	"Touchscreen"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta02/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta02/xorg.conf
new file mode 100644
index 0000000..de6ed1c
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/om-gta02/xorg.conf
@@ -0,0 +1,55 @@
+Section "Module"
+        Load    "glx"
+        Load	"dri2"
+EndSection
+
+
+Section "Monitor"
+        Identifier      "LCD Panel"
+EndSection
+
+
+Section "Device"
+        Identifier      "Glamo Graphics Chip"
+        Driver          "glamo"
+EndSection  
+
+
+Section "Screen"
+        Identifier      "Default Screen"
+        Device          "Glamo Graphics Chip"
+        Monitor         "LCD Panel"
+EndSection
+
+
+Section "InputDevice"
+	Identifier	"Power Button"
+	Driver		"evdev"
+	Option		"Device"	"/dev/input/event0"
+EndSection
+
+
+Section "InputDevice"
+	Identifier	"AUX Button"
+	Driver		"evdev"
+	Option		"Device"	"/dev/input/event2"
+EndSection
+
+
+Section "InputDevice"
+	Identifier	"Touchscreen"
+	Driver		"evdev"
+	Option		"Device"	"/dev/input/event1"
+EndSection
+
+Section "ServerFlags"
+        Option "AutoAddDevices" "False"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Default Layout"
+        Screen          "Default Screen"
+	InputDevice	"Power Button"
+	InputDevice	"AUX Button"
+	InputDevice	"Touchscreen"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-pandora/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-pandora/xorg.conf
new file mode 100644
index 0000000..446ac97
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-pandora/xorg.conf
@@ -0,0 +1,24 @@
+Section "Module"
+        Load    "extmod"
+        Load    "dbe"
+EndSection
+
+Section "Monitor"
+        Identifier      "Builtin Default Monitor"
+EndSection
+
+Section "Device"
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection
+
+Section "Screen"
+        Identifier      "Builtin Default fbdev Screen 0"
+        Device  "Builtin Default fbdev Device 0"
+        Monitor "Builtin Default Monitor"
+EndSection                                         
+
+Section "ServerLayout"
+        Identifier      "Builtin Default Layout"
+        Screen          "Builtin Default fbdev Screen 0"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-touchbook/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-touchbook/xorg.conf
new file mode 100644
index 0000000..56425ab
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3-touchbook/xorg.conf
@@ -0,0 +1,25 @@
+Section "Module"
+        Load    "extmod"
+        Load    "dbe"
+EndSection
+
+Section "Monitor"
+        Identifier      "Builtin Default Monitor"
+EndSection
+
+Section "Device"
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "fbdev"
+        Option  "ShadowFB"              "false"
+EndSection
+
+Section "Screen"
+        Identifier      "Builtin Default fbdev Screen 0"
+        Device  "Builtin Default fbdev Device 0"
+        Monitor "Builtin Default Monitor"
+EndSection                                         
+
+Section "ServerLayout"
+        Identifier      "Builtin Default Layout"
+        Screen          "Builtin Default fbdev Screen 0"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3evm/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3evm/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omap3evm/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom2/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom2/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom2/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom36x/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom36x/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/omapzoom36x/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/overo/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/overo/xorg.conf
new file mode 100644
index 0000000..983bb08
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/overo/xorg.conf
@@ -0,0 +1,29 @@
+Section "Module"                                       
+        Load    "extmod"                                
+        Load    "dbe"                           
+        Load    "glx"                                           
+        Load    "freetype"                             
+        Load    "type1"                        
+        Load    "record"                    
+        Load    "dri"                       
+EndSection                            
+
+Section "Monitor"                                                                    
+        Identifier      "Builtin Default Monitor"
+EndSection                                       
+
+Section "Device"                                  
+        Identifier      "Builtin Default fbdev Device 0"
+        Driver  "omapfb"
+EndSection                                                
+
+Section "Screen"                                        
+        Identifier      "Builtin Default fbdev Screen 0"     
+        Device  "Builtin Default fbdev Device 0"            
+        Monitor "Builtin Default Monitor"               
+EndSection                                              
+
+Section "ServerLayout"                                 
+        Identifier      "Builtin Default Layout"                                     
+        Screen  "Builtin Default fbdev Screen 0"        
+EndSection                                              
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/palmpre/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/palmpre/xorg.conf
new file mode 100644
index 0000000..6915b87
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/palmpre/xorg.conf
@@ -0,0 +1,58 @@
+Section "Module"
+    Load    "extmod" 
+    Load    "dbe"
+    Load    "freetype"
+    Load    "type1"
+    Load    "record"
+    Load    "dri"
+EndSection
+
+Section "Monitor"
+    Identifier  "Builtin Default Monitor"
+EndSection
+
+Section "Device"
+    Identifier  "Builtin Default fbdev Device 0"
+    Driver      "omapfb"
+    Option      "fb" "/dev/fb0"
+EndSection
+
+Section "Screen"
+    Identifier  "Builtin Default fbdev Screen 0"
+    Device      "Builtin Default fbdev Device 0"
+    Monitor     "Builtin Default Monitor"
+EndSection
+
+Section "ServerLayout"
+    Identifier  "Builtin Default Layout"
+    Screen      "Builtin Default fbdev Screen 0"
+    InputDevice "Touchscreen" "CorePointer"
+EndSection
+
+Section "InputDevice"
+    Identifier  "Touchscreen"
+    Driver      "evdev"
+    Option      "Device"                "/dev/input/event6"
+    Option      "SendCoreEvents"        "true"
+    Option      "Protocol"              "Auto"
+    Option      "Width"                 "320"
+    Option      "Height"                "528"
+    Option      "EmulateRightButton"    "1"
+    Option      "CorePointer"           "true"
+EndSection
+
+Section "InputDevice"
+    Identifier "Keyboard"
+    Driver     "palm-pre"
+    Option     "Device"                "/dev/input/event2"
+    Option      "SendCoreEvents"        "true"
+    #Option     "XkbModel"              "palm-pre"
+    Option     "XkbLayout"             "palm-pre"
+#    Option     "XKbOptions" ""
+EndSection
+
+#Section "InputDevice"
+#   Identifier   "Keyboard"
+#   Driver 	"evdev"
+#   Option       "Device"                "/dev/input/event2"
+#EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ronetix-pm9263/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ronetix-pm9263/xorg.conf
new file mode 100644
index 0000000..d4651ad
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/ronetix-pm9263/xorg.conf
@@ -0,0 +1,47 @@
+#
+# X11 configuration for Ronetix PM9263 device.
+# (C)2009-2010 Koan sas - www.KoanSoftware.com
+#
+
+Section "Monitor"
+        Identifier      "Display"
+EndSection
+
+Section "Device"
+        Identifier      "fbdevice"
+        Driver  	"fbdev"
+	Option 		"fbdev" "/dev/fb0"
+	Option 		"shadowfb" "true"
+EndSection
+
+Section "Screen"
+        Identifier      "fbscreen"
+        Device  	"fbdevice"
+        Monitor 	"Display"
+EndSection
+
+Section "InputDevice"
+        Identifier      "atmel-ts"
+        Driver          "evdev"
+        Option          "SwapAxes" "1"
+        Option          "Device" "/dev/input/touchscreen0"
+EndSection
+
+Section "InputDevice"
+        Identifier      "Generic Mouse"
+        Driver          "mouse"   
+        Option          "CorePointer"
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Layout"
+        Screen  	"fbscreen"
+        InputDevice 	"atmel-ts" "CorePointer"
+# Enable mouse only if necessary, it may interfere with touchscreen behaviour
+#        InputDevice     "Generic Mouse"
+EndSection
+
+Section "ServerFlags"
+	Option "AutoAddDevices" "false"
+EndSection
+
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/spitz/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/spitz/xorg.conf
new file mode 100644
index 0000000..224df5c
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/spitz/xorg.conf
@@ -0,0 +1,49 @@
+Section "Device"
+        Identifier      "Generic Video Card"
+        Driver          "fbdev"
+        Option          "UseFBDev"              "true"
+        Option          "Rotate"                "CW"
+EndSection
+
+Section "Monitor"
+        Identifier      "Generic Monitor"
+        Option          "DPMS"
+        HorizSync       28-32
+        VertRefresh     43-60
+EndSection
+
+Section "Screen"
+        Identifier      "Default Screen"
+        Device          "Generic Video Card"
+        Monitor         "Generic Monitor"
+        DefaultDepth    16
+        SubSection "Display"
+                Depth           1
+                Modes           "640x480"
+        EndSubSection
+        SubSection "Display"
+                Depth           4
+                Modes           "640x480"
+        EndSubSection
+        SubSection "Display"
+                Depth           8
+                Modes           "640x480"
+        EndSubSection
+        SubSection "Display"
+                Depth           15
+                Modes           "640x480"
+        EndSubSection
+        SubSection "Display"
+                Depth           16
+                Modes           "640x480"
+        EndSubSection
+        SubSection "Display"
+                Depth           24
+                Modes           "640x480"
+        EndSubSection
+EndSection
+
+Section "ServerLayout"
+        Identifier      "Default Layout"
+        Screen          "Default Screen"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/vortex86sx/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/vortex86sx/xorg.conf
new file mode 100644
index 0000000..0f03faf
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/vortex86sx/xorg.conf
@@ -0,0 +1,13 @@
+Section "Device"
+	Identifier  "Card0"
+	Driver      "vesa"
+EndSection
+
+# SIS driver is proper one for this device but fails with misc errors.
+#Section "Device"
+#	Identifier  "Card0"
+#	Driver      "sis"
+#
+#	Disable MMX/SSE tests
+#	Option      "BenchmarkMemCpy" "off"
+#EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-ml507/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-ml507/xorg.conf
new file mode 100644
index 0000000..2950193
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-ml507/xorg.conf
@@ -0,0 +1,39 @@
+Section "Monitor"
+	Identifier "LCD Panel"
+EndSection
+
+Section "Device"
+    Identifier  "Xilinx frame buffer"
+    Driver      "fbdev"
+EndSection
+
+Section "Screen"
+    Identifier  "Default Screen"
+    Device      "Xilinx frame buffer"
+    Monitor     "LCD Panel"
+	SubSection "Display"
+		Depth   24
+        Modes   "640x480"
+	EndSubSection
+EndSection
+
+Section "InputDevice"
+    Identifier  "Keyboard"
+    Driver      "kbd"
+#    Option      "XkbLayout" "es"
+#    Option      "XkbModel"  "pc105"
+EndSection
+
+Section "InputDevice"
+    Identifier  "Mouse"
+    Driver      "mouse"
+    Option      "protocol" "auto"
+    Option      "device" "/dev/input/mice"
+EndSection
+
+Section "ServerLayout"
+    Identifier  "Default Layout"
+    Screen      "Default Screen"
+    InputDevice "Keyboard"
+    InputDevice "Mouse"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-virtex5/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-virtex5/xorg.conf
new file mode 100644
index 0000000..61f0f9f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xilinx-virtex5/xorg.conf
@@ -0,0 +1,38 @@
+# Xorg conf file for Xilinx platforms
+Section "Monitor"
+	Identifier "LCD Panel"
+EndSection
+
+Section "Device"
+    Identifier  "Xilinx frame buffer"
+    Driver      "fbdev"
+EndSection
+
+Section "Screen"
+    Identifier  "Default Screen"
+    Device      "Xilinx frame buffer"
+    Monitor     "LCD Panel"
+	SubSection "Display"
+		Depth   24
+        Modes   "640x480"
+	EndSubSection
+EndSection
+
+Section "InputDevice"
+    Identifier  "Keyboard"
+    Driver      "kbd"
+EndSection
+
+Section "InputDevice"
+    Identifier  "Mouse"
+    Driver      "mouse"
+    Option      "protocol" "auto"
+    Option      "device" "/dev/input/mice"
+EndSection
+
+Section "ServerLayout"
+    Identifier  "Default Layout"
+    Screen      0 "Default Screen" 0 0
+    InputDevice "Keyboard"
+    InputDevice "Mouse"
+EndSection
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xorg.conf b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf/xorg.conf
new file mode 100644
index 0000000..e69de29
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf_0.1.bb b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf_0.1.bb
new file mode 100644
index 0000000..ae4493d
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg-conf_0.1.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Machine specific xorg.conf files"
+PR = "r43"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+SRC_URI = "file://xorg.conf"
+
+do_install() {
+	install -d ${D}/${sysconfdir}/X11
+	install -m 0644 ${WORKDIR}/xorg.conf ${D}/${sysconfdir}/X11/
+}
+
+# Set some dependencies to make the confs actually work
+RDEPENDS_omap3 = "xf86-video-omapfb"
+
+CONFFILES_${PN} += "${sysconfdir}/X11/xorg.conf"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.10.0.901.bb b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.10.0.901.bb
new file mode 100644
index 0000000..c1d9566
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.10.0.901.bb
@@ -0,0 +1,29 @@
+# Assign it here, since the hal->udev transition happens post 1.7 in angstrom
+DISTRO_XORG_CONFIG_MANAGER_angstrom = "udev"
+
+require xorg-xserver-common.inc
+
+DESCRIPTION = "the X.Org X server"
+DEPENDS += "pixman libpciaccess openssl dri2proto glproto xorg-minimal-fonts font-util-native"
+PE = "2"
+PR = "${INC_PR}.0"
+
+SRC_URI += " \
+            file://hack-fbdev-ignore-return-mode.patch \
+            file://hack-assume-pixman-supports-overlapped-blt.patch \
+           "
+SRC_URI[md5sum] = "d750cf5f6342b548b7ac2be56e9d1841"
+SRC_URI[sha256sum] = "de18f52c35fc3d3f18c7e905296f9de5ac42dc71e4e01da9ae8e154a78c7771c"
+
+do_install_prepend() {
+        mkdir -p ${D}/${libdir}/X11/fonts
+}
+
+# The NVidia driver requires Xinerama support in the X server. Ion uses it.
+PACKAGE_ARCH_ion = "${MACHINE_ARCH}"
+XINERAMA = "${@['--disable-xinerama','--enable-xinerama'][bb.data.getVar('MACHINE',d) in ['ion']]}"
+
+EXTRA_OECONF += " ${CONFIG_MANAGER_OPTION} ${XINERAMA} --disable-kdrive --disable-xephyr --disable-xsdl --disable-xfake --disable-xfbdev --disable-dmx"
+EXTRA_OECONF += " --enable-dri2 --disable-unit-tests --disable-docs --disable-devel-docs"
+
+export LDFLAGS += " -ldl "
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.9.4.bb b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.9.4.bb
new file mode 100644
index 0000000..086ac17
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_1.9.4.bb
@@ -0,0 +1,31 @@
+# Assign it here, since the hal->udev transition happens post 1.7 in angstrom
+DISTRO_XORG_CONFIG_MANAGER_angstrom = "udev"
+
+require xorg-xserver-common.inc
+
+DESCRIPTION = "the X.Org X server"
+DEPENDS += "pixman libpciaccess openssl dri2proto glproto xorg-minimal-fonts font-util-native"
+PE = "2"
+PR = "${INC_PR}.0"
+
+SRC_URI += " \
+            file://dolt-fix.patch \
+            file://randr-support.patch \
+            file://hack-fbdev-ignore-return-mode.patch \
+            file://hack-assume-pixman-supports-overlapped-blt.patch \
+           "
+SRC_URI[md5sum] = "040f091dfdfb4e335116eb0032cc690b"
+SRC_URI[sha256sum] = "ad11047ebba58f2e37b03c70c986db3ea0cc0f1a19d2d3612713ab77b8ec2458"
+
+do_install_prepend() {
+        mkdir -p ${D}/${libdir}/X11/fonts
+}
+
+# The NVidia driver requires Xinerama support in the X server. Ion uses it.
+PACKAGE_ARCH_ion = "${MACHINE_ARCH}"
+XINERAMA = "${@['--disable-xinerama','--enable-xinerama'][bb.data.getVar('MACHINE',d) in ['ion']]}"
+
+EXTRA_OECONF += " ${CONFIG_MANAGER_OPTION} ${XINERAMA} --disable-kdrive --disable-xephyr --disable-xsdl --disable-xfake --disable-xfbdev --disable-dmx"
+EXTRA_OECONF += " --enable-dri2 --disable-unit-tests --disable-docs --disable-devel-docs"
+
+export LDFLAGS += " -ldl "
diff --git a/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_git.bb b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_git.bb
new file mode 100644
index 0000000..be441a3
--- /dev/null
+++ b/meta-oe/recipes-graphics/xorg-xserver/xserver-xorg_git.bb
@@ -0,0 +1,38 @@
+# Assign it here, since the hal->udev transition happens post 1.7 in angstrom
+DISTRO_XORG_CONFIG_MANAGER_angstrom = "udev"
+
+require xorg-xserver-common.inc
+
+LICENSE = "MIT-X"
+LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00"
+
+DESCRIPTION = "the X.Org X server"
+DEPENDS += "pixman libpciaccess openssl dri2proto glproto xorg-minimal-fonts font-util-native"
+PV = "1.10.0.901"
+PR = "${INC_PR}.0"
+PR_append = "+gitr${SRCPV}"
+PE = "2"
+
+#DEFAULT_PREFERENCE = "-1"
+
+SRCREV = "1f51fe4f748b2997e466863d8387bd6791b32931"
+SRC_URI = " \
+  git://anongit.freedesktop.org/xorg/xserver;protocol=git;branch=server-1.10-branch \
+  file://hack-fbdev-ignore-return-mode.patch \
+  file://hack-assume-pixman-supports-overlapped-blt.patch \
+"
+
+S = "${WORKDIR}/git"
+
+do_install_prepend() {
+        mkdir -p ${D}/${libdir}/X11/fonts
+}
+
+# The NVidia driver requires Xinerama support in the X server. Ion uses it.
+PACKAGE_ARCH_ion = "${MACHINE_ARCH}"
+XINERAMA = "${@['--disable-xinerama','--enable-xinerama'][bb.data.getVar('MACHINE',d) in ['ion']]}"
+
+EXTRA_OECONF += " ${CONFIG_MANAGER_OPTION} ${XINERAMA} --disable-kdrive --disable-xephyr --disable-xsdl --disable-xfake --disable-xfbdev --disable-dmx"
+EXTRA_OECONF += " --enable-dri2 --disable-unit-tests --disable-docs --disable-devel-docs"
+
+export LDFLAGS += " -ldl "
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xTs_Calibrate.xinput_calibrator.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xTs_Calibrate.xinput_calibrator.patch
new file mode 100644
index 0000000..c04ad96
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xTs_Calibrate.xinput_calibrator.patch
@@ -0,0 +1,12 @@
+Index: xserver-common/X11/Xsession.d/89xTs_Calibrate_xinput_calibrator
+===================================================================
+--- xserver-common/X11/Xsession.d/89xTs_Calibrate_xinput_calibrator	(revision 0)
++++ xserver-common/X11/Xsession.d/89xTs_Calibrate_xinput_calibrator	(revision 0)
+@@ -0,0 +1,7 @@
++#!/bin/sh
++
++if [ -e /usr/bin/xinput_calibrator_once.sh ] ; then
++  if [ -e /etc/pointercal.xinput ] ; then
++    /usr/bin/xinput_calibrator_once.sh
++  fi
++fi
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xdgautostart.sh b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xdgautostart.sh
new file mode 100644
index 0000000..9886f9f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/89xdgautostart.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+XDGAUTOSTART=/etc/xdg/autostart
+if [ -d $XDGAUTOSTART ] ; then
+    for SCRIPT in $XDGAUTOSTART/*; do
+        CMD=`grep ^Exec= $SCRIPT | cut -d '=' -f 2`
+        $CMD &
+    done
+fi
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/90xXWindowManager.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/90xXWindowManager.patch
new file mode 100644
index 0000000..be5f5ce
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/90xXWindowManager.patch
@@ -0,0 +1,11 @@
+Index: xserver-common/X11/Xsession.d/90xXWindowManager
+===================================================================
+--- xserver-common/X11/Xsession.d/90xXWindowManager	(revision 0)
++++ xserver-common/X11/Xsession.d/90xXWindowManager	(revision 0)
+@@ -0,0 +1,6 @@
++#!/bin/sh
++if [ -x $HOME/.Xsession ]; then
++    exec $HOME/.Xsession
++else
++    exec /usr/bin/x-window-manager
++fi
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.dpi.for.gta.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.dpi.for.gta.patch
new file mode 100644
index 0000000..f6e36d9
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.dpi.for.gta.patch
@@ -0,0 +1,29 @@
+xdpyinfo returns 96, but 285 is right value (but 280 is used as it renders 4 columns of illume icons instead of 3 and empty space)
+
+diff -uNr xserver-common-1.33.orig//X11/xserver-common xserver-common-1.33/X11/xserver-common
+--- xserver-common-1.33.orig//X11/xserver-common	2010-04-28 23:27:10.000000000 +0200
++++ xserver-common-1.33/X11/xserver-common	2010-04-28 23:29:07.000000000 +0200
+@@ -133,19 +133,19 @@
+             ARGS="$ARGS -screen ${SCREEN_SIZE}"
+             DPI="225" ;;
+         "gta01" )
+-            DPI="285"
++            DPI="280"
+             if [ "$XSERVER" != "Xorg" ] ; then
+                 ARGS="$ARGS -screen 480x640"
+             else
+-                ARGS="$ARGS -nocursor"
++                ARGS="$ARGS -dpi ${DPI} -nocursor"
+             fi
+             ;;
+         "gta02")
+-            DPI="285"
++            DPI="280"
+             if [ "$XSERVER" != "Xorg" ] ; then
+                 ARGS="$ARGS -screen ${SCREEN_SIZE}"
+             else
+-                ARGS="$ARGS -nocursor"
++                ARGS="$ARGS -dpi ${DPI} -nocursor"
+             fi
+             ;;
+         "motorola_ezx_platform")
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.nocursor.for.gta.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.nocursor.for.gta.patch
new file mode 100644
index 0000000..bd16efc
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.nocursor.for.gta.patch
@@ -0,0 +1,20 @@
+diff -uNr xserver-common-1.33.orig//X11/xserver-common xserver-common-1.33/X11/xserver-common
+--- xserver-common-1.33.orig//X11/xserver-common	2010-04-28 10:44:23.000000000 +0200
++++ xserver-common-1.33/X11/xserver-common	2010-04-28 10:46:41.000000000 +0200
+@@ -136,12 +136,16 @@
+             DPI="285"
+             if [ "$XSERVER" != "Xorg" ] ; then
+                 ARGS="$ARGS -screen 480x640"
++            else
++                ARGS="$ARGS -nocursor"
+             fi
+             ;;
+         "gta02")
+             DPI="285"
+             if [ "$XSERVER" != "Xorg" ] ; then
+                 ARGS="$ARGS -screen ${SCREEN_SIZE}"
++            else
++                ARGS="$ARGS -nocursor"
+             fi
+             ;;
+         "motorola_ezx_platform")
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.xserver-system.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.xserver-system.patch
new file mode 100644
index 0000000..5d9d5d1
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.add.xserver-system.patch
@@ -0,0 +1,12 @@
+diff -uNr xserver-common-1.33.orig//X11/xserver-common xserver-common-1.33/X11/xserver-common
+--- xserver-common-1.33.orig//X11/xserver-common        2010-04-28 23:27:10.000000000 +0200
++++ xserver-common-1.33/X11/xserver-common      2010-04-28 23:29:07.000000000 +0200
+@@ -192,3 +196,8 @@
+ if [ "$XSERVER" != "Xorg" ] ; then
+     ARGS="$ARGS $MOUSE"
+ fi
++
++# let a local script modify the variables                    
++if [ -e /etc/X11/xserver-system ] ; then                    
++       . /etc/X11/xserver-system                    
++fi                    
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.n900.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.n900.patch
new file mode 100644
index 0000000..4d36f5f
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/Xserver.n900.patch
@@ -0,0 +1,17 @@
+diff -uri xserver-common-1.33.orig/X11/xserver-common xserver-common-1.33/X11/xserver-common
+--- xserver-common-1.33.orig/X11/xserver-common	2010-09-14 17:10:35.955430177 +0200
++++ xserver-common-1.33/X11/xserver-common	2010-09-14 17:17:12.484423440 +0200
+@@ -132,6 +132,13 @@
+         "nokia_n800" | "nokia_rx-44" | "nokia_n770")
+             ARGS="$ARGS -screen ${SCREEN_SIZE}"
+             DPI="225" ;;
++        "nokia_rx-51_board" )                                     
++            DPI="267"                                    
++            if [ "$XSERVER" != "Xorg" ] ; then                    
++                ARGS="$ARGS -screen ${SCREEN_SIZE}"               
++            else                                                  
++                ARGS="$ARGS -dpi ${DPI} -nocursor"       
++            fi ;;                                                    
+         "gta01" )
+             DPI="280"
+             if [ "$XSERVER" != "Xorg" ] ; then
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/gplv2-license.patch b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/gplv2-license.patch
new file mode 100644
index 0000000..ec93253
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/gplv2-license.patch
@@ -0,0 +1,353 @@
+COPYING: add GPLv2 license file
+
+this is a local file recipe and the license file is missing.In order
+to pass the license checksum checking, the license file is needed. So
+this patch add the GPLv2 license file.
+
+Signed-off-by: Yu Ke <ke.yu at intel.com>
+
+diff --git a/COPYING b/COPYING
+new file mode 100644
+index 0000000..d511905
+--- /dev/null
++++ b/COPYING
+@@ -0,0 +1,339 @@
++		    GNU GENERAL PUBLIC LICENSE
++		       Version 2, June 1991
++
++ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
++ Everyone is permitted to copy and distribute verbatim copies
++ of this license document, but changing it is not allowed.
++
++			    Preamble
++
++  The licenses for most software are designed to take away your
++freedom to share and change it.  By contrast, the GNU General Public
++License is intended to guarantee your freedom to share and change free
++software--to make sure the software is free for all its users.  This
++General Public License applies to most of the Free Software
++Foundation's software and to any other program whose authors commit to
++using it.  (Some other Free Software Foundation software is covered by
++the GNU Lesser General Public License instead.)  You can apply it to
++your programs, too.
++
++  When we speak of free software, we are referring to freedom, not
++price.  Our General Public Licenses are designed to make sure that you
++have the freedom to distribute copies of free software (and charge for
++this service if you wish), that you receive source code or can get it
++if you want it, that you can change the software or use pieces of it
++in new free programs; and that you know you can do these things.
++
++  To protect your rights, we need to make restrictions that forbid
++anyone to deny you these rights or to ask you to surrender the rights.
++These restrictions translate to certain responsibilities for you if you
++distribute copies of the software, or if you modify it.
++
++  For example, if you distribute copies of such a program, whether
++gratis or for a fee, you must give the recipients all the rights that
++you have.  You must make sure that they, too, receive or can get the
++source code.  And you must show them these terms so they know their
++rights.
++
++  We protect your rights with two steps: (1) copyright the software, and
++(2) offer you this license which gives you legal permission to copy,
++distribute and/or modify the software.
++
++  Also, for each author's protection and ours, we want to make certain
++that everyone understands that there is no warranty for this free
++software.  If the software is modified by someone else and passed on, we
++want its recipients to know that what they have is not the original, so
++that any problems introduced by others will not reflect on the original
++authors' reputations.
++
++  Finally, any free program is threatened constantly by software
++patents.  We wish to avoid the danger that redistributors of a free
++program will individually obtain patent licenses, in effect making the
++program proprietary.  To prevent this, we have made it clear that any
++patent must be licensed for everyone's free use or not licensed at all.
++
++  The precise terms and conditions for copying, distribution and
++modification follow.
++
++		    GNU GENERAL PUBLIC LICENSE
++   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
++
++  0. This License applies to any program or other work which contains
++a notice placed by the copyright holder saying it may be distributed
++under the terms of this General Public License.  The "Program", below,
++refers to any such program or work, and a "work based on the Program"
++means either the Program or any derivative work under copyright law:
++that is to say, a work containing the Program or a portion of it,
++either verbatim or with modifications and/or translated into another
++language.  (Hereinafter, translation is included without limitation in
++the term "modification".)  Each licensee is addressed as "you".
++
++Activities other than copying, distribution and modification are not
++covered by this License; they are outside its scope.  The act of
++running the Program is not restricted, and the output from the Program
++is covered only if its contents constitute a work based on the
++Program (independent of having been made by running the Program).
++Whether that is true depends on what the Program does.
++
++  1. You may copy and distribute verbatim copies of the Program's
++source code as you receive it, in any medium, provided that you
++conspicuously and appropriately publish on each copy an appropriate
++copyright notice and disclaimer of warranty; keep intact all the
++notices that refer to this License and to the absence of any warranty;
++and give any other recipients of the Program a copy of this License
++along with the Program.
++
++You may charge a fee for the physical act of transferring a copy, and
++you may at your option offer warranty protection in exchange for a fee.
++
++  2. You may modify your copy or copies of the Program or any portion
++of it, thus forming a work based on the Program, and copy and
++distribute such modifications or work under the terms of Section 1
++above, provided that you also meet all of these conditions:
++
++    a) You must cause the modified files to carry prominent notices
++    stating that you changed the files and the date of any change.
++
++    b) You must cause any work that you distribute or publish, that in
++    whole or in part contains or is derived from the Program or any
++    part thereof, to be licensed as a whole at no charge to all third
++    parties under the terms of this License.
++
++    c) If the modified program normally reads commands interactively
++    when run, you must cause it, when started running for such
++    interactive use in the most ordinary way, to print or display an
++    announcement including an appropriate copyright notice and a
++    notice that there is no warranty (or else, saying that you provide
++    a warranty) and that users may redistribute the program under
++    these conditions, and telling the user how to view a copy of this
++    License.  (Exception: if the Program itself is interactive but
++    does not normally print such an announcement, your work based on
++    the Program is not required to print an announcement.)
++
++These requirements apply to the modified work as a whole.  If
++identifiable sections of that work are not derived from the Program,
++and can be reasonably considered independent and separate works in
++themselves, then this License, and its terms, do not apply to those
++sections when you distribute them as separate works.  But when you
++distribute the same sections as part of a whole which is a work based
++on the Program, the distribution of the whole must be on the terms of
++this License, whose permissions for other licensees extend to the
++entire whole, and thus to each and every part regardless of who wrote it.
++
++Thus, it is not the intent of this section to claim rights or contest
++your rights to work written entirely by you; rather, the intent is to
++exercise the right to control the distribution of derivative or
++collective works based on the Program.
++
++In addition, mere aggregation of another work not based on the Program
++with the Program (or with a work based on the Program) on a volume of
++a storage or distribution medium does not bring the other work under
++the scope of this License.
++
++  3. You may copy and distribute the Program (or a work based on it,
++under Section 2) in object code or executable form under the terms of
++Sections 1 and 2 above provided that you also do one of the following:
++
++    a) Accompany it with the complete corresponding machine-readable
++    source code, which must be distributed under the terms of Sections
++    1 and 2 above on a medium customarily used for software interchange; or,
++
++    b) Accompany it with a written offer, valid for at least three
++    years, to give any third party, for a charge no more than your
++    cost of physically performing source distribution, a complete
++    machine-readable copy of the corresponding source code, to be
++    distributed under the terms of Sections 1 and 2 above on a medium
++    customarily used for software interchange; or,
++
++    c) Accompany it with the information you received as to the offer
++    to distribute corresponding source code.  (This alternative is
++    allowed only for noncommercial distribution and only if you
++    received the program in object code or executable form with such
++    an offer, in accord with Subsection b above.)
++
++The source code for a work means the preferred form of the work for
++making modifications to it.  For an executable work, complete source
++code means all the source code for all modules it contains, plus any
++associated interface definition files, plus the scripts used to
++control compilation and installation of the executable.  However, as a
++special exception, the source code distributed need not include
++anything that is normally distributed (in either source or binary
++form) with the major components (compiler, kernel, and so on) of the
++operating system on which the executable runs, unless that component
++itself accompanies the executable.
++
++If distribution of executable or object code is made by offering
++access to copy from a designated place, then offering equivalent
++access to copy the source code from the same place counts as
++distribution of the source code, even though third parties are not
++compelled to copy the source along with the object code.
++
++  4. You may not copy, modify, sublicense, or distribute the Program
++except as expressly provided under this License.  Any attempt
++otherwise to copy, modify, sublicense or distribute the Program is
++void, and will automatically terminate your rights under this License.
++However, parties who have received copies, or rights, from you under
++this License will not have their licenses terminated so long as such
++parties remain in full compliance.
++
++  5. You are not required to accept this License, since you have not
++signed it.  However, nothing else grants you permission to modify or
++distribute the Program or its derivative works.  These actions are
++prohibited by law if you do not accept this License.  Therefore, by
++modifying or distributing the Program (or any work based on the
++Program), you indicate your acceptance of this License to do so, and
++all its terms and conditions for copying, distributing or modifying
++the Program or works based on it.
++
++  6. Each time you redistribute the Program (or any work based on the
++Program), the recipient automatically receives a license from the
++original licensor to copy, distribute or modify the Program subject to
++these terms and conditions.  You may not impose any further
++restrictions on the recipients' exercise of the rights granted herein.
++You are not responsible for enforcing compliance by third parties to
++this License.
++
++  7. If, as a consequence of a court judgment or allegation of patent
++infringement or for any other reason (not limited to patent issues),
++conditions are imposed on you (whether by court order, agreement or
++otherwise) that contradict the conditions of this License, they do not
++excuse you from the conditions of this License.  If you cannot
++distribute so as to satisfy simultaneously your obligations under this
++License and any other pertinent obligations, then as a consequence you
++may not distribute the Program at all.  For example, if a patent
++license would not permit royalty-free redistribution of the Program by
++all those who receive copies directly or indirectly through you, then
++the only way you could satisfy both it and this License would be to
++refrain entirely from distribution of the Program.
++
++If any portion of this section is held invalid or unenforceable under
++any particular circumstance, the balance of the section is intended to
++apply and the section as a whole is intended to apply in other
++circumstances.
++
++It is not the purpose of this section to induce you to infringe any
++patents or other property right claims or to contest validity of any
++such claims; this section has the sole purpose of protecting the
++integrity of the free software distribution system, which is
++implemented by public license practices.  Many people have made
++generous contributions to the wide range of software distributed
++through that system in reliance on consistent application of that
++system; it is up to the author/donor to decide if he or she is willing
++to distribute software through any other system and a licensee cannot
++impose that choice.
++
++This section is intended to make thoroughly clear what is believed to
++be a consequence of the rest of this License.
++
++  8. If the distribution and/or use of the Program is restricted in
++certain countries either by patents or by copyrighted interfaces, the
++original copyright holder who places the Program under this License
++may add an explicit geographical distribution limitation excluding
++those countries, so that distribution is permitted only in or among
++countries not thus excluded.  In such case, this License incorporates
++the limitation as if written in the body of this License.
++
++  9. The Free Software Foundation may publish revised and/or new versions
++of the General Public License from time to time.  Such new versions will
++be similar in spirit to the present version, but may differ in detail to
++address new problems or concerns.
++
++Each version is given a distinguishing version number.  If the Program
++specifies a version number of this License which applies to it and "any
++later version", you have the option of following the terms and conditions
++either of that version or of any later version published by the Free
++Software Foundation.  If the Program does not specify a version number of
++this License, you may choose any version ever published by the Free Software
++Foundation.
++
++  10. If you wish to incorporate parts of the Program into other free
++programs whose distribution conditions are different, write to the author
++to ask for permission.  For software which is copyrighted by the Free
++Software Foundation, write to the Free Software Foundation; we sometimes
++make exceptions for this.  Our decision will be guided by the two goals
++of preserving the free status of all derivatives of our free software and
++of promoting the sharing and reuse of software generally.
++
++			    NO WARRANTY
++
++  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
++FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
++OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
++PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
++OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
++MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
++TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
++PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
++REPAIR OR CORRECTION.
++
++  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
++WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
++REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
++INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
++OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
++TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
++YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
++PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
++POSSIBILITY OF SUCH DAMAGES.
++
++		     END OF TERMS AND CONDITIONS
++
++	    How to Apply These Terms to Your New Programs
++
++  If you develop a new program, and you want it to be of the greatest
++possible use to the public, the best way to achieve this is to make it
++free software which everyone can redistribute and change under these terms.
++
++  To do so, attach the following notices to the program.  It is safest
++to attach them to the start of each source file to most effectively
++convey the exclusion of warranty; and each file should have at least
++the "copyright" line and a pointer to where the full notice is found.
++
++    <one line to give the program's name and a brief idea of what it does.>
++    Copyright (C) <year>  <name of author>
++
++    This program is free software; you can redistribute it and/or modify
++    it under the terms of the GNU General Public License as published by
++    the Free Software Foundation; either version 2 of the License, or
++    (at your option) any later version.
++
++    This program 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 General Public License for more details.
++
++    You should have received a copy of the GNU General Public License along
++    with this program; if not, write to the Free Software Foundation, Inc.,
++    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
++
++Also add information on how to contact you by electronic and paper mail.
++
++If the program is interactive, make it output a short notice like this
++when it starts in an interactive mode:
++
++    Gnomovision version 69, Copyright (C) year name of author
++    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
++    This is free software, and you are welcome to redistribute it
++    under certain conditions; type `show c' for details.
++
++The hypothetical commands `show w' and `show c' should show the appropriate
++parts of the General Public License.  Of course, the commands you use may
++be called something other than `show w' and `show c'; they could even be
++mouse-clicks or menu items--whatever suits your program.
++
++You should also get your employer (if you work as a programmer) or your
++school, if any, to sign a "copyright disclaimer" for the program, if
++necessary.  Here is a sample; alter the names:
++
++  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
++  `Gnomovision' (which makes passes at compilers) written by James Hacker.
++
++  <signature of Ty Coon>, 1 April 1989
++  Ty Coon, President of Vice
++
++This General Public License does not permit incorporating your program into
++proprietary programs.  If your program is a subroutine library, you may
++consider it more useful to permit linking proprietary applications with the
++library.  If this is what you want to do, use the GNU Lesser General
++Public License instead of this License.
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/setDPI.sh b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/setDPI.sh
new file mode 100644
index 0000000..04a2edd
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/setDPI.sh
@@ -0,0 +1,92 @@
+#! /bin/sh
+#
+# Copyright Matthias Hentges <devel at hentges.net> (c) 2006
+# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license)
+#
+# Filename: setDPI.sh
+# Date: 09-Apr-06
+
+# This script configures Xft.dpi dependent on your screens DPI. This insures that the same font-size
+# setting of 7 can be used on all machines.
+
+
+XDEFAULTS="/etc/X11/Xdefaults"
+
+
+
+set_dpi() {
+	
+	CURRENT_SETTING="`cat ${XDEFAULTS} | sed -n "/Xft.dpi\:/s/.*\:\(.*\)/\1/p" | sed -n "s/\ //p"`"	
+
+	if test "$CURRENT_SETTING" != "$1"
+	then
+		echo "Using Xft.dpi of $SET_SCREEN_DPI for your $SCREEN_DPI DPI screen"
+		
+		if grep -q "Xft.dpi" "$XDEFAULTS"
+		then
+			cat "${XDEFAULTS}" | sed "s/^Xft.dpi\:.*/Xft.dpi\: $SET_SCREEN_DPI/" > "${XDEFAULTS}_"
+			mv "${XDEFAULTS}_" "${XDEFAULTS}"
+		else
+			echo -e "Xft.dpi: $SET_SCREEN_DPI\n" >> "$XDEFAULTS"
+		fi
+	else
+		echo "Your $SCREEN_DPI DPI screen is already configured."
+	fi
+}
+
+set_rxvt_font() {
+
+	CURRENT_SETTING="`cat ${XDEFAULTS} | sed  -n "/Rxvt\*font/s/\(.*\pixelsize=\)\(.*\)/\2/p"`"
+
+	if test "$1" -gt 100
+	then
+	
+		# Configure the rxvt font-size for your screen here:
+		test "$1" -gt 180 -a "$1" -lt "221" && RXVT_FONT_SIZE=16
+		
+		if test -z "$RXVT_FONT_SIZE"
+		then
+			echo "WARNING: No rxvt font-size configured for a $SCREEN_DPI DPI screen!"
+			echo "Defaulting to size 9"
+			RXVT_FONT_SIZE=9
+		fi
+		
+		if test "$CURRENT_SETTING" != "$RXVT_FONT_SIZE"
+		then
+			echo "Using a rxvt font-size of $RXVT_FONT_SIZE"
+			cat ${XDEFAULTS} | sed "/Rxvt\*font/s/\(.*\pixelsize\)\(=*.*\)/\1=$RXVT_FONT_SIZE/" > ${XDEFAULTS}_
+			mv ${XDEFAULTS}_ ${XDEFAULTS}
+		else
+			echo "The rxvt font-size is already configured"
+		fi 
+	fi
+}
+
+if test -z "$DISPLAY"
+then
+	echo "DISPLAY is not set, aborting..."
+	exit 0
+fi
+
+SCREEN_DPI="`/usr/bin/xdpyinfo | grep "dots per inch" | awk '{print $2}'| sed -n "s/\(.*\)x\(.*\)/\2/p"`"
+
+if test -z "$SCREEN_DPI"
+then
+	echo "WARNING: Couldn't read your screens DPI, defaulting to 100"
+	SCREEN_DPI=100
+fi
+
+# Configure your screen here:
+test "$SCREEN_DPI" -gt 180 -a "$SCREEN_DPI" -lt "221" && SET_SCREEN_DPI=160
+test "$SCREEN_DPI" -gt 90 -a "$SCREEN_DPI" -lt "121" && SET_SCREEN_DPI=100
+
+
+if test -z "$SET_SCREEN_DPI"
+then
+	echo "WARNING: No default configuration found for your $SCREEN_DPI DPI screen!"
+	echo "Using 100 DPI"
+	SET_SCREEN_DPI=100
+fi
+
+set_dpi "$SET_SCREEN_DPI"
+set_rxvt_font "$SCREEN_DPI"
diff --git a/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb b/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
new file mode 100644
index 0000000..8269205
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
@@ -0,0 +1,38 @@
+DESCRIPTION = "Common X11 scripts and support files"
+LICENSE = "GPL"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo"
+PR = "r0"
+
+PACKAGE_ARCH = "all"
+
+RCONFLICTS_${PN} = "xserver-kdrive-common"
+RREPLACES_${PN} = "xserver-kdrive-common"
+
+# we are using a gpe-style Makefile
+inherit gpe
+
+SRC_URI[md5sum] = "82f2f84cd96610e8f7b92c700cd31c14"
+SRC_URI[sha256sum] = "cd04c33418f776b1e13fcc7af3d6bd0c7cccd03fbabd7dbcd97f88166cc34210"
+
+SRC_URI_append = " \
+                   file://gplv2-license.patch \
+                   file://setDPI.sh \
+                   file://89xdgautostart.sh"
+
+RDEPENDS_${PN}_append_shr = " xinput-calibrator "
+
+SRC_URI_append_shr = " file://89xTs_Calibrate.xinput_calibrator.patch \
+                       file://90xXWindowManager.patch \
+                       file://Xserver.add.nocursor.for.gta.patch \
+                       file://Xserver.add.xserver-system.patch \
+                       file://Xserver.add.dpi.for.gta.patch \
+		       file://Xserver.n900.patch"
+
+do_install_append() {
+	install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi"
+	install -m 0755 "${WORKDIR}/89xdgautostart.sh" "${D}/etc/X11/Xsession.d/89xdgautostart"
+	sed -i 's:^BINDIR=.*$:BINDIR=${bindir}:' ${D}/etc/X11/xserver-common
+}
+
diff --git a/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch b/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch
new file mode 100644
index 0000000..ec93253
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch
@@ -0,0 +1,353 @@
+COPYING: add GPLv2 license file
+
+this is a local file recipe and the license file is missing.In order
+to pass the license checksum checking, the license file is needed. So
+this patch add the GPLv2 license file.
+
+Signed-off-by: Yu Ke <ke.yu at intel.com>
+
+diff --git a/COPYING b/COPYING
+new file mode 100644
+index 0000000..d511905
+--- /dev/null
++++ b/COPYING
+@@ -0,0 +1,339 @@
++		    GNU GENERAL PUBLIC LICENSE
++		       Version 2, June 1991
++
++ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
++ Everyone is permitted to copy and distribute verbatim copies
++ of this license document, but changing it is not allowed.
++
++			    Preamble
++
++  The licenses for most software are designed to take away your
++freedom to share and change it.  By contrast, the GNU General Public
++License is intended to guarantee your freedom to share and change free
++software--to make sure the software is free for all its users.  This
++General Public License applies to most of the Free Software
++Foundation's software and to any other program whose authors commit to
++using it.  (Some other Free Software Foundation software is covered by
++the GNU Lesser General Public License instead.)  You can apply it to
++your programs, too.
++
++  When we speak of free software, we are referring to freedom, not
++price.  Our General Public Licenses are designed to make sure that you
++have the freedom to distribute copies of free software (and charge for
++this service if you wish), that you receive source code or can get it
++if you want it, that you can change the software or use pieces of it
++in new free programs; and that you know you can do these things.
++
++  To protect your rights, we need to make restrictions that forbid
++anyone to deny you these rights or to ask you to surrender the rights.
++These restrictions translate to certain responsibilities for you if you
++distribute copies of the software, or if you modify it.
++
++  For example, if you distribute copies of such a program, whether
++gratis or for a fee, you must give the recipients all the rights that
++you have.  You must make sure that they, too, receive or can get the
++source code.  And you must show them these terms so they know their
++rights.
++
++  We protect your rights with two steps: (1) copyright the software, and
++(2) offer you this license which gives you legal permission to copy,
++distribute and/or modify the software.
++
++  Also, for each author's protection and ours, we want to make certain
++that everyone understands that there is no warranty for this free
++software.  If the software is modified by someone else and passed on, we
++want its recipients to know that what they have is not the original, so
++that any problems introduced by others will not reflect on the original
++authors' reputations.
++
++  Finally, any free program is threatened constantly by software
++patents.  We wish to avoid the danger that redistributors of a free
++program will individually obtain patent licenses, in effect making the
++program proprietary.  To prevent this, we have made it clear that any
++patent must be licensed for everyone's free use or not licensed at all.
++
++  The precise terms and conditions for copying, distribution and
++modification follow.
++
++		    GNU GENERAL PUBLIC LICENSE
++   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
++
++  0. This License applies to any program or other work which contains
++a notice placed by the copyright holder saying it may be distributed
++under the terms of this General Public License.  The "Program", below,
++refers to any such program or work, and a "work based on the Program"
++means either the Program or any derivative work under copyright law:
++that is to say, a work containing the Program or a portion of it,
++either verbatim or with modifications and/or translated into another
++language.  (Hereinafter, translation is included without limitation in
++the term "modification".)  Each licensee is addressed as "you".
++
++Activities other than copying, distribution and modification are not
++covered by this License; they are outside its scope.  The act of
++running the Program is not restricted, and the output from the Program
++is covered only if its contents constitute a work based on the
++Program (independent of having been made by running the Program).
++Whether that is true depends on what the Program does.
++
++  1. You may copy and distribute verbatim copies of the Program's
++source code as you receive it, in any medium, provided that you
++conspicuously and appropriately publish on each copy an appropriate
++copyright notice and disclaimer of warranty; keep intact all the
++notices that refer to this License and to the absence of any warranty;
++and give any other recipients of the Program a copy of this License
++along with the Program.
++
++You may charge a fee for the physical act of transferring a copy, and
++you may at your option offer warranty protection in exchange for a fee.
++
++  2. You may modify your copy or copies of the Program or any portion
++of it, thus forming a work based on the Program, and copy and
++distribute such modifications or work under the terms of Section 1
++above, provided that you also meet all of these conditions:
++
++    a) You must cause the modified files to carry prominent notices
++    stating that you changed the files and the date of any change.
++
++    b) You must cause any work that you distribute or publish, that in
++    whole or in part contains or is derived from the Program or any
++    part thereof, to be licensed as a whole at no charge to all third
++    parties under the terms of this License.
++
++    c) If the modified program normally reads commands interactively
++    when run, you must cause it, when started running for such
++    interactive use in the most ordinary way, to print or display an
++    announcement including an appropriate copyright notice and a
++    notice that there is no warranty (or else, saying that you provide
++    a warranty) and that users may redistribute the program under
++    these conditions, and telling the user how to view a copy of this
++    License.  (Exception: if the Program itself is interactive but
++    does not normally print such an announcement, your work based on
++    the Program is not required to print an announcement.)
++
++These requirements apply to the modified work as a whole.  If
++identifiable sections of that work are not derived from the Program,
++and can be reasonably considered independent and separate works in
++themselves, then this License, and its terms, do not apply to those
++sections when you distribute them as separate works.  But when you
++distribute the same sections as part of a whole which is a work based
++on the Program, the distribution of the whole must be on the terms of
++this License, whose permissions for other licensees extend to the
++entire whole, and thus to each and every part regardless of who wrote it.
++
++Thus, it is not the intent of this section to claim rights or contest
++your rights to work written entirely by you; rather, the intent is to
++exercise the right to control the distribution of derivative or
++collective works based on the Program.
++
++In addition, mere aggregation of another work not based on the Program
++with the Program (or with a work based on the Program) on a volume of
++a storage or distribution medium does not bring the other work under
++the scope of this License.
++
++  3. You may copy and distribute the Program (or a work based on it,
++under Section 2) in object code or executable form under the terms of
++Sections 1 and 2 above provided that you also do one of the following:
++
++    a) Accompany it with the complete corresponding machine-readable
++    source code, which must be distributed under the terms of Sections
++    1 and 2 above on a medium customarily used for software interchange; or,
++
++    b) Accompany it with a written offer, valid for at least three
++    years, to give any third party, for a charge no more than your
++    cost of physically performing source distribution, a complete
++    machine-readable copy of the corresponding source code, to be
++    distributed under the terms of Sections 1 and 2 above on a medium
++    customarily used for software interchange; or,
++
++    c) Accompany it with the information you received as to the offer
++    to distribute corresponding source code.  (This alternative is
++    allowed only for noncommercial distribution and only if you
++    received the program in object code or executable form with such
++    an offer, in accord with Subsection b above.)
++
++The source code for a work means the preferred form of the work for
++making modifications to it.  For an executable work, complete source
++code means all the source code for all modules it contains, plus any
++associated interface definition files, plus the scripts used to
++control compilation and installation of the executable.  However, as a
++special exception, the source code distributed need not include
++anything that is normally distributed (in either source or binary
++form) with the major components (compiler, kernel, and so on) of the
++operating system on which the executable runs, unless that component
++itself accompanies the executable.
++
++If distribution of executable or object code is made by offering
++access to copy from a designated place, then offering equivalent
++access to copy the source code from the same place counts as
++distribution of the source code, even though third parties are not
++compelled to copy the source along with the object code.
++
++  4. You may not copy, modify, sublicense, or distribute the Program
++except as expressly provided under this License.  Any attempt
++otherwise to copy, modify, sublicense or distribute the Program is
++void, and will automatically terminate your rights under this License.
++However, parties who have received copies, or rights, from you under
++this License will not have their licenses terminated so long as such
++parties remain in full compliance.
++
++  5. You are not required to accept this License, since you have not
++signed it.  However, nothing else grants you permission to modify or
++distribute the Program or its derivative works.  These actions are
++prohibited by law if you do not accept this License.  Therefore, by
++modifying or distributing the Program (or any work based on the
++Program), you indicate your acceptance of this License to do so, and
++all its terms and conditions for copying, distributing or modifying
++the Program or works based on it.
++
++  6. Each time you redistribute the Program (or any work based on the
++Program), the recipient automatically receives a license from the
++original licensor to copy, distribute or modify the Program subject to
++these terms and conditions.  You may not impose any further
++restrictions on the recipients' exercise of the rights granted herein.
++You are not responsible for enforcing compliance by third parties to
++this License.
++
++  7. If, as a consequence of a court judgment or allegation of patent
++infringement or for any other reason (not limited to patent issues),
++conditions are imposed on you (whether by court order, agreement or
++otherwise) that contradict the conditions of this License, they do not
++excuse you from the conditions of this License.  If you cannot
++distribute so as to satisfy simultaneously your obligations under this
++License and any other pertinent obligations, then as a consequence you
++may not distribute the Program at all.  For example, if a patent
++license would not permit royalty-free redistribution of the Program by
++all those who receive copies directly or indirectly through you, then
++the only way you could satisfy both it and this License would be to
++refrain entirely from distribution of the Program.
++
++If any portion of this section is held invalid or unenforceable under
++any particular circumstance, the balance of the section is intended to
++apply and the section as a whole is intended to apply in other
++circumstances.
++
++It is not the purpose of this section to induce you to infringe any
++patents or other property right claims or to contest validity of any
++such claims; this section has the sole purpose of protecting the
++integrity of the free software distribution system, which is
++implemented by public license practices.  Many people have made
++generous contributions to the wide range of software distributed
++through that system in reliance on consistent application of that
++system; it is up to the author/donor to decide if he or she is willing
++to distribute software through any other system and a licensee cannot
++impose that choice.
++
++This section is intended to make thoroughly clear what is believed to
++be a consequence of the rest of this License.
++
++  8. If the distribution and/or use of the Program is restricted in
++certain countries either by patents or by copyrighted interfaces, the
++original copyright holder who places the Program under this License
++may add an explicit geographical distribution limitation excluding
++those countries, so that distribution is permitted only in or among
++countries not thus excluded.  In such case, this License incorporates
++the limitation as if written in the body of this License.
++
++  9. The Free Software Foundation may publish revised and/or new versions
++of the General Public License from time to time.  Such new versions will
++be similar in spirit to the present version, but may differ in detail to
++address new problems or concerns.
++
++Each version is given a distinguishing version number.  If the Program
++specifies a version number of this License which applies to it and "any
++later version", you have the option of following the terms and conditions
++either of that version or of any later version published by the Free
++Software Foundation.  If the Program does not specify a version number of
++this License, you may choose any version ever published by the Free Software
++Foundation.
++
++  10. If you wish to incorporate parts of the Program into other free
++programs whose distribution conditions are different, write to the author
++to ask for permission.  For software which is copyrighted by the Free
++Software Foundation, write to the Free Software Foundation; we sometimes
++make exceptions for this.  Our decision will be guided by the two goals
++of preserving the free status of all derivatives of our free software and
++of promoting the sharing and reuse of software generally.
++
++			    NO WARRANTY
++
++  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
++FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
++OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
++PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
++OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
++MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
++TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
++PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
++REPAIR OR CORRECTION.
++
++  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
++WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
++REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
++INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
++OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
++TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
++YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
++PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
++POSSIBILITY OF SUCH DAMAGES.
++
++		     END OF TERMS AND CONDITIONS
++
++	    How to Apply These Terms to Your New Programs
++
++  If you develop a new program, and you want it to be of the greatest
++possible use to the public, the best way to achieve this is to make it
++free software which everyone can redistribute and change under these terms.
++
++  To do so, attach the following notices to the program.  It is safest
++to attach them to the start of each source file to most effectively
++convey the exclusion of warranty; and each file should have at least
++the "copyright" line and a pointer to where the full notice is found.
++
++    <one line to give the program's name and a brief idea of what it does.>
++    Copyright (C) <year>  <name of author>
++
++    This program is free software; you can redistribute it and/or modify
++    it under the terms of the GNU General Public License as published by
++    the Free Software Foundation; either version 2 of the License, or
++    (at your option) any later version.
++
++    This program 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 General Public License for more details.
++
++    You should have received a copy of the GNU General Public License along
++    with this program; if not, write to the Free Software Foundation, Inc.,
++    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
++
++Also add information on how to contact you by electronic and paper mail.
++
++If the program is interactive, make it output a short notice like this
++when it starts in an interactive mode:
++
++    Gnomovision version 69, Copyright (C) year name of author
++    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
++    This is free software, and you are welcome to redistribute it
++    under certain conditions; type `show c' for details.
++
++The hypothetical commands `show w' and `show c' should show the appropriate
++parts of the General Public License.  Of course, the commands you use may
++be called something other than `show w' and `show c'; they could even be
++mouse-clicks or menu items--whatever suits your program.
++
++You should also get your employer (if you work as a programmer) or your
++school, if any, to sign a "copyright disclaimer" for the program, if
++necessary.  Here is a sample; alter the names:
++
++  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
++  `Gnomovision' (which makes passes at compilers) written by James Hacker.
++
++  <signature of Ty Coon>, 1 April 1989
++  Ty Coon, President of Vice
++
++This General Public License does not permit incorporating your program into
++proprietary programs.  If your program is a subroutine library, you may
++consider it more useful to permit linking proprietary applications with the
++library.  If this is what you want to do, use the GNU Lesser General
++Public License instead of this License.
diff --git a/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm b/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm
new file mode 100755
index 0000000..39ce890
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+. /etc/init.d/functions
+
+for x in $(cat /proc/cmdline); do
+        case $x in
+        x11=false)
+		echo "X Server disabled" 
+		exit 0;
+                ;;
+        esac
+done
+
+case "$1" in
+  start)
+    # We don't want this script to block the rest of the boot process
+    if [ "$2" != "background" ]; then
+      $0 $1 background &
+    else
+       . /etc/profile
+
+       echo "Starting Xserver"
+       . /etc/X11/xserver-common
+       xinit /etc/X11/Xsession -- `which $XSERVER` $ARGS >/var/log/Xsession.log 2>&1
+    fi 
+  ;;
+
+  stop)
+        echo "Stopping XServer"
+        killproc xinit
+  ;;
+
+  restart)
+	$0 stop
+        sleep 1
+        $0 start
+  ;;
+
+  *)
+        echo "usage: $0 { start | stop | restart }"
+  ;;
+esac
+
+exit 0
diff --git a/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb b/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb
new file mode 100644
index 0000000..8310bcd
--- /dev/null
+++ b/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "Simple Xserver Init Script (no dm)"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+SECTION = "x11"
+PRIORITY = "optional"
+RDEPENDS_${PN} = "xserver-common (>= 1.30) xinit"
+DEFAULT_PREFERENCE = "-1"
+PR = "r4"
+
+SRC_URI = "file://xserver-nodm \
+           file://gplv2-license.patch \
+"
+S = ${WORKDIR}
+
+PACKAGE_ARCH = "all"
+
+do_install() {
+    install -d ${D}/etc
+    install -d ${D}/etc/init.d
+    install xserver-nodm ${D}/etc/init.d
+}
+
+inherit update-rc.d
+
+INITSCRIPT_NAME = "xserver-nodm"
+INITSCRIPT_PARAMS = "start 01 5 2 . stop 01 0 1 6 ."
+INITSCRIPT_PARAMS_shr = "start 90 5 2 . stop 90 0 1 6 ."
diff --git a/meta-oe/recipes-support/ca-certificates/ca-certificates_20090814+nmu2.bb b/meta-oe/recipes-support/ca-certificates/ca-certificates_20090814+nmu2.bb
new file mode 100644
index 0000000..7552c6f
--- /dev/null
+++ b/meta-oe/recipes-support/ca-certificates/ca-certificates_20090814+nmu2.bb
@@ -0,0 +1,40 @@
+DESCRIPTION = "Common CA certificates"
+HOMEPAGE = "http://packages.debian.org/sid/ca-certificates"
+SECTION = "misc"
+PRIORITY = "optional"
+LICENSE = "GPL"
+LIC_FILES_CHKSUM = "file://debian/copyright;md5=6275b491c91b57d92ebe11205ebf4dfe"
+
+SRC_URI = "${DEBIAN_MIRROR}/main/c/ca-certificates/ca-certificates_${PV}.tar.gz \
+           file://remove-c-rehash.patch"
+SRC_URI[md5sum] = "76a2b0381b0aa7a6892e2340cd2c159a"
+SRC_URI[sha256sum] = "b1b144a3732df638e25b84ec6414ca9d1da4898cfd06d86b09f671585ce9c747"
+inherit autotools
+
+do_install_prepend() {
+        mkdir -p ${D}/usr/share/ca-certificates
+        mkdir -p ${D}/usr/sbin
+        mkdir -p ${D}/etc/ssl/certs
+        mkdir -p ${D}/etc/ca-certificates/update.d
+}
+
+do_install_append() {
+        cd ${D}/usr/share/ca-certificates
+        echo "# Lines starting with # will be ignored" > ${D}/etc/ca-certificates.conf
+        echo "# Lines starting with ! will remove certificate on next update" >> ${D}/etc/ca-certificates.conf
+        echo "#" >> ${D}/etc/ca-certificates.conf
+        for crt in $(find . -type f -name '*.crt' -print)
+        do
+                crt=$(echo $crt | sed -e 's/\.\///')
+                echo $crt >> ${D}/etc/ca-certificates.conf
+        done
+}
+
+PACKAGE_ARCH = "all"
+PACKAGES = "${PN}"
+
+pkg_postinst_${PN} () {
+        /usr/sbin/update-ca-certificates
+}
+
+CONFFILES_${PN} = "/etc/ca-certificates.conf"
diff --git a/meta-oe/recipes-support/ca-certificates/files/remove-c-rehash.patch b/meta-oe/recipes-support/ca-certificates/files/remove-c-rehash.patch
new file mode 100644
index 0000000..9d9b8ad
--- /dev/null
+++ b/meta-oe/recipes-support/ca-certificates/files/remove-c-rehash.patch
@@ -0,0 +1,29 @@
+--- ca-certificates-20090814/sbin/update-ca-certificates.orig	2010-02-25 19:25:08.272807308 +0100
++++ ca-certificates-20090814/sbin/update-ca-certificates	2010-02-25 19:25:33.962806273 +0100
+@@ -133,16 +133,16 @@
+ ADDED_CNT=$(wc -l < "$ADDED")
+ REMOVED_CNT=$(wc -l < "$REMOVED")
+ 
+-if [ "$ADDED_CNT" -gt 0 ] || [ "$REMOVED_CNT" -gt 0 ]
+-then
+-  # only run if set of files has changed
+-  if [ "$verbose" = 0 ]
+-  then
+-    c_rehash . > /dev/null
+-  else
+-    c_rehash .
+-  fi
+-fi
++#if [ "$ADDED_CNT" -gt 0 ] || [ "$REMOVED_CNT" -gt 0 ]
++#then
++#  # only run if set of files has changed
++#  if [ "$verbose" = 0 ]
++#  then
++#    c_rehash . > /dev/null
++#  else
++#    c_rehash .
++#  fi
++#fi
+ 
+ echo "$ADDED_CNT added, $REMOVED_CNT removed; done."
+ 
diff --git a/meta-oe/recipes-support/dfu-util/dfu-util-native_svn.bb b/meta-oe/recipes-support/dfu-util/dfu-util-native_svn.bb
new file mode 100644
index 0000000..c103509
--- /dev/null
+++ b/meta-oe/recipes-support/dfu-util/dfu-util-native_svn.bb
@@ -0,0 +1,16 @@
+require dfu-util_${PV}.bb
+
+inherit native deploy
+do_deploy[sstate-outputdirs] = "${DEPLOY_DIR_TOOLS}"
+
+DEPENDS = "libusb-compat usbpath-native"
+
+do_deploy() {
+	install -d ${DEPLOY_DIR_TOOLS}
+	install -m 0755 src/dfu-util_static ${DEPLOY_DIR_TOOLS}/dfu-util-${PV}
+	rm -f ${DEPLOY_DIR_TOOLS}/dfu-util
+	ln -sf ./dfu-util-${PV} ${DEPLOY_DIR_TOOLS}/dfu-util
+
+}
+
+addtask deploy before do_package after do_install
diff --git a/meta-oe/recipes-support/dfu-util/dfu-util.inc b/meta-oe/recipes-support/dfu-util/dfu-util.inc
new file mode 100644
index 0000000..5035832
--- /dev/null
+++ b/meta-oe/recipes-support/dfu-util/dfu-util.inc
@@ -0,0 +1,13 @@
+DESCRIPTION = "USB Device Firmware Upgrade utility"
+SECTION = "devel"
+AUTHOR = "Harald Welte <laforge at openmoko.org>"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+DEPENDS = "virtual/libusb0 usbpath"
+
+SRC_URI = "http://dfu-util.gnumonks.org/releases/dfu-util-${PV}.tar.gz"
+
+BBCLASSEXTEND = "native"
+
+inherit autotools
diff --git a/meta-oe/recipes-support/dfu-util/dfu-util_0.1.bb b/meta-oe/recipes-support/dfu-util/dfu-util_0.1.bb
new file mode 100644
index 0000000..7b25b13
--- /dev/null
+++ b/meta-oe/recipes-support/dfu-util/dfu-util_0.1.bb
@@ -0,0 +1,7 @@
+require dfu-util.inc
+
+PV = "0.1"
+PR = "r1"
+
+SRC_URI[md5sum] = "454b931249d29e4a6c2a2ade17858490"
+SRC_URI[sha256sum] = "a27cc667be9b158fecf0ed066698e30eca0c0b3cd7a85aad2058d47ffe16f0e1"
diff --git a/meta-oe/recipes-support/dfu-util/dfu-util_svn.bb b/meta-oe/recipes-support/dfu-util/dfu-util_svn.bb
new file mode 100644
index 0000000..abb85fa
--- /dev/null
+++ b/meta-oe/recipes-support/dfu-util/dfu-util_svn.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "USB Device Firmware Upgrade utility"
+SECTION = "devel"
+AUTHOR = "Harald Welte <laforge at openmoko.org>"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+SRCREV = "4160"
+PV = "0.1+svnr${SRCPV}"
+PR = "r2"
+
+DEPENDS = "virtual/libusb0 usbpath"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/host/;module=dfu-util;proto=http"
+S = "${WORKDIR}/dfu-util"
+
+inherit autotools
+
diff --git a/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb b/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
new file mode 100644
index 0000000..1eb25aa
--- /dev/null
+++ b/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "FarSight is an audio/video conferencing framework specifically designed for Instant Messengers."
+HOMEPAGE = "http://farsight.sf.net"
+SRC_URI = "http://farsight.freedesktop.org/releases/farsight2/${P}.tar.gz"
+LICENSE = "unknown"
+
+DEPENDS = "libnice glib-2.0 libxml2 zlib dbus gstreamer gst-plugins-base"
+
+inherit autotools
+
+EXTRA_OECONF = " \
+  --disable-debug \
+  --disable-gtk-doc \
+  --disable-python \
+"
+
+FILES_${PN} += "${libdir}/*/*.so"
+FILES_${PN}-dev += "${libdir}/*/*a"
+FILES_${PN}-dbg += "${libdir}/*/.debug"
+
+
+SRC_URI[md5sum] = "e1f540cf3ebab06c3d7db1f46b44ac88"
+SRC_URI[sha256sum] = "3ae59aa61a8071c9fad111e5fd606aabc27961eb4192f8729987a27dae6b3974"
+
diff --git a/meta-oe/recipes-support/farsight/libnice_0.0.13.bb b/meta-oe/recipes-support/farsight/libnice_0.0.13.bb
new file mode 100644
index 0000000..81f9c98
--- /dev/null
+++ b/meta-oe/recipes-support/farsight/libnice_0.0.13.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "Libnice is an implementation of the IETF's draft Interactice Connectivity Establishment standard (ICE)."
+HOMEPAGE = "http://nice.freedesktop.org/wiki/"
+SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz"
+
+LICENSE = "LGPL/MPL"
+DEPENDS = "glib-2.0 gstreamer"
+
+inherit autotools
+
+FILES_${PN} += "${libdir}/gstreamer-0.10/*.so"
+FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*a"
+FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
+
+do_compile_append() {
+        for i in $(find ${S} -name "*.pc") ; do
+            sed -i -e s:${STAGING_DIR_TARGET}::g \
+                   -e s:/${TARGET_SYS}::g \
+                      $i
+        done
+}
+
+
+SRC_URI[md5sum] = "e5b9f799a57cb939ea2658ec35253ab9"
+SRC_URI[sha256sum] = "d8dd260c486a470a6052a5323920878a084e44a19df09b15728b85c9e3d6edf0"
+
diff --git a/meta-oe/recipes-support/fbset/fbset-2.1/makefile.patch b/meta-oe/recipes-support/fbset/fbset-2.1/makefile.patch
new file mode 100644
index 0000000..82b1c61
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-2.1/makefile.patch
@@ -0,0 +1,11 @@
+--- fbset-2.1/Makefile.orig	2006-05-28 04:04:27.412095480 +0200
++++ fbset-2.1/Makefile	2006-05-28 04:14:05.379231120 +0200
+@@ -2,7 +2,7 @@
+ # Linux Frame Buffer Device Configuration
+ #
+ 
+-CC =		gcc -Wall -O2 -I.
++CFLAGS =	-Wall -O2 -I.
+ BISON =		bison -d
+ FLEX =		flex
+ INSTALL =	install
diff --git a/meta-oe/recipes-support/fbset/fbset-modes.bb b/meta-oe/recipes-support/fbset/fbset-modes.bb
new file mode 100644
index 0000000..415c00b
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-modes.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Default display timings and resolutions for fbset"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-shr/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PV = "0.1.0"
+PR = "r5"
+
+SRC_URI = "file://fb.modes"
+
+do_install() {
+    install -d ${D}${sysconfdir}
+    install -m 0644 ${WORKDIR}/fb.modes ${D}${sysconfdir}
+}
+
+PACKAGE_ARCH = "all"
+CONFFILES_${PN} = "${sysconfdir}/fb.modes"
+
diff --git a/meta-oe/recipes-support/fbset/fbset-modes/fb.modes b/meta-oe/recipes-support/fbset/fbset-modes/fb.modes
new file mode 100644
index 0000000..ba5e6ed
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-modes/fb.modes
@@ -0,0 +1,3 @@
+# By default there is nothing in this file just a reminder to define some
+# modes in OE
+
diff --git a/meta-oe/recipes-support/fbset/fbset-modes/om-gta01/fb.modes b/meta-oe/recipes-support/fbset/fbset-modes/om-gta01/fb.modes
new file mode 100644
index 0000000..446d23d
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-modes/om-gta01/fb.modes
@@ -0,0 +1,29 @@
+# Timings for GTA01 VGA and QVGA mode
+
+mode "480x640"
+    # D: 26.000 MHz, H: 43.334 kHz, V: 65.657 Hz
+    geometry 480 640 480 640 16
+    timings 38461 104 8 2 16 8 2
+    accel false
+endmode
+
+mode "vga"
+    # D: 26.000 MHz, H: 43.334 kHz, V: 65.657 Hz
+    geometry 480 640 480 640 16
+    timings 38461 104 8 2 16 8 2
+    accel false
+endmode
+
+mode "240x320"
+    # D: 8.475 MHz, H: 24.635 kHz, V: 75.569 Hz
+    geometry 240 320 240 320 16
+    timings 118000 88 8 2 2 8 2
+    accel false
+endmode
+
+mode "qvga"
+    # D: 8.475 MHz, H: 24.635 kHz, V: 75.569 Hz
+    geometry 240 320 240 320 16
+    timings 118000 88 8 2 2 8 2
+    accel false
+endmode
diff --git a/meta-oe/recipes-support/fbset/fbset-modes/omap3-pandora/fb.modes b/meta-oe/recipes-support/fbset/fbset-modes/omap3-pandora/fb.modes
new file mode 100644
index 0000000..0c87401
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-modes/omap3-pandora/fb.modes
@@ -0,0 +1,6 @@
+mode "800x480-65"
+    # D: 36.001 MHz, H: 34.124 kHz, V: 64.998 Hz
+    geometry 800 480 800 480 16
+    timings 27777 40 214 10 34 1 1
+    rgba 5/11,6/5,5/0,0/0
+endmode
diff --git a/meta-oe/recipes-support/fbset/fbset-modes/qemuarm/fb.modes b/meta-oe/recipes-support/fbset/fbset-modes/qemuarm/fb.modes
new file mode 100644
index 0000000..1114564
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-modes/qemuarm/fb.modes
@@ -0,0 +1,17 @@
+# QEMU versatilepb machine, qemuarm in OE
+
+mode "vga" "640x480"
+    geometry 640 480 640 480 16
+endmode
+
+mode "vga-portrait" "480x640"
+    geometry 480 640 480 640 16
+endmode
+
+mode "qvga" "320x240"
+    geometry 320 240 320 240 16
+endmode
+
+mode "qvga-portrait" "240x320"
+    geometry 240 320 240 320 16
+endmode
diff --git a/meta-oe/recipes-support/fbset/fbset-modes/qemumips/fb.modes b/meta-oe/recipes-support/fbset/fbset-modes/qemumips/fb.modes
new file mode 100644
index 0000000..1114564
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset-modes/qemumips/fb.modes
@@ -0,0 +1,17 @@
+# QEMU versatilepb machine, qemuarm in OE
+
+mode "vga" "640x480"
+    geometry 640 480 640 480 16
+endmode
+
+mode "vga-portrait" "480x640"
+    geometry 480 640 480 640 16
+endmode
+
+mode "qvga" "320x240"
+    geometry 320 240 320 240 16
+endmode
+
+mode "qvga-portrait" "240x320"
+    geometry 240 320 240 320 16
+endmode
diff --git a/meta-oe/recipes-support/fbset/fbset_2.1.bb b/meta-oe/recipes-support/fbset/fbset_2.1.bb
new file mode 100644
index 0000000..12c1c94
--- /dev/null
+++ b/meta-oe/recipes-support/fbset/fbset_2.1.bb
@@ -0,0 +1,38 @@
+#
+# Copyright Matthias Hentges <devel at hentges.net> (c) 2006
+# License: MIT (see http://www.opensource.org/licenses/mit-license.php for a copy of the license)
+#
+# Filename: fbset_2.1.bb
+# Date: 28-May-06
+
+DESCRIPTION = "The fbset console tool"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://fbset.c;endline=19;md5=bf326f82cdfcac391af208f019c5603f"
+RRECOMMENDS_${PN} = "fbset-modes"
+DEPENDS = "bison-native"
+
+PR = "r4"
+
+SRC_URI = "http://ftp.debian.org/debian/pool/main/f/fbset/fbset_2.1.orig.tar.gz \
+           file://makefile.patch"
+
+inherit autotools update-alternatives
+
+PARALLEL_MAKE = ""
+
+do_install() {
+        install -d ${D}${sbindir} ${D}${datadir}/man/man8 ${D}${datadir}/man/man5
+        install -m 0755 ${WORKDIR}/${P}/fbset ${D}${sbindir}/fbset.real
+        install -m 0644 ${WORKDIR}/${P}/*.5 ${D}${datadir}/man/man5
+        install -m 0644 ${WORKDIR}/${P}/*.8 ${D}${datadir}/man/man8
+}
+
+ALTERNATIVE_NAME = "fbset"
+ALTERNATIVE_LINK = "${sbindir}/${ALTERNATIVE_NAME}"
+ALTERNATIVE_PATH = "${sbindir}/fbset.real"
+ALTERNATIVE_PRIORITY = "55"
+
+
+
+SRC_URI[md5sum] = "40ed9608f46d787bfb65fd1269f7f459"
+SRC_URI[sha256sum] = "517fa062d7b2d367f931a1c6ebb2bef84907077f0ce3f0c899e34490bbea9338"
diff --git a/meta-oe/recipes-support/lcms/lcms_1.17.bb b/meta-oe/recipes-support/lcms/lcms_1.17.bb
new file mode 100644
index 0000000..8ec516d
--- /dev/null
+++ b/meta-oe/recipes-support/lcms/lcms_1.17.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Little cms is a small-footprint, speed optimized color management engine."
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=156745cad721a8783cb847e82b79f586"
+SRC_URI = "${SOURCEFORGE_MIRROR}/lcms/lcms-${PV}.tar.gz"
+
+PR = "r2"
+
+BBCLASSEXTEND = "native"
+
+inherit autotools
+
+SRC_URI[md5sum] = "07bdbb4cfb05d21caa58fe3d1c84ddc1"
+SRC_URI[sha256sum] = "5ef3b4dab30956772009e29dba33fe1256cf9da161106a1e70b0966c96d14583"
diff --git a/meta-oe/recipes-support/libiconv/libiconv-1.13.1/autoconf.patch b/meta-oe/recipes-support/libiconv/libiconv-1.13.1/autoconf.patch
new file mode 100644
index 0000000..435e528
--- /dev/null
+++ b/meta-oe/recipes-support/libiconv/libiconv-1.13.1/autoconf.patch
@@ -0,0 +1,16018 @@
+Index: libiconv-1.13.1/configure.ac
+===================================================================
+--- libiconv-1.13.1.orig/configure.ac
++++ libiconv-1.13.1/configure.ac
+@@ -23,7 +23,7 @@ AC_CONFIG_AUX_DIR([build-aux])
+ AM_INIT_AUTOMAKE([libiconv], [1.13.1])
+ AC_CONFIG_HEADERS([config.h lib/config.h])
+ AC_PROG_MAKE_SET
+-
++AC_CONFIG_MACRO_DIR([m4])
+ dnl           checks for basic programs
+ 
+ AC_PROG_CC
+Index: libiconv-1.13.1/libcharset/configure.ac
+===================================================================
+--- libiconv-1.13.1.orig/libcharset/configure.ac
++++ libiconv-1.13.1/libcharset/configure.ac
+@@ -16,17 +16,17 @@ dnl along with the GNU CHARSET Library;
+ dnl write to the Free Software Foundation, Inc., 51 Franklin Street,
+ dnl Fifth Floor, Boston, MA 02110-1301, USA.
+ 
+-AC_PREREQ([2.13])
++AC_PREREQ(2.61)
++AC_INIT([libcharset],[1.4] )
++AC_CONFIG_SRCDIR([lib/localcharset.c])
+ 
+-PACKAGE=libcharset
+-VERSION=1.4
+-
+-AC_INIT([lib/localcharset.c])
+ AC_CONFIG_AUX_DIR([build-aux])
+ AC_CONFIG_HEADER([config.h])
+ AC_PROG_MAKE_SET
+-AC_SUBST([PACKAGE])
+-AC_SUBST([VERSION])
++dnl AC_SUBST(PACKAGE)
++dnl AC_SUBST(VERSION)
++
++AC_CONFIG_MACRO_DIR([m4])
+ 
+ dnl           checks for basic programs
+ 
+Index: libiconv-1.13.1/libcharset/m4/libtool.m4
+===================================================================
+--- libiconv-1.13.1.orig/libcharset/m4/libtool.m4
++++ /dev/null
+@@ -1,7357 +0,0 @@
+-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
+-#
+-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+-#                 2006, 2007, 2008 Free Software Foundation, Inc.
+-#   Written by Gordon Matzigkeit, 1996
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-m4_define([_LT_COPYING], [dnl
+-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+-#                 2006, 2007, 2008 Free Software Foundation, Inc.
+-#   Written by Gordon Matzigkeit, 1996
+-#
+-#   This file is part of GNU Libtool.
+-#
+-# GNU Libtool is free software; you can redistribute it and/or
+-# modify it under the terms of the GNU General Public License as
+-# published by the Free Software Foundation; either version 2 of
+-# the License, or (at your option) any later version.
+-#
+-# As a special exception to the GNU General Public License,
+-# if you distribute this file as part of a program or library that
+-# is built using GNU Libtool, you may include this file under the
+-# same distribution terms that you use for the rest of that program.
+-#
+-# GNU Libtool 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 General Public License for more details.
+-#
+-# You should have received a copy of the GNU General Public License
+-# along with GNU Libtool; see the file COPYING.  If not, a copy
+-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+-# obtained by writing to the Free Software Foundation, Inc.,
+-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+-])
+-
+-# serial 56 LT_INIT
+-
+-
+-# LT_PREREQ(VERSION)
+-# ------------------
+-# Complain and exit if this libtool version is less that VERSION.
+-m4_defun([LT_PREREQ],
+-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
+-       [m4_default([$3],
+-		   [m4_fatal([Libtool version $1 or higher is required],
+-		             63)])],
+-       [$2])])
+-
+-
+-# _LT_CHECK_BUILDDIR
+-# ------------------
+-# Complain if the absolute build directory name contains unusual characters
+-m4_defun([_LT_CHECK_BUILDDIR],
+-[case `pwd` in
+-  *\ * | *\	*)
+-    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
+-esac
+-])
+-
+-
+-# LT_INIT([OPTIONS])
+-# ------------------
+-AC_DEFUN([LT_INIT],
+-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+-AC_BEFORE([$0], [LT_LANG])dnl
+-AC_BEFORE([$0], [LT_OUTPUT])dnl
+-AC_BEFORE([$0], [LTDL_INIT])dnl
+-m4_require([_LT_CHECK_BUILDDIR])dnl
+-
+-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
+-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
+-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
+-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
+-dnl unless we require an AC_DEFUNed macro:
+-AC_REQUIRE([LTOPTIONS_VERSION])dnl
+-AC_REQUIRE([LTSUGAR_VERSION])dnl
+-AC_REQUIRE([LTVERSION_VERSION])dnl
+-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
+-m4_require([_LT_PROG_LTMAIN])dnl
+-
+-dnl Parse OPTIONS
+-_LT_SET_OPTIONS([$0], [$1])
+-
+-# This can be used to rebuild libtool when needed
+-LIBTOOL_DEPS="$ltmain"
+-
+-# Always use our own libtool.
+-LIBTOOL="${CONFIG_SHELL-$SHELL} "'$(top_builddir)/libtool'
+-AC_SUBST(LIBTOOL)dnl
+-
+-_LT_SETUP
+-
+-# Only expand once:
+-m4_define([LT_INIT])
+-])# LT_INIT
+-
+-# Old names:
+-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
+-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
+-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
+-
+-
+-# _LT_CC_BASENAME(CC)
+-# -------------------
+-# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+-m4_defun([_LT_CC_BASENAME],
+-[for cc_temp in $1""; do
+-  case $cc_temp in
+-    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+-    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+-    \-*) ;;
+-    *) break;;
+-  esac
+-done
+-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
+-])
+-
+-
+-# _LT_FILEUTILS_DEFAULTS
+-# ----------------------
+-# It is okay to use these file commands and assume they have been set
+-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
+-m4_defun([_LT_FILEUTILS_DEFAULTS],
+-[: ${CP="cp -f"}
+-: ${MV="mv -f"}
+-: ${RM="rm -f"}
+-])# _LT_FILEUTILS_DEFAULTS
+-
+-
+-# _LT_SETUP
+-# ---------
+-m4_defun([_LT_SETUP],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+-_LT_DECL([], [host_alias], [0], [The host system])dnl
+-_LT_DECL([], [host], [0])dnl
+-_LT_DECL([], [host_os], [0])dnl
+-dnl
+-_LT_DECL([], [build_alias], [0], [The build system])dnl
+-_LT_DECL([], [build], [0])dnl
+-_LT_DECL([], [build_os], [0])dnl
+-dnl
+-AC_REQUIRE([AC_PROG_CC])dnl
+-AC_REQUIRE([LT_PATH_LD])dnl
+-AC_REQUIRE([LT_PATH_NM])dnl
+-dnl
+-AC_REQUIRE([AC_PROG_LN_S])dnl
+-test -z "$LN_S" && LN_S="ln -s"
+-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
+-dnl
+-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
+-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
+-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
+-dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+-m4_require([_LT_CMD_RELOAD])dnl
+-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
+-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
+-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+-
+-_LT_CONFIG_LIBTOOL_INIT([
+-# See if we are running on zsh, and set the options which allow our
+-# commands through without removal of \ escapes INIT.
+-if test -n "\${ZSH_VERSION+set}" ; then
+-   setopt NO_GLOB_SUBST
+-fi
+-])
+-if test -n "${ZSH_VERSION+set}" ; then
+-   setopt NO_GLOB_SUBST
+-fi
+-
+-_LT_CHECK_OBJDIR
+-
+-m4_require([_LT_TAG_COMPILER])dnl
+-_LT_PROG_ECHO_BACKSLASH
+-
+-case $host_os in
+-aix3*)
+-  # AIX sometimes has problems with the GCC collect2 program.  For some
+-  # reason, if we set the COLLECT_NAMES environment variable, the problems
+-  # vanish in a puff of smoke.
+-  if test "X${COLLECT_NAMES+set}" != Xset; then
+-    COLLECT_NAMES=
+-    export COLLECT_NAMES
+-  fi
+-  ;;
+-esac
+-
+-# Sed substitution that helps us do robust quoting.  It backslashifies
+-# metacharacters that are still active within double-quoted strings.
+-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
+-
+-# Same as above, but do not quote variable references.
+-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
+-
+-# Sed substitution to delay expansion of an escaped shell variable in a
+-# double_quote_subst'ed string.
+-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+-
+-# Sed substitution to delay expansion of an escaped single quote.
+-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+-
+-# Sed substitution to avoid accidental globbing in evaled expressions
+-no_glob_subst='s/\*/\\\*/g'
+-
+-# Global variables:
+-ofile=libtool
+-can_build_shared=yes
+-
+-# All known linkers require a `.a' archive for static linking (except MSVC,
+-# which needs '.lib').
+-libext=a
+-
+-with_gnu_ld="$lt_cv_prog_gnu_ld"
+-
+-old_CC="$CC"
+-old_CFLAGS="$CFLAGS"
+-
+-# Set sane defaults for various variables
+-test -z "$CC" && CC=cc
+-test -z "$LTCC" && LTCC=$CC
+-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+-test -z "$LD" && LD=ld
+-test -z "$ac_objext" && ac_objext=o
+-
+-_LT_CC_BASENAME([$compiler])
+-
+-# Only perform the check for file, if the check method requires it
+-test -z "$MAGIC_CMD" && MAGIC_CMD=file
+-case $deplibs_check_method in
+-file_magic*)
+-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+-    _LT_PATH_MAGIC
+-  fi
+-  ;;
+-esac
+-
+-# Use C for the default configuration in the libtool script
+-LT_SUPPORTED_TAG([CC])
+-_LT_LANG_C_CONFIG
+-_LT_LANG_DEFAULT_CONFIG
+-_LT_CONFIG_COMMANDS
+-])# _LT_SETUP
+-
+-
+-# _LT_PROG_LTMAIN
+-# ---------------
+-# Note that this code is called both from `configure', and `config.status'
+-# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
+-# `config.status' has no value for ac_aux_dir unless we are using Automake,
+-# so we pass a copy along to make sure it has a sensible value anyway.
+-m4_defun([_LT_PROG_LTMAIN],
+-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
+-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
+-ltmain="$ac_aux_dir/ltmain.sh"
+-])# _LT_PROG_LTMAIN
+-
+-
+-## ------------------------------------- ##
+-## Accumulate code for creating libtool. ##
+-## ------------------------------------- ##
+-
+-# So that we can recreate a full libtool script including additional
+-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
+-# in macros and then make a single call at the end using the `libtool'
+-# label.
+-
+-
+-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
+-# ----------------------------------------
+-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+-m4_define([_LT_CONFIG_LIBTOOL_INIT],
+-[m4_ifval([$1],
+-          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
+-                     [$1
+-])])])
+-
+-# Initialize.
+-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
+-
+-
+-# _LT_CONFIG_LIBTOOL([COMMANDS])
+-# ------------------------------
+-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+-m4_define([_LT_CONFIG_LIBTOOL],
+-[m4_ifval([$1],
+-          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
+-                     [$1
+-])])])
+-
+-# Initialize.
+-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
+-
+-
+-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
+-# -----------------------------------------------------
+-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
+-[_LT_CONFIG_LIBTOOL([$1])
+-_LT_CONFIG_LIBTOOL_INIT([$2])
+-])
+-
+-
+-# _LT_FORMAT_COMMENT([COMMENT])
+-# -----------------------------
+-# Add leading comment marks to the start of each line, and a trailing
+-# full-stop to the whole comment if one is not present already.
+-m4_define([_LT_FORMAT_COMMENT],
+-[m4_ifval([$1], [
+-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
+-              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
+-)])
+-
+-
+-
+-## ------------------------ ##
+-## FIXME: Eliminate VARNAME ##
+-## ------------------------ ##
+-
+-
+-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
+-# -------------------------------------------------------------------
+-# CONFIGNAME is the name given to the value in the libtool script.
+-# VARNAME is the (base) name used in the configure script.
+-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
+-# VARNAME.  Any other value will be used directly.
+-m4_define([_LT_DECL],
+-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
+-    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
+-	[m4_ifval([$1], [$1], [$2])])
+-    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
+-    m4_ifval([$4],
+-	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
+-    lt_dict_add_subkey([lt_decl_dict], [$2],
+-	[tagged?], [m4_ifval([$5], [yes], [no])])])
+-])
+-
+-
+-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
+-# --------------------------------------------------------
+-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
+-
+-
+-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
+-# ------------------------------------------------
+-m4_define([lt_decl_tag_varnames],
+-[_lt_decl_filter([tagged?], [yes], $@)])
+-
+-
+-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
+-# ---------------------------------------------------------
+-m4_define([_lt_decl_filter],
+-[m4_case([$#],
+-  [0], [m4_fatal([$0: too few arguments: $#])],
+-  [1], [m4_fatal([$0: too few arguments: $#: $1])],
+-  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
+-  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
+-  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
+-])
+-
+-
+-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
+-# --------------------------------------------------
+-m4_define([lt_decl_quote_varnames],
+-[_lt_decl_filter([value], [1], $@)])
+-
+-
+-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
+-# ---------------------------------------------------
+-m4_define([lt_decl_dquote_varnames],
+-[_lt_decl_filter([value], [2], $@)])
+-
+-
+-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
+-# ---------------------------------------------------
+-m4_define([lt_decl_varnames_tagged],
+-[m4_assert([$# <= 2])dnl
+-_$0(m4_quote(m4_default([$1], [[, ]])),
+-    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
+-    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
+-m4_define([_lt_decl_varnames_tagged],
+-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
+-
+-
+-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
+-# ------------------------------------------------
+-m4_define([lt_decl_all_varnames],
+-[_$0(m4_quote(m4_default([$1], [[, ]])),
+-     m4_if([$2], [],
+-	   m4_quote(lt_decl_varnames),
+-	m4_quote(m4_shift($@))))[]dnl
+-])
+-m4_define([_lt_decl_all_varnames],
+-[lt_join($@, lt_decl_varnames_tagged([$1],
+-			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
+-])
+-
+-
+-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
+-# ------------------------------------
+-# Quote a variable value, and forward it to `config.status' so that its
+-# declaration there will have the same value as in `configure'.  VARNAME
+-# must have a single quote delimited value for this to work.
+-m4_define([_LT_CONFIG_STATUS_DECLARE],
+-[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
+-
+-
+-# _LT_CONFIG_STATUS_DECLARATIONS
+-# ------------------------------
+-# We delimit libtool config variables with single quotes, so when
+-# we write them to config.status, we have to be sure to quote all
+-# embedded single quotes properly.  In configure, this macro expands
+-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
+-#
+-#    <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
+-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
+-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
+-    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
+-
+-
+-# _LT_LIBTOOL_TAGS
+-# ----------------
+-# Output comment and list of tags supported by the script
+-m4_defun([_LT_LIBTOOL_TAGS],
+-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
+-available_tags="_LT_TAGS"dnl
+-])
+-
+-
+-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
+-# -----------------------------------
+-# Extract the dictionary values for VARNAME (optionally with TAG) and
+-# expand to a commented shell variable setting:
+-#
+-#    # Some comment about what VAR is for.
+-#    visible_name=$lt_internal_name
+-m4_define([_LT_LIBTOOL_DECLARE],
+-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
+-					   [description])))[]dnl
+-m4_pushdef([_libtool_name],
+-    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
+-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
+-    [0], [_libtool_name=[$]$1],
+-    [1], [_libtool_name=$lt_[]$1],
+-    [2], [_libtool_name=$lt_[]$1],
+-    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
+-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
+-])
+-
+-
+-# _LT_LIBTOOL_CONFIG_VARS
+-# -----------------------
+-# Produce commented declarations of non-tagged libtool config variables
+-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
+-# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
+-# section) are produced by _LT_LIBTOOL_TAG_VARS.
+-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
+-[m4_foreach([_lt_var],
+-    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
+-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
+-
+-
+-# _LT_LIBTOOL_TAG_VARS(TAG)
+-# -------------------------
+-m4_define([_LT_LIBTOOL_TAG_VARS],
+-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
+-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
+-
+-
+-# _LT_TAGVAR(VARNAME, [TAGNAME])
+-# ------------------------------
+-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
+-
+-
+-# _LT_CONFIG_COMMANDS
+-# -------------------
+-# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
+-# variables for single and double quote escaping we saved from calls
+-# to _LT_DECL, we can put quote escaped variables declarations
+-# into `config.status', and then the shell code to quote escape them in
+-# for loops in `config.status'.  Finally, any additional code accumulated
+-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
+-m4_defun([_LT_CONFIG_COMMANDS],
+-[AC_PROVIDE_IFELSE([LT_OUTPUT],
+-	dnl If the libtool generation code has been placed in $CONFIG_LT,
+-	dnl instead of duplicating it all over again into config.status,
+-	dnl then we will have config.status run $CONFIG_LT later, so it
+-	dnl needs to know what name is stored there:
+-        [AC_CONFIG_COMMANDS([libtool],
+-            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
+-    dnl If the libtool generation code is destined for config.status,
+-    dnl expand the accumulated commands and init code now:
+-    [AC_CONFIG_COMMANDS([libtool],
+-        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
+-])#_LT_CONFIG_COMMANDS
+-
+-
+-# Initialize.
+-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
+-[
+-
+-# The HP-UX ksh and POSIX shell print the target directory to stdout
+-# if CDPATH is set.
+-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+-
+-sed_quote_subst='$sed_quote_subst'
+-double_quote_subst='$double_quote_subst'
+-delay_variable_subst='$delay_variable_subst'
+-_LT_CONFIG_STATUS_DECLARATIONS
+-LTCC='$LTCC'
+-LTCFLAGS='$LTCFLAGS'
+-compiler='$compiler_DEFAULT'
+-
+-# Quote evaled strings.
+-for var in lt_decl_all_varnames([[ \
+-]], lt_decl_quote_varnames); do
+-    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+-    *[[\\\\\\\`\\"\\\$]]*)
+-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+-      ;;
+-    *)
+-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+-      ;;
+-    esac
+-done
+-
+-# Double-quote double-evaled strings.
+-for var in lt_decl_all_varnames([[ \
+-]], lt_decl_dquote_varnames); do
+-    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+-    *[[\\\\\\\`\\"\\\$]]*)
+-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+-      ;;
+-    *)
+-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+-      ;;
+-    esac
+-done
+-
+-# Fix-up fallback echo if it was mangled by the above quoting rules.
+-case \$lt_ECHO in
+-*'\\\[$]0 --fallback-echo"')dnl "
+-  lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
+-  ;;
+-esac
+-
+-_LT_OUTPUT_LIBTOOL_INIT
+-])
+-
+-
+-# LT_OUTPUT
+-# ---------
+-# This macro allows early generation of the libtool script (before
+-# AC_OUTPUT is called), incase it is used in configure for compilation
+-# tests.
+-AC_DEFUN([LT_OUTPUT],
+-[: ${CONFIG_LT=./config.lt}
+-AC_MSG_NOTICE([creating $CONFIG_LT])
+-cat >"$CONFIG_LT" <<_LTEOF
+-#! $SHELL
+-# Generated by $as_me.
+-# Run this file to recreate a libtool stub with the current configuration.
+-
+-lt_cl_silent=false
+-SHELL=\${CONFIG_SHELL-$SHELL}
+-_LTEOF
+-
+-cat >>"$CONFIG_LT" <<\_LTEOF
+-AS_SHELL_SANITIZE
+-_AS_PREPARE
+-
+-exec AS_MESSAGE_FD>&1
+-exec AS_MESSAGE_LOG_FD>>config.log
+-{
+-  echo
+-  AS_BOX([Running $as_me.])
+-} >&AS_MESSAGE_LOG_FD
+-
+-lt_cl_help="\
+-\`$as_me' creates a local libtool stub from the current configuration,
+-for use in further configure time tests before the real libtool is
+-generated.
+-
+-Usage: $[0] [[OPTIONS]]
+-
+-  -h, --help      print this help, then exit
+-  -V, --version   print version number, then exit
+-  -q, --quiet     do not print progress messages
+-  -d, --debug     don't remove temporary files
+-
+-Report bugs to <bug-libtool at gnu.org>."
+-
+-lt_cl_version="\
+-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
+-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
+-configured by $[0], generated by m4_PACKAGE_STRING.
+-
+-Copyright (C) 2008 Free Software Foundation, Inc.
+-This config.lt script is free software; the Free Software Foundation
+-gives unlimited permision to copy, distribute and modify it."
+-
+-while test $[#] != 0
+-do
+-  case $[1] in
+-    --version | --v* | -V )
+-      echo "$lt_cl_version"; exit 0 ;;
+-    --help | --h* | -h )
+-      echo "$lt_cl_help"; exit 0 ;;
+-    --debug | --d* | -d )
+-      debug=: ;;
+-    --quiet | --q* | --silent | --s* | -q )
+-      lt_cl_silent=: ;;
+-
+-    -*) AC_MSG_ERROR([unrecognized option: $[1]
+-Try \`$[0] --help' for more information.]) ;;
+-
+-    *) AC_MSG_ERROR([unrecognized argument: $[1]
+-Try \`$[0] --help' for more information.]) ;;
+-  esac
+-  shift
+-done
+-
+-if $lt_cl_silent; then
+-  exec AS_MESSAGE_FD>/dev/null
+-fi
+-_LTEOF
+-
+-cat >>"$CONFIG_LT" <<_LTEOF
+-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
+-_LTEOF
+-
+-cat >>"$CONFIG_LT" <<\_LTEOF
+-AC_MSG_NOTICE([creating $ofile])
+-_LT_OUTPUT_LIBTOOL_COMMANDS
+-AS_EXIT(0)
+-_LTEOF
+-chmod +x "$CONFIG_LT"
+-
+-# configure is writing to config.log, but config.lt does its own redirection,
+-# appending to config.log, which fails on DOS, as config.log is still kept
+-# open by configure.  Here we exec the FD to /dev/null, effectively closing
+-# config.log, so it can be properly (re)opened and appended to by config.lt.
+-if test "$no_create" != yes; then
+-  lt_cl_success=:
+-  test "$silent" = yes &&
+-    lt_config_lt_args="$lt_config_lt_args --quiet"
+-  exec AS_MESSAGE_LOG_FD>/dev/null
+-  $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
+-  exec AS_MESSAGE_LOG_FD>>config.log
+-  $lt_cl_success || AS_EXIT(1)
+-fi
+-])# LT_OUTPUT
+-
+-
+-# _LT_CONFIG(TAG)
+-# ---------------
+-# If TAG is the built-in tag, create an initial libtool script with a
+-# default configuration from the untagged config vars.  Otherwise add code
+-# to config.status for appending the configuration named by TAG from the
+-# matching tagged config vars.
+-m4_defun([_LT_CONFIG],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-_LT_CONFIG_SAVE_COMMANDS([
+-  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
+-  m4_if(_LT_TAG, [C], [
+-    # See if we are running on zsh, and set the options which allow our
+-    # commands through without removal of \ escapes.
+-    if test -n "${ZSH_VERSION+set}" ; then
+-      setopt NO_GLOB_SUBST
+-    fi
+-
+-    cfgfile="${ofile}T"
+-    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+-    $RM "$cfgfile"
+-
+-    cat <<_LT_EOF >> "$cfgfile"
+-#! $SHELL
+-
+-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+-#
+-_LT_COPYING
+-_LT_LIBTOOL_TAGS
+-
+-# ### BEGIN LIBTOOL CONFIG
+-_LT_LIBTOOL_CONFIG_VARS
+-_LT_LIBTOOL_TAG_VARS
+-# ### END LIBTOOL CONFIG
+-
+-_LT_EOF
+-
+-  case $host_os in
+-  aix3*)
+-    cat <<\_LT_EOF >> "$cfgfile"
+-# AIX sometimes has problems with the GCC collect2 program.  For some
+-# reason, if we set the COLLECT_NAMES environment variable, the problems
+-# vanish in a puff of smoke.
+-if test "X${COLLECT_NAMES+set}" != Xset; then
+-  COLLECT_NAMES=
+-  export COLLECT_NAMES
+-fi
+-_LT_EOF
+-    ;;
+-  esac
+-
+-  _LT_PROG_LTMAIN
+-
+-  # We use sed instead of cat because bash on DJGPP gets confused if
+-  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
+-  # text mode, it properly converts lines to CR/LF.  This bash problem
+-  # is reportedly fixed, but why not run on old versions too?
+-  sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+-    || (rm -f "$cfgfile"; exit 1)
+-
+-  _LT_PROG_XSI_SHELLFNS
+-
+-  sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+-    || (rm -f "$cfgfile"; exit 1)
+-
+-  mv -f "$cfgfile" "$ofile" ||
+-    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+-  chmod +x "$ofile"
+-],
+-[cat <<_LT_EOF >> "$ofile"
+-
+-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
+-dnl in a comment (ie after a #).
+-# ### BEGIN LIBTOOL TAG CONFIG: $1
+-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
+-# ### END LIBTOOL TAG CONFIG: $1
+-_LT_EOF
+-])dnl /m4_if
+-],
+-[m4_if([$1], [], [
+-    PACKAGE='$PACKAGE'
+-    VERSION='$VERSION'
+-    TIMESTAMP='$TIMESTAMP'
+-    RM='$RM'
+-    ofile='$ofile'], [])
+-])dnl /_LT_CONFIG_SAVE_COMMANDS
+-])# _LT_CONFIG
+-
+-
+-# LT_SUPPORTED_TAG(TAG)
+-# ---------------------
+-# Trace this macro to discover what tags are supported by the libtool
+-# --tag option, using:
+-#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
+-AC_DEFUN([LT_SUPPORTED_TAG], [])
+-
+-
+-# C support is built-in for now
+-m4_define([_LT_LANG_C_enabled], [])
+-m4_define([_LT_TAGS], [])
+-
+-
+-# LT_LANG(LANG)
+-# -------------
+-# Enable libtool support for the given language if not already enabled.
+-AC_DEFUN([LT_LANG],
+-[AC_BEFORE([$0], [LT_OUTPUT])dnl
+-m4_case([$1],
+-  [C],			[_LT_LANG(C)],
+-  [C++],		[_LT_LANG(CXX)],
+-  [Java],		[_LT_LANG(GCJ)],
+-  [Fortran 77],		[_LT_LANG(F77)],
+-  [Fortran],		[_LT_LANG(FC)],
+-  [Windows Resource],	[_LT_LANG(RC)],
+-  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
+-    [_LT_LANG($1)],
+-    [m4_fatal([$0: unsupported language: "$1"])])])dnl
+-])# LT_LANG
+-
+-
+-# _LT_LANG(LANGNAME)
+-# ------------------
+-m4_defun([_LT_LANG],
+-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
+-  [LT_SUPPORTED_TAG([$1])dnl
+-  m4_append([_LT_TAGS], [$1 ])dnl
+-  m4_define([_LT_LANG_]$1[_enabled], [])dnl
+-  _LT_LANG_$1_CONFIG($1)])dnl
+-])# _LT_LANG
+-
+-
+-# _LT_LANG_DEFAULT_CONFIG
+-# -----------------------
+-m4_defun([_LT_LANG_DEFAULT_CONFIG],
+-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
+-  [LT_LANG(CXX)],
+-  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
+-
+-AC_PROVIDE_IFELSE([AC_PROG_F77],
+-  [LT_LANG(F77)],
+-  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
+-
+-AC_PROVIDE_IFELSE([AC_PROG_FC],
+-  [LT_LANG(FC)],
+-  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
+-
+-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
+-dnl pulling things in needlessly.
+-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
+-  [LT_LANG(GCJ)],
+-  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
+-    [LT_LANG(GCJ)],
+-    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
+-      [LT_LANG(GCJ)],
+-      [m4_ifdef([AC_PROG_GCJ],
+-	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
+-       m4_ifdef([A][M_PROG_GCJ],
+-	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
+-       m4_ifdef([LT_PROG_GCJ],
+-	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
+-
+-AC_PROVIDE_IFELSE([LT_PROG_RC],
+-  [LT_LANG(RC)],
+-  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
+-])# _LT_LANG_DEFAULT_CONFIG
+-
+-# Obsolete macros:
+-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
+-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
+-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
+-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
+-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
+-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
+-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
+-
+-
+-# _LT_TAG_COMPILER
+-# ----------------
+-m4_defun([_LT_TAG_COMPILER],
+-[AC_REQUIRE([AC_PROG_CC])dnl
+-
+-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
+-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
+-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
+-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
+-
+-# If no C compiler was specified, use CC.
+-LTCC=${LTCC-"$CC"}
+-
+-# If no C compiler flags were specified, use CFLAGS.
+-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+-
+-# Allow CC to be a program name with arguments.
+-compiler=$CC
+-])# _LT_TAG_COMPILER
+-
+-
+-# _LT_COMPILER_BOILERPLATE
+-# ------------------------
+-# Check for compiler boilerplate output or warnings with
+-# the simple compiler test code.
+-m4_defun([_LT_COMPILER_BOILERPLATE],
+-[m4_require([_LT_DECL_SED])dnl
+-ac_outfile=conftest.$ac_objext
+-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+-_lt_compiler_boilerplate=`cat conftest.err`
+-$RM conftest*
+-])# _LT_COMPILER_BOILERPLATE
+-
+-
+-# _LT_LINKER_BOILERPLATE
+-# ----------------------
+-# Check for linker boilerplate output or warnings with
+-# the simple link test code.
+-m4_defun([_LT_LINKER_BOILERPLATE],
+-[m4_require([_LT_DECL_SED])dnl
+-ac_outfile=conftest.$ac_objext
+-echo "$lt_simple_link_test_code" >conftest.$ac_ext
+-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+-_lt_linker_boilerplate=`cat conftest.err`
+-$RM -r conftest*
+-])# _LT_LINKER_BOILERPLATE
+-
+-# _LT_REQUIRED_DARWIN_CHECKS
+-# -------------------------
+-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
+-  case $host_os in
+-    rhapsody* | darwin*)
+-    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+-    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+-    AC_CHECK_TOOL([LIPO], [lipo], [:])
+-    AC_CHECK_TOOL([OTOOL], [otool], [:])
+-    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
+-    _LT_DECL([], [DSYMUTIL], [1],
+-      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
+-    _LT_DECL([], [NMEDIT], [1],
+-      [Tool to change global to local symbols on Mac OS X])
+-    _LT_DECL([], [LIPO], [1],
+-      [Tool to manipulate fat objects and archives on Mac OS X])
+-    _LT_DECL([], [OTOOL], [1],
+-      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+-    _LT_DECL([], [OTOOL64], [1],
+-      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
+-
+-    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+-      [lt_cv_apple_cc_single_mod=no
+-      if test -z "${LT_MULTI_MODULE}"; then
+-	# By default we will add the -single_module flag. You can override
+-	# by either setting the environment variable LT_MULTI_MODULE
+-	# non-empty at configure time, or by adding -multi_module to the
+-	# link flags.
+-	rm -rf libconftest.dylib*
+-	echo "int foo(void){return 1;}" > conftest.c
+-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
+-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+-        _lt_result=$?
+-	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+-	  lt_cv_apple_cc_single_mod=yes
+-	else
+-	  cat conftest.err >&AS_MESSAGE_LOG_FD
+-	fi
+-	rm -rf libconftest.dylib*
+-	rm -f conftest.*
+-      fi])
+-    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+-      [lt_cv_ld_exported_symbols_list],
+-      [lt_cv_ld_exported_symbols_list=no
+-      save_LDFLAGS=$LDFLAGS
+-      echo "_main" > conftest.sym
+-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+-      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+-	[lt_cv_ld_exported_symbols_list=yes],
+-	[lt_cv_ld_exported_symbols_list=no])
+-	LDFLAGS="$save_LDFLAGS"
+-    ])
+-    case $host_os in
+-    rhapsody* | darwin1.[[012]])
+-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+-    darwin1.*)
+-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+-    darwin*) # darwin 5.x on
+-      # if running on 10.5 or later, the deployment target defaults
+-      # to the OS version, if on x86, and 10.4, the deployment
+-      # target defaults to 10.4. Don't you love it?
+-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+-	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[[012]]*)
+-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+-	10.*)
+-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-      esac
+-    ;;
+-  esac
+-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+-      _lt_dar_single_mod='$single_module'
+-    fi
+-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+-    else
+-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+-    fi
+-    if test "$DSYMUTIL" != ":"; then
+-      _lt_dsymutil='~$DSYMUTIL $lib || :'
+-    else
+-      _lt_dsymutil=
+-    fi
+-    ;;
+-  esac
+-])
+-
+-
+-# _LT_DARWIN_LINKER_FEATURES
+-# --------------------------
+-# Checks for linker and compiler features on darwin
+-m4_defun([_LT_DARWIN_LINKER_FEATURES],
+-[
+-  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
+-  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-  _LT_TAGVAR(hardcode_direct, $1)=no
+-  _LT_TAGVAR(hardcode_automatic, $1)=yes
+-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+-  _LT_TAGVAR(whole_archive_flag_spec, $1)=''
+-  _LT_TAGVAR(link_all_deplibs, $1)=yes
+-  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+-  case $cc_basename in
+-     ifort*) _lt_dar_can_shared=yes ;;
+-     *) _lt_dar_can_shared=$GCC ;;
+-  esac
+-  if test "$_lt_dar_can_shared" = "yes"; then
+-    output_verbose_link_cmd=echo
+-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+-    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+-    m4_if([$1], [CXX],
+-[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+-    fi
+-],[])
+-  else
+-  _LT_TAGVAR(ld_shlibs, $1)=no
+-  fi
+-])
+-
+-# _LT_SYS_MODULE_PATH_AIX
+-# -----------------------
+-# Links a minimal program and checks the executable
+-# for the system default hardcoded library path. In most cases,
+-# this is /usr/lib:/lib, but when the MPI compilers are used
+-# the location of the communication and MPI libs are included too.
+-# If we don't find anything, use the default library path according
+-# to the aix ld manual.
+-m4_defun([_LT_SYS_MODULE_PATH_AIX],
+-[m4_require([_LT_DECL_SED])dnl
+-AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+-lt_aix_libpath_sed='
+-    /Import File Strings/,/^$/ {
+-	/^0/ {
+-	    s/^0  *\(.*\)$/\1/
+-	    p
+-	}
+-    }'
+-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-# Check for a 64-bit object if we didn't find anything.
+-if test -z "$aix_libpath"; then
+-  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-fi],[])
+-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+-])# _LT_SYS_MODULE_PATH_AIX
+-
+-
+-# _LT_SHELL_INIT(ARG)
+-# -------------------
+-m4_define([_LT_SHELL_INIT],
+-[ifdef([AC_DIVERSION_NOTICE],
+-	     [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
+-	 [AC_DIVERT_PUSH(NOTICE)])
+-$1
+-AC_DIVERT_POP
+-])# _LT_SHELL_INIT
+-
+-
+-# _LT_PROG_ECHO_BACKSLASH
+-# -----------------------
+-# Add some code to the start of the generated configure script which
+-# will find an echo command which doesn't interpret backslashes.
+-m4_defun([_LT_PROG_ECHO_BACKSLASH],
+-[_LT_SHELL_INIT([
+-# Check that we are running under the correct shell.
+-SHELL=${CONFIG_SHELL-/bin/sh}
+-
+-case X$lt_ECHO in
+-X*--fallback-echo)
+-  # Remove one level of quotation (which was required for Make).
+-  ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
+-  ;;
+-esac
+-
+-ECHO=${lt_ECHO-echo}
+-if test "X[$]1" = X--no-reexec; then
+-  # Discard the --no-reexec flag, and continue.
+-  shift
+-elif test "X[$]1" = X--fallback-echo; then
+-  # Avoid inline document here, it may be left over
+-  :
+-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
+-  # Yippee, $ECHO works!
+-  :
+-else
+-  # Restart under the correct shell.
+-  exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
+-fi
+-
+-if test "X[$]1" = X--fallback-echo; then
+-  # used as fallback echo
+-  shift
+-  cat <<_LT_EOF
+-[$]*
+-_LT_EOF
+-  exit 0
+-fi
+-
+-# The HP-UX ksh and POSIX shell print the target directory to stdout
+-# if CDPATH is set.
+-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+-
+-if test -z "$lt_ECHO"; then
+-  if test "X${echo_test_string+set}" != Xset; then
+-    # find a string as large as possible, as long as the shell can cope with it
+-    for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
+-      # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+-      if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
+-	 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
+-      then
+-        break
+-      fi
+-    done
+-  fi
+-
+-  if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+-     echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+-     test "X$echo_testing_string" = "X$echo_test_string"; then
+-    :
+-  else
+-    # The Solaris, AIX, and Digital Unix default echo programs unquote
+-    # backslashes.  This makes it impossible to quote backslashes using
+-    #   echo "$something" | sed 's/\\/\\\\/g'
+-    #
+-    # So, first we look for a working echo in the user's PATH.
+-
+-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-    for dir in $PATH /usr/ucb; do
+-      IFS="$lt_save_ifs"
+-      if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+-         test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+-         echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+-         test "X$echo_testing_string" = "X$echo_test_string"; then
+-        ECHO="$dir/echo"
+-        break
+-      fi
+-    done
+-    IFS="$lt_save_ifs"
+-
+-    if test "X$ECHO" = Xecho; then
+-      # We didn't find a better echo, so look for alternatives.
+-      if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
+-         echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
+-         test "X$echo_testing_string" = "X$echo_test_string"; then
+-        # This shell has a builtin print -r that does the trick.
+-        ECHO='print -r'
+-      elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
+-	   test "X$CONFIG_SHELL" != X/bin/ksh; then
+-        # If we have ksh, try running configure again with it.
+-        ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+-        export ORIGINAL_CONFIG_SHELL
+-        CONFIG_SHELL=/bin/ksh
+-        export CONFIG_SHELL
+-        exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
+-      else
+-        # Try using printf.
+-        ECHO='printf %s\n'
+-        if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+-	   echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+-	   test "X$echo_testing_string" = "X$echo_test_string"; then
+-	  # Cool, printf works
+-	  :
+-        elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+-	     test "X$echo_testing_string" = 'X\t' &&
+-	     echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+-	     test "X$echo_testing_string" = "X$echo_test_string"; then
+-	  CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+-	  export CONFIG_SHELL
+-	  SHELL="$CONFIG_SHELL"
+-	  export SHELL
+-	  ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+-        elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+-	     test "X$echo_testing_string" = 'X\t' &&
+-	     echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+-	     test "X$echo_testing_string" = "X$echo_test_string"; then
+-	  ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+-        else
+-	  # maybe with a smaller string...
+-	  prev=:
+-
+-	  for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
+-	    if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
+-	    then
+-	      break
+-	    fi
+-	    prev="$cmd"
+-	  done
+-
+-	  if test "$prev" != 'sed 50q "[$]0"'; then
+-	    echo_test_string=`eval $prev`
+-	    export echo_test_string
+-	    exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
+-	  else
+-	    # Oops.  We lost completely, so just stick with echo.
+-	    ECHO=echo
+-	  fi
+-        fi
+-      fi
+-    fi
+-  fi
+-fi
+-
+-# Copy echo and quote the copy suitably for passing to libtool from
+-# the Makefile, instead of quoting the original, which is used later.
+-lt_ECHO=$ECHO
+-if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
+-   lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
+-fi
+-
+-AC_SUBST(lt_ECHO)
+-])
+-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
+-_LT_DECL([], [ECHO], [1],
+-    [An echo program that does not interpret backslashes])
+-])# _LT_PROG_ECHO_BACKSLASH
+-
+-
+-# _LT_ENABLE_LOCK
+-# ---------------
+-m4_defun([_LT_ENABLE_LOCK],
+-[AC_ARG_ENABLE([libtool-lock],
+-  [AS_HELP_STRING([--disable-libtool-lock],
+-    [avoid locking (might break parallel builds)])])
+-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+-
+-# Some flags need to be propagated to the compiler or linker for good
+-# libtool support.
+-case $host in
+-ia64-*-hpux*)
+-  # Find out which ABI we are using.
+-  echo 'int i;' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    case `/usr/bin/file conftest.$ac_objext` in
+-      *ELF-32*)
+-	HPUX_IA64_MODE="32"
+-	;;
+-      *ELF-64*)
+-	HPUX_IA64_MODE="64"
+-	;;
+-    esac
+-  fi
+-  rm -rf conftest*
+-  ;;
+-*-*-irix6*)
+-  # Find out which ABI we are using.
+-  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    if test "$lt_cv_prog_gnu_ld" = yes; then
+-      case `/usr/bin/file conftest.$ac_objext` in
+-	*32-bit*)
+-	  LD="${LD-ld} -melf32bsmip"
+-	  ;;
+-	*N32*)
+-	  LD="${LD-ld} -melf32bmipn32"
+-	  ;;
+-	*64-bit*)
+-	  LD="${LD-ld} -melf64bmip"
+-	;;
+-      esac
+-    else
+-      case `/usr/bin/file conftest.$ac_objext` in
+-	*32-bit*)
+-	  LD="${LD-ld} -32"
+-	  ;;
+-	*N32*)
+-	  LD="${LD-ld} -n32"
+-	  ;;
+-	*64-bit*)
+-	  LD="${LD-ld} -64"
+-	  ;;
+-      esac
+-    fi
+-  fi
+-  rm -rf conftest*
+-  ;;
+-
+-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+-  # Find out which ABI we are using.
+-  echo 'int i;' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    case `/usr/bin/file conftest.o` in
+-      *32-bit*)
+-	case $host in
+-	  x86_64-*kfreebsd*-gnu)
+-	    LD="${LD-ld} -m elf_i386_fbsd"
+-	    ;;
+-	  x86_64-*linux*)
+-	    LD="${LD-ld} -m elf_i386"
+-	    ;;
+-	  ppc64-*linux*|powerpc64-*linux*)
+-	    LD="${LD-ld} -m elf32ppclinux"
+-	    ;;
+-	  s390x-*linux*)
+-	    LD="${LD-ld} -m elf_s390"
+-	    ;;
+-	  sparc64-*linux*)
+-	    LD="${LD-ld} -m elf32_sparc"
+-	    ;;
+-	esac
+-	;;
+-      *64-bit*)
+-	case $host in
+-	  x86_64-*kfreebsd*-gnu)
+-	    LD="${LD-ld} -m elf_x86_64_fbsd"
+-	    ;;
+-	  x86_64-*linux*)
+-	    LD="${LD-ld} -m elf_x86_64"
+-	    ;;
+-	  ppc*-*linux*|powerpc*-*linux*)
+-	    LD="${LD-ld} -m elf64ppc"
+-	    ;;
+-	  s390*-*linux*|s390*-*tpf*)
+-	    LD="${LD-ld} -m elf64_s390"
+-	    ;;
+-	  sparc*-*linux*)
+-	    LD="${LD-ld} -m elf64_sparc"
+-	    ;;
+-	esac
+-	;;
+-    esac
+-  fi
+-  rm -rf conftest*
+-  ;;
+-
+-*-*-sco3.2v5*)
+-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+-  SAVE_CFLAGS="$CFLAGS"
+-  CFLAGS="$CFLAGS -belf"
+-  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+-    [AC_LANG_PUSH(C)
+-     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+-     AC_LANG_POP])
+-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+-    CFLAGS="$SAVE_CFLAGS"
+-  fi
+-  ;;
+-sparc*-*solaris*)
+-  # Find out which ABI we are using.
+-  echo 'int i;' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    case `/usr/bin/file conftest.o` in
+-    *64-bit*)
+-      case $lt_cv_prog_gnu_ld in
+-      yes*) LD="${LD-ld} -m elf64_sparc" ;;
+-      *)
+-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+-	  LD="${LD-ld} -64"
+-	fi
+-	;;
+-      esac
+-      ;;
+-    esac
+-  fi
+-  rm -rf conftest*
+-  ;;
+-esac
+-
+-need_locks="$enable_libtool_lock"
+-])# _LT_ENABLE_LOCK
+-
+-
+-# _LT_CMD_OLD_ARCHIVE
+-# -------------------
+-m4_defun([_LT_CMD_OLD_ARCHIVE],
+-[AC_CHECK_TOOL(AR, ar, false)
+-test -z "$AR" && AR=ar
+-test -z "$AR_FLAGS" && AR_FLAGS=cru
+-_LT_DECL([], [AR], [1], [The archiver])
+-_LT_DECL([], [AR_FLAGS], [1])
+-
+-AC_CHECK_TOOL(STRIP, strip, :)
+-test -z "$STRIP" && STRIP=:
+-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
+-
+-AC_CHECK_TOOL(RANLIB, ranlib, :)
+-test -z "$RANLIB" && RANLIB=:
+-_LT_DECL([], [RANLIB], [1],
+-    [Commands used to install an old-style archive])
+-
+-# Determine commands to create old-style static archives.
+-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+-old_postinstall_cmds='chmod 644 $oldlib'
+-old_postuninstall_cmds=
+-
+-if test -n "$RANLIB"; then
+-  case $host_os in
+-  openbsd*)
+-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
+-    ;;
+-  *)
+-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
+-    ;;
+-  esac
+-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+-fi
+-_LT_DECL([], [old_postinstall_cmds], [2])
+-_LT_DECL([], [old_postuninstall_cmds], [2])
+-_LT_TAGDECL([], [old_archive_cmds], [2],
+-    [Commands used to build an old-style archive])
+-])# _LT_CMD_OLD_ARCHIVE
+-
+-
+-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+-#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
+-# ----------------------------------------------------------------
+-# Check whether the given compiler option works
+-AC_DEFUN([_LT_COMPILER_OPTION],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_SED])dnl
+-AC_CACHE_CHECK([$1], [$2],
+-  [$2=no
+-   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
+-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+-   lt_compiler_flag="$3"
+-   # Insert the option either (1) after the last *FLAGS variable, or
+-   # (2) before a word containing "conftest.", or (3) at the end.
+-   # Note that $ac_compile itself does not contain backslashes and begins
+-   # with a dollar sign (not a hyphen), so the echo should work correctly.
+-   # The option is referenced via a variable to avoid confusing sed.
+-   lt_compile=`echo "$ac_compile" | $SED \
+-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+-   -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+-   (eval "$lt_compile" 2>conftest.err)
+-   ac_status=$?
+-   cat conftest.err >&AS_MESSAGE_LOG_FD
+-   echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+-   if (exit $ac_status) && test -s "$ac_outfile"; then
+-     # The compiler can only warn and ignore the option if not recognized
+-     # So say no if there are warnings other than the usual output.
+-     $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+-       $2=yes
+-     fi
+-   fi
+-   $RM conftest*
+-])
+-
+-if test x"[$]$2" = xyes; then
+-    m4_if([$5], , :, [$5])
+-else
+-    m4_if([$6], , :, [$6])
+-fi
+-])# _LT_COMPILER_OPTION
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
+-
+-
+-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+-#                  [ACTION-SUCCESS], [ACTION-FAILURE])
+-# ----------------------------------------------------
+-# Check whether the given linker option works
+-AC_DEFUN([_LT_LINKER_OPTION],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_SED])dnl
+-AC_CACHE_CHECK([$1], [$2],
+-  [$2=no
+-   save_LDFLAGS="$LDFLAGS"
+-   LDFLAGS="$LDFLAGS $3"
+-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
+-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+-     # The linker can only warn and ignore the option if not recognized
+-     # So say no if there are warnings
+-     if test -s conftest.err; then
+-       # Append any errors to the config.log.
+-       cat conftest.err 1>&AS_MESSAGE_LOG_FD
+-       $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+-       if diff conftest.exp conftest.er2 >/dev/null; then
+-         $2=yes
+-       fi
+-     else
+-       $2=yes
+-     fi
+-   fi
+-   $RM -r conftest*
+-   LDFLAGS="$save_LDFLAGS"
+-])
+-
+-if test x"[$]$2" = xyes; then
+-    m4_if([$4], , :, [$4])
+-else
+-    m4_if([$5], , :, [$5])
+-fi
+-])# _LT_LINKER_OPTION
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
+-
+-
+-# LT_CMD_MAX_LEN
+-#---------------
+-AC_DEFUN([LT_CMD_MAX_LEN],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-# find the maximum length of command line arguments
+-AC_MSG_CHECKING([the maximum length of command line arguments])
+-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
+-  i=0
+-  teststring="ABCD"
+-
+-  case $build_os in
+-  msdosdjgpp*)
+-    # On DJGPP, this test can blow up pretty badly due to problems in libc
+-    # (any single argument exceeding 2000 bytes causes a buffer overrun
+-    # during glob expansion).  Even if it were fixed, the result of this
+-    # check would be larger than it should be.
+-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
+-    ;;
+-
+-  gnu*)
+-    # Under GNU Hurd, this test is not required because there is
+-    # no limit to the length of command line arguments.
+-    # Libtool will interpret -1 as no limit whatsoever
+-    lt_cv_sys_max_cmd_len=-1;
+-    ;;
+-
+-  cygwin* | mingw* | cegcc*)
+-    # On Win9x/ME, this test blows up -- it succeeds, but takes
+-    # about 5 minutes as the teststring grows exponentially.
+-    # Worse, since 9x/ME are not pre-emptively multitasking,
+-    # you end up with a "frozen" computer, even though with patience
+-    # the test eventually succeeds (with a max line length of 256k).
+-    # Instead, let's just punt: use the minimum linelength reported by
+-    # all of the supported platforms: 8192 (on NT/2K/XP).
+-    lt_cv_sys_max_cmd_len=8192;
+-    ;;
+-
+-  amigaos*)
+-    # On AmigaOS with pdksh, this test takes hours, literally.
+-    # So we just punt and use a minimum line length of 8192.
+-    lt_cv_sys_max_cmd_len=8192;
+-    ;;
+-
+-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+-    # This has been around since 386BSD, at least.  Likely further.
+-    if test -x /sbin/sysctl; then
+-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+-    elif test -x /usr/sbin/sysctl; then
+-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+-    else
+-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
+-    fi
+-    # And add a safety zone
+-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+-    ;;
+-
+-  interix*)
+-    # We know the value 262144 and hardcode it with a safety zone (like BSD)
+-    lt_cv_sys_max_cmd_len=196608
+-    ;;
+-
+-  osf*)
+-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+-    # nice to cause kernel panics so lets avoid the loop below.
+-    # First set a reasonable default.
+-    lt_cv_sys_max_cmd_len=16384
+-    #
+-    if test -x /sbin/sysconfig; then
+-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+-        *1*) lt_cv_sys_max_cmd_len=-1 ;;
+-      esac
+-    fi
+-    ;;
+-  sco3.2v5*)
+-    lt_cv_sys_max_cmd_len=102400
+-    ;;
+-  sysv5* | sco5v6* | sysv4.2uw2*)
+-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+-    if test -n "$kargmax"; then
+-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
+-    else
+-      lt_cv_sys_max_cmd_len=32768
+-    fi
+-    ;;
+-  *)
+-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+-    if test -n "$lt_cv_sys_max_cmd_len"; then
+-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+-    else
+-      # Make teststring a little bigger before we do anything with it.
+-      # a 1K string should be a reasonable start.
+-      for i in 1 2 3 4 5 6 7 8 ; do
+-        teststring=$teststring$teststring
+-      done
+-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+-      # If test is not a shell built-in, we'll probably end up computing a
+-      # maximum length that is only half of the actual maximum length, but
+-      # we can't tell.
+-      while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
+-	         = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
+-	      test $i != 17 # 1/2 MB should be enough
+-      do
+-        i=`expr $i + 1`
+-        teststring=$teststring$teststring
+-      done
+-      # Only check the string length outside the loop.
+-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+-      teststring=
+-      # Add a significant safety factor because C++ compilers can tack on
+-      # massive amounts of additional arguments before passing them to the
+-      # linker.  It appears as though 1/2 is a usable value.
+-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+-    fi
+-    ;;
+-  esac
+-])
+-if test -n $lt_cv_sys_max_cmd_len ; then
+-  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
+-else
+-  AC_MSG_RESULT(none)
+-fi
+-max_cmd_len=$lt_cv_sys_max_cmd_len
+-_LT_DECL([], [max_cmd_len], [0],
+-    [What is the maximum length of a command?])
+-])# LT_CMD_MAX_LEN
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
+-
+-
+-# _LT_HEADER_DLFCN
+-# ----------------
+-m4_defun([_LT_HEADER_DLFCN],
+-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
+-])# _LT_HEADER_DLFCN
+-
+-
+-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+-#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+-# ----------------------------------------------------------------
+-m4_defun([_LT_TRY_DLOPEN_SELF],
+-[m4_require([_LT_HEADER_DLFCN])dnl
+-if test "$cross_compiling" = yes; then :
+-  [$4]
+-else
+-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+-  lt_status=$lt_dlunknown
+-  cat > conftest.$ac_ext <<_LT_EOF
+-[#line __oline__ "configure"
+-#include "confdefs.h"
+-
+-#if HAVE_DLFCN_H
+-#include <dlfcn.h>
+-#endif
+-
+-#include <stdio.h>
+-
+-#ifdef RTLD_GLOBAL
+-#  define LT_DLGLOBAL		RTLD_GLOBAL
+-#else
+-#  ifdef DL_GLOBAL
+-#    define LT_DLGLOBAL		DL_GLOBAL
+-#  else
+-#    define LT_DLGLOBAL		0
+-#  endif
+-#endif
+-
+-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+-   find out it does not work in some platform. */
+-#ifndef LT_DLLAZY_OR_NOW
+-#  ifdef RTLD_LAZY
+-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
+-#  else
+-#    ifdef DL_LAZY
+-#      define LT_DLLAZY_OR_NOW		DL_LAZY
+-#    else
+-#      ifdef RTLD_NOW
+-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
+-#      else
+-#        ifdef DL_NOW
+-#          define LT_DLLAZY_OR_NOW	DL_NOW
+-#        else
+-#          define LT_DLLAZY_OR_NOW	0
+-#        endif
+-#      endif
+-#    endif
+-#  endif
+-#endif
+-
+-void fnord() { int i=42;}
+-int main ()
+-{
+-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+-  int status = $lt_dlunknown;
+-
+-  if (self)
+-    {
+-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
+-      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+-      /* dlclose (self); */
+-    }
+-  else
+-    puts (dlerror ());
+-
+-  return status;
+-}]
+-_LT_EOF
+-  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+-    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
+-    lt_status=$?
+-    case x$lt_status in
+-      x$lt_dlno_uscore) $1 ;;
+-      x$lt_dlneed_uscore) $2 ;;
+-      x$lt_dlunknown|x*) $3 ;;
+-    esac
+-  else :
+-    # compilation failed
+-    $3
+-  fi
+-fi
+-rm -fr conftest*
+-])# _LT_TRY_DLOPEN_SELF
+-
+-
+-# LT_SYS_DLOPEN_SELF
+-# ------------------
+-AC_DEFUN([LT_SYS_DLOPEN_SELF],
+-[m4_require([_LT_HEADER_DLFCN])dnl
+-if test "x$enable_dlopen" != xyes; then
+-  enable_dlopen=unknown
+-  enable_dlopen_self=unknown
+-  enable_dlopen_self_static=unknown
+-else
+-  lt_cv_dlopen=no
+-  lt_cv_dlopen_libs=
+-
+-  case $host_os in
+-  beos*)
+-    lt_cv_dlopen="load_add_on"
+-    lt_cv_dlopen_libs=
+-    lt_cv_dlopen_self=yes
+-    ;;
+-
+-  mingw* | pw32* | cegcc*)
+-    lt_cv_dlopen="LoadLibrary"
+-    lt_cv_dlopen_libs=
+-    ;;
+-
+-  cygwin*)
+-    lt_cv_dlopen="dlopen"
+-    lt_cv_dlopen_libs=
+-    ;;
+-
+-  darwin*)
+-  # if libdl is installed we need to link against it
+-    AC_CHECK_LIB([dl], [dlopen],
+-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
+-    lt_cv_dlopen="dyld"
+-    lt_cv_dlopen_libs=
+-    lt_cv_dlopen_self=yes
+-    ])
+-    ;;
+-
+-  *)
+-    AC_CHECK_FUNC([shl_load],
+-	  [lt_cv_dlopen="shl_load"],
+-      [AC_CHECK_LIB([dld], [shl_load],
+-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
+-	[AC_CHECK_FUNC([dlopen],
+-	      [lt_cv_dlopen="dlopen"],
+-	  [AC_CHECK_LIB([dl], [dlopen],
+-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+-	    [AC_CHECK_LIB([svld], [dlopen],
+-		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+-	      [AC_CHECK_LIB([dld], [dld_link],
+-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
+-	      ])
+-	    ])
+-	  ])
+-	])
+-      ])
+-    ;;
+-  esac
+-
+-  if test "x$lt_cv_dlopen" != xno; then
+-    enable_dlopen=yes
+-  else
+-    enable_dlopen=no
+-  fi
+-
+-  case $lt_cv_dlopen in
+-  dlopen)
+-    save_CPPFLAGS="$CPPFLAGS"
+-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+-
+-    save_LDFLAGS="$LDFLAGS"
+-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+-
+-    save_LIBS="$LIBS"
+-    LIBS="$lt_cv_dlopen_libs $LIBS"
+-
+-    AC_CACHE_CHECK([whether a program can dlopen itself],
+-	  lt_cv_dlopen_self, [dnl
+-	  _LT_TRY_DLOPEN_SELF(
+-	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+-	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+-    ])
+-
+-    if test "x$lt_cv_dlopen_self" = xyes; then
+-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+-      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+-	  lt_cv_dlopen_self_static, [dnl
+-	  _LT_TRY_DLOPEN_SELF(
+-	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+-	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
+-      ])
+-    fi
+-
+-    CPPFLAGS="$save_CPPFLAGS"
+-    LDFLAGS="$save_LDFLAGS"
+-    LIBS="$save_LIBS"
+-    ;;
+-  esac
+-
+-  case $lt_cv_dlopen_self in
+-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+-  *) enable_dlopen_self=unknown ;;
+-  esac
+-
+-  case $lt_cv_dlopen_self_static in
+-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+-  *) enable_dlopen_self_static=unknown ;;
+-  esac
+-fi
+-_LT_DECL([dlopen_support], [enable_dlopen], [0],
+-	 [Whether dlopen is supported])
+-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
+-	 [Whether dlopen of programs is supported])
+-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
+-	 [Whether dlopen of statically linked programs is supported])
+-])# LT_SYS_DLOPEN_SELF
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
+-
+-
+-# _LT_COMPILER_C_O([TAGNAME])
+-# ---------------------------
+-# Check to see if options -c and -o are simultaneously supported by compiler.
+-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
+-m4_defun([_LT_COMPILER_C_O],
+-[m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_TAG_COMPILER])dnl
+-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
+-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
+-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
+-   $RM -r conftest 2>/dev/null
+-   mkdir conftest
+-   cd conftest
+-   mkdir out
+-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+-
+-   lt_compiler_flag="-o out/conftest2.$ac_objext"
+-   # Insert the option either (1) after the last *FLAGS variable, or
+-   # (2) before a word containing "conftest.", or (3) at the end.
+-   # Note that $ac_compile itself does not contain backslashes and begins
+-   # with a dollar sign (not a hyphen), so the echo should work correctly.
+-   lt_compile=`echo "$ac_compile" | $SED \
+-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+-   -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+-   (eval "$lt_compile" 2>out/conftest.err)
+-   ac_status=$?
+-   cat out/conftest.err >&AS_MESSAGE_LOG_FD
+-   echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
+-   then
+-     # The compiler can only warn and ignore the option if not recognized
+-     # So say no if there are warnings
+-     $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+-       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+-     fi
+-   fi
+-   chmod u+w . 2>&AS_MESSAGE_LOG_FD
+-   $RM conftest*
+-   # SGI C++ compiler will create directory out/ii_files/ for
+-   # template instantiation
+-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+-   $RM out/* && rmdir out
+-   cd ..
+-   $RM -r conftest
+-   $RM conftest*
+-])
+-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
+-	[Does compiler simultaneously support -c and -o options?])
+-])# _LT_COMPILER_C_O
+-
+-
+-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
+-# ----------------------------------
+-# Check to see if we can do hard links to lock some files if needed
+-m4_defun([_LT_COMPILER_FILE_LOCKS],
+-[m4_require([_LT_ENABLE_LOCK])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-_LT_COMPILER_C_O([$1])
+-
+-hard_links="nottested"
+-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+-  # do not overwrite the value of need_locks provided by the user
+-  AC_MSG_CHECKING([if we can lock with hard links])
+-  hard_links=yes
+-  $RM conftest*
+-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+-  touch conftest.a
+-  ln conftest.a conftest.b 2>&5 || hard_links=no
+-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+-  AC_MSG_RESULT([$hard_links])
+-  if test "$hard_links" = no; then
+-    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+-    need_locks=warn
+-  fi
+-else
+-  need_locks=no
+-fi
+-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
+-])# _LT_COMPILER_FILE_LOCKS
+-
+-
+-# _LT_CHECK_OBJDIR
+-# ----------------
+-m4_defun([_LT_CHECK_OBJDIR],
+-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
+-[rm -f .libs 2>/dev/null
+-mkdir .libs 2>/dev/null
+-if test -d .libs; then
+-  lt_cv_objdir=.libs
+-else
+-  # MS-DOS does not allow filenames that begin with a dot.
+-  lt_cv_objdir=_libs
+-fi
+-rmdir .libs 2>/dev/null])
+-objdir=$lt_cv_objdir
+-_LT_DECL([], [objdir], [0],
+-         [The name of the directory that contains temporary libtool files])dnl
+-m4_pattern_allow([LT_OBJDIR])dnl
+-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
+-  [Define to the sub-directory in which libtool stores uninstalled libraries.])
+-])# _LT_CHECK_OBJDIR
+-
+-
+-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
+-# --------------------------------------
+-# Check hardcoding attributes.
+-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
+-[AC_MSG_CHECKING([how to hardcode library paths into programs])
+-_LT_TAGVAR(hardcode_action, $1)=
+-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
+-   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
+-   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
+-
+-  # We can hardcode non-existent directories.
+-  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
+-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
+-     # have to relink, otherwise we might link with an installed library
+-     # when we should be linking with a yet-to-be-installed one
+-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
+-     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
+-    # Linking always hardcodes the temporary library directory.
+-    _LT_TAGVAR(hardcode_action, $1)=relink
+-  else
+-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
+-    _LT_TAGVAR(hardcode_action, $1)=immediate
+-  fi
+-else
+-  # We cannot hardcode anything, or else we can only hardcode existing
+-  # directories.
+-  _LT_TAGVAR(hardcode_action, $1)=unsupported
+-fi
+-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
+-
+-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
+-   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
+-  # Fast installation is not supported
+-  enable_fast_install=no
+-elif test "$shlibpath_overrides_runpath" = yes ||
+-     test "$enable_shared" = no; then
+-  # Fast installation is not necessary
+-  enable_fast_install=needless
+-fi
+-_LT_TAGDECL([], [hardcode_action], [0],
+-    [How to hardcode a shared library path into an executable])
+-])# _LT_LINKER_HARDCODE_LIBPATH
+-
+-
+-# _LT_CMD_STRIPLIB
+-# ----------------
+-m4_defun([_LT_CMD_STRIPLIB],
+-[m4_require([_LT_DECL_EGREP])
+-striplib=
+-old_striplib=
+-AC_MSG_CHECKING([whether stripping libraries is possible])
+-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+-  AC_MSG_RESULT([yes])
+-else
+-# FIXME - insert some real tests, host_os isn't really good enough
+-  case $host_os in
+-  darwin*)
+-    if test -n "$STRIP" ; then
+-      striplib="$STRIP -x"
+-      old_striplib="$STRIP -S"
+-      AC_MSG_RESULT([yes])
+-    else
+-      AC_MSG_RESULT([no])
+-    fi
+-    ;;
+-  *)
+-    AC_MSG_RESULT([no])
+-    ;;
+-  esac
+-fi
+-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
+-_LT_DECL([], [striplib], [1])
+-])# _LT_CMD_STRIPLIB
+-
+-
+-# _LT_SYS_DYNAMIC_LINKER([TAG])
+-# -----------------------------
+-# PORTME Fill in your ld.so characteristics
+-m4_defun([_LT_SYS_DYNAMIC_LINKER],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_OBJDUMP])dnl
+-m4_require([_LT_DECL_SED])dnl
+-AC_MSG_CHECKING([dynamic linker characteristics])
+-m4_if([$1],
+-	[], [
+-if test "$GCC" = yes; then
+-  case $host_os in
+-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+-    *) lt_awk_arg="/^libraries:/" ;;
+-  esac
+-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+-  if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
+-    # if the path contains ";" then we assume it to be the separator
+-    # otherwise default to the standard path separator (i.e. ":") - it is
+-    # assumed that no part of a normal pathname contains ";" but that should
+-    # okay in the real world where ";" in dirpaths is itself problematic.
+-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
+-  else
+-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
+-  fi
+-  # Ok, now we have the path, separated by spaces, we can step through it
+-  # and add multilib dir if necessary.
+-  lt_tmp_lt_search_path_spec=
+-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+-  for lt_sys_path in $lt_search_path_spec; do
+-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+-    else
+-      test -d "$lt_sys_path" && \
+-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+-    fi
+-  done
+-  lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
+-BEGIN {RS=" "; FS="/|\n";} {
+-  lt_foo="";
+-  lt_count=0;
+-  for (lt_i = NF; lt_i > 0; lt_i--) {
+-    if ($lt_i != "" && $lt_i != ".") {
+-      if ($lt_i == "..") {
+-        lt_count++;
+-      } else {
+-        if (lt_count == 0) {
+-          lt_foo="/" $lt_i lt_foo;
+-        } else {
+-          lt_count--;
+-        }
+-      }
+-    }
+-  }
+-  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
+-  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
+-}'`
+-  sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
+-else
+-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+-fi])
+-library_names_spec=
+-libname_spec='lib$name'
+-soname_spec=
+-shrext_cmds=".so"
+-postinstall_cmds=
+-postuninstall_cmds=
+-finish_cmds=
+-finish_eval=
+-shlibpath_var=
+-shlibpath_overrides_runpath=unknown
+-version_type=none
+-dynamic_linker="$host_os ld.so"
+-sys_lib_dlsearch_path_spec="/lib /usr/lib"
+-need_lib_prefix=unknown
+-hardcode_into_libs=no
+-
+-# when you set need_version to no, make sure it does not cause -set_version
+-# flags to be left without arguments
+-need_version=unknown
+-
+-case $host_os in
+-aix3*)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+-  shlibpath_var=LIBPATH
+-
+-  # AIX 3 has no versioning support, so we append a major version to the name.
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  ;;
+-
+-aix[[4-9]]*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  hardcode_into_libs=yes
+-  if test "$host_cpu" = ia64; then
+-    # AIX 5 supports IA64
+-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+-    shlibpath_var=LD_LIBRARY_PATH
+-  else
+-    # With GCC up to 2.95.x, collect2 would create an import file
+-    # for dependence libraries.  The import file would start with
+-    # the line `#! .'.  This would cause the generated library to
+-    # depend on `.', always an invalid library.  This was fixed in
+-    # development snapshots of GCC prior to 3.0.
+-    case $host_os in
+-      aix4 | aix4.[[01]] | aix4.[[01]].*)
+-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+-	   echo ' yes '
+-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+-	:
+-      else
+-	can_build_shared=no
+-      fi
+-      ;;
+-    esac
+-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+-    # soname into executable. Probably we can add versioning support to
+-    # collect2, so additional links can be useful in future.
+-    if test "$aix_use_runtimelinking" = yes; then
+-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+-      # instead of lib<name>.a to let people know that these are not
+-      # typical AIX shared libraries.
+-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    else
+-      # We preserve .a as extension for shared libraries through AIX4.2
+-      # and later when we are not doing run time linking.
+-      library_names_spec='${libname}${release}.a $libname.a'
+-      soname_spec='${libname}${release}${shared_ext}$major'
+-    fi
+-    shlibpath_var=LIBPATH
+-  fi
+-  ;;
+-
+-amigaos*)
+-  case $host_cpu in
+-  powerpc)
+-    # Since July 2007 AmigaOS4 officially supports .so libraries.
+-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    ;;
+-  m68k)
+-    library_names_spec='$libname.ixlibrary $libname.a'
+-    # Create ${libname}_ixlibrary.a entries in /sys/libs.
+-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+-    ;;
+-  esac
+-  ;;
+-
+-beos*)
+-  library_names_spec='${libname}${shared_ext}'
+-  dynamic_linker="$host_os ld.so"
+-  shlibpath_var=LIBRARY_PATH
+-  ;;
+-
+-bsdi[[45]]*)
+-  version_type=linux
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
+-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+-  # the default ld.so.conf also contains /usr/contrib/lib and
+-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+-  # libtool to hard-code these into programs
+-  ;;
+-
+-cygwin* | mingw* | pw32* | cegcc*)
+-  version_type=windows
+-  shrext_cmds=".dll"
+-  need_version=no
+-  need_lib_prefix=no
+-
+-  case $GCC,$host_os in
+-  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
+-    library_names_spec='$libname.dll.a'
+-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
+-    postinstall_cmds='base_file=`basename \${file}`~
+-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+-      dldir=$destdir/`dirname \$dlpath`~
+-      test -d \$dldir || mkdir -p \$dldir~
+-      $install_prog $dir/$dlname \$dldir/$dlname~
+-      chmod a+x \$dldir/$dlname~
+-      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+-        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+-      fi'
+-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+-      dlpath=$dir/\$dldll~
+-       $RM \$dlpath'
+-    shlibpath_overrides_runpath=yes
+-
+-    case $host_os in
+-    cygwin*)
+-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+-      sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+-      ;;
+-    mingw* | cegcc*)
+-      # MinGW DLLs use traditional 'lib' prefix
+-      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+-      sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+-      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
+-        # It is most probably a Windows format PATH printed by
+-        # mingw gcc, but we are running on Cygwin. Gcc prints its search
+-        # path with ; separators, and with drive letters. We can handle the
+-        # drive letters (cygwin fileutils understands them), so leave them,
+-        # especially as we might pass files found there to a mingw objdump,
+-        # which wouldn't understand a cygwinified path. Ahh.
+-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+-      else
+-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
+-      fi
+-      ;;
+-    pw32*)
+-      # pw32 DLLs use 'pw' prefix rather than 'lib'
+-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+-      ;;
+-    esac
+-    ;;
+-
+-  *)
+-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+-    ;;
+-  esac
+-  dynamic_linker='Win32 ld.exe'
+-  # FIXME: first we should search . and the directory the executable is in
+-  shlibpath_var=PATH
+-  ;;
+-
+-darwin* | rhapsody*)
+-  dynamic_linker="$host_os dyld"
+-  version_type=darwin
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+-  soname_spec='${libname}${release}${major}$shared_ext'
+-  shlibpath_overrides_runpath=yes
+-  shlibpath_var=DYLD_LIBRARY_PATH
+-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+-m4_if([$1], [],[
+-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
+-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+-  ;;
+-
+-dgux*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  ;;
+-
+-freebsd1*)
+-  dynamic_linker=no
+-  ;;
+-
+-freebsd* | dragonfly*)
+-  # DragonFly does not have aout.  When/if they implement a new
+-  # versioning mechanism, adjust this.
+-  if test -x /usr/bin/objformat; then
+-    objformat=`/usr/bin/objformat`
+-  else
+-    case $host_os in
+-    freebsd[[123]]*) objformat=aout ;;
+-    *) objformat=elf ;;
+-    esac
+-  fi
+-  version_type=freebsd-$objformat
+-  case $version_type in
+-    freebsd-elf*)
+-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+-      need_version=no
+-      need_lib_prefix=no
+-      ;;
+-    freebsd-*)
+-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+-      need_version=yes
+-      ;;
+-  esac
+-  shlibpath_var=LD_LIBRARY_PATH
+-  case $host_os in
+-  freebsd2*)
+-    shlibpath_overrides_runpath=yes
+-    ;;
+-  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
+-    shlibpath_overrides_runpath=yes
+-    hardcode_into_libs=yes
+-    ;;
+-  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+-  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
+-    shlibpath_overrides_runpath=no
+-    hardcode_into_libs=yes
+-    ;;
+-  *) # from 4.6 on, and DragonFly
+-    shlibpath_overrides_runpath=yes
+-    hardcode_into_libs=yes
+-    ;;
+-  esac
+-  ;;
+-
+-gnu*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  hardcode_into_libs=yes
+-  ;;
+-
+-hpux9* | hpux10* | hpux11*)
+-  # Give a soname corresponding to the major version so that dld.sl refuses to
+-  # link against other versions.
+-  version_type=sunos
+-  need_lib_prefix=no
+-  need_version=no
+-  case $host_cpu in
+-  ia64*)
+-    shrext_cmds='.so'
+-    hardcode_into_libs=yes
+-    dynamic_linker="$host_os dld.so"
+-    shlibpath_var=LD_LIBRARY_PATH
+-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    if test "X$HPUX_IA64_MODE" = X32; then
+-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+-    else
+-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+-    fi
+-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+-    ;;
+-  hppa*64*)
+-    shrext_cmds='.sl'
+-    hardcode_into_libs=yes
+-    dynamic_linker="$host_os dld.sl"
+-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+-    ;;
+-  *)
+-    shrext_cmds='.sl'
+-    dynamic_linker="$host_os dld.sl"
+-    shlibpath_var=SHLIB_PATH
+-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    ;;
+-  esac
+-  # HP-UX runs *really* slowly unless shared libraries are mode 555.
+-  postinstall_cmds='chmod 555 $lib'
+-  ;;
+-
+-interix[[3-9]]*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  ;;
+-
+-irix5* | irix6* | nonstopux*)
+-  case $host_os in
+-    nonstopux*) version_type=nonstopux ;;
+-    *)
+-	if test "$lt_cv_prog_gnu_ld" = yes; then
+-		version_type=linux
+-	else
+-		version_type=irix
+-	fi ;;
+-  esac
+-  need_lib_prefix=no
+-  need_version=no
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+-  case $host_os in
+-  irix5* | nonstopux*)
+-    libsuff= shlibsuff=
+-    ;;
+-  *)
+-    case $LD in # libtool.m4 will add one of these switches to LD
+-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+-      libsuff= shlibsuff= libmagic=32-bit;;
+-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+-      libsuff=32 shlibsuff=N32 libmagic=N32;;
+-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+-      libsuff=64 shlibsuff=64 libmagic=64-bit;;
+-    *) libsuff= shlibsuff= libmagic=never-match;;
+-    esac
+-    ;;
+-  esac
+-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+-  shlibpath_overrides_runpath=no
+-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+-  hardcode_into_libs=yes
+-  ;;
+-
+-# No shared lib support for Linux oldld, aout, or coff.
+-linux*oldld* | linux*aout* | linux*coff*)
+-  dynamic_linker=no
+-  ;;
+-
+-# This must be Linux ELF.
+-linux* | k*bsd*-gnu)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  # Some binutils ld are patched to set DT_RUNPATH
+-  save_LDFLAGS=$LDFLAGS
+-  save_libdir=$libdir
+-  eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
+-       LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
+-  AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+-    [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
+-       [shlibpath_overrides_runpath=yes])])
+-  LDFLAGS=$save_LDFLAGS
+-  libdir=$save_libdir
+-
+-  # This implies no fast_install, which is unacceptable.
+-  # Some rework will be needed to allow for fast_install
+-  # before this can be enabled.
+-  hardcode_into_libs=yes
+-
+-  # Append ld.so.conf contents to the search path
+-  if test -f /etc/ld.so.conf; then
+-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+-    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+-  fi
+-
+-  # We used to test for /lib/ld.so.1 and disable shared libraries on
+-  # powerpc, because MkLinux only supported shared libraries with the
+-  # GNU dynamic linker.  Since this was broken with cross compilers,
+-  # most powerpc-linux boxes support dynamic linking these days and
+-  # people can always --disable-shared, the test was removed, and we
+-  # assume the GNU/Linux dynamic linker is in use.
+-  dynamic_linker='GNU/Linux ld.so'
+-  ;;
+-
+-netbsd*)
+-  version_type=sunos
+-  need_lib_prefix=no
+-  need_version=no
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+-    dynamic_linker='NetBSD (a.out) ld.so'
+-  else
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    dynamic_linker='NetBSD ld.elf_so'
+-  fi
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  hardcode_into_libs=yes
+-  ;;
+-
+-newsos6)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  ;;
+-
+-*nto* | *qnx*)
+-  version_type=qnx
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  dynamic_linker='ldqnx.so'
+-  ;;
+-
+-openbsd*)
+-  version_type=sunos
+-  sys_lib_dlsearch_path_spec="/usr/lib"
+-  need_lib_prefix=no
+-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
+-  case $host_os in
+-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
+-    *)				need_version=no  ;;
+-  esac
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-    case $host_os in
+-      openbsd2.[[89]] | openbsd2.[[89]].*)
+-	shlibpath_overrides_runpath=no
+-	;;
+-      *)
+-	shlibpath_overrides_runpath=yes
+-	;;
+-      esac
+-  else
+-    shlibpath_overrides_runpath=yes
+-  fi
+-  ;;
+-
+-os2*)
+-  libname_spec='$name'
+-  shrext_cmds=".dll"
+-  need_lib_prefix=no
+-  library_names_spec='$libname${shared_ext} $libname.a'
+-  dynamic_linker='OS/2 ld.exe'
+-  shlibpath_var=LIBPATH
+-  ;;
+-
+-osf3* | osf4* | osf5*)
+-  version_type=osf
+-  need_lib_prefix=no
+-  need_version=no
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
+-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+-  ;;
+-
+-rdos*)
+-  dynamic_linker=no
+-  ;;
+-
+-solaris*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  hardcode_into_libs=yes
+-  # ldd complains unless libraries are executable
+-  postinstall_cmds='chmod +x $lib'
+-  ;;
+-
+-sunos4*)
+-  version_type=sunos
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  if test "$with_gnu_ld" = yes; then
+-    need_lib_prefix=no
+-  fi
+-  need_version=yes
+-  ;;
+-
+-sysv4 | sysv4.3*)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  case $host_vendor in
+-    sni)
+-      shlibpath_overrides_runpath=no
+-      need_lib_prefix=no
+-      runpath_var=LD_RUN_PATH
+-      ;;
+-    siemens)
+-      need_lib_prefix=no
+-      ;;
+-    motorola)
+-      need_lib_prefix=no
+-      need_version=no
+-      shlibpath_overrides_runpath=no
+-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+-      ;;
+-  esac
+-  ;;
+-
+-sysv4*MP*)
+-  if test -d /usr/nec ;then
+-    version_type=linux
+-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+-    soname_spec='$libname${shared_ext}.$major'
+-    shlibpath_var=LD_LIBRARY_PATH
+-  fi
+-  ;;
+-
+-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+-  version_type=freebsd-elf
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  hardcode_into_libs=yes
+-  if test "$with_gnu_ld" = yes; then
+-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+-  else
+-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+-    case $host_os in
+-      sco3.2v5*)
+-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+-	;;
+-    esac
+-  fi
+-  sys_lib_dlsearch_path_spec='/usr/lib'
+-  ;;
+-
+-tpf*)
+-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  ;;
+-
+-uts4*)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  ;;
+-
+-*)
+-  dynamic_linker=no
+-  ;;
+-esac
+-AC_MSG_RESULT([$dynamic_linker])
+-test "$dynamic_linker" = no && can_build_shared=no
+-
+-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+-if test "$GCC" = yes; then
+-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+-fi
+-
+-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+-fi
+-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+-fi
+-
+-_LT_DECL([], [variables_saved_for_relink], [1],
+-    [Variables whose values should be saved in libtool wrapper scripts and
+-    restored at link time])
+-_LT_DECL([], [need_lib_prefix], [0],
+-    [Do we need the "lib" prefix for modules?])
+-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
+-_LT_DECL([], [version_type], [0], [Library versioning type])
+-_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
+-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
+-_LT_DECL([], [shlibpath_overrides_runpath], [0],
+-    [Is shlibpath searched before the hard-coded library search path?])
+-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
+-_LT_DECL([], [library_names_spec], [1],
+-    [[List of archive names.  First name is the real one, the rest are links.
+-    The last name is the one that the linker finds with -lNAME]])
+-_LT_DECL([], [soname_spec], [1],
+-    [[The coded name of the library, if different from the real name]])
+-_LT_DECL([], [postinstall_cmds], [2],
+-    [Command to use after installation of a shared archive])
+-_LT_DECL([], [postuninstall_cmds], [2],
+-    [Command to use after uninstallation of a shared archive])
+-_LT_DECL([], [finish_cmds], [2],
+-    [Commands used to finish a libtool library installation in a directory])
+-_LT_DECL([], [finish_eval], [1],
+-    [[As "finish_cmds", except a single script fragment to be evaled but
+-    not shown]])
+-_LT_DECL([], [hardcode_into_libs], [0],
+-    [Whether we should hardcode library paths into libraries])
+-_LT_DECL([], [sys_lib_search_path_spec], [2],
+-    [Compile-time system search path for libraries])
+-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
+-    [Run-time system search path for libraries])
+-])# _LT_SYS_DYNAMIC_LINKER
+-
+-
+-# _LT_PATH_TOOL_PREFIX(TOOL)
+-# --------------------------
+-# find a file program which can recognize shared library
+-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
+-[m4_require([_LT_DECL_EGREP])dnl
+-AC_MSG_CHECKING([for $1])
+-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+-[case $MAGIC_CMD in
+-[[\\/*] |  ?:[\\/]*])
+-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+-  ;;
+-*)
+-  lt_save_MAGIC_CMD="$MAGIC_CMD"
+-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-dnl $ac_dummy forces splitting on constant user-supplied paths.
+-dnl POSIX.2 word splitting is done only on the output of word expansions,
+-dnl not every word.  This closes a longstanding sh security hole.
+-  ac_dummy="m4_if([$2], , $PATH, [$2])"
+-  for ac_dir in $ac_dummy; do
+-    IFS="$lt_save_ifs"
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$1; then
+-      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+-      if test -n "$file_magic_test_file"; then
+-	case $deplibs_check_method in
+-	"file_magic "*)
+-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+-	    $EGREP "$file_magic_regex" > /dev/null; then
+-	    :
+-	  else
+-	    cat <<_LT_EOF 1>&2
+-
+-*** Warning: the command libtool uses to detect shared libraries,
+-*** $file_magic_cmd, produces output that libtool cannot recognize.
+-*** The result is that libtool may fail to recognize shared libraries
+-*** as such.  This will affect the creation of libtool libraries that
+-*** depend on shared libraries, but programs linked with such libtool
+-*** libraries will work regardless of this problem.  Nevertheless, you
+-*** may want to report the problem to your system manager and/or to
+-*** bug-libtool at gnu.org
+-
+-_LT_EOF
+-	  fi ;;
+-	esac
+-      fi
+-      break
+-    fi
+-  done
+-  IFS="$lt_save_ifs"
+-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+-  ;;
+-esac])
+-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+-if test -n "$MAGIC_CMD"; then
+-  AC_MSG_RESULT($MAGIC_CMD)
+-else
+-  AC_MSG_RESULT(no)
+-fi
+-_LT_DECL([], [MAGIC_CMD], [0],
+-	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
+-])# _LT_PATH_TOOL_PREFIX
+-
+-# Old name:
+-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
+-
+-
+-# _LT_PATH_MAGIC
+-# --------------
+-# find a file program which can recognize a shared library
+-m4_defun([_LT_PATH_MAGIC],
+-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
+-if test -z "$lt_cv_path_MAGIC_CMD"; then
+-  if test -n "$ac_tool_prefix"; then
+-    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
+-  else
+-    MAGIC_CMD=:
+-  fi
+-fi
+-])# _LT_PATH_MAGIC
+-
+-
+-# LT_PATH_LD
+-# ----------
+-# find the pathname to the GNU or non-GNU linker
+-AC_DEFUN([LT_PATH_LD],
+-[AC_REQUIRE([AC_PROG_CC])dnl
+-AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+-m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-
+-AC_ARG_WITH([gnu-ld],
+-    [AS_HELP_STRING([--with-gnu-ld],
+-	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
+-    [test "$withval" = no || with_gnu_ld=yes],
+-    [with_gnu_ld=no])dnl
+-
+-ac_prog=ld
+-if test "$GCC" = yes; then
+-  # Check if gcc -print-prog-name=ld gives a path.
+-  AC_MSG_CHECKING([for ld used by $CC])
+-  case $host in
+-  *-*-mingw*)
+-    # gcc leaves a trailing carriage return which upsets mingw
+-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+-  *)
+-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+-  esac
+-  case $ac_prog in
+-    # Accept absolute paths.
+-    [[\\/]]* | ?:[[\\/]]*)
+-      re_direlt='/[[^/]][[^/]]*/\.\./'
+-      # Canonicalize the pathname of ld
+-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+-      done
+-      test -z "$LD" && LD="$ac_prog"
+-      ;;
+-  "")
+-    # If it fails, then pretend we aren't using GCC.
+-    ac_prog=ld
+-    ;;
+-  *)
+-    # If it is relative, then search for the first ld in PATH.
+-    with_gnu_ld=unknown
+-    ;;
+-  esac
+-elif test "$with_gnu_ld" = yes; then
+-  AC_MSG_CHECKING([for GNU ld])
+-else
+-  AC_MSG_CHECKING([for non-GNU ld])
+-fi
+-AC_CACHE_VAL(lt_cv_path_LD,
+-[if test -z "$LD"; then
+-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-  for ac_dir in $PATH; do
+-    IFS="$lt_save_ifs"
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+-      lt_cv_path_LD="$ac_dir/$ac_prog"
+-      # Check to see if the program is GNU ld.  I'd rather use --version,
+-      # but apparently some variants of GNU ld only accept -v.
+-      # Break only if it was the GNU/non-GNU ld that we prefer.
+-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+-      *GNU* | *'with BFD'*)
+-	test "$with_gnu_ld" != no && break
+-	;;
+-      *)
+-	test "$with_gnu_ld" != yes && break
+-	;;
+-      esac
+-    fi
+-  done
+-  IFS="$lt_save_ifs"
+-else
+-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
+-fi])
+-LD="$lt_cv_path_LD"
+-if test -n "$LD"; then
+-  AC_MSG_RESULT($LD)
+-else
+-  AC_MSG_RESULT(no)
+-fi
+-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+-_LT_PATH_LD_GNU
+-AC_SUBST([LD])
+-
+-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
+-])# LT_PATH_LD
+-
+-# Old names:
+-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
+-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_PROG_LD], [])
+-dnl AC_DEFUN([AC_PROG_LD], [])
+-
+-
+-# _LT_PATH_LD_GNU
+-#- --------------
+-m4_defun([_LT_PATH_LD_GNU],
+-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
+-case `$LD -v 2>&1 </dev/null` in
+-*GNU* | *'with BFD'*)
+-  lt_cv_prog_gnu_ld=yes
+-  ;;
+-*)
+-  lt_cv_prog_gnu_ld=no
+-  ;;
+-esac])
+-with_gnu_ld=$lt_cv_prog_gnu_ld
+-])# _LT_PATH_LD_GNU
+-
+-
+-# _LT_CMD_RELOAD
+-# --------------
+-# find reload flag for linker
+-#   -- PORTME Some linkers may need a different reload flag.
+-m4_defun([_LT_CMD_RELOAD],
+-[AC_CACHE_CHECK([for $LD option to reload object files],
+-  lt_cv_ld_reload_flag,
+-  [lt_cv_ld_reload_flag='-r'])
+-reload_flag=$lt_cv_ld_reload_flag
+-case $reload_flag in
+-"" | " "*) ;;
+-*) reload_flag=" $reload_flag" ;;
+-esac
+-reload_cmds='$LD$reload_flag -o $output$reload_objs'
+-case $host_os in
+-  darwin*)
+-    if test "$GCC" = yes; then
+-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+-    else
+-      reload_cmds='$LD$reload_flag -o $output$reload_objs'
+-    fi
+-    ;;
+-esac
+-_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
+-_LT_DECL([], [reload_cmds], [2])dnl
+-])# _LT_CMD_RELOAD
+-
+-
+-# _LT_CHECK_MAGIC_METHOD
+-# ----------------------
+-# how to check for library dependencies
+-#  -- PORTME fill in with the dynamic library characteristics
+-m4_defun([_LT_CHECK_MAGIC_METHOD],
+-[m4_require([_LT_DECL_EGREP])
+-m4_require([_LT_DECL_OBJDUMP])
+-AC_CACHE_CHECK([how to recognize dependent libraries],
+-lt_cv_deplibs_check_method,
+-[lt_cv_file_magic_cmd='$MAGIC_CMD'
+-lt_cv_file_magic_test_file=
+-lt_cv_deplibs_check_method='unknown'
+-# Need to set the preceding variable on all platforms that support
+-# interlibrary dependencies.
+-# 'none' -- dependencies not supported.
+-# `unknown' -- same as none, but documents that we really don't know.
+-# 'pass_all' -- all dependencies passed with no checks.
+-# 'test_compile' -- check by making test program.
+-# 'file_magic [[regex]]' -- check by looking for files in library path
+-# which responds to the $file_magic_cmd with a given extended regex.
+-# If you have `file' or equivalent on your system and you're not sure
+-# whether `pass_all' will *always* work, you probably want this one.
+-
+-case $host_os in
+-aix[[4-9]]*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-beos*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-bsdi[[45]]*)
+-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+-  lt_cv_file_magic_cmd='/usr/bin/file -L'
+-  lt_cv_file_magic_test_file=/shlib/libc.so
+-  ;;
+-
+-cygwin*)
+-  # func_win32_libid is a shell function defined in ltmain.sh
+-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+-  lt_cv_file_magic_cmd='func_win32_libid'
+-  ;;
+-
+-mingw* | pw32*)
+-  # Base MSYS/MinGW do not provide the 'file' command needed by
+-  # func_win32_libid shell function, so use a weaker test based on 'objdump',
+-  # unless we find 'file', for example because we are cross-compiling.
+-  if ( file / ) >/dev/null 2>&1; then
+-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+-    lt_cv_file_magic_cmd='func_win32_libid'
+-  else
+-    lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+-    lt_cv_file_magic_cmd='$OBJDUMP -f'
+-  fi
+-  ;;
+-
+-cegcc)
+-  # use the weaker test based on 'objdump'. See mingw*.
+-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+-  lt_cv_file_magic_cmd='$OBJDUMP -f'
+-  ;;
+-
+-darwin* | rhapsody*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-freebsd* | dragonfly*)
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+-    case $host_cpu in
+-    i*86 )
+-      # Not sure whether the presence of OpenBSD here was a mistake.
+-      # Let's accept both of them until this is cleared up.
+-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
+-      lt_cv_file_magic_cmd=/usr/bin/file
+-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+-      ;;
+-    esac
+-  else
+-    lt_cv_deplibs_check_method=pass_all
+-  fi
+-  ;;
+-
+-gnu*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-hpux10.20* | hpux11*)
+-  lt_cv_file_magic_cmd=/usr/bin/file
+-  case $host_cpu in
+-  ia64*)
+-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
+-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+-    ;;
+-  hppa*64*)
+-    [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
+-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+-    ;;
+-  *)
+-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
+-    lt_cv_file_magic_test_file=/usr/lib/libc.sl
+-    ;;
+-  esac
+-  ;;
+-
+-interix[[3-9]]*)
+-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+-  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+-  ;;
+-
+-irix5* | irix6* | nonstopux*)
+-  case $LD in
+-  *-32|*"-32 ") libmagic=32-bit;;
+-  *-n32|*"-n32 ") libmagic=N32;;
+-  *-64|*"-64 ") libmagic=64-bit;;
+-  *) libmagic=never-match;;
+-  esac
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-# This must be Linux ELF.
+-linux* | k*bsd*-gnu)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-netbsd*)
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+-  else
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
+-  fi
+-  ;;
+-
+-newos6*)
+-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+-  lt_cv_file_magic_cmd=/usr/bin/file
+-  lt_cv_file_magic_test_file=/usr/lib/libnls.so
+-  ;;
+-
+-*nto* | *qnx*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-openbsd*)
+-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
+-  else
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+-  fi
+-  ;;
+-
+-osf3* | osf4* | osf5*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-rdos*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-solaris*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-sysv4 | sysv4.3*)
+-  case $host_vendor in
+-  motorola)
+-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+-    ;;
+-  ncr)
+-    lt_cv_deplibs_check_method=pass_all
+-    ;;
+-  sequent)
+-    lt_cv_file_magic_cmd='/bin/file'
+-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+-    ;;
+-  sni)
+-    lt_cv_file_magic_cmd='/bin/file'
+-    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+-    lt_cv_file_magic_test_file=/lib/libc.so
+-    ;;
+-  siemens)
+-    lt_cv_deplibs_check_method=pass_all
+-    ;;
+-  pc)
+-    lt_cv_deplibs_check_method=pass_all
+-    ;;
+-  esac
+-  ;;
+-
+-tpf*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-esac
+-])
+-file_magic_cmd=$lt_cv_file_magic_cmd
+-deplibs_check_method=$lt_cv_deplibs_check_method
+-test -z "$deplibs_check_method" && deplibs_check_method=unknown
+-
+-_LT_DECL([], [deplibs_check_method], [1],
+-    [Method to check whether dependent libraries are shared objects])
+-_LT_DECL([], [file_magic_cmd], [1],
+-    [Command to use when deplibs_check_method == "file_magic"])
+-])# _LT_CHECK_MAGIC_METHOD
+-
+-
+-# LT_PATH_NM
+-# ----------
+-# find the pathname to a BSD- or MS-compatible name lister
+-AC_DEFUN([LT_PATH_NM],
+-[AC_REQUIRE([AC_PROG_CC])dnl
+-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
+-[if test -n "$NM"; then
+-  # Let the user override the test.
+-  lt_cv_path_NM="$NM"
+-else
+-  lt_nm_to_check="${ac_tool_prefix}nm"
+-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+-    lt_nm_to_check="$lt_nm_to_check nm"
+-  fi
+-  for lt_tmp_nm in $lt_nm_to_check; do
+-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+-      IFS="$lt_save_ifs"
+-      test -z "$ac_dir" && ac_dir=.
+-      tmp_nm="$ac_dir/$lt_tmp_nm"
+-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+-	# Check to see if the nm accepts a BSD-compat flag.
+-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
+-	#   nm: unknown option "B" ignored
+-	# Tru64's nm complains that /dev/null is an invalid object file
+-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+-	*/dev/null* | *'Invalid file or object type'*)
+-	  lt_cv_path_NM="$tmp_nm -B"
+-	  break
+-	  ;;
+-	*)
+-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+-	  */dev/null*)
+-	    lt_cv_path_NM="$tmp_nm -p"
+-	    break
+-	    ;;
+-	  *)
+-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+-	    continue # so that we can try to find one that supports BSD flags
+-	    ;;
+-	  esac
+-	  ;;
+-	esac
+-      fi
+-    done
+-    IFS="$lt_save_ifs"
+-  done
+-  : ${lt_cv_path_NM=no}
+-fi])
+-if test "$lt_cv_path_NM" != "no"; then
+-  NM="$lt_cv_path_NM"
+-else
+-  # Didn't find any BSD compatible name lister, look for dumpbin.
+-  AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
+-  AC_SUBST([DUMPBIN])
+-  if test "$DUMPBIN" != ":"; then
+-    NM="$DUMPBIN"
+-  fi
+-fi
+-test -z "$NM" && NM=nm
+-AC_SUBST([NM])
+-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
+-
+-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
+-  [lt_cv_nm_interface="BSD nm"
+-  echo "int some_variable = 0;" > conftest.$ac_ext
+-  (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
+-  (eval "$ac_compile" 2>conftest.err)
+-  cat conftest.err >&AS_MESSAGE_LOG_FD
+-  (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
+-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+-  cat conftest.err >&AS_MESSAGE_LOG_FD
+-  (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
+-  cat conftest.out >&AS_MESSAGE_LOG_FD
+-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+-    lt_cv_nm_interface="MS dumpbin"
+-  fi
+-  rm -f conftest*])
+-])# LT_PATH_NM
+-
+-# Old names:
+-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
+-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_PROG_NM], [])
+-dnl AC_DEFUN([AC_PROG_NM], [])
+-
+-
+-# LT_LIB_M
+-# --------
+-# check for math library
+-AC_DEFUN([LT_LIB_M],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-LIBM=
+-case $host in
+-*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+-  # These system don't have libm, or don't need it
+-  ;;
+-*-ncr-sysv4.3*)
+-  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+-  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
+-  ;;
+-*)
+-  AC_CHECK_LIB(m, cos, LIBM="-lm")
+-  ;;
+-esac
+-AC_SUBST([LIBM])
+-])# LT_LIB_M
+-
+-# Old name:
+-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_CHECK_LIBM], [])
+-
+-
+-# _LT_COMPILER_NO_RTTI([TAGNAME])
+-# -------------------------------
+-m4_defun([_LT_COMPILER_NO_RTTI],
+-[m4_require([_LT_TAG_COMPILER])dnl
+-
+-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+-
+-if test "$GCC" = yes; then
+-  _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+-
+-  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
+-    lt_cv_prog_compiler_rtti_exceptions,
+-    [-fno-rtti -fno-exceptions], [],
+-    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
+-fi
+-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
+-	[Compiler flag to turn off builtin functions])
+-])# _LT_COMPILER_NO_RTTI
+-
+-
+-# _LT_CMD_GLOBAL_SYMBOLS
+-# ----------------------
+-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-AC_REQUIRE([AC_PROG_CC])dnl
+-AC_REQUIRE([LT_PATH_NM])dnl
+-AC_REQUIRE([LT_PATH_LD])dnl
+-m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-m4_require([_LT_TAG_COMPILER])dnl
+-
+-# Check for command to grab the raw symbol name followed by C symbol from nm.
+-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
+-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
+-[
+-# These are sane defaults that work on at least a few old systems.
+-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
+-
+-# Character class describing NM global symbol codes.
+-symcode='[[BCDEGRST]]'
+-
+-# Regexp to match symbols that can be accessed directly from C.
+-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+-
+-# Define system-specific variables.
+-case $host_os in
+-aix*)
+-  symcode='[[BCDT]]'
+-  ;;
+-cygwin* | mingw* | pw32* | cegcc*)
+-  symcode='[[ABCDGISTW]]'
+-  ;;
+-hpux*)
+-  if test "$host_cpu" = ia64; then
+-    symcode='[[ABCDEGRST]]'
+-  fi
+-  ;;
+-irix* | nonstopux*)
+-  symcode='[[BCDEGRST]]'
+-  ;;
+-osf*)
+-  symcode='[[BCDEGQRST]]'
+-  ;;
+-solaris*)
+-  symcode='[[BDRT]]'
+-  ;;
+-sco3.2v5*)
+-  symcode='[[DT]]'
+-  ;;
+-sysv4.2uw2*)
+-  symcode='[[DT]]'
+-  ;;
+-sysv5* | sco5v6* | unixware* | OpenUNIX*)
+-  symcode='[[ABDT]]'
+-  ;;
+-sysv4)
+-  symcode='[[DFNSTU]]'
+-  ;;
+-esac
+-
+-# If we're using GNU nm, then use its standard symbol codes.
+-case `$NM -V 2>&1` in
+-*GNU* | *'with BFD'*)
+-  symcode='[[ABCDGIRSTW]]' ;;
+-esac
+-
+-# Transform an extracted symbol line into a proper C declaration.
+-# Some systems (esp. on ia64) link data and code symbols differently,
+-# so use this general approach.
+-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+-
+-# Transform an extracted symbol line into symbol name and symbol address
+-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
+-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
+-
+-# Handle CRLF in mingw tool chain
+-opt_cr=
+-case $build_os in
+-mingw*)
+-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+-  ;;
+-esac
+-
+-# Try without a prefix underscore, then with it.
+-for ac_symprfx in "" "_"; do
+-
+-  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+-  symxfrm="\\1 $ac_symprfx\\2 \\2"
+-
+-  # Write the raw and C identifiers.
+-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+-    # Fake it for dumpbin and say T for any non-static function
+-    # and D for any global variable.
+-    # Also find C++ and __fastcall symbols from MSVC++,
+-    # which start with @ or ?.
+-    lt_cv_sys_global_symbol_pipe="$AWK ['"\
+-"     {last_section=section; section=\$ 3};"\
+-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+-"     \$ 0!~/External *\|/{next};"\
+-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+-"     {if(hide[section]) next};"\
+-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
+-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
+-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
+-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+-"     ' prfx=^$ac_symprfx]"
+-  else
+-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+-  fi
+-
+-  # Check to see that the pipe works correctly.
+-  pipe_works=no
+-
+-  rm -f conftest*
+-  cat > conftest.$ac_ext <<_LT_EOF
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-char nm_test_var;
+-void nm_test_func(void);
+-void nm_test_func(void){}
+-#ifdef __cplusplus
+-}
+-#endif
+-int main(){nm_test_var='a';nm_test_func();return(0);}
+-_LT_EOF
+-
+-  if AC_TRY_EVAL(ac_compile); then
+-    # Now try to grab the symbols.
+-    nlist=conftest.nm
+-    if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
+-      # Try sorting and uniquifying the output.
+-      if sort "$nlist" | uniq > "$nlist"T; then
+-	mv -f "$nlist"T "$nlist"
+-      else
+-	rm -f "$nlist"T
+-      fi
+-
+-      # Make sure that we snagged all the symbols we need.
+-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+-	  cat <<_LT_EOF > conftest.$ac_ext
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-
+-_LT_EOF
+-	  # Now generate the symbol file.
+-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+-
+-	  cat <<_LT_EOF >> conftest.$ac_ext
+-
+-/* The mapping between symbol names and symbols.  */
+-const struct {
+-  const char *name;
+-  void       *address;
+-}
+-lt__PROGRAM__LTX_preloaded_symbols[[]] =
+-{
+-  { "@PROGRAM@", (void *) 0 },
+-_LT_EOF
+-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+-	  cat <<\_LT_EOF >> conftest.$ac_ext
+-  {0, (void *) 0}
+-};
+-
+-/* This works around a problem in FreeBSD linker */
+-#ifdef FREEBSD_WORKAROUND
+-static const void *lt_preloaded_setup() {
+-  return lt__PROGRAM__LTX_preloaded_symbols;
+-}
+-#endif
+-
+-#ifdef __cplusplus
+-}
+-#endif
+-_LT_EOF
+-	  # Now try linking the two files.
+-	  mv conftest.$ac_objext conftstm.$ac_objext
+-	  lt_save_LIBS="$LIBS"
+-	  lt_save_CFLAGS="$CFLAGS"
+-	  LIBS="conftstm.$ac_objext"
+-	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
+-	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+-	    pipe_works=yes
+-	  fi
+-	  LIBS="$lt_save_LIBS"
+-	  CFLAGS="$lt_save_CFLAGS"
+-	else
+-	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
+-	fi
+-      else
+-	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
+-      fi
+-    else
+-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
+-    fi
+-  else
+-    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
+-    cat conftest.$ac_ext >&5
+-  fi
+-  rm -rf conftest* conftst*
+-
+-  # Do not use the global_symbol_pipe unless it works.
+-  if test "$pipe_works" = yes; then
+-    break
+-  else
+-    lt_cv_sys_global_symbol_pipe=
+-  fi
+-done
+-])
+-if test -z "$lt_cv_sys_global_symbol_pipe"; then
+-  lt_cv_sys_global_symbol_to_cdecl=
+-fi
+-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+-  AC_MSG_RESULT(failed)
+-else
+-  AC_MSG_RESULT(ok)
+-fi
+-
+-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
+-    [Take the output of nm and produce a listing of raw symbols and C names])
+-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
+-    [Transform the output of nm in a proper C declaration])
+-_LT_DECL([global_symbol_to_c_name_address],
+-    [lt_cv_sys_global_symbol_to_c_name_address], [1],
+-    [Transform the output of nm in a C name address pair])
+-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
+-    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
+-    [Transform the output of nm in a C name address pair when lib prefix is needed])
+-]) # _LT_CMD_GLOBAL_SYMBOLS
+-
+-
+-# _LT_COMPILER_PIC([TAGNAME])
+-# ---------------------------
+-m4_defun([_LT_COMPILER_PIC],
+-[m4_require([_LT_TAG_COMPILER])dnl
+-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
+-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-_LT_TAGVAR(lt_prog_compiler_static, $1)=
+-
+-AC_MSG_CHECKING([for $compiler option to produce PIC])
+-m4_if([$1], [CXX], [
+-  # C++ specific cases for pic, static, wl, etc.
+-  if test "$GXX" = yes; then
+-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-
+-    case $host_os in
+-    aix*)
+-      # All AIX code is PIC.
+-      if test "$host_cpu" = ia64; then
+-	# AIX 5 now supports IA64 processor
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-        ;;
+-      m68k)
+-            # FIXME: we need at least 68020 code to build shared libraries, but
+-            # adding the `-m68020' flag to GCC prevents building anything better,
+-            # like `-m68040'.
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+-        ;;
+-      esac
+-      ;;
+-
+-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+-      # PIC is the default for these OSes.
+-      ;;
+-    mingw* | cygwin* | os2* | pw32* | cegcc*)
+-      # This hack is so that the source file can tell whether it is being
+-      # built for inclusion in a dll (and should export symbols for example).
+-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+-      # (--disable-auto-import) libraries
+-      m4_if([$1], [GCJ], [],
+-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+-      ;;
+-    darwin* | rhapsody*)
+-      # PIC is the default on this platform
+-      # Common symbols not allowed in MH_DYLIB files
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+-      ;;
+-    *djgpp*)
+-      # DJGPP does not support shared libraries at all
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-      ;;
+-    interix[[3-9]]*)
+-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+-      # Instead, we relocate shared libraries at runtime.
+-      ;;
+-    sysv4*MP*)
+-      if test -d /usr/nec; then
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+-      fi
+-      ;;
+-    hpux*)
+-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+-      # sets the default TLS model and affects inlining.
+-      case $host_cpu in
+-      hppa*64*)
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	;;
+-      esac
+-      ;;
+-    *qnx* | *nto*)
+-      # QNX uses GNU C++, but need to define -shared option too, otherwise
+-      # it will coredump.
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-      ;;
+-    *)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-      ;;
+-    esac
+-  else
+-    case $host_os in
+-      aix[[4-9]]*)
+-	# All AIX code is PIC.
+-	if test "$host_cpu" = ia64; then
+-	  # AIX 5 now supports IA64 processor
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	else
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+-	fi
+-	;;
+-      chorus*)
+-	case $cc_basename in
+-	cxch68*)
+-	  # Green Hills C++ Compiler
+-	  # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
+-	  ;;
+-	esac
+-	;;
+-      dgux*)
+-	case $cc_basename in
+-	  ec++*)
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    ;;
+-	  ghcx*)
+-	    # Green Hills C++ Compiler
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      freebsd* | dragonfly*)
+-	# FreeBSD uses GNU C++
+-	;;
+-      hpux9* | hpux10* | hpux11*)
+-	case $cc_basename in
+-	  CC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+-	    if test "$host_cpu" != ia64; then
+-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+-	    fi
+-	    ;;
+-	  aCC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+-	    case $host_cpu in
+-	    hppa*64*|ia64*)
+-	      # +Z the default
+-	      ;;
+-	    *)
+-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+-	      ;;
+-	    esac
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      interix*)
+-	# This is c89, which is MS Visual C++ (no shared libs)
+-	# Anyone wants to do a port?
+-	;;
+-      irix5* | irix6* | nonstopux*)
+-	case $cc_basename in
+-	  CC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-	    # CC pic flag -KPIC is the default.
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      linux* | k*bsd*-gnu)
+-	case $cc_basename in
+-	  KCC*)
+-	    # KAI C++ Compiler
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	    ;;
+-	  ecpc* )
+-	    # old Intel C++ for x86_64 which still supported -KPIC.
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-	    ;;
+-	  icpc* )
+-	    # Intel C++, used to be incompatible with GCC.
+-	    # ICC 10 doesn't accept -KPIC any more.
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-	    ;;
+-	  pgCC* | pgcpp*)
+-	    # Portland Group C++ compiler
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    ;;
+-	  cxx*)
+-	    # Compaq C++
+-	    # Make sure the PIC flag is empty.  It appears that all Alpha
+-	    # Linux and Compaq Tru64 Unix objects are PIC.
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-	    ;;
+-	  xlc* | xlC*)
+-	    # IBM XL 8.0 on PPC
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+-	    ;;
+-	  *)
+-	    case `$CC -V 2>&1 | sed 5q` in
+-	    *Sun\ C*)
+-	      # Sun C++ 5.9
+-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+-	      ;;
+-	    esac
+-	    ;;
+-	esac
+-	;;
+-      lynxos*)
+-	;;
+-      m88k*)
+-	;;
+-      mvs*)
+-	case $cc_basename in
+-	  cxx*)
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      netbsd*)
+-	;;
+-      *qnx* | *nto*)
+-        # QNX uses GNU C++, but need to define -shared option too, otherwise
+-        # it will coredump.
+-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-        ;;
+-      osf3* | osf4* | osf5*)
+-	case $cc_basename in
+-	  KCC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+-	    ;;
+-	  RCC*)
+-	    # Rational C++ 2.4.1
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    ;;
+-	  cxx*)
+-	    # Digital/Compaq C++
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    # Make sure the PIC flag is empty.  It appears that all Alpha
+-	    # Linux and Compaq Tru64 Unix objects are PIC.
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      psos*)
+-	;;
+-      solaris*)
+-	case $cc_basename in
+-	  CC*)
+-	    # Sun C++ 4.2, 5.x and Centerline C++
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+-	    ;;
+-	  gcx*)
+-	    # Green Hills C++ Compiler
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      sunos4*)
+-	case $cc_basename in
+-	  CC*)
+-	    # Sun C++ 4.x
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    ;;
+-	  lcc*)
+-	    # Lucid
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+-	case $cc_basename in
+-	  CC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    ;;
+-	esac
+-	;;
+-      tandem*)
+-	case $cc_basename in
+-	  NCC*)
+-	    # NonStop-UX NCC 3.20
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      vxworks*)
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-	;;
+-    esac
+-  fi
+-],
+-[
+-  if test "$GCC" = yes; then
+-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-
+-    case $host_os in
+-      aix*)
+-      # All AIX code is PIC.
+-      if test "$host_cpu" = ia64; then
+-	# AIX 5 now supports IA64 processor
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-        ;;
+-      m68k)
+-            # FIXME: we need at least 68020 code to build shared libraries, but
+-            # adding the `-m68020' flag to GCC prevents building anything better,
+-            # like `-m68040'.
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+-        ;;
+-      esac
+-      ;;
+-
+-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+-      # PIC is the default for these OSes.
+-      ;;
+-
+-    mingw* | cygwin* | pw32* | os2* | cegcc*)
+-      # This hack is so that the source file can tell whether it is being
+-      # built for inclusion in a dll (and should export symbols for example).
+-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+-      # (--disable-auto-import) libraries
+-      m4_if([$1], [GCJ], [],
+-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+-      ;;
+-
+-    darwin* | rhapsody*)
+-      # PIC is the default on this platform
+-      # Common symbols not allowed in MH_DYLIB files
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+-      ;;
+-
+-    hpux*)
+-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+-      # sets the default TLS model and affects inlining.
+-      case $host_cpu in
+-      hppa*64*)
+-	# +Z the default
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	;;
+-      esac
+-      ;;
+-
+-    interix[[3-9]]*)
+-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+-      # Instead, we relocate shared libraries at runtime.
+-      ;;
+-
+-    msdosdjgpp*)
+-      # Just because we use GCC doesn't mean we suddenly get shared libraries
+-      # on systems that don't support them.
+-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-      enable_shared=no
+-      ;;
+-
+-    *nto* | *qnx*)
+-      # QNX uses GNU C++, but need to define -shared option too, otherwise
+-      # it will coredump.
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-      ;;
+-
+-    sysv4*MP*)
+-      if test -d /usr/nec; then
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+-      fi
+-      ;;
+-
+-    *)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-      ;;
+-    esac
+-  else
+-    # PORTME Check for flag to pass linker flags through the system compiler.
+-    case $host_os in
+-    aix*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      if test "$host_cpu" = ia64; then
+-	# AIX 5 now supports IA64 processor
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      else
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+-      fi
+-      ;;
+-
+-    mingw* | cygwin* | pw32* | os2* | cegcc*)
+-      # This hack is so that the source file can tell whether it is being
+-      # built for inclusion in a dll (and should export symbols for example).
+-      m4_if([$1], [GCJ], [],
+-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+-      ;;
+-
+-    hpux9* | hpux10* | hpux11*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+-      # not for PA HP-UX.
+-      case $host_cpu in
+-      hppa*64*|ia64*)
+-	# +Z the default
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+-	;;
+-      esac
+-      # Is there a better lt_prog_compiler_static that works with the bundled CC?
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+-      ;;
+-
+-    irix5* | irix6* | nonstopux*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      # PIC (with -KPIC) is the default.
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-      ;;
+-
+-    linux* | k*bsd*-gnu)
+-      case $cc_basename in
+-      # old Intel for x86_64 which still supported -KPIC.
+-      ecc*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-        ;;
+-      # icc used to be incompatible with GCC.
+-      # ICC 10 doesn't accept -KPIC any more.
+-      icc* | ifort*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-        ;;
+-      # Lahey Fortran 8.1.
+-      lf95*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
+-	;;
+-      pgcc* | pgf77* | pgf90* | pgf95*)
+-        # Portland Group compilers (*not* the Pentium gcc compiler,
+-	# which looks to be a dead project)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-        ;;
+-      ccc*)
+-        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-        # All Alpha code is PIC.
+-        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-        ;;
+-      xl*)
+-	# IBM XL C 8.0/Fortran 10.1 on PPC
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+-	;;
+-      *)
+-	case `$CC -V 2>&1 | sed 5q` in
+-	*Sun\ C*)
+-	  # Sun C 5.9
+-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	  ;;
+-	*Sun\ F*)
+-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
+-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
+-	  ;;
+-	esac
+-	;;
+-      esac
+-      ;;
+-
+-    newsos6)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    *nto* | *qnx*)
+-      # QNX uses GNU C++, but need to define -shared option too, otherwise
+-      # it will coredump.
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-      ;;
+-
+-    osf3* | osf4* | osf5*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      # All OSF/1 code is PIC.
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-      ;;
+-
+-    rdos*)
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-      ;;
+-
+-    solaris*)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      case $cc_basename in
+-      f77* | f90* | f95*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
+-      esac
+-      ;;
+-
+-    sunos4*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    sysv4 | sysv4.2uw2* | sysv4.3*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    sysv4*MP*)
+-      if test -d /usr/nec ;then
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      fi
+-      ;;
+-
+-    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    unicos*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-      ;;
+-
+-    uts4*)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    *)
+-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-      ;;
+-    esac
+-  fi
+-])
+-case $host_os in
+-  # For platforms which do not support PIC, -DPIC is meaningless:
+-  *djgpp*)
+-    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-    ;;
+-  *)
+-    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
+-    ;;
+-esac
+-AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
+-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
+-	[How to pass a linker flag through the compiler])
+-
+-#
+-# Check to make sure the PIC flag actually works.
+-#
+-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
+-  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
+-    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
+-    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
+-    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
+-     "" | " "*) ;;
+-     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
+-     esac],
+-    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
+-fi
+-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
+-	[Additional compiler flags for building library objects])
+-
+-#
+-# Check to make sure the static flag actually works.
+-#
+-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
+-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+-  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
+-  $lt_tmp_static_flag,
+-  [],
+-  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
+-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+-	[Compiler flag to prevent dynamic linking])
+-])# _LT_COMPILER_PIC
+-
+-
+-# _LT_LINKER_SHLIBS([TAGNAME])
+-# ----------------------------
+-# See if the linker supports building shared libraries.
+-m4_defun([_LT_LINKER_SHLIBS],
+-[AC_REQUIRE([LT_PATH_LD])dnl
+-AC_REQUIRE([LT_PATH_NM])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+-m4_require([_LT_TAG_COMPILER])dnl
+-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+-m4_if([$1], [CXX], [
+-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+-  case $host_os in
+-  aix[[4-9]]*)
+-    # If we're using GNU nm, then we don't want the "-C" option.
+-    # -C means demangle to AIX nm, but means don't demangle with GNU nm
+-    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-    else
+-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-    fi
+-    ;;
+-  pw32*)
+-    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+-  ;;
+-  cygwin* | mingw* | cegcc*)
+-    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+-  ;;
+-  *)
+-    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+-  ;;
+-  esac
+-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+-], [
+-  runpath_var=
+-  _LT_TAGVAR(allow_undefined_flag, $1)=
+-  _LT_TAGVAR(always_export_symbols, $1)=no
+-  _LT_TAGVAR(archive_cmds, $1)=
+-  _LT_TAGVAR(archive_expsym_cmds, $1)=
+-  _LT_TAGVAR(compiler_needs_object, $1)=no
+-  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+-  _LT_TAGVAR(hardcode_automatic, $1)=no
+-  _LT_TAGVAR(hardcode_direct, $1)=no
+-  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-  _LT_TAGVAR(hardcode_libdir_separator, $1)=
+-  _LT_TAGVAR(hardcode_minus_L, $1)=no
+-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+-  _LT_TAGVAR(inherit_rpath, $1)=no
+-  _LT_TAGVAR(link_all_deplibs, $1)=unknown
+-  _LT_TAGVAR(module_cmds, $1)=
+-  _LT_TAGVAR(module_expsym_cmds, $1)=
+-  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
+-  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
+-  _LT_TAGVAR(thread_safe_flag_spec, $1)=
+-  _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-  # include_expsyms should be a list of space-separated symbols to be *always*
+-  # included in the symbol list
+-  _LT_TAGVAR(include_expsyms, $1)=
+-  # exclude_expsyms can be an extended regexp of symbols to exclude
+-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
+-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+-  # as well as any symbol that contains `d'.
+-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+-  # platforms (ab)use it in PIC code, but their linkers get confused if
+-  # the symbol is explicitly referenced.  Since portable code cannot
+-  # rely on this symbol name, it's probably fine to never include it in
+-  # preloaded symbol tables.
+-  # Exclude shared library initialization/finalization symbols.
+-dnl Note also adjust exclude_expsyms for C++ above.
+-  extract_expsyms_cmds=
+-
+-  case $host_os in
+-  cygwin* | mingw* | pw32* | cegcc*)
+-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
+-    # When not using gcc, we currently assume that we are using
+-    # Microsoft Visual C++.
+-    if test "$GCC" != yes; then
+-      with_gnu_ld=no
+-    fi
+-    ;;
+-  interix*)
+-    # we just hope/assume this is gcc and not c89 (= MSVC++)
+-    with_gnu_ld=yes
+-    ;;
+-  openbsd*)
+-    with_gnu_ld=no
+-    ;;
+-  esac
+-
+-  _LT_TAGVAR(ld_shlibs, $1)=yes
+-  if test "$with_gnu_ld" = yes; then
+-    # If archive_cmds runs LD, not CC, wlarc should be empty
+-    wlarc='${wl}'
+-
+-    # Set some defaults for GNU ld with shared library support. These
+-    # are reset later if shared libraries are not supported. Putting them
+-    # here allows them to be overridden if necessary.
+-    runpath_var=LD_RUN_PATH
+-    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-    # ancient GNU ld didn't support --whole-archive et. al.
+-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+-      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+-    else
+-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-    fi
+-    supports_anon_versioning=no
+-    case `$LD -v 2>&1` in
+-      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
+-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+-      *\ 2.11.*) ;; # other 2.11 versions
+-      *) supports_anon_versioning=yes ;;
+-    esac
+-
+-    # See if GNU ld supports shared libraries.
+-    case $host_os in
+-    aix[[3-9]]*)
+-      # On AIX/PPC, the GNU linker is very broken
+-      if test "$host_cpu" != ia64; then
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	cat <<_LT_EOF 1>&2
+-
+-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+-*** to be unable to reliably create shared libraries on AIX.
+-*** Therefore, libtool is disabling shared libraries support.  If you
+-*** really care for shared libraries, you may want to modify your PATH
+-*** so that a non-GNU linker is found, and then restart.
+-
+-_LT_EOF
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
+-        ;;
+-      m68k)
+-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-        ;;
+-      esac
+-      ;;
+-
+-    beos*)
+-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
+-	# support --undefined.  This deserves some investigation.  FIXME
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    cygwin* | mingw* | pw32* | cegcc*)
+-      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+-      # as there is no search path for DLLs.
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      _LT_TAGVAR(always_export_symbols, $1)=no
+-      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
+-
+-      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-	# If the export-symbols file already is a .def file (1st line
+-	# is EXPORTS), use it as is; otherwise, prepend...
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+-	  cp $export_symbols $output_objdir/$soname.def;
+-	else
+-	  echo EXPORTS > $output_objdir/$soname.def;
+-	  cat $export_symbols >> $output_objdir/$soname.def;
+-	fi~
+-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    interix[[3-9]]*)
+-      _LT_TAGVAR(hardcode_direct, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+-      # Instead, shared libraries are loaded at an image base (0x10000000 by
+-      # default) and relocated if they conflict, which is a slow very memory
+-      # consuming and fragmenting process.  To avoid this, we pick a random,
+-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
+-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-      ;;
+-
+-    gnu* | linux* | tpf* | k*bsd*-gnu)
+-      tmp_diet=no
+-      if test "$host_os" = linux-dietlibc; then
+-	case $cc_basename in
+-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
+-	esac
+-      fi
+-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+-	 && test "$tmp_diet" = no
+-      then
+-	tmp_addflag=
+-	tmp_sharedflag='-shared'
+-	case $cc_basename,$host_cpu in
+-        pgcc*)				# Portland Group C compiler
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	  tmp_addflag=' $pic_flag'
+-	  ;;
+-	pgf77* | pgf90* | pgf95*)	# Portland Group f77 and f90 compilers
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	  tmp_addflag=' $pic_flag -Mnomain' ;;
+-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
+-	  tmp_addflag=' -i_dynamic' ;;
+-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
+-	  tmp_addflag=' -i_dynamic -nofor_main' ;;
+-	ifc* | ifort*)			# Intel Fortran compiler
+-	  tmp_addflag=' -nofor_main' ;;
+-	lf95*)				# Lahey Fortran 8.1
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-	  tmp_sharedflag='--shared' ;;
+-	xl[[cC]]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+-	  tmp_sharedflag='-qmkshrobj'
+-	  tmp_addflag= ;;
+-	esac
+-	case `$CC -V 2>&1 | sed 5q` in
+-	*Sun\ C*)			# Sun C 5.9
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	  _LT_TAGVAR(compiler_needs_object, $1)=yes
+-	  tmp_sharedflag='-G' ;;
+-	*Sun\ F*)			# Sun Fortran 8.3
+-	  tmp_sharedflag='-G' ;;
+-	esac
+-	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-
+-        if test "x$supports_anon_versioning" = xyes; then
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+-	    echo "local: *; };" >> $output_objdir/$libname.ver~
+-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+-        fi
+-
+-	case $cc_basename in
+-	xlf*)
+-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+-	  if test "x$supports_anon_versioning" = xyes; then
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+-	      echo "local: *; };" >> $output_objdir/$libname.ver~
+-	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+-	  fi
+-	  ;;
+-	esac
+-      else
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    netbsd*)
+-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+-	wlarc=
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-      fi
+-      ;;
+-
+-    solaris*)
+-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	cat <<_LT_EOF 1>&2
+-
+-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+-*** create shared libraries on Solaris systems.  Therefore, libtool
+-*** is disabling shared libraries support.  We urge you to upgrade GNU
+-*** binutils to release 2.9.1 or newer.  Another option is to modify
+-*** your PATH or compiler configuration so that the native linker is
+-*** used, and then restart.
+-
+-_LT_EOF
+-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+-      case `$LD -v 2>&1` in
+-        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	cat <<_LT_EOF 1>&2
+-
+-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+-*** reliably create shared libraries on SCO systems.  Therefore, libtool
+-*** is disabling shared libraries support.  We urge you to upgrade GNU
+-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
+-*** your PATH or compiler configuration so that the native linker is
+-*** used, and then restart.
+-
+-_LT_EOF
+-	;;
+-	*)
+-	  # For security reasons, it is highly recommended that you always
+-	  # use absolute paths for naming shared libraries, and exclude the
+-	  # DT_RUNPATH tag from executables and libraries.  But doing so
+-	  # requires that you compile everything twice, which is a pain.
+-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-	  else
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	  fi
+-	;;
+-      esac
+-      ;;
+-
+-    sunos4*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+-      wlarc=
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    *)
+-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-    esac
+-
+-    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
+-      runpath_var=
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-    fi
+-  else
+-    # PORTME fill in a description of your system's linker (not GNU ld)
+-    case $host_os in
+-    aix3*)
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      _LT_TAGVAR(always_export_symbols, $1)=yes
+-      _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+-      # Note: this linker hardcodes the directories in LIBPATH if there
+-      # are no directories specified by -L.
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+-	# Neither direct hardcoding nor static linking is supported with a
+-	# broken collect2.
+-	_LT_TAGVAR(hardcode_direct, $1)=unsupported
+-      fi
+-      ;;
+-
+-    aix[[4-9]]*)
+-      if test "$host_cpu" = ia64; then
+-	# On IA64, the linker does run time linking by default, so we don't
+-	# have to do anything special.
+-	aix_use_runtimelinking=no
+-	exp_sym_flag='-Bexport'
+-	no_entry_flag=""
+-      else
+-	# If we're using GNU nm, then we don't want the "-C" option.
+-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
+-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-	else
+-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-	fi
+-	aix_use_runtimelinking=no
+-
+-	# Test if we are trying to use run time linking or normal
+-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
+-	# need to do runtime linking.
+-	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
+-	  for ld_flag in $LDFLAGS; do
+-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+-	    aix_use_runtimelinking=yes
+-	    break
+-	  fi
+-	  done
+-	  ;;
+-	esac
+-
+-	exp_sym_flag='-bexport'
+-	no_entry_flag='-bnoentry'
+-      fi
+-
+-      # When large executables or shared objects are built, AIX ld can
+-      # have problems creating the table of contents.  If linking a library
+-      # or program results in "error TOC overflow" add -mminimal-toc to
+-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
+-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+-
+-      _LT_TAGVAR(archive_cmds, $1)=''
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+-
+-      if test "$GCC" = yes; then
+-	case $host_os in aix4.[[012]]|aix4.[[012]].*)
+-	# We only want to do this on AIX 4.2 and lower, the check
+-	# below for broken collect2 doesn't work under 4.3+
+-	  collect2name=`${CC} -print-prog-name=collect2`
+-	  if test -f "$collect2name" &&
+-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+-	  then
+-	  # We have reworked collect2
+-	  :
+-	  else
+-	  # We have old collect2
+-	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
+-	  # It fails to find uninstalled libraries when the uninstalled
+-	  # path is not listed in the libpath.  Setting hardcode_minus_L
+-	  # to unsupported forces relinking
+-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
+-	  fi
+-	  ;;
+-	esac
+-	shared_flag='-shared'
+-	if test "$aix_use_runtimelinking" = yes; then
+-	  shared_flag="$shared_flag "'${wl}-G'
+-	fi
+-      else
+-	# not using gcc
+-	if test "$host_cpu" = ia64; then
+-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+-	# chokes on -Wl,-G. The following line is correct:
+-	  shared_flag='-G'
+-	else
+-	  if test "$aix_use_runtimelinking" = yes; then
+-	    shared_flag='${wl}-G'
+-	  else
+-	    shared_flag='${wl}-bM:SRE'
+-	  fi
+-	fi
+-      fi
+-
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+-      # It seems that -bexpall does not export symbols beginning with
+-      # underscore (_), so it is better to generate a list of symbols to export.
+-      _LT_TAGVAR(always_export_symbols, $1)=yes
+-      if test "$aix_use_runtimelinking" = yes; then
+-	# Warning - without using the other runtime loading flags (-brtl),
+-	# -berok will link without error, but may produce a broken library.
+-	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+-        # Determine the default libpath from the value encoded in an
+-        # empty executable.
+-        _LT_SYS_MODULE_PATH_AIX
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+-      else
+-	if test "$host_cpu" = ia64; then
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+-	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+-	else
+-	 # Determine the default libpath from the value encoded in an
+-	 # empty executable.
+-	 _LT_SYS_MODULE_PATH_AIX
+-	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-	  # Warning - without using the other run time loading flags,
+-	  # -berok will link without error, but may produce a broken library.
+-	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+-	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+-	  # Exported symbols can be pulled into shared objects from archives
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-	  # This is similar to how AIX traditionally builds its shared libraries.
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+-	fi
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
+-        ;;
+-      m68k)
+-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-        ;;
+-      esac
+-      ;;
+-
+-    bsdi[[45]]*)
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
+-      ;;
+-
+-    cygwin* | mingw* | pw32* | cegcc*)
+-      # When not using gcc, we currently assume that we are using
+-      # Microsoft Visual C++.
+-      # hardcode_libdir_flag_spec is actually meaningless, as there is
+-      # no search path for DLLs.
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      # Tell ltmain to make .lib files, not .a files.
+-      libext=lib
+-      # Tell ltmain to make .dll files, not .so files.
+-      shrext_cmds=".dll"
+-      # FIXME: Setting linknames here is a bad hack.
+-      _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+-      # The linker will automatically build a .lib file if we build a DLL.
+-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+-      # FIXME: Should let the user specify the lib program.
+-      _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
+-      _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
+-      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+-      ;;
+-
+-    darwin* | rhapsody*)
+-      _LT_DARWIN_LINKER_FEATURES($1)
+-      ;;
+-
+-    dgux*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    freebsd1*)
+-      _LT_TAGVAR(ld_shlibs, $1)=no
+-      ;;
+-
+-    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+-    # support.  Future versions do this automatically, but an explicit c++rt0.o
+-    # does not break anything, and helps significantly (at the cost of a little
+-    # extra space).
+-    freebsd2.2*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+-    freebsd2*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+-    freebsd* | dragonfly*)
+-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    hpux9*)
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-
+-      # hardcode_minus_L: Not really in the search PATH,
+-      # but as the default location of the library.
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-      ;;
+-
+-    hpux10*)
+-      if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+-      fi
+-      if test "$with_gnu_ld" = no; then
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-	_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
+-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-	_LT_TAGVAR(hardcode_direct, $1)=yes
+-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	# hardcode_minus_L: Not really in the search PATH,
+-	# but as the default location of the library.
+-	_LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      fi
+-      ;;
+-
+-    hpux11*)
+-      if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+-	case $host_cpu in
+-	hppa*64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	ia64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	esac
+-      else
+-	case $host_cpu in
+-	hppa*64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	ia64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	esac
+-      fi
+-      if test "$with_gnu_ld" = no; then
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	case $host_cpu in
+-	hppa*64*|ia64*)
+-	  _LT_TAGVAR(hardcode_direct, $1)=no
+-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes
+-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-
+-	  # hardcode_minus_L: Not really in the search PATH,
+-	  # but as the default location of the library.
+-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-	  ;;
+-	esac
+-      fi
+-      ;;
+-
+-    irix5* | irix6* | nonstopux*)
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-	# Try to use the -exported_symbol ld option, if it does not
+-	# work, assume that -exports_file does not work either and
+-	# implicitly export all symbols.
+-        save_LDFLAGS="$LDFLAGS"
+-        LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+-        AC_LINK_IFELSE(int foo(void) {},
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+-        )
+-        LDFLAGS="$save_LDFLAGS"
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+-      fi
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      _LT_TAGVAR(inherit_rpath, $1)=yes
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      ;;
+-
+-    netbsd*)
+-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    newsos6)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    *nto* | *qnx*)
+-      ;;
+-
+-    openbsd*)
+-      if test -f /usr/libexec/ld.so; then
+-	_LT_TAGVAR(hardcode_direct, $1)=yes
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	else
+-	  case $host_os in
+-	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+-	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	     ;;
+-	   *)
+-	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	     ;;
+-	  esac
+-	fi
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    os2*)
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+-      ;;
+-
+-    osf3*)
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-      else
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-      fi
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      ;;
+-
+-    osf4* | osf5*)	# as osf3* with the addition of -msym flag
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      else
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+-
+-	# Both c and cxx compiler support -rpath directly
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+-      fi
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      ;;
+-
+-    solaris*)
+-      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
+-      if test "$GCC" = yes; then
+-	wlarc='${wl}'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	  $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+-      else
+-	case `$CC -V 2>&1` in
+-	*"Compilers 5.0"*)
+-	  wlarc=''
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+-	  ;;
+-	*)
+-	  wlarc='${wl}'
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+-	  ;;
+-	esac
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      case $host_os in
+-      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+-      *)
+-	# The compiler driver will combine and reorder linker options,
+-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+-	# but is careful enough not to reorder.
+-	# Supported since Solaris 2.6 (maybe 2.5.1?)
+-	if test "$GCC" = yes; then
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+-	else
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+-	fi
+-	;;
+-      esac
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      ;;
+-
+-    sunos4*)
+-      if test "x$host_vendor" = xsequent; then
+-	# Use $CC to link under sequent, because it throws in some extra .o
+-	# files that make .init and .fini sections work.
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    sysv4)
+-      case $host_vendor in
+-	sni)
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
+-	;;
+-	siemens)
+-	  ## LD is ld it makes a PLAMLIB
+-	  ## CC just makes a GrossModule.
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
+-	  _LT_TAGVAR(hardcode_direct, $1)=no
+-        ;;
+-	motorola)
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
+-	;;
+-      esac
+-      runpath_var='LD_RUN_PATH'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    sysv4.3*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
+-      ;;
+-
+-    sysv4*MP*)
+-      if test -d /usr/nec; then
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	runpath_var=LD_RUN_PATH
+-	hardcode_runpath_var=yes
+-	_LT_TAGVAR(ld_shlibs, $1)=yes
+-      fi
+-      ;;
+-
+-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      runpath_var='LD_RUN_PATH'
+-
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      fi
+-      ;;
+-
+-    sysv5* | sco3.2v5* | sco5v6*)
+-      # Note: We can NOT use -z defs as we might desire, because we do not
+-      # link with -lc, and that would cause any symbols used from libc to
+-      # always be unresolved, which means just about no library would
+-      # ever link correctly.  If we're not using GNU ld we use -z text
+-      # though, which does catch some bad symbols but isn't as heavy-handed
+-      # as -z defs.
+-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+-      runpath_var='LD_RUN_PATH'
+-
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      fi
+-      ;;
+-
+-    uts4*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    *)
+-      _LT_TAGVAR(ld_shlibs, $1)=no
+-      ;;
+-    esac
+-
+-    if test x$host_vendor = xsni; then
+-      case $host in
+-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
+-	;;
+-      esac
+-    fi
+-  fi
+-])
+-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+-
+-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
+-
+-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
+-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
+-_LT_DECL([], [extract_expsyms_cmds], [2],
+-    [The commands to extract the exported symbol list from a shared archive])
+-
+-#
+-# Do we need to explicitly link libc?
+-#
+-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
+-x|xyes)
+-  # Assume -lc should be added
+-  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-
+-  if test "$enable_shared" = yes && test "$GCC" = yes; then
+-    case $_LT_TAGVAR(archive_cmds, $1) in
+-    *'~'*)
+-      # FIXME: we may have to deal with multi-command sequences.
+-      ;;
+-    '$CC '*)
+-      # Test whether the compiler implicitly links with -lc since on some
+-      # systems, -lgcc has to come before -lc. If gcc already passes -lc
+-      # to ld, don't add -lc before -lgcc.
+-      AC_MSG_CHECKING([whether -lc should be explicitly linked in])
+-      $RM conftest*
+-      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+-
+-      if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
+-        soname=conftest
+-        lib=conftest
+-        libobjs=conftest.$ac_objext
+-        deplibs=
+-        wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
+-	pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
+-        compiler_flags=-v
+-        linker_flags=-v
+-        verstring=
+-        output_objdir=.
+-        libname=conftest
+-        lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
+-        _LT_TAGVAR(allow_undefined_flag, $1)=
+-        if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
+-        then
+-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-        else
+-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-        fi
+-        _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
+-      else
+-        cat conftest.err 1>&5
+-      fi
+-      $RM conftest*
+-      AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
+-      ;;
+-    esac
+-  fi
+-  ;;
+-esac
+-
+-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
+-    [Whether or not to add -lc for building shared libraries])
+-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
+-    [enable_shared_with_static_runtimes], [0],
+-    [Whether or not to disallow shared libs when runtime libs are static])
+-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
+-    [Compiler flag to allow reflexive dlopens])
+-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
+-    [Compiler flag to generate shared objects directly from archives])
+-_LT_TAGDECL([], [compiler_needs_object], [1],
+-    [Whether the compiler copes with passing no objects directly])
+-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
+-    [Create an old-style archive from a shared archive])
+-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
+-    [Create a temporary old-style archive to link instead of a shared archive])
+-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
+-_LT_TAGDECL([], [archive_expsym_cmds], [2])
+-_LT_TAGDECL([], [module_cmds], [2],
+-    [Commands used to build a loadable module if different from building
+-    a shared archive.])
+-_LT_TAGDECL([], [module_expsym_cmds], [2])
+-_LT_TAGDECL([], [with_gnu_ld], [1],
+-    [Whether we are building with GNU ld or not])
+-_LT_TAGDECL([], [allow_undefined_flag], [1],
+-    [Flag that allows shared libraries with undefined symbols to be built])
+-_LT_TAGDECL([], [no_undefined_flag], [1],
+-    [Flag that enforces no undefined symbols])
+-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
+-    [Flag to hardcode $libdir into a binary during linking.
+-    This must work even if $libdir does not exist])
+-_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
+-    [[If ld is used when linking, flag to hardcode $libdir into a binary
+-    during linking.  This must work even if $libdir does not exist]])
+-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
+-    [Whether we need a single "-rpath" flag with a separated argument])
+-_LT_TAGDECL([], [hardcode_direct], [0],
+-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+-    DIR into the resulting binary])
+-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
+-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+-    DIR into the resulting binary and the resulting library dependency is
+-    "absolute", i.e impossible to change by setting ${shlibpath_var} if the
+-    library is relocated])
+-_LT_TAGDECL([], [hardcode_minus_L], [0],
+-    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+-    into the resulting binary])
+-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
+-    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+-    into the resulting binary])
+-_LT_TAGDECL([], [hardcode_automatic], [0],
+-    [Set to "yes" if building a shared library automatically hardcodes DIR
+-    into the library and all subsequent libraries and executables linked
+-    against it])
+-_LT_TAGDECL([], [inherit_rpath], [0],
+-    [Set to yes if linker adds runtime paths of dependent libraries
+-    to runtime path list])
+-_LT_TAGDECL([], [link_all_deplibs], [0],
+-    [Whether libtool must link a program against all its dependency libraries])
+-_LT_TAGDECL([], [fix_srcfile_path], [1],
+-    [Fix the shell variable $srcfile for the compiler])
+-_LT_TAGDECL([], [always_export_symbols], [0],
+-    [Set to "yes" if exported symbols are required])
+-_LT_TAGDECL([], [export_symbols_cmds], [2],
+-    [The commands to list exported symbols])
+-_LT_TAGDECL([], [exclude_expsyms], [1],
+-    [Symbols that should not be listed in the preloaded symbols])
+-_LT_TAGDECL([], [include_expsyms], [1],
+-    [Symbols that must always be exported])
+-_LT_TAGDECL([], [prelink_cmds], [2],
+-    [Commands necessary for linking programs (against libraries) with templates])
+-_LT_TAGDECL([], [file_list_spec], [1],
+-    [Specify filename containing input files])
+-dnl FIXME: Not yet implemented
+-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
+-dnl    [Compiler flag to generate thread safe objects])
+-])# _LT_LINKER_SHLIBS
+-
+-
+-# _LT_LANG_C_CONFIG([TAG])
+-# ------------------------
+-# Ensure that the configuration variables for a C compiler are suitably
+-# defined.  These variables are subsequently used by _LT_CONFIG to write
+-# the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_C_CONFIG],
+-[m4_require([_LT_DECL_EGREP])dnl
+-lt_save_CC="$CC"
+-AC_LANG_PUSH(C)
+-
+-# Source file extension for C test sources.
+-ac_ext=c
+-
+-# Object file extension for compiled C test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# Code to be used in simple compile tests
+-lt_simple_compile_test_code="int some_variable = 0;"
+-
+-# Code to be used in simple link tests
+-lt_simple_link_test_code='int main(){return(0);}'
+-
+-_LT_TAG_COMPILER
+-# Save the default compiler, since it gets overwritten when the other
+-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+-compiler_DEFAULT=$CC
+-
+-# save warnings/boilerplate of simple test code
+-_LT_COMPILER_BOILERPLATE
+-_LT_LINKER_BOILERPLATE
+-
+-## CAVEAT EMPTOR:
+-## There is no encapsulation within the following macros, do not change
+-## the running order or otherwise move them around unless you know exactly
+-## what you are doing...
+-if test -n "$compiler"; then
+-  _LT_COMPILER_NO_RTTI($1)
+-  _LT_COMPILER_PIC($1)
+-  _LT_COMPILER_C_O($1)
+-  _LT_COMPILER_FILE_LOCKS($1)
+-  _LT_LINKER_SHLIBS($1)
+-  _LT_SYS_DYNAMIC_LINKER($1)
+-  _LT_LINKER_HARDCODE_LIBPATH($1)
+-  LT_SYS_DLOPEN_SELF
+-  _LT_CMD_STRIPLIB
+-
+-  # Report which library types will actually be built
+-  AC_MSG_CHECKING([if libtool supports shared libraries])
+-  AC_MSG_RESULT([$can_build_shared])
+-
+-  AC_MSG_CHECKING([whether to build shared libraries])
+-  test "$can_build_shared" = "no" && enable_shared=no
+-
+-  # On AIX, shared libraries and static libraries use the same namespace, and
+-  # are all built from PIC.
+-  case $host_os in
+-  aix3*)
+-    test "$enable_shared" = yes && enable_static=no
+-    if test -n "$RANLIB"; then
+-      archive_cmds="$archive_cmds~\$RANLIB \$lib"
+-      postinstall_cmds='$RANLIB $lib'
+-    fi
+-    ;;
+-
+-  aix[[4-9]]*)
+-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+-      test "$enable_shared" = yes && enable_static=no
+-    fi
+-    ;;
+-  esac
+-  AC_MSG_RESULT([$enable_shared])
+-
+-  AC_MSG_CHECKING([whether to build static libraries])
+-  # Make sure either enable_shared or enable_static is yes.
+-  test "$enable_shared" = yes || enable_static=yes
+-  AC_MSG_RESULT([$enable_static])
+-
+-  _LT_CONFIG($1)
+-fi
+-AC_LANG_POP
+-CC="$lt_save_CC"
+-])# _LT_LANG_C_CONFIG
+-
+-
+-# _LT_PROG_CXX
+-# ------------
+-# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
+-# compiler, we have our own version here.
+-m4_defun([_LT_PROG_CXX],
+-[
+-pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
+-AC_PROG_CXX
+-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+-    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
+-    (test "X$CXX" != "Xg++"))) ; then
+-  AC_PROG_CXXCPP
+-else
+-  _lt_caught_CXX_error=yes
+-fi
+-popdef([AC_MSG_ERROR])
+-])# _LT_PROG_CXX
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([_LT_PROG_CXX], [])
+-
+-
+-# _LT_LANG_CXX_CONFIG([TAG])
+-# --------------------------
+-# Ensure that the configuration variables for a C++ compiler are suitably
+-# defined.  These variables are subsequently used by _LT_CONFIG to write
+-# the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_CXX_CONFIG],
+-[AC_REQUIRE([_LT_PROG_CXX])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-
+-AC_LANG_PUSH(C++)
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-_LT_TAGVAR(allow_undefined_flag, $1)=
+-_LT_TAGVAR(always_export_symbols, $1)=no
+-_LT_TAGVAR(archive_expsym_cmds, $1)=
+-_LT_TAGVAR(compiler_needs_object, $1)=no
+-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_direct, $1)=no
+-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-_LT_TAGVAR(hardcode_libdir_separator, $1)=
+-_LT_TAGVAR(hardcode_minus_L, $1)=no
+-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+-_LT_TAGVAR(hardcode_automatic, $1)=no
+-_LT_TAGVAR(inherit_rpath, $1)=no
+-_LT_TAGVAR(module_cmds, $1)=
+-_LT_TAGVAR(module_expsym_cmds, $1)=
+-_LT_TAGVAR(link_all_deplibs, $1)=unknown
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-_LT_TAGVAR(no_undefined_flag, $1)=
+-_LT_TAGVAR(whole_archive_flag_spec, $1)=
+-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-
+-# Source file extension for C++ test sources.
+-ac_ext=cpp
+-
+-# Object file extension for compiled C++ test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# No sense in running all these tests if we already determined that
+-# the CXX compiler isn't working.  Some variables (like enable_shared)
+-# are currently assumed to apply to all compilers on this platform,
+-# and will be corrupted by setting them based on a non-working compiler.
+-if test "$_lt_caught_CXX_error" != yes; then
+-  # Code to be used in simple compile tests
+-  lt_simple_compile_test_code="int some_variable = 0;"
+-
+-  # Code to be used in simple link tests
+-  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
+-
+-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-  _LT_TAG_COMPILER
+-
+-  # save warnings/boilerplate of simple test code
+-  _LT_COMPILER_BOILERPLATE
+-  _LT_LINKER_BOILERPLATE
+-
+-  # Allow CC to be a program name with arguments.
+-  lt_save_CC=$CC
+-  lt_save_LD=$LD
+-  lt_save_GCC=$GCC
+-  GCC=$GXX
+-  lt_save_with_gnu_ld=$with_gnu_ld
+-  lt_save_path_LD=$lt_cv_path_LD
+-  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
+-    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
+-  else
+-    $as_unset lt_cv_prog_gnu_ld
+-  fi
+-  if test -n "${lt_cv_path_LDCXX+set}"; then
+-    lt_cv_path_LD=$lt_cv_path_LDCXX
+-  else
+-    $as_unset lt_cv_path_LD
+-  fi
+-  test -z "${LDCXX+set}" || LD=$LDCXX
+-  CC=${CXX-"c++"}
+-  compiler=$CC
+-  _LT_TAGVAR(compiler, $1)=$CC
+-  _LT_CC_BASENAME([$compiler])
+-
+-  if test -n "$compiler"; then
+-    # We don't want -fno-exception when compiling C++ code, so set the
+-    # no_builtin_flag separately
+-    if test "$GXX" = yes; then
+-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+-    else
+-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+-    fi
+-
+-    if test "$GXX" = yes; then
+-      # Set up default GNU C++ configuration
+-
+-      LT_PATH_LD
+-
+-      # Check if GNU C++ uses GNU ld as the underlying linker, since the
+-      # archiving commands below assume that GNU ld is being used.
+-      if test "$with_gnu_ld" = yes; then
+-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-
+-        # If archive_cmds runs LD, not CC, wlarc should be empty
+-        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
+-        #     investigate it a little bit more. (MM)
+-        wlarc='${wl}'
+-
+-        # ancient GNU ld didn't support --whole-archive et. al.
+-        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
+-	  $GREP 'no-whole-archive' > /dev/null; then
+-          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+-        else
+-          _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-        fi
+-      else
+-        with_gnu_ld=no
+-        wlarc=
+-
+-        # A generic and very simple default shared library creation
+-        # command for GNU C++ for the case where it uses the native
+-        # linker, instead of GNU ld.  If possible, this setting should
+-        # overridden to take advantage of the native linker features on
+-        # the platform it is being used on.
+-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+-      fi
+-
+-      # Commands to make compiler produce verbose output that lists
+-      # what "hidden" libraries, object files and flags are used when
+-      # linking a shared library.
+-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-
+-    else
+-      GXX=no
+-      with_gnu_ld=no
+-      wlarc=
+-    fi
+-
+-    # PORTME: fill in a description of your system's C++ link characteristics
+-    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+-    _LT_TAGVAR(ld_shlibs, $1)=yes
+-    case $host_os in
+-      aix3*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-      aix[[4-9]]*)
+-        if test "$host_cpu" = ia64; then
+-          # On IA64, the linker does run time linking by default, so we don't
+-          # have to do anything special.
+-          aix_use_runtimelinking=no
+-          exp_sym_flag='-Bexport'
+-          no_entry_flag=""
+-        else
+-          aix_use_runtimelinking=no
+-
+-          # Test if we are trying to use run time linking or normal
+-          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+-          # need to do runtime linking.
+-          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
+-	    for ld_flag in $LDFLAGS; do
+-	      case $ld_flag in
+-	      *-brtl*)
+-	        aix_use_runtimelinking=yes
+-	        break
+-	        ;;
+-	      esac
+-	    done
+-	    ;;
+-          esac
+-
+-          exp_sym_flag='-bexport'
+-          no_entry_flag='-bnoentry'
+-        fi
+-
+-        # When large executables or shared objects are built, AIX ld can
+-        # have problems creating the table of contents.  If linking a library
+-        # or program results in "error TOC overflow" add -mminimal-toc to
+-        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
+-        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+-
+-        _LT_TAGVAR(archive_cmds, $1)=''
+-        _LT_TAGVAR(hardcode_direct, $1)=yes
+-        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-        _LT_TAGVAR(link_all_deplibs, $1)=yes
+-        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+-
+-        if test "$GXX" = yes; then
+-          case $host_os in aix4.[[012]]|aix4.[[012]].*)
+-          # We only want to do this on AIX 4.2 and lower, the check
+-          # below for broken collect2 doesn't work under 4.3+
+-	  collect2name=`${CC} -print-prog-name=collect2`
+-	  if test -f "$collect2name" &&
+-	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+-	  then
+-	    # We have reworked collect2
+-	    :
+-	  else
+-	    # We have old collect2
+-	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
+-	    # It fails to find uninstalled libraries when the uninstalled
+-	    # path is not listed in the libpath.  Setting hardcode_minus_L
+-	    # to unsupported forces relinking
+-	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
+-	  fi
+-          esac
+-          shared_flag='-shared'
+-	  if test "$aix_use_runtimelinking" = yes; then
+-	    shared_flag="$shared_flag "'${wl}-G'
+-	  fi
+-        else
+-          # not using gcc
+-          if test "$host_cpu" = ia64; then
+-	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+-	  # chokes on -Wl,-G. The following line is correct:
+-	  shared_flag='-G'
+-          else
+-	    if test "$aix_use_runtimelinking" = yes; then
+-	      shared_flag='${wl}-G'
+-	    else
+-	      shared_flag='${wl}-bM:SRE'
+-	    fi
+-          fi
+-        fi
+-
+-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+-        # It seems that -bexpall does not export symbols beginning with
+-        # underscore (_), so it is better to generate a list of symbols to
+-	# export.
+-        _LT_TAGVAR(always_export_symbols, $1)=yes
+-        if test "$aix_use_runtimelinking" = yes; then
+-          # Warning - without using the other runtime loading flags (-brtl),
+-          # -berok will link without error, but may produce a broken library.
+-          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+-          # Determine the default libpath from the value encoded in an empty
+-          # executable.
+-          _LT_SYS_MODULE_PATH_AIX
+-          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+-        else
+-          if test "$host_cpu" = ia64; then
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+-	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+-          else
+-	    # Determine the default libpath from the value encoded in an
+-	    # empty executable.
+-	    _LT_SYS_MODULE_PATH_AIX
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-	    # Warning - without using the other run time loading flags,
+-	    # -berok will link without error, but may produce a broken library.
+-	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+-	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+-	    # Exported symbols can be pulled into shared objects from archives
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-	    # This is similar to how AIX traditionally builds its shared
+-	    # libraries.
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+-          fi
+-        fi
+-        ;;
+-
+-      beos*)
+-	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-	  # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
+-	  # support --undefined.  This deserves some investigation.  FIXME
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	else
+-	  _LT_TAGVAR(ld_shlibs, $1)=no
+-	fi
+-	;;
+-
+-      chorus*)
+-        case $cc_basename in
+-          *)
+-	  # FIXME: insert proper C++ library support
+-	  _LT_TAGVAR(ld_shlibs, $1)=no
+-	  ;;
+-        esac
+-        ;;
+-
+-      cygwin* | mingw* | pw32* | cegcc*)
+-        # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+-        # as there is no search path for DLLs.
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-        _LT_TAGVAR(always_export_symbols, $1)=no
+-        _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+-
+-        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+-          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-          # If the export-symbols file already is a .def file (1st line
+-          # is EXPORTS), use it as is; otherwise, prepend...
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+-	    cp $export_symbols $output_objdir/$soname.def;
+-          else
+-	    echo EXPORTS > $output_objdir/$soname.def;
+-	    cat $export_symbols >> $output_objdir/$soname.def;
+-          fi~
+-          $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-        else
+-          _LT_TAGVAR(ld_shlibs, $1)=no
+-        fi
+-        ;;
+-      darwin* | rhapsody*)
+-        _LT_DARWIN_LINKER_FEATURES($1)
+-	;;
+-
+-      dgux*)
+-        case $cc_basename in
+-          ec++*)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          ghcx*)
+-	    # Green Hills C++ Compiler
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-        esac
+-        ;;
+-
+-      freebsd[[12]]*)
+-        # C++ shared libraries reported to be fairly broken before
+-	# switch to ELF
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-
+-      freebsd-elf*)
+-        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-        ;;
+-
+-      freebsd* | dragonfly*)
+-        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+-        # conventions
+-        _LT_TAGVAR(ld_shlibs, $1)=yes
+-        ;;
+-
+-      gnu*)
+-        ;;
+-
+-      hpux9*)
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-        _LT_TAGVAR(hardcode_direct, $1)=yes
+-        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+-				             # but as the default
+-				             # location of the library.
+-
+-        case $cc_basename in
+-          CC*)
+-            # FIXME: insert proper C++ library support
+-            _LT_TAGVAR(ld_shlibs, $1)=no
+-            ;;
+-          aCC*)
+-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-            # Commands to make compiler produce verbose output that lists
+-            # what "hidden" libraries, object files and flags are used when
+-            # linking a shared library.
+-            #
+-            # There doesn't appear to be a way to prevent this compiler from
+-            # explicitly linking system object files so we need to strip them
+-            # from the output so that they don't get included in the library
+-            # dependencies.
+-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-            ;;
+-          *)
+-            if test "$GXX" = yes; then
+-              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-            else
+-              # FIXME: insert proper C++ library support
+-              _LT_TAGVAR(ld_shlibs, $1)=no
+-            fi
+-            ;;
+-        esac
+-        ;;
+-
+-      hpux10*|hpux11*)
+-        if test $with_gnu_ld = no; then
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-          case $host_cpu in
+-            hppa*64*|ia64*)
+-              ;;
+-            *)
+-	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-              ;;
+-          esac
+-        fi
+-        case $host_cpu in
+-          hppa*64*|ia64*)
+-            _LT_TAGVAR(hardcode_direct, $1)=no
+-            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-            ;;
+-          *)
+-            _LT_TAGVAR(hardcode_direct, $1)=yes
+-            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+-					         # but as the default
+-					         # location of the library.
+-            ;;
+-        esac
+-
+-        case $cc_basename in
+-          CC*)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          aCC*)
+-	    case $host_cpu in
+-	      hppa*64*)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	        ;;
+-	      ia64*)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	        ;;
+-	      *)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	        ;;
+-	    esac
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-	    ;;
+-          *)
+-	    if test "$GXX" = yes; then
+-	      if test $with_gnu_ld = no; then
+-	        case $host_cpu in
+-	          hppa*64*)
+-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	            ;;
+-	          ia64*)
+-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	            ;;
+-	          *)
+-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	            ;;
+-	        esac
+-	      fi
+-	    else
+-	      # FIXME: insert proper C++ library support
+-	      _LT_TAGVAR(ld_shlibs, $1)=no
+-	    fi
+-	    ;;
+-        esac
+-        ;;
+-
+-      interix[[3-9]]*)
+-	_LT_TAGVAR(hardcode_direct, $1)=no
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+-	# Instead, shared libraries are loaded at an image base (0x10000000 by
+-	# default) and relocated if they conflict, which is a slow very memory
+-	# consuming and fragmenting process.  To avoid this, we pick a random,
+-	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+-	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-	;;
+-      irix5* | irix6*)
+-        case $cc_basename in
+-          CC*)
+-	    # SGI C++
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-
+-	    # Archives containing C++ object files must be created using
+-	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
+-	    # necessary to make sure instantiated templates are included
+-	    # in the archive.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
+-	    ;;
+-          *)
+-	    if test "$GXX" = yes; then
+-	      if test "$with_gnu_ld" = no; then
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-	      else
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
+-	      fi
+-	    fi
+-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
+-	    ;;
+-        esac
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-        _LT_TAGVAR(inherit_rpath, $1)=yes
+-        ;;
+-
+-      linux* | k*bsd*-gnu)
+-        case $cc_basename in
+-          KCC*)
+-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
+-
+-	    # KCC will only create a shared library if the output file
+-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
+-	    # to its proper name (with version) after linking.
+-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-
+-	    # Archives containing C++ object files must be created using
+-	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+-	    ;;
+-	  icpc* | ecpc* )
+-	    # Intel C++
+-	    with_gnu_ld=yes
+-	    # version 8.0 and above of icpc choke on multiply defined symbols
+-	    # if we add $predep_objects and $postdep_objects, however 7.1 and
+-	    # earlier do not add the objects themselves.
+-	    case `$CC -V 2>&1` in
+-	      *"Version 7."*)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-		;;
+-	      *)  # Version 8.0 or newer
+-	        tmp_idyn=
+-	        case $host_cpu in
+-		  ia64*) tmp_idyn=' -i_dynamic';;
+-		esac
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-		;;
+-	    esac
+-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+-	    ;;
+-          pgCC* | pgcpp*)
+-            # Portland Group C++ compiler
+-	    case `$CC -V` in
+-	    *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
+-	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+-		compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
+-	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+-		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
+-		$RANLIB $oldlib'
+-	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+-	      ;;
+-	    *) # Version 6 will use weak symbols
+-	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+-	      ;;
+-	    esac
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-            ;;
+-	  cxx*)
+-	    # Compaq C++
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+-
+-	    runpath_var=LD_RUN_PATH
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-	    ;;
+-	  xl*)
+-	    # IBM XL 8.0 on PPC, with GNU ld
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	    if test "x$supports_anon_versioning" = xyes; then
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+-		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+-		echo "local: *; };" >> $output_objdir/$libname.ver~
+-		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+-	    fi
+-	    ;;
+-	  *)
+-	    case `$CC -V 2>&1 | sed 5q` in
+-	    *Sun\ C*)
+-	      # Sun C++ 5.9
+-	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+-	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	      _LT_TAGVAR(compiler_needs_object, $1)=yes
+-
+-	      # Not sure whether something based on
+-	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+-	      # would be better.
+-	      output_verbose_link_cmd='echo'
+-
+-	      # Archives containing C++ object files must be created using
+-	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
+-	      # necessary to make sure instantiated templates are included
+-	      # in the archive.
+-	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+-	      ;;
+-	    esac
+-	    ;;
+-	esac
+-	;;
+-
+-      lynxos*)
+-        # FIXME: insert proper C++ library support
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	;;
+-
+-      m88k*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-	;;
+-
+-      mvs*)
+-        case $cc_basename in
+-          cxx*)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-	  *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-	esac
+-	;;
+-
+-      netbsd*)
+-        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
+-	  wlarc=
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes
+-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	fi
+-	# Workaround some broken pre-1.5 toolchains
+-	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+-	;;
+-
+-      *nto* | *qnx*)
+-        _LT_TAGVAR(ld_shlibs, $1)=yes
+-	;;
+-
+-      openbsd2*)
+-        # C++ shared libraries are fairly broken
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	;;
+-
+-      openbsd*)
+-	if test -f /usr/libexec/ld.so; then
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes
+-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+-	  fi
+-	  output_verbose_link_cmd=echo
+-	else
+-	  _LT_TAGVAR(ld_shlibs, $1)=no
+-	fi
+-	;;
+-
+-      osf3* | osf4* | osf5*)
+-        case $cc_basename in
+-          KCC*)
+-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
+-
+-	    # KCC will only create a shared library if the output file
+-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
+-	    # to its proper name (with version) after linking.
+-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	    # Archives containing C++ object files must be created using
+-	    # the KAI C++ compiler.
+-	    case $host in
+-	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
+-	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
+-	    esac
+-	    ;;
+-          RCC*)
+-	    # Rational C++ 2.4.1
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          cxx*)
+-	    case $host in
+-	      osf3*)
+-	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-		;;
+-	      *)
+-	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
+-	          echo "-hidden">> $lib.exp~
+-	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
+-	          $RM $lib.exp'
+-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+-		;;
+-	    esac
+-
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-	    ;;
+-	  *)
+-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+-	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	      case $host in
+-	        osf3*)
+-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-		  ;;
+-	        *)
+-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-		  ;;
+-	      esac
+-
+-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	      # Commands to make compiler produce verbose output that lists
+-	      # what "hidden" libraries, object files and flags are used when
+-	      # linking a shared library.
+-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-
+-	    else
+-	      # FIXME: insert proper C++ library support
+-	      _LT_TAGVAR(ld_shlibs, $1)=no
+-	    fi
+-	    ;;
+-        esac
+-        ;;
+-
+-      psos*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-
+-      sunos4*)
+-        case $cc_basename in
+-          CC*)
+-	    # Sun C++ 4.x
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          lcc*)
+-	    # Lucid
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-        esac
+-        ;;
+-
+-      solaris*)
+-        case $cc_basename in
+-          CC*)
+-	    # Sun C++ 4.2, 5.x and Centerline C++
+-            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+-	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	      $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	    case $host_os in
+-	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+-	      *)
+-		# The compiler driver will combine and reorder linker options,
+-		# but understands `-z linker_flag'.
+-	        # Supported since Solaris 2.6 (maybe 2.5.1?)
+-		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+-	        ;;
+-	    esac
+-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
+-
+-	    output_verbose_link_cmd='echo'
+-
+-	    # Archives containing C++ object files must be created using
+-	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
+-	    # necessary to make sure instantiated templates are included
+-	    # in the archive.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+-	    ;;
+-          gcx*)
+-	    # Green Hills C++ Compiler
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+-
+-	    # The C++ compiler must be used to create the archive.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
+-	    ;;
+-          *)
+-	    # GNU C++ compiler with Solaris linker
+-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+-	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+-	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+-
+-	        # Commands to make compiler produce verbose output that lists
+-	        # what "hidden" libraries, object files and flags are used when
+-	        # linking a shared library.
+-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-	      else
+-	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
+-	        # platform.
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+-
+-	        # Commands to make compiler produce verbose output that lists
+-	        # what "hidden" libraries, object files and flags are used when
+-	        # linking a shared library.
+-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-	      fi
+-
+-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+-	      case $host_os in
+-		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+-		*)
+-		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+-		  ;;
+-	      esac
+-	    fi
+-	    ;;
+-        esac
+-        ;;
+-
+-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      runpath_var='LD_RUN_PATH'
+-
+-      case $cc_basename in
+-        CC*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-      esac
+-      ;;
+-
+-      sysv5* | sco3.2v5* | sco5v6*)
+-	# Note: We can NOT use -z defs as we might desire, because we do not
+-	# link with -lc, and that would cause any symbols used from libc to
+-	# always be unresolved, which means just about no library would
+-	# ever link correctly.  If we're not using GNU ld we use -z text
+-	# though, which does catch some bad symbols but isn't as heavy-handed
+-	# as -z defs.
+-	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+-	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+-	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-	_LT_TAGVAR(link_all_deplibs, $1)=yes
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+-	runpath_var='LD_RUN_PATH'
+-
+-	case $cc_basename in
+-          CC*)
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    ;;
+-	  *)
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    ;;
+-	esac
+-      ;;
+-
+-      tandem*)
+-        case $cc_basename in
+-          NCC*)
+-	    # NonStop-UX NCC 3.20
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-        esac
+-        ;;
+-
+-      vxworks*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-
+-      *)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-    esac
+-
+-    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+-    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+-
+-    _LT_TAGVAR(GCC, $1)="$GXX"
+-    _LT_TAGVAR(LD, $1)="$LD"
+-
+-    ## CAVEAT EMPTOR:
+-    ## There is no encapsulation within the following macros, do not change
+-    ## the running order or otherwise move them around unless you know exactly
+-    ## what you are doing...
+-    _LT_SYS_HIDDEN_LIBDEPS($1)
+-    _LT_COMPILER_PIC($1)
+-    _LT_COMPILER_C_O($1)
+-    _LT_COMPILER_FILE_LOCKS($1)
+-    _LT_LINKER_SHLIBS($1)
+-    _LT_SYS_DYNAMIC_LINKER($1)
+-    _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-    _LT_CONFIG($1)
+-  fi # test -n "$compiler"
+-
+-  CC=$lt_save_CC
+-  LDCXX=$LD
+-  LD=$lt_save_LD
+-  GCC=$lt_save_GCC
+-  with_gnu_ld=$lt_save_with_gnu_ld
+-  lt_cv_path_LDCXX=$lt_cv_path_LD
+-  lt_cv_path_LD=$lt_save_path_LD
+-  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
+-  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
+-fi # test "$_lt_caught_CXX_error" != yes
+-
+-AC_LANG_POP
+-])# _LT_LANG_CXX_CONFIG
+-
+-
+-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
+-# ---------------------------------
+-# Figure out "hidden" library dependencies from verbose
+-# compiler output when linking a shared library.
+-# Parse the compiler output and extract the necessary
+-# objects, libraries and library flags.
+-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-# Dependencies to place before and after the object being linked:
+-_LT_TAGVAR(predep_objects, $1)=
+-_LT_TAGVAR(postdep_objects, $1)=
+-_LT_TAGVAR(predeps, $1)=
+-_LT_TAGVAR(postdeps, $1)=
+-_LT_TAGVAR(compiler_lib_search_path, $1)=
+-
+-dnl we can't use the lt_simple_compile_test_code here,
+-dnl because it contains code intended for an executable,
+-dnl not a library.  It's possible we should let each
+-dnl tag define a new lt_????_link_test_code variable,
+-dnl but it's only used here...
+-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
+-int a;
+-void foo (void) { a = 0; }
+-_LT_EOF
+-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
+-class Foo
+-{
+-public:
+-  Foo (void) { a = 0; }
+-private:
+-  int a;
+-};
+-_LT_EOF
+-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
+-      subroutine foo
+-      implicit none
+-      integer*4 a
+-      a=0
+-      return
+-      end
+-_LT_EOF
+-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
+-      subroutine foo
+-      implicit none
+-      integer a
+-      a=0
+-      return
+-      end
+-_LT_EOF
+-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
+-public class foo {
+-  private int a;
+-  public void bar (void) {
+-    a = 0;
+-  }
+-};
+-_LT_EOF
+-])
+-dnl Parse the compiler output and extract the necessary
+-dnl objects, libraries and library flags.
+-if AC_TRY_EVAL(ac_compile); then
+-  # Parse the compiler output and extract the necessary
+-  # objects, libraries and library flags.
+-
+-  # Sentinel used to keep track of whether or not we are before
+-  # the conftest object file.
+-  pre_test_object_deps_done=no
+-
+-  for p in `eval "$output_verbose_link_cmd"`; do
+-    case $p in
+-
+-    -L* | -R* | -l*)
+-       # Some compilers place space between "-{L,R}" and the path.
+-       # Remove the space.
+-       if test $p = "-L" ||
+-          test $p = "-R"; then
+-	 prev=$p
+-	 continue
+-       else
+-	 prev=
+-       fi
+-
+-       if test "$pre_test_object_deps_done" = no; then
+-	 case $p in
+-	 -L* | -R*)
+-	   # Internal compiler library paths should come after those
+-	   # provided the user.  The postdeps already come after the
+-	   # user supplied libs so there is no need to process them.
+-	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
+-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+-	   else
+-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+-	   fi
+-	   ;;
+-	 # The "-l" case would never come before the object being
+-	 # linked, so don't bother handling this case.
+-	 esac
+-       else
+-	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
+-	   _LT_TAGVAR(postdeps, $1)="${prev}${p}"
+-	 else
+-	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
+-	 fi
+-       fi
+-       ;;
+-
+-    *.$objext)
+-       # This assumes that the test object file only shows up
+-       # once in the compiler output.
+-       if test "$p" = "conftest.$objext"; then
+-	 pre_test_object_deps_done=yes
+-	 continue
+-       fi
+-
+-       if test "$pre_test_object_deps_done" = no; then
+-	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
+-	   _LT_TAGVAR(predep_objects, $1)="$p"
+-	 else
+-	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
+-	 fi
+-       else
+-	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
+-	   _LT_TAGVAR(postdep_objects, $1)="$p"
+-	 else
+-	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
+-	 fi
+-       fi
+-       ;;
+-
+-    *) ;; # Ignore the rest.
+-
+-    esac
+-  done
+-
+-  # Clean up.
+-  rm -f a.out a.exe
+-else
+-  echo "libtool.m4: error: problem compiling $1 test program"
+-fi
+-
+-$RM -f confest.$objext
+-
+-# PORTME: override above test on systems where it is broken
+-m4_if([$1], [CXX],
+-[case $host_os in
+-interix[[3-9]]*)
+-  # Interix 3.5 installs completely hosed .la files for C++, so rather than
+-  # hack all around it, let's just trust "g++" to DTRT.
+-  _LT_TAGVAR(predep_objects,$1)=
+-  _LT_TAGVAR(postdep_objects,$1)=
+-  _LT_TAGVAR(postdeps,$1)=
+-  ;;
+-
+-linux*)
+-  case `$CC -V 2>&1 | sed 5q` in
+-  *Sun\ C*)
+-    # Sun C++ 5.9
+-
+-    # The more standards-conforming stlport4 library is
+-    # incompatible with the Cstd library. Avoid specifying
+-    # it if it's in CXXFLAGS. Ignore libCrun as
+-    # -library=stlport4 depends on it.
+-    case " $CXX $CXXFLAGS " in
+-    *" -library=stlport4 "*)
+-      solaris_use_stlport4=yes
+-      ;;
+-    esac
+-
+-    if test "$solaris_use_stlport4" != yes; then
+-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+-    fi
+-    ;;
+-  esac
+-  ;;
+-
+-solaris*)
+-  case $cc_basename in
+-  CC*)
+-    # The more standards-conforming stlport4 library is
+-    # incompatible with the Cstd library. Avoid specifying
+-    # it if it's in CXXFLAGS. Ignore libCrun as
+-    # -library=stlport4 depends on it.
+-    case " $CXX $CXXFLAGS " in
+-    *" -library=stlport4 "*)
+-      solaris_use_stlport4=yes
+-      ;;
+-    esac
+-
+-    # Adding this requires a known-good setup of shared libraries for
+-    # Sun compiler versions before 5.6, else PIC objects from an old
+-    # archive will be linked into the output, leading to subtle bugs.
+-    if test "$solaris_use_stlport4" != yes; then
+-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+-    fi
+-    ;;
+-  esac
+-  ;;
+-esac
+-])
+-
+-case " $_LT_TAGVAR(postdeps, $1) " in
+-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
+-esac
+- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
+-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
+- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+-fi
+-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
+-    [The directories searched by this compiler when creating a shared library])
+-_LT_TAGDECL([], [predep_objects], [1],
+-    [Dependencies to place before and after the objects being linked to
+-    create a shared library])
+-_LT_TAGDECL([], [postdep_objects], [1])
+-_LT_TAGDECL([], [predeps], [1])
+-_LT_TAGDECL([], [postdeps], [1])
+-_LT_TAGDECL([], [compiler_lib_search_path], [1],
+-    [The library search path used internally by the compiler when linking
+-    a shared library])
+-])# _LT_SYS_HIDDEN_LIBDEPS
+-
+-
+-# _LT_PROG_F77
+-# ------------
+-# Since AC_PROG_F77 is broken, in that it returns the empty string
+-# if there is no fortran compiler, we have our own version here.
+-m4_defun([_LT_PROG_F77],
+-[
+-pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
+-AC_PROG_F77
+-if test -z "$F77" || test "X$F77" = "Xno"; then
+-  _lt_disable_F77=yes
+-fi
+-popdef([AC_MSG_ERROR])
+-])# _LT_PROG_F77
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([_LT_PROG_F77], [])
+-
+-
+-# _LT_LANG_F77_CONFIG([TAG])
+-# --------------------------
+-# Ensure that the configuration variables for a Fortran 77 compiler are
+-# suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_F77_CONFIG],
+-[AC_REQUIRE([_LT_PROG_F77])dnl
+-AC_LANG_PUSH(Fortran 77)
+-
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-_LT_TAGVAR(allow_undefined_flag, $1)=
+-_LT_TAGVAR(always_export_symbols, $1)=no
+-_LT_TAGVAR(archive_expsym_cmds, $1)=
+-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_direct, $1)=no
+-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-_LT_TAGVAR(hardcode_libdir_separator, $1)=
+-_LT_TAGVAR(hardcode_minus_L, $1)=no
+-_LT_TAGVAR(hardcode_automatic, $1)=no
+-_LT_TAGVAR(inherit_rpath, $1)=no
+-_LT_TAGVAR(module_cmds, $1)=
+-_LT_TAGVAR(module_expsym_cmds, $1)=
+-_LT_TAGVAR(link_all_deplibs, $1)=unknown
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-_LT_TAGVAR(no_undefined_flag, $1)=
+-_LT_TAGVAR(whole_archive_flag_spec, $1)=
+-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-
+-# Source file extension for f77 test sources.
+-ac_ext=f
+-
+-# Object file extension for compiled f77 test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# No sense in running all these tests if we already determined that
+-# the F77 compiler isn't working.  Some variables (like enable_shared)
+-# are currently assumed to apply to all compilers on this platform,
+-# and will be corrupted by setting them based on a non-working compiler.
+-if test "$_lt_disable_F77" != yes; then
+-  # Code to be used in simple compile tests
+-  lt_simple_compile_test_code="\
+-      subroutine t
+-      return
+-      end
+-"
+-
+-  # Code to be used in simple link tests
+-  lt_simple_link_test_code="\
+-      program t
+-      end
+-"
+-
+-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-  _LT_TAG_COMPILER
+-
+-  # save warnings/boilerplate of simple test code
+-  _LT_COMPILER_BOILERPLATE
+-  _LT_LINKER_BOILERPLATE
+-
+-  # Allow CC to be a program name with arguments.
+-  lt_save_CC="$CC"
+-  lt_save_GCC=$GCC
+-  CC=${F77-"f77"}
+-  compiler=$CC
+-  _LT_TAGVAR(compiler, $1)=$CC
+-  _LT_CC_BASENAME([$compiler])
+-  GCC=$G77
+-  if test -n "$compiler"; then
+-    AC_MSG_CHECKING([if libtool supports shared libraries])
+-    AC_MSG_RESULT([$can_build_shared])
+-
+-    AC_MSG_CHECKING([whether to build shared libraries])
+-    test "$can_build_shared" = "no" && enable_shared=no
+-
+-    # On AIX, shared libraries and static libraries use the same namespace, and
+-    # are all built from PIC.
+-    case $host_os in
+-      aix3*)
+-        test "$enable_shared" = yes && enable_static=no
+-        if test -n "$RANLIB"; then
+-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
+-          postinstall_cmds='$RANLIB $lib'
+-        fi
+-        ;;
+-      aix[[4-9]]*)
+-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+-	  test "$enable_shared" = yes && enable_static=no
+-	fi
+-        ;;
+-    esac
+-    AC_MSG_RESULT([$enable_shared])
+-
+-    AC_MSG_CHECKING([whether to build static libraries])
+-    # Make sure either enable_shared or enable_static is yes.
+-    test "$enable_shared" = yes || enable_static=yes
+-    AC_MSG_RESULT([$enable_static])
+-
+-    _LT_TAGVAR(GCC, $1)="$G77"
+-    _LT_TAGVAR(LD, $1)="$LD"
+-
+-    ## CAVEAT EMPTOR:
+-    ## There is no encapsulation within the following macros, do not change
+-    ## the running order or otherwise move them around unless you know exactly
+-    ## what you are doing...
+-    _LT_COMPILER_PIC($1)
+-    _LT_COMPILER_C_O($1)
+-    _LT_COMPILER_FILE_LOCKS($1)
+-    _LT_LINKER_SHLIBS($1)
+-    _LT_SYS_DYNAMIC_LINKER($1)
+-    _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-    _LT_CONFIG($1)
+-  fi # test -n "$compiler"
+-
+-  GCC=$lt_save_GCC
+-  CC="$lt_save_CC"
+-fi # test "$_lt_disable_F77" != yes
+-
+-AC_LANG_POP
+-])# _LT_LANG_F77_CONFIG
+-
+-
+-# _LT_PROG_FC
+-# -----------
+-# Since AC_PROG_FC is broken, in that it returns the empty string
+-# if there is no fortran compiler, we have our own version here.
+-m4_defun([_LT_PROG_FC],
+-[
+-pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
+-AC_PROG_FC
+-if test -z "$FC" || test "X$FC" = "Xno"; then
+-  _lt_disable_FC=yes
+-fi
+-popdef([AC_MSG_ERROR])
+-])# _LT_PROG_FC
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([_LT_PROG_FC], [])
+-
+-
+-# _LT_LANG_FC_CONFIG([TAG])
+-# -------------------------
+-# Ensure that the configuration variables for a Fortran compiler are
+-# suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_FC_CONFIG],
+-[AC_REQUIRE([_LT_PROG_FC])dnl
+-AC_LANG_PUSH(Fortran)
+-
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-_LT_TAGVAR(allow_undefined_flag, $1)=
+-_LT_TAGVAR(always_export_symbols, $1)=no
+-_LT_TAGVAR(archive_expsym_cmds, $1)=
+-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_direct, $1)=no
+-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-_LT_TAGVAR(hardcode_libdir_separator, $1)=
+-_LT_TAGVAR(hardcode_minus_L, $1)=no
+-_LT_TAGVAR(hardcode_automatic, $1)=no
+-_LT_TAGVAR(inherit_rpath, $1)=no
+-_LT_TAGVAR(module_cmds, $1)=
+-_LT_TAGVAR(module_expsym_cmds, $1)=
+-_LT_TAGVAR(link_all_deplibs, $1)=unknown
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-_LT_TAGVAR(no_undefined_flag, $1)=
+-_LT_TAGVAR(whole_archive_flag_spec, $1)=
+-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-
+-# Source file extension for fc test sources.
+-ac_ext=${ac_fc_srcext-f}
+-
+-# Object file extension for compiled fc test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# No sense in running all these tests if we already determined that
+-# the FC compiler isn't working.  Some variables (like enable_shared)
+-# are currently assumed to apply to all compilers on this platform,
+-# and will be corrupted by setting them based on a non-working compiler.
+-if test "$_lt_disable_FC" != yes; then
+-  # Code to be used in simple compile tests
+-  lt_simple_compile_test_code="\
+-      subroutine t
+-      return
+-      end
+-"
+-
+-  # Code to be used in simple link tests
+-  lt_simple_link_test_code="\
+-      program t
+-      end
+-"
+-
+-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-  _LT_TAG_COMPILER
+-
+-  # save warnings/boilerplate of simple test code
+-  _LT_COMPILER_BOILERPLATE
+-  _LT_LINKER_BOILERPLATE
+-
+-  # Allow CC to be a program name with arguments.
+-  lt_save_CC="$CC"
+-  lt_save_GCC=$GCC
+-  CC=${FC-"f95"}
+-  compiler=$CC
+-  GCC=$ac_cv_fc_compiler_gnu
+-
+-  _LT_TAGVAR(compiler, $1)=$CC
+-  _LT_CC_BASENAME([$compiler])
+-
+-  if test -n "$compiler"; then
+-    AC_MSG_CHECKING([if libtool supports shared libraries])
+-    AC_MSG_RESULT([$can_build_shared])
+-
+-    AC_MSG_CHECKING([whether to build shared libraries])
+-    test "$can_build_shared" = "no" && enable_shared=no
+-
+-    # On AIX, shared libraries and static libraries use the same namespace, and
+-    # are all built from PIC.
+-    case $host_os in
+-      aix3*)
+-        test "$enable_shared" = yes && enable_static=no
+-        if test -n "$RANLIB"; then
+-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
+-          postinstall_cmds='$RANLIB $lib'
+-        fi
+-        ;;
+-      aix[[4-9]]*)
+-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+-	  test "$enable_shared" = yes && enable_static=no
+-	fi
+-        ;;
+-    esac
+-    AC_MSG_RESULT([$enable_shared])
+-
+-    AC_MSG_CHECKING([whether to build static libraries])
+-    # Make sure either enable_shared or enable_static is yes.
+-    test "$enable_shared" = yes || enable_static=yes
+-    AC_MSG_RESULT([$enable_static])
+-
+-    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
+-    _LT_TAGVAR(LD, $1)="$LD"
+-
+-    ## CAVEAT EMPTOR:
+-    ## There is no encapsulation within the following macros, do not change
+-    ## the running order or otherwise move them around unless you know exactly
+-    ## what you are doing...
+-    _LT_SYS_HIDDEN_LIBDEPS($1)
+-    _LT_COMPILER_PIC($1)
+-    _LT_COMPILER_C_O($1)
+-    _LT_COMPILER_FILE_LOCKS($1)
+-    _LT_LINKER_SHLIBS($1)
+-    _LT_SYS_DYNAMIC_LINKER($1)
+-    _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-    _LT_CONFIG($1)
+-  fi # test -n "$compiler"
+-
+-  GCC=$lt_save_GCC
+-  CC="$lt_save_CC"
+-fi # test "$_lt_disable_FC" != yes
+-
+-AC_LANG_POP
+-])# _LT_LANG_FC_CONFIG
+-
+-
+-# _LT_LANG_GCJ_CONFIG([TAG])
+-# --------------------------
+-# Ensure that the configuration variables for the GNU Java Compiler compiler
+-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_GCJ_CONFIG],
+-[AC_REQUIRE([LT_PROG_GCJ])dnl
+-AC_LANG_SAVE
+-
+-# Source file extension for Java test sources.
+-ac_ext=java
+-
+-# Object file extension for compiled Java test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# Code to be used in simple compile tests
+-lt_simple_compile_test_code="class foo {}"
+-
+-# Code to be used in simple link tests
+-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
+-
+-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-_LT_TAG_COMPILER
+-
+-# save warnings/boilerplate of simple test code
+-_LT_COMPILER_BOILERPLATE
+-_LT_LINKER_BOILERPLATE
+-
+-# Allow CC to be a program name with arguments.
+-lt_save_CC="$CC"
+-lt_save_GCC=$GCC
+-GCC=yes
+-CC=${GCJ-"gcj"}
+-compiler=$CC
+-_LT_TAGVAR(compiler, $1)=$CC
+-_LT_TAGVAR(LD, $1)="$LD"
+-_LT_CC_BASENAME([$compiler])
+-
+-# GCJ did not exist at the time GCC didn't implicitly link libc in.
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-
+-## CAVEAT EMPTOR:
+-## There is no encapsulation within the following macros, do not change
+-## the running order or otherwise move them around unless you know exactly
+-## what you are doing...
+-if test -n "$compiler"; then
+-  _LT_COMPILER_NO_RTTI($1)
+-  _LT_COMPILER_PIC($1)
+-  _LT_COMPILER_C_O($1)
+-  _LT_COMPILER_FILE_LOCKS($1)
+-  _LT_LINKER_SHLIBS($1)
+-  _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-  _LT_CONFIG($1)
+-fi
+-
+-AC_LANG_RESTORE
+-
+-GCC=$lt_save_GCC
+-CC="$lt_save_CC"
+-])# _LT_LANG_GCJ_CONFIG
+-
+-
+-# _LT_LANG_RC_CONFIG([TAG])
+-# -------------------------
+-# Ensure that the configuration variables for the Windows resource compiler
+-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_RC_CONFIG],
+-[AC_REQUIRE([LT_PROG_RC])dnl
+-AC_LANG_SAVE
+-
+-# Source file extension for RC test sources.
+-ac_ext=rc
+-
+-# Object file extension for compiled RC test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# Code to be used in simple compile tests
+-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
+-
+-# Code to be used in simple link tests
+-lt_simple_link_test_code="$lt_simple_compile_test_code"
+-
+-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-_LT_TAG_COMPILER
+-
+-# save warnings/boilerplate of simple test code
+-_LT_COMPILER_BOILERPLATE
+-_LT_LINKER_BOILERPLATE
+-
+-# Allow CC to be a program name with arguments.
+-lt_save_CC="$CC"
+-lt_save_GCC=$GCC
+-GCC=
+-CC=${RC-"windres"}
+-compiler=$CC
+-_LT_TAGVAR(compiler, $1)=$CC
+-_LT_CC_BASENAME([$compiler])
+-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+-
+-if test -n "$compiler"; then
+-  :
+-  _LT_CONFIG($1)
+-fi
+-
+-GCC=$lt_save_GCC
+-AC_LANG_RESTORE
+-CC="$lt_save_CC"
+-])# _LT_LANG_RC_CONFIG
+-
+-
+-# LT_PROG_GCJ
+-# -----------
+-AC_DEFUN([LT_PROG_GCJ],
+-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
+-  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
+-    [AC_CHECK_TOOL(GCJ, gcj,)
+-      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+-      AC_SUBST(GCJFLAGS)])])[]dnl
+-])
+-
+-# Old name:
+-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
+-
+-
+-# LT_PROG_RC
+-# ----------
+-AC_DEFUN([LT_PROG_RC],
+-[AC_CHECK_TOOL(RC, windres,)
+-])
+-
+-# Old name:
+-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([LT_AC_PROG_RC], [])
+-
+-
+-# _LT_DECL_EGREP
+-# --------------
+-# If we don't have a new enough Autoconf to choose the best grep
+-# available, choose the one first in the user's PATH.
+-m4_defun([_LT_DECL_EGREP],
+-[AC_REQUIRE([AC_PROG_EGREP])dnl
+-AC_REQUIRE([AC_PROG_FGREP])dnl
+-test -z "$GREP" && GREP=grep
+-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
+-_LT_DECL([], [EGREP], [1], [An ERE matcher])
+-_LT_DECL([], [FGREP], [1], [A literal string matcher])
+-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
+-AC_SUBST([GREP])
+-])
+-
+-
+-# _LT_DECL_OBJDUMP
+-# --------------
+-# If we don't have a new enough Autoconf to choose the best objdump
+-# available, choose the one first in the user's PATH.
+-m4_defun([_LT_DECL_OBJDUMP],
+-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
+-test -z "$OBJDUMP" && OBJDUMP=objdump
+-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+-AC_SUBST([OBJDUMP])
+-])
+-
+-
+-# _LT_DECL_SED
+-# ------------
+-# Check for a fully-functional sed program, that truncates
+-# as few characters as possible.  Prefer GNU sed if found.
+-m4_defun([_LT_DECL_SED],
+-[AC_PROG_SED
+-test -z "$SED" && SED=sed
+-Xsed="$SED -e 1s/^X//"
+-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
+-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
+-    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
+-])# _LT_DECL_SED
+-
+-m4_ifndef([AC_PROG_SED], [
+-############################################################
+-# NOTE: This macro has been submitted for inclusion into   #
+-#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
+-#  a released version of Autoconf we should remove this    #
+-#  macro and use it instead.                               #
+-############################################################
+-
+-m4_defun([AC_PROG_SED],
+-[AC_MSG_CHECKING([for a sed that does not truncate output])
+-AC_CACHE_VAL(lt_cv_path_SED,
+-[# Loop through the user's path and test for sed and gsed.
+-# Then use that list of sed's as ones to test for truncation.
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+-  IFS=$as_save_IFS
+-  test -z "$as_dir" && as_dir=.
+-  for lt_ac_prog in sed gsed; do
+-    for ac_exec_ext in '' $ac_executable_extensions; do
+-      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+-        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
+-      fi
+-    done
+-  done
+-done
+-IFS=$as_save_IFS
+-lt_ac_max=0
+-lt_ac_count=0
+-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
+-# along with /bin/sed that truncates output.
+-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
+-  test ! -f $lt_ac_sed && continue
+-  cat /dev/null > conftest.in
+-  lt_ac_count=0
+-  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
+-  # Check for GNU sed and select it if it is found.
+-  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
+-    lt_cv_path_SED=$lt_ac_sed
+-    break
+-  fi
+-  while true; do
+-    cat conftest.in conftest.in >conftest.tmp
+-    mv conftest.tmp conftest.in
+-    cp conftest.in conftest.nl
+-    echo >>conftest.nl
+-    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
+-    cmp -s conftest.out conftest.nl || break
+-    # 10000 chars as input seems more than enough
+-    test $lt_ac_count -gt 10 && break
+-    lt_ac_count=`expr $lt_ac_count + 1`
+-    if test $lt_ac_count -gt $lt_ac_max; then
+-      lt_ac_max=$lt_ac_count
+-      lt_cv_path_SED=$lt_ac_sed
+-    fi
+-  done
+-done
+-])
+-SED=$lt_cv_path_SED
+-AC_SUBST([SED])
+-AC_MSG_RESULT([$SED])
+-])#AC_PROG_SED
+-])#m4_ifndef
+-
+-# Old name:
+-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([LT_AC_PROG_SED], [])
+-
+-
+-# _LT_CHECK_SHELL_FEATURES
+-# ------------------------
+-# Find out whether the shell is Bourne or XSI compatible,
+-# or has some other useful features.
+-m4_defun([_LT_CHECK_SHELL_FEATURES],
+-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
+-# Try some XSI features
+-xsi_shell=no
+-( _lt_dummy="a/b/c"
+-  test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+-      = c,a/b,, \
+-    && eval 'test $(( 1 + 1 )) -eq 2 \
+-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+-  && xsi_shell=yes
+-AC_MSG_RESULT([$xsi_shell])
+-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
+-
+-AC_MSG_CHECKING([whether the shell understands "+="])
+-lt_shell_append=no
+-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
+-    >/dev/null 2>&1 \
+-  && lt_shell_append=yes
+-AC_MSG_RESULT([$lt_shell_append])
+-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
+-
+-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+-  lt_unset=unset
+-else
+-  lt_unset=false
+-fi
+-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
+-
+-# test EBCDIC or ASCII
+-case `echo X|tr X '\101'` in
+- A) # ASCII based system
+-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+-  lt_SP2NL='tr \040 \012'
+-  lt_NL2SP='tr \015\012 \040\040'
+-  ;;
+- *) # EBCDIC based system
+-  lt_SP2NL='tr \100 \n'
+-  lt_NL2SP='tr \r\n \100\100'
+-  ;;
+-esac
+-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
+-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+-])# _LT_CHECK_SHELL_FEATURES
+-
+-
+-# _LT_PROG_XSI_SHELLFNS
+-# ---------------------
+-# Bourne and XSI compatible variants of some useful shell functions.
+-m4_defun([_LT_PROG_XSI_SHELLFNS],
+-[case $xsi_shell in
+-  yes)
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+-  case ${1} in
+-    */*) func_dirname_result="${1%/*}${2}" ;;
+-    *  ) func_dirname_result="${3}" ;;
+-  esac
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+-  func_basename_result="${1##*/}"
+-}
+-
+-# func_dirname_and_basename file append nondir_replacement
+-# perform func_basename and func_dirname in a single function
+-# call:
+-#   dirname:  Compute the dirname of FILE.  If nonempty,
+-#             add APPEND to the result, otherwise set result
+-#             to NONDIR_REPLACEMENT.
+-#             value returned in "$func_dirname_result"
+-#   basename: Compute filename of FILE.
+-#             value retuned in "$func_basename_result"
+-# Implementation must be kept synchronized with func_dirname
+-# and func_basename. For efficiency, we do not delegate to
+-# those functions but instead duplicate the functionality here.
+-func_dirname_and_basename ()
+-{
+-  case ${1} in
+-    */*) func_dirname_result="${1%/*}${2}" ;;
+-    *  ) func_dirname_result="${3}" ;;
+-  esac
+-  func_basename_result="${1##*/}"
+-}
+-
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-func_stripname ()
+-{
+-  # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+-  # positional parameters, so assign one to ordinary parameter first.
+-  func_stripname_result=${3}
+-  func_stripname_result=${func_stripname_result#"${1}"}
+-  func_stripname_result=${func_stripname_result%"${2}"}
+-}
+-
+-# func_opt_split
+-func_opt_split ()
+-{
+-  func_opt_split_opt=${1%%=*}
+-  func_opt_split_arg=${1#*=}
+-}
+-
+-# func_lo2o object
+-func_lo2o ()
+-{
+-  case ${1} in
+-    *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+-    *)    func_lo2o_result=${1} ;;
+-  esac
+-}
+-
+-# func_xform libobj-or-source
+-func_xform ()
+-{
+-  func_xform_result=${1%.*}.lo
+-}
+-
+-# func_arith arithmetic-term...
+-func_arith ()
+-{
+-  func_arith_result=$(( $[*] ))
+-}
+-
+-# func_len string
+-# STRING may not start with a hyphen.
+-func_len ()
+-{
+-  func_len_result=${#1}
+-}
+-
+-_LT_EOF
+-    ;;
+-  *) # Bourne compatible functions.
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+-  # Extract subdirectory from the argument.
+-  func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+-  if test "X$func_dirname_result" = "X${1}"; then
+-    func_dirname_result="${3}"
+-  else
+-    func_dirname_result="$func_dirname_result${2}"
+-  fi
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+-  func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+-}
+-
+-dnl func_dirname_and_basename
+-dnl A portable version of this function is already defined in general.m4sh
+-dnl so there is no need for it here.
+-
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-# func_strip_suffix prefix name
+-func_stripname ()
+-{
+-  case ${2} in
+-    .*) func_stripname_result=`$ECHO "X${3}" \
+-           | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
+-    *)  func_stripname_result=`$ECHO "X${3}" \
+-           | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
+-  esac
+-}
+-
+-# sed scripts:
+-my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
+-my_sed_long_arg='1s/^-[[^=]]*=//'
+-
+-# func_opt_split
+-func_opt_split ()
+-{
+-  func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
+-  func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
+-}
+-
+-# func_lo2o object
+-func_lo2o ()
+-{
+-  func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
+-}
+-
+-# func_xform libobj-or-source
+-func_xform ()
+-{
+-  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
+-}
+-
+-# func_arith arithmetic-term...
+-func_arith ()
+-{
+-  func_arith_result=`expr "$[@]"`
+-}
+-
+-# func_len string
+-# STRING may not start with a hyphen.
+-func_len ()
+-{
+-  func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
+-}
+-
+-_LT_EOF
+-esac
+-
+-case $lt_shell_append in
+-  yes)
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_append var value
+-# Append VALUE to the end of shell variable VAR.
+-func_append ()
+-{
+-  eval "$[1]+=\$[2]"
+-}
+-_LT_EOF
+-    ;;
+-  *)
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_append var value
+-# Append VALUE to the end of shell variable VAR.
+-func_append ()
+-{
+-  eval "$[1]=\$$[1]\$[2]"
+-}
+-
+-_LT_EOF
+-    ;;
+-  esac
+-])
+Index: libiconv-1.13.1/libcharset/m4/ltoptions.m4
+===================================================================
+--- libiconv-1.13.1.orig/libcharset/m4/ltoptions.m4
++++ /dev/null
+@@ -1,368 +0,0 @@
+-# Helper functions for option handling.                    -*- Autoconf -*-
+-#
+-#   Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+-#   Written by Gary V. Vaughan, 2004
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# serial 6 ltoptions.m4
+-
+-# This is to help aclocal find these macros, as it can't see m4_define.
+-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
+-
+-
+-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
+-# ------------------------------------------
+-m4_define([_LT_MANGLE_OPTION],
+-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
+-
+-
+-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
+-# ---------------------------------------
+-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
+-# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
+-# saved as a flag.
+-m4_define([_LT_SET_OPTION],
+-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
+-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
+-        _LT_MANGLE_DEFUN([$1], [$2]),
+-    [m4_warning([Unknown $1 option `$2'])])[]dnl
+-])
+-
+-
+-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
+-# ------------------------------------------------------------
+-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+-m4_define([_LT_IF_OPTION],
+-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
+-
+-
+-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
+-# -------------------------------------------------------
+-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
+-# are set.
+-m4_define([_LT_UNLESS_OPTIONS],
+-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+-	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
+-		      [m4_define([$0_found])])])[]dnl
+-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
+-])[]dnl
+-])
+-
+-
+-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
+-# ----------------------------------------
+-# OPTION-LIST is a space-separated list of Libtool options associated
+-# with MACRO-NAME.  If any OPTION has a matching handler declared with
+-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
+-# the unknown option and exit.
+-m4_defun([_LT_SET_OPTIONS],
+-[# Set options
+-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+-    [_LT_SET_OPTION([$1], _LT_Option)])
+-
+-m4_if([$1],[LT_INIT],[
+-  dnl
+-  dnl Simply set some default values (i.e off) if boolean options were not
+-  dnl specified:
+-  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
+-  ])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
+-  ])
+-  dnl
+-  dnl If no reference was made to various pairs of opposing options, then
+-  dnl we run the default mode handler for the pair.  For example, if neither
+-  dnl `shared' nor `disable-shared' was passed, we enable building of shared
+-  dnl archives by default:
+-  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
+-  		   [_LT_ENABLE_FAST_INSTALL])
+-  ])
+-])# _LT_SET_OPTIONS
+-
+-
+-## --------------------------------- ##
+-## Macros to handle LT_INIT options. ##
+-## --------------------------------- ##
+-
+-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
+-# -----------------------------------------
+-m4_define([_LT_MANGLE_DEFUN],
+-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
+-
+-
+-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
+-# -----------------------------------------------
+-m4_define([LT_OPTION_DEFINE],
+-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
+-])# LT_OPTION_DEFINE
+-
+-
+-# dlopen
+-# ------
+-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
+-])
+-
+-AU_DEFUN([AC_LIBTOOL_DLOPEN],
+-[_LT_SET_OPTION([LT_INIT], [dlopen])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you
+-put the `dlopen' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
+-
+-
+-# win32-dll
+-# ---------
+-# Declare package support for building win32 dll's.
+-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
+-[enable_win32_dll=yes
+-
+-case $host in
+-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
+-  AC_CHECK_TOOL(AS, as, false)
+-  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+-  AC_CHECK_TOOL(OBJDUMP, objdump, false)
+-  ;;
+-esac
+-
+-test -z "$AS" && AS=as
+-_LT_DECL([], [AS],      [0], [Assembler program])dnl
+-
+-test -z "$DLLTOOL" && DLLTOOL=dlltool
+-_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
+-
+-test -z "$OBJDUMP" && OBJDUMP=objdump
+-_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
+-])# win32-dll
+-
+-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-_LT_SET_OPTION([LT_INIT], [win32-dll])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you
+-put the `win32-dll' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
+-
+-
+-# _LT_ENABLE_SHARED([DEFAULT])
+-# ----------------------------
+-# implement the --enable-shared flag, and supports the `shared' and
+-# `disable-shared' LT_INIT options.
+-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+-m4_define([_LT_ENABLE_SHARED],
+-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
+-AC_ARG_ENABLE([shared],
+-    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
+-	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
+-    [p=${PACKAGE-default}
+-    case $enableval in
+-    yes) enable_shared=yes ;;
+-    no) enable_shared=no ;;
+-    *)
+-      enable_shared=no
+-      # Look at the argument we got.  We use all the common list separators.
+-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+-      for pkg in $enableval; do
+-	IFS="$lt_save_ifs"
+-	if test "X$pkg" = "X$p"; then
+-	  enable_shared=yes
+-	fi
+-      done
+-      IFS="$lt_save_ifs"
+-      ;;
+-    esac],
+-    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
+-
+-    _LT_DECL([build_libtool_libs], [enable_shared], [0],
+-	[Whether or not to build shared libraries])
+-])# _LT_ENABLE_SHARED
+-
+-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
+-
+-# Old names:
+-AC_DEFUN([AC_ENABLE_SHARED],
+-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
+-])
+-
+-AC_DEFUN([AC_DISABLE_SHARED],
+-[_LT_SET_OPTION([LT_INIT], [disable-shared])
+-])
+-
+-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
+-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
+-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
+-
+-
+-
+-# _LT_ENABLE_STATIC([DEFAULT])
+-# ----------------------------
+-# implement the --enable-static flag, and support the `static' and
+-# `disable-static' LT_INIT options.
+-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+-m4_define([_LT_ENABLE_STATIC],
+-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
+-AC_ARG_ENABLE([static],
+-    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
+-	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
+-    [p=${PACKAGE-default}
+-    case $enableval in
+-    yes) enable_static=yes ;;
+-    no) enable_static=no ;;
+-    *)
+-     enable_static=no
+-      # Look at the argument we got.  We use all the common list separators.
+-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+-      for pkg in $enableval; do
+-	IFS="$lt_save_ifs"
+-	if test "X$pkg" = "X$p"; then
+-	  enable_static=yes
+-	fi
+-      done
+-      IFS="$lt_save_ifs"
+-      ;;
+-    esac],
+-    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
+-
+-    _LT_DECL([build_old_libs], [enable_static], [0],
+-	[Whether or not to build static libraries])
+-])# _LT_ENABLE_STATIC
+-
+-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
+-
+-# Old names:
+-AC_DEFUN([AC_ENABLE_STATIC],
+-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
+-])
+-
+-AC_DEFUN([AC_DISABLE_STATIC],
+-[_LT_SET_OPTION([LT_INIT], [disable-static])
+-])
+-
+-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
+-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
+-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
+-
+-
+-
+-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
+-# ----------------------------------
+-# implement the --enable-fast-install flag, and support the `fast-install'
+-# and `disable-fast-install' LT_INIT options.
+-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+-m4_define([_LT_ENABLE_FAST_INSTALL],
+-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
+-AC_ARG_ENABLE([fast-install],
+-    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
+-    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
+-    [p=${PACKAGE-default}
+-    case $enableval in
+-    yes) enable_fast_install=yes ;;
+-    no) enable_fast_install=no ;;
+-    *)
+-      enable_fast_install=no
+-      # Look at the argument we got.  We use all the common list separators.
+-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+-      for pkg in $enableval; do
+-	IFS="$lt_save_ifs"
+-	if test "X$pkg" = "X$p"; then
+-	  enable_fast_install=yes
+-	fi
+-      done
+-      IFS="$lt_save_ifs"
+-      ;;
+-    esac],
+-    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
+-
+-_LT_DECL([fast_install], [enable_fast_install], [0],
+-	 [Whether or not to optimize for fast installation])dnl
+-])# _LT_ENABLE_FAST_INSTALL
+-
+-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
+-
+-# Old names:
+-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
+-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+-the `fast-install' option into LT_INIT's first parameter.])
+-])
+-
+-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
+-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+-the `disable-fast-install' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
+-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
+-
+-
+-# _LT_WITH_PIC([MODE])
+-# --------------------
+-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
+-# LT_INIT options.
+-# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
+-m4_define([_LT_WITH_PIC],
+-[AC_ARG_WITH([pic],
+-    [AS_HELP_STRING([--with-pic],
+-	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
+-    [pic_mode="$withval"],
+-    [pic_mode=default])
+-
+-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
+-
+-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
+-])# _LT_WITH_PIC
+-
+-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
+-
+-# Old name:
+-AU_DEFUN([AC_LIBTOOL_PICMODE],
+-[_LT_SET_OPTION([LT_INIT], [pic-only])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you
+-put the `pic-only' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
+-
+-## ----------------- ##
+-## LTDL_INIT Options ##
+-## ----------------- ##
+-
+-m4_define([_LTDL_MODE], [])
+-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
+-		 [m4_define([_LTDL_MODE], [nonrecursive])])
+-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
+-		 [m4_define([_LTDL_MODE], [recursive])])
+-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
+-		 [m4_define([_LTDL_MODE], [subproject])])
+-
+-m4_define([_LTDL_TYPE], [])
+-LT_OPTION_DEFINE([LTDL_INIT], [installable],
+-		 [m4_define([_LTDL_TYPE], [installable])])
+-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
+-		 [m4_define([_LTDL_TYPE], [convenience])])
+Index: libiconv-1.13.1/libcharset/m4/ltsugar.m4
+===================================================================
+--- libiconv-1.13.1.orig/libcharset/m4/ltsugar.m4
++++ /dev/null
+@@ -1,123 +0,0 @@
+-# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
+-#
+-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+-# Written by Gary V. Vaughan, 2004
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# serial 6 ltsugar.m4
+-
+-# This is to help aclocal find these macros, as it can't see m4_define.
+-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
+-
+-
+-# lt_join(SEP, ARG1, [ARG2...])
+-# -----------------------------
+-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
+-# associated separator.
+-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
+-# versions in m4sugar had bugs.
+-m4_define([lt_join],
+-[m4_if([$#], [1], [],
+-       [$#], [2], [[$2]],
+-       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
+-m4_define([_lt_join],
+-[m4_if([$#$2], [2], [],
+-       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
+-
+-
+-# lt_car(LIST)
+-# lt_cdr(LIST)
+-# ------------
+-# Manipulate m4 lists.
+-# These macros are necessary as long as will still need to support
+-# Autoconf-2.59 which quotes differently.
+-m4_define([lt_car], [[$1]])
+-m4_define([lt_cdr],
+-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
+-       [$#], 1, [],
+-       [m4_dquote(m4_shift($@))])])
+-m4_define([lt_unquote], $1)
+-
+-
+-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
+-# ------------------------------------------
+-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
+-# Note that neither SEPARATOR nor STRING are expanded; they are appended
+-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
+-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
+-# than defined and empty).
+-#
+-# This macro is needed until we can rely on Autoconf 2.62, since earlier
+-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
+-m4_define([lt_append],
+-[m4_define([$1],
+-	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
+-
+-
+-
+-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
+-# ----------------------------------------------------------
+-# Produce a SEP delimited list of all paired combinations of elements of
+-# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
+-# has the form PREFIXmINFIXSUFFIXn.
+-# Needed until we can rely on m4_combine added in Autoconf 2.62.
+-m4_define([lt_combine],
+-[m4_if(m4_eval([$# > 3]), [1],
+-       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
+-[[m4_foreach([_Lt_prefix], [$2],
+-	     [m4_foreach([_Lt_suffix],
+-		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
+-	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
+-
+-
+-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
+-# -----------------------------------------------------------------------
+-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
+-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
+-m4_define([lt_if_append_uniq],
+-[m4_ifdef([$1],
+-	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
+-		 [lt_append([$1], [$2], [$3])$4],
+-		 [$5])],
+-	  [lt_append([$1], [$2], [$3])$4])])
+-
+-
+-# lt_dict_add(DICT, KEY, VALUE)
+-# -----------------------------
+-m4_define([lt_dict_add],
+-[m4_define([$1($2)], [$3])])
+-
+-
+-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
+-# --------------------------------------------
+-m4_define([lt_dict_add_subkey],
+-[m4_define([$1($2:$3)], [$4])])
+-
+-
+-# lt_dict_fetch(DICT, KEY, [SUBKEY])
+-# ----------------------------------
+-m4_define([lt_dict_fetch],
+-[m4_ifval([$3],
+-	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
+-    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
+-
+-
+-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
+-# -----------------------------------------------------------------
+-m4_define([lt_if_dict_fetch],
+-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
+-	[$5],
+-    [$6])])
+-
+-
+-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
+-# --------------------------------------------------------------
+-m4_define([lt_dict_filter],
+-[m4_if([$5], [], [],
+-  [lt_join(m4_quote(m4_default([$4], [[, ]])),
+-           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
+-		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
+-])
+Index: libiconv-1.13.1/libcharset/m4/ltversion.m4
+===================================================================
+--- libiconv-1.13.1.orig/libcharset/m4/ltversion.m4
++++ /dev/null
+@@ -1,23 +0,0 @@
+-# ltversion.m4 -- version numbers			-*- Autoconf -*-
+-#
+-#   Copyright (C) 2004 Free Software Foundation, Inc.
+-#   Written by Scott James Remnant, 2004
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# Generated from ltversion.in.
+-
+-# serial 3012 ltversion.m4
+-# This file is part of GNU Libtool
+-
+-m4_define([LT_PACKAGE_VERSION], [2.2.6])
+-m4_define([LT_PACKAGE_REVISION], [1.3012])
+-
+-AC_DEFUN([LTVERSION_VERSION],
+-[macro_version='2.2.6'
+-macro_revision='1.3012'
+-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
+-_LT_DECL(, macro_revision, 0)
+-])
+Index: libiconv-1.13.1/libcharset/m4/lt~obsolete.m4
+===================================================================
+--- libiconv-1.13.1.orig/libcharset/m4/lt~obsolete.m4
++++ /dev/null
+@@ -1,92 +0,0 @@
+-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
+-#
+-#   Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
+-#   Written by Scott James Remnant, 2004.
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# serial 4 lt~obsolete.m4
+-
+-# These exist entirely to fool aclocal when bootstrapping libtool.
+-#
+-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
+-# which have later been changed to m4_define as they aren't part of the
+-# exported API, or moved to Autoconf or Automake where they belong.
+-#
+-# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
+-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
+-# using a macro with the same name in our local m4/libtool.m4 it'll
+-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
+-# and doesn't know about Autoconf macros at all.)
+-#
+-# So we provide this file, which has a silly filename so it's always
+-# included after everything else.  This provides aclocal with the
+-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
+-# because those macros already exist, or will be overwritten later.
+-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
+-#
+-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
+-# Yes, that means every name once taken will need to remain here until
+-# we give up compatibility with versions before 1.7, at which point
+-# we need to keep only those names which we still refer to.
+-
+-# This is to help aclocal find these macros, as it can't see m4_define.
+-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
+-
+-m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
+-m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
+-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
+-m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
+-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
+-m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
+-m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
+-m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
+-m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
+-m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
+-m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
+-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
+-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
+-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
+-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
+-m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
+-m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
+-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
+-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
+-m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
+-m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
+-m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
+-m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
+-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
+-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
+-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
+-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
+-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
+-m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
+-m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
+-m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
+-m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
+-m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
+-m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
+-m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
+-m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
+-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
+-m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
+-m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
+-m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
+-m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
+-m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
+-m4_ifndef([AC_LIBTOOL_RC],		[AC_DEFUN([AC_LIBTOOL_RC])])
+-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
+-m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
+Index: libiconv-1.13.1/m4/libtool.m4
+===================================================================
+--- libiconv-1.13.1.orig/m4/libtool.m4
++++ /dev/null
+@@ -1,7357 +0,0 @@
+-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
+-#
+-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+-#                 2006, 2007, 2008 Free Software Foundation, Inc.
+-#   Written by Gordon Matzigkeit, 1996
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-m4_define([_LT_COPYING], [dnl
+-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+-#                 2006, 2007, 2008 Free Software Foundation, Inc.
+-#   Written by Gordon Matzigkeit, 1996
+-#
+-#   This file is part of GNU Libtool.
+-#
+-# GNU Libtool is free software; you can redistribute it and/or
+-# modify it under the terms of the GNU General Public License as
+-# published by the Free Software Foundation; either version 2 of
+-# the License, or (at your option) any later version.
+-#
+-# As a special exception to the GNU General Public License,
+-# if you distribute this file as part of a program or library that
+-# is built using GNU Libtool, you may include this file under the
+-# same distribution terms that you use for the rest of that program.
+-#
+-# GNU Libtool 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 General Public License for more details.
+-#
+-# You should have received a copy of the GNU General Public License
+-# along with GNU Libtool; see the file COPYING.  If not, a copy
+-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+-# obtained by writing to the Free Software Foundation, Inc.,
+-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+-])
+-
+-# serial 56 LT_INIT
+-
+-
+-# LT_PREREQ(VERSION)
+-# ------------------
+-# Complain and exit if this libtool version is less that VERSION.
+-m4_defun([LT_PREREQ],
+-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
+-       [m4_default([$3],
+-		   [m4_fatal([Libtool version $1 or higher is required],
+-		             63)])],
+-       [$2])])
+-
+-
+-# _LT_CHECK_BUILDDIR
+-# ------------------
+-# Complain if the absolute build directory name contains unusual characters
+-m4_defun([_LT_CHECK_BUILDDIR],
+-[case `pwd` in
+-  *\ * | *\	*)
+-    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
+-esac
+-])
+-
+-
+-# LT_INIT([OPTIONS])
+-# ------------------
+-AC_DEFUN([LT_INIT],
+-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+-AC_BEFORE([$0], [LT_LANG])dnl
+-AC_BEFORE([$0], [LT_OUTPUT])dnl
+-AC_BEFORE([$0], [LTDL_INIT])dnl
+-m4_require([_LT_CHECK_BUILDDIR])dnl
+-
+-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
+-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
+-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
+-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
+-dnl unless we require an AC_DEFUNed macro:
+-AC_REQUIRE([LTOPTIONS_VERSION])dnl
+-AC_REQUIRE([LTSUGAR_VERSION])dnl
+-AC_REQUIRE([LTVERSION_VERSION])dnl
+-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
+-m4_require([_LT_PROG_LTMAIN])dnl
+-
+-dnl Parse OPTIONS
+-_LT_SET_OPTIONS([$0], [$1])
+-
+-# This can be used to rebuild libtool when needed
+-LIBTOOL_DEPS="$ltmain"
+-
+-# Always use our own libtool.
+-LIBTOOL="${CONFIG_SHELL-$SHELL} "'$(top_builddir)/libtool'
+-AC_SUBST(LIBTOOL)dnl
+-
+-_LT_SETUP
+-
+-# Only expand once:
+-m4_define([LT_INIT])
+-])# LT_INIT
+-
+-# Old names:
+-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
+-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
+-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
+-
+-
+-# _LT_CC_BASENAME(CC)
+-# -------------------
+-# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+-m4_defun([_LT_CC_BASENAME],
+-[for cc_temp in $1""; do
+-  case $cc_temp in
+-    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+-    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+-    \-*) ;;
+-    *) break;;
+-  esac
+-done
+-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
+-])
+-
+-
+-# _LT_FILEUTILS_DEFAULTS
+-# ----------------------
+-# It is okay to use these file commands and assume they have been set
+-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
+-m4_defun([_LT_FILEUTILS_DEFAULTS],
+-[: ${CP="cp -f"}
+-: ${MV="mv -f"}
+-: ${RM="rm -f"}
+-])# _LT_FILEUTILS_DEFAULTS
+-
+-
+-# _LT_SETUP
+-# ---------
+-m4_defun([_LT_SETUP],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+-_LT_DECL([], [host_alias], [0], [The host system])dnl
+-_LT_DECL([], [host], [0])dnl
+-_LT_DECL([], [host_os], [0])dnl
+-dnl
+-_LT_DECL([], [build_alias], [0], [The build system])dnl
+-_LT_DECL([], [build], [0])dnl
+-_LT_DECL([], [build_os], [0])dnl
+-dnl
+-AC_REQUIRE([AC_PROG_CC])dnl
+-AC_REQUIRE([LT_PATH_LD])dnl
+-AC_REQUIRE([LT_PATH_NM])dnl
+-dnl
+-AC_REQUIRE([AC_PROG_LN_S])dnl
+-test -z "$LN_S" && LN_S="ln -s"
+-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
+-dnl
+-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
+-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
+-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
+-dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+-m4_require([_LT_CMD_RELOAD])dnl
+-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
+-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
+-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+-
+-_LT_CONFIG_LIBTOOL_INIT([
+-# See if we are running on zsh, and set the options which allow our
+-# commands through without removal of \ escapes INIT.
+-if test -n "\${ZSH_VERSION+set}" ; then
+-   setopt NO_GLOB_SUBST
+-fi
+-])
+-if test -n "${ZSH_VERSION+set}" ; then
+-   setopt NO_GLOB_SUBST
+-fi
+-
+-_LT_CHECK_OBJDIR
+-
+-m4_require([_LT_TAG_COMPILER])dnl
+-_LT_PROG_ECHO_BACKSLASH
+-
+-case $host_os in
+-aix3*)
+-  # AIX sometimes has problems with the GCC collect2 program.  For some
+-  # reason, if we set the COLLECT_NAMES environment variable, the problems
+-  # vanish in a puff of smoke.
+-  if test "X${COLLECT_NAMES+set}" != Xset; then
+-    COLLECT_NAMES=
+-    export COLLECT_NAMES
+-  fi
+-  ;;
+-esac
+-
+-# Sed substitution that helps us do robust quoting.  It backslashifies
+-# metacharacters that are still active within double-quoted strings.
+-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
+-
+-# Same as above, but do not quote variable references.
+-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
+-
+-# Sed substitution to delay expansion of an escaped shell variable in a
+-# double_quote_subst'ed string.
+-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+-
+-# Sed substitution to delay expansion of an escaped single quote.
+-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+-
+-# Sed substitution to avoid accidental globbing in evaled expressions
+-no_glob_subst='s/\*/\\\*/g'
+-
+-# Global variables:
+-ofile=libtool
+-can_build_shared=yes
+-
+-# All known linkers require a `.a' archive for static linking (except MSVC,
+-# which needs '.lib').
+-libext=a
+-
+-with_gnu_ld="$lt_cv_prog_gnu_ld"
+-
+-old_CC="$CC"
+-old_CFLAGS="$CFLAGS"
+-
+-# Set sane defaults for various variables
+-test -z "$CC" && CC=cc
+-test -z "$LTCC" && LTCC=$CC
+-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+-test -z "$LD" && LD=ld
+-test -z "$ac_objext" && ac_objext=o
+-
+-_LT_CC_BASENAME([$compiler])
+-
+-# Only perform the check for file, if the check method requires it
+-test -z "$MAGIC_CMD" && MAGIC_CMD=file
+-case $deplibs_check_method in
+-file_magic*)
+-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+-    _LT_PATH_MAGIC
+-  fi
+-  ;;
+-esac
+-
+-# Use C for the default configuration in the libtool script
+-LT_SUPPORTED_TAG([CC])
+-_LT_LANG_C_CONFIG
+-_LT_LANG_DEFAULT_CONFIG
+-_LT_CONFIG_COMMANDS
+-])# _LT_SETUP
+-
+-
+-# _LT_PROG_LTMAIN
+-# ---------------
+-# Note that this code is called both from `configure', and `config.status'
+-# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
+-# `config.status' has no value for ac_aux_dir unless we are using Automake,
+-# so we pass a copy along to make sure it has a sensible value anyway.
+-m4_defun([_LT_PROG_LTMAIN],
+-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
+-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
+-ltmain="$ac_aux_dir/ltmain.sh"
+-])# _LT_PROG_LTMAIN
+-
+-
+-## ------------------------------------- ##
+-## Accumulate code for creating libtool. ##
+-## ------------------------------------- ##
+-
+-# So that we can recreate a full libtool script including additional
+-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
+-# in macros and then make a single call at the end using the `libtool'
+-# label.
+-
+-
+-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
+-# ----------------------------------------
+-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+-m4_define([_LT_CONFIG_LIBTOOL_INIT],
+-[m4_ifval([$1],
+-          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
+-                     [$1
+-])])])
+-
+-# Initialize.
+-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
+-
+-
+-# _LT_CONFIG_LIBTOOL([COMMANDS])
+-# ------------------------------
+-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+-m4_define([_LT_CONFIG_LIBTOOL],
+-[m4_ifval([$1],
+-          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
+-                     [$1
+-])])])
+-
+-# Initialize.
+-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
+-
+-
+-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
+-# -----------------------------------------------------
+-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
+-[_LT_CONFIG_LIBTOOL([$1])
+-_LT_CONFIG_LIBTOOL_INIT([$2])
+-])
+-
+-
+-# _LT_FORMAT_COMMENT([COMMENT])
+-# -----------------------------
+-# Add leading comment marks to the start of each line, and a trailing
+-# full-stop to the whole comment if one is not present already.
+-m4_define([_LT_FORMAT_COMMENT],
+-[m4_ifval([$1], [
+-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
+-              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
+-)])
+-
+-
+-
+-## ------------------------ ##
+-## FIXME: Eliminate VARNAME ##
+-## ------------------------ ##
+-
+-
+-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
+-# -------------------------------------------------------------------
+-# CONFIGNAME is the name given to the value in the libtool script.
+-# VARNAME is the (base) name used in the configure script.
+-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
+-# VARNAME.  Any other value will be used directly.
+-m4_define([_LT_DECL],
+-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
+-    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
+-	[m4_ifval([$1], [$1], [$2])])
+-    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
+-    m4_ifval([$4],
+-	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
+-    lt_dict_add_subkey([lt_decl_dict], [$2],
+-	[tagged?], [m4_ifval([$5], [yes], [no])])])
+-])
+-
+-
+-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
+-# --------------------------------------------------------
+-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
+-
+-
+-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
+-# ------------------------------------------------
+-m4_define([lt_decl_tag_varnames],
+-[_lt_decl_filter([tagged?], [yes], $@)])
+-
+-
+-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
+-# ---------------------------------------------------------
+-m4_define([_lt_decl_filter],
+-[m4_case([$#],
+-  [0], [m4_fatal([$0: too few arguments: $#])],
+-  [1], [m4_fatal([$0: too few arguments: $#: $1])],
+-  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
+-  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
+-  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
+-])
+-
+-
+-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
+-# --------------------------------------------------
+-m4_define([lt_decl_quote_varnames],
+-[_lt_decl_filter([value], [1], $@)])
+-
+-
+-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
+-# ---------------------------------------------------
+-m4_define([lt_decl_dquote_varnames],
+-[_lt_decl_filter([value], [2], $@)])
+-
+-
+-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
+-# ---------------------------------------------------
+-m4_define([lt_decl_varnames_tagged],
+-[m4_assert([$# <= 2])dnl
+-_$0(m4_quote(m4_default([$1], [[, ]])),
+-    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
+-    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
+-m4_define([_lt_decl_varnames_tagged],
+-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
+-
+-
+-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
+-# ------------------------------------------------
+-m4_define([lt_decl_all_varnames],
+-[_$0(m4_quote(m4_default([$1], [[, ]])),
+-     m4_if([$2], [],
+-	   m4_quote(lt_decl_varnames),
+-	m4_quote(m4_shift($@))))[]dnl
+-])
+-m4_define([_lt_decl_all_varnames],
+-[lt_join($@, lt_decl_varnames_tagged([$1],
+-			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
+-])
+-
+-
+-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
+-# ------------------------------------
+-# Quote a variable value, and forward it to `config.status' so that its
+-# declaration there will have the same value as in `configure'.  VARNAME
+-# must have a single quote delimited value for this to work.
+-m4_define([_LT_CONFIG_STATUS_DECLARE],
+-[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
+-
+-
+-# _LT_CONFIG_STATUS_DECLARATIONS
+-# ------------------------------
+-# We delimit libtool config variables with single quotes, so when
+-# we write them to config.status, we have to be sure to quote all
+-# embedded single quotes properly.  In configure, this macro expands
+-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
+-#
+-#    <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
+-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
+-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
+-    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
+-
+-
+-# _LT_LIBTOOL_TAGS
+-# ----------------
+-# Output comment and list of tags supported by the script
+-m4_defun([_LT_LIBTOOL_TAGS],
+-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
+-available_tags="_LT_TAGS"dnl
+-])
+-
+-
+-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
+-# -----------------------------------
+-# Extract the dictionary values for VARNAME (optionally with TAG) and
+-# expand to a commented shell variable setting:
+-#
+-#    # Some comment about what VAR is for.
+-#    visible_name=$lt_internal_name
+-m4_define([_LT_LIBTOOL_DECLARE],
+-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
+-					   [description])))[]dnl
+-m4_pushdef([_libtool_name],
+-    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
+-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
+-    [0], [_libtool_name=[$]$1],
+-    [1], [_libtool_name=$lt_[]$1],
+-    [2], [_libtool_name=$lt_[]$1],
+-    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
+-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
+-])
+-
+-
+-# _LT_LIBTOOL_CONFIG_VARS
+-# -----------------------
+-# Produce commented declarations of non-tagged libtool config variables
+-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
+-# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
+-# section) are produced by _LT_LIBTOOL_TAG_VARS.
+-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
+-[m4_foreach([_lt_var],
+-    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
+-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
+-
+-
+-# _LT_LIBTOOL_TAG_VARS(TAG)
+-# -------------------------
+-m4_define([_LT_LIBTOOL_TAG_VARS],
+-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
+-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
+-
+-
+-# _LT_TAGVAR(VARNAME, [TAGNAME])
+-# ------------------------------
+-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
+-
+-
+-# _LT_CONFIG_COMMANDS
+-# -------------------
+-# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
+-# variables for single and double quote escaping we saved from calls
+-# to _LT_DECL, we can put quote escaped variables declarations
+-# into `config.status', and then the shell code to quote escape them in
+-# for loops in `config.status'.  Finally, any additional code accumulated
+-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
+-m4_defun([_LT_CONFIG_COMMANDS],
+-[AC_PROVIDE_IFELSE([LT_OUTPUT],
+-	dnl If the libtool generation code has been placed in $CONFIG_LT,
+-	dnl instead of duplicating it all over again into config.status,
+-	dnl then we will have config.status run $CONFIG_LT later, so it
+-	dnl needs to know what name is stored there:
+-        [AC_CONFIG_COMMANDS([libtool],
+-            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
+-    dnl If the libtool generation code is destined for config.status,
+-    dnl expand the accumulated commands and init code now:
+-    [AC_CONFIG_COMMANDS([libtool],
+-        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
+-])#_LT_CONFIG_COMMANDS
+-
+-
+-# Initialize.
+-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
+-[
+-
+-# The HP-UX ksh and POSIX shell print the target directory to stdout
+-# if CDPATH is set.
+-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+-
+-sed_quote_subst='$sed_quote_subst'
+-double_quote_subst='$double_quote_subst'
+-delay_variable_subst='$delay_variable_subst'
+-_LT_CONFIG_STATUS_DECLARATIONS
+-LTCC='$LTCC'
+-LTCFLAGS='$LTCFLAGS'
+-compiler='$compiler_DEFAULT'
+-
+-# Quote evaled strings.
+-for var in lt_decl_all_varnames([[ \
+-]], lt_decl_quote_varnames); do
+-    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+-    *[[\\\\\\\`\\"\\\$]]*)
+-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+-      ;;
+-    *)
+-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+-      ;;
+-    esac
+-done
+-
+-# Double-quote double-evaled strings.
+-for var in lt_decl_all_varnames([[ \
+-]], lt_decl_dquote_varnames); do
+-    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+-    *[[\\\\\\\`\\"\\\$]]*)
+-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+-      ;;
+-    *)
+-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+-      ;;
+-    esac
+-done
+-
+-# Fix-up fallback echo if it was mangled by the above quoting rules.
+-case \$lt_ECHO in
+-*'\\\[$]0 --fallback-echo"')dnl "
+-  lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
+-  ;;
+-esac
+-
+-_LT_OUTPUT_LIBTOOL_INIT
+-])
+-
+-
+-# LT_OUTPUT
+-# ---------
+-# This macro allows early generation of the libtool script (before
+-# AC_OUTPUT is called), incase it is used in configure for compilation
+-# tests.
+-AC_DEFUN([LT_OUTPUT],
+-[: ${CONFIG_LT=./config.lt}
+-AC_MSG_NOTICE([creating $CONFIG_LT])
+-cat >"$CONFIG_LT" <<_LTEOF
+-#! $SHELL
+-# Generated by $as_me.
+-# Run this file to recreate a libtool stub with the current configuration.
+-
+-lt_cl_silent=false
+-SHELL=\${CONFIG_SHELL-$SHELL}
+-_LTEOF
+-
+-cat >>"$CONFIG_LT" <<\_LTEOF
+-AS_SHELL_SANITIZE
+-_AS_PREPARE
+-
+-exec AS_MESSAGE_FD>&1
+-exec AS_MESSAGE_LOG_FD>>config.log
+-{
+-  echo
+-  AS_BOX([Running $as_me.])
+-} >&AS_MESSAGE_LOG_FD
+-
+-lt_cl_help="\
+-\`$as_me' creates a local libtool stub from the current configuration,
+-for use in further configure time tests before the real libtool is
+-generated.
+-
+-Usage: $[0] [[OPTIONS]]
+-
+-  -h, --help      print this help, then exit
+-  -V, --version   print version number, then exit
+-  -q, --quiet     do not print progress messages
+-  -d, --debug     don't remove temporary files
+-
+-Report bugs to <bug-libtool at gnu.org>."
+-
+-lt_cl_version="\
+-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
+-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
+-configured by $[0], generated by m4_PACKAGE_STRING.
+-
+-Copyright (C) 2008 Free Software Foundation, Inc.
+-This config.lt script is free software; the Free Software Foundation
+-gives unlimited permision to copy, distribute and modify it."
+-
+-while test $[#] != 0
+-do
+-  case $[1] in
+-    --version | --v* | -V )
+-      echo "$lt_cl_version"; exit 0 ;;
+-    --help | --h* | -h )
+-      echo "$lt_cl_help"; exit 0 ;;
+-    --debug | --d* | -d )
+-      debug=: ;;
+-    --quiet | --q* | --silent | --s* | -q )
+-      lt_cl_silent=: ;;
+-
+-    -*) AC_MSG_ERROR([unrecognized option: $[1]
+-Try \`$[0] --help' for more information.]) ;;
+-
+-    *) AC_MSG_ERROR([unrecognized argument: $[1]
+-Try \`$[0] --help' for more information.]) ;;
+-  esac
+-  shift
+-done
+-
+-if $lt_cl_silent; then
+-  exec AS_MESSAGE_FD>/dev/null
+-fi
+-_LTEOF
+-
+-cat >>"$CONFIG_LT" <<_LTEOF
+-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
+-_LTEOF
+-
+-cat >>"$CONFIG_LT" <<\_LTEOF
+-AC_MSG_NOTICE([creating $ofile])
+-_LT_OUTPUT_LIBTOOL_COMMANDS
+-AS_EXIT(0)
+-_LTEOF
+-chmod +x "$CONFIG_LT"
+-
+-# configure is writing to config.log, but config.lt does its own redirection,
+-# appending to config.log, which fails on DOS, as config.log is still kept
+-# open by configure.  Here we exec the FD to /dev/null, effectively closing
+-# config.log, so it can be properly (re)opened and appended to by config.lt.
+-if test "$no_create" != yes; then
+-  lt_cl_success=:
+-  test "$silent" = yes &&
+-    lt_config_lt_args="$lt_config_lt_args --quiet"
+-  exec AS_MESSAGE_LOG_FD>/dev/null
+-  $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
+-  exec AS_MESSAGE_LOG_FD>>config.log
+-  $lt_cl_success || AS_EXIT(1)
+-fi
+-])# LT_OUTPUT
+-
+-
+-# _LT_CONFIG(TAG)
+-# ---------------
+-# If TAG is the built-in tag, create an initial libtool script with a
+-# default configuration from the untagged config vars.  Otherwise add code
+-# to config.status for appending the configuration named by TAG from the
+-# matching tagged config vars.
+-m4_defun([_LT_CONFIG],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-_LT_CONFIG_SAVE_COMMANDS([
+-  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
+-  m4_if(_LT_TAG, [C], [
+-    # See if we are running on zsh, and set the options which allow our
+-    # commands through without removal of \ escapes.
+-    if test -n "${ZSH_VERSION+set}" ; then
+-      setopt NO_GLOB_SUBST
+-    fi
+-
+-    cfgfile="${ofile}T"
+-    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+-    $RM "$cfgfile"
+-
+-    cat <<_LT_EOF >> "$cfgfile"
+-#! $SHELL
+-
+-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+-#
+-_LT_COPYING
+-_LT_LIBTOOL_TAGS
+-
+-# ### BEGIN LIBTOOL CONFIG
+-_LT_LIBTOOL_CONFIG_VARS
+-_LT_LIBTOOL_TAG_VARS
+-# ### END LIBTOOL CONFIG
+-
+-_LT_EOF
+-
+-  case $host_os in
+-  aix3*)
+-    cat <<\_LT_EOF >> "$cfgfile"
+-# AIX sometimes has problems with the GCC collect2 program.  For some
+-# reason, if we set the COLLECT_NAMES environment variable, the problems
+-# vanish in a puff of smoke.
+-if test "X${COLLECT_NAMES+set}" != Xset; then
+-  COLLECT_NAMES=
+-  export COLLECT_NAMES
+-fi
+-_LT_EOF
+-    ;;
+-  esac
+-
+-  _LT_PROG_LTMAIN
+-
+-  # We use sed instead of cat because bash on DJGPP gets confused if
+-  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
+-  # text mode, it properly converts lines to CR/LF.  This bash problem
+-  # is reportedly fixed, but why not run on old versions too?
+-  sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+-    || (rm -f "$cfgfile"; exit 1)
+-
+-  _LT_PROG_XSI_SHELLFNS
+-
+-  sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+-    || (rm -f "$cfgfile"; exit 1)
+-
+-  mv -f "$cfgfile" "$ofile" ||
+-    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+-  chmod +x "$ofile"
+-],
+-[cat <<_LT_EOF >> "$ofile"
+-
+-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
+-dnl in a comment (ie after a #).
+-# ### BEGIN LIBTOOL TAG CONFIG: $1
+-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
+-# ### END LIBTOOL TAG CONFIG: $1
+-_LT_EOF
+-])dnl /m4_if
+-],
+-[m4_if([$1], [], [
+-    PACKAGE='$PACKAGE'
+-    VERSION='$VERSION'
+-    TIMESTAMP='$TIMESTAMP'
+-    RM='$RM'
+-    ofile='$ofile'], [])
+-])dnl /_LT_CONFIG_SAVE_COMMANDS
+-])# _LT_CONFIG
+-
+-
+-# LT_SUPPORTED_TAG(TAG)
+-# ---------------------
+-# Trace this macro to discover what tags are supported by the libtool
+-# --tag option, using:
+-#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
+-AC_DEFUN([LT_SUPPORTED_TAG], [])
+-
+-
+-# C support is built-in for now
+-m4_define([_LT_LANG_C_enabled], [])
+-m4_define([_LT_TAGS], [])
+-
+-
+-# LT_LANG(LANG)
+-# -------------
+-# Enable libtool support for the given language if not already enabled.
+-AC_DEFUN([LT_LANG],
+-[AC_BEFORE([$0], [LT_OUTPUT])dnl
+-m4_case([$1],
+-  [C],			[_LT_LANG(C)],
+-  [C++],		[_LT_LANG(CXX)],
+-  [Java],		[_LT_LANG(GCJ)],
+-  [Fortran 77],		[_LT_LANG(F77)],
+-  [Fortran],		[_LT_LANG(FC)],
+-  [Windows Resource],	[_LT_LANG(RC)],
+-  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
+-    [_LT_LANG($1)],
+-    [m4_fatal([$0: unsupported language: "$1"])])])dnl
+-])# LT_LANG
+-
+-
+-# _LT_LANG(LANGNAME)
+-# ------------------
+-m4_defun([_LT_LANG],
+-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
+-  [LT_SUPPORTED_TAG([$1])dnl
+-  m4_append([_LT_TAGS], [$1 ])dnl
+-  m4_define([_LT_LANG_]$1[_enabled], [])dnl
+-  _LT_LANG_$1_CONFIG($1)])dnl
+-])# _LT_LANG
+-
+-
+-# _LT_LANG_DEFAULT_CONFIG
+-# -----------------------
+-m4_defun([_LT_LANG_DEFAULT_CONFIG],
+-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
+-  [LT_LANG(CXX)],
+-  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
+-
+-AC_PROVIDE_IFELSE([AC_PROG_F77],
+-  [LT_LANG(F77)],
+-  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
+-
+-AC_PROVIDE_IFELSE([AC_PROG_FC],
+-  [LT_LANG(FC)],
+-  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
+-
+-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
+-dnl pulling things in needlessly.
+-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
+-  [LT_LANG(GCJ)],
+-  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
+-    [LT_LANG(GCJ)],
+-    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
+-      [LT_LANG(GCJ)],
+-      [m4_ifdef([AC_PROG_GCJ],
+-	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
+-       m4_ifdef([A][M_PROG_GCJ],
+-	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
+-       m4_ifdef([LT_PROG_GCJ],
+-	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
+-
+-AC_PROVIDE_IFELSE([LT_PROG_RC],
+-  [LT_LANG(RC)],
+-  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
+-])# _LT_LANG_DEFAULT_CONFIG
+-
+-# Obsolete macros:
+-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
+-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
+-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
+-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
+-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
+-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
+-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
+-
+-
+-# _LT_TAG_COMPILER
+-# ----------------
+-m4_defun([_LT_TAG_COMPILER],
+-[AC_REQUIRE([AC_PROG_CC])dnl
+-
+-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
+-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
+-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
+-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
+-
+-# If no C compiler was specified, use CC.
+-LTCC=${LTCC-"$CC"}
+-
+-# If no C compiler flags were specified, use CFLAGS.
+-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+-
+-# Allow CC to be a program name with arguments.
+-compiler=$CC
+-])# _LT_TAG_COMPILER
+-
+-
+-# _LT_COMPILER_BOILERPLATE
+-# ------------------------
+-# Check for compiler boilerplate output or warnings with
+-# the simple compiler test code.
+-m4_defun([_LT_COMPILER_BOILERPLATE],
+-[m4_require([_LT_DECL_SED])dnl
+-ac_outfile=conftest.$ac_objext
+-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+-_lt_compiler_boilerplate=`cat conftest.err`
+-$RM conftest*
+-])# _LT_COMPILER_BOILERPLATE
+-
+-
+-# _LT_LINKER_BOILERPLATE
+-# ----------------------
+-# Check for linker boilerplate output or warnings with
+-# the simple link test code.
+-m4_defun([_LT_LINKER_BOILERPLATE],
+-[m4_require([_LT_DECL_SED])dnl
+-ac_outfile=conftest.$ac_objext
+-echo "$lt_simple_link_test_code" >conftest.$ac_ext
+-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+-_lt_linker_boilerplate=`cat conftest.err`
+-$RM -r conftest*
+-])# _LT_LINKER_BOILERPLATE
+-
+-# _LT_REQUIRED_DARWIN_CHECKS
+-# -------------------------
+-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
+-  case $host_os in
+-    rhapsody* | darwin*)
+-    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+-    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+-    AC_CHECK_TOOL([LIPO], [lipo], [:])
+-    AC_CHECK_TOOL([OTOOL], [otool], [:])
+-    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
+-    _LT_DECL([], [DSYMUTIL], [1],
+-      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
+-    _LT_DECL([], [NMEDIT], [1],
+-      [Tool to change global to local symbols on Mac OS X])
+-    _LT_DECL([], [LIPO], [1],
+-      [Tool to manipulate fat objects and archives on Mac OS X])
+-    _LT_DECL([], [OTOOL], [1],
+-      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+-    _LT_DECL([], [OTOOL64], [1],
+-      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
+-
+-    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+-      [lt_cv_apple_cc_single_mod=no
+-      if test -z "${LT_MULTI_MODULE}"; then
+-	# By default we will add the -single_module flag. You can override
+-	# by either setting the environment variable LT_MULTI_MODULE
+-	# non-empty at configure time, or by adding -multi_module to the
+-	# link flags.
+-	rm -rf libconftest.dylib*
+-	echo "int foo(void){return 1;}" > conftest.c
+-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
+-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+-        _lt_result=$?
+-	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+-	  lt_cv_apple_cc_single_mod=yes
+-	else
+-	  cat conftest.err >&AS_MESSAGE_LOG_FD
+-	fi
+-	rm -rf libconftest.dylib*
+-	rm -f conftest.*
+-      fi])
+-    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+-      [lt_cv_ld_exported_symbols_list],
+-      [lt_cv_ld_exported_symbols_list=no
+-      save_LDFLAGS=$LDFLAGS
+-      echo "_main" > conftest.sym
+-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+-      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+-	[lt_cv_ld_exported_symbols_list=yes],
+-	[lt_cv_ld_exported_symbols_list=no])
+-	LDFLAGS="$save_LDFLAGS"
+-    ])
+-    case $host_os in
+-    rhapsody* | darwin1.[[012]])
+-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+-    darwin1.*)
+-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+-    darwin*) # darwin 5.x on
+-      # if running on 10.5 or later, the deployment target defaults
+-      # to the OS version, if on x86, and 10.4, the deployment
+-      # target defaults to 10.4. Don't you love it?
+-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+-	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[[012]]*)
+-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+-	10.*)
+-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-      esac
+-    ;;
+-  esac
+-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+-      _lt_dar_single_mod='$single_module'
+-    fi
+-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+-    else
+-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+-    fi
+-    if test "$DSYMUTIL" != ":"; then
+-      _lt_dsymutil='~$DSYMUTIL $lib || :'
+-    else
+-      _lt_dsymutil=
+-    fi
+-    ;;
+-  esac
+-])
+-
+-
+-# _LT_DARWIN_LINKER_FEATURES
+-# --------------------------
+-# Checks for linker and compiler features on darwin
+-m4_defun([_LT_DARWIN_LINKER_FEATURES],
+-[
+-  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
+-  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-  _LT_TAGVAR(hardcode_direct, $1)=no
+-  _LT_TAGVAR(hardcode_automatic, $1)=yes
+-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+-  _LT_TAGVAR(whole_archive_flag_spec, $1)=''
+-  _LT_TAGVAR(link_all_deplibs, $1)=yes
+-  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+-  case $cc_basename in
+-     ifort*) _lt_dar_can_shared=yes ;;
+-     *) _lt_dar_can_shared=$GCC ;;
+-  esac
+-  if test "$_lt_dar_can_shared" = "yes"; then
+-    output_verbose_link_cmd=echo
+-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+-    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+-    m4_if([$1], [CXX],
+-[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+-    fi
+-],[])
+-  else
+-  _LT_TAGVAR(ld_shlibs, $1)=no
+-  fi
+-])
+-
+-# _LT_SYS_MODULE_PATH_AIX
+-# -----------------------
+-# Links a minimal program and checks the executable
+-# for the system default hardcoded library path. In most cases,
+-# this is /usr/lib:/lib, but when the MPI compilers are used
+-# the location of the communication and MPI libs are included too.
+-# If we don't find anything, use the default library path according
+-# to the aix ld manual.
+-m4_defun([_LT_SYS_MODULE_PATH_AIX],
+-[m4_require([_LT_DECL_SED])dnl
+-AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+-lt_aix_libpath_sed='
+-    /Import File Strings/,/^$/ {
+-	/^0/ {
+-	    s/^0  *\(.*\)$/\1/
+-	    p
+-	}
+-    }'
+-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-# Check for a 64-bit object if we didn't find anything.
+-if test -z "$aix_libpath"; then
+-  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-fi],[])
+-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+-])# _LT_SYS_MODULE_PATH_AIX
+-
+-
+-# _LT_SHELL_INIT(ARG)
+-# -------------------
+-m4_define([_LT_SHELL_INIT],
+-[ifdef([AC_DIVERSION_NOTICE],
+-	     [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
+-	 [AC_DIVERT_PUSH(NOTICE)])
+-$1
+-AC_DIVERT_POP
+-])# _LT_SHELL_INIT
+-
+-
+-# _LT_PROG_ECHO_BACKSLASH
+-# -----------------------
+-# Add some code to the start of the generated configure script which
+-# will find an echo command which doesn't interpret backslashes.
+-m4_defun([_LT_PROG_ECHO_BACKSLASH],
+-[_LT_SHELL_INIT([
+-# Check that we are running under the correct shell.
+-SHELL=${CONFIG_SHELL-/bin/sh}
+-
+-case X$lt_ECHO in
+-X*--fallback-echo)
+-  # Remove one level of quotation (which was required for Make).
+-  ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
+-  ;;
+-esac
+-
+-ECHO=${lt_ECHO-echo}
+-if test "X[$]1" = X--no-reexec; then
+-  # Discard the --no-reexec flag, and continue.
+-  shift
+-elif test "X[$]1" = X--fallback-echo; then
+-  # Avoid inline document here, it may be left over
+-  :
+-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
+-  # Yippee, $ECHO works!
+-  :
+-else
+-  # Restart under the correct shell.
+-  exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
+-fi
+-
+-if test "X[$]1" = X--fallback-echo; then
+-  # used as fallback echo
+-  shift
+-  cat <<_LT_EOF
+-[$]*
+-_LT_EOF
+-  exit 0
+-fi
+-
+-# The HP-UX ksh and POSIX shell print the target directory to stdout
+-# if CDPATH is set.
+-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+-
+-if test -z "$lt_ECHO"; then
+-  if test "X${echo_test_string+set}" != Xset; then
+-    # find a string as large as possible, as long as the shell can cope with it
+-    for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
+-      # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+-      if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
+-	 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
+-      then
+-        break
+-      fi
+-    done
+-  fi
+-
+-  if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+-     echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+-     test "X$echo_testing_string" = "X$echo_test_string"; then
+-    :
+-  else
+-    # The Solaris, AIX, and Digital Unix default echo programs unquote
+-    # backslashes.  This makes it impossible to quote backslashes using
+-    #   echo "$something" | sed 's/\\/\\\\/g'
+-    #
+-    # So, first we look for a working echo in the user's PATH.
+-
+-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-    for dir in $PATH /usr/ucb; do
+-      IFS="$lt_save_ifs"
+-      if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+-         test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+-         echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+-         test "X$echo_testing_string" = "X$echo_test_string"; then
+-        ECHO="$dir/echo"
+-        break
+-      fi
+-    done
+-    IFS="$lt_save_ifs"
+-
+-    if test "X$ECHO" = Xecho; then
+-      # We didn't find a better echo, so look for alternatives.
+-      if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
+-         echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
+-         test "X$echo_testing_string" = "X$echo_test_string"; then
+-        # This shell has a builtin print -r that does the trick.
+-        ECHO='print -r'
+-      elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
+-	   test "X$CONFIG_SHELL" != X/bin/ksh; then
+-        # If we have ksh, try running configure again with it.
+-        ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+-        export ORIGINAL_CONFIG_SHELL
+-        CONFIG_SHELL=/bin/ksh
+-        export CONFIG_SHELL
+-        exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
+-      else
+-        # Try using printf.
+-        ECHO='printf %s\n'
+-        if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+-	   echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+-	   test "X$echo_testing_string" = "X$echo_test_string"; then
+-	  # Cool, printf works
+-	  :
+-        elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+-	     test "X$echo_testing_string" = 'X\t' &&
+-	     echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+-	     test "X$echo_testing_string" = "X$echo_test_string"; then
+-	  CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+-	  export CONFIG_SHELL
+-	  SHELL="$CONFIG_SHELL"
+-	  export SHELL
+-	  ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+-        elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+-	     test "X$echo_testing_string" = 'X\t' &&
+-	     echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+-	     test "X$echo_testing_string" = "X$echo_test_string"; then
+-	  ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+-        else
+-	  # maybe with a smaller string...
+-	  prev=:
+-
+-	  for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
+-	    if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
+-	    then
+-	      break
+-	    fi
+-	    prev="$cmd"
+-	  done
+-
+-	  if test "$prev" != 'sed 50q "[$]0"'; then
+-	    echo_test_string=`eval $prev`
+-	    export echo_test_string
+-	    exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
+-	  else
+-	    # Oops.  We lost completely, so just stick with echo.
+-	    ECHO=echo
+-	  fi
+-        fi
+-      fi
+-    fi
+-  fi
+-fi
+-
+-# Copy echo and quote the copy suitably for passing to libtool from
+-# the Makefile, instead of quoting the original, which is used later.
+-lt_ECHO=$ECHO
+-if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
+-   lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
+-fi
+-
+-AC_SUBST(lt_ECHO)
+-])
+-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
+-_LT_DECL([], [ECHO], [1],
+-    [An echo program that does not interpret backslashes])
+-])# _LT_PROG_ECHO_BACKSLASH
+-
+-
+-# _LT_ENABLE_LOCK
+-# ---------------
+-m4_defun([_LT_ENABLE_LOCK],
+-[AC_ARG_ENABLE([libtool-lock],
+-  [AS_HELP_STRING([--disable-libtool-lock],
+-    [avoid locking (might break parallel builds)])])
+-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+-
+-# Some flags need to be propagated to the compiler or linker for good
+-# libtool support.
+-case $host in
+-ia64-*-hpux*)
+-  # Find out which ABI we are using.
+-  echo 'int i;' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    case `/usr/bin/file conftest.$ac_objext` in
+-      *ELF-32*)
+-	HPUX_IA64_MODE="32"
+-	;;
+-      *ELF-64*)
+-	HPUX_IA64_MODE="64"
+-	;;
+-    esac
+-  fi
+-  rm -rf conftest*
+-  ;;
+-*-*-irix6*)
+-  # Find out which ABI we are using.
+-  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    if test "$lt_cv_prog_gnu_ld" = yes; then
+-      case `/usr/bin/file conftest.$ac_objext` in
+-	*32-bit*)
+-	  LD="${LD-ld} -melf32bsmip"
+-	  ;;
+-	*N32*)
+-	  LD="${LD-ld} -melf32bmipn32"
+-	  ;;
+-	*64-bit*)
+-	  LD="${LD-ld} -melf64bmip"
+-	;;
+-      esac
+-    else
+-      case `/usr/bin/file conftest.$ac_objext` in
+-	*32-bit*)
+-	  LD="${LD-ld} -32"
+-	  ;;
+-	*N32*)
+-	  LD="${LD-ld} -n32"
+-	  ;;
+-	*64-bit*)
+-	  LD="${LD-ld} -64"
+-	  ;;
+-      esac
+-    fi
+-  fi
+-  rm -rf conftest*
+-  ;;
+-
+-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+-  # Find out which ABI we are using.
+-  echo 'int i;' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    case `/usr/bin/file conftest.o` in
+-      *32-bit*)
+-	case $host in
+-	  x86_64-*kfreebsd*-gnu)
+-	    LD="${LD-ld} -m elf_i386_fbsd"
+-	    ;;
+-	  x86_64-*linux*)
+-	    LD="${LD-ld} -m elf_i386"
+-	    ;;
+-	  ppc64-*linux*|powerpc64-*linux*)
+-	    LD="${LD-ld} -m elf32ppclinux"
+-	    ;;
+-	  s390x-*linux*)
+-	    LD="${LD-ld} -m elf_s390"
+-	    ;;
+-	  sparc64-*linux*)
+-	    LD="${LD-ld} -m elf32_sparc"
+-	    ;;
+-	esac
+-	;;
+-      *64-bit*)
+-	case $host in
+-	  x86_64-*kfreebsd*-gnu)
+-	    LD="${LD-ld} -m elf_x86_64_fbsd"
+-	    ;;
+-	  x86_64-*linux*)
+-	    LD="${LD-ld} -m elf_x86_64"
+-	    ;;
+-	  ppc*-*linux*|powerpc*-*linux*)
+-	    LD="${LD-ld} -m elf64ppc"
+-	    ;;
+-	  s390*-*linux*|s390*-*tpf*)
+-	    LD="${LD-ld} -m elf64_s390"
+-	    ;;
+-	  sparc*-*linux*)
+-	    LD="${LD-ld} -m elf64_sparc"
+-	    ;;
+-	esac
+-	;;
+-    esac
+-  fi
+-  rm -rf conftest*
+-  ;;
+-
+-*-*-sco3.2v5*)
+-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+-  SAVE_CFLAGS="$CFLAGS"
+-  CFLAGS="$CFLAGS -belf"
+-  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+-    [AC_LANG_PUSH(C)
+-     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+-     AC_LANG_POP])
+-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+-    CFLAGS="$SAVE_CFLAGS"
+-  fi
+-  ;;
+-sparc*-*solaris*)
+-  # Find out which ABI we are using.
+-  echo 'int i;' > conftest.$ac_ext
+-  if AC_TRY_EVAL(ac_compile); then
+-    case `/usr/bin/file conftest.o` in
+-    *64-bit*)
+-      case $lt_cv_prog_gnu_ld in
+-      yes*) LD="${LD-ld} -m elf64_sparc" ;;
+-      *)
+-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+-	  LD="${LD-ld} -64"
+-	fi
+-	;;
+-      esac
+-      ;;
+-    esac
+-  fi
+-  rm -rf conftest*
+-  ;;
+-esac
+-
+-need_locks="$enable_libtool_lock"
+-])# _LT_ENABLE_LOCK
+-
+-
+-# _LT_CMD_OLD_ARCHIVE
+-# -------------------
+-m4_defun([_LT_CMD_OLD_ARCHIVE],
+-[AC_CHECK_TOOL(AR, ar, false)
+-test -z "$AR" && AR=ar
+-test -z "$AR_FLAGS" && AR_FLAGS=cru
+-_LT_DECL([], [AR], [1], [The archiver])
+-_LT_DECL([], [AR_FLAGS], [1])
+-
+-AC_CHECK_TOOL(STRIP, strip, :)
+-test -z "$STRIP" && STRIP=:
+-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
+-
+-AC_CHECK_TOOL(RANLIB, ranlib, :)
+-test -z "$RANLIB" && RANLIB=:
+-_LT_DECL([], [RANLIB], [1],
+-    [Commands used to install an old-style archive])
+-
+-# Determine commands to create old-style static archives.
+-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+-old_postinstall_cmds='chmod 644 $oldlib'
+-old_postuninstall_cmds=
+-
+-if test -n "$RANLIB"; then
+-  case $host_os in
+-  openbsd*)
+-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
+-    ;;
+-  *)
+-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
+-    ;;
+-  esac
+-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+-fi
+-_LT_DECL([], [old_postinstall_cmds], [2])
+-_LT_DECL([], [old_postuninstall_cmds], [2])
+-_LT_TAGDECL([], [old_archive_cmds], [2],
+-    [Commands used to build an old-style archive])
+-])# _LT_CMD_OLD_ARCHIVE
+-
+-
+-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+-#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
+-# ----------------------------------------------------------------
+-# Check whether the given compiler option works
+-AC_DEFUN([_LT_COMPILER_OPTION],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_SED])dnl
+-AC_CACHE_CHECK([$1], [$2],
+-  [$2=no
+-   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
+-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+-   lt_compiler_flag="$3"
+-   # Insert the option either (1) after the last *FLAGS variable, or
+-   # (2) before a word containing "conftest.", or (3) at the end.
+-   # Note that $ac_compile itself does not contain backslashes and begins
+-   # with a dollar sign (not a hyphen), so the echo should work correctly.
+-   # The option is referenced via a variable to avoid confusing sed.
+-   lt_compile=`echo "$ac_compile" | $SED \
+-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+-   -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+-   (eval "$lt_compile" 2>conftest.err)
+-   ac_status=$?
+-   cat conftest.err >&AS_MESSAGE_LOG_FD
+-   echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+-   if (exit $ac_status) && test -s "$ac_outfile"; then
+-     # The compiler can only warn and ignore the option if not recognized
+-     # So say no if there are warnings other than the usual output.
+-     $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+-       $2=yes
+-     fi
+-   fi
+-   $RM conftest*
+-])
+-
+-if test x"[$]$2" = xyes; then
+-    m4_if([$5], , :, [$5])
+-else
+-    m4_if([$6], , :, [$6])
+-fi
+-])# _LT_COMPILER_OPTION
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
+-
+-
+-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+-#                  [ACTION-SUCCESS], [ACTION-FAILURE])
+-# ----------------------------------------------------
+-# Check whether the given linker option works
+-AC_DEFUN([_LT_LINKER_OPTION],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_SED])dnl
+-AC_CACHE_CHECK([$1], [$2],
+-  [$2=no
+-   save_LDFLAGS="$LDFLAGS"
+-   LDFLAGS="$LDFLAGS $3"
+-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
+-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+-     # The linker can only warn and ignore the option if not recognized
+-     # So say no if there are warnings
+-     if test -s conftest.err; then
+-       # Append any errors to the config.log.
+-       cat conftest.err 1>&AS_MESSAGE_LOG_FD
+-       $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+-       if diff conftest.exp conftest.er2 >/dev/null; then
+-         $2=yes
+-       fi
+-     else
+-       $2=yes
+-     fi
+-   fi
+-   $RM -r conftest*
+-   LDFLAGS="$save_LDFLAGS"
+-])
+-
+-if test x"[$]$2" = xyes; then
+-    m4_if([$4], , :, [$4])
+-else
+-    m4_if([$5], , :, [$5])
+-fi
+-])# _LT_LINKER_OPTION
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
+-
+-
+-# LT_CMD_MAX_LEN
+-#---------------
+-AC_DEFUN([LT_CMD_MAX_LEN],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-# find the maximum length of command line arguments
+-AC_MSG_CHECKING([the maximum length of command line arguments])
+-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
+-  i=0
+-  teststring="ABCD"
+-
+-  case $build_os in
+-  msdosdjgpp*)
+-    # On DJGPP, this test can blow up pretty badly due to problems in libc
+-    # (any single argument exceeding 2000 bytes causes a buffer overrun
+-    # during glob expansion).  Even if it were fixed, the result of this
+-    # check would be larger than it should be.
+-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
+-    ;;
+-
+-  gnu*)
+-    # Under GNU Hurd, this test is not required because there is
+-    # no limit to the length of command line arguments.
+-    # Libtool will interpret -1 as no limit whatsoever
+-    lt_cv_sys_max_cmd_len=-1;
+-    ;;
+-
+-  cygwin* | mingw* | cegcc*)
+-    # On Win9x/ME, this test blows up -- it succeeds, but takes
+-    # about 5 minutes as the teststring grows exponentially.
+-    # Worse, since 9x/ME are not pre-emptively multitasking,
+-    # you end up with a "frozen" computer, even though with patience
+-    # the test eventually succeeds (with a max line length of 256k).
+-    # Instead, let's just punt: use the minimum linelength reported by
+-    # all of the supported platforms: 8192 (on NT/2K/XP).
+-    lt_cv_sys_max_cmd_len=8192;
+-    ;;
+-
+-  amigaos*)
+-    # On AmigaOS with pdksh, this test takes hours, literally.
+-    # So we just punt and use a minimum line length of 8192.
+-    lt_cv_sys_max_cmd_len=8192;
+-    ;;
+-
+-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+-    # This has been around since 386BSD, at least.  Likely further.
+-    if test -x /sbin/sysctl; then
+-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+-    elif test -x /usr/sbin/sysctl; then
+-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+-    else
+-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
+-    fi
+-    # And add a safety zone
+-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+-    ;;
+-
+-  interix*)
+-    # We know the value 262144 and hardcode it with a safety zone (like BSD)
+-    lt_cv_sys_max_cmd_len=196608
+-    ;;
+-
+-  osf*)
+-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+-    # nice to cause kernel panics so lets avoid the loop below.
+-    # First set a reasonable default.
+-    lt_cv_sys_max_cmd_len=16384
+-    #
+-    if test -x /sbin/sysconfig; then
+-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+-        *1*) lt_cv_sys_max_cmd_len=-1 ;;
+-      esac
+-    fi
+-    ;;
+-  sco3.2v5*)
+-    lt_cv_sys_max_cmd_len=102400
+-    ;;
+-  sysv5* | sco5v6* | sysv4.2uw2*)
+-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+-    if test -n "$kargmax"; then
+-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
+-    else
+-      lt_cv_sys_max_cmd_len=32768
+-    fi
+-    ;;
+-  *)
+-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+-    if test -n "$lt_cv_sys_max_cmd_len"; then
+-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+-    else
+-      # Make teststring a little bigger before we do anything with it.
+-      # a 1K string should be a reasonable start.
+-      for i in 1 2 3 4 5 6 7 8 ; do
+-        teststring=$teststring$teststring
+-      done
+-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+-      # If test is not a shell built-in, we'll probably end up computing a
+-      # maximum length that is only half of the actual maximum length, but
+-      # we can't tell.
+-      while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
+-	         = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
+-	      test $i != 17 # 1/2 MB should be enough
+-      do
+-        i=`expr $i + 1`
+-        teststring=$teststring$teststring
+-      done
+-      # Only check the string length outside the loop.
+-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+-      teststring=
+-      # Add a significant safety factor because C++ compilers can tack on
+-      # massive amounts of additional arguments before passing them to the
+-      # linker.  It appears as though 1/2 is a usable value.
+-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+-    fi
+-    ;;
+-  esac
+-])
+-if test -n $lt_cv_sys_max_cmd_len ; then
+-  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
+-else
+-  AC_MSG_RESULT(none)
+-fi
+-max_cmd_len=$lt_cv_sys_max_cmd_len
+-_LT_DECL([], [max_cmd_len], [0],
+-    [What is the maximum length of a command?])
+-])# LT_CMD_MAX_LEN
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
+-
+-
+-# _LT_HEADER_DLFCN
+-# ----------------
+-m4_defun([_LT_HEADER_DLFCN],
+-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
+-])# _LT_HEADER_DLFCN
+-
+-
+-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+-#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+-# ----------------------------------------------------------------
+-m4_defun([_LT_TRY_DLOPEN_SELF],
+-[m4_require([_LT_HEADER_DLFCN])dnl
+-if test "$cross_compiling" = yes; then :
+-  [$4]
+-else
+-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+-  lt_status=$lt_dlunknown
+-  cat > conftest.$ac_ext <<_LT_EOF
+-[#line __oline__ "configure"
+-#include "confdefs.h"
+-
+-#if HAVE_DLFCN_H
+-#include <dlfcn.h>
+-#endif
+-
+-#include <stdio.h>
+-
+-#ifdef RTLD_GLOBAL
+-#  define LT_DLGLOBAL		RTLD_GLOBAL
+-#else
+-#  ifdef DL_GLOBAL
+-#    define LT_DLGLOBAL		DL_GLOBAL
+-#  else
+-#    define LT_DLGLOBAL		0
+-#  endif
+-#endif
+-
+-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+-   find out it does not work in some platform. */
+-#ifndef LT_DLLAZY_OR_NOW
+-#  ifdef RTLD_LAZY
+-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
+-#  else
+-#    ifdef DL_LAZY
+-#      define LT_DLLAZY_OR_NOW		DL_LAZY
+-#    else
+-#      ifdef RTLD_NOW
+-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
+-#      else
+-#        ifdef DL_NOW
+-#          define LT_DLLAZY_OR_NOW	DL_NOW
+-#        else
+-#          define LT_DLLAZY_OR_NOW	0
+-#        endif
+-#      endif
+-#    endif
+-#  endif
+-#endif
+-
+-void fnord() { int i=42;}
+-int main ()
+-{
+-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+-  int status = $lt_dlunknown;
+-
+-  if (self)
+-    {
+-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
+-      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+-      /* dlclose (self); */
+-    }
+-  else
+-    puts (dlerror ());
+-
+-  return status;
+-}]
+-_LT_EOF
+-  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+-    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
+-    lt_status=$?
+-    case x$lt_status in
+-      x$lt_dlno_uscore) $1 ;;
+-      x$lt_dlneed_uscore) $2 ;;
+-      x$lt_dlunknown|x*) $3 ;;
+-    esac
+-  else :
+-    # compilation failed
+-    $3
+-  fi
+-fi
+-rm -fr conftest*
+-])# _LT_TRY_DLOPEN_SELF
+-
+-
+-# LT_SYS_DLOPEN_SELF
+-# ------------------
+-AC_DEFUN([LT_SYS_DLOPEN_SELF],
+-[m4_require([_LT_HEADER_DLFCN])dnl
+-if test "x$enable_dlopen" != xyes; then
+-  enable_dlopen=unknown
+-  enable_dlopen_self=unknown
+-  enable_dlopen_self_static=unknown
+-else
+-  lt_cv_dlopen=no
+-  lt_cv_dlopen_libs=
+-
+-  case $host_os in
+-  beos*)
+-    lt_cv_dlopen="load_add_on"
+-    lt_cv_dlopen_libs=
+-    lt_cv_dlopen_self=yes
+-    ;;
+-
+-  mingw* | pw32* | cegcc*)
+-    lt_cv_dlopen="LoadLibrary"
+-    lt_cv_dlopen_libs=
+-    ;;
+-
+-  cygwin*)
+-    lt_cv_dlopen="dlopen"
+-    lt_cv_dlopen_libs=
+-    ;;
+-
+-  darwin*)
+-  # if libdl is installed we need to link against it
+-    AC_CHECK_LIB([dl], [dlopen],
+-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
+-    lt_cv_dlopen="dyld"
+-    lt_cv_dlopen_libs=
+-    lt_cv_dlopen_self=yes
+-    ])
+-    ;;
+-
+-  *)
+-    AC_CHECK_FUNC([shl_load],
+-	  [lt_cv_dlopen="shl_load"],
+-      [AC_CHECK_LIB([dld], [shl_load],
+-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
+-	[AC_CHECK_FUNC([dlopen],
+-	      [lt_cv_dlopen="dlopen"],
+-	  [AC_CHECK_LIB([dl], [dlopen],
+-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+-	    [AC_CHECK_LIB([svld], [dlopen],
+-		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+-	      [AC_CHECK_LIB([dld], [dld_link],
+-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
+-	      ])
+-	    ])
+-	  ])
+-	])
+-      ])
+-    ;;
+-  esac
+-
+-  if test "x$lt_cv_dlopen" != xno; then
+-    enable_dlopen=yes
+-  else
+-    enable_dlopen=no
+-  fi
+-
+-  case $lt_cv_dlopen in
+-  dlopen)
+-    save_CPPFLAGS="$CPPFLAGS"
+-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+-
+-    save_LDFLAGS="$LDFLAGS"
+-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+-
+-    save_LIBS="$LIBS"
+-    LIBS="$lt_cv_dlopen_libs $LIBS"
+-
+-    AC_CACHE_CHECK([whether a program can dlopen itself],
+-	  lt_cv_dlopen_self, [dnl
+-	  _LT_TRY_DLOPEN_SELF(
+-	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+-	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+-    ])
+-
+-    if test "x$lt_cv_dlopen_self" = xyes; then
+-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+-      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+-	  lt_cv_dlopen_self_static, [dnl
+-	  _LT_TRY_DLOPEN_SELF(
+-	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+-	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
+-      ])
+-    fi
+-
+-    CPPFLAGS="$save_CPPFLAGS"
+-    LDFLAGS="$save_LDFLAGS"
+-    LIBS="$save_LIBS"
+-    ;;
+-  esac
+-
+-  case $lt_cv_dlopen_self in
+-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+-  *) enable_dlopen_self=unknown ;;
+-  esac
+-
+-  case $lt_cv_dlopen_self_static in
+-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+-  *) enable_dlopen_self_static=unknown ;;
+-  esac
+-fi
+-_LT_DECL([dlopen_support], [enable_dlopen], [0],
+-	 [Whether dlopen is supported])
+-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
+-	 [Whether dlopen of programs is supported])
+-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
+-	 [Whether dlopen of statically linked programs is supported])
+-])# LT_SYS_DLOPEN_SELF
+-
+-# Old name:
+-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
+-
+-
+-# _LT_COMPILER_C_O([TAGNAME])
+-# ---------------------------
+-# Check to see if options -c and -o are simultaneously supported by compiler.
+-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
+-m4_defun([_LT_COMPILER_C_O],
+-[m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_TAG_COMPILER])dnl
+-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
+-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
+-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
+-   $RM -r conftest 2>/dev/null
+-   mkdir conftest
+-   cd conftest
+-   mkdir out
+-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+-
+-   lt_compiler_flag="-o out/conftest2.$ac_objext"
+-   # Insert the option either (1) after the last *FLAGS variable, or
+-   # (2) before a word containing "conftest.", or (3) at the end.
+-   # Note that $ac_compile itself does not contain backslashes and begins
+-   # with a dollar sign (not a hyphen), so the echo should work correctly.
+-   lt_compile=`echo "$ac_compile" | $SED \
+-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+-   -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+-   (eval "$lt_compile" 2>out/conftest.err)
+-   ac_status=$?
+-   cat out/conftest.err >&AS_MESSAGE_LOG_FD
+-   echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
+-   then
+-     # The compiler can only warn and ignore the option if not recognized
+-     # So say no if there are warnings
+-     $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+-       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+-     fi
+-   fi
+-   chmod u+w . 2>&AS_MESSAGE_LOG_FD
+-   $RM conftest*
+-   # SGI C++ compiler will create directory out/ii_files/ for
+-   # template instantiation
+-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+-   $RM out/* && rmdir out
+-   cd ..
+-   $RM -r conftest
+-   $RM conftest*
+-])
+-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
+-	[Does compiler simultaneously support -c and -o options?])
+-])# _LT_COMPILER_C_O
+-
+-
+-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
+-# ----------------------------------
+-# Check to see if we can do hard links to lock some files if needed
+-m4_defun([_LT_COMPILER_FILE_LOCKS],
+-[m4_require([_LT_ENABLE_LOCK])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-_LT_COMPILER_C_O([$1])
+-
+-hard_links="nottested"
+-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+-  # do not overwrite the value of need_locks provided by the user
+-  AC_MSG_CHECKING([if we can lock with hard links])
+-  hard_links=yes
+-  $RM conftest*
+-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+-  touch conftest.a
+-  ln conftest.a conftest.b 2>&5 || hard_links=no
+-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+-  AC_MSG_RESULT([$hard_links])
+-  if test "$hard_links" = no; then
+-    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+-    need_locks=warn
+-  fi
+-else
+-  need_locks=no
+-fi
+-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
+-])# _LT_COMPILER_FILE_LOCKS
+-
+-
+-# _LT_CHECK_OBJDIR
+-# ----------------
+-m4_defun([_LT_CHECK_OBJDIR],
+-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
+-[rm -f .libs 2>/dev/null
+-mkdir .libs 2>/dev/null
+-if test -d .libs; then
+-  lt_cv_objdir=.libs
+-else
+-  # MS-DOS does not allow filenames that begin with a dot.
+-  lt_cv_objdir=_libs
+-fi
+-rmdir .libs 2>/dev/null])
+-objdir=$lt_cv_objdir
+-_LT_DECL([], [objdir], [0],
+-         [The name of the directory that contains temporary libtool files])dnl
+-m4_pattern_allow([LT_OBJDIR])dnl
+-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
+-  [Define to the sub-directory in which libtool stores uninstalled libraries.])
+-])# _LT_CHECK_OBJDIR
+-
+-
+-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
+-# --------------------------------------
+-# Check hardcoding attributes.
+-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
+-[AC_MSG_CHECKING([how to hardcode library paths into programs])
+-_LT_TAGVAR(hardcode_action, $1)=
+-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
+-   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
+-   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
+-
+-  # We can hardcode non-existent directories.
+-  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
+-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
+-     # have to relink, otherwise we might link with an installed library
+-     # when we should be linking with a yet-to-be-installed one
+-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
+-     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
+-    # Linking always hardcodes the temporary library directory.
+-    _LT_TAGVAR(hardcode_action, $1)=relink
+-  else
+-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
+-    _LT_TAGVAR(hardcode_action, $1)=immediate
+-  fi
+-else
+-  # We cannot hardcode anything, or else we can only hardcode existing
+-  # directories.
+-  _LT_TAGVAR(hardcode_action, $1)=unsupported
+-fi
+-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
+-
+-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
+-   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
+-  # Fast installation is not supported
+-  enable_fast_install=no
+-elif test "$shlibpath_overrides_runpath" = yes ||
+-     test "$enable_shared" = no; then
+-  # Fast installation is not necessary
+-  enable_fast_install=needless
+-fi
+-_LT_TAGDECL([], [hardcode_action], [0],
+-    [How to hardcode a shared library path into an executable])
+-])# _LT_LINKER_HARDCODE_LIBPATH
+-
+-
+-# _LT_CMD_STRIPLIB
+-# ----------------
+-m4_defun([_LT_CMD_STRIPLIB],
+-[m4_require([_LT_DECL_EGREP])
+-striplib=
+-old_striplib=
+-AC_MSG_CHECKING([whether stripping libraries is possible])
+-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+-  AC_MSG_RESULT([yes])
+-else
+-# FIXME - insert some real tests, host_os isn't really good enough
+-  case $host_os in
+-  darwin*)
+-    if test -n "$STRIP" ; then
+-      striplib="$STRIP -x"
+-      old_striplib="$STRIP -S"
+-      AC_MSG_RESULT([yes])
+-    else
+-      AC_MSG_RESULT([no])
+-    fi
+-    ;;
+-  *)
+-    AC_MSG_RESULT([no])
+-    ;;
+-  esac
+-fi
+-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
+-_LT_DECL([], [striplib], [1])
+-])# _LT_CMD_STRIPLIB
+-
+-
+-# _LT_SYS_DYNAMIC_LINKER([TAG])
+-# -----------------------------
+-# PORTME Fill in your ld.so characteristics
+-m4_defun([_LT_SYS_DYNAMIC_LINKER],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_OBJDUMP])dnl
+-m4_require([_LT_DECL_SED])dnl
+-AC_MSG_CHECKING([dynamic linker characteristics])
+-m4_if([$1],
+-	[], [
+-if test "$GCC" = yes; then
+-  case $host_os in
+-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+-    *) lt_awk_arg="/^libraries:/" ;;
+-  esac
+-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+-  if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
+-    # if the path contains ";" then we assume it to be the separator
+-    # otherwise default to the standard path separator (i.e. ":") - it is
+-    # assumed that no part of a normal pathname contains ";" but that should
+-    # okay in the real world where ";" in dirpaths is itself problematic.
+-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
+-  else
+-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
+-  fi
+-  # Ok, now we have the path, separated by spaces, we can step through it
+-  # and add multilib dir if necessary.
+-  lt_tmp_lt_search_path_spec=
+-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+-  for lt_sys_path in $lt_search_path_spec; do
+-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+-    else
+-      test -d "$lt_sys_path" && \
+-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+-    fi
+-  done
+-  lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
+-BEGIN {RS=" "; FS="/|\n";} {
+-  lt_foo="";
+-  lt_count=0;
+-  for (lt_i = NF; lt_i > 0; lt_i--) {
+-    if ($lt_i != "" && $lt_i != ".") {
+-      if ($lt_i == "..") {
+-        lt_count++;
+-      } else {
+-        if (lt_count == 0) {
+-          lt_foo="/" $lt_i lt_foo;
+-        } else {
+-          lt_count--;
+-        }
+-      }
+-    }
+-  }
+-  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
+-  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
+-}'`
+-  sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
+-else
+-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+-fi])
+-library_names_spec=
+-libname_spec='lib$name'
+-soname_spec=
+-shrext_cmds=".so"
+-postinstall_cmds=
+-postuninstall_cmds=
+-finish_cmds=
+-finish_eval=
+-shlibpath_var=
+-shlibpath_overrides_runpath=unknown
+-version_type=none
+-dynamic_linker="$host_os ld.so"
+-sys_lib_dlsearch_path_spec="/lib /usr/lib"
+-need_lib_prefix=unknown
+-hardcode_into_libs=no
+-
+-# when you set need_version to no, make sure it does not cause -set_version
+-# flags to be left without arguments
+-need_version=unknown
+-
+-case $host_os in
+-aix3*)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+-  shlibpath_var=LIBPATH
+-
+-  # AIX 3 has no versioning support, so we append a major version to the name.
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  ;;
+-
+-aix[[4-9]]*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  hardcode_into_libs=yes
+-  if test "$host_cpu" = ia64; then
+-    # AIX 5 supports IA64
+-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+-    shlibpath_var=LD_LIBRARY_PATH
+-  else
+-    # With GCC up to 2.95.x, collect2 would create an import file
+-    # for dependence libraries.  The import file would start with
+-    # the line `#! .'.  This would cause the generated library to
+-    # depend on `.', always an invalid library.  This was fixed in
+-    # development snapshots of GCC prior to 3.0.
+-    case $host_os in
+-      aix4 | aix4.[[01]] | aix4.[[01]].*)
+-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+-	   echo ' yes '
+-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+-	:
+-      else
+-	can_build_shared=no
+-      fi
+-      ;;
+-    esac
+-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+-    # soname into executable. Probably we can add versioning support to
+-    # collect2, so additional links can be useful in future.
+-    if test "$aix_use_runtimelinking" = yes; then
+-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+-      # instead of lib<name>.a to let people know that these are not
+-      # typical AIX shared libraries.
+-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    else
+-      # We preserve .a as extension for shared libraries through AIX4.2
+-      # and later when we are not doing run time linking.
+-      library_names_spec='${libname}${release}.a $libname.a'
+-      soname_spec='${libname}${release}${shared_ext}$major'
+-    fi
+-    shlibpath_var=LIBPATH
+-  fi
+-  ;;
+-
+-amigaos*)
+-  case $host_cpu in
+-  powerpc)
+-    # Since July 2007 AmigaOS4 officially supports .so libraries.
+-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    ;;
+-  m68k)
+-    library_names_spec='$libname.ixlibrary $libname.a'
+-    # Create ${libname}_ixlibrary.a entries in /sys/libs.
+-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+-    ;;
+-  esac
+-  ;;
+-
+-beos*)
+-  library_names_spec='${libname}${shared_ext}'
+-  dynamic_linker="$host_os ld.so"
+-  shlibpath_var=LIBRARY_PATH
+-  ;;
+-
+-bsdi[[45]]*)
+-  version_type=linux
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
+-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+-  # the default ld.so.conf also contains /usr/contrib/lib and
+-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+-  # libtool to hard-code these into programs
+-  ;;
+-
+-cygwin* | mingw* | pw32* | cegcc*)
+-  version_type=windows
+-  shrext_cmds=".dll"
+-  need_version=no
+-  need_lib_prefix=no
+-
+-  case $GCC,$host_os in
+-  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
+-    library_names_spec='$libname.dll.a'
+-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
+-    postinstall_cmds='base_file=`basename \${file}`~
+-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+-      dldir=$destdir/`dirname \$dlpath`~
+-      test -d \$dldir || mkdir -p \$dldir~
+-      $install_prog $dir/$dlname \$dldir/$dlname~
+-      chmod a+x \$dldir/$dlname~
+-      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+-        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+-      fi'
+-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+-      dlpath=$dir/\$dldll~
+-       $RM \$dlpath'
+-    shlibpath_overrides_runpath=yes
+-
+-    case $host_os in
+-    cygwin*)
+-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+-      sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+-      ;;
+-    mingw* | cegcc*)
+-      # MinGW DLLs use traditional 'lib' prefix
+-      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+-      sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+-      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
+-        # It is most probably a Windows format PATH printed by
+-        # mingw gcc, but we are running on Cygwin. Gcc prints its search
+-        # path with ; separators, and with drive letters. We can handle the
+-        # drive letters (cygwin fileutils understands them), so leave them,
+-        # especially as we might pass files found there to a mingw objdump,
+-        # which wouldn't understand a cygwinified path. Ahh.
+-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+-      else
+-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
+-      fi
+-      ;;
+-    pw32*)
+-      # pw32 DLLs use 'pw' prefix rather than 'lib'
+-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+-      ;;
+-    esac
+-    ;;
+-
+-  *)
+-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+-    ;;
+-  esac
+-  dynamic_linker='Win32 ld.exe'
+-  # FIXME: first we should search . and the directory the executable is in
+-  shlibpath_var=PATH
+-  ;;
+-
+-darwin* | rhapsody*)
+-  dynamic_linker="$host_os dyld"
+-  version_type=darwin
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+-  soname_spec='${libname}${release}${major}$shared_ext'
+-  shlibpath_overrides_runpath=yes
+-  shlibpath_var=DYLD_LIBRARY_PATH
+-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+-m4_if([$1], [],[
+-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
+-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+-  ;;
+-
+-dgux*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  ;;
+-
+-freebsd1*)
+-  dynamic_linker=no
+-  ;;
+-
+-freebsd* | dragonfly*)
+-  # DragonFly does not have aout.  When/if they implement a new
+-  # versioning mechanism, adjust this.
+-  if test -x /usr/bin/objformat; then
+-    objformat=`/usr/bin/objformat`
+-  else
+-    case $host_os in
+-    freebsd[[123]]*) objformat=aout ;;
+-    *) objformat=elf ;;
+-    esac
+-  fi
+-  version_type=freebsd-$objformat
+-  case $version_type in
+-    freebsd-elf*)
+-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+-      need_version=no
+-      need_lib_prefix=no
+-      ;;
+-    freebsd-*)
+-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+-      need_version=yes
+-      ;;
+-  esac
+-  shlibpath_var=LD_LIBRARY_PATH
+-  case $host_os in
+-  freebsd2*)
+-    shlibpath_overrides_runpath=yes
+-    ;;
+-  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
+-    shlibpath_overrides_runpath=yes
+-    hardcode_into_libs=yes
+-    ;;
+-  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+-  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
+-    shlibpath_overrides_runpath=no
+-    hardcode_into_libs=yes
+-    ;;
+-  *) # from 4.6 on, and DragonFly
+-    shlibpath_overrides_runpath=yes
+-    hardcode_into_libs=yes
+-    ;;
+-  esac
+-  ;;
+-
+-gnu*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  hardcode_into_libs=yes
+-  ;;
+-
+-hpux9* | hpux10* | hpux11*)
+-  # Give a soname corresponding to the major version so that dld.sl refuses to
+-  # link against other versions.
+-  version_type=sunos
+-  need_lib_prefix=no
+-  need_version=no
+-  case $host_cpu in
+-  ia64*)
+-    shrext_cmds='.so'
+-    hardcode_into_libs=yes
+-    dynamic_linker="$host_os dld.so"
+-    shlibpath_var=LD_LIBRARY_PATH
+-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    if test "X$HPUX_IA64_MODE" = X32; then
+-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+-    else
+-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+-    fi
+-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+-    ;;
+-  hppa*64*)
+-    shrext_cmds='.sl'
+-    hardcode_into_libs=yes
+-    dynamic_linker="$host_os dld.sl"
+-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+-    ;;
+-  *)
+-    shrext_cmds='.sl'
+-    dynamic_linker="$host_os dld.sl"
+-    shlibpath_var=SHLIB_PATH
+-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    ;;
+-  esac
+-  # HP-UX runs *really* slowly unless shared libraries are mode 555.
+-  postinstall_cmds='chmod 555 $lib'
+-  ;;
+-
+-interix[[3-9]]*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  ;;
+-
+-irix5* | irix6* | nonstopux*)
+-  case $host_os in
+-    nonstopux*) version_type=nonstopux ;;
+-    *)
+-	if test "$lt_cv_prog_gnu_ld" = yes; then
+-		version_type=linux
+-	else
+-		version_type=irix
+-	fi ;;
+-  esac
+-  need_lib_prefix=no
+-  need_version=no
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+-  case $host_os in
+-  irix5* | nonstopux*)
+-    libsuff= shlibsuff=
+-    ;;
+-  *)
+-    case $LD in # libtool.m4 will add one of these switches to LD
+-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+-      libsuff= shlibsuff= libmagic=32-bit;;
+-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+-      libsuff=32 shlibsuff=N32 libmagic=N32;;
+-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+-      libsuff=64 shlibsuff=64 libmagic=64-bit;;
+-    *) libsuff= shlibsuff= libmagic=never-match;;
+-    esac
+-    ;;
+-  esac
+-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+-  shlibpath_overrides_runpath=no
+-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+-  hardcode_into_libs=yes
+-  ;;
+-
+-# No shared lib support for Linux oldld, aout, or coff.
+-linux*oldld* | linux*aout* | linux*coff*)
+-  dynamic_linker=no
+-  ;;
+-
+-# This must be Linux ELF.
+-linux* | k*bsd*-gnu)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  # Some binutils ld are patched to set DT_RUNPATH
+-  save_LDFLAGS=$LDFLAGS
+-  save_libdir=$libdir
+-  eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
+-       LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
+-  AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+-    [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
+-       [shlibpath_overrides_runpath=yes])])
+-  LDFLAGS=$save_LDFLAGS
+-  libdir=$save_libdir
+-
+-  # This implies no fast_install, which is unacceptable.
+-  # Some rework will be needed to allow for fast_install
+-  # before this can be enabled.
+-  hardcode_into_libs=yes
+-
+-  # Append ld.so.conf contents to the search path
+-  if test -f /etc/ld.so.conf; then
+-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+-    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+-  fi
+-
+-  # We used to test for /lib/ld.so.1 and disable shared libraries on
+-  # powerpc, because MkLinux only supported shared libraries with the
+-  # GNU dynamic linker.  Since this was broken with cross compilers,
+-  # most powerpc-linux boxes support dynamic linking these days and
+-  # people can always --disable-shared, the test was removed, and we
+-  # assume the GNU/Linux dynamic linker is in use.
+-  dynamic_linker='GNU/Linux ld.so'
+-  ;;
+-
+-netbsd*)
+-  version_type=sunos
+-  need_lib_prefix=no
+-  need_version=no
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+-    dynamic_linker='NetBSD (a.out) ld.so'
+-  else
+-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+-    soname_spec='${libname}${release}${shared_ext}$major'
+-    dynamic_linker='NetBSD ld.elf_so'
+-  fi
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  hardcode_into_libs=yes
+-  ;;
+-
+-newsos6)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  ;;
+-
+-*nto* | *qnx*)
+-  version_type=qnx
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  dynamic_linker='ldqnx.so'
+-  ;;
+-
+-openbsd*)
+-  version_type=sunos
+-  sys_lib_dlsearch_path_spec="/usr/lib"
+-  need_lib_prefix=no
+-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
+-  case $host_os in
+-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
+-    *)				need_version=no  ;;
+-  esac
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-    case $host_os in
+-      openbsd2.[[89]] | openbsd2.[[89]].*)
+-	shlibpath_overrides_runpath=no
+-	;;
+-      *)
+-	shlibpath_overrides_runpath=yes
+-	;;
+-      esac
+-  else
+-    shlibpath_overrides_runpath=yes
+-  fi
+-  ;;
+-
+-os2*)
+-  libname_spec='$name'
+-  shrext_cmds=".dll"
+-  need_lib_prefix=no
+-  library_names_spec='$libname${shared_ext} $libname.a'
+-  dynamic_linker='OS/2 ld.exe'
+-  shlibpath_var=LIBPATH
+-  ;;
+-
+-osf3* | osf4* | osf5*)
+-  version_type=osf
+-  need_lib_prefix=no
+-  need_version=no
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
+-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+-  ;;
+-
+-rdos*)
+-  dynamic_linker=no
+-  ;;
+-
+-solaris*)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  hardcode_into_libs=yes
+-  # ldd complains unless libraries are executable
+-  postinstall_cmds='chmod +x $lib'
+-  ;;
+-
+-sunos4*)
+-  version_type=sunos
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  if test "$with_gnu_ld" = yes; then
+-    need_lib_prefix=no
+-  fi
+-  need_version=yes
+-  ;;
+-
+-sysv4 | sysv4.3*)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  case $host_vendor in
+-    sni)
+-      shlibpath_overrides_runpath=no
+-      need_lib_prefix=no
+-      runpath_var=LD_RUN_PATH
+-      ;;
+-    siemens)
+-      need_lib_prefix=no
+-      ;;
+-    motorola)
+-      need_lib_prefix=no
+-      need_version=no
+-      shlibpath_overrides_runpath=no
+-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+-      ;;
+-  esac
+-  ;;
+-
+-sysv4*MP*)
+-  if test -d /usr/nec ;then
+-    version_type=linux
+-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+-    soname_spec='$libname${shared_ext}.$major'
+-    shlibpath_var=LD_LIBRARY_PATH
+-  fi
+-  ;;
+-
+-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+-  version_type=freebsd-elf
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=yes
+-  hardcode_into_libs=yes
+-  if test "$with_gnu_ld" = yes; then
+-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+-  else
+-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+-    case $host_os in
+-      sco3.2v5*)
+-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+-	;;
+-    esac
+-  fi
+-  sys_lib_dlsearch_path_spec='/usr/lib'
+-  ;;
+-
+-tpf*)
+-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  ;;
+-
+-uts4*)
+-  version_type=linux
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  ;;
+-
+-*)
+-  dynamic_linker=no
+-  ;;
+-esac
+-AC_MSG_RESULT([$dynamic_linker])
+-test "$dynamic_linker" = no && can_build_shared=no
+-
+-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+-if test "$GCC" = yes; then
+-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+-fi
+-
+-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+-fi
+-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+-fi
+-
+-_LT_DECL([], [variables_saved_for_relink], [1],
+-    [Variables whose values should be saved in libtool wrapper scripts and
+-    restored at link time])
+-_LT_DECL([], [need_lib_prefix], [0],
+-    [Do we need the "lib" prefix for modules?])
+-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
+-_LT_DECL([], [version_type], [0], [Library versioning type])
+-_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
+-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
+-_LT_DECL([], [shlibpath_overrides_runpath], [0],
+-    [Is shlibpath searched before the hard-coded library search path?])
+-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
+-_LT_DECL([], [library_names_spec], [1],
+-    [[List of archive names.  First name is the real one, the rest are links.
+-    The last name is the one that the linker finds with -lNAME]])
+-_LT_DECL([], [soname_spec], [1],
+-    [[The coded name of the library, if different from the real name]])
+-_LT_DECL([], [postinstall_cmds], [2],
+-    [Command to use after installation of a shared archive])
+-_LT_DECL([], [postuninstall_cmds], [2],
+-    [Command to use after uninstallation of a shared archive])
+-_LT_DECL([], [finish_cmds], [2],
+-    [Commands used to finish a libtool library installation in a directory])
+-_LT_DECL([], [finish_eval], [1],
+-    [[As "finish_cmds", except a single script fragment to be evaled but
+-    not shown]])
+-_LT_DECL([], [hardcode_into_libs], [0],
+-    [Whether we should hardcode library paths into libraries])
+-_LT_DECL([], [sys_lib_search_path_spec], [2],
+-    [Compile-time system search path for libraries])
+-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
+-    [Run-time system search path for libraries])
+-])# _LT_SYS_DYNAMIC_LINKER
+-
+-
+-# _LT_PATH_TOOL_PREFIX(TOOL)
+-# --------------------------
+-# find a file program which can recognize shared library
+-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
+-[m4_require([_LT_DECL_EGREP])dnl
+-AC_MSG_CHECKING([for $1])
+-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+-[case $MAGIC_CMD in
+-[[\\/*] |  ?:[\\/]*])
+-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+-  ;;
+-*)
+-  lt_save_MAGIC_CMD="$MAGIC_CMD"
+-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-dnl $ac_dummy forces splitting on constant user-supplied paths.
+-dnl POSIX.2 word splitting is done only on the output of word expansions,
+-dnl not every word.  This closes a longstanding sh security hole.
+-  ac_dummy="m4_if([$2], , $PATH, [$2])"
+-  for ac_dir in $ac_dummy; do
+-    IFS="$lt_save_ifs"
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$1; then
+-      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+-      if test -n "$file_magic_test_file"; then
+-	case $deplibs_check_method in
+-	"file_magic "*)
+-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+-	    $EGREP "$file_magic_regex" > /dev/null; then
+-	    :
+-	  else
+-	    cat <<_LT_EOF 1>&2
+-
+-*** Warning: the command libtool uses to detect shared libraries,
+-*** $file_magic_cmd, produces output that libtool cannot recognize.
+-*** The result is that libtool may fail to recognize shared libraries
+-*** as such.  This will affect the creation of libtool libraries that
+-*** depend on shared libraries, but programs linked with such libtool
+-*** libraries will work regardless of this problem.  Nevertheless, you
+-*** may want to report the problem to your system manager and/or to
+-*** bug-libtool at gnu.org
+-
+-_LT_EOF
+-	  fi ;;
+-	esac
+-      fi
+-      break
+-    fi
+-  done
+-  IFS="$lt_save_ifs"
+-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+-  ;;
+-esac])
+-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+-if test -n "$MAGIC_CMD"; then
+-  AC_MSG_RESULT($MAGIC_CMD)
+-else
+-  AC_MSG_RESULT(no)
+-fi
+-_LT_DECL([], [MAGIC_CMD], [0],
+-	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
+-])# _LT_PATH_TOOL_PREFIX
+-
+-# Old name:
+-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
+-
+-
+-# _LT_PATH_MAGIC
+-# --------------
+-# find a file program which can recognize a shared library
+-m4_defun([_LT_PATH_MAGIC],
+-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
+-if test -z "$lt_cv_path_MAGIC_CMD"; then
+-  if test -n "$ac_tool_prefix"; then
+-    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
+-  else
+-    MAGIC_CMD=:
+-  fi
+-fi
+-])# _LT_PATH_MAGIC
+-
+-
+-# LT_PATH_LD
+-# ----------
+-# find the pathname to the GNU or non-GNU linker
+-AC_DEFUN([LT_PATH_LD],
+-[AC_REQUIRE([AC_PROG_CC])dnl
+-AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+-m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-
+-AC_ARG_WITH([gnu-ld],
+-    [AS_HELP_STRING([--with-gnu-ld],
+-	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
+-    [test "$withval" = no || with_gnu_ld=yes],
+-    [with_gnu_ld=no])dnl
+-
+-ac_prog=ld
+-if test "$GCC" = yes; then
+-  # Check if gcc -print-prog-name=ld gives a path.
+-  AC_MSG_CHECKING([for ld used by $CC])
+-  case $host in
+-  *-*-mingw*)
+-    # gcc leaves a trailing carriage return which upsets mingw
+-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+-  *)
+-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+-  esac
+-  case $ac_prog in
+-    # Accept absolute paths.
+-    [[\\/]]* | ?:[[\\/]]*)
+-      re_direlt='/[[^/]][[^/]]*/\.\./'
+-      # Canonicalize the pathname of ld
+-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+-      done
+-      test -z "$LD" && LD="$ac_prog"
+-      ;;
+-  "")
+-    # If it fails, then pretend we aren't using GCC.
+-    ac_prog=ld
+-    ;;
+-  *)
+-    # If it is relative, then search for the first ld in PATH.
+-    with_gnu_ld=unknown
+-    ;;
+-  esac
+-elif test "$with_gnu_ld" = yes; then
+-  AC_MSG_CHECKING([for GNU ld])
+-else
+-  AC_MSG_CHECKING([for non-GNU ld])
+-fi
+-AC_CACHE_VAL(lt_cv_path_LD,
+-[if test -z "$LD"; then
+-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-  for ac_dir in $PATH; do
+-    IFS="$lt_save_ifs"
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+-      lt_cv_path_LD="$ac_dir/$ac_prog"
+-      # Check to see if the program is GNU ld.  I'd rather use --version,
+-      # but apparently some variants of GNU ld only accept -v.
+-      # Break only if it was the GNU/non-GNU ld that we prefer.
+-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+-      *GNU* | *'with BFD'*)
+-	test "$with_gnu_ld" != no && break
+-	;;
+-      *)
+-	test "$with_gnu_ld" != yes && break
+-	;;
+-      esac
+-    fi
+-  done
+-  IFS="$lt_save_ifs"
+-else
+-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
+-fi])
+-LD="$lt_cv_path_LD"
+-if test -n "$LD"; then
+-  AC_MSG_RESULT($LD)
+-else
+-  AC_MSG_RESULT(no)
+-fi
+-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+-_LT_PATH_LD_GNU
+-AC_SUBST([LD])
+-
+-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
+-])# LT_PATH_LD
+-
+-# Old names:
+-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
+-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_PROG_LD], [])
+-dnl AC_DEFUN([AC_PROG_LD], [])
+-
+-
+-# _LT_PATH_LD_GNU
+-#- --------------
+-m4_defun([_LT_PATH_LD_GNU],
+-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
+-case `$LD -v 2>&1 </dev/null` in
+-*GNU* | *'with BFD'*)
+-  lt_cv_prog_gnu_ld=yes
+-  ;;
+-*)
+-  lt_cv_prog_gnu_ld=no
+-  ;;
+-esac])
+-with_gnu_ld=$lt_cv_prog_gnu_ld
+-])# _LT_PATH_LD_GNU
+-
+-
+-# _LT_CMD_RELOAD
+-# --------------
+-# find reload flag for linker
+-#   -- PORTME Some linkers may need a different reload flag.
+-m4_defun([_LT_CMD_RELOAD],
+-[AC_CACHE_CHECK([for $LD option to reload object files],
+-  lt_cv_ld_reload_flag,
+-  [lt_cv_ld_reload_flag='-r'])
+-reload_flag=$lt_cv_ld_reload_flag
+-case $reload_flag in
+-"" | " "*) ;;
+-*) reload_flag=" $reload_flag" ;;
+-esac
+-reload_cmds='$LD$reload_flag -o $output$reload_objs'
+-case $host_os in
+-  darwin*)
+-    if test "$GCC" = yes; then
+-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+-    else
+-      reload_cmds='$LD$reload_flag -o $output$reload_objs'
+-    fi
+-    ;;
+-esac
+-_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
+-_LT_DECL([], [reload_cmds], [2])dnl
+-])# _LT_CMD_RELOAD
+-
+-
+-# _LT_CHECK_MAGIC_METHOD
+-# ----------------------
+-# how to check for library dependencies
+-#  -- PORTME fill in with the dynamic library characteristics
+-m4_defun([_LT_CHECK_MAGIC_METHOD],
+-[m4_require([_LT_DECL_EGREP])
+-m4_require([_LT_DECL_OBJDUMP])
+-AC_CACHE_CHECK([how to recognize dependent libraries],
+-lt_cv_deplibs_check_method,
+-[lt_cv_file_magic_cmd='$MAGIC_CMD'
+-lt_cv_file_magic_test_file=
+-lt_cv_deplibs_check_method='unknown'
+-# Need to set the preceding variable on all platforms that support
+-# interlibrary dependencies.
+-# 'none' -- dependencies not supported.
+-# `unknown' -- same as none, but documents that we really don't know.
+-# 'pass_all' -- all dependencies passed with no checks.
+-# 'test_compile' -- check by making test program.
+-# 'file_magic [[regex]]' -- check by looking for files in library path
+-# which responds to the $file_magic_cmd with a given extended regex.
+-# If you have `file' or equivalent on your system and you're not sure
+-# whether `pass_all' will *always* work, you probably want this one.
+-
+-case $host_os in
+-aix[[4-9]]*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-beos*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-bsdi[[45]]*)
+-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+-  lt_cv_file_magic_cmd='/usr/bin/file -L'
+-  lt_cv_file_magic_test_file=/shlib/libc.so
+-  ;;
+-
+-cygwin*)
+-  # func_win32_libid is a shell function defined in ltmain.sh
+-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+-  lt_cv_file_magic_cmd='func_win32_libid'
+-  ;;
+-
+-mingw* | pw32*)
+-  # Base MSYS/MinGW do not provide the 'file' command needed by
+-  # func_win32_libid shell function, so use a weaker test based on 'objdump',
+-  # unless we find 'file', for example because we are cross-compiling.
+-  if ( file / ) >/dev/null 2>&1; then
+-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+-    lt_cv_file_magic_cmd='func_win32_libid'
+-  else
+-    lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+-    lt_cv_file_magic_cmd='$OBJDUMP -f'
+-  fi
+-  ;;
+-
+-cegcc)
+-  # use the weaker test based on 'objdump'. See mingw*.
+-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+-  lt_cv_file_magic_cmd='$OBJDUMP -f'
+-  ;;
+-
+-darwin* | rhapsody*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-freebsd* | dragonfly*)
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+-    case $host_cpu in
+-    i*86 )
+-      # Not sure whether the presence of OpenBSD here was a mistake.
+-      # Let's accept both of them until this is cleared up.
+-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
+-      lt_cv_file_magic_cmd=/usr/bin/file
+-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+-      ;;
+-    esac
+-  else
+-    lt_cv_deplibs_check_method=pass_all
+-  fi
+-  ;;
+-
+-gnu*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-hpux10.20* | hpux11*)
+-  lt_cv_file_magic_cmd=/usr/bin/file
+-  case $host_cpu in
+-  ia64*)
+-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
+-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+-    ;;
+-  hppa*64*)
+-    [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
+-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+-    ;;
+-  *)
+-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
+-    lt_cv_file_magic_test_file=/usr/lib/libc.sl
+-    ;;
+-  esac
+-  ;;
+-
+-interix[[3-9]]*)
+-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+-  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+-  ;;
+-
+-irix5* | irix6* | nonstopux*)
+-  case $LD in
+-  *-32|*"-32 ") libmagic=32-bit;;
+-  *-n32|*"-n32 ") libmagic=N32;;
+-  *-64|*"-64 ") libmagic=64-bit;;
+-  *) libmagic=never-match;;
+-  esac
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-# This must be Linux ELF.
+-linux* | k*bsd*-gnu)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-netbsd*)
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+-  else
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
+-  fi
+-  ;;
+-
+-newos6*)
+-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+-  lt_cv_file_magic_cmd=/usr/bin/file
+-  lt_cv_file_magic_test_file=/usr/lib/libnls.so
+-  ;;
+-
+-*nto* | *qnx*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-openbsd*)
+-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
+-  else
+-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+-  fi
+-  ;;
+-
+-osf3* | osf4* | osf5*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-rdos*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-solaris*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-
+-sysv4 | sysv4.3*)
+-  case $host_vendor in
+-  motorola)
+-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+-    ;;
+-  ncr)
+-    lt_cv_deplibs_check_method=pass_all
+-    ;;
+-  sequent)
+-    lt_cv_file_magic_cmd='/bin/file'
+-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+-    ;;
+-  sni)
+-    lt_cv_file_magic_cmd='/bin/file'
+-    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+-    lt_cv_file_magic_test_file=/lib/libc.so
+-    ;;
+-  siemens)
+-    lt_cv_deplibs_check_method=pass_all
+-    ;;
+-  pc)
+-    lt_cv_deplibs_check_method=pass_all
+-    ;;
+-  esac
+-  ;;
+-
+-tpf*)
+-  lt_cv_deplibs_check_method=pass_all
+-  ;;
+-esac
+-])
+-file_magic_cmd=$lt_cv_file_magic_cmd
+-deplibs_check_method=$lt_cv_deplibs_check_method
+-test -z "$deplibs_check_method" && deplibs_check_method=unknown
+-
+-_LT_DECL([], [deplibs_check_method], [1],
+-    [Method to check whether dependent libraries are shared objects])
+-_LT_DECL([], [file_magic_cmd], [1],
+-    [Command to use when deplibs_check_method == "file_magic"])
+-])# _LT_CHECK_MAGIC_METHOD
+-
+-
+-# LT_PATH_NM
+-# ----------
+-# find the pathname to a BSD- or MS-compatible name lister
+-AC_DEFUN([LT_PATH_NM],
+-[AC_REQUIRE([AC_PROG_CC])dnl
+-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
+-[if test -n "$NM"; then
+-  # Let the user override the test.
+-  lt_cv_path_NM="$NM"
+-else
+-  lt_nm_to_check="${ac_tool_prefix}nm"
+-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+-    lt_nm_to_check="$lt_nm_to_check nm"
+-  fi
+-  for lt_tmp_nm in $lt_nm_to_check; do
+-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+-      IFS="$lt_save_ifs"
+-      test -z "$ac_dir" && ac_dir=.
+-      tmp_nm="$ac_dir/$lt_tmp_nm"
+-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+-	# Check to see if the nm accepts a BSD-compat flag.
+-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
+-	#   nm: unknown option "B" ignored
+-	# Tru64's nm complains that /dev/null is an invalid object file
+-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+-	*/dev/null* | *'Invalid file or object type'*)
+-	  lt_cv_path_NM="$tmp_nm -B"
+-	  break
+-	  ;;
+-	*)
+-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+-	  */dev/null*)
+-	    lt_cv_path_NM="$tmp_nm -p"
+-	    break
+-	    ;;
+-	  *)
+-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+-	    continue # so that we can try to find one that supports BSD flags
+-	    ;;
+-	  esac
+-	  ;;
+-	esac
+-      fi
+-    done
+-    IFS="$lt_save_ifs"
+-  done
+-  : ${lt_cv_path_NM=no}
+-fi])
+-if test "$lt_cv_path_NM" != "no"; then
+-  NM="$lt_cv_path_NM"
+-else
+-  # Didn't find any BSD compatible name lister, look for dumpbin.
+-  AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
+-  AC_SUBST([DUMPBIN])
+-  if test "$DUMPBIN" != ":"; then
+-    NM="$DUMPBIN"
+-  fi
+-fi
+-test -z "$NM" && NM=nm
+-AC_SUBST([NM])
+-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
+-
+-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
+-  [lt_cv_nm_interface="BSD nm"
+-  echo "int some_variable = 0;" > conftest.$ac_ext
+-  (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
+-  (eval "$ac_compile" 2>conftest.err)
+-  cat conftest.err >&AS_MESSAGE_LOG_FD
+-  (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
+-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+-  cat conftest.err >&AS_MESSAGE_LOG_FD
+-  (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
+-  cat conftest.out >&AS_MESSAGE_LOG_FD
+-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+-    lt_cv_nm_interface="MS dumpbin"
+-  fi
+-  rm -f conftest*])
+-])# LT_PATH_NM
+-
+-# Old names:
+-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
+-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_PROG_NM], [])
+-dnl AC_DEFUN([AC_PROG_NM], [])
+-
+-
+-# LT_LIB_M
+-# --------
+-# check for math library
+-AC_DEFUN([LT_LIB_M],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-LIBM=
+-case $host in
+-*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+-  # These system don't have libm, or don't need it
+-  ;;
+-*-ncr-sysv4.3*)
+-  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+-  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
+-  ;;
+-*)
+-  AC_CHECK_LIB(m, cos, LIBM="-lm")
+-  ;;
+-esac
+-AC_SUBST([LIBM])
+-])# LT_LIB_M
+-
+-# Old name:
+-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_CHECK_LIBM], [])
+-
+-
+-# _LT_COMPILER_NO_RTTI([TAGNAME])
+-# -------------------------------
+-m4_defun([_LT_COMPILER_NO_RTTI],
+-[m4_require([_LT_TAG_COMPILER])dnl
+-
+-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+-
+-if test "$GCC" = yes; then
+-  _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+-
+-  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
+-    lt_cv_prog_compiler_rtti_exceptions,
+-    [-fno-rtti -fno-exceptions], [],
+-    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
+-fi
+-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
+-	[Compiler flag to turn off builtin functions])
+-])# _LT_COMPILER_NO_RTTI
+-
+-
+-# _LT_CMD_GLOBAL_SYMBOLS
+-# ----------------------
+-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-AC_REQUIRE([AC_PROG_CC])dnl
+-AC_REQUIRE([LT_PATH_NM])dnl
+-AC_REQUIRE([LT_PATH_LD])dnl
+-m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-m4_require([_LT_TAG_COMPILER])dnl
+-
+-# Check for command to grab the raw symbol name followed by C symbol from nm.
+-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
+-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
+-[
+-# These are sane defaults that work on at least a few old systems.
+-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
+-
+-# Character class describing NM global symbol codes.
+-symcode='[[BCDEGRST]]'
+-
+-# Regexp to match symbols that can be accessed directly from C.
+-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+-
+-# Define system-specific variables.
+-case $host_os in
+-aix*)
+-  symcode='[[BCDT]]'
+-  ;;
+-cygwin* | mingw* | pw32* | cegcc*)
+-  symcode='[[ABCDGISTW]]'
+-  ;;
+-hpux*)
+-  if test "$host_cpu" = ia64; then
+-    symcode='[[ABCDEGRST]]'
+-  fi
+-  ;;
+-irix* | nonstopux*)
+-  symcode='[[BCDEGRST]]'
+-  ;;
+-osf*)
+-  symcode='[[BCDEGQRST]]'
+-  ;;
+-solaris*)
+-  symcode='[[BDRT]]'
+-  ;;
+-sco3.2v5*)
+-  symcode='[[DT]]'
+-  ;;
+-sysv4.2uw2*)
+-  symcode='[[DT]]'
+-  ;;
+-sysv5* | sco5v6* | unixware* | OpenUNIX*)
+-  symcode='[[ABDT]]'
+-  ;;
+-sysv4)
+-  symcode='[[DFNSTU]]'
+-  ;;
+-esac
+-
+-# If we're using GNU nm, then use its standard symbol codes.
+-case `$NM -V 2>&1` in
+-*GNU* | *'with BFD'*)
+-  symcode='[[ABCDGIRSTW]]' ;;
+-esac
+-
+-# Transform an extracted symbol line into a proper C declaration.
+-# Some systems (esp. on ia64) link data and code symbols differently,
+-# so use this general approach.
+-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+-
+-# Transform an extracted symbol line into symbol name and symbol address
+-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
+-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
+-
+-# Handle CRLF in mingw tool chain
+-opt_cr=
+-case $build_os in
+-mingw*)
+-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+-  ;;
+-esac
+-
+-# Try without a prefix underscore, then with it.
+-for ac_symprfx in "" "_"; do
+-
+-  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+-  symxfrm="\\1 $ac_symprfx\\2 \\2"
+-
+-  # Write the raw and C identifiers.
+-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+-    # Fake it for dumpbin and say T for any non-static function
+-    # and D for any global variable.
+-    # Also find C++ and __fastcall symbols from MSVC++,
+-    # which start with @ or ?.
+-    lt_cv_sys_global_symbol_pipe="$AWK ['"\
+-"     {last_section=section; section=\$ 3};"\
+-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+-"     \$ 0!~/External *\|/{next};"\
+-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+-"     {if(hide[section]) next};"\
+-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
+-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
+-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
+-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+-"     ' prfx=^$ac_symprfx]"
+-  else
+-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+-  fi
+-
+-  # Check to see that the pipe works correctly.
+-  pipe_works=no
+-
+-  rm -f conftest*
+-  cat > conftest.$ac_ext <<_LT_EOF
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-char nm_test_var;
+-void nm_test_func(void);
+-void nm_test_func(void){}
+-#ifdef __cplusplus
+-}
+-#endif
+-int main(){nm_test_var='a';nm_test_func();return(0);}
+-_LT_EOF
+-
+-  if AC_TRY_EVAL(ac_compile); then
+-    # Now try to grab the symbols.
+-    nlist=conftest.nm
+-    if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
+-      # Try sorting and uniquifying the output.
+-      if sort "$nlist" | uniq > "$nlist"T; then
+-	mv -f "$nlist"T "$nlist"
+-      else
+-	rm -f "$nlist"T
+-      fi
+-
+-      # Make sure that we snagged all the symbols we need.
+-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+-	  cat <<_LT_EOF > conftest.$ac_ext
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-
+-_LT_EOF
+-	  # Now generate the symbol file.
+-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+-
+-	  cat <<_LT_EOF >> conftest.$ac_ext
+-
+-/* The mapping between symbol names and symbols.  */
+-const struct {
+-  const char *name;
+-  void       *address;
+-}
+-lt__PROGRAM__LTX_preloaded_symbols[[]] =
+-{
+-  { "@PROGRAM@", (void *) 0 },
+-_LT_EOF
+-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+-	  cat <<\_LT_EOF >> conftest.$ac_ext
+-  {0, (void *) 0}
+-};
+-
+-/* This works around a problem in FreeBSD linker */
+-#ifdef FREEBSD_WORKAROUND
+-static const void *lt_preloaded_setup() {
+-  return lt__PROGRAM__LTX_preloaded_symbols;
+-}
+-#endif
+-
+-#ifdef __cplusplus
+-}
+-#endif
+-_LT_EOF
+-	  # Now try linking the two files.
+-	  mv conftest.$ac_objext conftstm.$ac_objext
+-	  lt_save_LIBS="$LIBS"
+-	  lt_save_CFLAGS="$CFLAGS"
+-	  LIBS="conftstm.$ac_objext"
+-	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
+-	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+-	    pipe_works=yes
+-	  fi
+-	  LIBS="$lt_save_LIBS"
+-	  CFLAGS="$lt_save_CFLAGS"
+-	else
+-	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
+-	fi
+-      else
+-	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
+-      fi
+-    else
+-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
+-    fi
+-  else
+-    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
+-    cat conftest.$ac_ext >&5
+-  fi
+-  rm -rf conftest* conftst*
+-
+-  # Do not use the global_symbol_pipe unless it works.
+-  if test "$pipe_works" = yes; then
+-    break
+-  else
+-    lt_cv_sys_global_symbol_pipe=
+-  fi
+-done
+-])
+-if test -z "$lt_cv_sys_global_symbol_pipe"; then
+-  lt_cv_sys_global_symbol_to_cdecl=
+-fi
+-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+-  AC_MSG_RESULT(failed)
+-else
+-  AC_MSG_RESULT(ok)
+-fi
+-
+-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
+-    [Take the output of nm and produce a listing of raw symbols and C names])
+-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
+-    [Transform the output of nm in a proper C declaration])
+-_LT_DECL([global_symbol_to_c_name_address],
+-    [lt_cv_sys_global_symbol_to_c_name_address], [1],
+-    [Transform the output of nm in a C name address pair])
+-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
+-    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
+-    [Transform the output of nm in a C name address pair when lib prefix is needed])
+-]) # _LT_CMD_GLOBAL_SYMBOLS
+-
+-
+-# _LT_COMPILER_PIC([TAGNAME])
+-# ---------------------------
+-m4_defun([_LT_COMPILER_PIC],
+-[m4_require([_LT_TAG_COMPILER])dnl
+-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
+-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-_LT_TAGVAR(lt_prog_compiler_static, $1)=
+-
+-AC_MSG_CHECKING([for $compiler option to produce PIC])
+-m4_if([$1], [CXX], [
+-  # C++ specific cases for pic, static, wl, etc.
+-  if test "$GXX" = yes; then
+-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-
+-    case $host_os in
+-    aix*)
+-      # All AIX code is PIC.
+-      if test "$host_cpu" = ia64; then
+-	# AIX 5 now supports IA64 processor
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-        ;;
+-      m68k)
+-            # FIXME: we need at least 68020 code to build shared libraries, but
+-            # adding the `-m68020' flag to GCC prevents building anything better,
+-            # like `-m68040'.
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+-        ;;
+-      esac
+-      ;;
+-
+-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+-      # PIC is the default for these OSes.
+-      ;;
+-    mingw* | cygwin* | os2* | pw32* | cegcc*)
+-      # This hack is so that the source file can tell whether it is being
+-      # built for inclusion in a dll (and should export symbols for example).
+-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+-      # (--disable-auto-import) libraries
+-      m4_if([$1], [GCJ], [],
+-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+-      ;;
+-    darwin* | rhapsody*)
+-      # PIC is the default on this platform
+-      # Common symbols not allowed in MH_DYLIB files
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+-      ;;
+-    *djgpp*)
+-      # DJGPP does not support shared libraries at all
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-      ;;
+-    interix[[3-9]]*)
+-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+-      # Instead, we relocate shared libraries at runtime.
+-      ;;
+-    sysv4*MP*)
+-      if test -d /usr/nec; then
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+-      fi
+-      ;;
+-    hpux*)
+-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+-      # sets the default TLS model and affects inlining.
+-      case $host_cpu in
+-      hppa*64*)
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	;;
+-      esac
+-      ;;
+-    *qnx* | *nto*)
+-      # QNX uses GNU C++, but need to define -shared option too, otherwise
+-      # it will coredump.
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-      ;;
+-    *)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-      ;;
+-    esac
+-  else
+-    case $host_os in
+-      aix[[4-9]]*)
+-	# All AIX code is PIC.
+-	if test "$host_cpu" = ia64; then
+-	  # AIX 5 now supports IA64 processor
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	else
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+-	fi
+-	;;
+-      chorus*)
+-	case $cc_basename in
+-	cxch68*)
+-	  # Green Hills C++ Compiler
+-	  # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
+-	  ;;
+-	esac
+-	;;
+-      dgux*)
+-	case $cc_basename in
+-	  ec++*)
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    ;;
+-	  ghcx*)
+-	    # Green Hills C++ Compiler
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      freebsd* | dragonfly*)
+-	# FreeBSD uses GNU C++
+-	;;
+-      hpux9* | hpux10* | hpux11*)
+-	case $cc_basename in
+-	  CC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+-	    if test "$host_cpu" != ia64; then
+-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+-	    fi
+-	    ;;
+-	  aCC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+-	    case $host_cpu in
+-	    hppa*64*|ia64*)
+-	      # +Z the default
+-	      ;;
+-	    *)
+-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+-	      ;;
+-	    esac
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      interix*)
+-	# This is c89, which is MS Visual C++ (no shared libs)
+-	# Anyone wants to do a port?
+-	;;
+-      irix5* | irix6* | nonstopux*)
+-	case $cc_basename in
+-	  CC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-	    # CC pic flag -KPIC is the default.
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      linux* | k*bsd*-gnu)
+-	case $cc_basename in
+-	  KCC*)
+-	    # KAI C++ Compiler
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	    ;;
+-	  ecpc* )
+-	    # old Intel C++ for x86_64 which still supported -KPIC.
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-	    ;;
+-	  icpc* )
+-	    # Intel C++, used to be incompatible with GCC.
+-	    # ICC 10 doesn't accept -KPIC any more.
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-	    ;;
+-	  pgCC* | pgcpp*)
+-	    # Portland Group C++ compiler
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    ;;
+-	  cxx*)
+-	    # Compaq C++
+-	    # Make sure the PIC flag is empty.  It appears that all Alpha
+-	    # Linux and Compaq Tru64 Unix objects are PIC.
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-	    ;;
+-	  xlc* | xlC*)
+-	    # IBM XL 8.0 on PPC
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+-	    ;;
+-	  *)
+-	    case `$CC -V 2>&1 | sed 5q` in
+-	    *Sun\ C*)
+-	      # Sun C++ 5.9
+-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+-	      ;;
+-	    esac
+-	    ;;
+-	esac
+-	;;
+-      lynxos*)
+-	;;
+-      m88k*)
+-	;;
+-      mvs*)
+-	case $cc_basename in
+-	  cxx*)
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      netbsd*)
+-	;;
+-      *qnx* | *nto*)
+-        # QNX uses GNU C++, but need to define -shared option too, otherwise
+-        # it will coredump.
+-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-        ;;
+-      osf3* | osf4* | osf5*)
+-	case $cc_basename in
+-	  KCC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+-	    ;;
+-	  RCC*)
+-	    # Rational C++ 2.4.1
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    ;;
+-	  cxx*)
+-	    # Digital/Compaq C++
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    # Make sure the PIC flag is empty.  It appears that all Alpha
+-	    # Linux and Compaq Tru64 Unix objects are PIC.
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      psos*)
+-	;;
+-      solaris*)
+-	case $cc_basename in
+-	  CC*)
+-	    # Sun C++ 4.2, 5.x and Centerline C++
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+-	    ;;
+-	  gcx*)
+-	    # Green Hills C++ Compiler
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      sunos4*)
+-	case $cc_basename in
+-	  CC*)
+-	    # Sun C++ 4.x
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    ;;
+-	  lcc*)
+-	    # Lucid
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+-	case $cc_basename in
+-	  CC*)
+-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	    ;;
+-	esac
+-	;;
+-      tandem*)
+-	case $cc_basename in
+-	  NCC*)
+-	    # NonStop-UX NCC 3.20
+-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	    ;;
+-	  *)
+-	    ;;
+-	esac
+-	;;
+-      vxworks*)
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-	;;
+-    esac
+-  fi
+-],
+-[
+-  if test "$GCC" = yes; then
+-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-
+-    case $host_os in
+-      aix*)
+-      # All AIX code is PIC.
+-      if test "$host_cpu" = ia64; then
+-	# AIX 5 now supports IA64 processor
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-        ;;
+-      m68k)
+-            # FIXME: we need at least 68020 code to build shared libraries, but
+-            # adding the `-m68020' flag to GCC prevents building anything better,
+-            # like `-m68040'.
+-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+-        ;;
+-      esac
+-      ;;
+-
+-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+-      # PIC is the default for these OSes.
+-      ;;
+-
+-    mingw* | cygwin* | pw32* | os2* | cegcc*)
+-      # This hack is so that the source file can tell whether it is being
+-      # built for inclusion in a dll (and should export symbols for example).
+-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+-      # (--disable-auto-import) libraries
+-      m4_if([$1], [GCJ], [],
+-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+-      ;;
+-
+-    darwin* | rhapsody*)
+-      # PIC is the default on this platform
+-      # Common symbols not allowed in MH_DYLIB files
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+-      ;;
+-
+-    hpux*)
+-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
+-      # sets the default TLS model and affects inlining.
+-      case $host_cpu in
+-      hppa*64*)
+-	# +Z the default
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	;;
+-      esac
+-      ;;
+-
+-    interix[[3-9]]*)
+-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+-      # Instead, we relocate shared libraries at runtime.
+-      ;;
+-
+-    msdosdjgpp*)
+-      # Just because we use GCC doesn't mean we suddenly get shared libraries
+-      # on systems that don't support them.
+-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-      enable_shared=no
+-      ;;
+-
+-    *nto* | *qnx*)
+-      # QNX uses GNU C++, but need to define -shared option too, otherwise
+-      # it will coredump.
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-      ;;
+-
+-    sysv4*MP*)
+-      if test -d /usr/nec; then
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+-      fi
+-      ;;
+-
+-    *)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-      ;;
+-    esac
+-  else
+-    # PORTME Check for flag to pass linker flags through the system compiler.
+-    case $host_os in
+-    aix*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      if test "$host_cpu" = ia64; then
+-	# AIX 5 now supports IA64 processor
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      else
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+-      fi
+-      ;;
+-
+-    mingw* | cygwin* | pw32* | os2* | cegcc*)
+-      # This hack is so that the source file can tell whether it is being
+-      # built for inclusion in a dll (and should export symbols for example).
+-      m4_if([$1], [GCJ], [],
+-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+-      ;;
+-
+-    hpux9* | hpux10* | hpux11*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+-      # not for PA HP-UX.
+-      case $host_cpu in
+-      hppa*64*|ia64*)
+-	# +Z the default
+-	;;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+-	;;
+-      esac
+-      # Is there a better lt_prog_compiler_static that works with the bundled CC?
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+-      ;;
+-
+-    irix5* | irix6* | nonstopux*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      # PIC (with -KPIC) is the default.
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-      ;;
+-
+-    linux* | k*bsd*-gnu)
+-      case $cc_basename in
+-      # old Intel for x86_64 which still supported -KPIC.
+-      ecc*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-        ;;
+-      # icc used to be incompatible with GCC.
+-      # ICC 10 doesn't accept -KPIC any more.
+-      icc* | ifort*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+-        ;;
+-      # Lahey Fortran 8.1.
+-      lf95*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
+-	;;
+-      pgcc* | pgf77* | pgf90* | pgf95*)
+-        # Portland Group compilers (*not* the Pentium gcc compiler,
+-	# which looks to be a dead project)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-        ;;
+-      ccc*)
+-        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-        # All Alpha code is PIC.
+-        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-        ;;
+-      xl*)
+-	# IBM XL C 8.0/Fortran 10.1 on PPC
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+-	;;
+-      *)
+-	case `$CC -V 2>&1 | sed 5q` in
+-	*Sun\ C*)
+-	  # Sun C 5.9
+-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-	  ;;
+-	*Sun\ F*)
+-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
+-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
+-	  ;;
+-	esac
+-	;;
+-      esac
+-      ;;
+-
+-    newsos6)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    *nto* | *qnx*)
+-      # QNX uses GNU C++, but need to define -shared option too, otherwise
+-      # it will coredump.
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+-      ;;
+-
+-    osf3* | osf4* | osf5*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      # All OSF/1 code is PIC.
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-      ;;
+-
+-    rdos*)
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+-      ;;
+-
+-    solaris*)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      case $cc_basename in
+-      f77* | f90* | f95*)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
+-      *)
+-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
+-      esac
+-      ;;
+-
+-    sunos4*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    sysv4 | sysv4.2uw2* | sysv4.3*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    sysv4*MP*)
+-      if test -d /usr/nec ;then
+-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
+-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      fi
+-      ;;
+-
+-    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    unicos*)
+-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-      ;;
+-
+-    uts4*)
+-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+-      ;;
+-
+-    *)
+-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+-      ;;
+-    esac
+-  fi
+-])
+-case $host_os in
+-  # For platforms which do not support PIC, -DPIC is meaningless:
+-  *djgpp*)
+-    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-    ;;
+-  *)
+-    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
+-    ;;
+-esac
+-AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
+-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
+-	[How to pass a linker flag through the compiler])
+-
+-#
+-# Check to make sure the PIC flag actually works.
+-#
+-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
+-  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
+-    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
+-    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
+-    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
+-     "" | " "*) ;;
+-     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
+-     esac],
+-    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+-     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
+-fi
+-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
+-	[Additional compiler flags for building library objects])
+-
+-#
+-# Check to make sure the static flag actually works.
+-#
+-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
+-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+-  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
+-  $lt_tmp_static_flag,
+-  [],
+-  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
+-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+-	[Compiler flag to prevent dynamic linking])
+-])# _LT_COMPILER_PIC
+-
+-
+-# _LT_LINKER_SHLIBS([TAGNAME])
+-# ----------------------------
+-# See if the linker supports building shared libraries.
+-m4_defun([_LT_LINKER_SHLIBS],
+-[AC_REQUIRE([LT_PATH_LD])dnl
+-AC_REQUIRE([LT_PATH_NM])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-m4_require([_LT_DECL_SED])dnl
+-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+-m4_require([_LT_TAG_COMPILER])dnl
+-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+-m4_if([$1], [CXX], [
+-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+-  case $host_os in
+-  aix[[4-9]]*)
+-    # If we're using GNU nm, then we don't want the "-C" option.
+-    # -C means demangle to AIX nm, but means don't demangle with GNU nm
+-    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-    else
+-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-    fi
+-    ;;
+-  pw32*)
+-    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+-  ;;
+-  cygwin* | mingw* | cegcc*)
+-    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+-  ;;
+-  *)
+-    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+-  ;;
+-  esac
+-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+-], [
+-  runpath_var=
+-  _LT_TAGVAR(allow_undefined_flag, $1)=
+-  _LT_TAGVAR(always_export_symbols, $1)=no
+-  _LT_TAGVAR(archive_cmds, $1)=
+-  _LT_TAGVAR(archive_expsym_cmds, $1)=
+-  _LT_TAGVAR(compiler_needs_object, $1)=no
+-  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+-  _LT_TAGVAR(hardcode_automatic, $1)=no
+-  _LT_TAGVAR(hardcode_direct, $1)=no
+-  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-  _LT_TAGVAR(hardcode_libdir_separator, $1)=
+-  _LT_TAGVAR(hardcode_minus_L, $1)=no
+-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+-  _LT_TAGVAR(inherit_rpath, $1)=no
+-  _LT_TAGVAR(link_all_deplibs, $1)=unknown
+-  _LT_TAGVAR(module_cmds, $1)=
+-  _LT_TAGVAR(module_expsym_cmds, $1)=
+-  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
+-  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
+-  _LT_TAGVAR(thread_safe_flag_spec, $1)=
+-  _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-  # include_expsyms should be a list of space-separated symbols to be *always*
+-  # included in the symbol list
+-  _LT_TAGVAR(include_expsyms, $1)=
+-  # exclude_expsyms can be an extended regexp of symbols to exclude
+-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
+-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+-  # as well as any symbol that contains `d'.
+-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+-  # platforms (ab)use it in PIC code, but their linkers get confused if
+-  # the symbol is explicitly referenced.  Since portable code cannot
+-  # rely on this symbol name, it's probably fine to never include it in
+-  # preloaded symbol tables.
+-  # Exclude shared library initialization/finalization symbols.
+-dnl Note also adjust exclude_expsyms for C++ above.
+-  extract_expsyms_cmds=
+-
+-  case $host_os in
+-  cygwin* | mingw* | pw32* | cegcc*)
+-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
+-    # When not using gcc, we currently assume that we are using
+-    # Microsoft Visual C++.
+-    if test "$GCC" != yes; then
+-      with_gnu_ld=no
+-    fi
+-    ;;
+-  interix*)
+-    # we just hope/assume this is gcc and not c89 (= MSVC++)
+-    with_gnu_ld=yes
+-    ;;
+-  openbsd*)
+-    with_gnu_ld=no
+-    ;;
+-  esac
+-
+-  _LT_TAGVAR(ld_shlibs, $1)=yes
+-  if test "$with_gnu_ld" = yes; then
+-    # If archive_cmds runs LD, not CC, wlarc should be empty
+-    wlarc='${wl}'
+-
+-    # Set some defaults for GNU ld with shared library support. These
+-    # are reset later if shared libraries are not supported. Putting them
+-    # here allows them to be overridden if necessary.
+-    runpath_var=LD_RUN_PATH
+-    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-    # ancient GNU ld didn't support --whole-archive et. al.
+-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+-      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+-    else
+-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-    fi
+-    supports_anon_versioning=no
+-    case `$LD -v 2>&1` in
+-      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
+-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+-      *\ 2.11.*) ;; # other 2.11 versions
+-      *) supports_anon_versioning=yes ;;
+-    esac
+-
+-    # See if GNU ld supports shared libraries.
+-    case $host_os in
+-    aix[[3-9]]*)
+-      # On AIX/PPC, the GNU linker is very broken
+-      if test "$host_cpu" != ia64; then
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	cat <<_LT_EOF 1>&2
+-
+-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+-*** to be unable to reliably create shared libraries on AIX.
+-*** Therefore, libtool is disabling shared libraries support.  If you
+-*** really care for shared libraries, you may want to modify your PATH
+-*** so that a non-GNU linker is found, and then restart.
+-
+-_LT_EOF
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
+-        ;;
+-      m68k)
+-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-        ;;
+-      esac
+-      ;;
+-
+-    beos*)
+-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
+-	# support --undefined.  This deserves some investigation.  FIXME
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    cygwin* | mingw* | pw32* | cegcc*)
+-      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+-      # as there is no search path for DLLs.
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      _LT_TAGVAR(always_export_symbols, $1)=no
+-      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
+-
+-      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-	# If the export-symbols file already is a .def file (1st line
+-	# is EXPORTS), use it as is; otherwise, prepend...
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+-	  cp $export_symbols $output_objdir/$soname.def;
+-	else
+-	  echo EXPORTS > $output_objdir/$soname.def;
+-	  cat $export_symbols >> $output_objdir/$soname.def;
+-	fi~
+-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    interix[[3-9]]*)
+-      _LT_TAGVAR(hardcode_direct, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+-      # Instead, shared libraries are loaded at an image base (0x10000000 by
+-      # default) and relocated if they conflict, which is a slow very memory
+-      # consuming and fragmenting process.  To avoid this, we pick a random,
+-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
+-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-      ;;
+-
+-    gnu* | linux* | tpf* | k*bsd*-gnu)
+-      tmp_diet=no
+-      if test "$host_os" = linux-dietlibc; then
+-	case $cc_basename in
+-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
+-	esac
+-      fi
+-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+-	 && test "$tmp_diet" = no
+-      then
+-	tmp_addflag=
+-	tmp_sharedflag='-shared'
+-	case $cc_basename,$host_cpu in
+-        pgcc*)				# Portland Group C compiler
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	  tmp_addflag=' $pic_flag'
+-	  ;;
+-	pgf77* | pgf90* | pgf95*)	# Portland Group f77 and f90 compilers
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	  tmp_addflag=' $pic_flag -Mnomain' ;;
+-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
+-	  tmp_addflag=' -i_dynamic' ;;
+-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
+-	  tmp_addflag=' -i_dynamic -nofor_main' ;;
+-	ifc* | ifort*)			# Intel Fortran compiler
+-	  tmp_addflag=' -nofor_main' ;;
+-	lf95*)				# Lahey Fortran 8.1
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-	  tmp_sharedflag='--shared' ;;
+-	xl[[cC]]*)			# IBM XL C 8.0 on PPC (deal with xlf below)
+-	  tmp_sharedflag='-qmkshrobj'
+-	  tmp_addflag= ;;
+-	esac
+-	case `$CC -V 2>&1 | sed 5q` in
+-	*Sun\ C*)			# Sun C 5.9
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	  _LT_TAGVAR(compiler_needs_object, $1)=yes
+-	  tmp_sharedflag='-G' ;;
+-	*Sun\ F*)			# Sun Fortran 8.3
+-	  tmp_sharedflag='-G' ;;
+-	esac
+-	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-
+-        if test "x$supports_anon_versioning" = xyes; then
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+-	    echo "local: *; };" >> $output_objdir/$libname.ver~
+-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+-        fi
+-
+-	case $cc_basename in
+-	xlf*)
+-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+-	  if test "x$supports_anon_versioning" = xyes; then
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+-	      echo "local: *; };" >> $output_objdir/$libname.ver~
+-	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+-	  fi
+-	  ;;
+-	esac
+-      else
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    netbsd*)
+-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+-	wlarc=
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-      fi
+-      ;;
+-
+-    solaris*)
+-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	cat <<_LT_EOF 1>&2
+-
+-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+-*** create shared libraries on Solaris systems.  Therefore, libtool
+-*** is disabling shared libraries support.  We urge you to upgrade GNU
+-*** binutils to release 2.9.1 or newer.  Another option is to modify
+-*** your PATH or compiler configuration so that the native linker is
+-*** used, and then restart.
+-
+-_LT_EOF
+-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+-      case `$LD -v 2>&1` in
+-        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	cat <<_LT_EOF 1>&2
+-
+-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+-*** reliably create shared libraries on SCO systems.  Therefore, libtool
+-*** is disabling shared libraries support.  We urge you to upgrade GNU
+-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
+-*** your PATH or compiler configuration so that the native linker is
+-*** used, and then restart.
+-
+-_LT_EOF
+-	;;
+-	*)
+-	  # For security reasons, it is highly recommended that you always
+-	  # use absolute paths for naming shared libraries, and exclude the
+-	  # DT_RUNPATH tag from executables and libraries.  But doing so
+-	  # requires that you compile everything twice, which is a pain.
+-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-	  else
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	  fi
+-	;;
+-      esac
+-      ;;
+-
+-    sunos4*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+-      wlarc=
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    *)
+-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-    esac
+-
+-    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
+-      runpath_var=
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-    fi
+-  else
+-    # PORTME fill in a description of your system's linker (not GNU ld)
+-    case $host_os in
+-    aix3*)
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      _LT_TAGVAR(always_export_symbols, $1)=yes
+-      _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+-      # Note: this linker hardcodes the directories in LIBPATH if there
+-      # are no directories specified by -L.
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+-	# Neither direct hardcoding nor static linking is supported with a
+-	# broken collect2.
+-	_LT_TAGVAR(hardcode_direct, $1)=unsupported
+-      fi
+-      ;;
+-
+-    aix[[4-9]]*)
+-      if test "$host_cpu" = ia64; then
+-	# On IA64, the linker does run time linking by default, so we don't
+-	# have to do anything special.
+-	aix_use_runtimelinking=no
+-	exp_sym_flag='-Bexport'
+-	no_entry_flag=""
+-      else
+-	# If we're using GNU nm, then we don't want the "-C" option.
+-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
+-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-	else
+-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+-	fi
+-	aix_use_runtimelinking=no
+-
+-	# Test if we are trying to use run time linking or normal
+-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
+-	# need to do runtime linking.
+-	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
+-	  for ld_flag in $LDFLAGS; do
+-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+-	    aix_use_runtimelinking=yes
+-	    break
+-	  fi
+-	  done
+-	  ;;
+-	esac
+-
+-	exp_sym_flag='-bexport'
+-	no_entry_flag='-bnoentry'
+-      fi
+-
+-      # When large executables or shared objects are built, AIX ld can
+-      # have problems creating the table of contents.  If linking a library
+-      # or program results in "error TOC overflow" add -mminimal-toc to
+-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
+-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+-
+-      _LT_TAGVAR(archive_cmds, $1)=''
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+-
+-      if test "$GCC" = yes; then
+-	case $host_os in aix4.[[012]]|aix4.[[012]].*)
+-	# We only want to do this on AIX 4.2 and lower, the check
+-	# below for broken collect2 doesn't work under 4.3+
+-	  collect2name=`${CC} -print-prog-name=collect2`
+-	  if test -f "$collect2name" &&
+-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+-	  then
+-	  # We have reworked collect2
+-	  :
+-	  else
+-	  # We have old collect2
+-	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
+-	  # It fails to find uninstalled libraries when the uninstalled
+-	  # path is not listed in the libpath.  Setting hardcode_minus_L
+-	  # to unsupported forces relinking
+-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
+-	  fi
+-	  ;;
+-	esac
+-	shared_flag='-shared'
+-	if test "$aix_use_runtimelinking" = yes; then
+-	  shared_flag="$shared_flag "'${wl}-G'
+-	fi
+-      else
+-	# not using gcc
+-	if test "$host_cpu" = ia64; then
+-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+-	# chokes on -Wl,-G. The following line is correct:
+-	  shared_flag='-G'
+-	else
+-	  if test "$aix_use_runtimelinking" = yes; then
+-	    shared_flag='${wl}-G'
+-	  else
+-	    shared_flag='${wl}-bM:SRE'
+-	  fi
+-	fi
+-      fi
+-
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+-      # It seems that -bexpall does not export symbols beginning with
+-      # underscore (_), so it is better to generate a list of symbols to export.
+-      _LT_TAGVAR(always_export_symbols, $1)=yes
+-      if test "$aix_use_runtimelinking" = yes; then
+-	# Warning - without using the other runtime loading flags (-brtl),
+-	# -berok will link without error, but may produce a broken library.
+-	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+-        # Determine the default libpath from the value encoded in an
+-        # empty executable.
+-        _LT_SYS_MODULE_PATH_AIX
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+-      else
+-	if test "$host_cpu" = ia64; then
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+-	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+-	else
+-	 # Determine the default libpath from the value encoded in an
+-	 # empty executable.
+-	 _LT_SYS_MODULE_PATH_AIX
+-	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-	  # Warning - without using the other run time loading flags,
+-	  # -berok will link without error, but may produce a broken library.
+-	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+-	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+-	  # Exported symbols can be pulled into shared objects from archives
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-	  # This is similar to how AIX traditionally builds its shared libraries.
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+-	fi
+-      fi
+-      ;;
+-
+-    amigaos*)
+-      case $host_cpu in
+-      powerpc)
+-            # see comment about AmigaOS4 .so support
+-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
+-        ;;
+-      m68k)
+-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-        ;;
+-      esac
+-      ;;
+-
+-    bsdi[[45]]*)
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
+-      ;;
+-
+-    cygwin* | mingw* | pw32* | cegcc*)
+-      # When not using gcc, we currently assume that we are using
+-      # Microsoft Visual C++.
+-      # hardcode_libdir_flag_spec is actually meaningless, as there is
+-      # no search path for DLLs.
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      # Tell ltmain to make .lib files, not .a files.
+-      libext=lib
+-      # Tell ltmain to make .dll files, not .so files.
+-      shrext_cmds=".dll"
+-      # FIXME: Setting linknames here is a bad hack.
+-      _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+-      # The linker will automatically build a .lib file if we build a DLL.
+-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+-      # FIXME: Should let the user specify the lib program.
+-      _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
+-      _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
+-      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+-      ;;
+-
+-    darwin* | rhapsody*)
+-      _LT_DARWIN_LINKER_FEATURES($1)
+-      ;;
+-
+-    dgux*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    freebsd1*)
+-      _LT_TAGVAR(ld_shlibs, $1)=no
+-      ;;
+-
+-    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+-    # support.  Future versions do this automatically, but an explicit c++rt0.o
+-    # does not break anything, and helps significantly (at the cost of a little
+-    # extra space).
+-    freebsd2.2*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+-    freebsd2*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+-    freebsd* | dragonfly*)
+-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    hpux9*)
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-
+-      # hardcode_minus_L: Not really in the search PATH,
+-      # but as the default location of the library.
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-      ;;
+-
+-    hpux10*)
+-      if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+-      fi
+-      if test "$with_gnu_ld" = no; then
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-	_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
+-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-	_LT_TAGVAR(hardcode_direct, $1)=yes
+-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	# hardcode_minus_L: Not really in the search PATH,
+-	# but as the default location of the library.
+-	_LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      fi
+-      ;;
+-
+-    hpux11*)
+-      if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+-	case $host_cpu in
+-	hppa*64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	ia64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	esac
+-      else
+-	case $host_cpu in
+-	hppa*64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	ia64*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	esac
+-      fi
+-      if test "$with_gnu_ld" = no; then
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	case $host_cpu in
+-	hppa*64*|ia64*)
+-	  _LT_TAGVAR(hardcode_direct, $1)=no
+-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes
+-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-
+-	  # hardcode_minus_L: Not really in the search PATH,
+-	  # but as the default location of the library.
+-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-	  ;;
+-	esac
+-      fi
+-      ;;
+-
+-    irix5* | irix6* | nonstopux*)
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-	# Try to use the -exported_symbol ld option, if it does not
+-	# work, assume that -exports_file does not work either and
+-	# implicitly export all symbols.
+-        save_LDFLAGS="$LDFLAGS"
+-        LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+-        AC_LINK_IFELSE(int foo(void) {},
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+-        )
+-        LDFLAGS="$save_LDFLAGS"
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+-      fi
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      _LT_TAGVAR(inherit_rpath, $1)=yes
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      ;;
+-
+-    netbsd*)
+-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    newsos6)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    *nto* | *qnx*)
+-      ;;
+-
+-    openbsd*)
+-      if test -f /usr/libexec/ld.so; then
+-	_LT_TAGVAR(hardcode_direct, $1)=yes
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	else
+-	  case $host_os in
+-	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+-	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	     ;;
+-	   *)
+-	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	     ;;
+-	  esac
+-	fi
+-      else
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-      fi
+-      ;;
+-
+-    os2*)
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+-      ;;
+-
+-    osf3*)
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-      else
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-      fi
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      ;;
+-
+-    osf4* | osf5*)	# as osf3* with the addition of -msym flag
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-      else
+-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+-
+-	# Both c and cxx compiler support -rpath directly
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+-      fi
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-      ;;
+-
+-    solaris*)
+-      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
+-      if test "$GCC" = yes; then
+-	wlarc='${wl}'
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	  $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+-      else
+-	case `$CC -V 2>&1` in
+-	*"Compilers 5.0"*)
+-	  wlarc=''
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+-	  ;;
+-	*)
+-	  wlarc='${wl}'
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+-	  ;;
+-	esac
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      case $host_os in
+-      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+-      *)
+-	# The compiler driver will combine and reorder linker options,
+-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+-	# but is careful enough not to reorder.
+-	# Supported since Solaris 2.6 (maybe 2.5.1?)
+-	if test "$GCC" = yes; then
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+-	else
+-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+-	fi
+-	;;
+-      esac
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      ;;
+-
+-    sunos4*)
+-      if test "x$host_vendor" = xsequent; then
+-	# Use $CC to link under sequent, because it throws in some extra .o
+-	# files that make .init and .fini sections work.
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+-      fi
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_direct, $1)=yes
+-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    sysv4)
+-      case $host_vendor in
+-	sni)
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
+-	;;
+-	siemens)
+-	  ## LD is ld it makes a PLAMLIB
+-	  ## CC just makes a GrossModule.
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
+-	  _LT_TAGVAR(hardcode_direct, $1)=no
+-        ;;
+-	motorola)
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
+-	;;
+-      esac
+-      runpath_var='LD_RUN_PATH'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    sysv4.3*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
+-      ;;
+-
+-    sysv4*MP*)
+-      if test -d /usr/nec; then
+-	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	runpath_var=LD_RUN_PATH
+-	hardcode_runpath_var=yes
+-	_LT_TAGVAR(ld_shlibs, $1)=yes
+-      fi
+-      ;;
+-
+-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      runpath_var='LD_RUN_PATH'
+-
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      fi
+-      ;;
+-
+-    sysv5* | sco3.2v5* | sco5v6*)
+-      # Note: We can NOT use -z defs as we might desire, because we do not
+-      # link with -lc, and that would cause any symbols used from libc to
+-      # always be unresolved, which means just about no library would
+-      # ever link correctly.  If we're not using GNU ld we use -z text
+-      # though, which does catch some bad symbols but isn't as heavy-handed
+-      # as -z defs.
+-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-      _LT_TAGVAR(link_all_deplibs, $1)=yes
+-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+-      runpath_var='LD_RUN_PATH'
+-
+-      if test "$GCC" = yes; then
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      else
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-      fi
+-      ;;
+-
+-    uts4*)
+-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      ;;
+-
+-    *)
+-      _LT_TAGVAR(ld_shlibs, $1)=no
+-      ;;
+-    esac
+-
+-    if test x$host_vendor = xsni; then
+-      case $host in
+-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
+-	;;
+-      esac
+-    fi
+-  fi
+-])
+-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+-
+-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
+-
+-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
+-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
+-_LT_DECL([], [extract_expsyms_cmds], [2],
+-    [The commands to extract the exported symbol list from a shared archive])
+-
+-#
+-# Do we need to explicitly link libc?
+-#
+-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
+-x|xyes)
+-  # Assume -lc should be added
+-  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-
+-  if test "$enable_shared" = yes && test "$GCC" = yes; then
+-    case $_LT_TAGVAR(archive_cmds, $1) in
+-    *'~'*)
+-      # FIXME: we may have to deal with multi-command sequences.
+-      ;;
+-    '$CC '*)
+-      # Test whether the compiler implicitly links with -lc since on some
+-      # systems, -lgcc has to come before -lc. If gcc already passes -lc
+-      # to ld, don't add -lc before -lgcc.
+-      AC_MSG_CHECKING([whether -lc should be explicitly linked in])
+-      $RM conftest*
+-      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+-
+-      if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
+-        soname=conftest
+-        lib=conftest
+-        libobjs=conftest.$ac_objext
+-        deplibs=
+-        wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
+-	pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
+-        compiler_flags=-v
+-        linker_flags=-v
+-        verstring=
+-        output_objdir=.
+-        libname=conftest
+-        lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
+-        _LT_TAGVAR(allow_undefined_flag, $1)=
+-        if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
+-        then
+-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-        else
+-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-        fi
+-        _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
+-      else
+-        cat conftest.err 1>&5
+-      fi
+-      $RM conftest*
+-      AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
+-      ;;
+-    esac
+-  fi
+-  ;;
+-esac
+-
+-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
+-    [Whether or not to add -lc for building shared libraries])
+-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
+-    [enable_shared_with_static_runtimes], [0],
+-    [Whether or not to disallow shared libs when runtime libs are static])
+-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
+-    [Compiler flag to allow reflexive dlopens])
+-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
+-    [Compiler flag to generate shared objects directly from archives])
+-_LT_TAGDECL([], [compiler_needs_object], [1],
+-    [Whether the compiler copes with passing no objects directly])
+-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
+-    [Create an old-style archive from a shared archive])
+-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
+-    [Create a temporary old-style archive to link instead of a shared archive])
+-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
+-_LT_TAGDECL([], [archive_expsym_cmds], [2])
+-_LT_TAGDECL([], [module_cmds], [2],
+-    [Commands used to build a loadable module if different from building
+-    a shared archive.])
+-_LT_TAGDECL([], [module_expsym_cmds], [2])
+-_LT_TAGDECL([], [with_gnu_ld], [1],
+-    [Whether we are building with GNU ld or not])
+-_LT_TAGDECL([], [allow_undefined_flag], [1],
+-    [Flag that allows shared libraries with undefined symbols to be built])
+-_LT_TAGDECL([], [no_undefined_flag], [1],
+-    [Flag that enforces no undefined symbols])
+-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
+-    [Flag to hardcode $libdir into a binary during linking.
+-    This must work even if $libdir does not exist])
+-_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
+-    [[If ld is used when linking, flag to hardcode $libdir into a binary
+-    during linking.  This must work even if $libdir does not exist]])
+-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
+-    [Whether we need a single "-rpath" flag with a separated argument])
+-_LT_TAGDECL([], [hardcode_direct], [0],
+-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+-    DIR into the resulting binary])
+-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
+-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+-    DIR into the resulting binary and the resulting library dependency is
+-    "absolute", i.e impossible to change by setting ${shlibpath_var} if the
+-    library is relocated])
+-_LT_TAGDECL([], [hardcode_minus_L], [0],
+-    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+-    into the resulting binary])
+-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
+-    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+-    into the resulting binary])
+-_LT_TAGDECL([], [hardcode_automatic], [0],
+-    [Set to "yes" if building a shared library automatically hardcodes DIR
+-    into the library and all subsequent libraries and executables linked
+-    against it])
+-_LT_TAGDECL([], [inherit_rpath], [0],
+-    [Set to yes if linker adds runtime paths of dependent libraries
+-    to runtime path list])
+-_LT_TAGDECL([], [link_all_deplibs], [0],
+-    [Whether libtool must link a program against all its dependency libraries])
+-_LT_TAGDECL([], [fix_srcfile_path], [1],
+-    [Fix the shell variable $srcfile for the compiler])
+-_LT_TAGDECL([], [always_export_symbols], [0],
+-    [Set to "yes" if exported symbols are required])
+-_LT_TAGDECL([], [export_symbols_cmds], [2],
+-    [The commands to list exported symbols])
+-_LT_TAGDECL([], [exclude_expsyms], [1],
+-    [Symbols that should not be listed in the preloaded symbols])
+-_LT_TAGDECL([], [include_expsyms], [1],
+-    [Symbols that must always be exported])
+-_LT_TAGDECL([], [prelink_cmds], [2],
+-    [Commands necessary for linking programs (against libraries) with templates])
+-_LT_TAGDECL([], [file_list_spec], [1],
+-    [Specify filename containing input files])
+-dnl FIXME: Not yet implemented
+-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
+-dnl    [Compiler flag to generate thread safe objects])
+-])# _LT_LINKER_SHLIBS
+-
+-
+-# _LT_LANG_C_CONFIG([TAG])
+-# ------------------------
+-# Ensure that the configuration variables for a C compiler are suitably
+-# defined.  These variables are subsequently used by _LT_CONFIG to write
+-# the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_C_CONFIG],
+-[m4_require([_LT_DECL_EGREP])dnl
+-lt_save_CC="$CC"
+-AC_LANG_PUSH(C)
+-
+-# Source file extension for C test sources.
+-ac_ext=c
+-
+-# Object file extension for compiled C test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# Code to be used in simple compile tests
+-lt_simple_compile_test_code="int some_variable = 0;"
+-
+-# Code to be used in simple link tests
+-lt_simple_link_test_code='int main(){return(0);}'
+-
+-_LT_TAG_COMPILER
+-# Save the default compiler, since it gets overwritten when the other
+-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+-compiler_DEFAULT=$CC
+-
+-# save warnings/boilerplate of simple test code
+-_LT_COMPILER_BOILERPLATE
+-_LT_LINKER_BOILERPLATE
+-
+-## CAVEAT EMPTOR:
+-## There is no encapsulation within the following macros, do not change
+-## the running order or otherwise move them around unless you know exactly
+-## what you are doing...
+-if test -n "$compiler"; then
+-  _LT_COMPILER_NO_RTTI($1)
+-  _LT_COMPILER_PIC($1)
+-  _LT_COMPILER_C_O($1)
+-  _LT_COMPILER_FILE_LOCKS($1)
+-  _LT_LINKER_SHLIBS($1)
+-  _LT_SYS_DYNAMIC_LINKER($1)
+-  _LT_LINKER_HARDCODE_LIBPATH($1)
+-  LT_SYS_DLOPEN_SELF
+-  _LT_CMD_STRIPLIB
+-
+-  # Report which library types will actually be built
+-  AC_MSG_CHECKING([if libtool supports shared libraries])
+-  AC_MSG_RESULT([$can_build_shared])
+-
+-  AC_MSG_CHECKING([whether to build shared libraries])
+-  test "$can_build_shared" = "no" && enable_shared=no
+-
+-  # On AIX, shared libraries and static libraries use the same namespace, and
+-  # are all built from PIC.
+-  case $host_os in
+-  aix3*)
+-    test "$enable_shared" = yes && enable_static=no
+-    if test -n "$RANLIB"; then
+-      archive_cmds="$archive_cmds~\$RANLIB \$lib"
+-      postinstall_cmds='$RANLIB $lib'
+-    fi
+-    ;;
+-
+-  aix[[4-9]]*)
+-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+-      test "$enable_shared" = yes && enable_static=no
+-    fi
+-    ;;
+-  esac
+-  AC_MSG_RESULT([$enable_shared])
+-
+-  AC_MSG_CHECKING([whether to build static libraries])
+-  # Make sure either enable_shared or enable_static is yes.
+-  test "$enable_shared" = yes || enable_static=yes
+-  AC_MSG_RESULT([$enable_static])
+-
+-  _LT_CONFIG($1)
+-fi
+-AC_LANG_POP
+-CC="$lt_save_CC"
+-])# _LT_LANG_C_CONFIG
+-
+-
+-# _LT_PROG_CXX
+-# ------------
+-# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
+-# compiler, we have our own version here.
+-m4_defun([_LT_PROG_CXX],
+-[
+-pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
+-AC_PROG_CXX
+-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+-    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
+-    (test "X$CXX" != "Xg++"))) ; then
+-  AC_PROG_CXXCPP
+-else
+-  _lt_caught_CXX_error=yes
+-fi
+-popdef([AC_MSG_ERROR])
+-])# _LT_PROG_CXX
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([_LT_PROG_CXX], [])
+-
+-
+-# _LT_LANG_CXX_CONFIG([TAG])
+-# --------------------------
+-# Ensure that the configuration variables for a C++ compiler are suitably
+-# defined.  These variables are subsequently used by _LT_CONFIG to write
+-# the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_CXX_CONFIG],
+-[AC_REQUIRE([_LT_PROG_CXX])dnl
+-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-m4_require([_LT_DECL_EGREP])dnl
+-
+-AC_LANG_PUSH(C++)
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-_LT_TAGVAR(allow_undefined_flag, $1)=
+-_LT_TAGVAR(always_export_symbols, $1)=no
+-_LT_TAGVAR(archive_expsym_cmds, $1)=
+-_LT_TAGVAR(compiler_needs_object, $1)=no
+-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_direct, $1)=no
+-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-_LT_TAGVAR(hardcode_libdir_separator, $1)=
+-_LT_TAGVAR(hardcode_minus_L, $1)=no
+-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+-_LT_TAGVAR(hardcode_automatic, $1)=no
+-_LT_TAGVAR(inherit_rpath, $1)=no
+-_LT_TAGVAR(module_cmds, $1)=
+-_LT_TAGVAR(module_expsym_cmds, $1)=
+-_LT_TAGVAR(link_all_deplibs, $1)=unknown
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-_LT_TAGVAR(no_undefined_flag, $1)=
+-_LT_TAGVAR(whole_archive_flag_spec, $1)=
+-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-
+-# Source file extension for C++ test sources.
+-ac_ext=cpp
+-
+-# Object file extension for compiled C++ test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# No sense in running all these tests if we already determined that
+-# the CXX compiler isn't working.  Some variables (like enable_shared)
+-# are currently assumed to apply to all compilers on this platform,
+-# and will be corrupted by setting them based on a non-working compiler.
+-if test "$_lt_caught_CXX_error" != yes; then
+-  # Code to be used in simple compile tests
+-  lt_simple_compile_test_code="int some_variable = 0;"
+-
+-  # Code to be used in simple link tests
+-  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
+-
+-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-  _LT_TAG_COMPILER
+-
+-  # save warnings/boilerplate of simple test code
+-  _LT_COMPILER_BOILERPLATE
+-  _LT_LINKER_BOILERPLATE
+-
+-  # Allow CC to be a program name with arguments.
+-  lt_save_CC=$CC
+-  lt_save_LD=$LD
+-  lt_save_GCC=$GCC
+-  GCC=$GXX
+-  lt_save_with_gnu_ld=$with_gnu_ld
+-  lt_save_path_LD=$lt_cv_path_LD
+-  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
+-    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
+-  else
+-    $as_unset lt_cv_prog_gnu_ld
+-  fi
+-  if test -n "${lt_cv_path_LDCXX+set}"; then
+-    lt_cv_path_LD=$lt_cv_path_LDCXX
+-  else
+-    $as_unset lt_cv_path_LD
+-  fi
+-  test -z "${LDCXX+set}" || LD=$LDCXX
+-  CC=${CXX-"c++"}
+-  compiler=$CC
+-  _LT_TAGVAR(compiler, $1)=$CC
+-  _LT_CC_BASENAME([$compiler])
+-
+-  if test -n "$compiler"; then
+-    # We don't want -fno-exception when compiling C++ code, so set the
+-    # no_builtin_flag separately
+-    if test "$GXX" = yes; then
+-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+-    else
+-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+-    fi
+-
+-    if test "$GXX" = yes; then
+-      # Set up default GNU C++ configuration
+-
+-      LT_PATH_LD
+-
+-      # Check if GNU C++ uses GNU ld as the underlying linker, since the
+-      # archiving commands below assume that GNU ld is being used.
+-      if test "$with_gnu_ld" = yes; then
+-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-
+-        # If archive_cmds runs LD, not CC, wlarc should be empty
+-        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
+-        #     investigate it a little bit more. (MM)
+-        wlarc='${wl}'
+-
+-        # ancient GNU ld didn't support --whole-archive et. al.
+-        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
+-	  $GREP 'no-whole-archive' > /dev/null; then
+-          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+-        else
+-          _LT_TAGVAR(whole_archive_flag_spec, $1)=
+-        fi
+-      else
+-        with_gnu_ld=no
+-        wlarc=
+-
+-        # A generic and very simple default shared library creation
+-        # command for GNU C++ for the case where it uses the native
+-        # linker, instead of GNU ld.  If possible, this setting should
+-        # overridden to take advantage of the native linker features on
+-        # the platform it is being used on.
+-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+-      fi
+-
+-      # Commands to make compiler produce verbose output that lists
+-      # what "hidden" libraries, object files and flags are used when
+-      # linking a shared library.
+-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-
+-    else
+-      GXX=no
+-      with_gnu_ld=no
+-      wlarc=
+-    fi
+-
+-    # PORTME: fill in a description of your system's C++ link characteristics
+-    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+-    _LT_TAGVAR(ld_shlibs, $1)=yes
+-    case $host_os in
+-      aix3*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-      aix[[4-9]]*)
+-        if test "$host_cpu" = ia64; then
+-          # On IA64, the linker does run time linking by default, so we don't
+-          # have to do anything special.
+-          aix_use_runtimelinking=no
+-          exp_sym_flag='-Bexport'
+-          no_entry_flag=""
+-        else
+-          aix_use_runtimelinking=no
+-
+-          # Test if we are trying to use run time linking or normal
+-          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+-          # need to do runtime linking.
+-          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
+-	    for ld_flag in $LDFLAGS; do
+-	      case $ld_flag in
+-	      *-brtl*)
+-	        aix_use_runtimelinking=yes
+-	        break
+-	        ;;
+-	      esac
+-	    done
+-	    ;;
+-          esac
+-
+-          exp_sym_flag='-bexport'
+-          no_entry_flag='-bnoentry'
+-        fi
+-
+-        # When large executables or shared objects are built, AIX ld can
+-        # have problems creating the table of contents.  If linking a library
+-        # or program results in "error TOC overflow" add -mminimal-toc to
+-        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
+-        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+-
+-        _LT_TAGVAR(archive_cmds, $1)=''
+-        _LT_TAGVAR(hardcode_direct, $1)=yes
+-        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-        _LT_TAGVAR(link_all_deplibs, $1)=yes
+-        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+-
+-        if test "$GXX" = yes; then
+-          case $host_os in aix4.[[012]]|aix4.[[012]].*)
+-          # We only want to do this on AIX 4.2 and lower, the check
+-          # below for broken collect2 doesn't work under 4.3+
+-	  collect2name=`${CC} -print-prog-name=collect2`
+-	  if test -f "$collect2name" &&
+-	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+-	  then
+-	    # We have reworked collect2
+-	    :
+-	  else
+-	    # We have old collect2
+-	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
+-	    # It fails to find uninstalled libraries when the uninstalled
+-	    # path is not listed in the libpath.  Setting hardcode_minus_L
+-	    # to unsupported forces relinking
+-	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
+-	  fi
+-          esac
+-          shared_flag='-shared'
+-	  if test "$aix_use_runtimelinking" = yes; then
+-	    shared_flag="$shared_flag "'${wl}-G'
+-	  fi
+-        else
+-          # not using gcc
+-          if test "$host_cpu" = ia64; then
+-	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+-	  # chokes on -Wl,-G. The following line is correct:
+-	  shared_flag='-G'
+-          else
+-	    if test "$aix_use_runtimelinking" = yes; then
+-	      shared_flag='${wl}-G'
+-	    else
+-	      shared_flag='${wl}-bM:SRE'
+-	    fi
+-          fi
+-        fi
+-
+-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+-        # It seems that -bexpall does not export symbols beginning with
+-        # underscore (_), so it is better to generate a list of symbols to
+-	# export.
+-        _LT_TAGVAR(always_export_symbols, $1)=yes
+-        if test "$aix_use_runtimelinking" = yes; then
+-          # Warning - without using the other runtime loading flags (-brtl),
+-          # -berok will link without error, but may produce a broken library.
+-          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+-          # Determine the default libpath from the value encoded in an empty
+-          # executable.
+-          _LT_SYS_MODULE_PATH_AIX
+-          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+-        else
+-          if test "$host_cpu" = ia64; then
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+-	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+-          else
+-	    # Determine the default libpath from the value encoded in an
+-	    # empty executable.
+-	    _LT_SYS_MODULE_PATH_AIX
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+-	    # Warning - without using the other run time loading flags,
+-	    # -berok will link without error, but may produce a broken library.
+-	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+-	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+-	    # Exported symbols can be pulled into shared objects from archives
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+-	    # This is similar to how AIX traditionally builds its shared
+-	    # libraries.
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+-          fi
+-        fi
+-        ;;
+-
+-      beos*)
+-	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-	  # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
+-	  # support --undefined.  This deserves some investigation.  FIXME
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	else
+-	  _LT_TAGVAR(ld_shlibs, $1)=no
+-	fi
+-	;;
+-
+-      chorus*)
+-        case $cc_basename in
+-          *)
+-	  # FIXME: insert proper C++ library support
+-	  _LT_TAGVAR(ld_shlibs, $1)=no
+-	  ;;
+-        esac
+-        ;;
+-
+-      cygwin* | mingw* | pw32* | cegcc*)
+-        # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+-        # as there is no search path for DLLs.
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+-        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+-        _LT_TAGVAR(always_export_symbols, $1)=no
+-        _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+-
+-        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+-          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-          # If the export-symbols file already is a .def file (1st line
+-          # is EXPORTS), use it as is; otherwise, prepend...
+-          _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+-	    cp $export_symbols $output_objdir/$soname.def;
+-          else
+-	    echo EXPORTS > $output_objdir/$soname.def;
+-	    cat $export_symbols >> $output_objdir/$soname.def;
+-          fi~
+-          $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+-        else
+-          _LT_TAGVAR(ld_shlibs, $1)=no
+-        fi
+-        ;;
+-      darwin* | rhapsody*)
+-        _LT_DARWIN_LINKER_FEATURES($1)
+-	;;
+-
+-      dgux*)
+-        case $cc_basename in
+-          ec++*)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          ghcx*)
+-	    # Green Hills C++ Compiler
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-        esac
+-        ;;
+-
+-      freebsd[[12]]*)
+-        # C++ shared libraries reported to be fairly broken before
+-	# switch to ELF
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-
+-      freebsd-elf*)
+-        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-        ;;
+-
+-      freebsd* | dragonfly*)
+-        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+-        # conventions
+-        _LT_TAGVAR(ld_shlibs, $1)=yes
+-        ;;
+-
+-      gnu*)
+-        ;;
+-
+-      hpux9*)
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-        _LT_TAGVAR(hardcode_direct, $1)=yes
+-        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+-				             # but as the default
+-				             # location of the library.
+-
+-        case $cc_basename in
+-          CC*)
+-            # FIXME: insert proper C++ library support
+-            _LT_TAGVAR(ld_shlibs, $1)=no
+-            ;;
+-          aCC*)
+-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-            # Commands to make compiler produce verbose output that lists
+-            # what "hidden" libraries, object files and flags are used when
+-            # linking a shared library.
+-            #
+-            # There doesn't appear to be a way to prevent this compiler from
+-            # explicitly linking system object files so we need to strip them
+-            # from the output so that they don't get included in the library
+-            # dependencies.
+-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-            ;;
+-          *)
+-            if test "$GXX" = yes; then
+-              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+-            else
+-              # FIXME: insert proper C++ library support
+-              _LT_TAGVAR(ld_shlibs, $1)=no
+-            fi
+-            ;;
+-        esac
+-        ;;
+-
+-      hpux10*|hpux11*)
+-        if test $with_gnu_ld = no; then
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-          case $host_cpu in
+-            hppa*64*|ia64*)
+-              ;;
+-            *)
+-	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-              ;;
+-          esac
+-        fi
+-        case $host_cpu in
+-          hppa*64*|ia64*)
+-            _LT_TAGVAR(hardcode_direct, $1)=no
+-            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-            ;;
+-          *)
+-            _LT_TAGVAR(hardcode_direct, $1)=yes
+-            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+-					         # but as the default
+-					         # location of the library.
+-            ;;
+-        esac
+-
+-        case $cc_basename in
+-          CC*)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          aCC*)
+-	    case $host_cpu in
+-	      hppa*64*)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	        ;;
+-	      ia64*)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	        ;;
+-	      *)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	        ;;
+-	    esac
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-	    ;;
+-          *)
+-	    if test "$GXX" = yes; then
+-	      if test $with_gnu_ld = no; then
+-	        case $host_cpu in
+-	          hppa*64*)
+-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	            ;;
+-	          ia64*)
+-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	            ;;
+-	          *)
+-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	            ;;
+-	        esac
+-	      fi
+-	    else
+-	      # FIXME: insert proper C++ library support
+-	      _LT_TAGVAR(ld_shlibs, $1)=no
+-	    fi
+-	    ;;
+-        esac
+-        ;;
+-
+-      interix[[3-9]]*)
+-	_LT_TAGVAR(hardcode_direct, $1)=no
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+-	# Instead, shared libraries are loaded at an image base (0x10000000 by
+-	# default) and relocated if they conflict, which is a slow very memory
+-	# consuming and fragmenting process.  To avoid this, we pick a random,
+-	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+-	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
+-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+-	;;
+-      irix5* | irix6*)
+-        case $cc_basename in
+-          CC*)
+-	    # SGI C++
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-
+-	    # Archives containing C++ object files must be created using
+-	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
+-	    # necessary to make sure instantiated templates are included
+-	    # in the archive.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
+-	    ;;
+-          *)
+-	    if test "$GXX" = yes; then
+-	      if test "$with_gnu_ld" = no; then
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-	      else
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
+-	      fi
+-	    fi
+-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
+-	    ;;
+-        esac
+-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-        _LT_TAGVAR(inherit_rpath, $1)=yes
+-        ;;
+-
+-      linux* | k*bsd*-gnu)
+-        case $cc_basename in
+-          KCC*)
+-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
+-
+-	    # KCC will only create a shared library if the output file
+-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
+-	    # to its proper name (with version) after linking.
+-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-
+-	    # Archives containing C++ object files must be created using
+-	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+-	    ;;
+-	  icpc* | ecpc* )
+-	    # Intel C++
+-	    with_gnu_ld=yes
+-	    # version 8.0 and above of icpc choke on multiply defined symbols
+-	    # if we add $predep_objects and $postdep_objects, however 7.1 and
+-	    # earlier do not add the objects themselves.
+-	    case `$CC -V 2>&1` in
+-	      *"Version 7."*)
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-		;;
+-	      *)  # Version 8.0 or newer
+-	        tmp_idyn=
+-	        case $host_cpu in
+-		  ia64*) tmp_idyn=' -i_dynamic';;
+-		esac
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+-		;;
+-	    esac
+-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+-	    ;;
+-          pgCC* | pgcpp*)
+-            # Portland Group C++ compiler
+-	    case `$CC -V` in
+-	    *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
+-	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+-		compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
+-	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+-		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
+-		$RANLIB $oldlib'
+-	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
+-		rm -rf $tpldir~
+-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+-	      ;;
+-	    *) # Version 6 will use weak symbols
+-	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+-	      ;;
+-	    esac
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-            ;;
+-	  cxx*)
+-	    # Compaq C++
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+-
+-	    runpath_var=LD_RUN_PATH
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-	    ;;
+-	  xl*)
+-	    # IBM XL 8.0 on PPC, with GNU ld
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+-	    if test "x$supports_anon_versioning" = xyes; then
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+-		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+-		echo "local: *; };" >> $output_objdir/$libname.ver~
+-		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+-	    fi
+-	    ;;
+-	  *)
+-	    case `$CC -V 2>&1 | sed 5q` in
+-	    *Sun\ C*)
+-	      # Sun C++ 5.9
+-	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+-	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+-	      _LT_TAGVAR(compiler_needs_object, $1)=yes
+-
+-	      # Not sure whether something based on
+-	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+-	      # would be better.
+-	      output_verbose_link_cmd='echo'
+-
+-	      # Archives containing C++ object files must be created using
+-	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
+-	      # necessary to make sure instantiated templates are included
+-	      # in the archive.
+-	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+-	      ;;
+-	    esac
+-	    ;;
+-	esac
+-	;;
+-
+-      lynxos*)
+-        # FIXME: insert proper C++ library support
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	;;
+-
+-      m88k*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-	;;
+-
+-      mvs*)
+-        case $cc_basename in
+-          cxx*)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-	  *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-	esac
+-	;;
+-
+-      netbsd*)
+-        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
+-	  wlarc=
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes
+-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	fi
+-	# Workaround some broken pre-1.5 toolchains
+-	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+-	;;
+-
+-      *nto* | *qnx*)
+-        _LT_TAGVAR(ld_shlibs, $1)=yes
+-	;;
+-
+-      openbsd2*)
+-        # C++ shared libraries are fairly broken
+-	_LT_TAGVAR(ld_shlibs, $1)=no
+-	;;
+-
+-      openbsd*)
+-	if test -f /usr/libexec/ld.so; then
+-	  _LT_TAGVAR(hardcode_direct, $1)=yes
+-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+-	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+-	  fi
+-	  output_verbose_link_cmd=echo
+-	else
+-	  _LT_TAGVAR(ld_shlibs, $1)=no
+-	fi
+-	;;
+-
+-      osf3* | osf4* | osf5*)
+-        case $cc_basename in
+-          KCC*)
+-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
+-
+-	    # KCC will only create a shared library if the output file
+-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
+-	    # to its proper name (with version) after linking.
+-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	    # Archives containing C++ object files must be created using
+-	    # the KAI C++ compiler.
+-	    case $host in
+-	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
+-	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
+-	    esac
+-	    ;;
+-          RCC*)
+-	    # Rational C++ 2.4.1
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          cxx*)
+-	    case $host in
+-	      osf3*)
+-	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-		;;
+-	      *)
+-	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+-	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
+-	          echo "-hidden">> $lib.exp~
+-	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
+-	          $RM $lib.exp'
+-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+-		;;
+-	    esac
+-
+-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	    # Commands to make compiler produce verbose output that lists
+-	    # what "hidden" libraries, object files and flags are used when
+-	    # linking a shared library.
+-	    #
+-	    # There doesn't appear to be a way to prevent this compiler from
+-	    # explicitly linking system object files so we need to strip them
+-	    # from the output so that they don't get included in the library
+-	    # dependencies.
+-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+-	    ;;
+-	  *)
+-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+-	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+-	      case $host in
+-	        osf3*)
+-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-		  ;;
+-	        *)
+-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+-		  ;;
+-	      esac
+-
+-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+-	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+-
+-	      # Commands to make compiler produce verbose output that lists
+-	      # what "hidden" libraries, object files and flags are used when
+-	      # linking a shared library.
+-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-
+-	    else
+-	      # FIXME: insert proper C++ library support
+-	      _LT_TAGVAR(ld_shlibs, $1)=no
+-	    fi
+-	    ;;
+-        esac
+-        ;;
+-
+-      psos*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-
+-      sunos4*)
+-        case $cc_basename in
+-          CC*)
+-	    # Sun C++ 4.x
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          lcc*)
+-	    # Lucid
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-        esac
+-        ;;
+-
+-      solaris*)
+-        case $cc_basename in
+-          CC*)
+-	    # Sun C++ 4.2, 5.x and Centerline C++
+-            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+-	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-	      $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+-
+-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+-	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	    case $host_os in
+-	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+-	      *)
+-		# The compiler driver will combine and reorder linker options,
+-		# but understands `-z linker_flag'.
+-	        # Supported since Solaris 2.6 (maybe 2.5.1?)
+-		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+-	        ;;
+-	    esac
+-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
+-
+-	    output_verbose_link_cmd='echo'
+-
+-	    # Archives containing C++ object files must be created using
+-	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
+-	    # necessary to make sure instantiated templates are included
+-	    # in the archive.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+-	    ;;
+-          gcx*)
+-	    # Green Hills C++ Compiler
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+-
+-	    # The C++ compiler must be used to create the archive.
+-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
+-	    ;;
+-          *)
+-	    # GNU C++ compiler with Solaris linker
+-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+-	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+-	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+-
+-	        # Commands to make compiler produce verbose output that lists
+-	        # what "hidden" libraries, object files and flags are used when
+-	        # linking a shared library.
+-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-	      else
+-	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
+-	        # platform.
+-	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+-		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+-
+-	        # Commands to make compiler produce verbose output that lists
+-	        # what "hidden" libraries, object files and flags are used when
+-	        # linking a shared library.
+-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+-	      fi
+-
+-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+-	      case $host_os in
+-		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+-		*)
+-		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+-		  ;;
+-	      esac
+-	    fi
+-	    ;;
+-        esac
+-        ;;
+-
+-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-      runpath_var='LD_RUN_PATH'
+-
+-      case $cc_basename in
+-        CC*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-	*)
+-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	  ;;
+-      esac
+-      ;;
+-
+-      sysv5* | sco3.2v5* | sco5v6*)
+-	# Note: We can NOT use -z defs as we might desire, because we do not
+-	# link with -lc, and that would cause any symbols used from libc to
+-	# always be unresolved, which means just about no library would
+-	# ever link correctly.  If we're not using GNU ld we use -z text
+-	# though, which does catch some bad symbols but isn't as heavy-handed
+-	# as -z defs.
+-	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+-	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+-	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+-	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+-	_LT_TAGVAR(link_all_deplibs, $1)=yes
+-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+-	runpath_var='LD_RUN_PATH'
+-
+-	case $cc_basename in
+-          CC*)
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    ;;
+-	  *)
+-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+-	    ;;
+-	esac
+-      ;;
+-
+-      tandem*)
+-        case $cc_basename in
+-          NCC*)
+-	    # NonStop-UX NCC 3.20
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-          *)
+-	    # FIXME: insert proper C++ library support
+-	    _LT_TAGVAR(ld_shlibs, $1)=no
+-	    ;;
+-        esac
+-        ;;
+-
+-      vxworks*)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-
+-      *)
+-        # FIXME: insert proper C++ library support
+-        _LT_TAGVAR(ld_shlibs, $1)=no
+-        ;;
+-    esac
+-
+-    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+-    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+-
+-    _LT_TAGVAR(GCC, $1)="$GXX"
+-    _LT_TAGVAR(LD, $1)="$LD"
+-
+-    ## CAVEAT EMPTOR:
+-    ## There is no encapsulation within the following macros, do not change
+-    ## the running order or otherwise move them around unless you know exactly
+-    ## what you are doing...
+-    _LT_SYS_HIDDEN_LIBDEPS($1)
+-    _LT_COMPILER_PIC($1)
+-    _LT_COMPILER_C_O($1)
+-    _LT_COMPILER_FILE_LOCKS($1)
+-    _LT_LINKER_SHLIBS($1)
+-    _LT_SYS_DYNAMIC_LINKER($1)
+-    _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-    _LT_CONFIG($1)
+-  fi # test -n "$compiler"
+-
+-  CC=$lt_save_CC
+-  LDCXX=$LD
+-  LD=$lt_save_LD
+-  GCC=$lt_save_GCC
+-  with_gnu_ld=$lt_save_with_gnu_ld
+-  lt_cv_path_LDCXX=$lt_cv_path_LD
+-  lt_cv_path_LD=$lt_save_path_LD
+-  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
+-  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
+-fi # test "$_lt_caught_CXX_error" != yes
+-
+-AC_LANG_POP
+-])# _LT_LANG_CXX_CONFIG
+-
+-
+-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
+-# ---------------------------------
+-# Figure out "hidden" library dependencies from verbose
+-# compiler output when linking a shared library.
+-# Parse the compiler output and extract the necessary
+-# objects, libraries and library flags.
+-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
+-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+-# Dependencies to place before and after the object being linked:
+-_LT_TAGVAR(predep_objects, $1)=
+-_LT_TAGVAR(postdep_objects, $1)=
+-_LT_TAGVAR(predeps, $1)=
+-_LT_TAGVAR(postdeps, $1)=
+-_LT_TAGVAR(compiler_lib_search_path, $1)=
+-
+-dnl we can't use the lt_simple_compile_test_code here,
+-dnl because it contains code intended for an executable,
+-dnl not a library.  It's possible we should let each
+-dnl tag define a new lt_????_link_test_code variable,
+-dnl but it's only used here...
+-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
+-int a;
+-void foo (void) { a = 0; }
+-_LT_EOF
+-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
+-class Foo
+-{
+-public:
+-  Foo (void) { a = 0; }
+-private:
+-  int a;
+-};
+-_LT_EOF
+-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
+-      subroutine foo
+-      implicit none
+-      integer*4 a
+-      a=0
+-      return
+-      end
+-_LT_EOF
+-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
+-      subroutine foo
+-      implicit none
+-      integer a
+-      a=0
+-      return
+-      end
+-_LT_EOF
+-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
+-public class foo {
+-  private int a;
+-  public void bar (void) {
+-    a = 0;
+-  }
+-};
+-_LT_EOF
+-])
+-dnl Parse the compiler output and extract the necessary
+-dnl objects, libraries and library flags.
+-if AC_TRY_EVAL(ac_compile); then
+-  # Parse the compiler output and extract the necessary
+-  # objects, libraries and library flags.
+-
+-  # Sentinel used to keep track of whether or not we are before
+-  # the conftest object file.
+-  pre_test_object_deps_done=no
+-
+-  for p in `eval "$output_verbose_link_cmd"`; do
+-    case $p in
+-
+-    -L* | -R* | -l*)
+-       # Some compilers place space between "-{L,R}" and the path.
+-       # Remove the space.
+-       if test $p = "-L" ||
+-          test $p = "-R"; then
+-	 prev=$p
+-	 continue
+-       else
+-	 prev=
+-       fi
+-
+-       if test "$pre_test_object_deps_done" = no; then
+-	 case $p in
+-	 -L* | -R*)
+-	   # Internal compiler library paths should come after those
+-	   # provided the user.  The postdeps already come after the
+-	   # user supplied libs so there is no need to process them.
+-	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
+-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+-	   else
+-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+-	   fi
+-	   ;;
+-	 # The "-l" case would never come before the object being
+-	 # linked, so don't bother handling this case.
+-	 esac
+-       else
+-	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
+-	   _LT_TAGVAR(postdeps, $1)="${prev}${p}"
+-	 else
+-	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
+-	 fi
+-       fi
+-       ;;
+-
+-    *.$objext)
+-       # This assumes that the test object file only shows up
+-       # once in the compiler output.
+-       if test "$p" = "conftest.$objext"; then
+-	 pre_test_object_deps_done=yes
+-	 continue
+-       fi
+-
+-       if test "$pre_test_object_deps_done" = no; then
+-	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
+-	   _LT_TAGVAR(predep_objects, $1)="$p"
+-	 else
+-	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
+-	 fi
+-       else
+-	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
+-	   _LT_TAGVAR(postdep_objects, $1)="$p"
+-	 else
+-	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
+-	 fi
+-       fi
+-       ;;
+-
+-    *) ;; # Ignore the rest.
+-
+-    esac
+-  done
+-
+-  # Clean up.
+-  rm -f a.out a.exe
+-else
+-  echo "libtool.m4: error: problem compiling $1 test program"
+-fi
+-
+-$RM -f confest.$objext
+-
+-# PORTME: override above test on systems where it is broken
+-m4_if([$1], [CXX],
+-[case $host_os in
+-interix[[3-9]]*)
+-  # Interix 3.5 installs completely hosed .la files for C++, so rather than
+-  # hack all around it, let's just trust "g++" to DTRT.
+-  _LT_TAGVAR(predep_objects,$1)=
+-  _LT_TAGVAR(postdep_objects,$1)=
+-  _LT_TAGVAR(postdeps,$1)=
+-  ;;
+-
+-linux*)
+-  case `$CC -V 2>&1 | sed 5q` in
+-  *Sun\ C*)
+-    # Sun C++ 5.9
+-
+-    # The more standards-conforming stlport4 library is
+-    # incompatible with the Cstd library. Avoid specifying
+-    # it if it's in CXXFLAGS. Ignore libCrun as
+-    # -library=stlport4 depends on it.
+-    case " $CXX $CXXFLAGS " in
+-    *" -library=stlport4 "*)
+-      solaris_use_stlport4=yes
+-      ;;
+-    esac
+-
+-    if test "$solaris_use_stlport4" != yes; then
+-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+-    fi
+-    ;;
+-  esac
+-  ;;
+-
+-solaris*)
+-  case $cc_basename in
+-  CC*)
+-    # The more standards-conforming stlport4 library is
+-    # incompatible with the Cstd library. Avoid specifying
+-    # it if it's in CXXFLAGS. Ignore libCrun as
+-    # -library=stlport4 depends on it.
+-    case " $CXX $CXXFLAGS " in
+-    *" -library=stlport4 "*)
+-      solaris_use_stlport4=yes
+-      ;;
+-    esac
+-
+-    # Adding this requires a known-good setup of shared libraries for
+-    # Sun compiler versions before 5.6, else PIC objects from an old
+-    # archive will be linked into the output, leading to subtle bugs.
+-    if test "$solaris_use_stlport4" != yes; then
+-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+-    fi
+-    ;;
+-  esac
+-  ;;
+-esac
+-])
+-
+-case " $_LT_TAGVAR(postdeps, $1) " in
+-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
+-esac
+- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
+-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
+- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+-fi
+-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
+-    [The directories searched by this compiler when creating a shared library])
+-_LT_TAGDECL([], [predep_objects], [1],
+-    [Dependencies to place before and after the objects being linked to
+-    create a shared library])
+-_LT_TAGDECL([], [postdep_objects], [1])
+-_LT_TAGDECL([], [predeps], [1])
+-_LT_TAGDECL([], [postdeps], [1])
+-_LT_TAGDECL([], [compiler_lib_search_path], [1],
+-    [The library search path used internally by the compiler when linking
+-    a shared library])
+-])# _LT_SYS_HIDDEN_LIBDEPS
+-
+-
+-# _LT_PROG_F77
+-# ------------
+-# Since AC_PROG_F77 is broken, in that it returns the empty string
+-# if there is no fortran compiler, we have our own version here.
+-m4_defun([_LT_PROG_F77],
+-[
+-pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
+-AC_PROG_F77
+-if test -z "$F77" || test "X$F77" = "Xno"; then
+-  _lt_disable_F77=yes
+-fi
+-popdef([AC_MSG_ERROR])
+-])# _LT_PROG_F77
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([_LT_PROG_F77], [])
+-
+-
+-# _LT_LANG_F77_CONFIG([TAG])
+-# --------------------------
+-# Ensure that the configuration variables for a Fortran 77 compiler are
+-# suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_F77_CONFIG],
+-[AC_REQUIRE([_LT_PROG_F77])dnl
+-AC_LANG_PUSH(Fortran 77)
+-
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-_LT_TAGVAR(allow_undefined_flag, $1)=
+-_LT_TAGVAR(always_export_symbols, $1)=no
+-_LT_TAGVAR(archive_expsym_cmds, $1)=
+-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_direct, $1)=no
+-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-_LT_TAGVAR(hardcode_libdir_separator, $1)=
+-_LT_TAGVAR(hardcode_minus_L, $1)=no
+-_LT_TAGVAR(hardcode_automatic, $1)=no
+-_LT_TAGVAR(inherit_rpath, $1)=no
+-_LT_TAGVAR(module_cmds, $1)=
+-_LT_TAGVAR(module_expsym_cmds, $1)=
+-_LT_TAGVAR(link_all_deplibs, $1)=unknown
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-_LT_TAGVAR(no_undefined_flag, $1)=
+-_LT_TAGVAR(whole_archive_flag_spec, $1)=
+-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-
+-# Source file extension for f77 test sources.
+-ac_ext=f
+-
+-# Object file extension for compiled f77 test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# No sense in running all these tests if we already determined that
+-# the F77 compiler isn't working.  Some variables (like enable_shared)
+-# are currently assumed to apply to all compilers on this platform,
+-# and will be corrupted by setting them based on a non-working compiler.
+-if test "$_lt_disable_F77" != yes; then
+-  # Code to be used in simple compile tests
+-  lt_simple_compile_test_code="\
+-      subroutine t
+-      return
+-      end
+-"
+-
+-  # Code to be used in simple link tests
+-  lt_simple_link_test_code="\
+-      program t
+-      end
+-"
+-
+-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-  _LT_TAG_COMPILER
+-
+-  # save warnings/boilerplate of simple test code
+-  _LT_COMPILER_BOILERPLATE
+-  _LT_LINKER_BOILERPLATE
+-
+-  # Allow CC to be a program name with arguments.
+-  lt_save_CC="$CC"
+-  lt_save_GCC=$GCC
+-  CC=${F77-"f77"}
+-  compiler=$CC
+-  _LT_TAGVAR(compiler, $1)=$CC
+-  _LT_CC_BASENAME([$compiler])
+-  GCC=$G77
+-  if test -n "$compiler"; then
+-    AC_MSG_CHECKING([if libtool supports shared libraries])
+-    AC_MSG_RESULT([$can_build_shared])
+-
+-    AC_MSG_CHECKING([whether to build shared libraries])
+-    test "$can_build_shared" = "no" && enable_shared=no
+-
+-    # On AIX, shared libraries and static libraries use the same namespace, and
+-    # are all built from PIC.
+-    case $host_os in
+-      aix3*)
+-        test "$enable_shared" = yes && enable_static=no
+-        if test -n "$RANLIB"; then
+-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
+-          postinstall_cmds='$RANLIB $lib'
+-        fi
+-        ;;
+-      aix[[4-9]]*)
+-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+-	  test "$enable_shared" = yes && enable_static=no
+-	fi
+-        ;;
+-    esac
+-    AC_MSG_RESULT([$enable_shared])
+-
+-    AC_MSG_CHECKING([whether to build static libraries])
+-    # Make sure either enable_shared or enable_static is yes.
+-    test "$enable_shared" = yes || enable_static=yes
+-    AC_MSG_RESULT([$enable_static])
+-
+-    _LT_TAGVAR(GCC, $1)="$G77"
+-    _LT_TAGVAR(LD, $1)="$LD"
+-
+-    ## CAVEAT EMPTOR:
+-    ## There is no encapsulation within the following macros, do not change
+-    ## the running order or otherwise move them around unless you know exactly
+-    ## what you are doing...
+-    _LT_COMPILER_PIC($1)
+-    _LT_COMPILER_C_O($1)
+-    _LT_COMPILER_FILE_LOCKS($1)
+-    _LT_LINKER_SHLIBS($1)
+-    _LT_SYS_DYNAMIC_LINKER($1)
+-    _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-    _LT_CONFIG($1)
+-  fi # test -n "$compiler"
+-
+-  GCC=$lt_save_GCC
+-  CC="$lt_save_CC"
+-fi # test "$_lt_disable_F77" != yes
+-
+-AC_LANG_POP
+-])# _LT_LANG_F77_CONFIG
+-
+-
+-# _LT_PROG_FC
+-# -----------
+-# Since AC_PROG_FC is broken, in that it returns the empty string
+-# if there is no fortran compiler, we have our own version here.
+-m4_defun([_LT_PROG_FC],
+-[
+-pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
+-AC_PROG_FC
+-if test -z "$FC" || test "X$FC" = "Xno"; then
+-  _lt_disable_FC=yes
+-fi
+-popdef([AC_MSG_ERROR])
+-])# _LT_PROG_FC
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([_LT_PROG_FC], [])
+-
+-
+-# _LT_LANG_FC_CONFIG([TAG])
+-# -------------------------
+-# Ensure that the configuration variables for a Fortran compiler are
+-# suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_FC_CONFIG],
+-[AC_REQUIRE([_LT_PROG_FC])dnl
+-AC_LANG_PUSH(Fortran)
+-
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-_LT_TAGVAR(allow_undefined_flag, $1)=
+-_LT_TAGVAR(always_export_symbols, $1)=no
+-_LT_TAGVAR(archive_expsym_cmds, $1)=
+-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_direct, $1)=no
+-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+-_LT_TAGVAR(hardcode_libdir_separator, $1)=
+-_LT_TAGVAR(hardcode_minus_L, $1)=no
+-_LT_TAGVAR(hardcode_automatic, $1)=no
+-_LT_TAGVAR(inherit_rpath, $1)=no
+-_LT_TAGVAR(module_cmds, $1)=
+-_LT_TAGVAR(module_expsym_cmds, $1)=
+-_LT_TAGVAR(link_all_deplibs, $1)=unknown
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-_LT_TAGVAR(no_undefined_flag, $1)=
+-_LT_TAGVAR(whole_archive_flag_spec, $1)=
+-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+-
+-# Source file extension for fc test sources.
+-ac_ext=${ac_fc_srcext-f}
+-
+-# Object file extension for compiled fc test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# No sense in running all these tests if we already determined that
+-# the FC compiler isn't working.  Some variables (like enable_shared)
+-# are currently assumed to apply to all compilers on this platform,
+-# and will be corrupted by setting them based on a non-working compiler.
+-if test "$_lt_disable_FC" != yes; then
+-  # Code to be used in simple compile tests
+-  lt_simple_compile_test_code="\
+-      subroutine t
+-      return
+-      end
+-"
+-
+-  # Code to be used in simple link tests
+-  lt_simple_link_test_code="\
+-      program t
+-      end
+-"
+-
+-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-  _LT_TAG_COMPILER
+-
+-  # save warnings/boilerplate of simple test code
+-  _LT_COMPILER_BOILERPLATE
+-  _LT_LINKER_BOILERPLATE
+-
+-  # Allow CC to be a program name with arguments.
+-  lt_save_CC="$CC"
+-  lt_save_GCC=$GCC
+-  CC=${FC-"f95"}
+-  compiler=$CC
+-  GCC=$ac_cv_fc_compiler_gnu
+-
+-  _LT_TAGVAR(compiler, $1)=$CC
+-  _LT_CC_BASENAME([$compiler])
+-
+-  if test -n "$compiler"; then
+-    AC_MSG_CHECKING([if libtool supports shared libraries])
+-    AC_MSG_RESULT([$can_build_shared])
+-
+-    AC_MSG_CHECKING([whether to build shared libraries])
+-    test "$can_build_shared" = "no" && enable_shared=no
+-
+-    # On AIX, shared libraries and static libraries use the same namespace, and
+-    # are all built from PIC.
+-    case $host_os in
+-      aix3*)
+-        test "$enable_shared" = yes && enable_static=no
+-        if test -n "$RANLIB"; then
+-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
+-          postinstall_cmds='$RANLIB $lib'
+-        fi
+-        ;;
+-      aix[[4-9]]*)
+-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+-	  test "$enable_shared" = yes && enable_static=no
+-	fi
+-        ;;
+-    esac
+-    AC_MSG_RESULT([$enable_shared])
+-
+-    AC_MSG_CHECKING([whether to build static libraries])
+-    # Make sure either enable_shared or enable_static is yes.
+-    test "$enable_shared" = yes || enable_static=yes
+-    AC_MSG_RESULT([$enable_static])
+-
+-    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
+-    _LT_TAGVAR(LD, $1)="$LD"
+-
+-    ## CAVEAT EMPTOR:
+-    ## There is no encapsulation within the following macros, do not change
+-    ## the running order or otherwise move them around unless you know exactly
+-    ## what you are doing...
+-    _LT_SYS_HIDDEN_LIBDEPS($1)
+-    _LT_COMPILER_PIC($1)
+-    _LT_COMPILER_C_O($1)
+-    _LT_COMPILER_FILE_LOCKS($1)
+-    _LT_LINKER_SHLIBS($1)
+-    _LT_SYS_DYNAMIC_LINKER($1)
+-    _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-    _LT_CONFIG($1)
+-  fi # test -n "$compiler"
+-
+-  GCC=$lt_save_GCC
+-  CC="$lt_save_CC"
+-fi # test "$_lt_disable_FC" != yes
+-
+-AC_LANG_POP
+-])# _LT_LANG_FC_CONFIG
+-
+-
+-# _LT_LANG_GCJ_CONFIG([TAG])
+-# --------------------------
+-# Ensure that the configuration variables for the GNU Java Compiler compiler
+-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_GCJ_CONFIG],
+-[AC_REQUIRE([LT_PROG_GCJ])dnl
+-AC_LANG_SAVE
+-
+-# Source file extension for Java test sources.
+-ac_ext=java
+-
+-# Object file extension for compiled Java test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# Code to be used in simple compile tests
+-lt_simple_compile_test_code="class foo {}"
+-
+-# Code to be used in simple link tests
+-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
+-
+-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-_LT_TAG_COMPILER
+-
+-# save warnings/boilerplate of simple test code
+-_LT_COMPILER_BOILERPLATE
+-_LT_LINKER_BOILERPLATE
+-
+-# Allow CC to be a program name with arguments.
+-lt_save_CC="$CC"
+-lt_save_GCC=$GCC
+-GCC=yes
+-CC=${GCJ-"gcj"}
+-compiler=$CC
+-_LT_TAGVAR(compiler, $1)=$CC
+-_LT_TAGVAR(LD, $1)="$LD"
+-_LT_CC_BASENAME([$compiler])
+-
+-# GCJ did not exist at the time GCC didn't implicitly link libc in.
+-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+-
+-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+-
+-## CAVEAT EMPTOR:
+-## There is no encapsulation within the following macros, do not change
+-## the running order or otherwise move them around unless you know exactly
+-## what you are doing...
+-if test -n "$compiler"; then
+-  _LT_COMPILER_NO_RTTI($1)
+-  _LT_COMPILER_PIC($1)
+-  _LT_COMPILER_C_O($1)
+-  _LT_COMPILER_FILE_LOCKS($1)
+-  _LT_LINKER_SHLIBS($1)
+-  _LT_LINKER_HARDCODE_LIBPATH($1)
+-
+-  _LT_CONFIG($1)
+-fi
+-
+-AC_LANG_RESTORE
+-
+-GCC=$lt_save_GCC
+-CC="$lt_save_CC"
+-])# _LT_LANG_GCJ_CONFIG
+-
+-
+-# _LT_LANG_RC_CONFIG([TAG])
+-# -------------------------
+-# Ensure that the configuration variables for the Windows resource compiler
+-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
+-# to write the compiler configuration to `libtool'.
+-m4_defun([_LT_LANG_RC_CONFIG],
+-[AC_REQUIRE([LT_PROG_RC])dnl
+-AC_LANG_SAVE
+-
+-# Source file extension for RC test sources.
+-ac_ext=rc
+-
+-# Object file extension for compiled RC test sources.
+-objext=o
+-_LT_TAGVAR(objext, $1)=$objext
+-
+-# Code to be used in simple compile tests
+-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
+-
+-# Code to be used in simple link tests
+-lt_simple_link_test_code="$lt_simple_compile_test_code"
+-
+-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+-_LT_TAG_COMPILER
+-
+-# save warnings/boilerplate of simple test code
+-_LT_COMPILER_BOILERPLATE
+-_LT_LINKER_BOILERPLATE
+-
+-# Allow CC to be a program name with arguments.
+-lt_save_CC="$CC"
+-lt_save_GCC=$GCC
+-GCC=
+-CC=${RC-"windres"}
+-compiler=$CC
+-_LT_TAGVAR(compiler, $1)=$CC
+-_LT_CC_BASENAME([$compiler])
+-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+-
+-if test -n "$compiler"; then
+-  :
+-  _LT_CONFIG($1)
+-fi
+-
+-GCC=$lt_save_GCC
+-AC_LANG_RESTORE
+-CC="$lt_save_CC"
+-])# _LT_LANG_RC_CONFIG
+-
+-
+-# LT_PROG_GCJ
+-# -----------
+-AC_DEFUN([LT_PROG_GCJ],
+-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
+-  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
+-    [AC_CHECK_TOOL(GCJ, gcj,)
+-      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+-      AC_SUBST(GCJFLAGS)])])[]dnl
+-])
+-
+-# Old name:
+-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
+-
+-
+-# LT_PROG_RC
+-# ----------
+-AC_DEFUN([LT_PROG_RC],
+-[AC_CHECK_TOOL(RC, windres,)
+-])
+-
+-# Old name:
+-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([LT_AC_PROG_RC], [])
+-
+-
+-# _LT_DECL_EGREP
+-# --------------
+-# If we don't have a new enough Autoconf to choose the best grep
+-# available, choose the one first in the user's PATH.
+-m4_defun([_LT_DECL_EGREP],
+-[AC_REQUIRE([AC_PROG_EGREP])dnl
+-AC_REQUIRE([AC_PROG_FGREP])dnl
+-test -z "$GREP" && GREP=grep
+-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
+-_LT_DECL([], [EGREP], [1], [An ERE matcher])
+-_LT_DECL([], [FGREP], [1], [A literal string matcher])
+-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
+-AC_SUBST([GREP])
+-])
+-
+-
+-# _LT_DECL_OBJDUMP
+-# --------------
+-# If we don't have a new enough Autoconf to choose the best objdump
+-# available, choose the one first in the user's PATH.
+-m4_defun([_LT_DECL_OBJDUMP],
+-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
+-test -z "$OBJDUMP" && OBJDUMP=objdump
+-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+-AC_SUBST([OBJDUMP])
+-])
+-
+-
+-# _LT_DECL_SED
+-# ------------
+-# Check for a fully-functional sed program, that truncates
+-# as few characters as possible.  Prefer GNU sed if found.
+-m4_defun([_LT_DECL_SED],
+-[AC_PROG_SED
+-test -z "$SED" && SED=sed
+-Xsed="$SED -e 1s/^X//"
+-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
+-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
+-    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
+-])# _LT_DECL_SED
+-
+-m4_ifndef([AC_PROG_SED], [
+-############################################################
+-# NOTE: This macro has been submitted for inclusion into   #
+-#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
+-#  a released version of Autoconf we should remove this    #
+-#  macro and use it instead.                               #
+-############################################################
+-
+-m4_defun([AC_PROG_SED],
+-[AC_MSG_CHECKING([for a sed that does not truncate output])
+-AC_CACHE_VAL(lt_cv_path_SED,
+-[# Loop through the user's path and test for sed and gsed.
+-# Then use that list of sed's as ones to test for truncation.
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+-  IFS=$as_save_IFS
+-  test -z "$as_dir" && as_dir=.
+-  for lt_ac_prog in sed gsed; do
+-    for ac_exec_ext in '' $ac_executable_extensions; do
+-      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+-        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
+-      fi
+-    done
+-  done
+-done
+-IFS=$as_save_IFS
+-lt_ac_max=0
+-lt_ac_count=0
+-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
+-# along with /bin/sed that truncates output.
+-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
+-  test ! -f $lt_ac_sed && continue
+-  cat /dev/null > conftest.in
+-  lt_ac_count=0
+-  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
+-  # Check for GNU sed and select it if it is found.
+-  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
+-    lt_cv_path_SED=$lt_ac_sed
+-    break
+-  fi
+-  while true; do
+-    cat conftest.in conftest.in >conftest.tmp
+-    mv conftest.tmp conftest.in
+-    cp conftest.in conftest.nl
+-    echo >>conftest.nl
+-    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
+-    cmp -s conftest.out conftest.nl || break
+-    # 10000 chars as input seems more than enough
+-    test $lt_ac_count -gt 10 && break
+-    lt_ac_count=`expr $lt_ac_count + 1`
+-    if test $lt_ac_count -gt $lt_ac_max; then
+-      lt_ac_max=$lt_ac_count
+-      lt_cv_path_SED=$lt_ac_sed
+-    fi
+-  done
+-done
+-])
+-SED=$lt_cv_path_SED
+-AC_SUBST([SED])
+-AC_MSG_RESULT([$SED])
+-])#AC_PROG_SED
+-])#m4_ifndef
+-
+-# Old name:
+-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([LT_AC_PROG_SED], [])
+-
+-
+-# _LT_CHECK_SHELL_FEATURES
+-# ------------------------
+-# Find out whether the shell is Bourne or XSI compatible,
+-# or has some other useful features.
+-m4_defun([_LT_CHECK_SHELL_FEATURES],
+-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
+-# Try some XSI features
+-xsi_shell=no
+-( _lt_dummy="a/b/c"
+-  test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+-      = c,a/b,, \
+-    && eval 'test $(( 1 + 1 )) -eq 2 \
+-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+-  && xsi_shell=yes
+-AC_MSG_RESULT([$xsi_shell])
+-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
+-
+-AC_MSG_CHECKING([whether the shell understands "+="])
+-lt_shell_append=no
+-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
+-    >/dev/null 2>&1 \
+-  && lt_shell_append=yes
+-AC_MSG_RESULT([$lt_shell_append])
+-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
+-
+-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+-  lt_unset=unset
+-else
+-  lt_unset=false
+-fi
+-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
+-
+-# test EBCDIC or ASCII
+-case `echo X|tr X '\101'` in
+- A) # ASCII based system
+-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+-  lt_SP2NL='tr \040 \012'
+-  lt_NL2SP='tr \015\012 \040\040'
+-  ;;
+- *) # EBCDIC based system
+-  lt_SP2NL='tr \100 \n'
+-  lt_NL2SP='tr \r\n \100\100'
+-  ;;
+-esac
+-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
+-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+-])# _LT_CHECK_SHELL_FEATURES
+-
+-
+-# _LT_PROG_XSI_SHELLFNS
+-# ---------------------
+-# Bourne and XSI compatible variants of some useful shell functions.
+-m4_defun([_LT_PROG_XSI_SHELLFNS],
+-[case $xsi_shell in
+-  yes)
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+-  case ${1} in
+-    */*) func_dirname_result="${1%/*}${2}" ;;
+-    *  ) func_dirname_result="${3}" ;;
+-  esac
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+-  func_basename_result="${1##*/}"
+-}
+-
+-# func_dirname_and_basename file append nondir_replacement
+-# perform func_basename and func_dirname in a single function
+-# call:
+-#   dirname:  Compute the dirname of FILE.  If nonempty,
+-#             add APPEND to the result, otherwise set result
+-#             to NONDIR_REPLACEMENT.
+-#             value returned in "$func_dirname_result"
+-#   basename: Compute filename of FILE.
+-#             value retuned in "$func_basename_result"
+-# Implementation must be kept synchronized with func_dirname
+-# and func_basename. For efficiency, we do not delegate to
+-# those functions but instead duplicate the functionality here.
+-func_dirname_and_basename ()
+-{
+-  case ${1} in
+-    */*) func_dirname_result="${1%/*}${2}" ;;
+-    *  ) func_dirname_result="${3}" ;;
+-  esac
+-  func_basename_result="${1##*/}"
+-}
+-
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-func_stripname ()
+-{
+-  # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+-  # positional parameters, so assign one to ordinary parameter first.
+-  func_stripname_result=${3}
+-  func_stripname_result=${func_stripname_result#"${1}"}
+-  func_stripname_result=${func_stripname_result%"${2}"}
+-}
+-
+-# func_opt_split
+-func_opt_split ()
+-{
+-  func_opt_split_opt=${1%%=*}
+-  func_opt_split_arg=${1#*=}
+-}
+-
+-# func_lo2o object
+-func_lo2o ()
+-{
+-  case ${1} in
+-    *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+-    *)    func_lo2o_result=${1} ;;
+-  esac
+-}
+-
+-# func_xform libobj-or-source
+-func_xform ()
+-{
+-  func_xform_result=${1%.*}.lo
+-}
+-
+-# func_arith arithmetic-term...
+-func_arith ()
+-{
+-  func_arith_result=$(( $[*] ))
+-}
+-
+-# func_len string
+-# STRING may not start with a hyphen.
+-func_len ()
+-{
+-  func_len_result=${#1}
+-}
+-
+-_LT_EOF
+-    ;;
+-  *) # Bourne compatible functions.
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+-  # Extract subdirectory from the argument.
+-  func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+-  if test "X$func_dirname_result" = "X${1}"; then
+-    func_dirname_result="${3}"
+-  else
+-    func_dirname_result="$func_dirname_result${2}"
+-  fi
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+-  func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+-}
+-
+-dnl func_dirname_and_basename
+-dnl A portable version of this function is already defined in general.m4sh
+-dnl so there is no need for it here.
+-
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-# func_strip_suffix prefix name
+-func_stripname ()
+-{
+-  case ${2} in
+-    .*) func_stripname_result=`$ECHO "X${3}" \
+-           | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
+-    *)  func_stripname_result=`$ECHO "X${3}" \
+-           | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
+-  esac
+-}
+-
+-# sed scripts:
+-my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
+-my_sed_long_arg='1s/^-[[^=]]*=//'
+-
+-# func_opt_split
+-func_opt_split ()
+-{
+-  func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
+-  func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
+-}
+-
+-# func_lo2o object
+-func_lo2o ()
+-{
+-  func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
+-}
+-
+-# func_xform libobj-or-source
+-func_xform ()
+-{
+-  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
+-}
+-
+-# func_arith arithmetic-term...
+-func_arith ()
+-{
+-  func_arith_result=`expr "$[@]"`
+-}
+-
+-# func_len string
+-# STRING may not start with a hyphen.
+-func_len ()
+-{
+-  func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
+-}
+-
+-_LT_EOF
+-esac
+-
+-case $lt_shell_append in
+-  yes)
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_append var value
+-# Append VALUE to the end of shell variable VAR.
+-func_append ()
+-{
+-  eval "$[1]+=\$[2]"
+-}
+-_LT_EOF
+-    ;;
+-  *)
+-    cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_append var value
+-# Append VALUE to the end of shell variable VAR.
+-func_append ()
+-{
+-  eval "$[1]=\$$[1]\$[2]"
+-}
+-
+-_LT_EOF
+-    ;;
+-  esac
+-])
+Index: libiconv-1.13.1/m4/ltoptions.m4
+===================================================================
+--- libiconv-1.13.1.orig/m4/ltoptions.m4
++++ /dev/null
+@@ -1,368 +0,0 @@
+-# Helper functions for option handling.                    -*- Autoconf -*-
+-#
+-#   Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+-#   Written by Gary V. Vaughan, 2004
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# serial 6 ltoptions.m4
+-
+-# This is to help aclocal find these macros, as it can't see m4_define.
+-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
+-
+-
+-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
+-# ------------------------------------------
+-m4_define([_LT_MANGLE_OPTION],
+-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
+-
+-
+-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
+-# ---------------------------------------
+-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
+-# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
+-# saved as a flag.
+-m4_define([_LT_SET_OPTION],
+-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
+-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
+-        _LT_MANGLE_DEFUN([$1], [$2]),
+-    [m4_warning([Unknown $1 option `$2'])])[]dnl
+-])
+-
+-
+-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
+-# ------------------------------------------------------------
+-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+-m4_define([_LT_IF_OPTION],
+-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
+-
+-
+-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
+-# -------------------------------------------------------
+-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
+-# are set.
+-m4_define([_LT_UNLESS_OPTIONS],
+-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+-	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
+-		      [m4_define([$0_found])])])[]dnl
+-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
+-])[]dnl
+-])
+-
+-
+-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
+-# ----------------------------------------
+-# OPTION-LIST is a space-separated list of Libtool options associated
+-# with MACRO-NAME.  If any OPTION has a matching handler declared with
+-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
+-# the unknown option and exit.
+-m4_defun([_LT_SET_OPTIONS],
+-[# Set options
+-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+-    [_LT_SET_OPTION([$1], _LT_Option)])
+-
+-m4_if([$1],[LT_INIT],[
+-  dnl
+-  dnl Simply set some default values (i.e off) if boolean options were not
+-  dnl specified:
+-  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
+-  ])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
+-  ])
+-  dnl
+-  dnl If no reference was made to various pairs of opposing options, then
+-  dnl we run the default mode handler for the pair.  For example, if neither
+-  dnl `shared' nor `disable-shared' was passed, we enable building of shared
+-  dnl archives by default:
+-  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
+-  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
+-  		   [_LT_ENABLE_FAST_INSTALL])
+-  ])
+-])# _LT_SET_OPTIONS
+-
+-
+-## --------------------------------- ##
+-## Macros to handle LT_INIT options. ##
+-## --------------------------------- ##
+-
+-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
+-# -----------------------------------------
+-m4_define([_LT_MANGLE_DEFUN],
+-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
+-
+-
+-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
+-# -----------------------------------------------
+-m4_define([LT_OPTION_DEFINE],
+-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
+-])# LT_OPTION_DEFINE
+-
+-
+-# dlopen
+-# ------
+-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
+-])
+-
+-AU_DEFUN([AC_LIBTOOL_DLOPEN],
+-[_LT_SET_OPTION([LT_INIT], [dlopen])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you
+-put the `dlopen' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
+-
+-
+-# win32-dll
+-# ---------
+-# Declare package support for building win32 dll's.
+-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
+-[enable_win32_dll=yes
+-
+-case $host in
+-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
+-  AC_CHECK_TOOL(AS, as, false)
+-  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+-  AC_CHECK_TOOL(OBJDUMP, objdump, false)
+-  ;;
+-esac
+-
+-test -z "$AS" && AS=as
+-_LT_DECL([], [AS],      [0], [Assembler program])dnl
+-
+-test -z "$DLLTOOL" && DLLTOOL=dlltool
+-_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
+-
+-test -z "$OBJDUMP" && OBJDUMP=objdump
+-_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
+-])# win32-dll
+-
+-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
+-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+-_LT_SET_OPTION([LT_INIT], [win32-dll])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you
+-put the `win32-dll' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
+-
+-
+-# _LT_ENABLE_SHARED([DEFAULT])
+-# ----------------------------
+-# implement the --enable-shared flag, and supports the `shared' and
+-# `disable-shared' LT_INIT options.
+-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+-m4_define([_LT_ENABLE_SHARED],
+-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
+-AC_ARG_ENABLE([shared],
+-    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
+-	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
+-    [p=${PACKAGE-default}
+-    case $enableval in
+-    yes) enable_shared=yes ;;
+-    no) enable_shared=no ;;
+-    *)
+-      enable_shared=no
+-      # Look at the argument we got.  We use all the common list separators.
+-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+-      for pkg in $enableval; do
+-	IFS="$lt_save_ifs"
+-	if test "X$pkg" = "X$p"; then
+-	  enable_shared=yes
+-	fi
+-      done
+-      IFS="$lt_save_ifs"
+-      ;;
+-    esac],
+-    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
+-
+-    _LT_DECL([build_libtool_libs], [enable_shared], [0],
+-	[Whether or not to build shared libraries])
+-])# _LT_ENABLE_SHARED
+-
+-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
+-
+-# Old names:
+-AC_DEFUN([AC_ENABLE_SHARED],
+-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
+-])
+-
+-AC_DEFUN([AC_DISABLE_SHARED],
+-[_LT_SET_OPTION([LT_INIT], [disable-shared])
+-])
+-
+-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
+-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
+-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
+-
+-
+-
+-# _LT_ENABLE_STATIC([DEFAULT])
+-# ----------------------------
+-# implement the --enable-static flag, and support the `static' and
+-# `disable-static' LT_INIT options.
+-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+-m4_define([_LT_ENABLE_STATIC],
+-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
+-AC_ARG_ENABLE([static],
+-    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
+-	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
+-    [p=${PACKAGE-default}
+-    case $enableval in
+-    yes) enable_static=yes ;;
+-    no) enable_static=no ;;
+-    *)
+-     enable_static=no
+-      # Look at the argument we got.  We use all the common list separators.
+-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+-      for pkg in $enableval; do
+-	IFS="$lt_save_ifs"
+-	if test "X$pkg" = "X$p"; then
+-	  enable_static=yes
+-	fi
+-      done
+-      IFS="$lt_save_ifs"
+-      ;;
+-    esac],
+-    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
+-
+-    _LT_DECL([build_old_libs], [enable_static], [0],
+-	[Whether or not to build static libraries])
+-])# _LT_ENABLE_STATIC
+-
+-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
+-
+-# Old names:
+-AC_DEFUN([AC_ENABLE_STATIC],
+-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
+-])
+-
+-AC_DEFUN([AC_DISABLE_STATIC],
+-[_LT_SET_OPTION([LT_INIT], [disable-static])
+-])
+-
+-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
+-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
+-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
+-
+-
+-
+-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
+-# ----------------------------------
+-# implement the --enable-fast-install flag, and support the `fast-install'
+-# and `disable-fast-install' LT_INIT options.
+-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+-m4_define([_LT_ENABLE_FAST_INSTALL],
+-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
+-AC_ARG_ENABLE([fast-install],
+-    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
+-    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
+-    [p=${PACKAGE-default}
+-    case $enableval in
+-    yes) enable_fast_install=yes ;;
+-    no) enable_fast_install=no ;;
+-    *)
+-      enable_fast_install=no
+-      # Look at the argument we got.  We use all the common list separators.
+-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+-      for pkg in $enableval; do
+-	IFS="$lt_save_ifs"
+-	if test "X$pkg" = "X$p"; then
+-	  enable_fast_install=yes
+-	fi
+-      done
+-      IFS="$lt_save_ifs"
+-      ;;
+-    esac],
+-    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
+-
+-_LT_DECL([fast_install], [enable_fast_install], [0],
+-	 [Whether or not to optimize for fast installation])dnl
+-])# _LT_ENABLE_FAST_INSTALL
+-
+-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
+-
+-# Old names:
+-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
+-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+-the `fast-install' option into LT_INIT's first parameter.])
+-])
+-
+-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
+-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+-the `disable-fast-install' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
+-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
+-
+-
+-# _LT_WITH_PIC([MODE])
+-# --------------------
+-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
+-# LT_INIT options.
+-# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
+-m4_define([_LT_WITH_PIC],
+-[AC_ARG_WITH([pic],
+-    [AS_HELP_STRING([--with-pic],
+-	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
+-    [pic_mode="$withval"],
+-    [pic_mode=default])
+-
+-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
+-
+-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
+-])# _LT_WITH_PIC
+-
+-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
+-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
+-
+-# Old name:
+-AU_DEFUN([AC_LIBTOOL_PICMODE],
+-[_LT_SET_OPTION([LT_INIT], [pic-only])
+-AC_DIAGNOSE([obsolete],
+-[$0: Remove this warning and the call to _LT_SET_OPTION when you
+-put the `pic-only' option into LT_INIT's first parameter.])
+-])
+-
+-dnl aclocal-1.4 backwards compatibility:
+-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
+-
+-## ----------------- ##
+-## LTDL_INIT Options ##
+-## ----------------- ##
+-
+-m4_define([_LTDL_MODE], [])
+-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
+-		 [m4_define([_LTDL_MODE], [nonrecursive])])
+-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
+-		 [m4_define([_LTDL_MODE], [recursive])])
+-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
+-		 [m4_define([_LTDL_MODE], [subproject])])
+-
+-m4_define([_LTDL_TYPE], [])
+-LT_OPTION_DEFINE([LTDL_INIT], [installable],
+-		 [m4_define([_LTDL_TYPE], [installable])])
+-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
+-		 [m4_define([_LTDL_TYPE], [convenience])])
+Index: libiconv-1.13.1/m4/ltsugar.m4
+===================================================================
+--- libiconv-1.13.1.orig/m4/ltsugar.m4
++++ /dev/null
+@@ -1,123 +0,0 @@
+-# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
+-#
+-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+-# Written by Gary V. Vaughan, 2004
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# serial 6 ltsugar.m4
+-
+-# This is to help aclocal find these macros, as it can't see m4_define.
+-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
+-
+-
+-# lt_join(SEP, ARG1, [ARG2...])
+-# -----------------------------
+-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
+-# associated separator.
+-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
+-# versions in m4sugar had bugs.
+-m4_define([lt_join],
+-[m4_if([$#], [1], [],
+-       [$#], [2], [[$2]],
+-       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
+-m4_define([_lt_join],
+-[m4_if([$#$2], [2], [],
+-       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
+-
+-
+-# lt_car(LIST)
+-# lt_cdr(LIST)
+-# ------------
+-# Manipulate m4 lists.
+-# These macros are necessary as long as will still need to support
+-# Autoconf-2.59 which quotes differently.
+-m4_define([lt_car], [[$1]])
+-m4_define([lt_cdr],
+-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
+-       [$#], 1, [],
+-       [m4_dquote(m4_shift($@))])])
+-m4_define([lt_unquote], $1)
+-
+-
+-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
+-# ------------------------------------------
+-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
+-# Note that neither SEPARATOR nor STRING are expanded; they are appended
+-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
+-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
+-# than defined and empty).
+-#
+-# This macro is needed until we can rely on Autoconf 2.62, since earlier
+-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
+-m4_define([lt_append],
+-[m4_define([$1],
+-	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
+-
+-
+-
+-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
+-# ----------------------------------------------------------
+-# Produce a SEP delimited list of all paired combinations of elements of
+-# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
+-# has the form PREFIXmINFIXSUFFIXn.
+-# Needed until we can rely on m4_combine added in Autoconf 2.62.
+-m4_define([lt_combine],
+-[m4_if(m4_eval([$# > 3]), [1],
+-       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
+-[[m4_foreach([_Lt_prefix], [$2],
+-	     [m4_foreach([_Lt_suffix],
+-		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
+-	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
+-
+-
+-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
+-# -----------------------------------------------------------------------
+-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
+-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
+-m4_define([lt_if_append_uniq],
+-[m4_ifdef([$1],
+-	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
+-		 [lt_append([$1], [$2], [$3])$4],
+-		 [$5])],
+-	  [lt_append([$1], [$2], [$3])$4])])
+-
+-
+-# lt_dict_add(DICT, KEY, VALUE)
+-# -----------------------------
+-m4_define([lt_dict_add],
+-[m4_define([$1($2)], [$3])])
+-
+-
+-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
+-# --------------------------------------------
+-m4_define([lt_dict_add_subkey],
+-[m4_define([$1($2:$3)], [$4])])
+-
+-
+-# lt_dict_fetch(DICT, KEY, [SUBKEY])
+-# ----------------------------------
+-m4_define([lt_dict_fetch],
+-[m4_ifval([$3],
+-	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
+-    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
+-
+-
+-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
+-# -----------------------------------------------------------------
+-m4_define([lt_if_dict_fetch],
+-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
+-	[$5],
+-    [$6])])
+-
+-
+-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
+-# --------------------------------------------------------------
+-m4_define([lt_dict_filter],
+-[m4_if([$5], [], [],
+-  [lt_join(m4_quote(m4_default([$4], [[, ]])),
+-           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
+-		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
+-])
+Index: libiconv-1.13.1/m4/ltversion.m4
+===================================================================
+--- libiconv-1.13.1.orig/m4/ltversion.m4
++++ /dev/null
+@@ -1,23 +0,0 @@
+-# ltversion.m4 -- version numbers			-*- Autoconf -*-
+-#
+-#   Copyright (C) 2004 Free Software Foundation, Inc.
+-#   Written by Scott James Remnant, 2004
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# Generated from ltversion.in.
+-
+-# serial 3012 ltversion.m4
+-# This file is part of GNU Libtool
+-
+-m4_define([LT_PACKAGE_VERSION], [2.2.6])
+-m4_define([LT_PACKAGE_REVISION], [1.3012])
+-
+-AC_DEFUN([LTVERSION_VERSION],
+-[macro_version='2.2.6'
+-macro_revision='1.3012'
+-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
+-_LT_DECL(, macro_revision, 0)
+-])
+Index: libiconv-1.13.1/m4/lt~obsolete.m4
+===================================================================
+--- libiconv-1.13.1.orig/m4/lt~obsolete.m4
++++ /dev/null
+@@ -1,92 +0,0 @@
+-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
+-#
+-#   Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
+-#   Written by Scott James Remnant, 2004.
+-#
+-# This file is free software; the Free Software Foundation gives
+-# unlimited permission to copy and/or distribute it, with or without
+-# modifications, as long as this notice is preserved.
+-
+-# serial 4 lt~obsolete.m4
+-
+-# These exist entirely to fool aclocal when bootstrapping libtool.
+-#
+-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
+-# which have later been changed to m4_define as they aren't part of the
+-# exported API, or moved to Autoconf or Automake where they belong.
+-#
+-# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
+-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
+-# using a macro with the same name in our local m4/libtool.m4 it'll
+-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
+-# and doesn't know about Autoconf macros at all.)
+-#
+-# So we provide this file, which has a silly filename so it's always
+-# included after everything else.  This provides aclocal with the
+-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
+-# because those macros already exist, or will be overwritten later.
+-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
+-#
+-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
+-# Yes, that means every name once taken will need to remain here until
+-# we give up compatibility with versions before 1.7, at which point
+-# we need to keep only those names which we still refer to.
+-
+-# This is to help aclocal find these macros, as it can't see m4_define.
+-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
+-
+-m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
+-m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
+-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
+-m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
+-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
+-m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
+-m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
+-m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
+-m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
+-m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
+-m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
+-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
+-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
+-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
+-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
+-m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
+-m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
+-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
+-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
+-m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
+-m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
+-m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
+-m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
+-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
+-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
+-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
+-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
+-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
+-m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
+-m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
+-m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
+-m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
+-m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
+-m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
+-m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
+-m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
+-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
+-m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
+-m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
+-m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
+-m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
+-m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
+-m4_ifndef([AC_LIBTOOL_RC],		[AC_DEFUN([AC_LIBTOOL_RC])])
+-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
+-m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
+-m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
+-m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
diff --git a/meta-oe/recipes-support/libiconv/libiconv.inc b/meta-oe/recipes-support/libiconv/libiconv.inc
new file mode 100644
index 0000000..11dfaf2
--- /dev/null
+++ b/meta-oe/recipes-support/libiconv/libiconv.inc
@@ -0,0 +1,15 @@
+DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \
+multiple character encodings, but that support lacks from your system."
+HOMEPAGE = "http://www.gnu.org/software/libiconv"
+SECTION = "libs"
+PRIORITY = "optional"
+NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8"
+
+SRC_URI = "ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-${PV}.tar.gz \
+          "
+
+S = "${WORKDIR}/libiconv-${PV}"
+
+inherit autotools gettext
+
+EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
diff --git a/meta-oe/recipes-support/libiconv/libiconv_1.13.1.bb b/meta-oe/recipes-support/libiconv/libiconv_1.13.1.bb
new file mode 100644
index 0000000..bdfb898
--- /dev/null
+++ b/meta-oe/recipes-support/libiconv/libiconv_1.13.1.bb
@@ -0,0 +1,25 @@
+require libiconv.inc
+LICENSE = "GPLv3 LGPLv2"
+BBCLASSEXTEND = "native nativesdk"
+
+PROVIDES = "virtual/libiconv"
+PR = "r1"
+
+#gettext.class cant be inherit here so use this hack
+DEPENDS = "${@['','gettext-native'][bb.data.getVar('USE_NLS', d, 1) == 'yes']}"
+
+EXTRA_OECONF +=  "${@['--disable-nls','--enable-nls'][bb.data.getVar('USE_NLS', d, 1) == 'yes']}"
+
+SRC_URI += "file://autoconf.patch"
+
+do_configure_append () {
+        # Fix stupid libtool... handling. 
+        # rpath handling can't be disabled and the Makefile's can't be regenerated..
+        # (GNU sed required)
+        sed -i s/^hardcode_libdir_flag_spec/#hardcode_libdir_flag_spec/ ${S}/*-libtool
+}
+
+LEAD_SONAME = "libiconv.so"
+SRC_URI[md5sum] = "7ab33ebd26687c744a37264a330bbe9a"
+SRC_URI[sha256sum] = "55a36168306089009d054ccdd9d013041bfc3ab26be7033d107821f1c4949a49"
+
diff --git a/meta-oe/recipes-support/libnl/libnl.inc b/meta-oe/recipes-support/libnl/libnl.inc
new file mode 100644
index 0000000..6f502b1
--- /dev/null
+++ b/meta-oe/recipes-support/libnl/libnl.inc
@@ -0,0 +1,9 @@
+DESCRIPTION = "libnl is a library for applications dealing with netlink sockets"
+SECTION = "libs/network"
+LICENSE = "LGPL"
+HOMEPAGE = "http://www.infradead.org/~tgr/libnl/"
+
+INC_PR = "r5"
+
+inherit autotools pkgconfig
+
diff --git a/meta-oe/recipes-support/libnl/libnl/fix-pc-file.patch b/meta-oe/recipes-support/libnl/libnl/fix-pc-file.patch
new file mode 100644
index 0000000..17666fb
--- /dev/null
+++ b/meta-oe/recipes-support/libnl/libnl/fix-pc-file.patch
@@ -0,0 +1,11 @@
+Index: libnl-2.0/libnl-2.0.pc.in
+===================================================================
+--- libnl-2.0.orig/libnl-2.0.pc.in
++++ libnl-2.0/libnl-2.0.pc.in
+@@ -6,5 +6,5 @@
+ Name: libnl
+ Description: Convenience library for netlink sockets
+ Version: @PACKAGE_VERSION@
+-Libs: -L${libdir} -lnl
++Libs: -L${libdir} -lnl -lnl-genl -lnl-nf -lnl-route
+ Cflags: -I${includedir}
diff --git a/meta-oe/recipes-support/libnl/libnl/fix-pktloc-dep-race.patch b/meta-oe/recipes-support/libnl/libnl/fix-pktloc-dep-race.patch
new file mode 100644
index 0000000..ee21744
--- /dev/null
+++ b/meta-oe/recipes-support/libnl/libnl/fix-pktloc-dep-race.patch
@@ -0,0 +1,20 @@
+Index: libnl-2.0/lib/Makefile.am
+===================================================================
+--- libnl-2.0.orig/lib/Makefile.am
++++ libnl-2.0/lib/Makefile.am
+@@ -27,11 +27,15 @@ CLEANFILES = \
+ 	route/pktloc_grammar.c route/pktloc_grammar.h \
+ 	route/pktloc_syntax.c route/pktloc_syntax.h
+ 
++BUILT_SOURCES = route/pktloc_syntax.h route/pktloc_grammar.h
++
+ # Hack to avoid using ylwrap. It does not function correctly in combination
+ # with --header-file=
++route/pktloc_grammar.h: route/pktloc_grammar.c
+ route/pktloc_grammar.c: route/pktloc_grammar.l
+ 	$(LEX) --header-file=route/pktloc_grammar.h $(LFLAGS) -o $@ $^
+ 
++route/pktloc_syntax.h: route/pktloc_syntax.c
+ route/pktloc_syntax.c: route/pktloc_syntax.y
+ 	$(YACC) -d $(YFLAGS) -o $@ $^
+ 
diff --git a/meta-oe/recipes-support/libnl/libnl_2.0.bb b/meta-oe/recipes-support/libnl/libnl_2.0.bb
new file mode 100644
index 0000000..e646e3d
--- /dev/null
+++ b/meta-oe/recipes-support/libnl/libnl_2.0.bb
@@ -0,0 +1,23 @@
+require libnl.inc
+PE = "1"
+PR = "${INC_PR}.0"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2b41e13261a330ee784153ecbb6a82bc"
+
+DEPENDS = "flex-native bison-native"
+
+SRC_URI = "\
+  http://www.infradead.org/~tgr/libnl/files/libnl-${PV}.tar.gz \
+  file://fix-pc-file.patch \
+  file://fix-pktloc-dep-race.patch \
+"
+
+SRC_URI[md5sum] = "6aaf1e9802a17a7d702bb0638044ffa7"
+SRC_URI[sha256sum] = "5a40dc903d3ca1074da7424b908bec8ff16936484798c7e46e53e9db8bc87a9c"
+
+PACKAGES =+ "${PN}-route ${PN}-nf ${PN}-genl ${PN}-cli"
+FILES_${PN}-route = "${libdir}/libnl-route.so.*"
+FILES_${PN}-nf    = "${libdir}/libnl-nf.so.*"
+FILES_${PN}-genl  = "${libdir}/libnl-genl.so.*"
+FILES_${PN}-cli   = "${libdir}/libnl-cli.so.*"
diff --git a/meta-oe/recipes-support/libnl/libnl_git.bb b/meta-oe/recipes-support/libnl/libnl_git.bb
new file mode 100644
index 0000000..a4a37a8
--- /dev/null
+++ b/meta-oe/recipes-support/libnl/libnl_git.bb
@@ -0,0 +1,20 @@
+require libnl.inc
+
+PE = "1"
+PV = "1.9+gitr${SRCPV}"
+PR = "${INC_PR}.0"
+
+DEPENDS = "flex-native bison-native"
+
+S = "${WORKDIR}/git"
+SRCREV = "d378220c96c3c8b6f27dca33e7d8ba03318f9c2d"
+SRC_URI = "\
+  git://git.kernel.org/pub/scm/libs/netlink/libnl.git;protocol=git \
+  file://fix-pc-file.patch \
+"
+
+PACKAGES =+ "${PN}-route ${PN}-nf ${PN}-genl ${PN}-cli"
+FILES_${PN}-route = "${libdir}/libnl-route.so.*"
+FILES_${PN}-nf    = "${libdir}/libnl-nf.so.*"
+FILES_${PN}-genl  = "${libdir}/libnl-genl.so.*"
+FILES_${PN}-cli   = "${libdir}/libnl-cli.so.*"
diff --git a/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf-2.0.10/configure.patch b/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf-2.0.10/configure.patch
new file mode 100644
index 0000000..2069644
--- /dev/null
+++ b/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf-2.0.10/configure.patch
@@ -0,0 +1,13 @@
+Index: SDL_ttf-2.0.10/configure.in
+===================================================================
+--- SDL_ttf-2.0.10.orig/configure.in	2010-10-15 10:54:51.392730531 +0200
++++ SDL_ttf-2.0.10/configure.in	2010-10-15 10:55:06.382727473 +0200
+@@ -25,6 +25,8 @@
+ AC_SUBST(BINARY_AGE)
+ AC_SUBST(VERSION)
+ 
++AC_CONFIG_MACRO_DIR([acinclude])
++
+ # libtool versioning
+ LT_INIT([win32-dll])
+ 
diff --git a/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.10.bb b/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.10.bb
new file mode 100644
index 0000000..f02c8f6
--- /dev/null
+++ b/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.10.bb
@@ -0,0 +1,30 @@
+DESCRIPTION = "Simple DirectMedia Layer truetype font library."
+SECTION = "libs"
+PRIORITY = "optional"
+DEPENDS = "virtual/libsdl freetype"
+LICENSE = "LGPL"
+PR = "r1"
+
+SRC_URI = "http://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-${PV}.tar.gz \
+           file://configure.patch \
+          "
+
+S = "${WORKDIR}/SDL_ttf-${PV}"
+EXTRA_OECONF += "SDL_CONFIG=${STAGING_BINDIR_CROSS}/sdl-config "
+
+inherit autotools
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_configure_prepend() {
+  
+   MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4"
+ 
+   for i in ${MACROS}; do
+     rm acinclude/$i
+   done
+
+}
+
+SRC_URI[md5sum] = "814e6e17e8879254208d23b3b7e0354b"
+SRC_URI[sha256sum] = "7d38704bcc7c34029c2dcb73b2d4857e8ad76341c6e0faed279eb9f743c66c6a"
diff --git a/meta-oe/recipes-support/libyaml/libyaml_0.1.3.bb b/meta-oe/recipes-support/libyaml/libyaml_0.1.3.bb
new file mode 100644
index 0000000..702ed55
--- /dev/null
+++ b/meta-oe/recipes-support/libyaml/libyaml_0.1.3.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "LibYAML is a YAML parser and emitter written in C."
+HOMEPAGE = "http://pyyaml.org/wiki/LibYAML"
+SECTION = "libs/devel"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=6015f088759b10e0bc2bf64898d4ae17"
+PR="r0"
+
+SRC_URI = "http://pyyaml.org/download/libyaml/yaml-${PV}.tar.gz;name=libyaml"
+SRC_URI[libyaml.md5sum] = "b8ab9064e8e0330423fe640de76608cd"
+SRC_URI[libyaml.sha256sum] = "a8bbad7e5250b3735126b7e3bd9f6fce9db19d6be7cc13abad17a24b59ec144a"
+
+S = "${WORKDIR}/yaml-${PV}"
+
+inherit autotools
diff --git a/meta-oe/recipes-support/lzma/lzma-4.65/001-large_files.patch b/meta-oe/recipes-support/lzma/lzma-4.65/001-large_files.patch
new file mode 100644
index 0000000..b95fe9e
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma-4.65/001-large_files.patch
@@ -0,0 +1,13 @@
+Index: lzma-4.65/CPP/7zip/Compress/LZMA_Alone/makefile.gcc
+===================================================================
+--- lzma-4.65.orig/CPP/7zip/Compress/LZMA_Alone/makefile.gcc	2009-05-15 23:33:51.000000000 +0200
++++ lzma-4.65/CPP/7zip/Compress/LZMA_Alone/makefile.gcc	2009-06-01 22:00:54.000000000 +0200
+@@ -3,7 +3,7 @@
+ CXX_C = gcc -O2 -Wall
+ LIB = -lm
+ RM = rm -f
+-CFLAGS = -c
++CFLAGS = -c -D_FILE_OFFSET_BITS=64
+ 
+ ifdef SystemDrive
+ IS_MINGW = 1
diff --git a/meta-oe/recipes-support/lzma/lzma-4.65/002-lzmp.patch b/meta-oe/recipes-support/lzma/lzma-4.65/002-lzmp.patch
new file mode 100644
index 0000000..72d881c
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma-4.65/002-lzmp.patch
@@ -0,0 +1,1059 @@
+Index: lzma-4.65/CPP/7zip/Compress/LZMA_Alone/lzmp.cpp
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ lzma-4.65/CPP/7zip/Compress/LZMA_Alone/lzmp.cpp	2009-06-01 22:01:10.000000000 +0200
+@@ -0,0 +1,895 @@
++/*
++ * LZMA command line tool similar to gzip to encode and decode LZMA files.
++ *
++ * Copyright (C) 2005 Ville Koskinen
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2
++ * of the License, or (at your option) any later version.
++ *
++ * This program 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 General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
++ * USA.
++ */
++
++#include "../../../Common/MyInitGuid.h"
++
++#include <iostream>
++using std::cout;
++using std::cerr;
++using std::endl;
++
++#include <cstdio>
++#include <cstdlib>
++#include <cstring>
++
++#include <string>
++using std::string;
++#include <vector>
++using std::vector;
++typedef vector<string> stringVector;
++
++#include <unistd.h>
++#include <getopt.h>
++#include <signal.h>
++
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <utime.h>
++#include <sys/time.h> // futimes()
++
++// For Solaris
++#ifndef HAVE_FUTIMES
++//#define futimes(fd, tv) futimesat(fd, NULL, tv)
++#endif
++
++#if defined(_WIN32) || defined(OS2) || defined(MSDOS)
++#include <fcntl.h>
++#include <io.h>
++#define MY_SET_BINARY_MODE(file) setmode(fileno(file),O_BINARY)
++#else
++#define MY_SET_BINARY_MODE(file)
++#endif
++
++#include "../../../7zip/Common/FileStreams.h"
++
++#include "../../../Common/Types.h"
++
++#include "../../../7zip/Compress/LzmaDecoder.h"
++#include "../../../7zip/Compress/LzmaEncoder.h"
++
++#include "Exception.h"
++
++#include "lzma_version.h"
++
++namespace lzma {
++
++const char *PROGRAM_VERSION = PACKAGE_VERSION;
++const char *PROGRAM_COPYRIGHT = "Copyright (C) 2006 Ville Koskinen";
++
++/* LZMA_Alone switches:
++    -a{N}:  set compression mode - [0, 2], default: 2 (max)
++    -d{N}:  set dictionary - [0,28], default: 23 (8MB)
++    -fb{N}: set number of fast bytes - [5, 255], default: 128
++    -lc{N}: set number of literal context bits - [0, 8], default: 3
++    -lp{N}: set number of literal pos bits - [0, 4], default: 0
++    -pb{N}: set number of pos bits - [0, 4], default: 2
++    -mf{MF_ID}: set Match Finder: [bt2, bt3, bt4, bt4b, pat2r, pat2,
++                pat2h, pat3h, pat4h, hc3, hc4], default: bt4
++*/
++
++struct lzma_option {
++	short compression_mode;			// -a
++	short dictionary;			// -d
++	short fast_bytes;			// -fb
++	wchar_t *match_finder;			// -mf
++	short literal_context_bits;		// -lc
++	short literal_pos_bits;			// -lp
++	short pos_bits;				// -pb
++};
++
++/* The following is a mapping from gzip/bzip2 style -1 .. -9 compression modes
++ * to the corresponding LZMA compression modes. Thanks, Larhzu, for coining
++ * these. */
++const lzma_option option_mapping[] = {
++	{ 0,  0,  0,    NULL, 0, 0, 0},		// -0 (needed for indexing)
++	{ 0, 16, 64,  L"hc4", 3, 0, 2},		// -1
++	{ 0, 20, 64,  L"hc4", 3, 0, 2},		// -2
++	{ 1, 19, 64,  L"bt4", 3, 0, 2},		// -3
++	{ 2, 20, 64,  L"bt4", 3, 0, 2},		// -4
++	{ 2, 21, 128, L"bt4", 3, 0, 2},		// -5
++	{ 2, 22, 128, L"bt4", 3, 0, 2},		// -6
++	{ 2, 23, 128, L"bt4", 3, 0, 2},		// -7
++	{ 2, 24, 255, L"bt4", 3, 0, 2},		// -8
++	{ 2, 25, 255, L"bt4", 3, 0, 2},		// -9
++};
++
++struct extension_pair {
++	char *from;
++	char *to;
++};
++
++const extension_pair known_extensions[] = {
++	{ ".lzma", "" },
++	{ ".tlz", ".tar" },
++	{ NULL, NULL }
++};
++
++/* Sorry, I just happen to like enumerations. */
++enum PROGRAM_MODE {
++	PM_COMPRESS = 0,
++	PM_DECOMPRESS,
++	PM_TEST,
++	PM_HELP,
++	PM_LICENSE,
++	PM_VERSION
++};
++
++enum {
++	STATUS_OK = 0,
++	STATUS_ERROR = 1,
++	STATUS_WARNING = 2
++};
++
++/* getopt options. */
++/* struct option { name, has_arg, flag, val } */
++const struct option long_options[] = {
++	{ "stdout", 0, 0, 'c' },
++	{ "decompress", 0, 0, 'd' },
++	{ "compress", 0, 0, 'z' },
++	{ "keep", 0, 0, 'k' },
++	{ "force", 0, 0, 'f' },
++	{ "test", 0, 0, 't' },
++	{ "suffix", 1, 0, 'S' },
++	{ "quiet", 0, 0, 'q' },
++	{ "verbose", 0, 0, 'v' },
++	{ "help", 0, 0, 'h' },
++	{ "license", 0, 0, 'L' },
++	{ "version", 0, 0, 'V' },
++	{ "fast", 0, 0, '1' },
++	{ "best", 0, 0, '9' },
++	{ 0, 0, 0, 0 }
++};
++
++/* getopt option string (for the above options). */
++const char option_string[] = "cdzkftS:qvhLV123456789A:D:F:";
++
++/* Defaults. */
++PROGRAM_MODE program_mode = PM_COMPRESS;
++int	verbosity			= 0;
++bool	stdinput			= false;
++bool	stdoutput			= false;
++bool	keep				= false;
++bool	force				= false;
++int	compression_mode		= 7;
++//char	*suffix				= strdup(".lzma");
++char	*suffix				= strdup(known_extensions[0].from);
++lzma_option	advanced_options 	= { -1, -1, -1, NULL, -1, -1, -1 };
++
++void print_help(const char *const argv0)
++{
++	// Help goes to stdout while other messages go to stderr.
++	cout << "\nlzma " << PROGRAM_VERSION
++		<< " " << PROGRAM_COPYRIGHT << "\n"
++		"Based on LZMA SDK " << LZMA_SDK_VERSION_STRING << " "
++		<< LZMA_SDK_COPYRIGHT_STRING
++		<< "\n\nUsage: " << argv0
++		<< " [flags and input files in any order]\n"
++"  -c --stdout       output to standard output\n"
++"  -d --decompress   force decompression\n"
++"  -z --compress     force compression\n"
++"  -k --keep         keep (don't delete) input files\n"
++"  -f --force        force overwrite of output file and compress links\n"
++"  -t --test         test compressed file integrity\n"
++"  -S .suf  --suffix .suf   use suffix .suf on compressed files\n"
++"  -q --quiet        suppress error messages\n"
++"  -v --verbose      be verbose\n"
++"  -h --help         print this message\n"
++"  -L --license      display the license information\n"
++"  -V --version      display version numbers of LZMA SDK and lzma\n"
++"  -1 .. -2          fast compression\n"
++"  -3 .. -9          good to excellent compression. -7 is the default.\n"
++"     --fast         alias for -1\n"
++"     --best         alias for -9 (usually *not* what you want)\n\n"
++"  Memory usage depends a lot on the chosen compression mode -1 .. -9.\n"
++"  See the man page lzma(1) for details.\n\n";
++}
++
++void print_license(void)
++{
++	cout << "\n  LZMA command line tool " << PROGRAM_VERSION << " - "
++		<< PROGRAM_COPYRIGHT
++		<< "\n  LZMA SDK " << LZMA_SDK_VERSION_STRING << " - "
++		<< LZMA_SDK_COPYRIGHT_STRING
++		<< "\n  This program is a part of the LZMA utils package.\n"
++		"  http://tukaani.org/lzma/\n\n"
++"  This program is free software; you can redistribute it and/or\n"
++"  modify it under the terms of the GNU General Public License\n"
++"  as published by the Free Software Foundation; either version 2\n"
++"  of the License, or (at your option) any later version.\n"
++"\n"
++"  This program is distributed in the hope that it will be useful,\n"
++"  but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
++"  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n"
++"  GNU General Public License for more details.\n"
++"\n";
++}
++
++void print_version(void)
++{
++	cout << "LZMA command line tool " << PROGRAM_VERSION << "\n"
++		<< "LZMA SDK " << LZMA_SDK_VERSION_STRING << "\n";
++}
++
++short str2int (const char *str, const int &min, const int &max)
++{
++	int value = -1;
++	char *endptr = NULL;
++	if (str == NULL || str[0] == '\0')
++		throw ArgumentException("Invalid integer option");
++	value = strtol (str, &endptr, 10);
++	if (*endptr != '\0' || value < min || value > max)
++		throw ArgumentException("Invalid integer option");
++	return value;
++}
++
++void parse_options(int argc, char **argv, stringVector &filenames)
++{
++	/* Snatched from getopt(3). */
++	int c;
++
++	/* Check how we were called */
++	{
++		char *p = strrchr (argv[0], '/'); // Remove path prefix, if any
++		if (p++ == NULL)
++			p = argv[0];
++		if (strstr (p, "un") != NULL) {
++			program_mode = PM_DECOMPRESS;
++		} else if (strstr (p, "cat") != NULL) {
++			program_mode = PM_DECOMPRESS;
++			stdoutput = true;
++		}
++	}
++
++	while (-1 != (c = getopt_long(argc, argv, option_string,
++			long_options, NULL))) {
++		switch (c) {
++			// stdout
++			case 'c':
++				stdoutput = true;
++				break;
++
++			// decompress
++			case 'd':
++				program_mode = PM_DECOMPRESS;
++				break;
++
++			// compress
++			case 'z':
++				program_mode = PM_COMPRESS;
++				break;
++
++			// keep
++			case 'k':
++				keep = true;
++				break;
++
++			// force
++			case 'f':
++				force = true;
++				break;
++
++			// test
++			case 't':
++				program_mode = PM_TEST;
++				break;
++
++			// suffix
++			case 'S':
++				if (optarg) {
++					free(suffix);
++					suffix = strdup(optarg);
++				}
++				break;
++
++			// quiet
++			case 'q':
++				verbosity = 0;
++				break;
++
++			// verbose
++			case 'v':
++				verbosity++;
++				break;
++
++			// help
++			case 'h':
++				program_mode = PM_HELP;
++				break;
++
++			// license
++			case 'L':
++				program_mode = PM_LICENSE;
++				break;
++
++			// version
++			case 'V':
++				program_mode = PM_VERSION;
++				break;
++
++			case '1': case '2': case '3': case '4': case '5':
++			case '6': case '7': case '8': case '9':
++				compression_mode = c - '0';
++				break;
++
++			// Advanced options //
++			// Compression mode
++			case 'A':
++				advanced_options.compression_mode =
++						str2int (optarg, 0, 2);
++				break;
++
++			// Dictionary size
++			case 'D':
++				advanced_options.dictionary =
++						str2int (optarg, 0, 28);
++				break;
++
++			// Fast bytes
++			case 'F':
++				advanced_options.fast_bytes =
++						str2int (optarg, 0, 273);
++				break;
++
++			default:
++				throw ArgumentException("");
++				break;
++		} // switch(c)
++	} // while(1)
++
++	for (int i = optind; i < argc; i++) {
++		if (strcmp("-", argv[i]) == 0)
++			continue;
++		filenames.push_back(argv[i]);
++	}
++} // parse_options
++
++void set_encoder_properties(NCompress::NLzma::CEncoder *encoder,
++		lzma_option &opt)
++{
++	/* Almost verbatim from LzmaAlone.cpp. */
++	    PROPID propIDs[] =
++	{
++		NCoderPropID::kDictionarySize,
++		NCoderPropID::kPosStateBits,
++		NCoderPropID::kLitContextBits,
++		NCoderPropID::kLitPosBits,
++		NCoderPropID::kAlgorithm,
++		NCoderPropID::kNumFastBytes,
++		NCoderPropID::kMatchFinder,
++		NCoderPropID::kEndMarker
++	};
++	const int kNumProps = sizeof(propIDs) / sizeof(propIDs[0]);
++#define VALUE(x) (advanced_options.x >= 0 ? advanced_options.x : opt.x)
++	PROPVARIANT properties[kNumProps];
++	for (int p = 0; p < 6; p++)
++		properties[p].vt = VT_UI4;
++	properties[0].ulVal = UInt32(1 << VALUE (dictionary));
++	properties[1].ulVal = UInt32(VALUE (pos_bits));
++	properties[2].ulVal = UInt32(VALUE (literal_context_bits));
++	properties[3].ulVal = UInt32(VALUE (literal_pos_bits));
++	properties[4].ulVal = UInt32(VALUE (compression_mode));
++	properties[5].ulVal = UInt32(VALUE (fast_bytes));
++#undef VALUE
++
++	properties[6].vt = VT_BSTR;
++	properties[6].bstrVal = (BSTR)opt.match_finder;
++
++	properties[7].vt = VT_BOOL;
++	properties[7].boolVal = stdinput ? VARIANT_TRUE : VARIANT_FALSE;
++
++	if (encoder->SetCoderProperties(propIDs, properties, kNumProps) != S_OK)
++		throw Exception("SetCoderProperties() error");
++}
++
++void encode(NCompress::NLzma::CEncoder *encoderSpec,
++		CMyComPtr<ISequentialInStream> inStream,
++		CMyComPtr<ISequentialOutStream> outStream,
++		lzma_option encoder_options,
++		UInt64 fileSize)
++{
++	set_encoder_properties(encoderSpec, encoder_options);
++
++	encoderSpec->WriteCoderProperties(outStream);
++
++	for (int i = 0; i < 8; i++)
++	{
++		Byte b = Byte(fileSize >> (8 * i));
++		if (outStream->Write(&b, sizeof(b), 0) != S_OK)
++			throw Exception("Write error while encoding");
++	}
++
++	HRESULT result = encoderSpec->Code(inStream, outStream, 0, 0, 0);
++
++	if (result == E_OUTOFMEMORY)
++		throw Exception("Cannot allocate memory");
++	else if (result != S_OK) {
++		char buffer[33];
++		snprintf(buffer, 33, "%d", (unsigned int)result);
++		throw Exception(string("Encoder error: ") + buffer);
++	}
++}
++
++void decode(NCompress::NLzma::CDecoder *decoderSpec,
++		CMyComPtr<ISequentialInStream> inStream,
++		CMyComPtr<ISequentialOutStream> outStream)
++{
++	const UInt32 kPropertiesSize = 5;
++	Byte properties[kPropertiesSize];
++	UInt32 processedSize;
++	UInt64 fileSize = 0;
++
++	if (inStream->Read(properties, kPropertiesSize, &processedSize) != S_OK)
++		throw Exception("Read error");
++	if (processedSize != kPropertiesSize)
++		throw Exception("Read error");
++	if (decoderSpec->SetDecoderProperties2(properties, kPropertiesSize) != S_OK)
++		throw Exception("SetDecoderProperties() error");
++
++	for (int i = 0; i < 8; i++)
++	{
++		Byte b;
++
++		if (inStream->Read(&b, sizeof(b), &processedSize) != S_OK)
++			throw Exception("Read error");
++		if (processedSize != 1)
++			throw Exception("Read error");
++
++		fileSize |= ((UInt64)b) << (8 * i);
++	}
++
++	if (decoderSpec->Code(inStream, outStream, 0, &fileSize, 0) != S_OK)
++		throw Exception("Decoder error");
++}
++
++int open_instream(const string infile,
++		CMyComPtr<ISequentialInStream> &inStream,
++		UInt64 &fileSize)
++{
++	CInFileStream *inStreamSpec = new CInFileStream;
++	inStream = inStreamSpec;
++	if (!inStreamSpec->Open(infile.c_str()))
++		throw Exception("Cannot open input file " + infile);
++
++	inStreamSpec->File.GetLength(fileSize);
++
++	return inStreamSpec->File.GetHandle();
++}
++
++int open_outstream(const string outfile,
++		CMyComPtr<ISequentialOutStream> &outStream)
++{
++	COutFileStream *outStreamSpec = new COutFileStream;
++	outStream = outStreamSpec;
++
++	bool open_by_force = (program_mode == PM_TEST) | force;
++
++	if (!outStreamSpec->Create(outfile.c_str(), open_by_force))
++		throw Exception("Cannot open output file " + outfile);
++
++	return outStreamSpec->File.GetHandle();
++}
++
++double get_ratio(int inhandle, int outhandle)
++{
++	struct stat in_stats, out_stats;
++	fstat(inhandle, &in_stats);
++	fstat(outhandle, &out_stats);
++
++	return (double)out_stats.st_size / (double)in_stats.st_size;
++}
++
++mode_t get_file_mode(string filename)
++{
++	struct stat in_stat;
++	lstat(filename.c_str(), &in_stat);
++
++	return in_stat.st_mode;
++}
++
++bool string_ends_with(string str, string ending)
++{
++	return equal(ending.rbegin(), ending.rend(), str.rbegin());
++}
++
++bool extension_is_known(string filename)
++{
++	bool known_format = false;
++	extension_pair extension; int i = 1;
++
++	extension = known_extensions[0];
++	while (extension.from != NULL) {
++		if (string_ends_with(filename, extension.from)) {
++			known_format = true;
++			break;
++		}
++		extension = known_extensions[i];
++		i++;
++	}
++
++	if (!known_format) {
++		if (!string_ends_with(filename, suffix)) {
++			return false;
++		}
++	}
++
++	return true;
++}
++
++string replace_extension(string filename)
++{
++	int suffix_starts_at = filename.length() - strlen (suffix);
++	string from_suffix = filename.substr(suffix_starts_at, strlen (suffix));
++	string ret = filename.substr(0, suffix_starts_at);
++	extension_pair extension; int i = 1;
++
++	bool found_replacement = false;
++	extension = known_extensions[0];
++	while (extension.from != NULL) {
++		if (from_suffix.compare(extension.from) == 0) {
++			ret += extension.to;
++			found_replacement = true;
++			break;
++		}
++
++		extension = known_extensions[i];
++		i++;
++	}
++
++	return ret;
++}
++
++string pretty_print_status(string filename, string output_filename,
++		string ratio)
++{
++	string ret = "";
++
++	ret += filename;
++	ret += ":\t ";
++
++	if (program_mode == PM_TEST) {
++		ret += "decoded succesfully";
++
++		return ret;
++	}
++
++	if (!stdinput && !stdoutput) {
++		ret += ratio;
++		ret += " -- ";
++	}
++
++	if (program_mode == PM_COMPRESS) {
++		if (keep) {
++			ret += "encoded succesfully";
++
++			return ret;
++		}
++
++		ret += "replaced with ";
++		ret += output_filename;
++
++		return ret;
++	}
++
++	if (program_mode == PM_DECOMPRESS) {
++		if (keep) {
++			ret += "decoded succesfully";
++
++			return ret;
++		}
++
++		ret += "replaced with ";
++		ret += output_filename;
++
++		return ret;
++	}
++
++	return ret;
++}
++
++static string archive_name; // I know, it is crude, but I haven't found any other
++    // way then making a global variable to transfer filename to handler
++
++void signal_handler (int signum)
++{
++    unlink (archive_name.c_str()); // deleting
++    signal (signum, SIG_DFL); // we return the default function to used signal
++    kill (getpid(), signum); // and then send this signal to the process again
++}
++
++} // namespace lzma
++
++
++int main(int argc, char **argv)
++{
++	using namespace lzma;
++	using std::cerr;
++
++	stringVector filenames;
++
++	signal (SIGTERM,signal_handler);
++	signal (SIGHUP,signal_handler);
++	signal (SIGINT,signal_handler);
++
++	try {
++		parse_options(argc, argv, filenames);
++	}
++	catch (...) {
++		return STATUS_ERROR;
++	}
++
++	if (program_mode == PM_HELP) {
++		print_help(argv[0]);
++		return STATUS_OK;
++	}
++	else if (program_mode == PM_LICENSE) {
++		print_license();
++		return STATUS_OK;
++	}
++	else if (program_mode == PM_VERSION) {
++		print_version();
++		return STATUS_OK;
++	}
++
++	if (filenames.empty()) {
++		stdinput = true;
++		stdoutput = true;
++
++		/* FIXME: get rid of this */
++		filenames.push_back("-");
++	}
++
++	/* Protection: always create new files with 0600 in order to prevent
++	 * outsiders from reading incomplete data. */
++	umask(0077);
++
++	bool warning = false;
++
++	for (int i = 0; i < filenames.size(); i++) {
++		CMyComPtr<ISequentialInStream> inStream;
++		CMyComPtr<ISequentialOutStream> outStream;
++		UInt64 fileSize = 0;
++		int inhandle = 0, outhandle = 0;
++		string output_filename;
++
++		if (stdinput) {
++			inStream = new CStdInFileStream;
++			MY_SET_BINARY_MODE(stdin);
++			fileSize = (UInt64)(Int64)-1;
++
++			inhandle = STDIN_FILENO;
++
++			outStream = new CStdOutFileStream;
++			MY_SET_BINARY_MODE(stdout);
++
++			outhandle = STDOUT_FILENO;
++		}
++		else {
++			mode_t infile_mode = get_file_mode(filenames[i]);
++			if (!S_ISREG(infile_mode)) {
++				if (S_ISDIR(infile_mode)) {
++					warning = true;
++					cerr << argv[0] << ": " << filenames[i] << ": "
++						<< "cowardly refusing to work on directory"
++						<< endl;
++
++					continue;
++				}
++				else if (S_ISLNK(infile_mode)) {
++					if (!stdoutput && !force) {
++						warning = true;
++
++					cerr << argv[0] << ": " << filenames[i] << ": "
++							<< "cowardly refusing to work on symbolic link "
++							<< "(use --force to force encoding or decoding)"
++							<< endl;
++
++						continue;
++					}
++				}
++				else {
++					warning = true;
++
++					cerr << argv[0] << ": " << filenames[i] << ": "
++						<< "doesn't exist or is not a regular file"
++						<< endl;
++
++					continue;
++				}
++			}
++
++			// Test if the file already ends with *suffix.
++			if (program_mode == PM_COMPRESS && !force
++					&& string_ends_with(filenames[i],
++						suffix)) {
++				warning = true;
++
++				cerr << filenames[i] << " already has "
++					<< suffix << " suffix -- unchanged\n";
++
++				continue;
++			}
++
++			// Test if the file extension is known.
++			if (program_mode == PM_DECOMPRESS
++					&& !extension_is_known(filenames[i])) {
++				warning = true;
++
++				cerr << filenames[i] << ": "
++					<< " unknown suffix -- unchanged"
++					<< endl;
++
++				continue;
++			}
++
++			try {
++				inhandle = open_instream(filenames[i], inStream, fileSize);
++			}
++			catch (Exception e) {
++				cerr << argv[0] << ": " << e.what() << endl;
++				return STATUS_ERROR;
++			}
++
++			if (stdoutput) {
++				outStream = new CStdOutFileStream;
++				MY_SET_BINARY_MODE(stdout);
++
++				outhandle = STDOUT_FILENO;
++			}
++			else {
++				/* Testing mode is nothing else but decoding
++				 * and throwing away the result. */
++				if (program_mode == PM_TEST)
++					output_filename = "/dev/null";
++				else if (program_mode == PM_DECOMPRESS)
++					output_filename = replace_extension(filenames[i]);
++				else
++					output_filename = filenames[i]
++							+ suffix;
++				archive_name = output_filename;
++
++				try {
++					outhandle = open_outstream(output_filename, outStream);
++				}
++				catch (Exception e) {
++					cerr << argv[0] << ": " << e.what() << endl;
++					return STATUS_ERROR;
++				}
++			}
++
++		}
++
++		// Unless --force is specified, do not read/write compressed
++		// data from/to a terminal.
++		if (!force) {
++			if (program_mode == PM_COMPRESS && isatty(outhandle)) {
++				cerr << argv[0] << ": compressed data not "
++					"written to a terminal. Use "
++					"-f to force compression.\n"
++					<< argv[0] << ": For help, type: "
++					<< argv[0] << " -h\n";
++				return STATUS_ERROR;
++			} else if (program_mode == PM_DECOMPRESS
++					&& isatty(inhandle)) {
++				cerr << argv[0] << ": compressed data not "
++					"read from a terminal. Use "
++					"-f to force decompression.\n"
++					<< argv[0] << ": For help, type: "
++					<< argv[0] << " -h\n";
++				return STATUS_ERROR;
++			}
++		}
++
++		if (program_mode == PM_COMPRESS) {
++			    NCompress::NLzma::CEncoder *encoderSpec =
++				      new NCompress::NLzma::CEncoder;
++
++			lzma_option options = option_mapping[compression_mode];
++
++			try {
++				encode(encoderSpec, inStream, outStream, options, fileSize);
++			}
++			catch (Exception e) {
++				cerr << argv[0] << ": " << e.what() << endl;
++				unlink(output_filename.c_str());
++				delete(encoderSpec);
++
++				return STATUS_ERROR;
++			}
++
++			delete(encoderSpec);
++		}
++		else {			// PM_DECOMPRESS | PM_TEST
++		    NCompress::NLzma::CDecoder *decoderSpec =
++		        new NCompress::NLzma::CDecoder;
++
++			try {
++				decode(decoderSpec, inStream, outStream);
++			}
++			catch (Exception e) {
++				cerr << argv[0] << ": " << e.what() << endl;
++				unlink(output_filename.c_str());
++				delete(decoderSpec);
++
++				return STATUS_ERROR;
++			}
++
++			delete(decoderSpec);
++		}
++
++		/* Set permissions and owners. */
++		if ( (program_mode == PM_COMPRESS || program_mode == PM_DECOMPRESS )
++				&& (!stdinput && !stdoutput) ) {
++
++			int ret = 0;
++			struct stat file_stats;
++			ret = fstat(inhandle, &file_stats);
++
++			ret = fchmod(outhandle, file_stats.st_mode);
++			ret = fchown(outhandle, file_stats.st_uid, file_stats.st_gid);
++			// We need to call fchmod() again, since otherwise the SUID bits
++			// are lost.
++			ret = fchmod(outhandle, file_stats.st_mode);
++
++			struct timeval file_times[2];
++			// Access time
++			file_times[0].tv_sec = file_stats.st_atime;
++			file_times[0].tv_usec = 0;
++			// Modification time
++			file_times[1].tv_sec = file_stats.st_mtime;
++			file_times[1].tv_usec = 0;
++
++			ret = futimes(outhandle, file_times);
++
++			if (!keep)
++				unlink(filenames[i].c_str());
++		}
++
++		if (verbosity > 0) {
++			if (stdoutput) {
++				cerr << filenames[i] << ":\t ";
++				cerr << "decoded succesfully"
++					<< endl;
++			}
++
++			else {
++				char buf[10] = { 0 };
++
++				if (program_mode == PM_DECOMPRESS)
++					snprintf(buf, 10, "%.2f%%",
++							(1 - get_ratio(outhandle, inhandle)) * 100);
++				if (program_mode == PM_COMPRESS)
++					snprintf(buf, 10, "%.2f%%",
++							(1 - get_ratio(inhandle, outhandle)) * 100);
++
++				string ratio = buf;
++				cerr << pretty_print_status(filenames[i], output_filename,
++						ratio)
++					<< endl;
++			}
++		}
++	}
++
++	if (warning)
++		return STATUS_WARNING;
++
++	return STATUS_OK;
++}
++
+Index: lzma-4.65/CPP/7zip/Compress/LZMA_Alone/Exception.h
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ lzma-4.65/CPP/7zip/Compress/LZMA_Alone/Exception.h	2009-06-01 22:01:10.000000000 +0200
+@@ -0,0 +1,45 @@
++/* A couple of exceptions for lzmp.
++ *
++ * Copyright (C) 2005 Ville Koskinen
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2
++ * of the License, or (at your option) any later version.
++ *
++ * This program 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 General Public License for more details.
++ */
++
++#ifndef _EXCEPTION_H_
++#define _EXCEPTION_H_
++
++#include <string>
++using std::string;
++
++class Exception
++{
++private:
++	string message;
++public:
++	Exception(char *what): message(what) { }
++	Exception(string what): message(what) { }
++
++	~Exception() { }
++
++	string what(void) { return message; }
++};
++
++class ArgumentException: public Exception
++{
++public:
++	ArgumentException(char *what): Exception(what) { }
++	ArgumentException(string what): Exception(what) { }
++
++	~ArgumentException() { }
++};
++
++#endif
++
+Index: lzma-4.65/CPP/7zip/Compress/LZMA_Alone/makefile.gcc
+===================================================================
+--- lzma-4.65.orig/CPP/7zip/Compress/LZMA_Alone/makefile.gcc	2009-06-01 22:00:54.000000000 +0200
++++ lzma-4.65/CPP/7zip/Compress/LZMA_Alone/makefile.gcc	2009-06-01 22:06:13.000000000 +0200
+@@ -1,9 +1,10 @@
+-PROG = lzma
++PROG = lzma_alone
++PROG2 = lzma
+ CXX = g++ -O2 -Wall
+ CXX_C = gcc -O2 -Wall
+ LIB = -lm
+ RM = rm -f
+-CFLAGS = -c -D_FILE_OFFSET_BITS=64
++CFLAGS = -c -I ../../../ -D_FILE_OFFSET_BITS=64 -DPACKAGE_VERSION="\"4.32.0beta3\""
+ 
+ ifdef SystemDrive
+ IS_MINGW = 1
+@@ -45,12 +46,35 @@
+   Lzma86Dec.o \
+   Lzma86Enc.o \
+ 
++OBJS2 = \
++	C_FileIO.o \
++	CRC.o \
++	Alloc.o \
++	FileStreams.o \
++	StreamUtils.o \
++	InBuffer.o \
++	OutBuffer.o \
++	LzmaDecoder.o \
++	StringConvert.o \
++	StringToInt.o \
++	LzmaEncoder.o \
++	LzmaDec.o \
++	LzmaEnc.o \
++	LzFind.o \
++	7zCrc.o \
++	lzmp.o
+ 
+-all: $(PROG)
++all: $(PROG) $(PROG2)
+ 
+ $(PROG): $(OBJS)
+ 	$(CXX) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIB) $(LIB2)
+ 
++$(PROG2): $(OBJS2)
++	$(CXX) -o $(PROG2) $(LDFLAGS) $(OBJS2) $(LIB)
++
++lzmp.o: lzmp.cpp
++	$(CXX) $(CFLAGS) lzmp.cpp
++
+ LzmaAlone.o: LzmaAlone.cpp
+ 	$(CXX) $(CFLAGS) LzmaAlone.cpp
+ 
+@@ -131,5 +153,5 @@
+ 	$(CXX_C) $(CFLAGS) ../../../../C/LzmaUtil/Lzma86Enc.c
+ 
+ clean:
+-	-$(RM) $(PROG) $(OBJS)
++	-$(RM) $(PROG) $(PROG2) $(OBJS)
+ 
+Index: lzma-4.65/CPP/7zip/Compress/LZMA_Alone/lzma_version.h
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ lzma-4.65/CPP/7zip/Compress/LZMA_Alone/lzma_version.h	2009-06-01 22:01:10.000000000 +0200
+@@ -0,0 +1,31 @@
++#ifndef LZMA_VERSION_H
++#define LZMA_VERSION_H
++
++/*
++    Version and copyright information used by LZMA utils.
++*/
++
++static const char *LZMA_SDK_VERSION_STRING = "4.43";
++
++static const char *LZMA_SDK_COPYRIGHT_STRING =
++		"Copyright (C) 1999-2006 Igor Pavlov";
++
++static const char *LZMA_SDK_COPYRIGHT_INFO =
++		"  See http://7-zip.org/sdk.html or the documentation of LZMA SDK for\n"
++		"  the license. For reference, the version 4.43 is free software\n"
++		"  licensed under the GNU LGPL.";
++
++
++static const char *LZMA_UTILS_VERSION_STRING = PACKAGE_VERSION;
++
++static const char *LZMA_UTILS_COPYRIGHT_STRING =
++		"Copyright (C) 2006 Lasse Collin";
++
++static const char *LZMA_UTILS_COPYRIGHT_INFO =
++		"This program comes with ABSOLUTELY NO WARRANTY.\n"
++		"You may redistribute copies of this program\n"
++		"under the terms of the GNU General Public License.\n"
++		"For more information about these matters, see the file "
++		"named COPYING.\n";
++
++#endif /* ifndef LZMA_VERSION_H */
+Index: lzma-4.65/CPP/Common/C_FileIO.h
+===================================================================
+--- lzma-4.65.orig/CPP/Common/C_FileIO.h	2009-05-15 23:33:51.000000000 +0200
++++ lzma-4.65/CPP/Common/C_FileIO.h	2009-06-01 22:06:56.000000000 +0200
+@@ -24,6 +24,7 @@
+   bool Close();
+   bool GetLength(UInt64 &length) const;
+   off_t Seek(off_t distanceToMove, int moveMethod) const;
++  int GetHandle() const { return _handle; }
+ };
+ 
+ class CInFile: public CFileBase
diff --git a/meta-oe/recipes-support/lzma/lzma-4.65/003-compile_fixes.patch b/meta-oe/recipes-support/lzma/lzma-4.65/003-compile_fixes.patch
new file mode 100644
index 0000000..49ae66b
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma-4.65/003-compile_fixes.patch
@@ -0,0 +1,26 @@
+diff -urN lzma-4.65/CPP/7zip/Common/FileStreams.h lzma-4.65.new/CPP/7zip/Common/FileStreams.h
+--- lzma-4.65/CPP/7zip/Common/FileStreams.h	2009-05-15 23:33:51.000000000 +0200
++++ lzma-4.65.new/CPP/7zip/Common/FileStreams.h	2009-06-01 22:30:01.000000000 +0200
+@@ -72,6 +72,7 @@
+   public IOutStream,
+   public CMyUnknownImp
+ {
++public:
+   #ifdef USE_WIN_FILE
+   NWindows::NFile::NIO::COutFile File;
+   #else
+diff -urN lzma-4.65/CPP/Common/MyWindows.h lzma-4.65.new/CPP/Common/MyWindows.h
+--- lzma-4.65/CPP/Common/MyWindows.h	2009-05-15 23:33:51.000000000 +0200
++++ lzma-4.65.new/CPP/Common/MyWindows.h	2009-06-01 22:29:26.000000000 +0200
+@@ -101,8 +101,11 @@
+ 
+ #ifdef __cplusplus
+ 
++#ifndef INITGUID
++#define INITGUID
+ DEFINE_GUID(IID_IUnknown,
+ 0x00000000, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);
++#endif
+ struct IUnknown
+ {
+   STDMETHOD(QueryInterface) (REFIID iid, void **outObject) PURE;
diff --git a/meta-oe/recipes-support/lzma/lzma-4.65/100-static_library.patch b/meta-oe/recipes-support/lzma/lzma-4.65/100-static_library.patch
new file mode 100644
index 0000000..15ab4e0
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma-4.65/100-static_library.patch
@@ -0,0 +1,70 @@
+--- a/C/LzmaUtil/makefile.gcc
++++ b/C/LzmaUtil/makefile.gcc
+@@ -1,44 +1,53 @@
+ PROG = lzma
+-CXX = g++
+-LIB =
++CC = gcc
++LIB = liblzma.a
+ RM = rm -f
+ CFLAGS = -c -O2 -Wall
++AR = ar
++RANLIB = ranlib
+ 
+ OBJS = \
+-  LzmaUtil.o \
+   Alloc.o \
+   LzFind.o \
+   LzmaDec.o \
+   LzmaEnc.o \
++  LzmaLib.o \
+   7zFile.o \
+   7zStream.o \
+ 
+-
+ all: $(PROG)
+ 
+-$(PROG): $(OBJS)
+-	$(CXX) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIB) $(LIB2)
++$(PROG): LzmaUtil.o $(LIB)
++	$(CC) -o $(PROG) $(LDFLAGS) $< $(LIB)
+ 
+ LzmaUtil.o: LzmaUtil.c
+-	$(CXX) $(CFLAGS) LzmaUtil.c
++	$(CC) $(CFLAGS) LzmaUtil.c
++
++$(LIB): $(OBJS)
++	rm -f $@
++	$(AR) rcu $@ $(OBJS)
++	$(RANLIB) $@
+ 
+ Alloc.o: ../Alloc.c
+-	$(CXX) $(CFLAGS) ../Alloc.c
++	$(CC) $(CFLAGS) ../Alloc.c
+ 
+ LzFind.o: ../LzFind.c
+-	$(CXX) $(CFLAGS) ../LzFind.c
++	$(CC) $(CFLAGS) ../LzFind.c
+ 
+ LzmaDec.o: ../LzmaDec.c
+-	$(CXX) $(CFLAGS) ../LzmaDec.c
++	$(CC) $(CFLAGS) ../LzmaDec.c
+ 
+ LzmaEnc.o: ../LzmaEnc.c
+-	$(CXX) $(CFLAGS) ../LzmaEnc.c
++	$(CC) $(CFLAGS) ../LzmaEnc.c
++
++LzmaLib.o: ../LzmaLib.c
++	$(CC) $(CFLAGS) ../LzmaLib.c
+ 
+ 7zFile.o: ../7zFile.c
+-	$(CXX) $(CFLAGS) ../7zFile.c
++	$(CC) $(CFLAGS) ../7zFile.c
+ 
+ 7zStream.o: ../7zStream.c
+-	$(CXX) $(CFLAGS) ../7zStream.c
++	$(CC) $(CFLAGS) ../7zStream.c
+ 
+ clean:
+-	-$(RM) $(PROG) $(OBJS)
++	-$(RM) $(PROG) *.o *.a
diff --git a/meta-oe/recipes-support/lzma/lzma-4.65/makefile-cleanup.patch b/meta-oe/recipes-support/lzma/lzma-4.65/makefile-cleanup.patch
new file mode 100644
index 0000000..ccca4d9
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma-4.65/makefile-cleanup.patch
@@ -0,0 +1,18 @@
+Index: lzma-4.65/C/LzmaUtil/makefile.gcc
+===================================================================
+--- lzma-4.65.orig/C/LzmaUtil/makefile.gcc
++++ lzma-4.65/C/LzmaUtil/makefile.gcc
+@@ -1,10 +1,10 @@
+ PROG = lzma
+-CC = gcc
++CC ?= gcc
+ LIB = liblzma.a
+ RM = rm -f
+ CFLAGS = -c -O2 -Wall
+-AR = ar
+-RANLIB = ranlib
++AR ?= ar
++RANLIB ?= ranlib
+ 
+ OBJS = \
+   Alloc.o \
diff --git a/meta-oe/recipes-support/lzma/lzma.inc b/meta-oe/recipes-support/lzma/lzma.inc
new file mode 100644
index 0000000..72f5d47
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma.inc
@@ -0,0 +1,36 @@
+DESCRIPTION = "LZMA is a general compression method. LZMA provides high compression ratio and very fast decompression."
+HOMEPAGE = "http://www.7-zip.org/"
+LICENSE = "LGPL"
+LIC_FILES_CHKSUM = "file://lzma.txt;md5=20251cdc2e3793cceab11878d0aa11b1"
+INC_PR = "r6"
+
+SRC_URI = "http://downloads.sourceforge.net/sevenzip/lzma${@bb.data.getVar('PV',d,1).replace('.','')}.tar.bz2;subdir=${BPN}-${PV} \
+           file://001-large_files.patch \
+           file://002-lzmp.patch \
+           file://003-compile_fixes.patch \
+           file://100-static_library.patch \
+           file://makefile-cleanup.patch"
+
+EXTRA_OEMAKE = "-f makefile.gcc"
+
+do_unpack_append() {
+        import oe.process
+        # Replace MS-DOS line-endings with Unix style line-endings
+        oe.process.run("find . -type f -print0 | xargs -0 sed 's/\r$//' -i",
+                       cwd=d.getVar("S", True))
+}
+
+do_compile() {
+        oe_runmake CFLAGS='${CFLAGS} -c' -C C/LzmaUtil
+        oe_runmake CXX_C='${CC} ${CFLAGS}' CXX='${CXX} ${CXXFLAGS}' \
+		-C CPP/7zip/Compress/LZMA_Alone
+}
+
+do_install() {
+        install -d ${D}${bindir} ${D}${libdir}
+        install -m 0755 CPP/7zip/Compress/LZMA_Alone/lzma ${D}${bindir}
+        oe_libinstall -a -C C/LzmaUtil liblzma ${D}${libdir}
+}
+
+NATIVE_INSTALL_WORKS = "1"
+BBCLASSEXTEND = "native"
diff --git a/meta-oe/recipes-support/lzma/lzma_4.65.bb b/meta-oe/recipes-support/lzma/lzma_4.65.bb
new file mode 100644
index 0000000..5295cd9
--- /dev/null
+++ b/meta-oe/recipes-support/lzma/lzma_4.65.bb
@@ -0,0 +1,5 @@
+require lzma.inc
+PR = "${INC_PR}.1"
+
+SRC_URI[md5sum] = "29d5ffd03a5a3e51aef6a74e9eafb759"
+SRC_URI[sha256sum] = "c935fd04dd8e0e8c688a3078f3675d699679a90be81c12686837e0880aa0fa1e"
diff --git a/meta-oe/recipes-support/mpfr/mpfr-3.0.0/long-long-thumb.patch b/meta-oe/recipes-support/mpfr/mpfr-3.0.0/long-long-thumb.patch
new file mode 100644
index 0000000..a4029d7
--- /dev/null
+++ b/meta-oe/recipes-support/mpfr/mpfr-3.0.0/long-long-thumb.patch
@@ -0,0 +1,11 @@
+--- mpfr-2.3.1/mpfr-longlong.h~	2008-01-01 03:29:09.000000000 +0000
++++ mpfr-2.3.1/mpfr-longlong.h	2008-10-27 21:46:44.000000000 +0000
+@@ -406,7 +406,7 @@
+ 	     "rIJ" ((USItype) (bl)))
+ #endif
+ 
+-#if defined (__arm__) && W_TYPE_SIZE == 32
++#if defined (__arm__) && W_TYPE_SIZE == 32 && !defined(__thumb__)
+ #define add_ssaaaa(sh, sl, ah, al, bh, bl) \
+   __asm__ ("adds\t%1, %4, %5\n\tadc\t%0, %2, %3"			\
+ 	   : "=r" (sh), "=&r" (sl)					\
diff --git a/meta-oe/recipes-support/mpfr/mpfr-3.0.0/p4.patch b/meta-oe/recipes-support/mpfr/mpfr-3.0.0/p4.patch
new file mode 100644
index 0000000..743c071
--- /dev/null
+++ b/meta-oe/recipes-support/mpfr/mpfr-3.0.0/p4.patch
@@ -0,0 +1,1752 @@
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-06-23 11:02:49.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-06-23 11:03:36.000000000 +0000
+@@ -0,0 +1 @@
++mpfr_out_str
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-06-23 11:03:20.000000000 +0000
+@@ -1 +1 @@
+-3.0.0
++3.0.0-p1
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-06-23 11:03:20.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0"
++#define MPFR_VERSION_STRING "3.0.0-p1"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.0.0-a/mpfr.texi mpfr-3.0.0-b/mpfr.texi
+--- mpfr-3.0.0-a/mpfr.texi	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.texi	2010-06-23 11:03:12.000000000 +0000
+@@ -2050,7 +2050,7 @@
+ are printed. If @var{base} is greater than 10, @samp{@@} will be used
+ instead of @samp{e} as exponent delimiter.
+ 
+-Return the number of bytes written, or if an error occurred, return 0.
++Return the number of characters written, or if an error occurred, return 0.
+ @end deftypefun
+ 
+ @deftypefun size_t mpfr_inp_str (mpfr_t @var{rop}, FILE *@var{stream}, int @var{base}, mpfr_rnd_t @var{rnd})
+diff -Naurd mpfr-3.0.0-a/out_str.c mpfr-3.0.0-b/out_str.c
+--- mpfr-3.0.0-a/out_str.c	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/out_str.c	2010-06-23 11:03:12.000000000 +0000
+@@ -22,6 +22,16 @@
+ 
+ #include "mpfr-impl.h"
+ 
++/* Warning! S should not contain "%". */
++#define OUT_STR_RET(S)                          \
++  do                                            \
++    {                                           \
++      int r;                                    \
++      r = fprintf (stream, (S));                \
++      return r < 0 ? 0 : r;                     \
++    }                                           \
++  while (0)
++
+ size_t
+ mpfr_out_str (FILE *stream, int base, size_t n_digits, mpfr_srcptr op,
+               mpfr_rnd_t rnd_mode)
+@@ -29,6 +39,7 @@
+   char *s, *s0;
+   size_t l;
+   mpfr_exp_t e;
++  int err;
+ 
+   MPFR_ASSERTN (base >= 2 && base <= 62);
+ 
+@@ -36,37 +47,16 @@
+   if (stream == NULL)
+     stream = stdout;
+ 
+-  if (MPFR_IS_NAN(op))
+-    {
+-      fprintf (stream, "@NaN@");
+-      return 3;
+-    }
+-
+-  if (MPFR_IS_INF(op))
+-    {
+-      if (MPFR_SIGN(op) > 0)
+-        {
+-          fprintf (stream, "@Inf@");
+-          return 3;
+-        }
+-      else
+-        {
+-          fprintf (stream, "- at Inf@");
+-          return 4;
+-        }
+-    }
+-
+-  if (MPFR_IS_ZERO(op))
++  if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (op)))
+     {
+-      if (MPFR_SIGN(op) > 0)
+-        {
+-          fprintf(stream, "0");
+-          return 1;
+-        }
++      if (MPFR_IS_NAN (op))
++        OUT_STR_RET ("@NaN@");
++      else if (MPFR_IS_INF (op))
++        OUT_STR_RET (MPFR_IS_POS (op) ? "@Inf@" : "- at Inf@");
+       else
+         {
+-          fprintf(stream, "-0");
+-          return 2;
++          MPFR_ASSERTD (MPFR_IS_ZERO (op));
++          OUT_STR_RET (MPFR_IS_POS (op) ? "0" : "-0");
+         }
+     }
+ 
+@@ -77,21 +67,31 @@
+ 
+   l = strlen (s) + 1; /* size of allocated block returned by mpfr_get_str
+                          - may be incorrect, as only an upper bound? */
+-  if (*s == '-')
+-    fputc (*s++, stream);
+ 
+-  /* outputs mantissa */
+-  fputc (*s++, stream); e--; /* leading digit */
+-  fputc ((unsigned char) MPFR_DECIMAL_POINT, stream);
+-  fputs (s, stream);         /* rest of mantissa */
++  /* outputs possible sign and significand */
++  err = (*s == '-' && fputc (*s++, stream) == EOF)
++    || fputc (*s++, stream) == EOF  /* leading digit */
++    || fputc ((unsigned char) MPFR_DECIMAL_POINT, stream) == EOF
++    || fputs (s, stream) == EOF;     /* trailing significand */
+   (*__gmp_free_func) (s0, l);
++  if (MPFR_UNLIKELY (err))
++    return 0;
++
++  e--;  /* due to the leading digit */
+ 
+   /* outputs exponent */
+   if (e)
+     {
++      int r;
++
+       MPFR_ASSERTN(e >= LONG_MIN);
+       MPFR_ASSERTN(e <= LONG_MAX);
+-      l += fprintf (stream, (base <= 10 ? "e%ld" : "@%ld"), (long) e);
++
++      r = fprintf (stream, (base <= 10 ? "e%ld" : "@%ld"), (long) e);
++      if (MPFR_UNLIKELY (r < 0))
++        return 0;
++
++      l += r;
+     }
+ 
+   return l;
+diff -Naurd mpfr-3.0.0-a/tests/tout_str.c mpfr-3.0.0-b/tests/tout_str.c
+--- mpfr-3.0.0-a/tests/tout_str.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tout_str.c	2010-06-23 11:03:12.000000000 +0000
+@@ -46,22 +46,54 @@
+ special (void)
+ {
+   mpfr_t x;
++  unsigned int n;
+ 
+   mpfr_init (x);
+ 
+   mpfr_set_nan (x);
+-  mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  n = mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  if (n != 5)
++    {
++      printf ("Error: mpfr_out_str (file, 10, 0, NaN, MPFR_RNDN) wrote %u "
++              "characters instead of 5.\n", n);
++      exit (1);
++    }
+ 
+   mpfr_set_inf (x, 1);
+-  mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  n = mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  if (n != 5)
++    {
++      printf ("Error: mpfr_out_str (file, 10, 0, +Inf, MPFR_RNDN) wrote %u "
++               "characters instead of 5.\n", n);
++      exit (1);
++    }
+ 
+   mpfr_set_inf (x, -1);
+-  mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  n = mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  if (n != 6)
++    {
++      printf ("Error: mpfr_out_str (file, 10, 0, -Inf, MPFR_RNDN) wrote %u "
++               "characters instead of 6.\n", n);
++      exit (1);
++    }
+ 
+   mpfr_set_ui (x, 0, MPFR_RNDN);
+-  mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  n = mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  if (n != 1)
++    {
++      printf ("Error: mpfr_out_str (file, 10, 0, +0, MPFR_RNDN) wrote %u "
++               "characters instead of 1.\n", n);
++      exit (1);
++    }
++
+   mpfr_neg (x, x, MPFR_RNDN);
+-  mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  n = mpfr_out_str (fout, 10, 0, x, MPFR_RNDN);
++  if (n != 2)
++    {
++      printf ("Error: mpfr_out_str (file, 10, 0, -0, MPFR_RNDN) wrote %u "
++               "characters instead of 2.\n", n);
++      exit (1);
++    }
+ 
+   mpfr_clear (x);
+ }
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-06-23 11:03:20.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0";
++  return "3.0.0-p1";
+ }
+diff -Naurd mpfr-3.0.0-a/Makefile.in mpfr-3.0.0-b/Makefile.in
+--- mpfr-3.0.0-a/Makefile.in	2010-06-10 11:00:52.000000000 +0000
++++ mpfr-3.0.0-b/Makefile.in	2010-06-10 11:00:52.000000000 +0000
+@@ -239,6 +239,7 @@
+ distuninstallcheck_listfiles = find . -type f -print
+ distcleancheck_listfiles = find . -type f -print
+ ACLOCAL = @ACLOCAL@
++ALLOCA = @ALLOCA@
+ AMTAR = @AMTAR@
+ AR = @AR@
+ AS = @AS@
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-06-23 11:03:36.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-06-25 13:23:13.000000000 +0000
+@@ -0,0 +1 @@
++alloca
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-06-23 11:03:20.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-06-25 13:23:13.000000000 +0000
+@@ -1 +1 @@
+-3.0.0-p1
++3.0.0-p2
+diff -Naurd mpfr-3.0.0-a/acinclude.m4 mpfr-3.0.0-b/acinclude.m4
+--- mpfr-3.0.0-a/acinclude.m4	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/acinclude.m4	2010-06-10 11:00:14.000000000 +0000
+@@ -59,6 +59,9 @@
+ dnl sys/fpu.h - MIPS specific
+ AC_CHECK_HEADERS([sys/time.h sys/fpu.h])
+ 
++dnl Check how to get `alloca'
++AC_FUNC_ALLOCA
++
+ dnl SIZE_MAX macro
+ gl_SIZE_MAX
+ 
+diff -Naurd mpfr-3.0.0-a/configure mpfr-3.0.0-b/configure
+--- mpfr-3.0.0-a/configure	2010-06-10 11:00:51.000000000 +0000
++++ mpfr-3.0.0-b/configure	2010-06-25 13:23:05.000000000 +0000
+@@ -783,6 +783,7 @@
+ OBJDUMP
+ DLLTOOL
+ AS
++ALLOCA
+ MPFR_LIBM
+ ANSI2KNR
+ U
+@@ -5622,6 +5623,197 @@
+ done
+ 
+ 
++# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
++# for constant arguments.  Useless!
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
++$as_echo_n "checking for working alloca.h... " >&6; }
++if test "${ac_cv_working_alloca_h+set}" = set; then :
++  $as_echo_n "(cached) " >&6
++else
++  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++#include <alloca.h>
++int
++main ()
++{
++char *p = (char *) alloca (2 * sizeof (int));
++			  if (p) return 0;
++  ;
++  return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++  ac_cv_working_alloca_h=yes
++else
++  ac_cv_working_alloca_h=no
++fi
++rm -f core conftest.err conftest.$ac_objext \
++    conftest$ac_exeext conftest.$ac_ext
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
++$as_echo "$ac_cv_working_alloca_h" >&6; }
++if test $ac_cv_working_alloca_h = yes; then
++
++$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h
++
++fi
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
++$as_echo_n "checking for alloca... " >&6; }
++if test "${ac_cv_func_alloca_works+set}" = set; then :
++  $as_echo_n "(cached) " >&6
++else
++  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++#ifdef __GNUC__
++# define alloca __builtin_alloca
++#else
++# ifdef _MSC_VER
++#  include <malloc.h>
++#  define alloca _alloca
++# else
++#  ifdef HAVE_ALLOCA_H
++#   include <alloca.h>
++#  else
++#   ifdef _AIX
++ #pragma alloca
++#   else
++#    ifndef alloca /* predefined by HP cc +Olibcalls */
++char *alloca ();
++#    endif
++#   endif
++#  endif
++# endif
++#endif
++
++int
++main ()
++{
++char *p = (char *) alloca (1);
++				    if (p) return 0;
++  ;
++  return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++  ac_cv_func_alloca_works=yes
++else
++  ac_cv_func_alloca_works=no
++fi
++rm -f core conftest.err conftest.$ac_objext \
++    conftest$ac_exeext conftest.$ac_ext
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
++$as_echo "$ac_cv_func_alloca_works" >&6; }
++
++if test $ac_cv_func_alloca_works = yes; then
++
++$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h
++
++else
++  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
++# that cause trouble.  Some versions do not even contain alloca or
++# contain a buggy version.  If you still want to use their alloca,
++# use ar to extract alloca.o from them instead of compiling alloca.c.
++
++ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
++
++$as_echo "#define C_ALLOCA 1" >>confdefs.h
++
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
++$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
++if test "${ac_cv_os_cray+set}" = set; then :
++  $as_echo_n "(cached) " >&6
++else
++  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++#if defined CRAY && ! defined CRAY2
++webecray
++#else
++wenotbecray
++#endif
++
++_ACEOF
++if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
++  $EGREP "webecray" >/dev/null 2>&1; then :
++  ac_cv_os_cray=yes
++else
++  ac_cv_os_cray=no
++fi
++rm -f conftest*
++
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
++$as_echo "$ac_cv_os_cray" >&6; }
++if test $ac_cv_os_cray = yes; then
++  for ac_func in _getb67 GETB67 getb67; do
++    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
++ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
++eval as_val=\$$as_ac_var
++   if test "x$as_val" = x""yes; then :
++
++cat >>confdefs.h <<_ACEOF
++#define CRAY_STACKSEG_END $ac_func
++_ACEOF
++
++    break
++fi
++
++  done
++fi
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
++$as_echo_n "checking stack direction for C alloca... " >&6; }
++if test "${ac_cv_c_stack_direction+set}" = set; then :
++  $as_echo_n "(cached) " >&6
++else
++  if test "$cross_compiling" = yes; then :
++  ac_cv_c_stack_direction=0
++else
++  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++$ac_includes_default
++int
++find_stack_direction ()
++{
++  static char *addr = 0;
++  auto char dummy;
++  if (addr == 0)
++    {
++      addr = &dummy;
++      return find_stack_direction ();
++    }
++  else
++    return (&dummy > addr) ? 1 : -1;
++}
++
++int
++main ()
++{
++  return find_stack_direction () < 0;
++}
++_ACEOF
++if ac_fn_c_try_run "$LINENO"; then :
++  ac_cv_c_stack_direction=1
++else
++  ac_cv_c_stack_direction=-1
++fi
++rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
++  conftest.$ac_objext conftest.beam conftest.$ac_ext
++fi
++
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
++$as_echo "$ac_cv_c_stack_direction" >&6; }
++cat >>confdefs.h <<_ACEOF
++#define STACK_DIRECTION $ac_cv_c_stack_direction
++_ACEOF
++
++
++fi
++
++
+ 
+   for ac_header in stdint.h
+ do :
+@@ -7564,13 +7756,13 @@
+ else
+   lt_cv_nm_interface="BSD nm"
+   echo "int some_variable = 0;" > conftest.$ac_ext
+-  (eval echo "\"\$as_me:7567: $ac_compile\"" >&5)
++  (eval echo "\"\$as_me:7759: $ac_compile\"" >&5)
+   (eval "$ac_compile" 2>conftest.err)
+   cat conftest.err >&5
+-  (eval echo "\"\$as_me:7570: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
++  (eval echo "\"\$as_me:7762: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+   cat conftest.err >&5
+-  (eval echo "\"\$as_me:7573: output\"" >&5)
++  (eval echo "\"\$as_me:7765: output\"" >&5)
+   cat conftest.out >&5
+   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+     lt_cv_nm_interface="MS dumpbin"
+@@ -8772,7 +8964,7 @@
+   ;;
+ *-*-irix6*)
+   # Find out which ABI we are using.
+-  echo '#line 8775 "configure"' > conftest.$ac_ext
++  echo '#line 8967 "configure"' > conftest.$ac_ext
+   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+   (eval $ac_compile) 2>&5
+   ac_status=$?
+@@ -10032,11 +10224,11 @@
+    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+    -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:10035: $lt_compile\"" >&5)
++   (eval echo "\"\$as_me:10227: $lt_compile\"" >&5)
+    (eval "$lt_compile" 2>conftest.err)
+    ac_status=$?
+    cat conftest.err >&5
+-   echo "$as_me:10039: \$? = $ac_status" >&5
++   echo "$as_me:10231: \$? = $ac_status" >&5
+    if (exit $ac_status) && test -s "$ac_outfile"; then
+      # The compiler can only warn and ignore the option if not recognized
+      # So say no if there are warnings other than the usual output.
+@@ -10371,11 +10563,11 @@
+    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+    -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:10374: $lt_compile\"" >&5)
++   (eval echo "\"\$as_me:10566: $lt_compile\"" >&5)
+    (eval "$lt_compile" 2>conftest.err)
+    ac_status=$?
+    cat conftest.err >&5
+-   echo "$as_me:10378: \$? = $ac_status" >&5
++   echo "$as_me:10570: \$? = $ac_status" >&5
+    if (exit $ac_status) && test -s "$ac_outfile"; then
+      # The compiler can only warn and ignore the option if not recognized
+      # So say no if there are warnings other than the usual output.
+@@ -10476,11 +10668,11 @@
+    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+    -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:10479: $lt_compile\"" >&5)
++   (eval echo "\"\$as_me:10671: $lt_compile\"" >&5)
+    (eval "$lt_compile" 2>out/conftest.err)
+    ac_status=$?
+    cat out/conftest.err >&5
+-   echo "$as_me:10483: \$? = $ac_status" >&5
++   echo "$as_me:10675: \$? = $ac_status" >&5
+    if (exit $ac_status) && test -s out/conftest2.$ac_objext
+    then
+      # The compiler can only warn and ignore the option if not recognized
+@@ -10531,11 +10723,11 @@
+    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+    -e 's:$: $lt_compiler_flag:'`
+-   (eval echo "\"\$as_me:10534: $lt_compile\"" >&5)
++   (eval echo "\"\$as_me:10726: $lt_compile\"" >&5)
+    (eval "$lt_compile" 2>out/conftest.err)
+    ac_status=$?
+    cat out/conftest.err >&5
+-   echo "$as_me:10538: \$? = $ac_status" >&5
++   echo "$as_me:10730: \$? = $ac_status" >&5
+    if (exit $ac_status) && test -s out/conftest2.$ac_objext
+    then
+      # The compiler can only warn and ignore the option if not recognized
+@@ -12915,7 +13107,7 @@
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 12918 "configure"
++#line 13110 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -13011,7 +13203,7 @@
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 13014 "configure"
++#line 13206 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-06-23 11:03:20.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-06-25 13:23:13.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0-p1"
++#define MPFR_VERSION_STRING "3.0.0-p2"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.0.0-a/tests/Makefile.in mpfr-3.0.0-b/tests/Makefile.in
+--- mpfr-3.0.0-a/tests/Makefile.in	2010-06-10 11:00:52.000000000 +0000
++++ mpfr-3.0.0-b/tests/Makefile.in	2010-06-10 11:00:52.000000000 +0000
+@@ -960,6 +960,7 @@
+ red=; grn=; lgn=; blu=; std=
+ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ ACLOCAL = @ACLOCAL@
++ALLOCA = @ALLOCA@
+ AMTAR = @AMTAR@
+ AR = @AR@
+ AS = @AS@
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-06-23 11:03:20.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-06-25 13:23:13.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0-p1";
++  return "3.0.0-p2";
+ }
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-07-10 00:11:19.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-07-10 00:12:50.000000000 +0000
+@@ -0,0 +1 @@
++gamma_underflow
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-06-25 13:23:13.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-07-10 00:11:53.000000000 +0000
+@@ -1 +1 @@
+-3.0.0-p2
++3.0.0-p3
+diff -Naurd mpfr-3.0.0-a/gamma.c mpfr-3.0.0-b/gamma.c
+--- mpfr-3.0.0-a/gamma.c	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/gamma.c	2010-07-10 00:11:46.000000000 +0000
+@@ -274,7 +274,7 @@
+       /* we want an upper bound for x * [log(2-x)-1].
+          since x < 0, we need a lower bound on log(2-x) */
+       mpfr_ui_sub (xp, 2, x, MPFR_RNDD);
+-      mpfr_log (xp, xp, MPFR_RNDD);
++      mpfr_log2 (xp, xp, MPFR_RNDD);
+       mpfr_sub_ui (xp, xp, 1, MPFR_RNDD);
+       mpfr_mul (xp, xp, x, MPFR_RNDU);
+ 
+@@ -303,8 +303,8 @@
+         {
+           mpfr_sub (tmp, tmp, tmp2, MPFR_RNDZ); /* low bnd on |sin(Pi*(2-x))| */
+           mpfr_ui_div (tmp, 12, tmp, MPFR_RNDU); /* upper bound */
+-          mpfr_log (tmp, tmp, MPFR_RNDU);
+-          mpfr_add (tmp, tmp, xp, MPFR_RNDU);
++          mpfr_log2 (tmp, tmp, MPFR_RNDU);
++          mpfr_add (xp, tmp, xp, MPFR_RNDU);
+           underflow = mpfr_cmp_si (xp, expo.saved_emin - 2) <= 0;
+         }
+ 
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-06-25 13:23:13.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-07-10 00:11:53.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0-p2"
++#define MPFR_VERSION_STRING "3.0.0-p3"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.0.0-a/tests/tgamma.c mpfr-3.0.0-b/tests/tgamma.c
+--- mpfr-3.0.0-a/tests/tgamma.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tgamma.c	2010-07-10 00:11:46.000000000 +0000
+@@ -461,6 +461,20 @@
+   mpfr_clear (x);
+ }
+ 
++/* bug found by Stathis, only occurs on 32-bit machines */
++static void
++test20100709 (void)
++{
++  mpfr_t x;
++  int inex;
++
++  mpfr_init2 (x, 100);
++  mpfr_set_str (x, "-4.6308260837372266e+07", 10, MPFR_RNDN);
++  inex = mpfr_gamma (x, x, MPFR_RNDN);
++  MPFR_ASSERTN(MPFR_IS_ZERO(x) && MPFR_IS_NEG(x) && inex > 0);
++  mpfr_clear (x);
++}
++
+ int
+ main (int argc, char *argv[])
+ {
+@@ -471,6 +485,7 @@
+   test_generic (2, 100, 2);
+   gamma_integer ();
+   test20071231 ();
++  test20100709 ();
+ 
+   data_check ("data/gamma", mpfr_gamma, "mpfr_gamma");
+ 
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-06-25 13:23:13.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-07-10 00:11:53.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0-p2";
++  return "3.0.0-p3";
+ }
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-09-07 08:44:01.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-09-07 08:48:46.000000000 +0000
+@@ -0,0 +1 @@
++mpfr_cmp/set_ui/si
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-07-10 00:11:53.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-09-07 08:46:06.000000000 +0000
+@@ -1 +1 @@
+-3.0.0-p3
++3.0.0-p4
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-07-10 00:11:53.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-09-07 08:46:06.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0-p3"
++#define MPFR_VERSION_STRING "3.0.0-p4"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+@@ -798,35 +798,45 @@
+      anyway. Checking with other ICC versions is needed. Possibly detect
+      whether warnings are produced or not with a configure test.
+    + Remove C++ too, since it complains too much. */
++/* Added casts to improve robustness in case of undefined behavior and
++   compiler extensions based on UB (in particular -fwrapv). MPFR doesn't
++   use such extensions, but these macros will be used by 3rd-party code,
++   where such extensions may be required.
++   Moreover casts to unsigned long have been added to avoid warnings in
++   programs that use MPFR and are compiled with -Wconversion; such casts
++   are OK since if X is a constant expression, then (unsigned long) X is
++   also a constant expression, so that the optimizations still work. */
+ #if defined (__GNUC__) && !defined(__ICC) && !defined(__cplusplus)
+ #if (__GNUC__ >= 2)
+ #undef mpfr_cmp_ui
+-/* We use the fact that mpfr_sgn on NaN sets the erange flag and returns 0. */
+-#define mpfr_cmp_ui(_f,_u)                 \
+- (__builtin_constant_p (_u) && (_u) == 0 ? \
+-   mpfr_sgn (_f) :                         \
+-   mpfr_cmp_ui_2exp ((_f),(_u),0))
++/* We use the fact that mpfr_sgn on NaN sets the erange flag and returns 0.
++   But warning! mpfr_sgn is specified as a macro in the API, thus the macro
++   mustn't be used if side effects are possible, like here. */
++#define mpfr_cmp_ui(_f,_u)                                      \
++  (__builtin_constant_p (_u) && (unsigned long) (_u) == 0 ?     \
++   (mpfr_sgn) (_f) :                                            \
++   mpfr_cmp_ui_2exp ((_f), (unsigned long) (_u), 0))
+ #undef mpfr_cmp_si
+-#define mpfr_cmp_si(_f,_s)                 \
+- (__builtin_constant_p (_s) && (_s) >= 0 ? \
+-   mpfr_cmp_ui ((_f), (_s)) :              \
+-   mpfr_cmp_si_2exp ((_f), (_s), 0))
++#define mpfr_cmp_si(_f,_s)                              \
++  (__builtin_constant_p (_s) && (long) (_s) >= 0 ?      \
++   mpfr_cmp_ui ((_f), (unsigned long) (long) (_s)) :    \
++   mpfr_cmp_si_2exp ((_f), (long) (_s), 0))
+ #if __GNUC__ > 2 || __GNUC_MINOR__ >= 95
+ #undef mpfr_set_ui
+-#define mpfr_set_ui(_f,_u,_r)              \
+- (__builtin_constant_p (_u) && (_u) == 0 ? \
+-   __extension__ ({                        \
+-     mpfr_ptr _p = (_f);                   \
+-     _p->_mpfr_sign = 1;                   \
+-     _p->_mpfr_exp = __MPFR_EXP_ZERO;      \
+-     (void) (_r); 0; }) :                  \
+-   mpfr_set_ui_2exp ((_f), (_u), 0, (_r)))
++#define mpfr_set_ui(_f,_u,_r)                                   \
++  (__builtin_constant_p (_u) && (unsigned long) (_u) == 0 ?     \
++   __extension__ ({                                             \
++       mpfr_ptr _p = (_f);                                      \
++       _p->_mpfr_sign = 1;                                      \
++       _p->_mpfr_exp = __MPFR_EXP_ZERO;                         \
++       (void) (_r); 0; }) :                                     \
++   mpfr_set_ui_2exp ((_f), (unsigned long) (_u), 0, (_r)))
+ #endif
+ #undef mpfr_set_si
+-#define mpfr_set_si(_f,_s,_r)              \
+- (__builtin_constant_p (_s) && (_s) >= 0 ? \
+-   mpfr_set_ui ((_f), (_s), (_r)) :        \
+-   mpfr_set_si_2exp ((_f), (_s), 0, (_r)))
++#define mpfr_set_si(_f,_s,_r)                                   \
++  (__builtin_constant_p (_s) && (long) (_s) >= 0 ?              \
++   mpfr_set_ui ((_f), (unsigned long) (long) (_s), (_r)) :      \
++   mpfr_set_si_2exp ((_f), (long) (_s), 0, (_r)))
+ #endif
+ #endif
+ 
+diff -Naurd mpfr-3.0.0-a/tests/tcmp_ui.c mpfr-3.0.0-b/tests/tcmp_ui.c
+--- mpfr-3.0.0-a/tests/tcmp_ui.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tcmp_ui.c	2010-09-07 08:45:12.000000000 +0000
+@@ -88,6 +88,126 @@
+   mpfr_clear (x);
+ }
+ 
++/* Since mpfr_cmp_ui and mpfr_cmp_si are also implemented by a macro
++   with __builtin_constant_p for GCC, check that side effects are
++   handled correctly. */
++static void
++check_macros (void)
++{
++  mpfr_t x;
++  int c;
++
++  mpfr_init2 (x, 32);
++
++  c = 0;
++  mpfr_set_ui (x, 17, MPFR_RNDN);
++  if (mpfr_cmp_ui (x, 17) != 0)
++    {
++      printf ("Error 1 on mpfr_cmp_ui(x,17) in check_macros\n");
++      exit (1);
++    }
++  if (mpfr_cmp_ui (x, (c++, 17)) != 0)
++    {
++      printf ("Error 2 on mpfr_cmp_ui(x,17) in check_macros\n");
++      exit (1);
++    }
++  if (c != 1)
++    {
++      printf ("Error 3 on mpfr_cmp_ui(x,17) in check_macros\n"
++              "(c = %d instead of 1)\n", c);
++      exit (1);
++    }
++  if (mpfr_cmp_si (x, 17) != 0)
++    {
++      printf ("Error 1 on mpfr_cmp_si(x,17) in check_macros\n");
++      exit (1);
++    }
++  if (mpfr_cmp_si (x, (c++, 17)) != 0)
++    {
++      printf ("Error 2 on mpfr_cmp_si(x,17) in check_macros\n");
++      exit (1);
++    }
++  if (c != 2)
++    {
++      printf ("Error 3 on mpfr_cmp_si(x,17) in check_macros\n"
++              "(c = %d instead of 2)\n", c);
++      exit (1);
++    }
++
++  c = 0;
++  mpfr_set_ui (x, 0, MPFR_RNDN);
++  if (mpfr_cmp_ui (x, 0) != 0)
++    {
++      printf ("Error 1 on mpfr_cmp_ui(x,0) in check_macros\n");
++      exit (1);
++    }
++  if (mpfr_cmp_ui (x, (c++, 0)) != 0)
++    {
++      printf ("Error 2 on mpfr_cmp_ui(x,0) in check_macros\n");
++      exit (1);
++    }
++  if (c != 1)
++    {
++      printf ("Error 3 on mpfr_cmp_ui(x,0) in check_macros\n"
++              "(c = %d instead of 1)\n", c);
++      exit (1);
++    }
++  if (mpfr_cmp_si (x, 0) != 0)
++    {
++      printf ("Error 1 on mpfr_cmp_si(x,0) in check_macros\n");
++      exit (1);
++    }
++  if (mpfr_cmp_si (x, (c++, 0)) != 0)
++    {
++      printf ("Error 2 on mpfr_cmp_si(x,0) in check_macros\n");
++      exit (1);
++    }
++  if (c != 2)
++    {
++      printf ("Error 3 on mpfr_cmp_si(x,0) in check_macros\n"
++              "(c = %d instead of 2)\n", c);
++      exit (1);
++    }
++
++  mpfr_clear (x);
++}
++
++/* Bug in r7114 */
++static void
++test_macros (void)
++{
++  mpfr_t x[3];
++  mpfr_ptr p;
++
++  mpfr_inits (x[0], x[1], x[2], (mpfr_ptr) 0);
++  mpfr_set_ui (x[0], 0, MPFR_RNDN);
++  p = x[0];
++  if (mpfr_cmp_ui (p++, 0) != 0)
++    {
++      printf ("Error in mpfr_cmp_ui macro: result should be 0.\n");
++      exit (1);
++    }
++  if (p != x[1])
++    {
++      printf ("Error in mpfr_cmp_ui macro: p - x[0] = %d (expecting 1)\n",
++              (int) (p - x[0]));
++      exit (1);
++    }
++  p = x[0];
++  if (mpfr_cmp_si (p++, 0) != 0)
++    {
++      printf ("Error in mpfr_cmp_si macro: result should be 0.\n");
++      exit (1);
++    }
++  if (p != x[1])
++    {
++      printf ("Error in mpfr_cmp_si macro: p - x[0] = %d (expecting 1)\n",
++              (int) (p - x[0]));
++      exit (1);
++    }
++  mpfr_clears (x[0], x[1], x[2], (mpfr_ptr) 0);
++}
++
+ int
+ main (void)
+ {
+@@ -216,6 +336,8 @@
+   mpfr_clear (x);
+ 
+   check_nan ();
++  check_macros ();
++  test_macros ();
+ 
+   tests_end_mpfr ();
+   return 0;
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-07-10 00:11:53.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-09-07 08:46:06.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0-p3";
++  return "3.0.0-p4";
+ }
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-10-21 20:28:38.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-10-21 20:28:38.000000000 +0000
+@@ -0,0 +1 @@
++tcan_round
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-09-07 08:46:06.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-10-21 20:28:38.000000000 +0000
+@@ -1 +1 @@
+-3.0.0-p4
++3.0.0-p5
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-09-07 08:46:06.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-10-21 20:28:38.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0-p4"
++#define MPFR_VERSION_STRING "3.0.0-p5"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.0.0-a/tests/tcan_round.c mpfr-3.0.0-b/tests/tcan_round.c
+--- mpfr-3.0.0-a/tests/tcan_round.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tcan_round.c	2010-10-21 20:28:38.000000000 +0000
+@@ -41,7 +41,7 @@
+       /* avoid mpn_random which leaks memory */
+       for (i = 0; i < n; i++)
+         buf[i] = randlimb ();
+-      p = (mpfr_prec_t) randlimb() % ((n-1) * GMP_NUMB_BITS) + MPFR_PREC_MIN;
++      p = randlimb() % ((n-1) * GMP_NUMB_BITS) + MPFR_PREC_MIN;
+       err = p + randlimb () % GMP_NUMB_BITS;
+       r1 = mpfr_round_p (buf, n, err, p);
+       r2 = mpfr_can_round_raw (buf, n, MPFR_SIGN_POS, err,
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-09-07 08:46:06.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-10-21 20:28:38.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0-p4";
++  return "3.0.0-p5";
+ }
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-10-21 20:59:32.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-10-21 20:59:32.000000000 +0000
+@@ -0,0 +1 @@
++mpfr_sub1
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-10-21 20:28:38.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-10-21 20:59:32.000000000 +0000
+@@ -1 +1 @@
+-3.0.0-p5
++3.0.0-p6
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-10-21 20:28:38.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-10-21 20:59:32.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0-p5"
++#define MPFR_VERSION_STRING "3.0.0-p6"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.0.0-a/sub1.c mpfr-3.0.0-b/sub1.c
+--- mpfr-3.0.0-a/sub1.c	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/sub1.c	2010-10-21 20:59:32.000000000 +0000
+@@ -37,7 +37,9 @@
+   mp_size_t cancel2, an, bn, cn, cn0;
+   mp_limb_t *ap, *bp, *cp;
+   mp_limb_t carry, bb, cc, borrow = 0;
+-  int inexact, shift_b, shift_c, is_exact = 1, down = 0, add_exp = 0;
++  int inexact, shift_b, shift_c, add_exp = 0;
++  int cmp_low = 0; /* used for rounding to nearest: 0 if low(b) = low(c),
++                      negative if low(b) < low(c), positive if low(b)>low(c) */
+   int sh, k;
+   MPFR_TMP_DECL(marker);
+ 
+@@ -196,7 +198,8 @@
+     }
+ 
+ #ifdef DEBUG
+-  printf ("shift_b=%d shift_c=%d diffexp=%lu\n", shift_b, shift_c,
++  printf ("rnd=%s shift_b=%d shift_c=%d diffexp=%lu\n",
++          mpfr_print_rnd_mode (rnd_mode), shift_b, shift_c,
+           (unsigned long) diff_exp);
+ #endif
+ 
+@@ -307,17 +310,18 @@
+     {
+       if (MPFR_LIKELY(sh))
+         {
+-          is_exact = (carry == 0);
+           /* can decide except when carry = 2^(sh-1) [middle]
+              or carry = 0 [truncate, but cannot decide inexact flag] */
+-          down = (carry < (MPFR_LIMB_ONE << (sh - 1)));
+           if (carry > (MPFR_LIMB_ONE << (sh - 1)))
+             goto add_one_ulp;
+-          else if ((0 < carry) && down)
++          else if ((0 < carry) && (carry < (MPFR_LIMB_ONE << (sh - 1))))
+             {
+               inexact = -1; /* result if smaller than exact value */
+               goto truncate;
+             }
++          /* now carry = 2^(sh-1), in which case cmp_low=2,
++             or carry = 0, in which case cmp_low=0 */
++          cmp_low = (carry == 0) ? 0 : 2;
+         }
+     }
+   else /* directed rounding: set rnd_mode to RNDZ iff toward zero */
+@@ -344,12 +348,32 @@
+   cn -= (long int) an + cancel2;
+ 
+ #ifdef DEBUG
+-  printf ("last %d bits from a are %lu, bn=%ld, cn=%ld\n",
++  printf ("last sh=%d bits from a are %lu, bn=%ld, cn=%ld\n",
+           sh, (unsigned long) carry, (long) bn, (long) cn);
+ #endif
+ 
++  /* for rounding to nearest, we couldn't conclude up to here in the following
++     cases:
++     1. sh = 0, then cmp_low=0: we can either truncate, subtract one ulp
++        or add one ulp: -1 ulp < low(b)-low(c) < 1 ulp
++     2. sh > 0 but the low sh bits from high(b)-high(c) equal 2^(sh-1):
++        -0.5 ulp <= -1/2^sh < low(b)-low(c)-0.5 < 1/2^sh <= 0.5 ulp
++        we can't decide the rounding, in that case cmp_low=2:
++        either we truncate and flag=-1, or we add one ulp and flag=1
++     3. the low sh>0 bits from high(b)-high(c) equal 0: we know we have to
++        truncate but we can't decide the ternary value, here cmp_low=0:
++        -0.5 ulp <= -1/2^sh < low(b)-low(c) < 1/2^sh <= 0.5 ulp
++        we always truncate and inexact can be any of -1,0,1
++  */
++
++  /* note: here cn might exceed cn0, in which case we consider a zero limb */
+   for (k = 0; (bn > 0) || (cn > 0); k = 1)
+     {
++      /* if cmp_low < 0, we know low(b) - low(c) < 0
++         if cmp_low > 0, we know low(b) - low(c) > 0
++            (more precisely if cmp_low = 2, low(b) - low(c) = 0.5 ulp so far)
++         if cmp_low = 0, so far low(b) - low(c) = 0 */
++
+       /* get next limbs */
+       bb = (bn > 0) ? bp[--bn] : 0;
+       if ((cn > 0) && (cn-- <= cn0))
+@@ -357,76 +381,115 @@
+       else
+         cc = 0;
+ 
+-      /* down is set when low(b) < low(c) */
+-      if (down == 0)
+-        down = (bb < cc);
++      /* cmp_low compares low(b) and low(c) */
++      if (cmp_low == 0) /* case 1 or 3 */
++        cmp_low = (bb < cc) ? -2+k : (bb > cc) ? 1 : 0;
++
++      /* Case 1 for k=0 splits into 7 subcases:
++         1a: bb > cc + half
++         1b: bb = cc + half
++         1c: 0 < bb - cc < half
++         1d: bb = cc
++         1e: -half < bb - cc < 0
++         1f: bb - cc = -half
++         1g: bb - cc < -half
++
++         Case 2 splits into 3 subcases:
++         2a: bb > cc
++         2b: bb = cc
++         2c: bb < cc
++
++         Case 3 splits into 3 subcases:
++         3a: bb > cc
++         3b: bb = cc
++         3c: bb < cc
++      */
+ 
+       /* the case rounding to nearest with sh=0 is special since one couldn't
+          subtract above 1/2 ulp in the trailing limb of the result */
+-      if ((rnd_mode == MPFR_RNDN) && sh == 0 && k == 0)
++      if (rnd_mode == MPFR_RNDN && sh == 0 && k == 0) /* case 1 for k=0 */
+         {
+           mp_limb_t half = MPFR_LIMB_HIGHBIT;
+ 
+-          is_exact = (bb == cc);
+-
+           /* add one ulp if bb > cc + half
+              truncate if cc - half < bb < cc + half
+              sub one ulp if bb < cc - half
+           */
+ 
+-          if (down)
++          if (cmp_low < 0) /* bb < cc: -1 ulp < low(b) - low(c) < 0,
++                              cases 1e, 1f and 1g */
+             {
+               if (cc >= half)
+                 cc -= half;
+-              else
++              else /* since bb < cc < half, bb+half < 2*half */
+                 bb += half;
++              /* now we have bb < cc + half:
++                 we have to subtract one ulp if bb < cc,
++                 and truncate if bb > cc */
+             }
+-          else /* bb >= cc */
++          else if (cmp_low >= 0) /* bb >= cc, cases 1a to 1d */
+             {
+               if (cc < half)
+                 cc += half;
+-              else
++              else /* since bb >= cc >= half, bb - half >= 0 */
+                 bb -= half;
++              /* now we have bb > cc - half: we have to add one ulp if bb > cc,
++                 and truncate if bb < cc */
++              if (cmp_low > 0)
++                cmp_low = 2;
+             }
+         }
+ 
+ #ifdef DEBUG
+-      printf ("    bb=%lu cc=%lu down=%d is_exact=%d\n",
+-              (unsigned long) bb, (unsigned long) cc, down, is_exact);
++      printf ("k=%u bb=%lu cc=%lu cmp_low=%d\n", k,
++              (unsigned long) bb, (unsigned long) cc, cmp_low);
+ #endif
+-      if (bb < cc)
++      if (cmp_low < 0) /* low(b) - low(c) < 0: either truncate or subtract
++                          one ulp */
+         {
+           if (rnd_mode == MPFR_RNDZ)
+-            goto sub_one_ulp;
++            goto sub_one_ulp; /* set inexact=-1 */
+           else if (rnd_mode != MPFR_RNDN) /* round away */
+             {
+               inexact = 1;
+               goto truncate;
+             }
+-          else /* round to nearest: special case here since for sh=k=0
+-                  bb = bb0 - MPFR_LIMB_HIGHBIT */
++          else /* round to nearest */
+             {
+-              if (is_exact && sh == 0)
+-                {
+-                  /* For k=0 we can't decide exactness since it may depend
+-                     from low order bits.
+-                     For k=1, the first low limbs matched: low(b)-low(c)<0. */
+-                  if (k)
+-                    {
+-                      inexact = 1;
+-                      goto truncate;
+-                    }
+-                }
+-              else if (down && sh == 0)
+-                goto sub_one_ulp;
+-              else
+-                {
+-                  inexact = (is_exact) ? 1 : -1;
++              /* If cmp_low < 0 and bb > cc, then -0.5 ulp < low(b)-low(c) < 0,
++                 whatever the value of sh.
++                 If sh>0, then cmp_low < 0 implies that the initial neglected
++                 sh bits were 0 (otherwise cmp_low=2 initially), thus the
++                 weight of the new bits is less than 0.5 ulp too.
++                 If k > 0 (and sh=0) this means that either the first neglected
++                 limbs bb and cc were equal (thus cmp_low was 0 for k=0),
++                 or we had bb - cc = -0.5 ulp or 0.5 ulp.
++                 The last case is not possible here since we would have
++                 cmp_low > 0 which is sticky.
++                 In the first case (where we have cmp_low = -1), we truncate,
++                 whereas in the 2nd case we have cmp_low = -2 and we subtract
++                 one ulp.
++              */
++              if (bb > cc || sh > 0 || cmp_low == -1)
++                {  /* -0.5 ulp < low(b)-low(c) < 0,
++                      bb > cc corresponds to cases 1e and 1f1
++                      sh > 0 corresponds to cases 3c and 3b3
++                      cmp_low = -1 corresponds to case 1d3 (also 3b3) */
++                  inexact = 1;
+                   goto truncate;
+                 }
++              else if (bb < cc) /* here sh = 0 and low(b)-low(c) < -0.5 ulp,
++                                   this corresponds to cases 1g and 1f3 */
++                goto sub_one_ulp;
++              /* the only case where we can't conclude is sh=0 and bb=cc,
++                 i.e., we have low(b) - low(c) = -0.5 ulp (up to now), thus
++                 we don't know if we must truncate or subtract one ulp.
++                 Note: for sh=0 we can't have low(b) - low(c) = -0.5 ulp up to
++                 now, since low(b) - low(c) > 1/2^sh */
+             }
+         }
+-      else if (bb > cc)
++      else if (cmp_low > 0) /* 0 < low(b) - low(c): either truncate or
++                               add one ulp */
+         {
+           if (rnd_mode == MPFR_RNDZ)
+             {
+@@ -437,34 +500,70 @@
+             goto add_one_ulp;
+           else /* round to nearest */
+             {
+-              if (is_exact)
++              if (bb > cc)
+                 {
+-                  inexact = -1;
+-                  goto truncate;
++                  /* if sh=0, then bb>cc means that low(b)-low(c) > 0.5 ulp,
++                     and similarly when cmp_low=2 */
++                  if (cmp_low == 2) /* cases 1a, 1b1, 2a and 2b1 */
++                    goto add_one_ulp;
++                  /* sh > 0 and cmp_low > 0: this implies that the sh initial
++                     neglected bits were 0, and the remaining low(b)-low(c)>0,
++                     but its weight is less than 0.5 ulp */
++                  else /* 0 < low(b) - low(c) < 0.5 ulp, this corresponds to
++                          cases 3a, 1d1 and 3b1 */
++                    {
++                      inexact = -1;
++                      goto truncate;
++                    }
+                 }
+-              else if (down)
++              else if (bb < cc) /* 0 < low(b) - low(c) < 0.5 ulp, cases 1c,
++                                   1b3, 2b3 and 2c */
+                 {
+-                  inexact = 1;
++                  inexact = -1;
+                   goto truncate;
+                 }
+-              else
+-                goto add_one_ulp;
++              /* the only case where we can't conclude is bb=cc, i.e.,
++                 low(b) - low(c) = 0.5 ulp (up to now), thus we don't know
++                 if we must truncate or add one ulp. */
+             }
+         }
++      /* after k=0, we cannot conclude in the following cases, we split them
++         according to the values of bb and cc for k=1:
++         1b. sh=0 and cmp_low = 1 and bb-cc = half [around 0.5 ulp]
++             1b1. bb > cc: add one ulp, inex = 1
++             1b2: bb = cc: cannot conclude
++             1b3: bb < cc: truncate, inex = -1
++         1d. sh=0 and cmp_low = 0 and bb-cc = 0 [around 0]
++             1d1: bb > cc: truncate, inex = -1
++             1d2: bb = cc: cannot conclude
++             1d3: bb < cc: truncate, inex = +1
++         1f. sh=0 and cmp_low = -1 and bb-cc = -half [around -0.5 ulp]
++             1f1: bb > cc: truncate, inex = +1
++             1f2: bb = cc: cannot conclude
++             1f3: bb < cc: sub one ulp, inex = -1
++         2b. sh > 0 and cmp_low = 2 and bb=cc [around 0.5 ulp]
++             2b1. bb > cc: add one ulp, inex = 1
++             2b2: bb = cc: cannot conclude
++             2b3: bb < cc: truncate, inex = -1
++         3b. sh > 0 and cmp_low = 0 [around 0]
++             3b1. bb > cc: truncate, inex = -1
++             3b2: bb = cc: cannot conclude
++             3b3: bb < cc: truncate, inex = +1
++      */
+     }
+ 
+-  if ((rnd_mode == MPFR_RNDN) && !is_exact)
++  if ((rnd_mode == MPFR_RNDN) && cmp_low != 0)
+     {
+       /* even rounding rule */
+       if ((ap[0] >> sh) & 1)
+         {
+-          if (down)
++          if (cmp_low < 0)
+             goto sub_one_ulp;
+           else
+             goto add_one_ulp;
+         }
+       else
+-        inexact = (down) ? 1 : -1;
++        inexact = (cmp_low > 0) ? -1 : 1;
+     }
+   else
+     inexact = 0;
+diff -Naurd mpfr-3.0.0-a/tests/tfma.c mpfr-3.0.0-b/tests/tfma.c
+--- mpfr-3.0.0-a/tests/tfma.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tfma.c	2010-10-21 20:59:32.000000000 +0000
+@@ -337,6 +337,94 @@
+   mpfr_clears (x, y, z, r, (mpfr_ptr) 0);
+ }
+ 
++static void
++bug20101018 (void)
++{
++  mpfr_t x, y, z, t, u;
++  int i;
++
++  mpfr_init2 (x, 64);
++  mpfr_init2 (y, 64);
++  mpfr_init2 (z, 64);
++  mpfr_init2 (t, 64);
++  mpfr_init2 (u, 64);
++
++  mpfr_set_str (x, "0xf.fffffffffffffffp-14766", 16, MPFR_RNDN);
++  mpfr_set_str (y, "-0xf.fffffffffffffffp+317", 16, MPFR_RNDN);
++  mpfr_set_str (z, "0x8.3ffffffffffe3ffp-14443", 16, MPFR_RNDN);
++  mpfr_set_str (t, "0x8.7ffffffffffc7ffp-14444", 16, MPFR_RNDN);
++  i = mpfr_fma (u, x, y, z, MPFR_RNDN);
++  if (mpfr_cmp (u, t) != 0)
++    {
++      printf ("Wrong result in bug20101018 (a)\n");
++      printf ("Expected ");
++      mpfr_out_str (stdout, 16, 0, t, MPFR_RNDN);
++      printf ("\nGot      ");
++      mpfr_out_str (stdout, 16, 0, u, MPFR_RNDN);
++      printf ("\n");
++      exit (1);
++    }
++  if (i <= 0)
++    {
++      printf ("Wrong ternary value in bug20101018 (a)\n");
++      printf ("Expected > 0\n");
++      printf ("Got      %d\n", i);
++      exit (1);
++    }
++
++  mpfr_set_str (x, "-0xf.fffffffffffffffp-11420", 16, MPFR_RNDN);
++  mpfr_set_str (y, "0xf.fffffffffffffffp+9863", 16, MPFR_RNDN);
++  mpfr_set_str (z, "0x8.fffff80ffffffffp-1551", 16, MPFR_RNDN);
++  mpfr_set_str (t, "0x9.fffff01ffffffffp-1552", 16, MPFR_RNDN);
++  i = mpfr_fma (u, x, y, z, MPFR_RNDN);
++  if (mpfr_cmp (u, t) != 0)
++    {
++      printf ("Wrong result in bug20101018 (b)\n");
++      printf ("Expected ");
++      mpfr_out_str (stdout, 16, 0, t, MPFR_RNDN);
++      printf ("\nGot      ");
++      mpfr_out_str (stdout, 16, 0, u, MPFR_RNDN);
++      printf ("\n");
++      exit (1);
++    }
++  if (i <= 0)
++    {
++      printf ("Wrong ternary value in bug20101018 (b)\n");
++      printf ("Expected > 0\n");
++      printf ("Got      %d\n", i);
++      exit (1);
++    }
++
++  mpfr_set_str (x, "0xf.fffffffffffffffp-2125", 16, MPFR_RNDN);
++  mpfr_set_str (y, "-0xf.fffffffffffffffp-6000", 16, MPFR_RNDN);
++  mpfr_set_str (z, "0x8p-8119", 16, MPFR_RNDN);
++  mpfr_set_str (t, "0x8.000000000000001p-8120", 16, MPFR_RNDN);
++  i = mpfr_fma (u, x, y, z, MPFR_RNDN);
++  if (mpfr_cmp (u, t) != 0)
++    {
++      printf ("Wrong result in bug20101018 (c)\n");
++      printf ("Expected ");
++      mpfr_out_str (stdout, 16, 0, t, MPFR_RNDN);
++      printf ("\nGot      ");
++      mpfr_out_str (stdout, 16, 0, u, MPFR_RNDN);
++      printf ("\n");
++      exit (1);
++    }
++  if (i <= 0)
++    {
++      printf ("Wrong ternary value in bug20101018 (c)\n");
++      printf ("Expected > 0\n");
++      printf ("Got      %d\n", i);
++      exit (1);
++    }
++
++  mpfr_clear (x);
++  mpfr_clear (y);
++  mpfr_clear (z);
++  mpfr_clear (t);
++  mpfr_clear (u);
++}
++
+ int
+ main (int argc, char *argv[])
+ {
+@@ -345,6 +433,8 @@
+ 
+   tests_start_mpfr ();
+ 
++  bug20101018 ();
++
+   mpfr_init (x);
+   mpfr_init (s);
+   mpfr_init (y);
+diff -Naurd mpfr-3.0.0-a/tests/tsub.c mpfr-3.0.0-b/tests/tsub.c
+--- mpfr-3.0.0-a/tests/tsub.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tsub.c	2010-10-21 20:59:32.000000000 +0000
+@@ -201,6 +201,8 @@
+   if (mpfr_cmp (z, x))
+     {
+       printf ("Error in mpfr_sub (2)\n");
++      printf ("Expected "); mpfr_print_binary (x); puts ("");
++      printf ("Got      "); mpfr_print_binary (z); puts ("");
+       exit (1);
+     }
+   mpfr_set_str_binary (x, "1.1110111011110001110111011111111111101000011001011100101100101101");
+@@ -478,6 +480,156 @@
+   mpfr_clear (u);
+ }
+ 
++/* Bug found by Jakub Jelinek
++ * http://bugzilla.redhat.com/643657
++ * https://gforge.inria.fr/tracker/index.php?func=detail&aid=11301
++ * The consequence can be either an assertion failure (i = 2 in the
++ * testcase below, in debug mode) or an incorrectly rounded value.
++ */
++static void
++bug20101017 (void)
++{
++  mpfr_t a, b, c;
++  int inex;
++  int i;
++
++  mpfr_init2 (a, GMP_NUMB_BITS * 2);
++  mpfr_init2 (b, GMP_NUMB_BITS);
++  mpfr_init2 (c, GMP_NUMB_BITS);
++
++  /* a = 2^(2N) + k.2^(2N-1) + 2^N and b = 1
++     with N = GMP_NUMB_BITS and k = 0 or 1.
++     c = a - b should round to the same value as a. */
++
++  for (i = 2; i <= 3; i++)
++    {
++      mpfr_set_ui_2exp (a, i, GMP_NUMB_BITS - 1, MPFR_RNDN);
++      mpfr_add_ui (a, a, 1, MPFR_RNDN);
++      mpfr_mul_2ui (a, a, GMP_NUMB_BITS, MPFR_RNDN);
++      mpfr_set_ui (b, 1, MPFR_RNDN);
++      inex = mpfr_sub (c, a, b, MPFR_RNDN);
++      mpfr_set (b, a, MPFR_RNDN);
++      if (! mpfr_equal_p (c, b))
++        {
++          printf ("Error in bug20101017 for i = %d.\n", i);
++          printf ("Expected ");
++          mpfr_out_str (stdout, 16, 0, b, MPFR_RNDN);
++          putchar ('\n');
++          printf ("Got      ");
++          mpfr_out_str (stdout, 16, 0, c, MPFR_RNDN);
++          putchar ('\n');
++          exit (1);
++        }
++      if (inex >= 0)
++        {
++          printf ("Error in bug20101017 for i = %d: bad inex value.\n", i);
++          printf ("Expected negative, got %d.\n", inex);
++          exit (1);
++        }
++    }
++
++  mpfr_set_prec (a, 64);
++  mpfr_set_prec (b, 129);
++  mpfr_set_prec (c, 2);
++  mpfr_set_str_binary (b, "0.100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001E65");
++  mpfr_set_str_binary (c, "0.10E1");
++  inex = mpfr_sub (a, b, c, MPFR_RNDN);
++  if (mpfr_cmp_ui_2exp (a, 1, 64) != 0 || inex >= 0)
++    {
++      printf ("Error in mpfr_sub for b-c for b=2^64+1+2^(-64), c=1\n");
++      printf ("Expected result 2^64 with inex < 0\n");
++      printf ("Got "); mpfr_print_binary (a);
++      printf (" with inex=%d\n", inex);
++      exit (1);
++    }
++
++  mpfr_clears (a, b, c, (mpfr_ptr) 0);
++}
++
++/* hard test of rounding */
++static void
++check_rounding (void)
++{
++  mpfr_t a, b, c, res;
++  mpfr_prec_t p;
++  long k, l;
++  int i;
++
++#define MAXKL (2 * GMP_NUMB_BITS)
++  for (p = MPFR_PREC_MIN; p <= GMP_NUMB_BITS; p++)
++    {
++      mpfr_init2 (a, p);
++      mpfr_init2 (res, p);
++      mpfr_init2 (b, p + 1 + MAXKL);
++      mpfr_init2 (c, MPFR_PREC_MIN);
++
++      /* b = 2^p + 1 + 2^(-k), c = 2^(-l) */
++      for (k = 0; k <= MAXKL; k++)
++        for (l = 0; l <= MAXKL; l++)
++          {
++            mpfr_set_ui_2exp (b, 1, p, MPFR_RNDN);
++            mpfr_add_ui (b, b, 1, MPFR_RNDN);
++            mpfr_mul_2ui (b, b, k, MPFR_RNDN);
++            mpfr_add_ui (b, b, 1, MPFR_RNDN);
++            mpfr_div_2ui (b, b, k, MPFR_RNDN);
++            mpfr_set_ui_2exp (c, 1, -l, MPFR_RNDN);
++            i = mpfr_sub (a, b, c, MPFR_RNDN);
++            /* b - c = 2^p + 1 + 2^(-k) - 2^(-l), should be rounded to
++               2^p for l <= k, and 2^p+2 for l < k */
++            if (l <= k)
++              {
++                if (mpfr_cmp_ui_2exp (a, 1, p) != 0)
++                  {
++                    printf ("Wrong result in check_rounding\n");
++                    printf ("p=%lu k=%ld l=%ld\n", p, k, l);
++                    printf ("b="); mpfr_print_binary (b); puts ("");
++                    printf ("c="); mpfr_print_binary (c); puts ("");
++                    printf ("Expected 2^%lu\n", p);
++                    printf ("Got      "); mpfr_print_binary (a); puts ("");
++                    exit (1);
++                  }
++                if (i >= 0)
++                  {
++                    printf ("Wrong ternary value in check_rounding\n");
++                    printf ("p=%lu k=%ld l=%ld\n", p, k, l);
++                    printf ("b="); mpfr_print_binary (b); puts ("");
++                    printf ("c="); mpfr_print_binary (c); puts ("");
++                    printf ("a="); mpfr_print_binary (a); puts ("");
++                    printf ("Expected < 0, got %d\n", i);
++                    exit (1);
++                  }
++              }
++            else /* l < k */
++              {
++                mpfr_set_ui_2exp (res, 1, p, MPFR_RNDN);
++                mpfr_add_ui (res, res, 2, MPFR_RNDN);
++                if (mpfr_cmp (a, res) != 0)
++                  {
++                    printf ("Wrong result in check_rounding\n");
++                    printf ("b="); mpfr_print_binary (b); puts ("");
++                    printf ("c="); mpfr_print_binary (c); puts ("");
++                    printf ("Expected "); mpfr_print_binary (res); puts ("");
++                    printf ("Got      "); mpfr_print_binary (a); puts ("");
++                    exit (1);
++                  }
++                if (i <= 0)
++                  {
++                    printf ("Wrong ternary value in check_rounding\n");
++                    printf ("b="); mpfr_print_binary (b); puts ("");
++                    printf ("c="); mpfr_print_binary (c); puts ("");
++                    printf ("Expected > 0, got %d\n", i);
++                    exit (1);
++                  }
++              }
++          }
++
++      mpfr_clear (a);
++      mpfr_clear (res);
++      mpfr_clear (b);
++      mpfr_clear (c);
++    }
++}
++
+ #define TEST_FUNCTION test_sub
+ #define TWO_ARGS
+ #define RAND_FUNCTION(x) mpfr_random2(x, MPFR_LIMB_SIZE (x), randlimb () % 100, RANDS)
+@@ -491,6 +643,8 @@
+ 
+   tests_start_mpfr ();
+ 
++  bug20101017 ();
++  check_rounding ();
+   check_diverse ();
+   check_inexact ();
+   bug_ddefour ();
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-10-21 20:28:38.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-10-21 20:59:32.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0-p5";
++  return "3.0.0-p6";
+ }
+diff -Naurd mpfr-3.0.0-a/PATCHES mpfr-3.0.0-b/PATCHES
+--- mpfr-3.0.0-a/PATCHES	2010-10-21 21:18:26.000000000 +0000
++++ mpfr-3.0.0-b/PATCHES	2010-10-21 21:18:26.000000000 +0000
+@@ -0,0 +1 @@
++mpfr_set_ld
+diff -Naurd mpfr-3.0.0-a/VERSION mpfr-3.0.0-b/VERSION
+--- mpfr-3.0.0-a/VERSION	2010-10-21 20:59:32.000000000 +0000
++++ mpfr-3.0.0-b/VERSION	2010-10-21 21:18:26.000000000 +0000
+@@ -1 +1 @@
+-3.0.0-p6
++3.0.0-p7
+diff -Naurd mpfr-3.0.0-a/mpfr.h mpfr-3.0.0-b/mpfr.h
+--- mpfr-3.0.0-a/mpfr.h	2010-10-21 20:59:32.000000000 +0000
++++ mpfr-3.0.0-b/mpfr.h	2010-10-21 21:18:26.000000000 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 0
+ #define MPFR_VERSION_PATCHLEVEL 0
+-#define MPFR_VERSION_STRING "3.0.0-p6"
++#define MPFR_VERSION_STRING "3.0.0-p7"
+ 
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.0.0-a/set_ld.c mpfr-3.0.0-b/set_ld.c
+--- mpfr-3.0.0-a/set_ld.c	2010-06-10 11:00:14.000000000 +0000
++++ mpfr-3.0.0-b/set_ld.c	2010-10-21 21:18:26.000000000 +0000
+@@ -102,21 +102,25 @@
+             {
+               x /= div13; /* exact */
+               shift_exp += 8192;
++              mpfr_div_2si (t, t, 8192, MPFR_RNDZ);
+             }
+           if (ABS (x) >= div12)
+             {
+               x /= div12; /* exact */
+               shift_exp += 4096;
++              mpfr_div_2si (t, t, 4096, MPFR_RNDZ);
+             }
+           if (ABS (x) >= div11)
+             {
+               x /= div11; /* exact */
+               shift_exp += 2048;
++              mpfr_div_2si (t, t, 2048, MPFR_RNDZ);
+             }
+           if (ABS (x) >= div10)
+             {
+               x /= div10; /* exact */
+               shift_exp += 1024;
++              mpfr_div_2si (t, t, 1024, MPFR_RNDZ);
+             }
+           /* warning: we may have DBL_MAX=2^1024*(1-2^(-53)) < x < 2^1024,
+              therefore we have one extra exponent reduction step */
+@@ -124,9 +128,10 @@
+             {
+               x /= div9; /* exact */
+               shift_exp += 512;
++              mpfr_div_2si (t, t, 512, MPFR_RNDZ);
+             }
+         } /* Check overflow of double */
+-      else
++      else /* no overflow on double */
+         {
+           long double div9, div10, div11;
+ 
+@@ -149,29 +154,34 @@
+                 {
+                   x /= div13; /* exact */
+                   shift_exp -= 8192;
++                  mpfr_mul_2si (t, t, 8192, MPFR_RNDZ);
+                 }
+               if (ABS (x) <= div12)
+                 {
+                   x /= div12; /* exact */
+                   shift_exp -= 4096;
++                  mpfr_mul_2si (t, t, 4096, MPFR_RNDZ);
+                 }
+               if (ABS (x) <= div11)
+                 {
+                   x /= div11; /* exact */
+                   shift_exp -= 2048;
++                  mpfr_mul_2si (t, t, 2048, MPFR_RNDZ);
+                 }
+               if (ABS (x) <= div10)
+                 {
+                   x /= div10; /* exact */
+                   shift_exp -= 1024;
++                  mpfr_mul_2si (t, t, 1024, MPFR_RNDZ);
+                 }
+               if (ABS(x) <= div9)
+                 {
+                   x /= div9;  /* exact */
+                   shift_exp -= 512;
++                  mpfr_mul_2si (t, t, 512, MPFR_RNDZ);
+                 }
+             }
+-          else
++          else /* no underflow */
+             {
+               inexact = mpfr_set_d (u, (double) x, MPFR_RNDZ);
+               MPFR_ASSERTD (inexact == 0);
+diff -Naurd mpfr-3.0.0-a/tests/tset_ld.c mpfr-3.0.0-b/tests/tset_ld.c
+--- mpfr-3.0.0-a/tests/tset_ld.c	2010-06-10 11:00:13.000000000 +0000
++++ mpfr-3.0.0-b/tests/tset_ld.c	2010-10-21 21:18:26.000000000 +0000
+@@ -147,12 +147,39 @@
+ test_fixed_bugs (void)
+ {
+   mpfr_t x;
+-  long double d;
++  long double l, m;
+ 
+   /* bug found by Steve Kargl (2009-03-14) */
+   mpfr_init2 (x, 64);
+   mpfr_set_ui_2exp (x, 1, -16447, MPFR_RNDN);
+-  d = mpfr_get_ld (x, MPFR_RNDN);  /* an assertion failed in init2.c:50 */
++  mpfr_get_ld (x, MPFR_RNDN);  /* an assertion failed in init2.c:50 */
++
++  /* bug reported by Jakub Jelinek (2010-10-17)
++     https://gforge.inria.fr/tracker/?func=detail&aid=11300 */
++  mpfr_set_prec (x, MPFR_LDBL_MANT_DIG);
++  /* l = 0x1.23456789abcdef0123456789abcdp-914L; */
++  l = 8.215640181713713164092636634579e-276;
++  mpfr_set_ld (x, l, MPFR_RNDN);
++  m = mpfr_get_ld (x, MPFR_RNDN);
++  if (m != l)
++    {
++      printf ("Error in get_ld o set_ld for l=%Le\n", l);
++      printf ("Got m=%Le instead of l\n", m);
++      exit (1);
++    }
++
++  /* another similar test which failed with extended double precision and the
++     generic code for mpfr_set_ld */
++  /* l = 0x1.23456789abcdef0123456789abcdp-968L; */
++  l = 4.560596445887084662336528403703e-292;
++  mpfr_set_ld (x, l, MPFR_RNDN);
++  m = mpfr_get_ld (x, MPFR_RNDN);
++  if (m != l)
++    {
++      printf ("Error in get_ld o set_ld for l=%Le\n", l);
++      printf ("Got m=%Le instead of l\n", m);
++      exit (1);
++    }
+ 
+   mpfr_clear (x);
+ }
+diff -Naurd mpfr-3.0.0-a/version.c mpfr-3.0.0-b/version.c
+--- mpfr-3.0.0-a/version.c	2010-10-21 20:59:32.000000000 +0000
++++ mpfr-3.0.0-b/version.c	2010-10-21 21:18:26.000000000 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+-  return "3.0.0-p6";
++  return "3.0.0-p7";
+ }
diff --git a/meta-oe/recipes-support/mpfr/mpfr_3.0.0.bb b/meta-oe/recipes-support/mpfr/mpfr_3.0.0.bb
new file mode 100644
index 0000000..cb347c7
--- /dev/null
+++ b/meta-oe/recipes-support/mpfr/mpfr_3.0.0.bb
@@ -0,0 +1,30 @@
+DESCRIPTION = "A C library for multiple-precision floating-point computations with exact rounding"
+HOMEPAGE = "http://www.mpfr.org/"
+LICENSE="GPLv3&LGPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+                    file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6"
+SECTION = "devel"
+BBCLASSEXTEND = "native nativesdk"
+DEPENDS = "gmp"
+
+inherit autotools
+
+do_fixup() {
+        rm ${S}/PATCHES || true
+}
+
+addtask fixup after do_unpack before do_patch
+
+NATIVE_INSTALL_WORKS = "1"
+PR = "r4"
+
+SRC_URI = "http://www.mpfr.org/${BP}/${BP}.tar.bz2 \
+           file://p4.patch"
+
+# fix build in thumb mode for armv4t
+SRC_URI_append_thumb = " file://long-long-thumb.patch"
+
+EXTRA_OECONF_append_virtclass-native = " --enable-static"
+
+SRC_URI[md5sum] = "f45bac3584922c8004a10060ab1a8f9f"
+SRC_URI[sha256sum] = "8f4e5f9c53536cb798a30455ac429b1f9fc75a0f8af32d6e0ac31ebf1024821f"
diff --git a/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch b/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch
new file mode 100644
index 0000000..0f224be
--- /dev/null
+++ b/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch
@@ -0,0 +1,12 @@
+diff -uNr nano-2.2.5.orig//configure.ac nano-2.2.5/configure.ac
+--- nano-2.2.5.orig//configure.ac	2010-08-06 03:00:51.000000000 +0200
++++ nano-2.2.5/configure.ac	2010-08-10 14:11:52.000000000 +0200
+@@ -442,7 +442,7 @@
+     AC_CHECK_HEADERS(ncurses.h)
+ 
+     if test x$enable_utf8 != xno; then
+-	AC_CHECK_LIB(ncursesw, get_wch, [CURSES_LIB="-lncursesw" CPPFLAGS="-I/usr/include/ncursesw $CPPFLAGS" CURSES_LIB_NAME=ncursesw CURSES_LIB_WIDE=yes])
++	AC_CHECK_LIB(ncursesw, get_wch, [CURSES_LIB="-lncursesw" CURSES_LIB_NAME=ncursesw CURSES_LIB_WIDE=yes])
+     fi
+ 
+     if eval "test x$CURSES_LIB_NAME = x"; then
diff --git a/meta-oe/recipes-support/nano/nano.inc b/meta-oe/recipes-support/nano/nano.inc
new file mode 100644
index 0000000..2d52cab
--- /dev/null
+++ b/meta-oe/recipes-support/nano/nano.inc
@@ -0,0 +1,19 @@
+DESCRIPTION = "GNU nano (Nano's ANOther editor, or \
+Not ANOther editor) is an enhanced clone of the \
+Pico text editor."
+HOMEPAGE = "http://www.nano-editor.org/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
+SECTION = "console/utils"
+DEPENDS = "ncurses"
+RDEPENDS_${PN} = "ncurses-terminfo"
+
+INC_PR = "r2"
+
+PV_MAJOR = "${@bb.data.getVar('PV',d,1).split('.')[0]}.${@bb.data.getVar('PV',d,1).split('.')[1]}"
+
+SRC_URI = "http://www.nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.gz"
+
+inherit autotools gettext
+
+EXTRA_OECONF = "--enable-all"
diff --git a/meta-oe/recipes-support/nano/nano_2.2.5.bb b/meta-oe/recipes-support/nano/nano_2.2.5.bb
new file mode 100644
index 0000000..e656f46
--- /dev/null
+++ b/meta-oe/recipes-support/nano/nano_2.2.5.bb
@@ -0,0 +1,8 @@
+include nano.inc
+
+PR = "${INC_PR}.0"
+
+SRC_URI += "file://ncursesw.includedir.patch"
+
+SRC_URI[md5sum] = "77a10a49589f975ce98350a4527a2ebf"
+SRC_URI[sha256sum] = "9015945d1badabbada203b37c4779d3dd1066234235c714deb439989c5cd7d9e"
diff --git a/meta-oe/recipes-support/pidgin/pidgin.inc b/meta-oe/recipes-support/pidgin/pidgin.inc
new file mode 100644
index 0000000..96a2345
--- /dev/null
+++ b/meta-oe/recipes-support/pidgin/pidgin.inc
@@ -0,0 +1,88 @@
+DESCRIPTION = "multi-protocol instant messaging client"
+SECTION = "x11/network"
+LICENSE = "GPL"
+DEPENDS = "python startup-notification avahi gtk+ ncurses gnutls virtual/libintl gstreamer dbus"
+INC_PR = "r0"
+
+inherit autotools gettext pkgconfig gconf
+
+EXTRA_OECONF = " \
+		--enable-vv \
+		--disable-perl \
+		--disable-tcl \
+		--disable-gevolution \
+		--disable-schemas-install \
+		--x-includes=${STAGING_INCDIR} \
+		--x-libraries=${STAGING_LIBDIR} \
+		--enable-gnutls=yes \
+		--with-ncurses-headers=${STAGING_INCDIR} \
+		--with-gnutls-includes=${STAGING_INCDIR} \
+		--with-gnutls-libs=${STAGING_LIBDIR} \
+		"
+
+do_configure_prepend() {
+	touch ${S}/po/Makefile
+}
+
+OE_LT_RPATH_ALLOW=":${libdir}/purple-2:"
+OE_LT_RPATH_ALLOW[export]="1"
+
+PACKAGES =+ "libpurple-dbg libpurple-dev libpurple libgnt-dbg libgnt libgnt-dev finch-dbg finch finch-dev ${PN}-data"
+
+LEAD_SONAME = "libpurple.so.0"
+FILES_libpurple     = "${libdir}/libpurple*.so.* ${libdir}/purple-2 ${bindir}/purple-* ${sysconfdir}/gconf/schemas/purple* ${datadir}/purple/ca-certs"
+FILES_libpurple-dev = "${libdir}/libpurple*.la \
+                       ${libdir}/libpurple*.so \
+                       ${libdir}/purple-2/*.la \
+                       ${libdir}/purple-2/libjabber.so \
+                       ${libdir}/purple-2/liboscar.so \
+                       ${datadir}/aclocal"
+FILES_libpurple-dbg += "${libdir}/.debug/libpurple* \
+                        ${libdir}/purple-2/.debug"
+FILES_libgnt         = "${libdir}/libgnt.so.* ${libdir}/gnt/*.so" 
+FILES_libgnt-dev     = "${libdir}/gnt/*.la" 
+FILES_libgnt-dbg     = "${libdir}/gnt/.debug \
+FILES_finch          = "${bindir}/finch"
+FILES_finch-dev      = "${libdir}/finch/*.la"
+FILES_finch-dbg      = "${bindir}/.debug/finch \
+                        ${libdir}/finch/.debug"
+
+FILES_${PN} = "${bindir} ${datadir}/${PN} ${libdir}/${PN}/*.so \
+	       ${datadir}/applications"
+RRECOMMENDS_${PN} = "${PN}-data libpurple-plugin-ssl-gnutls libpurple-protocol-irc libpurple-protocol-xmpp"
+
+FILES_${PN}-data = "${datadir}/pixmaps ${datadir}/sounds ${datadir}/icons"
+FILES_${PN}-dev += "${libdir}/${PN}/*.la"
+
+PACKAGES_DYNAMIC = "libpurple-protocol-* libpurple-plugin-* pidgin-plugin-* finch-plugin-*"
+
+python populate_packages_prepend () {
+	pidgroot = bb.data.expand('${libdir}/pidgin', d)
+	purple   = bb.data.expand('${libdir}/purple-2', d)
+	finch    = bb.data.expand('${libdir}/finch', d)
+
+	do_split_packages(d, pidgroot, '^([^l][^i][^b].*)\.so$',
+		output_pattern='pidgin-plugin-%s',
+		description='Pidgin plugin %s',
+		prepend=True, extra_depends='')
+
+	do_split_packages(d, purple, '^lib(.*)\.so$',
+		output_pattern='libpurple-protocol-%s',
+		description='Libpurple protocol plugin for %s',
+		prepend=True, extra_depends='')
+
+	do_split_packages(d, purple, '^(ssl-.*)\.so$',
+		output_pattern='libpurple-plugin-%s',
+		description='libpurple plugin %s',
+		prepend=True, extra_depends='libpurple-plugin-ssl')
+
+	do_split_packages(d, purple, '^([^l][^i][^b].*)\.so$',
+		output_pattern='libpurple-plugin-%s',
+		description='libpurple plugin %s',
+		prepend=True, extra_depends='')
+
+	do_split_packages(d, finch, '^([^l][^i][^b].*)\.so$',
+		output_pattern='finch-plugin-%s',
+		description='Finch plugin %s',
+		prepend=True, extra_depends='')
+}
diff --git a/meta-oe/recipes-support/pidgin/pidgin/pidgin-cross-python-265.patch b/meta-oe/recipes-support/pidgin/pidgin/pidgin-cross-python-265.patch
new file mode 100644
index 0000000..57c4c46
--- /dev/null
+++ b/meta-oe/recipes-support/pidgin/pidgin/pidgin-cross-python-265.patch
@@ -0,0 +1,16 @@
+Index: pidgin-2.6.5/configure.ac
+===================================================================
+--- pidgin-2.6.5.orig/configure.ac
++++ pidgin-2.6.5/configure.ac
+@@ -1470,8 +1470,9 @@ if test "_$pythonpath" != _ ; then
+ 		AC_CHECK_LIB(pthread, pthread_create, )
+ 		AC_CHECK_LIB(util, openpty, )
+ 		AC_CHECK_LIB(db, dbopen, )
+-		PY_LIBS="-L$PY_EXEC_PREFIX/lib/python$PY_VERSION/config -lpython$PY_VERSION"
+-		PY_CFLAGS="-I$PY_PREFIX/include/python$PY_VERSION"
++		m4_pattern_allow([^PKG_CONFIG_SYSROOT_DIR$])
++		PY_LIBS="-L$PKG_CONFIG_SYSROOT_DIR/usr/lib/python$PY_VERSION/config -lpython$PY_VERSION"
++		PY_CFLAGS="-I$PKG_CONFIG_SYSROOT_DIR/usr/include/python$PY_VERSION"
+ 		AC_DEFINE(USE_PYTHON, [1], [Define if python headers are available.])
+ 		AC_MSG_RESULT(ok)
+ 	else
diff --git a/meta-oe/recipes-support/pidgin/pidgin/pidgin.desktop-set-icon.patch b/meta-oe/recipes-support/pidgin/pidgin/pidgin.desktop-set-icon.patch
new file mode 100644
index 0000000..05f7689
--- /dev/null
+++ b/meta-oe/recipes-support/pidgin/pidgin/pidgin.desktop-set-icon.patch
@@ -0,0 +1,11 @@
+--- pidgin-2.0.1/pidgin.desktop.in.orig	2007-06-20 23:50:44.000000000 +0000
++++ pidgin-2.0.1/pidgin.desktop.in	2007-06-20 23:51:05.000000000 +0000
+@@ -4,7 +4,7 @@
+ _GenericName=Internet Messenger
+ _Comment=Send instant messages over multiple protocols
+ Exec=pidgin
+-Icon=pidgin
++Icon=/usr/share/icons/hicolor/48x48/apps/pidgin.png
+ StartupNotify=true
+ Terminal=false
+ Type=Application
diff --git a/meta-oe/recipes-support/pidgin/pidgin/purple-OE-branding-25.patch b/meta-oe/recipes-support/pidgin/pidgin/purple-OE-branding-25.patch
new file mode 100644
index 0000000..293ef70
--- /dev/null
+++ b/meta-oe/recipes-support/pidgin/pidgin/purple-OE-branding-25.patch
@@ -0,0 +1,16 @@
+Index: pidgin-2.5.0/libpurple/protocols/irc/irc.h
+===================================================================
+--- pidgin-2.5.0.orig/libpurple/protocols/irc/irc.h	2008-08-19 01:53:38.000000000 +0000
++++ pidgin-2.5.0/libpurple/protocols/irc/irc.h	2008-08-27 11:15:58.000000000 +0000
+@@ -36,9 +36,9 @@
+ 
+ #define IRC_DEFAULT_CHARSET "UTF-8"
+ #define IRC_DEFAULT_AUTODETECT FALSE
+-#define IRC_DEFAULT_ALIAS "purple"
++#define IRC_DEFAULT_ALIAS "OE-user"
+ 
+-#define IRC_DEFAULT_QUIT "Leaving."
++#define IRC_DEFAULT_QUIT "Powered by OE: www.openembedded.org"
+ 
+ #define IRC_INITIAL_BUFSIZE 1024
+ 
diff --git a/meta-oe/recipes-support/pidgin/pidgin/sanitize-configure.ac.patch b/meta-oe/recipes-support/pidgin/pidgin/sanitize-configure.ac.patch
new file mode 100644
index 0000000..a77d64f
--- /dev/null
+++ b/meta-oe/recipes-support/pidgin/pidgin/sanitize-configure.ac.patch
@@ -0,0 +1,33 @@
+--- /tmp/configure.ac	2007-05-08 17:29:02.000000000 +0200
++++ pidgin-2.0.0/configure.ac	2007-05-08 17:30:30.325251000 +0200
+@@ -472,7 +472,7 @@
+ 	if test "x$enable_consoleui" = "xyes"; then
+ 		dnl # Some distros put the headers in ncursesw/, some don't
+ 		found_ncurses_h=no
+-		for location in $ac_ncurses_includes $NCURSES_HEADERS /usr/include/ncursesw /usr/include
++		for location in $ac_ncurses_includes $NCURSES_HEADERS 
+ 		do
+ 			f="$location/ncurses.h"
+ 			AC_CHECK_HEADER($f,[
+@@ -1860,10 +1860,6 @@
+ 			KRB4_CFLAGS="$KRB4_CFLAGS -I${kerberos}/include/kerberosIV"
+ 		fi
+ 		KRB4_LDFLAGS="-L${kerberos}/lib"
+-	elif test -d /usr/local/include/kerberosIV ; then
+-		KRB4_CFLAGS="-I/usr/local/include/kerberosIV"
+-	elif test -d /usr/include/kerberosIV ; then
+-		KRB4_CFLAGS="-I/usr/include/kerberosIV"
+ 	fi
+ 	AC_DEFINE(ZEPHYR_USES_KERBEROS, 1, [Define if kerberos should be used in Zephyr.])
+ 
+@@ -1896,10 +1892,6 @@
+ 		ZEPHYR_LDFLAGS="-L${zephyr}/lib"
+ 	elif test -d /usr/athena/include/zephyr ; then
+ 		ZEPHYR_CFLAGS="-I/usr/athena/include"
+-	elif test -d /usr/include/zephyr ; then
+-		ZEPHYR_CFLAGS="-I/usr/include"
+-	elif test -d /usr/local/include/zephyr ; then
+-		ZEPHYR_CFLAGS="-I/usr/local/include"
+ 	fi
+ 	AC_DEFINE(LIBZEPHYR_EXT, 1 , [Define if external libzephyr should be used.])
+ 	AM_CONDITIONAL(EXTERNAL_LIBZEPHYR, test "x$zephyr" != "xno")
diff --git a/meta-oe/recipes-support/pidgin/pidgin_2.7.9.bb b/meta-oe/recipes-support/pidgin/pidgin_2.7.9.bb
new file mode 100644
index 0000000..d5527ea
--- /dev/null
+++ b/meta-oe/recipes-support/pidgin/pidgin_2.7.9.bb
@@ -0,0 +1,22 @@
+require pidgin.inc
+PR = "${INC_PR}.0"
+
+DEPENDS += "farsight2 libidn"
+
+SRC_URI = "\
+  ${SOURCEFORGE_MIRROR}/pidgin/pidgin-${PV}.tar.bz2 \
+  file://sanitize-configure.ac.patch \
+  file://pidgin.desktop-set-icon.patch \
+  file://purple-OE-branding-25.patch \
+  file://pidgin-cross-python-265.patch \
+"
+
+SRC_URI[md5sum] = "9bc6cf953ed7d383b215fa8487bf8829"
+SRC_URI[sha256sum] = "9722d7f199a6704e29900c80f270d9409d5c28caab77f495b68108d81ba3e19e"
+
+EXTRA_OECONF += "\
+  --disable-gtkspell \
+  --disable-meanwhile \
+  --disable-nm \
+  --disable-screensaver \
+"
diff --git a/meta-oe/recipes-support/poppler/poppler-data_0.4.0.bb b/meta-oe/recipes-support/poppler/poppler-data_0.4.0.bb
new file mode 100644
index 0000000..e3fd54b
--- /dev/null
+++ b/meta-oe/recipes-support/poppler/poppler-data_0.4.0.bb
@@ -0,0 +1,24 @@
+DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base."
+LICENSE = "Adobe"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4870b98343f0bbb25fa43b9d2ba59448 \
+                    file://COPYING.adobe;md5=63c6a8a9df204c00461fa5f163d8a663 \
+                    file://COPYING.gpl2;md5=751419260aa954499f7abaabaa882bbe \
+"
+
+PR = "r1"
+
+SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz"
+
+do_compile() {
+}
+
+do_install() {
+	oe_runmake install DESTDIR=${D}
+}
+
+FILES_${PN} += "${datadir}"
+PACKAGE_ARCH = "all"
+
+
+SRC_URI[md5sum] = "6975bf8e9ea2cfb42b9ecdbcc257cf57"
+SRC_URI[sha256sum] = "5caf7e10b7b0c6a4e1e753af09be52224e88bb8fbcb47794ad72b99b9e24b109"
diff --git a/meta-oe/recipes-support/poppler/poppler-fpu.inc b/meta-oe/recipes-support/poppler/poppler-fpu.inc
new file mode 100644
index 0000000..a262730
--- /dev/null
+++ b/meta-oe/recipes-support/poppler/poppler-fpu.inc
@@ -0,0 +1,6 @@
+
+def get_poppler_fpu_setting(bb, d):
+	if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
+		return "--enable-fixedpoint"
+	return ""
+
diff --git a/meta-oe/recipes-support/poppler/poppler.inc b/meta-oe/recipes-support/poppler/poppler.inc
new file mode 100644
index 0000000..85c3983
--- /dev/null
+++ b/meta-oe/recipes-support/poppler/poppler.inc
@@ -0,0 +1,25 @@
+DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base."
+DEPENDS = "fontconfig jpeg zlib gtk+ cairo"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "\
+  --enable-xpdf-headers \
+  --disable-gtk-test \
+  --disable-poppler-qt \
+  --disable-poppler-qt4 \
+  --enable-zlib \
+"
+
+# check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points
+require poppler-fpu.inc
+EXTRA_OECONF += "${@get_poppler_fpu_setting(bb, d)}"
+
+PACKAGES =+ "libpoppler libpoppler-glib"
+FILES_libpoppler = "${libdir}/libpoppler.so.*"
+FILES_libpoppler-glib = "${libdir}/libpoppler-glib.so.*"
+
diff --git a/meta-oe/recipes-support/poppler/poppler_0.12.3.bb b/meta-oe/recipes-support/poppler/poppler_0.12.3.bb
new file mode 100644
index 0000000..ce1952e
--- /dev/null
+++ b/meta-oe/recipes-support/poppler/poppler_0.12.3.bb
@@ -0,0 +1,10 @@
+require poppler.inc
+
+DEPENDS += "lcms"
+
+EXTRA_OECONF_append = " --disable-abiword-output "
+
+RDEPENDS_${PN} = "poppler-data"
+
+SRC_URI[md5sum] = "d0ca8344d8d94e27aaba6d432688365d"
+SRC_URI[sha256sum] = "7a4ffe6d2950c446c285700d3b2dc399540a27ce635dd712aff646f02f8dfbcc"
diff --git a/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb b/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb
new file mode 100644
index 0000000..b813f76
--- /dev/null
+++ b/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "A user-space tool to show and modify the state of GPIOs on the S3c24xx platform"
+SECTION = "console/utils"
+AUTHOR = "Werner Almesberger <werner at openmoko.org>"
+LICENSE = "GPL"
+SRCREV = "4949"
+PV = "1.0+svnr${SRCPV}"
+PR = "r2"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gpio;proto=http"
+S = "${WORKDIR}/gpio"
+
+do_compile() {
+	${CC} ${CFLAGS} ${LDFLAGS} -static -o ${PN} gpio.c
+}
+
+do_install() {
+	install -d ${D}${sbindir}
+	install -m 0755 ${PN} ${D}${sbindir}
+}
diff --git a/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb b/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb
new file mode 100644
index 0000000..f8ca794
--- /dev/null
+++ b/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "A user-space tool to show and modify the state of GPIOs on the S3c64xx platform"
+SECTION = "console/utils"
+AUTHOR = "Werner Almesberger <werner at openmoko.org>"
+LICENSE = "GPL"
+SRCREV = "4949"
+PV = "1.0+svnr${SRCPV}"
+PR = "r0"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gpio;proto=http"
+S = "${WORKDIR}/gpio"
+
+do_compile() {
+	${CC} ${CFLAGS} ${LDFLAGS} -static -o ${PN} gpio-s3c6410.c
+}
+
+do_install() {
+	install -d ${D}${sbindir}
+	install -m 0755 ${PN} ${D}${sbindir}
+}
diff --git a/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb b/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb
new file mode 100644
index 0000000..b712316
--- /dev/null
+++ b/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb
@@ -0,0 +1,34 @@
+DESCRIPTION = "JTAG utility to interface w/ a S3C2410 device"
+SECTION = "devel"
+AUTHOR = "Harald Welte <laforge at openmoko.org>"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://parport.c;endline=19;md5=b5681091b0fd8c5f7068835c441bf0c8"
+SRCREV = "4268"
+PV = "0.1+svnr${SRCPV}"
+PR = "r1"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/host/;module=sjf2410-linux;proto=http"
+S = "${WORKDIR}/sjf2410-linux"
+
+inherit native deploy
+do_deploy[sstate-outputdirs] = "${DEPLOY_DIR_TOOLS}"
+
+CFLAGS += "-DLINUX_PPDEV"
+
+NATIVE_INSTALL_WORKS = "1"
+
+do_compile() {
+	oe_runmake
+}
+
+do_install() {
+        install -d ${D}/${bindir}
+        install -m 0755 sjf2410 ${D}/${bindir}
+}
+
+do_deploy() {
+        install -d ${DEPLOY_DIR_TOOLS}
+        install -m 0755 sjf2410 ${DEPLOY_DIR_TOOLS}/sjf2410-${PV}
+}
+
+addtask deploy before do_build after do_install
diff --git a/meta-oe/recipes-support/talloc/talloc_2.0.1.bb b/meta-oe/recipes-support/talloc/talloc_2.0.1.bb
new file mode 100644
index 0000000..a69bd40
--- /dev/null
+++ b/meta-oe/recipes-support/talloc/talloc_2.0.1.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "Hierarchical, reference counted memory pool system with destructors"
+HOMEPAGE = "http://talloc.samba.org"
+LICENSE = "LGPL"
+LIC_FILES_CHKSUM = "file://NEWS;md5=5fe776b23a711c9153ee94bc87e47334"
+
+inherit autotools pkgconfig
+
+SRC_URI = "http://samba.org/ftp/${BPN}/${BPN}-${PV}.tar.gz"
+SRC_URI[md5sum] = "c6e736540145ca58cb3dcb42f91cf57b"
+SRC_URI[sha256sum] = "5b810527405f29d54f50efd78bf2c89e318f2cd8bed001f22f2a1412fd27c9b4"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+PR = "r1"
+
+# autoreconf doesn't work well while reconfiguring included libreplace
+do_configure () {
+       gnu-configize
+       oe_runconf
+}
+
+do_install_append() {
+       install -d ${D}${libdir}
+       ln -s libtalloc.so.2.0.1 ${D}${libdir}/libtalloc.so.2.0
+       ln -s libtalloc.so.2.0 ${D}${libdir}/libtalloc.so.2
+       ln -s libtalloc.so.2 ${D}${libdir}/libtalloc.so
+}
diff --git a/meta-oe/recipes-support/tangogps/tangogps.inc b/meta-oe/recipes-support/tangogps/tangogps.inc
new file mode 100644
index 0000000..436fe07
--- /dev/null
+++ b/meta-oe/recipes-support/tangogps/tangogps.inc
@@ -0,0 +1,15 @@
+DESCRIPTION = "tangoGPS is a map and GPS application using Openstreetmap"
+AUTHOR = "Marcus Bauer <marcus.bauer at gmail.com>"
+HOMEPAGE = "http://tangogps.org/"
+SECTION = "x11/applications"
+LICENSE = "GPLv2"
+PRIORITY = "optional"
+DEPENDS = "curl gtk+ gconf sqlite3 libexif libsoup-2.4"
+
+SRC_URI = "http://www.tangogps.org/downloads/tangogps-${PV}.tar.gz;name=archive"
+S = "${WORKDIR}/tangogps-${PV}"
+
+inherit autotools pkgconfig
+
+RRECOMMENDS_${PN} = "gpsd"
+RRECOMMENDS_shr = "fso-gpsd"
diff --git a/meta-oe/recipes-support/tangogps/tangogps_0.99.4.bb b/meta-oe/recipes-support/tangogps/tangogps_0.99.4.bb
new file mode 100644
index 0000000..ab682f3
--- /dev/null
+++ b/meta-oe/recipes-support/tangogps/tangogps_0.99.4.bb
@@ -0,0 +1,4 @@
+require tangogps.inc
+
+SRC_URI[archive.md5sum] = "0f07ede94a21eb84f5e017fa88a1fc3d"
+SRC_URI[archive.sha256sum] = "660fdf89ef3c379f2fc0c2a9d0c9d3bfa5345835786b72bf9f513ba9ec2c812a"
diff --git a/meta-oe/recipes-support/usbpath/usbpath_svn.bb b/meta-oe/recipes-support/usbpath/usbpath_svn.bb
new file mode 100644
index 0000000..5941267
--- /dev/null
+++ b/meta-oe/recipes-support/usbpath/usbpath_svn.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "Convert the physical locations of a USB device to/from its number"
+AUTHOR = "Werner Almesberger <werner at openmoko.org>"
+SECTION = "console/utils"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://usbpath.c;endline=20;md5=0aa8c7d2af9110c78a99fbf9a504dc3f"
+DEPENDS = "virtual/libusb0"
+DEPENDS_virtclass-native = "virtual/libusb0-native"
+
+BBCLASSEXTEND = "native"
+
+SRCREV = "3172"
+PV = "0.0+svnr${SRCPV}"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/host;module=usbpath;proto=http"
+
+S = "${WORKDIR}/usbpath"
+
+inherit autotools
+
diff --git a/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb b/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
new file mode 100644
index 0000000..1900b6f
--- /dev/null
+++ b/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
@@ -0,0 +1,18 @@
+DESCRIPTION = "A lightweight Terminal Emulator based on libvte, written in Vala."
+SECTION = "x11/applications"
+DEPENDS = "vala-native vte"
+SRCREV = "6cfb8bf8eb1a3812e39fac10a4810b6680fa066a"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+PV = "1.1.1+gitr${SRCPV}"
+PE = "1"
+PR = "r1"
+
+inherit autotools
+
+SRC_URI = "${FREESMARTPHONE_GIT}/vala-terminal.git;protocol=git;branch=master"
+S = "${WORKDIR}/git"
+
+RDEPENDS_${PN} = "ttf-liberation-mono"
+RREPLACES_${PN} = "openmoko-terminal2"
+RPROVIDES_${PN} = "openmoko-terminal2"
diff --git a/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb b/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb
new file mode 100644
index 0000000..a1ee671
--- /dev/null
+++ b/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "Atheros 6K Wifi configuration utility"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://wmiconfig.c;endline=19;md5=4394a56bca1c5b2446c9f8e406c82911"
+SECTION = "console/network"
+SRCREV = "5394"
+PV = "0.0.0+svnr${SRCPV}"
+PR = "r1"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=AR6kSDK.build_sw.18;proto=http"
+S = "${WORKDIR}/AR6kSDK.build_sw.18/host/tools/wmiconfig"
+
+export CC := "${CC}"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_install() {
+	install -d ${D}${bindir}
+	install -m 0755 wmiconfig ${D}${bindir}
+}
+
-- 
1.7.4.1





More information about the Openembedded-devel mailing list