From 670cfaf55e53f7380ca8ee7b4acb2bf0248685c4 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 6 Sep 2013 01:39:14 -0700 Subject: Fri Sep 6 01:39:05 PDT 2013 --- community/0ad/PKGBUILD | 15 +- community/audit/PKGBUILD | 22 +- community/audit/python2.patch | 11 - community/choqok/PKGBUILD | 21 +- community/goldendict/PKGBUILD | 18 +- community/goldendict/fix-wikipedia-images.patch | 26 + community/ibam/03acpi-check.dpatch | 28 + community/ibam/PKGBUILD | 16 +- community/keepalived/PKGBUILD | 8 +- community/libaccounts-qt/PKGBUILD | 6 +- community/linux-tools/PKGBUILD | 21 +- community/nginx/PKGBUILD | 136 +- community/nginx/install | 21 + community/nginx/logrotate | 2 +- community/nginx/nginx.install | 15 - ...902-sql_yacc.yy-incompatible-with-bison-3.patch | 3539 ++++++++++++++++++++ community/percona-server/PKGBUILD | 13 +- community/prelink/PKGBUILD | 26 +- community/prelink/arch-x86_64-dynamic_linker.patch | 12 - community/prelink/prelink.conf | 18 +- community/python-numexpr/PKGBUILD | 8 +- community/python-scikit-learn/LICENSE | 24 + community/python-scikit-learn/PKGBUILD | 54 + community/xmonad/PKGBUILD | 8 +- community/xmonad/xmonad-gnome-session.session | 6 - community/xmonad/xmonad.install | 3 - 26 files changed, 3853 insertions(+), 224 deletions(-) delete mode 100644 community/audit/python2.patch create mode 100644 community/goldendict/fix-wikipedia-images.patch create mode 100644 community/ibam/03acpi-check.dpatch create mode 100644 community/nginx/install delete mode 100644 community/nginx/nginx.install create mode 100644 community/percona-server/0001-MDEV-4902-sql_yacc.yy-incompatible-with-bison-3.patch delete mode 100644 community/prelink/arch-x86_64-dynamic_linker.patch create mode 100644 community/python-scikit-learn/LICENSE create mode 100644 community/python-scikit-learn/PKGBUILD delete mode 100644 community/xmonad/xmonad-gnome-session.session (limited to 'community') diff --git a/community/0ad/PKGBUILD b/community/0ad/PKGBUILD index fa23ed236..6325cb3f7 100644 --- a/community/0ad/PKGBUILD +++ b/community/0ad/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 94012 2013-07-13 12:30:26Z svenstaro $ +# $Id: PKGBUILD 96786 2013-09-05 07:34:19Z svenstaro $ # Maintainer: Sven-Hendrik Haase # Contributor: t3ddy # Contributor: Adrián Chaves Fernández (Gallaecio) pkgname=0ad -pkgver=a13 -_pkgver=0.0.13-alpha -pkgrel=5 +pkgver=a14 +_pkgver=0.0.14-alpha +pkgrel=1 pkgdesc="Cross-platform, 3D and historically-based real-time strategy game" arch=('i686' 'x86_64') url="http://play0ad.com/" @@ -13,15 +13,12 @@ license=('GPL2' 'CCPL') depends=('binutils' 'boost-libs' 'curl' 'enet>=1.3' 'libogg' 'libpng' 'libvorbis' 'libxml2' 'openal' 'sdl' 'wxgtk' 'zlib' 'libgl' '0ad-data' 'glu') makedepends=('boost' 'cmake' 'mesa' 'zip' 'python2') source=("http://releases.wildfiregames.com/$pkgname-$_pkgver-unix-build.tar.xz") -md5sums=('3075c982c4af41a3586b6b6ef637d2c4') +md5sums=('5bbaffa02b6e9082cbd5142d43f9b700') build() { cd "$srcdir/$pkgname-$_pkgver/build/workspaces" - sed -i 's/unix_names = { "boost_filesystem-mt", "boost_system-mt" },/unix_names = { "boost_filesystem", "boost_system" },/g' "${srcdir}/${pkgname}-${_pkgver}/build/premake/extern_libs4.lua" - sed -i 's/unix_names = { "boost_signals-mt" },/unix_names = { "boost_signals" },/g' "${srcdir}/${pkgname}-${_pkgver}/build/premake/extern_libs4.lua" - - unset CPPFLAGS + unset CPPFLAGS # for le spidermonkey ./update-workspaces.sh \ --with-system-enet \ diff --git a/community/audit/PKGBUILD b/community/audit/PKGBUILD index 33e2a59ce..bae50be89 100644 --- a/community/audit/PKGBUILD +++ b/community/audit/PKGBUILD @@ -1,13 +1,13 @@ -# $Id: PKGBUILD 94856 2013-07-31 10:33:01Z mtorromeo $ +# $Id: PKGBUILD 96792 2013-09-05 09:31:14Z mtorromeo $ # Maintainer: Massimiliano Torromeo # Contributor: Connor Behan # Contributor: henning mueller pkgname=audit -pkgver=2.2.3 -pkgrel=4 +pkgver=2.3.2 +pkgrel=1 pkgdesc='User space utilities for storing and searching the audit records generated by the audit subsystem in the Linux kernel.' -url=http://people.redhat.com/sgrubb/$pkgname +url="http://people.redhat.com/sgrubb/$pkgname" arch=(i686 x86_64) depends=(krb5 libcap-ng) makedepends=(libldap swig linux-headers python2) @@ -15,7 +15,7 @@ license=(GPL) options=(!libtool emptydirs) backup=( etc/libaudit.conf - etc/audit/audit.rules + etc/audit/rules.d/audit.rules etc/audit/auditd.conf etc/audisp/audispd.conf etc/audisp/audisp-remote.conf @@ -25,14 +25,11 @@ backup=( etc/audisp/plugins.d/au-remote.conf etc/audisp/plugins.d/syslog.conf ) -source=( - $url/$pkgname-$pkgver.tar.gz - python2.patch -) +source=("$url/$pkgname-$pkgver.tar.gz") build() { cd "$srcdir/$pkgname-$pkgver" - patch -p0 -i "$srcdir/python2.patch" + export PYTHON=/usr/bin/python2 ./configure \ --prefix=/usr \ --sbindir=/usr/bin \ @@ -51,7 +48,7 @@ package() { cd "$pkgdir" install -d var/log/audit - rm -rf etc/rc.d etc/sysconfig + rm -rf etc/rc.d etc/sysconfig usr/lib/audit sed -ri 's|/sbin|/usr/bin|' \ etc/audit/*.conf \ @@ -61,5 +58,4 @@ package() { chmod 644 usr/lib/systemd/system/auditd.service } -sha256sums=('2fc8f97020121593f516dc011ef61f39043c4cea9b2cb9ab3849bf9e41dedf02' - '6adadb405bebe99bb6a50e80e7c1a356996626e135d566283448fe4019fff3a4') +sha256sums=('8872e0b5392888789061db8034164305ef0e1b34543e1e7004d275f039081d29') diff --git a/community/audit/python2.patch b/community/audit/python2.patch deleted file mode 100644 index 87286fc5b..000000000 --- a/community/audit/python2.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- configure.orig 2013-01-16 09:19:32.475800853 +0100 -+++ configure 2013-01-16 09:20:45.764146581 +0100 -@@ -13076,7 +13076,7 @@ - - # Find any Python interpreter. - if test -z "$PYTHON"; then -- for ac_prog in python python2 python3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 -+ for ac_prog in python2 - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 diff --git a/community/choqok/PKGBUILD b/community/choqok/PKGBUILD index d12e6e7d1..5eacdc12e 100644 --- a/community/choqok/PKGBUILD +++ b/community/choqok/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 80665 2012-11-28 22:07:33Z plewis $ +# $Id: PKGBUILD 96780 2013-09-04 22:10:06Z andrea $ # Maintainer: Peter Richard Lewis # Contributor: Andrea Scarpino # Contributor: Emanuele Rossi # Contributor: Bram Schoenmakers pkgname=choqok -pkgver=1.3 -pkgrel=4 +pkgver=1.4 +pkgrel=1 pkgdesc="A Twitter/identi.ca/laconica client for KDE" url='http://choqok.gnufolks.org/' license=('GPL') @@ -15,12 +15,14 @@ depends=('kdebase-runtime' 'qjson' 'qoauth' 'qca-ossl') makedepends=('cmake' 'automoc4') optdepends=('kdebase-konqueror: proxy support') install="${pkgname}.install" -source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -md5sums=('87eea4f2c23467fb021e3e6b794eb37d') +source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.xz") +md5sums=('2efe34ed903b448a21d9233d8033dbdb') -build() { - cd "${srcdir}" +prepare() { mkdir build +} + +build() { cd build cmake ../${pkgname}-${pkgver} \ -DCMAKE_BUILD_TYPE=Release \ @@ -29,9 +31,6 @@ build() { } package() { - cd "${srcdir}"/build + cd build make DESTDIR="${pkgdir}" install - - # This is already installed by kdepimlibs >= 4.9.80 - rm "${pkgdir}"/usr/share/apps/cmake/modules/FindQtOAuth.cmake } diff --git a/community/goldendict/PKGBUILD b/community/goldendict/PKGBUILD index cdf2a4650..d9b7bbd5b 100644 --- a/community/goldendict/PKGBUILD +++ b/community/goldendict/PKGBUILD @@ -1,30 +1,36 @@ -# $Id: PKGBUILD 85453 2013-03-01 19:08:27Z andrea $ +# $Id: PKGBUILD 96817 2013-09-05 20:34:32Z bgyorgy $ # Maintainer: Jaroslav Lichtblau # Contributor: m0rph pkgname=goldendict pkgver=1.0.1 -pkgrel=6 +pkgrel=7 pkgdesc="Feature-rich dictionary lookup program" arch=('i686' 'x86_64') url="http://goldendict.berlios.de/" license=('GPL3') depends=('hunspell' 'libvorbis' 'libxtst' 'libzip' 'qtwebkit' 'phonon') -makedepends=('patch') provides=('stardict') changelog=$pkgname.changelog source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-src.tar.bz2 $pkgname-paths.diff - gcc47.patch) + gcc47.patch + fix-wikipedia-images.patch) sha256sums=('b3fb0405a5edb38f02ef881b48c36e46e2eacf641b0caf8d99403f595a4be9a6' '1dacae7b7a7d7c20a22b4595c07dbd65fdad134a0d4cf283312ea3bdb5f42589' - '2e13857d047186e781c3bd9de3cfdf794f4d44e8e28f9d18dda8df50cfe13c6e') + '2e13857d047186e781c3bd9de3cfdf794f4d44e8e28f9d18dda8df50cfe13c6e' + 'ab669d96db0cb750d4c865b123474d655b6caca9242457c044a60f1fee5b7dc7') -build(){ +prepare(){ cd ${srcdir} patch -Np0 -i ${srcdir}/$pkgname-paths.diff patch -p1 -i ${srcdir}/gcc47.patch + patch -Np1 -i ${srcdir}/fix-wikipedia-images.patch +} + +build(){ + cd ${srcdir} qmake-qt4 make diff --git a/community/goldendict/fix-wikipedia-images.patch b/community/goldendict/fix-wikipedia-images.patch new file mode 100644 index 000000000..ea28bcd91 --- /dev/null +++ b/community/goldendict/fix-wikipedia-images.patch @@ -0,0 +1,26 @@ +From 8c056589e989781c6ed5aac7491c802414489ae9 Mon Sep 17 00:00:00 2001 +From: Abs62 +Date: Sat, 22 Oct 2011 15:52:52 +0400 +Subject: [PATCH] Fix Wikipedia images loading + +--- + mediawiki.cc | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/mediawiki.cc b/mediawiki.cc +index e67fdb3..9fff3dc 100644 +--- a/mediawiki.cc ++++ b/mediawiki.cc +@@ -293,6 +293,9 @@ void MediaWikiArticleRequest::requestFinished( QNetworkReply * r ) + // Replace the href="/foo/bar/Baz" to just href="Baz". + articleString.replace( QRegExp( " +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: change detection for sysfs and sysfs variable names for 2.6.30+ kernels + +@DPATCH@ +--- ibam-0.5.2/ibam.inl.orig 2010-01-03 12:17:10.000000000 +0100 ++++ ibam-0.5.2/ibam.inl 2010-01-03 12:17:19.000000000 +0100 +@@ -945,7 +945,7 @@ + string sysfs_path = "/sys/class/power_supply"; // ... + ifstream pmu,acpi,sysfs; + pmu.open((pmu_path+"/info").c_str()); +- acpi.open((acpi_path+"/info").c_str()); ++ acpi.open((acpi_path+"/event").c_str()); + if (pmu.is_open()) { + #ifdef IBAM_DEBUG + cout << "using pmu" << endl; +@@ -959,7 +959,7 @@ + acpi.close(); + apm = new acpi_status(); + } else { +- sysfs.open((sysfs_path+"/BAT1/charge_full").c_str()); ++ sysfs.open((sysfs_path+"/BAT0/present").c_str()); + if(sysfs.is_open()) { + #ifdef IBAM_DEBUG + cout << "using sysfs" << endl; + diff --git a/community/ibam/PKGBUILD b/community/ibam/PKGBUILD index 6f72fb3dc..3639e85a5 100644 --- a/community/ibam/PKGBUILD +++ b/community/ibam/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 65562 2012-02-21 08:57:40Z spupykin $ +# $Id: PKGBUILD 96802 2013-09-05 18:01:44Z bgyorgy $ # Maintainer: Sergej Pupykin # Contributor: Kessia 'even' Pinheiro # Contributor: Penguin pkgname=ibam pkgver=0.5.2 -pkgrel=5 +pkgrel=6 pkgdesc="An intelligent battery monitor" arch=('i686' 'x86_64') url="http://ibam.sourceforge.net/" @@ -15,20 +15,24 @@ makedepends=('sed' 'make') optdepends=('gnuplot: graphs support') install="ibam.install" source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz" - ibam-0.5.2-sysfs.patch) + 03acpi-check.dpatch) md5sums=('2d5222ff504dd19e7c1ea8acc2f13cf5' - 'c3aafebd5ad9159c89f71beab4a0f414') + '2f27fc97932bd59cabacbad063a13f0e') build() { cd "${srcdir}/${pkgname}-${pkgver}" - install -m0755 -d ${pkgdir}/usr/bin sed -i \ -e "s|/local/bin|/bin|g" \ -e "s|^CFLAGS=-O3|CFLAGS=${CFLAGS}|g" \ Makefile - patch -p1 <$srcdir/ibam-0.5.2-sysfs.patch + patch -p1 <$srcdir/03acpi-check.dpatch make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + install -m0755 -d ${pkgdir}/usr/bin install -m0755 -D ${srcdir}/${pkgname}-${pkgver}/ibam ${pkgdir}/usr/bin/ibam } diff --git a/community/keepalived/PKGBUILD b/community/keepalived/PKGBUILD index c5bb554c4..79f88ade6 100644 --- a/community/keepalived/PKGBUILD +++ b/community/keepalived/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 90520 2013-05-12 23:55:17Z seblu $ +# $Id: PKGBUILD 96808 2013-09-05 18:47:07Z seblu $ # Maintainer: Sébastien Luttringer # Contributor: Andrea Zucchelli pkgname=keepalived -pkgver=1.2.7 -pkgrel=3 +pkgver=1.2.8 +pkgrel=1 pkgdesc='Failover and monitoring daemon for LVS clusters' arch=('i686' 'x86_64') url='http://www.keepalived.org/' @@ -13,7 +13,7 @@ backup=('etc/keepalived/keepalived.conf') depends=('openssl' 'popt' 'libnl1') source=("http://www.keepalived.org/software/$pkgname-$pkgver.tar.gz" 'keepalived.service') -md5sums=('8551a34ee048895dbe5350a031ff29c1' +md5sums=('8a362b6cea145fd4393bf004d09b4057' '0a5171f4298528315e8a8004b55befb7') build() { diff --git a/community/libaccounts-qt/PKGBUILD b/community/libaccounts-qt/PKGBUILD index 2d2960ddc..b6e2fcf02 100644 --- a/community/libaccounts-qt/PKGBUILD +++ b/community/libaccounts-qt/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 93073 2013-06-23 22:18:28Z bgyorgy $ +# $Id: PKGBUILD 96784 2013-09-04 22:27:13Z bgyorgy $ # Maintainer: Balló György pkgbase=libaccounts-qt _pkgbase=accounts-qt pkgname=('libaccounts-qt' 'libaccounts-qt-doc') -pkgver=1.8 +pkgver=1.9 pkgrel=1 pkgdesc="Qt-based client library for accessing the online accounts database" arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ depends=('qt4' 'libaccounts-glib') makedepends=('doxygen' 'graphviz' 'ttf-dejavu') options=('!emptydirs') source=(http://accounts-sso.googlecode.com/files/$_pkgbase-$pkgver.tar.bz2) -sha1sums=('f5a29ef1d1e66049bbe5d809d6dbfcf0c1a39b41') +sha1sums=('86d7bbaa7bdd18f80a28c2617653707d763d1984') build() { cd "$srcdir/$_pkgbase-$pkgver" diff --git a/community/linux-tools/PKGBUILD b/community/linux-tools/PKGBUILD index ed20a3b54..a3846f9fb 100644 --- a/community/linux-tools/PKGBUILD +++ b/community/linux-tools/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 95399 2013-08-11 10:33:42Z seblu $ +# $Id: PKGBUILD 96810 2013-09-05 18:48:50Z seblu $ # Maintainer: Sébastien Luttringer pkgbase=linux-tools @@ -8,8 +8,8 @@ pkgname=('linux-tools-meta' 'cpupower' 'x86_energy_perf_policy' 'usbip') -pkgver=3.10 -pkgrel=2 +pkgver=3.11 +pkgrel=1 license=('GPL2') arch=('i686' 'x86_64') url='http://www.kernel.org' @@ -25,24 +25,23 @@ makedepends+=('pciutils') makedepends+=('glib2' 'sysfsutils') groups=("$pkgbase") source=("http://ftp.kernel.org/pub/linux/kernel/v3.x/linux-$pkgver.tar.xz" - "http://ftp.kernel.org/pub/linux/kernel/v3.x/patch-$pkgver.5.xz" +# "http://ftp.kernel.org/pub/linux/kernel/v3.x/patch-$pkgver.5.xz" 'cpupower.default' 'cpupower.systemd' 'cpupower.service' 'usbipd.service') # http://www.kernel.org/pub/linux/kernel/v3.x/sha256sums.asc -sha256sums=('df27fa92d27a9c410bfe6c4a89f141638500d7eadcca5cce578954efc2ad3544' - 'c96b69a10ef5ade798dcaa1867df156ccc9e173225d5aa427d00c6e89246e035' +sha256sums=('803ec8f0ad4b2ddedcb0332a590cd2b5e10dfc57c3b1c95bc9c46af81d51d7f9' '4fa509949d6863d001075fa3e8671eff2599c046d20c98bb4a70778595cd1c3f' 'fbf6e0ce6eb0ef15703fe212958de6ca46e62188900b5e9f9272ed3cc9cfd54e' 'a89284d0ecb556ca53a66d1c2087b5fd6d0a901ab2769cd3aebb93f4478905dc' '2e187734d8aec58a3046d79883510d779aa93fb3ab20bd3132c1a607ebe5498f') -prepare() { - # apply stable patching set - cd linux-$pkgver - patch -N -p1 -i "$srcdir/patch-$pkgver.5" -} +#prepare() { +# # apply stable patching set +# cd linux-$pkgver +# patch -N -p1 -i "$srcdir/patch-$pkgver.5" +#} build() { msg2 'Build libtraceevent' diff --git a/community/nginx/PKGBUILD b/community/nginx/PKGBUILD index e731ec975..d5ac06175 100644 --- a/community/nginx/PKGBUILD +++ b/community/nginx/PKGBUILD @@ -1,102 +1,96 @@ -# $Id: PKGBUILD 94240 2013-07-17 19:28:57Z bpiotrowski $ -# Maintainer: Sergej Pupykin -# Maintainer: Bartłomiej Piotrowski +# $Id: PKGBUILD 96815 2013-09-05 20:15:59Z seblu $ +# Maintainer: Bartłomiej Piotrowski +# Maintainer: Sébastien Luttringer +# Contributor: Sergej Pupykin # Contributor: Miroslaw Szot -_cfgdir=/etc/nginx -_tmpdir=/var/lib/nginx - pkgname=nginx pkgver=1.4.2 -pkgrel=1 +pkgrel=4 pkgdesc='Lightweight HTTP server and IMAP/POP3 proxy server' arch=('i686' 'x86_64') -depends=('pcre' 'zlib' 'openssl' 'geoip') -makedepends=('passenger') -url="http://nginx.org" +url='http://nginx.org' license=('custom') -install=nginx.install -backup=(${_cfgdir:1}/fastcgi.conf - ${_cfgdir:1}/fastcgi_params - ${_cfgdir:1}/koi-win - ${_cfgdir:1}/koi-utf - ${_cfgdir:1}/mime.types - ${_cfgdir:1}/nginx.conf - ${_cfgdir:1}/scgi_params - ${_cfgdir:1}/uwsgi_params - ${_cfgdir:1}/win-utf - etc/logrotate.d/nginx) -source=(http://nginx.org/download/nginx-$pkgver.tar.gz - service - logrotate) +depends=('pcre' 'zlib' 'openssl') +backup=('etc/nginx/fastcgi.conf' + 'etc/nginx/fastcgi_params' + 'etc/nginx/koi-win' + 'etc/nginx/koi-utf' + 'etc/nginx/mime.types' + 'etc/nginx/nginx.conf' + 'etc/nginx/scgi_params' + 'etc/nginx/uwsgi_params' + 'etc/nginx/win-utf' + 'etc/logrotate.d/nginx') +install=install +source=("http://nginx.org/download/nginx-$pkgver.tar.gz" + 'service' + 'logrotate') sha256sums=('5361ffb7b0ebf8b1a04369bc3d1295eaed091680c1c58115f88d56c8e51f3611' '05fdc0c0483410944b988d7f4beabb00bec4a44a41bd13ebc9b78585da7d3f9b' - '9523a1fdd5eb61bf62f3049f6ee088b198e36d5edcce2d9b08bbeb2930aa5a16') + '272907d3213d69dac3bd6024d6d150caa23cb67d4f121e4171f34ba5581f9e98') build() { - cd "$srcdir"/$pkgname-$pkgver - - ./configure \ - --prefix=$_cfgdir \ - --conf-path=$_cfgdir/nginx.conf \ + cd $pkgname-$pkgver + ./configure \ + --prefix=/etc/nginx \ + --conf-path=/etc/nginx/nginx.conf \ --sbin-path=/usr/bin/nginx \ - --pid-path=/var/run/nginx.pid \ - --lock-path=/var/lock/nginx.lock \ - --user=http --group=http \ + --pid-path=/run/nginx.pid \ + --lock-path=/run/lock/nginx.lock \ + --user=http \ + --group=http \ --http-log-path=/var/log/nginx/access.log \ --error-log-path=/var/log/nginx/error.log \ - --http-client-body-temp-path=$_tmpdir/client-body \ - --http-proxy-temp-path=$_tmpdir/proxy \ - --http-fastcgi-temp-path=$_tmpdir/fastcgi \ - --http-scgi-temp-path=$_tmpdir/scgi \ - --http-uwsgi-temp-path=$_tmpdir/uwsgi \ - --with-imap --with-imap_ssl_module \ - --with-ipv6 --with-pcre-jit \ + --http-client-body-temp-path=/var/lib/nginx/client-body \ + --http-proxy-temp-path=/var/lib/nginx/proxy \ + --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \ + --http-scgi-temp-path=/var/lib/nginx/scgi \ + --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \ + --with-imap \ + --with-imap_ssl_module \ + --with-ipv6 \ + --with-pcre-jit \ --with-file-aio \ --with-http_dav_module \ - --with-http_geoip_module \ --with-http_gunzip_module \ --with-http_gzip_static_module \ --with-http_realip_module \ --with-http_spdy_module \ --with-http_ssl_module \ --with-http_stub_status_module \ - --add-module=/usr/lib/passenger/ext/nginx \ - #--with-http_mp4_module \ - #--with-http_addition_module \ - #--with-http_xslt_module \ - #--with-http_image_filter_module \ - #--with-http_sub_module \ - #--with-http_flv_module \ - #--with-http_random_index_module \ - #--with-http_secure_link_module \ - #--with-http_degradation_module \ - #--with-http_perl_module \ - - make + --with-http_addition_module \ + --with-http_degradation_module \ + --with-http_flv_module \ + --with-http_mp4_module \ + --with-http_secure_link_module \ + --with-http_sub_module + make } package() { - cd "$srcdir"/$pkgname-$pkgver - make DESTDIR="$pkgdir" install + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install - sed -e 's|\>> Since 1.2.1-2 several changes has been made in package:' + echo ' - *.conf files have been moved to /etc/nginx' + echo ' - /etc/conf.d/nginx has been removed' + echo ' Main configuration file is set to /etc/nginx/nginx.conf' + echo ' - access.log and error.log can be found in /var/log/nginx by default' + echo ' - bundled *.html files have been moved to /usr/share/nginx/html' + echo ' - /etc/nginx/{html,logs} symbolic links and *.default files have been removed' + fi + if (( $(vercmp $2 1.4.2-4) < 0 )); then + echo 'Nginx now includes only upstream bundled modules.' + echo 'Thus, passenger module support was dropped.' + fi +} + +# vim:set ts=4 sw=4 et: diff --git a/community/nginx/logrotate b/community/nginx/logrotate index 3d082bcf8..e0fa9ec4c 100644 --- a/community/nginx/logrotate +++ b/community/nginx/logrotate @@ -4,6 +4,6 @@ sharedscripts compress postrotate - test -r /var/run/nginx.pid && kill -USR1 `cat /var/run/nginx.pid` + test ! -r /var/run/nginx.pid || kill -USR1 `cat /var/run/nginx.pid` endscript } diff --git a/community/nginx/nginx.install b/community/nginx/nginx.install deleted file mode 100644 index 0daccc639..000000000 --- a/community/nginx/nginx.install +++ /dev/null @@ -1,15 +0,0 @@ -post_upgrade() { - if [[ $(vercmp $2 1.2.7-4) -le 0 ]]; then - chmod 750 var/log/nginx - chown http:log var/log/nginx - fi - if [[ $(vercmp $2 1.2.1-2) -le 0 ]]; then - echo " >>> Since 1.2.1-2 several changes has been made in package:" - echo " - *.conf files have been moved to /etc/nginx" - echo " - /etc/conf.d/nginx has been removed" - echo " Main configuration file is set to /etc/nginx/nginx.conf" - echo " - access.log and error.log can be found in /var/log/nginx by default" - echo " - bundled *.html files have been moved to /usr/share/nginx/html" - echo " - /etc/nginx/{html,logs} symbolic links and *.default files have been removed" - fi -} diff --git a/community/percona-server/0001-MDEV-4902-sql_yacc.yy-incompatible-with-bison-3.patch b/community/percona-server/0001-MDEV-4902-sql_yacc.yy-incompatible-with-bison-3.patch new file mode 100644 index 000000000..fda79cff3 --- /dev/null +++ b/community/percona-server/0001-MDEV-4902-sql_yacc.yy-incompatible-with-bison-3.patch @@ -0,0 +1,3539 @@ +From 6325837d6abf272b8c3dfac664f18435f8a2abf8 Mon Sep 17 00:00:00 2001 +From: Massimiliano Torromeo +Date: Thu, 5 Sep 2013 09:52:54 +0200 +Subject: [PATCH] MDEV-4902 - sql_yacc.yy incompatible with bison 3 + +- YYPARSE_PARAM and YYLEX_PARAM are removed in Bison 3.0. Deprecated + since Bison 1.875 in favor of %lex-param, %parse-param. +- %pure_parser is deprecated in favor of %define api.pure. +- %parse-param adds an argument to yyerror() as well, updated + MYSQLerror() accordingly. +- %parse-param allows to declare proper type for argument. That's + what 99% of this patch is about. +--- + sql/sql_lex.cc | 12 +- + sql/sql_lex.h | 2 +- + sql/sql_parse.cc | 2 +- + sql/sql_yacc.yy | 799 ++++++++++++++++++++++++------------------------------- + 4 files changed, 361 insertions(+), 454 deletions(-) + +diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc +index 18323f8..b01d451 100644 +--- a/sql/sql_lex.cc ++++ b/sql/sql_lex.cc +@@ -29,7 +29,7 @@ + #include "sp.h" + #include "sp_head.h" + +-static int lex_one_token(void *arg, void *yythd); ++static int lex_one_token(void *arg, THD *thd); + + /* + We are using pointer to this variable for distinguishing between assignment +@@ -869,9 +869,8 @@ bool consume_comment(Lex_input_stream *lip, int remaining_recursions_permitted) + (which can't be followed by a signed number) + */ + +-int MYSQLlex(void *arg, void *yythd) ++int MYSQLlex(void *arg, THD *thd) + { +- THD *thd= (THD *)yythd; + Lex_input_stream *lip= & thd->m_parser_state->m_lip; + YYSTYPE *yylval=(YYSTYPE*) arg; + int token; +@@ -889,7 +888,7 @@ int MYSQLlex(void *arg, void *yythd) + return token; + } + +- token= lex_one_token(arg, yythd); ++ token= lex_one_token(arg, thd); + + switch(token) { + case WITH: +@@ -900,7 +899,7 @@ int MYSQLlex(void *arg, void *yythd) + to transform the grammar into a LALR(1) grammar, + which sql_yacc.yy can process. + */ +- token= lex_one_token(arg, yythd); ++ token= lex_one_token(arg, thd); + switch(token) { + case CUBE_SYM: + return WITH_CUBE_SYM; +@@ -923,14 +922,13 @@ int MYSQLlex(void *arg, void *yythd) + return token; + } + +-int lex_one_token(void *arg, void *yythd) ++int lex_one_token(void *arg, THD *thd) + { + reg1 uchar c= 0; + bool comment_closed; + int tokval, result_state; + uint length; + enum my_lex_states state; +- THD *thd= (THD *)yythd; + Lex_input_stream *lip= & thd->m_parser_state->m_lip; + LEX *lex= thd->lex; + YYSTYPE *yylval=(YYSTYPE*) arg; +diff --git a/sql/sql_lex.h b/sql/sql_lex.h +index 8648b32..ba37127 100644 +--- a/sql/sql_lex.h ++++ b/sql/sql_lex.h +@@ -2820,7 +2820,7 @@ extern void lex_init(void); + extern void lex_free(void); + extern void lex_start(THD *thd); + extern void lex_end(LEX *lex); +-extern int MYSQLlex(void *arg, void *yythd); ++extern int MYSQLlex(void *arg, THD *thd); + + extern void trim_whitespace(CHARSET_INFO *cs, LEX_STRING *str); + +diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc +index a1a79fd..d826b77 100644 +--- a/sql/sql_parse.cc ++++ b/sql/sql_parse.cc +@@ -7636,7 +7636,7 @@ bool check_host_name(LEX_STRING *str) + } + + +-extern int MYSQLparse(void *thd); // from sql_yacc.cc ++extern int MYSQLparse(THD *thd); // from sql_yacc.cc + + + /** +diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy +index 34ae03b..2a6d9aa 100644 +--- a/sql/sql_yacc.yy ++++ b/sql/sql_yacc.yy +@@ -22,20 +22,13 @@ + */ + + %{ +-/* thd is passed as an argument to yyparse(), and subsequently to yylex(). +-** The type will be void*, so it must be cast to (THD*) when used. +-** Use the YYTHD macro for this. +-*/ +-#define YYPARSE_PARAM yythd +-#define YYLEX_PARAM yythd +-#define YYTHD ((THD *)yythd) +-#define YYLIP (& YYTHD->m_parser_state->m_lip) +-#define YYPS (& YYTHD->m_parser_state->m_yacc) ++#define YYLIP (& thd->m_parser_state->m_lip) ++#define YYPS (& thd->m_parser_state->m_yacc) + + #define MYSQL_YACC + #define YYINITDEPTH 100 + #define YYMAXDEPTH 3200 /* Because of 64K stack */ +-#define Lex (YYTHD->lex) ++#define Lex (thd->lex) + #define Select Lex->current_select + #include "sql_priv.h" + #include "unireg.h" // REQUIRED: for other includes +@@ -69,14 +62,14 @@ + #pragma warning (disable : 4065) + #endif + +-int yylex(void *yylval, void *yythd); ++int yylex(void *yylval, THD *thd); + + #define yyoverflow(A,B,C,D,E,F) \ + { \ + ulong val= *(F); \ + if (my_yyoverflow((B), (D), &val)) \ + { \ +- yyerror((char*) (A)); \ ++ yyerror(current_thd, (char*) (A)); \ + return 2; \ + } \ + else \ +@@ -88,7 +81,7 @@ int yylex(void *yylval, void *yythd); + #define MYSQL_YYABORT \ + do \ + { \ +- LEX::cleanup_lex_after_parse_error(YYTHD);\ ++ LEX::cleanup_lex_after_parse_error(thd);\ + YYABORT; \ + } while (0) + +@@ -174,10 +167,8 @@ void my_parse_error(const char *s) + to abort from the parser. + */ + +-void MYSQLerror(const char *s) ++void MYSQLerror(THD *thd, const char *s) + { +- THD *thd= current_thd; +- + /* + Restore the original LEX if it was replaced when parsing + a stored procedure. We must ensure that a parsing error +@@ -780,7 +771,10 @@ static bool add_create_index (LEX *lex, Key::Keytype type, + bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize); + %} + +-%pure_parser /* We have threads */ ++/* We have threads */ ++%define api.pure ++%parse-param { THD *thd } ++%lex-param { THD *thd } + /* + Currently there are 168 shift/reduce conflicts. + We should not introduce new conflicts any more. +@@ -1668,7 +1662,6 @@ rule: <-- starts at col 1 + query: + END_OF_INPUT + { +- THD *thd= YYTHD; + if (!thd->bootstrap && + (!(thd->lex->select_lex.options & OPTION_FOUND_COMMENT))) + { +@@ -1682,7 +1675,7 @@ query: + { + Lex_input_stream *lip = YYLIP; + +- if ((YYTHD->client_capabilities & CLIENT_MULTI_QUERIES) && ++ if ((thd->client_capabilities & CLIENT_MULTI_QUERIES) && + lip->multi_statements && + ! lip->eof()) + { +@@ -1778,7 +1771,6 @@ statement: + deallocate: + deallocate_or_drop PREPARE_SYM ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->sql_command= SQLCOM_DEALLOCATE_PREPARE; + lex->prepared_stmt_name= $3; +@@ -1793,7 +1785,6 @@ deallocate_or_drop: + prepare: + PREPARE_SYM ident FROM prepare_src + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->sql_command= SQLCOM_PREPARE; + lex->prepared_stmt_name= $2; +@@ -1803,14 +1794,12 @@ prepare: + prepare_src: + TEXT_STRING_sys + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->prepared_stmt_code= $1; + lex->prepared_stmt_code_is_varref= FALSE; + } + | '@' ident_or_text + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->prepared_stmt_code= $2; + lex->prepared_stmt_code_is_varref= TRUE; +@@ -1820,7 +1809,6 @@ prepare_src: + execute: + EXECUTE_SYM ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->sql_command= SQLCOM_EXECUTE; + lex->prepared_stmt_name= $2; +@@ -1955,7 +1943,7 @@ master_def: + } + if (Lex->mi.heartbeat_period > slave_net_timeout) + { +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN, ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, + ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX, + ER(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX)); + } +@@ -1963,7 +1951,7 @@ master_def: + { + if (Lex->mi.heartbeat_period != 0.0) + { +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN, ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, + ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN, + ER(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN)); + Lex->mi.heartbeat_period= 0.0; +@@ -2038,7 +2026,6 @@ master_file_def: + create: + CREATE opt_table_options TABLE_SYM opt_if_not_exists table_ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->sql_command= SQLCOM_CREATE_TABLE; + if (!lex->select_lex.add_table_to_list(thd, $5, NULL, +@@ -2063,13 +2050,13 @@ create: + } + create2 + { +- LEX *lex= YYTHD->lex; ++ LEX *lex= thd->lex; + lex->current_select= &lex->select_lex; + if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) && + !lex->create_info.db_type) + { +- lex->create_info.db_type= ha_default_handlerton(YYTHD); +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN, ++ lex->create_info.db_type= ha_default_handlerton(thd); ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, + ER_WARN_USING_OTHER_HANDLER, + ER(ER_WARN_USING_OTHER_HANDLER), + ha_resolve_storage_engine_name(lex->create_info.db_type), +@@ -2199,7 +2186,6 @@ server_option: + event_tail: + remember_name EVENT_SYM opt_if_not_exists sp_name + { +- THD *thd= YYTHD; + LEX *lex=Lex; + + lex->stmt_definition_begin= $1; +@@ -2266,7 +2252,7 @@ opt_ev_status: + ev_starts: + /* empty */ + { +- Item *item= new (YYTHD->mem_root) Item_func_now_local(); ++ Item *item= new (thd->mem_root) Item_func_now_local(); + if (item == NULL) + MYSQL_YYABORT; + Lex->event_parse_data->item_starts= item; +@@ -2316,7 +2302,6 @@ opt_ev_comment: + + ev_sql_stmt: + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + +@@ -2359,7 +2344,6 @@ ev_sql_stmt: + } + ev_sql_stmt_inner + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + + /* return back to the original memory root ASAP */ +@@ -2418,11 +2402,10 @@ sp_name: + $$= new sp_name($1, $3, true); + if ($$ == NULL) + MYSQL_YYABORT; +- $$->init_qname(YYTHD); ++ $$->init_qname(thd); + } + | ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + LEX_STRING db; + if (check_routine_name(&$1)) +@@ -2492,7 +2475,7 @@ call: + lex->sql_command= SQLCOM_CALL; + lex->spname= $2; + lex->value_list.empty(); +- sp_add_used_routine(lex, YYTHD, $2, TYPE_ENUM_PROCEDURE); ++ sp_add_used_routine(lex, thd, $2, TYPE_ENUM_PROCEDURE); + } + opt_sp_cparam_list {} + ; +@@ -2565,7 +2548,7 @@ sp_fdparam: + (enum enum_field_types)$3, + sp_param_in); + +- if (lex->sphead->fill_field_definition(YYTHD, lex, ++ if (lex->sphead->fill_field_definition(thd, lex, + (enum enum_field_types) $3, + &spvar->field_def)) + { +@@ -2602,7 +2585,7 @@ sp_pdparam: + (enum enum_field_types)$4, + (sp_param_mode_t)$1); + +- if (lex->sphead->fill_field_definition(YYTHD, lex, ++ if (lex->sphead->fill_field_definition(thd, lex, + (enum enum_field_types) $4, + &spvar->field_def)) + { +@@ -2665,13 +2648,12 @@ sp_decl: + { + LEX *lex= Lex; + +- lex->sphead->reset_lex(YYTHD); ++ lex->sphead->reset_lex(thd); + lex->spcont->declare_var_boundary($2); + } + type_with_opt_collate + sp_opt_default + { +- THD *thd= YYTHD; + LEX *lex= Lex; + sp_pcontext *pctx= lex->spcont; + uint num_vars= pctx->context_var_count(); +@@ -2697,7 +2679,7 @@ sp_decl: + spvar->type= var_type; + spvar->dflt= dflt_value_item; + +- if (lex->sphead->fill_field_definition(YYTHD, lex, var_type, ++ if (lex->sphead->fill_field_definition(thd, lex, var_type, + &spvar->field_def)) + { + MYSQL_YYABORT; +@@ -2721,7 +2703,7 @@ sp_decl: + } + + pctx->declare_var_boundary(0); +- if (lex->sphead->restore_lex(YYTHD)) ++ if (lex->sphead->restore_lex(thd)) + MYSQL_YYABORT; + $$.vars= $2; + $$.conds= $$.hndlrs= $$.curs= 0; +@@ -2736,7 +2718,7 @@ sp_decl: + my_error(ER_SP_DUP_COND, MYF(0), $2.str); + MYSQL_YYABORT; + } +- if(YYTHD->lex->spcont->push_cond(&$2, $5)) ++ if(thd->lex->spcont->push_cond(&$2, $5)) + MYSQL_YYABORT; + $$.vars= $$.hndlrs= $$.curs= 0; + $$.conds= 1; +@@ -2822,7 +2804,7 @@ sp_decl: + + sp_cursor_stmt: + { +- Lex->sphead->reset_lex(YYTHD); ++ Lex->sphead->reset_lex(thd); + } + select + { +@@ -2838,7 +2820,7 @@ sp_cursor_stmt: + } + lex->sp_lex_in_use= TRUE; + $$= lex; +- if (lex->sphead->restore_lex(YYTHD)) ++ if (lex->sphead->restore_lex(thd)) + MYSQL_YYABORT; + } + ; +@@ -2887,7 +2869,7 @@ sp_cond: + my_error(ER_WRONG_VALUE, MYF(0), "CONDITION", "0"); + MYSQL_YYABORT; + } +- $$= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t)); ++ $$= (sp_cond_type_t *)thd->alloc(sizeof(sp_cond_type_t)); + if ($$ == NULL) + MYSQL_YYABORT; + $$->type= sp_cond_type_t::number; +@@ -2904,7 +2886,7 @@ sqlstate: + my_error(ER_SP_BAD_SQLSTATE, MYF(0), $3.str); + MYSQL_YYABORT; + } +- $$= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t)); ++ $$= (sp_cond_type_t *)thd->alloc(sizeof(sp_cond_type_t)); + if ($$ == NULL) + MYSQL_YYABORT; + $$->type= sp_cond_type_t::state; +@@ -2934,21 +2916,21 @@ sp_hcond: + } + | SQLWARNING_SYM /* SQLSTATEs 01??? */ + { +- $$= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t)); ++ $$= (sp_cond_type_t *)thd->alloc(sizeof(sp_cond_type_t)); + if ($$ == NULL) + MYSQL_YYABORT; + $$->type= sp_cond_type_t::warning; + } + | not FOUND_SYM /* SQLSTATEs 02??? */ + { +- $$= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t)); ++ $$= (sp_cond_type_t *)thd->alloc(sizeof(sp_cond_type_t)); + if ($$ == NULL) + MYSQL_YYABORT; + $$->type= sp_cond_type_t::notfound; + } + | SQLEXCEPTION_SYM /* All other SQLSTATEs */ + { +- $$= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t)); ++ $$= (sp_cond_type_t *)thd->alloc(sizeof(sp_cond_type_t)); + if ($$ == NULL) + MYSQL_YYABORT; + $$->type= sp_cond_type_t::exception; +@@ -2958,7 +2940,6 @@ sp_hcond: + signal_stmt: + SIGNAL_SYM signal_value opt_set_signal_information + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Yacc_state *state= & thd->m_parser_state->m_yacc; + +@@ -3008,7 +2989,7 @@ opt_signal_value: + opt_set_signal_information: + /* empty */ + { +- YYTHD->m_parser_state->m_yacc.m_set_signal_info.clear(); ++ thd->m_parser_state->m_yacc.m_set_signal_info.clear(); + } + | SET signal_information_item_list + ; +@@ -3017,7 +2998,7 @@ signal_information_item_list: + signal_condition_information_item_name EQ signal_allowed_expr + { + Set_signal_information *info; +- info= & YYTHD->m_parser_state->m_yacc.m_set_signal_info; ++ info= & thd->m_parser_state->m_yacc.m_set_signal_info; + int index= (int) $1; + info->clear(); + info->m_item[index]= $3; +@@ -3026,7 +3007,7 @@ signal_information_item_list: + signal_condition_information_item_name EQ signal_allowed_expr + { + Set_signal_information *info; +- info= & YYTHD->m_parser_state->m_yacc.m_set_signal_info; ++ info= & thd->m_parser_state->m_yacc.m_set_signal_info; + int index= (int) $3; + if (info->m_item[index] != NULL) + { +@@ -3097,7 +3078,6 @@ signal_condition_information_item_name: + resignal_stmt: + RESIGNAL_SYM opt_signal_value opt_set_signal_information + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Yacc_state *state= & thd->m_parser_state->m_yacc; + +@@ -3172,7 +3152,6 @@ sp_proc_stmt_if: + + sp_proc_stmt_statement: + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + +@@ -3181,7 +3160,6 @@ sp_proc_stmt_statement: + } + statement + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + sp_head *sp= lex->sphead; +@@ -3228,7 +3206,7 @@ sp_proc_stmt_statement: + + sp_proc_stmt_return: + RETURN_SYM +- { Lex->sphead->reset_lex(YYTHD); } ++ { Lex->sphead->reset_lex(thd); } + expr + { + LEX *lex= Lex; +@@ -3250,7 +3228,7 @@ sp_proc_stmt_return: + MYSQL_YYABORT; + sp->m_flags|= sp_head::HAS_RETURN; + } +- if (sp->restore_lex(YYTHD)) ++ if (sp->restore_lex(thd)) + MYSQL_YYABORT; + } + ; +@@ -3477,7 +3455,7 @@ sp_fetch_list: + ; + + sp_if: +- { Lex->sphead->reset_lex(YYTHD); } ++ { Lex->sphead->reset_lex(thd); } + expr THEN_SYM + { + LEX *lex= Lex; +@@ -3491,7 +3469,7 @@ sp_if: + sp->add_cont_backpatch(i) || + sp->add_instr(i)) + MYSQL_YYABORT; +- if (sp->restore_lex(YYTHD)) ++ if (sp->restore_lex(thd)) + MYSQL_YYABORT; + } + sp_proc_stmts1 +@@ -3530,7 +3508,7 @@ simple_case_stmt: + { + LEX *lex= Lex; + case_stmt_action_case(lex); +- lex->sphead->reset_lex(YYTHD); /* For expr $3 */ ++ lex->sphead->reset_lex(thd); /* For expr $3 */ + } + expr + { +@@ -3539,7 +3517,7 @@ simple_case_stmt: + MYSQL_YYABORT; + + /* For expr $3 */ +- if (lex->sphead->restore_lex(YYTHD)) ++ if (lex->sphead->restore_lex(thd)) + MYSQL_YYABORT; + } + simple_when_clause_list +@@ -3581,7 +3559,7 @@ searched_when_clause_list: + simple_when_clause: + WHEN_SYM + { +- Lex->sphead->reset_lex(YYTHD); /* For expr $3 */ ++ Lex->sphead->reset_lex(thd); /* For expr $3 */ + } + expr + { +@@ -3591,7 +3569,7 @@ simple_when_clause: + if (case_stmt_action_when(lex, $3, true)) + MYSQL_YYABORT; + /* For expr $3 */ +- if (lex->sphead->restore_lex(YYTHD)) ++ if (lex->sphead->restore_lex(thd)) + MYSQL_YYABORT; + } + THEN_SYM +@@ -3606,7 +3584,7 @@ simple_when_clause: + searched_when_clause: + WHEN_SYM + { +- Lex->sphead->reset_lex(YYTHD); /* For expr $3 */ ++ Lex->sphead->reset_lex(thd); /* For expr $3 */ + } + expr + { +@@ -3614,7 +3592,7 @@ searched_when_clause: + if (case_stmt_action_when(lex, $3, false)) + MYSQL_YYABORT; + /* For expr $3 */ +- if (lex->sphead->restore_lex(YYTHD)) ++ if (lex->sphead->restore_lex(thd)) + MYSQL_YYABORT; + } + THEN_SYM +@@ -3778,7 +3756,7 @@ sp_unlabeled_control: + MYSQL_YYABORT; + } + | WHILE_SYM +- { Lex->sphead->reset_lex(YYTHD); } ++ { Lex->sphead->reset_lex(thd); } + expr DO_SYM + { + LEX *lex= Lex; +@@ -3792,7 +3770,7 @@ sp_unlabeled_control: + sp->new_cont_backpatch(i) || + sp->add_instr(i)) + MYSQL_YYABORT; +- if (sp->restore_lex(YYTHD)) ++ if (sp->restore_lex(thd)) + MYSQL_YYABORT; + } + sp_proc_stmts1 END WHILE_SYM +@@ -3807,7 +3785,7 @@ sp_unlabeled_control: + lex->sphead->do_cont_backpatch(); + } + | REPEAT_SYM sp_proc_stmts1 UNTIL_SYM +- { Lex->sphead->reset_lex(YYTHD); } ++ { Lex->sphead->reset_lex(thd); } + expr END REPEAT_SYM + { + LEX *lex= Lex; +@@ -3819,7 +3797,7 @@ sp_unlabeled_control: + if (i == NULL || + lex->sphead->add_instr(i)) + MYSQL_YYABORT; +- if (lex->sphead->restore_lex(YYTHD)) ++ if (lex->sphead->restore_lex(thd)) + MYSQL_YYABORT; + /* We can shortcut the cont_backpatch here */ + i->m_cont_dest= ip+1; +@@ -4242,7 +4220,6 @@ create2: + create3 {} + | LIKE table_ident + { +- THD *thd= YYTHD; + TABLE_LIST *src_table; + LEX *lex= thd->lex; + +@@ -4257,7 +4234,6 @@ create2: + } + | '(' LIKE table_ident ')' + { +- THD *thd= YYTHD; + TABLE_LIST *src_table; + LEX *lex= thd->lex; + +@@ -4858,7 +4834,7 @@ part_value_expr_item: + my_parse_error(ER(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR)); + MYSQL_YYABORT; + } +- if (part_info->add_column_list_value(YYTHD, part_expr)) ++ if (part_info->add_column_list_value(thd, part_expr)) + { + MYSQL_YYABORT; + } +@@ -5252,19 +5228,19 @@ default_collation: + storage_engines: + ident_or_text + { +- plugin_ref plugin= ha_resolve_by_name(YYTHD, &$1); ++ plugin_ref plugin= ha_resolve_by_name(thd, &$1); + + if (plugin) + $$= plugin_data(plugin, handlerton*); + else + { +- if (YYTHD->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION) ++ if (thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION) + { + my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), $1.str); + MYSQL_YYABORT; + } + $$= 0; +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN, ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, + ER_UNKNOWN_STORAGE_ENGINE, + ER(ER_UNKNOWN_STORAGE_ENGINE), + $1.str); +@@ -5276,7 +5252,7 @@ known_storage_engines: + ident_or_text + { + plugin_ref plugin; +- if ((plugin= ha_resolve_by_name(YYTHD, &$1))) ++ if ((plugin= ha_resolve_by_name(thd, &$1))) + $$= plugin_data(plugin, handlerton*); + else + { +@@ -5506,7 +5482,7 @@ type: + { + char buff[sizeof("YEAR()") + MY_INT64_NUM_DECIMAL_DIGITS + 1]; + my_snprintf(buff, sizeof(buff), "YEAR(%lu)", length); +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_NOTE, ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_NOTE, + ER_WARN_DEPRECATED_SYNTAX, + ER(ER_WARN_DEPRECATED_SYNTAX), + buff, "YEAR(4)"); +@@ -5520,7 +5496,7 @@ type: + { $$=MYSQL_TYPE_TIME; } + | TIMESTAMP + { +- if (YYTHD->variables.sql_mode & MODE_MAXDB) ++ if (thd->variables.sql_mode & MODE_MAXDB) + $$=MYSQL_TYPE_DATETIME; + else + { +@@ -5652,7 +5628,7 @@ int_type: + real_type: + REAL + { +- $$= YYTHD->variables.sql_mode & MODE_REAL_AS_FLOAT ? ++ $$= thd->variables.sql_mode & MODE_REAL_AS_FLOAT ? + MYSQL_TYPE_FLOAT : MYSQL_TYPE_DOUBLE; + } + | DOUBLE_SYM +@@ -5727,7 +5703,7 @@ attribute: + | DEFAULT now_or_signed_literal { Lex->default_value=$2; } + | ON UPDATE_SYM NOW_SYM optional_braces + { +- Item *item= new (YYTHD->mem_root) Item_func_now_local(); ++ Item *item= new (thd->mem_root) Item_func_now_local(); + if (item == NULL) + MYSQL_YYABORT; + Lex->on_update_value= item; +@@ -5798,7 +5774,7 @@ type_with_opt_collate: + now_or_signed_literal: + NOW_SYM optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_now_local(); ++ $$= new (thd->mem_root) Item_func_now_local(); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -6217,7 +6193,6 @@ string_list: + alter: + ALTER opt_ignore TABLE_SYM table_ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->name.str= 0; + lex->name.length= 0; +@@ -6243,7 +6218,6 @@ alter: + } + alter_commands + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + if (!lex->m_stmt) + { +@@ -6356,7 +6330,7 @@ alter: + Event_parse_data. + */ + +- if (!(Lex->event_parse_data= Event_parse_data::new_instance(YYTHD))) ++ if (!(Lex->event_parse_data= Event_parse_data::new_instance(thd))) + MYSQL_YYABORT; + Lex->event_parse_data->identifier= $4; + +@@ -6471,7 +6445,6 @@ alter_commands: + | OPTIMIZE PARTITION_SYM opt_no_write_to_binlog + all_or_alt_part_name_list + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->no_write_to_binlog= $3; + lex->check_opt.init(); +@@ -6485,7 +6458,6 @@ alter_commands: + | ANALYZE_SYM PARTITION_SYM opt_no_write_to_binlog + all_or_alt_part_name_list + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->no_write_to_binlog= $3; + lex->check_opt.init(); +@@ -6497,7 +6469,6 @@ alter_commands: + } + | CHECK_SYM PARTITION_SYM all_or_alt_part_name_list + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->check_opt.init(); + DBUG_ASSERT(!lex->m_stmt); +@@ -6510,7 +6481,6 @@ alter_commands: + | REPAIR PARTITION_SYM opt_no_write_to_binlog + all_or_alt_part_name_list + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->no_write_to_binlog= $3; + lex->check_opt.init(); +@@ -6530,7 +6500,6 @@ alter_commands: + } + | TRUNCATE_SYM PARTITION_SYM all_or_alt_part_name_list + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->check_opt.init(); + DBUG_ASSERT(!lex->m_stmt); +@@ -6785,7 +6754,6 @@ alter_list_item: + { + if (!$4) + { +- THD *thd= YYTHD; + $4= thd->variables.collation_database; + } + $5= $5 ? $5 : $4; +@@ -6980,7 +6948,6 @@ repair: + } + table_list opt_mi_repair_type + { +- THD *thd= YYTHD; + LEX* lex= thd->lex; + DBUG_ASSERT(!lex->m_stmt); + lex->m_stmt= new (thd->mem_root) Repair_table_statement(lex); +@@ -7018,7 +6985,6 @@ analyze: + } + table_list + { +- THD *thd= YYTHD; + LEX* lex= thd->lex; + DBUG_ASSERT(!lex->m_stmt); + lex->m_stmt= new (thd->mem_root) Analyze_table_statement(lex); +@@ -7053,7 +7019,6 @@ check: + } + table_list opt_mi_check_type + { +- THD *thd= YYTHD; + LEX* lex= thd->lex; + DBUG_ASSERT(!lex->m_stmt); + lex->m_stmt= new (thd->mem_root) Check_table_statement(lex); +@@ -7094,7 +7059,6 @@ optimize: + } + table_list + { +- THD *thd= YYTHD; + LEX* lex= thd->lex; + DBUG_ASSERT(!lex->m_stmt); + lex->m_stmt= new (thd->mem_root) Optimize_table_statement(lex); +@@ -7179,7 +7143,7 @@ keycache_list: + assign_to_keycache: + table_ident cache_keys_spec + { +- if (!Select->add_table_to_list(YYTHD, $1, NULL, 0, TL_READ, ++ if (!Select->add_table_to_list(thd, $1, NULL, 0, TL_READ, + MDL_SHARED_READ, + Select->pop_index_hints())) + MYSQL_YYABORT; +@@ -7189,7 +7153,7 @@ assign_to_keycache: + assign_to_keycache_parts: + table_ident adm_partition cache_keys_spec + { +- if (!Select->add_table_to_list(YYTHD, $1, NULL, 0, TL_READ, ++ if (!Select->add_table_to_list(thd, $1, NULL, 0, TL_READ, + MDL_SHARED_READ, + Select->pop_index_hints())) + MYSQL_YYABORT; +@@ -7225,7 +7189,7 @@ preload_list: + preload_keys: + table_ident cache_keys_spec opt_ignore_leaves + { +- if (!Select->add_table_to_list(YYTHD, $1, NULL, $3, TL_READ, ++ if (!Select->add_table_to_list(thd, $1, NULL, $3, TL_READ, + MDL_SHARED_READ, + Select->pop_index_hints())) + MYSQL_YYABORT; +@@ -7235,7 +7199,7 @@ preload_keys: + preload_keys_parts: + table_ident adm_partition cache_keys_spec opt_ignore_leaves + { +- if (!Select->add_table_to_list(YYTHD, $1, NULL, $4, TL_READ, ++ if (!Select->add_table_to_list(thd, $1, NULL, $4, TL_READ, + MDL_SHARED_READ, + Select->pop_index_hints())) + MYSQL_YYABORT; +@@ -7252,7 +7216,7 @@ adm_partition: + + cache_keys_spec: + { +- Lex->select_lex.alloc_index_hints(YYTHD); ++ Lex->select_lex.alloc_index_hints(thd); + Select->set_index_hint_type(INDEX_HINT_USE, + old_mode ? + INDEX_HINT_MASK_JOIN : +@@ -7471,7 +7435,6 @@ select_item_list: + | select_item + | '*' + { +- THD *thd= YYTHD; + Item *item= new (thd->mem_root) + Item_field(&thd->lex->current_select->context, + NULL, NULL, "*"); +@@ -7486,14 +7449,12 @@ select_item_list: + select_item: + remember_name table_wild remember_end + { +- THD *thd= YYTHD; + + if (add_item_to_list(thd, $2)) + MYSQL_YYABORT; + } + | remember_name expr remember_end select_alias + { +- THD *thd= YYTHD; + DBUG_ASSERT($1 < $3); + + if (add_item_to_list(thd, $2)) +@@ -7589,7 +7550,7 @@ expr: + else + { + /* X OR Y */ +- $$ = new (YYTHD->mem_root) Item_cond_or($1, $3); ++ $$ = new (thd->mem_root) Item_cond_or($1, $3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7597,7 +7558,7 @@ expr: + | expr XOR expr %prec XOR + { + /* XOR is a proprietary extension */ +- $$ = new (YYTHD->mem_root) Item_cond_xor($1, $3); ++ $$ = new (thd->mem_root) Item_cond_xor($1, $3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7639,50 +7600,50 @@ expr: + else + { + /* X AND Y */ +- $$ = new (YYTHD->mem_root) Item_cond_and($1, $3); ++ $$ = new (thd->mem_root) Item_cond_and($1, $3); + if ($$ == NULL) + MYSQL_YYABORT; + } + } + | NOT_SYM expr %prec NOT_SYM + { +- $$= negate_expression(YYTHD, $2); ++ $$= negate_expression(thd, $2); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS TRUE_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_istrue($1); ++ $$= new (thd->mem_root) Item_func_istrue($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS not TRUE_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isnottrue($1); ++ $$= new (thd->mem_root) Item_func_isnottrue($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS FALSE_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isfalse($1); ++ $$= new (thd->mem_root) Item_func_isfalse($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS not FALSE_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isnotfalse($1); ++ $$= new (thd->mem_root) Item_func_isnotfalse($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS UNKNOWN_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isnull($1); ++ $$= new (thd->mem_root) Item_func_isnull($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS not UNKNOWN_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isnotnull($1); ++ $$= new (thd->mem_root) Item_func_isnotnull($1); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7692,19 +7653,19 @@ expr: + bool_pri: + bool_pri IS NULL_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isnull($1); ++ $$= new (thd->mem_root) Item_func_isnull($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri IS not NULL_SYM %prec IS + { +- $$= new (YYTHD->mem_root) Item_func_isnotnull($1); ++ $$= new (thd->mem_root) Item_func_isnotnull($1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bool_pri EQUAL_SYM predicate %prec EQUAL_SYM + { +- $$= new (YYTHD->mem_root) Item_func_equal($1,$3); ++ $$= new (thd->mem_root) Item_func_equal($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7726,13 +7687,12 @@ bool_pri: + predicate: + bit_expr IN_SYM '(' subselect ')' + { +- $$= new (YYTHD->mem_root) Item_in_subselect($1, $4); ++ $$= new (thd->mem_root) Item_in_subselect($1, $4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr not IN_SYM '(' subselect ')' + { +- THD *thd= YYTHD; + Item *item= new (thd->mem_root) Item_in_subselect($1, $5); + if (item == NULL) + MYSQL_YYABORT; +@@ -7742,7 +7702,7 @@ predicate: + } + | bit_expr IN_SYM '(' expr ')' + { +- $$= handle_sql2003_note184_exception(YYTHD, $1, true, $4); ++ $$= handle_sql2003_note184_exception(thd, $1, true, $4); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7750,13 +7710,13 @@ predicate: + { + $6->push_front($4); + $6->push_front($1); +- $$= new (YYTHD->mem_root) Item_func_in(*$6); ++ $$= new (thd->mem_root) Item_func_in(*$6); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr not IN_SYM '(' expr ')' + { +- $$= handle_sql2003_note184_exception(YYTHD, $1, false, $5); ++ $$= handle_sql2003_note184_exception(thd, $1, false, $5); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7764,7 +7724,7 @@ predicate: + { + $7->push_front($5); + $7->push_front($1); +- Item_func_in *item = new (YYTHD->mem_root) Item_func_in(*$7); ++ Item_func_in *item = new (thd->mem_root) Item_func_in(*$7); + if (item == NULL) + MYSQL_YYABORT; + item->negate(); +@@ -7772,14 +7732,14 @@ predicate: + } + | bit_expr BETWEEN_SYM bit_expr AND_SYM predicate + { +- $$= new (YYTHD->mem_root) Item_func_between($1,$3,$5); ++ $$= new (thd->mem_root) Item_func_between($1,$3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr not BETWEEN_SYM bit_expr AND_SYM predicate + { + Item_func_between *item; +- item= new (YYTHD->mem_root) Item_func_between($1,$4,$6); ++ item= new (thd->mem_root) Item_func_between($1,$4,$6); + if (item == NULL) + MYSQL_YYABORT; + item->negate(); +@@ -7787,42 +7747,42 @@ predicate: + } + | bit_expr SOUNDS_SYM LIKE bit_expr + { +- Item *item1= new (YYTHD->mem_root) Item_func_soundex($1); +- Item *item4= new (YYTHD->mem_root) Item_func_soundex($4); ++ Item *item1= new (thd->mem_root) Item_func_soundex($1); ++ Item *item4= new (thd->mem_root) Item_func_soundex($4); + if ((item1 == NULL) || (item4 == NULL)) + MYSQL_YYABORT; +- $$= new (YYTHD->mem_root) Item_func_eq(item1, item4); ++ $$= new (thd->mem_root) Item_func_eq(item1, item4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr LIKE simple_expr opt_escape + { +- $$= new (YYTHD->mem_root) Item_func_like($1,$3,$4,Lex->escape_used); ++ $$= new (thd->mem_root) Item_func_like($1,$3,$4,Lex->escape_used); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr not LIKE simple_expr opt_escape + { +- Item *item= new (YYTHD->mem_root) Item_func_like($1,$4,$5, ++ Item *item= new (thd->mem_root) Item_func_like($1,$4,$5, + Lex->escape_used); + if (item == NULL) + MYSQL_YYABORT; +- $$= new (YYTHD->mem_root) Item_func_not(item); ++ $$= new (thd->mem_root) Item_func_not(item); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr REGEXP bit_expr + { +- $$= new (YYTHD->mem_root) Item_func_regex($1,$3); ++ $$= new (thd->mem_root) Item_func_regex($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr not REGEXP bit_expr + { +- Item *item= new (YYTHD->mem_root) Item_func_regex($1,$4); ++ Item *item= new (thd->mem_root) Item_func_regex($1,$4); + if (item == NULL) + MYSQL_YYABORT; +- $$= negate_expression(YYTHD, item); ++ $$= negate_expression(thd, item); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7832,85 +7792,85 @@ predicate: + bit_expr: + bit_expr '|' bit_expr %prec '|' + { +- $$= new (YYTHD->mem_root) Item_func_bit_or($1,$3); ++ $$= new (thd->mem_root) Item_func_bit_or($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '&' bit_expr %prec '&' + { +- $$= new (YYTHD->mem_root) Item_func_bit_and($1,$3); ++ $$= new (thd->mem_root) Item_func_bit_and($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr SHIFT_LEFT bit_expr %prec SHIFT_LEFT + { +- $$= new (YYTHD->mem_root) Item_func_shift_left($1,$3); ++ $$= new (thd->mem_root) Item_func_shift_left($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr SHIFT_RIGHT bit_expr %prec SHIFT_RIGHT + { +- $$= new (YYTHD->mem_root) Item_func_shift_right($1,$3); ++ $$= new (thd->mem_root) Item_func_shift_right($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '+' bit_expr %prec '+' + { +- $$= new (YYTHD->mem_root) Item_func_plus($1,$3); ++ $$= new (thd->mem_root) Item_func_plus($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '-' bit_expr %prec '-' + { +- $$= new (YYTHD->mem_root) Item_func_minus($1,$3); ++ $$= new (thd->mem_root) Item_func_minus($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '+' INTERVAL_SYM expr interval %prec '+' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($1,$4,$5,0); ++ $$= new (thd->mem_root) Item_date_add_interval($1,$4,$5,0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '-' INTERVAL_SYM expr interval %prec '-' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($1,$4,$5,1); ++ $$= new (thd->mem_root) Item_date_add_interval($1,$4,$5,1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '*' bit_expr %prec '*' + { +- $$= new (YYTHD->mem_root) Item_func_mul($1,$3); ++ $$= new (thd->mem_root) Item_func_mul($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '/' bit_expr %prec '/' + { +- $$= new (YYTHD->mem_root) Item_func_div($1,$3); ++ $$= new (thd->mem_root) Item_func_div($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '%' bit_expr %prec '%' + { +- $$= new (YYTHD->mem_root) Item_func_mod($1,$3); ++ $$= new (thd->mem_root) Item_func_mod($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr DIV_SYM bit_expr %prec DIV_SYM + { +- $$= new (YYTHD->mem_root) Item_func_int_div($1,$3); ++ $$= new (thd->mem_root) Item_func_int_div($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr MOD_SYM bit_expr %prec MOD_SYM + { +- $$= new (YYTHD->mem_root) Item_func_mod($1,$3); ++ $$= new (thd->mem_root) Item_func_mod($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | bit_expr '^' bit_expr + { +- $$= new (YYTHD->mem_root) Item_func_bit_xor($1,$3); ++ $$= new (thd->mem_root) Item_func_bit_xor($1,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7959,7 +7919,6 @@ simple_expr: + | function_call_conflict + | simple_expr COLLATE_SYM ident_or_text %prec NEG + { +- THD *thd= YYTHD; + Item *i1= new (thd->mem_root) Item_string($3.str, + $3.length, + thd->charset()); +@@ -7975,7 +7934,7 @@ simple_expr: + | sum_expr + | simple_expr OR_OR_SYM simple_expr + { +- $$= new (YYTHD->mem_root) Item_func_concat($1, $3); ++ $$= new (thd->mem_root) Item_func_concat($1, $3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -7985,25 +7944,25 @@ simple_expr: + } + | '-' simple_expr %prec NEG + { +- $$= new (YYTHD->mem_root) Item_func_neg($2); ++ $$= new (thd->mem_root) Item_func_neg($2); + if ($$ == NULL) + MYSQL_YYABORT; + } + | '~' simple_expr %prec NEG + { +- $$= new (YYTHD->mem_root) Item_func_bit_neg($2); ++ $$= new (thd->mem_root) Item_func_bit_neg($2); + if ($$ == NULL) + MYSQL_YYABORT; + } + | not2 simple_expr %prec NEG + { +- $$= negate_expression(YYTHD, $2); ++ $$= negate_expression(thd, $2); + if ($$ == NULL) + MYSQL_YYABORT; + } + | '(' subselect ')' + { +- $$= new (YYTHD->mem_root) Item_singlerow_subselect($2); ++ $$= new (thd->mem_root) Item_singlerow_subselect($2); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8012,20 +7971,20 @@ simple_expr: + | '(' expr ',' expr_list ')' + { + $4->push_front($2); +- $$= new (YYTHD->mem_root) Item_row(*$4); ++ $$= new (thd->mem_root) Item_row(*$4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | ROW_SYM '(' expr ',' expr_list ')' + { + $5->push_front($3); +- $$= new (YYTHD->mem_root) Item_row(*$5); ++ $$= new (thd->mem_root) Item_row(*$5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | EXISTS '(' subselect ')' + { +- $$= new (YYTHD->mem_root) Item_exists_subselect($3); ++ $$= new (thd->mem_root) Item_exists_subselect($3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8034,7 +7993,7 @@ simple_expr: + | MATCH ident_list_arg AGAINST '(' bit_expr fulltext_options ')' + { + $2->push_front($5); +- Item_func_match *i1= new (YYTHD->mem_root) Item_func_match(*$2, $6); ++ Item_func_match *i1= new (thd->mem_root) Item_func_match(*$2, $6); + if (i1 == NULL) + MYSQL_YYABORT; + Select->add_ftfunc_to_list(i1); +@@ -8042,7 +8001,7 @@ simple_expr: + } + | BINARY simple_expr %prec NEG + { +- $$= create_func_cast(YYTHD, $2, ITEM_CAST_CHAR, NULL, NULL, ++ $$= create_func_cast(thd, $2, ITEM_CAST_CHAR, NULL, NULL, + &my_charset_bin); + if ($$ == NULL) + MYSQL_YYABORT; +@@ -8050,27 +8009,27 @@ simple_expr: + | CAST_SYM '(' expr AS cast_type ')' + { + LEX *lex= Lex; +- $$= create_func_cast(YYTHD, $3, $5, lex->length, lex->dec, ++ $$= create_func_cast(thd, $3, $5, lex->length, lex->dec, + lex->charset); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CASE_SYM opt_expr when_list opt_else END + { +- $$= new (YYTHD->mem_root) Item_func_case(* $3, $2, $4 ); ++ $$= new (thd->mem_root) Item_func_case(* $3, $2, $4 ); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CONVERT_SYM '(' expr ',' cast_type ')' + { +- $$= create_func_cast(YYTHD, $3, $5, Lex->length, Lex->dec, ++ $$= create_func_cast(thd, $3, $5, Lex->length, Lex->dec, + Lex->charset); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CONVERT_SYM '(' expr USING charset_name ')' + { +- $$= new (YYTHD->mem_root) Item_func_conv_charset($3,$5); ++ $$= new (thd->mem_root) Item_func_conv_charset($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8083,14 +8042,14 @@ simple_expr: + my_error(ER_WRONG_COLUMN_NAME, MYF(0), il->my_name()->str); + MYSQL_YYABORT; + } +- $$= new (YYTHD->mem_root) Item_default_value(Lex->current_context(), ++ $$= new (thd->mem_root) Item_default_value(Lex->current_context(), + $3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | VALUES '(' simple_ident_nospvar ')' + { +- $$= new (YYTHD->mem_root) Item_insert_value(Lex->current_context(), ++ $$= new (thd->mem_root) Item_insert_value(Lex->current_context(), + $3); + if ($$ == NULL) + MYSQL_YYABORT; +@@ -8098,7 +8057,7 @@ simple_expr: + | INTERVAL_SYM expr interval '+' expr %prec INTERVAL_SYM + /* we cannot put interval before - */ + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($5,$2,$3,0); ++ $$= new (thd->mem_root) Item_date_add_interval($5,$2,$3,0); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8113,19 +8072,19 @@ simple_expr: + function_call_keyword: + CHAR_SYM '(' expr_list ')' + { +- $$= new (YYTHD->mem_root) Item_func_char(*$3); ++ $$= new (thd->mem_root) Item_func_char(*$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CHAR_SYM '(' expr_list USING charset_name ')' + { +- $$= new (YYTHD->mem_root) Item_func_char(*$3, $5); ++ $$= new (thd->mem_root) Item_func_char(*$3, $5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CURRENT_USER optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_current_user(Lex->current_context()); ++ $$= new (thd->mem_root) Item_func_current_user(Lex->current_context()); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION); +@@ -8133,31 +8092,30 @@ function_call_keyword: + } + | DATE_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_date_typecast($3); ++ $$= new (thd->mem_root) Item_date_typecast($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | DAY_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_dayofmonth($3); ++ $$= new (thd->mem_root) Item_func_dayofmonth($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | HOUR_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_hour($3); ++ $$= new (thd->mem_root) Item_func_hour($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | INSERT '(' expr ',' expr ',' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_insert($3,$5,$7,$9); ++ $$= new (thd->mem_root) Item_func_insert($3,$5,$7,$9); + if ($$ == NULL) + MYSQL_YYABORT; + } + | INTERVAL_SYM '(' expr ',' expr ')' %prec INTERVAL_SYM + { +- THD *thd= YYTHD; + List *list= new (thd->mem_root) List; + if (list == NULL) + MYSQL_YYABORT; +@@ -8172,7 +8130,6 @@ function_call_keyword: + } + | INTERVAL_SYM '(' expr ',' expr ',' expr_list ')' %prec INTERVAL_SYM + { +- THD *thd= YYTHD; + $7->push_front($5); + $7->push_front($3); + Item_row *item= new (thd->mem_root) Item_row(*$7); +@@ -8184,103 +8141,103 @@ function_call_keyword: + } + | LEFT '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_left($3,$5); ++ $$= new (thd->mem_root) Item_func_left($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MINUTE_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_minute($3); ++ $$= new (thd->mem_root) Item_func_minute($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MONTH_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_month($3); ++ $$= new (thd->mem_root) Item_func_month($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | RIGHT '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_right($3,$5); ++ $$= new (thd->mem_root) Item_func_right($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SECOND_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_second($3); ++ $$= new (thd->mem_root) Item_func_second($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TIME_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_time_typecast($3); ++ $$= new (thd->mem_root) Item_time_typecast($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TIMESTAMP '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_datetime_typecast($3); ++ $$= new (thd->mem_root) Item_datetime_typecast($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TIMESTAMP '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_add_time($3, $5, 1, 0); ++ $$= new (thd->mem_root) Item_func_add_time($3, $5, 1, 0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_trim($3); ++ $$= new (thd->mem_root) Item_func_trim($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' LEADING expr FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_ltrim($6,$4); ++ $$= new (thd->mem_root) Item_func_ltrim($6,$4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' TRAILING expr FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_rtrim($6,$4); ++ $$= new (thd->mem_root) Item_func_rtrim($6,$4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' BOTH expr FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_trim($6,$4); ++ $$= new (thd->mem_root) Item_func_trim($6,$4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' LEADING FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_ltrim($5); ++ $$= new (thd->mem_root) Item_func_ltrim($5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' TRAILING FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_rtrim($5); ++ $$= new (thd->mem_root) Item_func_rtrim($5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' BOTH FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_trim($5); ++ $$= new (thd->mem_root) Item_func_trim($5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRIM '(' expr FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_trim($5,$3); ++ $$= new (thd->mem_root) Item_func_trim($5,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | USER '(' ')' + { +- $$= new (YYTHD->mem_root) Item_func_user(); ++ $$= new (thd->mem_root) Item_func_user(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION); +@@ -8288,7 +8245,7 @@ function_call_keyword: + } + | YEAR_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_year($3); ++ $$= new (thd->mem_root) Item_func_year($3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8309,34 +8266,34 @@ function_call_keyword: + function_call_nonkeyword: + ADDDATE_SYM '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($3, $5, ++ $$= new (thd->mem_root) Item_date_add_interval($3, $5, + INTERVAL_DAY, 0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | ADDDATE_SYM '(' expr ',' INTERVAL_SYM expr interval ')' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($3, $6, $7, 0); ++ $$= new (thd->mem_root) Item_date_add_interval($3, $6, $7, 0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CURDATE optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_curdate_local(); ++ $$= new (thd->mem_root) Item_func_curdate_local(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | CURTIME optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_curtime_local(); ++ $$= new (thd->mem_root) Item_func_curtime_local(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | CURTIME '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_curtime_local($3); ++ $$= new (thd->mem_root) Item_func_curtime_local($3); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; +@@ -8344,83 +8301,83 @@ function_call_nonkeyword: + | DATE_ADD_INTERVAL '(' expr ',' INTERVAL_SYM expr interval ')' + %prec INTERVAL_SYM + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($3,$6,$7,0); ++ $$= new (thd->mem_root) Item_date_add_interval($3,$6,$7,0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | DATE_SUB_INTERVAL '(' expr ',' INTERVAL_SYM expr interval ')' + %prec INTERVAL_SYM + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($3,$6,$7,1); ++ $$= new (thd->mem_root) Item_date_add_interval($3,$6,$7,1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | EXTRACT_SYM '(' interval FROM expr ')' + { +- $$=new (YYTHD->mem_root) Item_extract( $3, $5); ++ $$=new (thd->mem_root) Item_extract( $3, $5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | GET_FORMAT '(' date_time_type ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_get_format($3, $5); ++ $$= new (thd->mem_root) Item_func_get_format($3, $5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | NOW_SYM optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_now_local(); ++ $$= new (thd->mem_root) Item_func_now_local(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | NOW_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_now_local($3); ++ $$= new (thd->mem_root) Item_func_now_local($3); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | POSITION_SYM '(' bit_expr IN_SYM expr ')' + { +- $$ = new (YYTHD->mem_root) Item_func_locate($5,$3); ++ $$ = new (thd->mem_root) Item_func_locate($5,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUBDATE_SYM '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($3, $5, ++ $$= new (thd->mem_root) Item_date_add_interval($3, $5, + INTERVAL_DAY, 1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUBDATE_SYM '(' expr ',' INTERVAL_SYM expr interval ')' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($3, $6, $7, 1); ++ $$= new (thd->mem_root) Item_date_add_interval($3, $6, $7, 1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUBSTRING '(' expr ',' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_substr($3,$5,$7); ++ $$= new (thd->mem_root) Item_func_substr($3,$5,$7); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUBSTRING '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_substr($3,$5); ++ $$= new (thd->mem_root) Item_func_substr($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUBSTRING '(' expr FROM expr FOR_SYM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_substr($3,$5,$7); ++ $$= new (thd->mem_root) Item_func_substr($3,$5,$7); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUBSTRING '(' expr FROM expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_substr($3,$5); ++ $$= new (thd->mem_root) Item_func_substr($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8435,9 +8392,9 @@ function_call_nonkeyword: + */ + Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION); + if (global_system_variables.sysdate_is_now == 0) +- $$= new (YYTHD->mem_root) Item_func_sysdate_local(); ++ $$= new (thd->mem_root) Item_func_sysdate_local(); + else +- $$= new (YYTHD->mem_root) Item_func_now_local(); ++ $$= new (thd->mem_root) Item_func_now_local(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; +@@ -8445,42 +8402,42 @@ function_call_nonkeyword: + | SYSDATE '(' expr ')' + { + if (global_system_variables.sysdate_is_now == 0) +- $$= new (YYTHD->mem_root) Item_func_sysdate_local($3); ++ $$= new (thd->mem_root) Item_func_sysdate_local($3); + else +- $$= new (YYTHD->mem_root) Item_func_now_local($3); ++ $$= new (thd->mem_root) Item_func_now_local($3); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | TIMESTAMP_ADD '(' interval_time_stamp ',' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_date_add_interval($7,$5,$3,0); ++ $$= new (thd->mem_root) Item_date_add_interval($7,$5,$3,0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TIMESTAMP_DIFF '(' interval_time_stamp ',' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_timestamp_diff($5,$7,$3); ++ $$= new (thd->mem_root) Item_func_timestamp_diff($5,$7,$3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | UTC_DATE_SYM optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_curdate_utc(); ++ $$= new (thd->mem_root) Item_func_curdate_utc(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | UTC_TIME_SYM optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_curtime_utc(); ++ $$= new (thd->mem_root) Item_func_curtime_utc(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | UTC_TIMESTAMP_SYM optional_braces + { +- $$= new (YYTHD->mem_root) Item_func_now_utc(); ++ $$= new (thd->mem_root) Item_func_now_utc(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; +@@ -8495,62 +8452,61 @@ function_call_nonkeyword: + function_call_conflict: + ASCII_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_ascii($3); ++ $$= new (thd->mem_root) Item_func_ascii($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | CHARSET '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_charset($3); ++ $$= new (thd->mem_root) Item_func_charset($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | COALESCE '(' expr_list ')' + { +- $$= new (YYTHD->mem_root) Item_func_coalesce(* $3); ++ $$= new (thd->mem_root) Item_func_coalesce(* $3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | COLLATION_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_collation($3); ++ $$= new (thd->mem_root) Item_func_collation($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | DATABASE '(' ')' + { +- $$= new (YYTHD->mem_root) Item_func_database(); ++ $$= new (thd->mem_root) Item_func_database(); + if ($$ == NULL) + MYSQL_YYABORT; + Lex->safe_to_cache_query=0; + } + | IF '(' expr ',' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_if($3,$5,$7); ++ $$= new (thd->mem_root) Item_func_if($3,$5,$7); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MICROSECOND_SYM '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_microsecond($3); ++ $$= new (thd->mem_root) Item_func_microsecond($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MOD_SYM '(' expr ',' expr ')' + { +- $$ = new (YYTHD->mem_root) Item_func_mod($3, $5); ++ $$ = new (thd->mem_root) Item_func_mod($3, $5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | OLD_PASSWORD '(' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_old_password($3); ++ $$= new (thd->mem_root) Item_func_old_password($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | PASSWORD '(' expr ')' + { +- THD *thd= YYTHD; + Item* i1; + if (thd->variables.old_passwords) + i1= new (thd->mem_root) Item_func_old_password($3); +@@ -8562,31 +8518,30 @@ function_call_conflict: + } + | QUARTER_SYM '(' expr ')' + { +- $$ = new (YYTHD->mem_root) Item_func_quarter($3); ++ $$ = new (thd->mem_root) Item_func_quarter($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | REPEAT_SYM '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_repeat($3,$5); ++ $$= new (thd->mem_root) Item_func_repeat($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | REPLACE '(' expr ',' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_replace($3,$5,$7); ++ $$= new (thd->mem_root) Item_func_replace($3,$5,$7); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRUNCATE_SYM '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_round($3,$5,1); ++ $$= new (thd->mem_root) Item_func_round($3,$5,1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | WEEK_SYM '(' expr ')' + { +- THD *thd= YYTHD; + Item *i1= new (thd->mem_root) Item_int((char*) "0", + thd->variables.default_week_format, + 1); +@@ -8598,7 +8553,7 @@ function_call_conflict: + } + | WEEK_SYM '(' expr ',' expr ')' + { +- $$= new (YYTHD->mem_root) Item_func_week($3,$5); ++ $$= new (thd->mem_root) Item_func_week($3,$5); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8620,52 +8575,52 @@ function_call_conflict: + geometry_function: + CONTAINS_SYM '(' expr ',' expr ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_rel($3, $5, + Item_func::SP_CONTAINS_FUNC)); + } + | GEOMETRYCOLLECTION '(' expr_list ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_collection(* $3, + Geometry::wkb_geometrycollection, + Geometry::wkb_point)); + } + | LINESTRING '(' expr_list ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_collection(* $3, + Geometry::wkb_linestring, + Geometry::wkb_point)); + } + | MULTILINESTRING '(' expr_list ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_collection(* $3, + Geometry::wkb_multilinestring, + Geometry::wkb_linestring)); + } + | MULTIPOINT '(' expr_list ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_collection(* $3, + Geometry::wkb_multipoint, + Geometry::wkb_point)); + } + | MULTIPOLYGON '(' expr_list ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_collection(* $3, + Geometry::wkb_multipolygon, + Geometry::wkb_polygon)); + } + | POINT_SYM '(' expr ',' expr ')' + { +- $$= GEOM_NEW(YYTHD, Item_func_point($3,$5)); ++ $$= GEOM_NEW(thd, Item_func_point($3,$5)); + } + | POLYGON '(' expr_list ')' + { +- $$= GEOM_NEW(YYTHD, ++ $$= GEOM_NEW(thd, + Item_func_spatial_collection(* $3, + Geometry::wkb_polygon, + Geometry::wkb_linestring)); +@@ -8703,7 +8658,6 @@ function_call_generic: + } + opt_udf_expr_list ')' + { +- THD *thd= YYTHD; + Create_func *builder; + Item *item= NULL; + +@@ -8757,7 +8711,6 @@ function_call_generic: + } + | ident '.' ident '(' opt_expr_list ')' + { +- THD *thd= YYTHD; + Create_qfunc *builder; + Item *item= NULL; + +@@ -8821,7 +8774,7 @@ opt_udf_expr_list: + udf_expr_list: + udf_expr + { +- $$= new (YYTHD->mem_root) List; ++ $$= new (thd->mem_root) List; + if ($$ == NULL) + MYSQL_YYABORT; + $$->push_back($1); +@@ -8854,7 +8807,7 @@ udf_expr: + remember_name we may get quoted or escaped names. + */ + else if ($2->type() != Item::FIELD_ITEM) +- $2->set_name($1, (uint) ($3 - $1), YYTHD->charset()); ++ $2->set_name($1, (uint) ($3 - $1), thd->charset()); + $$= $2; + } + ; +@@ -8862,46 +8815,46 @@ udf_expr: + sum_expr: + AVG_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_avg($3, FALSE); ++ $$= new (thd->mem_root) Item_sum_avg($3, FALSE); + if ($$ == NULL) + MYSQL_YYABORT; + } + | AVG_SYM '(' DISTINCT in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_avg($4, TRUE); ++ $$= new (thd->mem_root) Item_sum_avg($4, TRUE); + if ($$ == NULL) + MYSQL_YYABORT; + } + | BIT_AND '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_and($3); ++ $$= new (thd->mem_root) Item_sum_and($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | BIT_OR '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_or($3); ++ $$= new (thd->mem_root) Item_sum_or($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | BIT_XOR '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_xor($3); ++ $$= new (thd->mem_root) Item_sum_xor($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | COUNT_SYM '(' opt_all '*' ')' + { +- Item *item= new (YYTHD->mem_root) Item_int((int32) 0L,1); ++ Item *item= new (thd->mem_root) Item_int((int32) 0L,1); + if (item == NULL) + MYSQL_YYABORT; +- $$= new (YYTHD->mem_root) Item_sum_count(item); ++ $$= new (thd->mem_root) Item_sum_count(item); + if ($$ == NULL) + MYSQL_YYABORT; + } + | COUNT_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_count($3); ++ $$= new (thd->mem_root) Item_sum_count($3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8911,13 +8864,13 @@ sum_expr: + { Select->in_sum_expr--; } + ')' + { +- $$= new (YYTHD->mem_root) Item_sum_count(* $5); ++ $$= new (thd->mem_root) Item_sum_count(* $5); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MIN_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_min($3); ++ $$= new (thd->mem_root) Item_sum_min($3); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8928,55 +8881,55 @@ sum_expr: + */ + | MIN_SYM '(' DISTINCT in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_min($4); ++ $$= new (thd->mem_root) Item_sum_min($4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MAX_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_max($3); ++ $$= new (thd->mem_root) Item_sum_max($3); + if ($$ == NULL) + MYSQL_YYABORT; + } + | MAX_SYM '(' DISTINCT in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_max($4); ++ $$= new (thd->mem_root) Item_sum_max($4); + if ($$ == NULL) + MYSQL_YYABORT; + } + | STD_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_std($3, 0); ++ $$= new (thd->mem_root) Item_sum_std($3, 0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | VARIANCE_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_variance($3, 0); ++ $$= new (thd->mem_root) Item_sum_variance($3, 0); + if ($$ == NULL) + MYSQL_YYABORT; + } + | STDDEV_SAMP_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_std($3, 1); ++ $$= new (thd->mem_root) Item_sum_std($3, 1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | VAR_SAMP_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_variance($3, 1); ++ $$= new (thd->mem_root) Item_sum_variance($3, 1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUM_SYM '(' in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_sum($3, FALSE); ++ $$= new (thd->mem_root) Item_sum_sum($3, FALSE); + if ($$ == NULL) + MYSQL_YYABORT; + } + | SUM_SYM '(' DISTINCT in_sum_expr ')' + { +- $$= new (YYTHD->mem_root) Item_sum_sum($4, TRUE); ++ $$= new (thd->mem_root) Item_sum_sum($4, TRUE); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -8988,7 +8941,7 @@ sum_expr: + { + SELECT_LEX *sel= Select; + sel->in_sum_expr--; +- $$= new (YYTHD->mem_root) ++ $$= new (thd->mem_root) + Item_func_group_concat(Lex->current_context(), $3, $5, + sel->gorder_list, $7); + if ($$ == NULL) +@@ -9017,7 +8970,7 @@ variable_aux: + ident_or_text SET_VAR expr + { + Item_func_set_user_var *item; +- $$= item= new (YYTHD->mem_root) Item_func_set_user_var($1, $3, false); ++ $$= item= new (thd->mem_root) Item_func_set_user_var($1, $3, false); + if ($$ == NULL) + MYSQL_YYABORT; + LEX *lex= Lex; +@@ -9026,7 +8979,7 @@ variable_aux: + } + | ident_or_text + { +- $$= new (YYTHD->mem_root) Item_func_get_user_var($1); ++ $$= new (thd->mem_root) Item_func_get_user_var($1); + if ($$ == NULL) + MYSQL_YYABORT; + LEX *lex= Lex; +@@ -9040,7 +8993,7 @@ variable_aux: + my_parse_error(ER(ER_SYNTAX_ERROR)); + MYSQL_YYABORT; + } +- if (!($$= get_system_var(YYTHD, $2, $3, $4))) ++ if (!($$= get_system_var(thd, $2, $3, $4))) + MYSQL_YYABORT; + if (!((Item_func_get_system_var*) $$)->is_written_to_binlog()) + Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_VARIABLE); +@@ -9055,7 +9008,7 @@ opt_distinct: + opt_gconcat_separator: + /* empty */ + { +- $$= new (YYTHD->mem_root) String(",", 1, &my_charset_latin1); ++ $$= new (thd->mem_root) String(",", 1, &my_charset_latin1); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -9082,9 +9035,9 @@ opt_gorder_clause: + + gorder_list: + gorder_list ',' order_ident order_dir +- { if (add_gorder_to_list(YYTHD, $3,(bool) $4)) MYSQL_YYABORT; } ++ { if (add_gorder_to_list(thd, $3,(bool) $4)) MYSQL_YYABORT; } + | order_ident order_dir +- { if (add_gorder_to_list(YYTHD, $1,(bool) $2)) MYSQL_YYABORT; } ++ { if (add_gorder_to_list(thd, $1,(bool) $2)) MYSQL_YYABORT; } + ; + + in_sum_expr: +@@ -9137,7 +9090,7 @@ opt_expr_list: + expr_list: + expr + { +- $$= new (YYTHD->mem_root) List; ++ $$= new (thd->mem_root) List; + if ($$ == NULL) + MYSQL_YYABORT; + $$->push_back($1); +@@ -9157,7 +9110,7 @@ ident_list_arg: + ident_list: + simple_ident + { +- $$= new (YYTHD->mem_root) List; ++ $$= new (thd->mem_root) List; + if ($$ == NULL) + MYSQL_YYABORT; + $$->push_back($1); +@@ -9257,7 +9210,7 @@ join_table: + { + MYSQL_YYABORT_UNLESS($1 && $3); + /* Change the current name resolution context to a local context. */ +- if (push_new_name_resolution_context(YYTHD, $1, $3)) ++ if (push_new_name_resolution_context(thd, $1, $3)) + MYSQL_YYABORT; + Select->parsing_place= IN_ON; + } +@@ -9272,7 +9225,7 @@ join_table: + { + MYSQL_YYABORT_UNLESS($1 && $3); + /* Change the current name resolution context to a local context. */ +- if (push_new_name_resolution_context(YYTHD, $1, $3)) ++ if (push_new_name_resolution_context(thd, $1, $3)) + MYSQL_YYABORT; + Select->parsing_place= IN_ON; + } +@@ -9302,7 +9255,7 @@ join_table: + { + MYSQL_YYABORT_UNLESS($1 && $5); + /* Change the current name resolution context to a local context. */ +- if (push_new_name_resolution_context(YYTHD, $1, $5)) ++ if (push_new_name_resolution_context(thd, $1, $5)) + MYSQL_YYABORT; + Select->parsing_place= IN_ON; + } +@@ -9338,7 +9291,7 @@ join_table: + { + MYSQL_YYABORT_UNLESS($1 && $5); + /* Change the current name resolution context to a local context. */ +- if (push_new_name_resolution_context(YYTHD, $1, $5)) ++ if (push_new_name_resolution_context(thd, $1, $5)) + MYSQL_YYABORT; + Select->parsing_place= IN_ON; + } +@@ -9393,7 +9346,7 @@ table_factor: + } + table_ident opt_table_alias opt_key_definition + { +- if (!($$= Select->add_table_to_list(YYTHD, $2, $3, ++ if (!($$= Select->add_table_to_list(thd, $2, $3, + Select->get_table_join_options(), + YYPS->m_lock_type, + YYPS->m_mdl_type, +@@ -9700,7 +9653,7 @@ index_hints_list: + + opt_index_hints_list: + /* empty */ +- | { Select->alloc_index_hints(YYTHD); } index_hints_list ++ | { Select->alloc_index_hints(thd); } index_hints_list + ; + + opt_key_definition: +@@ -9709,15 +9662,15 @@ opt_key_definition: + ; + + opt_key_usage_list: +- /* empty */ { Select->add_index_hint(YYTHD, NULL, 0); } ++ /* empty */ { Select->add_index_hint(thd, NULL, 0); } + | key_usage_list {} + ; + + key_usage_element: + ident +- { Select->add_index_hint(YYTHD, $1.str, $1.length); } ++ { Select->add_index_hint(thd, $1.str, $1.length); } + | PRIMARY_SYM +- { Select->add_index_hint(YYTHD, (char *)"PRIMARY", 7); } ++ { Select->add_index_hint(thd, (char *)"PRIMARY", 7); } + ; + + key_usage_list: +@@ -9730,7 +9683,7 @@ using_list: + { + if (!($$= new List)) + MYSQL_YYABORT; +- String *s= new (YYTHD->mem_root) String((const char *) $1.str, ++ String *s= new (thd->mem_root) String((const char *) $1.str, + $1.length, + system_charset_info); + if (s == NULL) +@@ -9739,7 +9692,7 @@ using_list: + } + | using_list ',' ident + { +- String *s= new (YYTHD->mem_root) String((const char *) $3.str, ++ String *s= new (thd->mem_root) String((const char *) $3.str, + $3.length, + system_charset_info); + if (s == NULL) +@@ -9844,7 +9797,6 @@ opt_escape: + } + | /* empty */ + { +- THD *thd= YYTHD; + Lex->escape_used= FALSE; + $$= ((thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES) ? + new (thd->mem_root) Item_string("", 0, &my_charset_latin1) : +@@ -9865,9 +9817,9 @@ group_clause: + + group_list: + group_list ',' order_ident order_dir +- { if (add_group_to_list(YYTHD, $3,(bool) $4)) MYSQL_YYABORT; } ++ { if (add_group_to_list(thd, $3,(bool) $4)) MYSQL_YYABORT; } + | order_ident order_dir +- { if (add_group_to_list(YYTHD, $1,(bool) $2)) MYSQL_YYABORT; } ++ { if (add_group_to_list(thd, $1,(bool) $2)) MYSQL_YYABORT; } + ; + + olap_opt: +@@ -9928,7 +9880,6 @@ alter_order_list: + alter_order_item: + simple_ident_nospvar order_dir + { +- THD *thd= YYTHD; + bool ascending= ($2 == 1) ? true : false; + if (add_order_to_list(thd, $1, ascending)) + MYSQL_YYABORT; +@@ -9981,9 +9932,9 @@ order_clause: + + order_list: + order_list ',' order_ident order_dir +- { if (add_order_to_list(YYTHD, $3,(bool) $4)) MYSQL_YYABORT; } ++ { if (add_order_to_list(thd, $3,(bool) $4)) MYSQL_YYABORT; } + | order_ident order_dir +- { if (add_order_to_list(YYTHD, $1,(bool) $2)) MYSQL_YYABORT; } ++ { if (add_order_to_list(thd, $1,(bool) $2)) MYSQL_YYABORT; } + ; + + order_dir: +@@ -10047,7 +9998,6 @@ limit_option: + ident + { + Item_splocal *splocal; +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= & thd->m_parser_state->m_lip; + sp_variable_t *spv; +@@ -10084,19 +10034,19 @@ limit_option: + } + | ULONGLONG_NUM + { +- $$= new (YYTHD->mem_root) Item_uint($1.str, $1.length); ++ $$= new (thd->mem_root) Item_uint($1.str, $1.length); + if ($$ == NULL) + MYSQL_YYABORT; + } + | LONG_NUM + { +- $$= new (YYTHD->mem_root) Item_uint($1.str, $1.length); ++ $$= new (thd->mem_root) Item_uint($1.str, $1.length); + if ($$ == NULL) + MYSQL_YYABORT; + } + | NUM + { +- $$= new (YYTHD->mem_root) Item_uint($1.str, $1.length); ++ $$= new (thd->mem_root) Item_uint($1.str, $1.length); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -10183,7 +10133,7 @@ procedure_clause: + lex->proc_list.elements=0; + lex->proc_list.first=0; + lex->proc_list.next= &lex->proc_list.first; +- Item_field *item= new (YYTHD->mem_root) ++ Item_field *item= new (thd->mem_root) + Item_field(&lex->current_select->context, + NULL, NULL, $2.str); + if (item == NULL) +@@ -10208,7 +10158,6 @@ procedure_list2: + procedure_item: + remember_name expr remember_end + { +- THD *thd= YYTHD; + + if (add_proc_to_list(thd, $2)) + MYSQL_YYABORT; +@@ -10383,7 +10332,6 @@ drop: + } + | DROP FUNCTION_SYM if_exists ident '.' ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + sp_name *spname; + if ($4.str && check_db_name(&$4)) +@@ -10406,7 +10354,6 @@ drop: + } + | DROP FUNCTION_SYM if_exists ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + LEX_STRING db= {0, 0}; + sp_name *spname; +@@ -10491,7 +10438,7 @@ table_list: + table_name: + table_ident + { +- if (!Select->add_table_to_list(YYTHD, $1, NULL, ++ if (!Select->add_table_to_list(thd, $1, NULL, + TL_OPTION_UPDATING, + YYPS->m_lock_type, + YYPS->m_mdl_type)) +@@ -10507,7 +10454,7 @@ table_alias_ref_list: + table_alias_ref: + table_ident_opt_wild + { +- if (!Select->add_table_to_list(YYTHD, $1, NULL, ++ if (!Select->add_table_to_list(thd, $1, NULL, + TL_OPTION_UPDATING | TL_OPTION_ALIAS, + YYPS->m_lock_type, + YYPS->m_mdl_type)) +@@ -10581,7 +10528,7 @@ insert_lock_option: + | DELAYED_SYM + { + Lex->keyword_delayed_begin_offset= (uint)(YYLIP->get_tok_start() - +- YYTHD->query()); ++ thd->query()); + Lex->keyword_delayed_end_offset= Lex->keyword_delayed_begin_offset + + YYLIP->yyLength() + 1; + $$= TL_WRITE_DELAYED; +@@ -10594,7 +10541,7 @@ replace_lock_option: + | DELAYED_SYM + { + Lex->keyword_delayed_begin_offset= (uint)(YYLIP->get_tok_start() - +- YYTHD->query()); ++ thd->query()); + Lex->keyword_delayed_end_offset= Lex->keyword_delayed_begin_offset + + YYLIP->yyLength() + 1; + $$= TL_WRITE_DELAYED; +@@ -10711,7 +10658,7 @@ expr_or_default: + expr { $$= $1;} + | DEFAULT + { +- $$= new (YYTHD->mem_root) Item_default_value(Lex->current_context()); ++ $$= new (thd->mem_root) Item_default_value(Lex->current_context()); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -10764,7 +10711,7 @@ update_list: + update_elem: + simple_ident_nospvar equal expr_or_default + { +- if (add_item_to_list(YYTHD, $1) || add_value_to_list(YYTHD, $3)) ++ if (add_item_to_list(thd, $1) || add_value_to_list(thd, $3)) + MYSQL_YYABORT; + } + ; +@@ -10809,7 +10756,7 @@ delete: + single_multi: + FROM table_ident + { +- if (!Select->add_table_to_list(YYTHD, $2, NULL, TL_OPTION_UPDATING, ++ if (!Select->add_table_to_list(thd, $2, NULL, TL_OPTION_UPDATING, + YYPS->m_lock_type, + YYPS->m_mdl_type)) + MYSQL_YYABORT; +@@ -10853,7 +10800,7 @@ table_wild_one: + Table_ident *ti= new Table_ident($1); + if (ti == NULL) + MYSQL_YYABORT; +- if (!Select->add_table_to_list(YYTHD, ++ if (!Select->add_table_to_list(thd, + ti, + NULL, + TL_OPTION_UPDATING | TL_OPTION_ALIAS, +@@ -10863,10 +10810,10 @@ table_wild_one: + } + | ident '.' ident opt_wild + { +- Table_ident *ti= new Table_ident(YYTHD, $1, $3, 0); ++ Table_ident *ti= new Table_ident(thd, $1, $3, 0); + if (ti == NULL) + MYSQL_YYABORT; +- if (!Select->add_table_to_list(YYTHD, ++ if (!Select->add_table_to_list(thd, + ti, + NULL, + TL_OPTION_UPDATING | TL_OPTION_ALIAS, +@@ -10906,7 +10853,6 @@ truncate: + } + table_name + { +- THD *thd= YYTHD; + LEX* lex= thd->lex; + DBUG_ASSERT(!lex->m_stmt); + lex->m_stmt= new (thd->mem_root) Truncate_statement(lex); +@@ -11000,7 +10946,7 @@ show_param: + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_DATABASES; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_SCHEMATA)) ++ if (prepare_schema_table(thd, lex, 0, SCH_SCHEMATA)) + MYSQL_YYABORT; + } + | opt_full TABLES opt_db wild_and_where +@@ -11008,7 +10954,7 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_TABLES; + lex->select_lex.db= $3; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLE_NAMES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_TABLE_NAMES)) + MYSQL_YYABORT; + } + | opt_var_type TEMPORARY TABLES opt_db +@@ -11017,7 +10963,7 @@ show_param: + lex->sql_command= SQLCOM_SHOW_TEMPORARY_TABLES; + lex->option_type= $1; + lex->select_lex.db= $4; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_TEMPORARY_TABLES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_TEMPORARY_TABLES)) + MYSQL_YYABORT; + } + | opt_full TRIGGERS_SYM opt_db wild_and_where +@@ -11025,7 +10971,7 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_TRIGGERS; + lex->select_lex.db= $3; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_TRIGGERS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_TRIGGERS)) + MYSQL_YYABORT; + } + | EVENTS_SYM opt_db wild_and_where +@@ -11033,7 +10979,7 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_EVENTS; + lex->select_lex.db= $2; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_EVENTS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_EVENTS)) + MYSQL_YYABORT; + } + | TABLE_SYM STATUS_SYM opt_db wild_and_where +@@ -11041,7 +10987,7 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_TABLE_STATUS; + lex->select_lex.db= $3; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_TABLES)) + MYSQL_YYABORT; + } + | OPEN_SYM TABLES opt_db wild_and_where +@@ -11049,14 +10995,14 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_OPEN_TABLES; + lex->select_lex.db= $3; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_OPEN_TABLES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_OPEN_TABLES)) + MYSQL_YYABORT; + } + | PLUGINS_SYM + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_PLUGINS; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_PLUGINS)) + MYSQL_YYABORT; + } + | ENGINE_SYM known_storage_engines show_engine_param +@@ -11069,7 +11015,7 @@ show_param: + lex->sql_command= SQLCOM_SHOW_FIELDS; + if ($5) + $4->change_db($5); +- if (prepare_schema_table(YYTHD, lex, $4, SCH_COLUMNS)) ++ if (prepare_schema_table(thd, lex, $4, SCH_COLUMNS)) + MYSQL_YYABORT; + } + | master_or_binary LOGS_SYM +@@ -11096,21 +11042,21 @@ show_param: + lex->sql_command= SQLCOM_SHOW_KEYS; + if ($4) + $3->change_db($4); +- if (prepare_schema_table(YYTHD, lex, $3, SCH_STATISTICS)) ++ if (prepare_schema_table(thd, lex, $3, SCH_STATISTICS)) + MYSQL_YYABORT; + } + | opt_storage ENGINES_SYM + { + LEX *lex=Lex; + lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_ENGINES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_ENGINES)) + MYSQL_YYABORT; + } + | AUTHORS_SYM + { + LEX *lex=Lex; + lex->sql_command= SQLCOM_SHOW_AUTHORS; +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN, ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, + ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT, + ER(ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT), + "SHOW AUTHORS"); +@@ -11119,7 +11065,7 @@ show_param: + { + LEX *lex=Lex; + lex->sql_command= SQLCOM_SHOW_CONTRIBUTORS; +- push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN, ++ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, + ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT, + ER(ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT), + "SHOW CONTRIBUTORS"); +@@ -11143,7 +11089,7 @@ show_param: + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_PROFILE; +- if (prepare_schema_table(YYTHD, lex, NULL, SCH_PROFILES) != 0) ++ if (prepare_schema_table(thd, lex, NULL, SCH_PROFILES) != 0) + YYABORT; + } + | opt_var_type STATUS_SYM wild_and_where +@@ -11151,7 +11097,7 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_STATUS; + lex->option_type= $1; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_STATUS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_STATUS)) + MYSQL_YYABORT; + } + | opt_full PROCESSLIST_SYM +@@ -11161,21 +11107,21 @@ show_param: + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_VARIABLES; + lex->option_type= $1; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_VARIABLES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_VARIABLES)) + MYSQL_YYABORT; + } + | charset wild_and_where + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_CHARSETS; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_CHARSETS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_CHARSETS)) + MYSQL_YYABORT; + } + | COLLATION_SYM wild_and_where + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_COLLATIONS; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_COLLATIONS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_COLLATIONS)) + MYSQL_YYABORT; + } + | GRANTS +@@ -11205,7 +11151,7 @@ show_param: + { + LEX *lex= Lex; + lex->sql_command = SQLCOM_SHOW_CREATE; +- if (!lex->select_lex.add_table_to_list(YYTHD, $3, NULL,0)) ++ if (!lex->select_lex.add_table_to_list(thd, $3, NULL,0)) + MYSQL_YYABORT; + lex->only_view= 0; + lex->create_info.storage_media= HA_SM_DEFAULT; +@@ -11214,7 +11160,7 @@ show_param: + { + LEX *lex= Lex; + lex->sql_command = SQLCOM_SHOW_CREATE; +- if (!lex->select_lex.add_table_to_list(YYTHD, $3, NULL, 0)) ++ if (!lex->select_lex.add_table_to_list(thd, $3, NULL, 0)) + MYSQL_YYABORT; + lex->only_view= 1; + } +@@ -11236,7 +11182,7 @@ show_param: + #ifdef HAVE_RESPONSE_TIME_DISTRIBUTION + LEX *lex= Lex; + lex->sql_command= SQLCOM_SELECT; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_QUERY_RESPONSE_TIME)) ++ if (prepare_schema_table(thd, lex, 0, SCH_QUERY_RESPONSE_TIME)) + MYSQL_YYABORT; + #endif // HAVE_RESPONSE_TIME_DISTRIBUTION + } +@@ -11244,35 +11190,35 @@ show_param: + { + LEX *lex= Lex; + Lex->sql_command= SQLCOM_SELECT; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_CLIENT_STATS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_CLIENT_STATS)) + MYSQL_YYABORT; + } + | USER_STATS_SYM wild_and_where + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SELECT; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_USER_STATS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_USER_STATS)) + MYSQL_YYABORT; + } + | THREAD_STATS_SYM wild_and_where + { + LEX *lex= Lex; + Lex->sql_command= SQLCOM_SELECT; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_THREAD_STATS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_THREAD_STATS)) + MYSQL_YYABORT; + } + | TABLE_STATS_SYM wild_and_where + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SELECT; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLE_STATS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_TABLE_STATS)) + MYSQL_YYABORT; + } + | INDEX_STATS_SYM wild_and_where + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SELECT; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_INDEX_STATS)) ++ if (prepare_schema_table(thd, lex, 0, SCH_INDEX_STATS)) + MYSQL_YYABORT; + } + | CREATE PROCEDURE_SYM sp_name +@@ -11299,14 +11245,14 @@ show_param: + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_STATUS_PROC; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_PROCEDURES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)) + MYSQL_YYABORT; + } + | FUNCTION_SYM STATUS_SYM wild_and_where + { + LEX *lex= Lex; + lex->sql_command= SQLCOM_SHOW_STATUS_FUNC; +- if (prepare_schema_table(YYTHD, lex, 0, SCH_PROCEDURES)) ++ if (prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)) + MYSQL_YYABORT; + } + | PROCEDURE_SYM CODE_SYM sp_name +@@ -11374,7 +11320,7 @@ wild_and_where: + /* empty */ + | LIKE TEXT_STRING_sys + { +- Lex->wild= new (YYTHD->mem_root) String($2.str, $2.length, ++ Lex->wild= new (thd->mem_root) String($2.str, $2.length, + system_charset_info); + if (Lex->wild == NULL) + MYSQL_YYABORT; +@@ -11397,7 +11343,7 @@ describe: + lex->sql_command= SQLCOM_SHOW_FIELDS; + lex->select_lex.db= 0; + lex->verbose= 0; +- if (prepare_schema_table(YYTHD, lex, $2, SCH_COLUMNS)) ++ if (prepare_schema_table(thd, lex, $2, SCH_COLUMNS)) + MYSQL_YYABORT; + } + opt_describe_column +@@ -11429,7 +11375,7 @@ opt_describe_column: + | text_string { Lex->wild= $1; } + | ident + { +- Lex->wild= new (YYTHD->mem_root) String((const char*) $1.str, ++ Lex->wild= new (thd->mem_root) String((const char*) $1.str, + $1.length, + system_charset_info); + if (Lex->wild == NULL) +@@ -11647,7 +11593,6 @@ use: + load: + LOAD data_or_xml + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + + if (lex->sphead) +@@ -11670,7 +11615,7 @@ load: + opt_duplicate INTO TABLE_SYM table_ident + { + LEX *lex=Lex; +- if (!Select->add_table_to_list(YYTHD, $12, NULL, TL_OPTION_UPDATING, ++ if (!Select->add_table_to_list(thd, $12, NULL, TL_OPTION_UPDATING, + $4, MDL_SHARED_WRITE)) + MYSQL_YYABORT; + lex->field_list.empty(); +@@ -11813,7 +11758,7 @@ field_or_var: + simple_ident_nospvar {$$= $1;} + | '@' ident_or_text + { +- $$= new (YYTHD->mem_root) Item_user_var_as_out_param($2); ++ $$= new (thd->mem_root) Item_user_var_as_out_param($2); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -11834,16 +11779,16 @@ load_data_set_elem: + { + LEX *lex= Lex; + uint length= (uint) ($5 - $3); +- String *val= new (YYTHD->mem_root) String($3, ++ String *val= new (thd->mem_root) String($3, + length, +- YYTHD->charset()); ++ thd->charset()); + if (val == NULL) + MYSQL_YYABORT; + if (lex->update_list.push_back($1) || + lex->value_list.push_back($4) || + lex->load_set_str_list.push_back(val)) + MYSQL_YYABORT; +- $4->set_name_no_truncate($3, length, YYTHD->charset()); ++ $4->set_name_no_truncate($3, length, thd->charset()); + } + ; + +@@ -11853,7 +11798,6 @@ text_literal: + TEXT_STRING + { + LEX_STRING tmp; +- THD *thd= YYTHD; + CHARSET_INFO *cs_con= thd->variables.collation_connection; + CHARSET_INFO *cs_cli= thd->variables.character_set_client; + uint repertoire= thd->lex->text_string_is_7bit && +@@ -11879,7 +11823,7 @@ text_literal: + uint repertoire= Lex->text_string_is_7bit ? + MY_REPERTOIRE_ASCII : MY_REPERTOIRE_UNICODE30; + DBUG_ASSERT(my_charset_is_ascii_based(national_charset_info)); +- $$= new (YYTHD->mem_root) Item_string($1.str, $1.length, ++ $$= new (thd->mem_root) Item_string($1.str, $1.length, + national_charset_info, + DERIVATION_COERCIBLE, + repertoire); +@@ -11888,7 +11832,7 @@ text_literal: + } + | UNDERSCORE_CHARSET TEXT_STRING + { +- Item_string *str= new (YYTHD->mem_root) Item_string($2.str, ++ Item_string *str= new (thd->mem_root) Item_string($2.str, + $2.length, $1); + if (str == NULL) + MYSQL_YYABORT; +@@ -11907,7 +11851,7 @@ text_literal: + If the string has been pure ASCII so far, + check the new part. + */ +- CHARSET_INFO *cs= YYTHD->variables.collation_connection; ++ CHARSET_INFO *cs= thd->variables.collation_connection; + item->collation.repertoire|= my_string_repertoire(cs, + $2.str, + $2.length); +@@ -11918,15 +11862,15 @@ text_literal: + text_string: + TEXT_STRING_literal + { +- $$= new (YYTHD->mem_root) String($1.str, ++ $$= new (thd->mem_root) String($1.str, + $1.length, +- YYTHD->variables.collation_connection); ++ thd->variables.collation_connection); + if ($$ == NULL) + MYSQL_YYABORT; + } + | HEX_NUM + { +- Item *tmp= new (YYTHD->mem_root) Item_hex_string($1.str, $1.length); ++ Item *tmp= new (thd->mem_root) Item_hex_string($1.str, $1.length); + if (tmp == NULL) + MYSQL_YYABORT; + /* +@@ -11938,7 +11882,7 @@ text_string: + } + | BIN_NUM + { +- Item *tmp= new (YYTHD->mem_root) Item_bin_string($1.str, $1.length); ++ Item *tmp= new (thd->mem_root) Item_bin_string($1.str, $1.length); + if (tmp == NULL) + MYSQL_YYABORT; + /* +@@ -11953,7 +11897,6 @@ text_string: + param_marker: + PARAM_MARKER + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + Item_param *item; +@@ -11986,38 +11929,38 @@ literal: + | NUM_literal { $$ = $1; } + | NULL_SYM + { +- $$ = new (YYTHD->mem_root) Item_null(); ++ $$ = new (thd->mem_root) Item_null(); + if ($$ == NULL) + MYSQL_YYABORT; + YYLIP->next_state= MY_LEX_OPERATOR_OR_IDENT; + } + | FALSE_SYM + { +- $$= new (YYTHD->mem_root) Item_int((char*) "FALSE",0,1); ++ $$= new (thd->mem_root) Item_int((char*) "FALSE",0,1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | TRUE_SYM + { +- $$= new (YYTHD->mem_root) Item_int((char*) "TRUE",1,1); ++ $$= new (thd->mem_root) Item_int((char*) "TRUE",1,1); + if ($$ == NULL) + MYSQL_YYABORT; + } + | HEX_NUM + { +- $$ = new (YYTHD->mem_root) Item_hex_string($1.str, $1.length); ++ $$ = new (thd->mem_root) Item_hex_string($1.str, $1.length); + if ($$ == NULL) + MYSQL_YYABORT; + } + | BIN_NUM + { +- $$= new (YYTHD->mem_root) Item_bin_string($1.str, $1.length); ++ $$= new (thd->mem_root) Item_bin_string($1.str, $1.length); + if ($$ == NULL) + MYSQL_YYABORT; + } + | UNDERSCORE_CHARSET HEX_NUM + { +- Item *tmp= new (YYTHD->mem_root) Item_hex_string($2.str, $2.length); ++ Item *tmp= new (thd->mem_root) Item_hex_string($2.str, $2.length); + if (tmp == NULL) + MYSQL_YYABORT; + /* +@@ -12028,7 +11971,7 @@ literal: + String *str= tmp->val_str((String*) 0); + + Item_string *item_str; +- item_str= new (YYTHD->mem_root) ++ item_str= new (thd->mem_root) + Item_string(NULL, /* name will be set in select_item */ + str ? str->ptr() : "", + str ? str->length() : 0, +@@ -12046,7 +11989,7 @@ literal: + } + | UNDERSCORE_CHARSET BIN_NUM + { +- Item *tmp= new (YYTHD->mem_root) Item_bin_string($2.str, $2.length); ++ Item *tmp= new (thd->mem_root) Item_bin_string($2.str, $2.length); + if (tmp == NULL) + MYSQL_YYABORT; + /* +@@ -12057,7 +12000,7 @@ literal: + String *str= tmp->val_str((String*) 0); + + Item_string *item_str; +- item_str= new (YYTHD->mem_root) ++ item_str= new (thd->mem_root) + Item_string(NULL, /* name will be set in select_item */ + str ? str->ptr() : "", + str ? str->length() : 0, +@@ -12081,7 +12024,7 @@ NUM_literal: + NUM + { + int error; +- $$= new (YYTHD->mem_root) ++ $$= new (thd->mem_root) + Item_int($1.str, + (longlong) my_strtoll10($1.str, NULL, &error), + $1.length); +@@ -12091,7 +12034,7 @@ NUM_literal: + | LONG_NUM + { + int error; +- $$= new (YYTHD->mem_root) ++ $$= new (thd->mem_root) + Item_int($1.str, + (longlong) my_strtoll10($1.str, NULL, &error), + $1.length); +@@ -12100,23 +12043,23 @@ NUM_literal: + } + | ULONGLONG_NUM + { +- $$= new (YYTHD->mem_root) Item_uint($1.str, $1.length); ++ $$= new (thd->mem_root) Item_uint($1.str, $1.length); + if ($$ == NULL) + MYSQL_YYABORT; + } + | DECIMAL_NUM + { +- $$= new (YYTHD->mem_root) Item_decimal($1.str, $1.length, +- YYTHD->charset()); +- if (($$ == NULL) || (YYTHD->is_error())) ++ $$= new (thd->mem_root) Item_decimal($1.str, $1.length, ++ thd->charset()); ++ if (($$ == NULL) || (thd->is_error())) + { + MYSQL_YYABORT; + } + } + | FLOAT_NUM + { +- $$= new (YYTHD->mem_root) Item_float($1.str, $1.length); +- if (($$ == NULL) || (YYTHD->is_error())) ++ $$= new (thd->mem_root) Item_float($1.str, $1.length); ++ if (($$ == NULL) || (thd->is_error())) + { + MYSQL_YYABORT; + } +@@ -12136,7 +12079,7 @@ table_wild: + ident '.' '*' + { + SELECT_LEX *sel= Select; +- $$= new (YYTHD->mem_root) Item_field(Lex->current_context(), ++ $$= new (thd->mem_root) Item_field(Lex->current_context(), + NullS, $1.str, "*"); + if ($$ == NULL) + MYSQL_YYABORT; +@@ -12144,7 +12087,6 @@ table_wild: + } + | ident '.' ident '.' '*' + { +- THD *thd= YYTHD; + SELECT_LEX *sel= Select; + const char* schema= thd->client_capabilities & CLIENT_NO_SCHEMA ? + NullS : $1.str; +@@ -12164,7 +12106,6 @@ order_ident: + simple_ident: + ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + sp_variable_t *spv; +@@ -12215,7 +12156,6 @@ simple_ident: + simple_ident_nospvar: + ident + { +- THD *thd= YYTHD; + SELECT_LEX *sel=Select; + if ((sel->parsing_place != IN_HAVING) || + (sel->get_in_sum_expr() > 0)) +@@ -12237,7 +12177,6 @@ simple_ident_nospvar: + simple_ident_q: + ident '.' ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + + /* +@@ -12316,7 +12255,6 @@ simple_ident_q: + } + | '.' ident '.' ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + SELECT_LEX *sel= lex->current_select; + if (sel->no_table_names_allowed) +@@ -12341,7 +12279,6 @@ simple_ident_q: + } + | ident '.' ident '.' ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + SELECT_LEX *sel= lex->current_select; + const char* schema= (thd->client_capabilities & CLIENT_NO_SCHEMA ? +@@ -12409,7 +12346,7 @@ table_ident: + } + | ident '.' ident + { +- $$= new Table_ident(YYTHD, $1,$3,0); ++ $$= new Table_ident(thd, $1,$3,0); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -12431,7 +12368,7 @@ table_ident_opt_wild: + } + | ident '.' ident opt_wild + { +- $$= new Table_ident(YYTHD, $1,$3,0); ++ $$= new Table_ident(thd, $1,$3,0); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -12441,7 +12378,7 @@ table_ident_nodb: + ident + { + LEX_STRING db={(char*) any_db,3}; +- $$= new Table_ident(YYTHD, db,$1,0); ++ $$= new Table_ident(thd, db,$1,0); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -12451,7 +12388,6 @@ IDENT_sys: + IDENT { $$= $1; } + | IDENT_QUOTED + { +- THD *thd= YYTHD; + + if (thd->charset_is_system_charset) + { +@@ -12481,7 +12417,6 @@ IDENT_sys: + TEXT_STRING_sys: + TEXT_STRING + { +- THD *thd= YYTHD; + + if (thd->charset_is_system_charset) + $$= $1; +@@ -12497,7 +12432,6 @@ TEXT_STRING_sys: + TEXT_STRING_literal: + TEXT_STRING + { +- THD *thd= YYTHD; + + if (thd->charset_is_collation_connection) + $$= $1; +@@ -12513,7 +12447,6 @@ TEXT_STRING_literal: + TEXT_STRING_filesystem: + TEXT_STRING + { +- THD *thd= YYTHD; + + if (thd->charset_is_character_set_filesystem) + $$= $1; +@@ -12531,7 +12464,6 @@ ident: + IDENT_sys { $$=$1; } + | keyword + { +- THD *thd= YYTHD; + $$.str= thd->strmake($1.str, $1.length); + if ($$.str == NULL) + MYSQL_YYABORT; +@@ -12543,7 +12475,6 @@ label_ident: + IDENT_sys { $$=$1; } + | keyword_sp + { +- THD *thd= YYTHD; + $$.str= thd->strmake($1.str, $1.length); + if ($$.str == NULL) + MYSQL_YYABORT; +@@ -12560,7 +12491,6 @@ ident_or_text: + user: + ident_or_text + { +- THD *thd= YYTHD; + if (!($$=(LEX_USER*) thd->alloc(sizeof(st_lex_user)))) + MYSQL_YYABORT; + $$->user = $1; +@@ -12577,7 +12507,6 @@ user: + } + | ident_or_text '@' ident_or_text + { +- THD *thd= YYTHD; + if (!($$=(LEX_USER*) thd->alloc(sizeof(st_lex_user)))) + MYSQL_YYABORT; + $$->user = $1; $$->host=$3; +@@ -12599,7 +12528,7 @@ user: + } + | CURRENT_USER optional_braces + { +- if (!($$=(LEX_USER*) YYTHD->alloc(sizeof(st_lex_user)))) ++ if (!($$=(LEX_USER*) thd->alloc(sizeof(st_lex_user)))) + MYSQL_YYABORT; + /* + empty LEX_USER means current_user and +@@ -12987,7 +12916,6 @@ option_value_list: + + option_type_value: + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + +@@ -13018,7 +12946,6 @@ option_type_value: + } + ext_option_value + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + +@@ -13101,7 +13028,6 @@ ext_option_value: + sys_option_value: + option_type internal_variable_name equal set_expr_or_default + { +- THD *thd= YYTHD; + LEX *lex= Lex; + LEX_STRING *name= &$2.base_name; + +@@ -13113,7 +13039,7 @@ sys_option_value: + my_parse_error(ER(ER_SYNTAX_ERROR)); + MYSQL_YYABORT; + } +- if (set_trigger_new_row(YYTHD, name, $4)) ++ if (set_trigger_new_row(thd, name, $4)) + MYSQL_YYABORT; + } + else if ($2.var) +@@ -13143,7 +13069,6 @@ sys_option_value: + } + | option_type TRANSACTION_SYM ISOLATION LEVEL_SYM isolation_types + { +- THD *thd= YYTHD; + LEX *lex=Lex; + lex->option_type= $1; + Item *item= new (thd->mem_root) Item_int((int32) $5); +@@ -13163,7 +13088,7 @@ option_value: + '@' ident_or_text equal expr + { + Item_func_set_user_var *item; +- item= new (YYTHD->mem_root) Item_func_set_user_var($2, $4, false); ++ item= new (thd->mem_root) Item_func_set_user_var($2, $4, false); + if (item == NULL) + MYSQL_YYABORT; + set_var_user *var= new set_var_user(item); +@@ -13173,7 +13098,6 @@ option_value: + } + | '@' '@' opt_var_ident_type internal_variable_name equal set_expr_or_default + { +- THD *thd= YYTHD; + struct sys_var_with_base tmp= $4; + /* Lookup if necessary: must be a system variable. */ + if (tmp.var == NULL) +@@ -13186,7 +13110,6 @@ option_value: + } + | charset old_or_new_charset_name_or_default + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + CHARSET_INFO *cs2; + cs2= $2 ? $2: global_system_variables.character_set_client; +@@ -13234,7 +13157,6 @@ option_value: + } + | PASSWORD equal text_or_password + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + LEX_USER *user; + sp_pcontext *spc= lex->spcont; +@@ -13274,7 +13196,6 @@ option_value: + internal_variable_name: + ident + { +- THD *thd= YYTHD; + sp_pcontext *spc= thd->lex->spcont; + sp_variable_t *spv; + +@@ -13333,7 +13254,7 @@ internal_variable_name: + } + else + { +- sys_var *tmp=find_sys_var(YYTHD, $3.str, $3.length); ++ sys_var *tmp=find_sys_var(thd, $3.str, $3.length); + if (!tmp) + MYSQL_YYABORT; + if (!tmp->is_struct()) +@@ -13344,7 +13265,7 @@ internal_variable_name: + } + | DEFAULT '.' ident + { +- sys_var *tmp=find_sys_var(YYTHD, $3.str, $3.length); ++ sys_var *tmp=find_sys_var(thd, $3.str, $3.length); + if (!tmp) + MYSQL_YYABORT; + if (!tmp->is_struct()) +@@ -13366,16 +13287,16 @@ text_or_password: + TEXT_STRING { $$=$1.str;} + | PASSWORD '(' TEXT_STRING ')' + { +- $$= $3.length ? YYTHD->variables.old_passwords ? +- Item_func_old_password::alloc(YYTHD, $3.str, $3.length) : +- Item_func_password::alloc(YYTHD, $3.str, $3.length) : ++ $$= $3.length ? thd->variables.old_passwords ? ++ Item_func_old_password::alloc(thd, $3.str, $3.length) : ++ Item_func_password::alloc(thd, $3.str, $3.length) : + $3.str; + if ($$ == NULL) + MYSQL_YYABORT; + } + | OLD_PASSWORD '(' TEXT_STRING ')' + { +- $$= $3.length ? Item_func_old_password::alloc(YYTHD, $3.str, ++ $$= $3.length ? Item_func_old_password::alloc(thd, $3.str, + $3.length) : + $3.str; + if ($$ == NULL) +@@ -13389,19 +13310,19 @@ set_expr_or_default: + | DEFAULT { $$=0; } + | ON + { +- $$=new (YYTHD->mem_root) Item_string("ON", 2, system_charset_info); ++ $$=new (thd->mem_root) Item_string("ON", 2, system_charset_info); + if ($$ == NULL) + MYSQL_YYABORT; + } + | ALL + { +- $$=new (YYTHD->mem_root) Item_string("ALL", 3, system_charset_info); ++ $$=new (thd->mem_root) Item_string("ALL", 3, system_charset_info); + if ($$ == NULL) + MYSQL_YYABORT; + } + | BINARY + { +- $$=new (YYTHD->mem_root) Item_string("binary", 6, system_charset_info); ++ $$=new (thd->mem_root) Item_string("binary", 6, system_charset_info); + if ($$ == NULL) + MYSQL_YYABORT; + } +@@ -13440,7 +13361,7 @@ table_lock: + { + thr_lock_type lock_type= (thr_lock_type) $3; + bool lock_for_write= (lock_type >= TL_WRITE_ALLOW_WRITE); +- if (!Select->add_table_to_list(YYTHD, $1, $2, 0, lock_type, ++ if (!Select->add_table_to_list(thd, $1, $2, 0, lock_type, + (lock_for_write ? + MDL_SHARED_NO_READ_WRITE : + MDL_SHARED_READ))) +@@ -13511,7 +13432,7 @@ handler: + lex->expr_allows_subselect= FALSE; + lex->sql_command = SQLCOM_HA_READ; + lex->ha_rkey_mode= HA_READ_KEY_EXACT; /* Avoid purify warnings */ +- Item *one= new (YYTHD->mem_root) Item_int((int32) 1); ++ Item *one= new (thd->mem_root) Item_int((int32) 1); + if (one == NULL) + MYSQL_YYABORT; + lex->current_select->select_limit= one; +@@ -13857,10 +13778,10 @@ grant_user: + MYSQL_YYABORT; + if ($4.length) + { +- if (YYTHD->variables.old_passwords) ++ if (thd->variables.old_passwords) + { + char *buff= +- (char *) YYTHD->alloc(SCRAMBLED_PASSWORD_CHAR_LENGTH_323+1); ++ (char *) thd->alloc(SCRAMBLED_PASSWORD_CHAR_LENGTH_323+1); + if (buff == NULL) + MYSQL_YYABORT; + my_make_scrambled_password_323(buff, $4.str, $4.length); +@@ -13870,7 +13791,7 @@ grant_user: + else + { + char *buff= +- (char *) YYTHD->alloc(SCRAMBLED_PASSWORD_CHAR_LENGTH+1); ++ (char *) thd->alloc(SCRAMBLED_PASSWORD_CHAR_LENGTH+1); + if (buff == NULL) + MYSQL_YYABORT; + my_make_scrambled_password(buff, $4.str, $4.length); +@@ -13923,7 +13844,7 @@ column_list: + column_list_id: + ident + { +- String *new_str = new (YYTHD->mem_root) String((const char*) $1.str,$1.length,system_charset_info); ++ String *new_str = new (thd->mem_root) String((const char*) $1.str,$1.length,system_charset_info); + if (new_str == NULL) + MYSQL_YYABORT; + List_iterator iter(Lex->columns); +@@ -14133,7 +14054,6 @@ opt_union_order_or_limit: + + union_order_or_limit: + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + DBUG_ASSERT(lex->current_select->linkage != GLOBAL_OPTIONS_TYPE); + SELECT_LEX *sel= lex->current_select; +@@ -14149,7 +14069,6 @@ union_order_or_limit: + } + order_or_limit + { +- THD *thd= YYTHD; + thd->lex->current_select->no_table_names_allowed= 0; + thd->where= ""; + } +@@ -14331,14 +14250,14 @@ no_definer: + from older master servers (i.e. to create non-suid trigger in this + case). + */ +- YYTHD->lex->definer= 0; ++ thd->lex->definer= 0; + } + ; + + definer: + DEFINER_SYM EQ user + { +- YYTHD->lex->definer= get_current_user(YYTHD, $3); ++ thd->lex->definer= get_current_user(thd, $3); + } + ; + +@@ -14383,7 +14302,6 @@ view_suid: + view_tail: + view_suid VIEW_SYM table_ident + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + lex->sql_command= SQLCOM_CREATE_VIEW; + /* first table in list is target VIEW name */ +@@ -14427,7 +14345,6 @@ view_select: + } + view_select_aux view_check_option + { +- THD *thd= YYTHD; + LEX *lex= Lex; + uint len= YYLIP->get_cpp_ptr() - lex->create_view_select.str; + void *create_view_select= thd->memdup(lex->create_view_select.str, len); +@@ -14483,7 +14400,6 @@ trigger_tail: + EACH_SYM + ROW_SYM + { /* $15 */ +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + sp_head *sp; +@@ -14517,8 +14433,8 @@ trigger_tail: + sp_head *sp= lex->sphead; + + lex->sql_command= SQLCOM_CREATE_TRIGGER; +- sp->set_stmt_end(YYTHD); +- sp->restore_thd_mem_root(YYTHD); ++ sp->set_stmt_end(thd); ++ sp->restore_thd_mem_root(thd); + + if (sp->is_not_allowed_in_function("trigger")) + MYSQL_YYABORT; +@@ -14528,7 +14444,7 @@ trigger_tail: + sp_proc_stmt alternatives are not saving/restoring LEX, so + lex->query_tables can be wiped out. + */ +- if (!lex->select_lex.add_table_to_list(YYTHD, $9, ++ if (!lex->select_lex.add_table_to_list(thd, $9, + (LEX_STRING*) 0, + TL_OPTION_UPDATING, + TL_READ_NO_INSERT, +@@ -14547,7 +14463,6 @@ udf_tail: + AGGREGATE_SYM remember_name FUNCTION_SYM ident + RETURNS_SYM udf_type SONAME_SYM TEXT_STRING_sys + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + if (is_native_function(thd, & $4)) + { +@@ -14565,7 +14480,6 @@ udf_tail: + | remember_name FUNCTION_SYM ident + RETURNS_SYM udf_type SONAME_SYM TEXT_STRING_sys + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + if (is_native_function(thd, & $3)) + { +@@ -14588,7 +14502,6 @@ sf_tail: + sp_name /* $3 */ + '(' /* $4 */ + { /* $5 */ +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + sp_head *sp; +@@ -14646,7 +14559,7 @@ sf_tail: + MYSQL_YYABORT; + } + +- if (sp->fill_field_definition(YYTHD, lex, ++ if (sp->fill_field_definition(thd, lex, + (enum enum_field_types) $11, + &sp->m_return_field_def)) + MYSQL_YYABORT; +@@ -14655,7 +14568,6 @@ sf_tail: + } + sp_c_chistics /* $13 */ + { /* $14 */ +- THD *thd= YYTHD; + LEX *lex= thd->lex; + Lex_input_stream *lip= YYLIP; + +@@ -14664,7 +14576,6 @@ sf_tail: + } + sp_proc_stmt /* $15 */ + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + sp_head *sp= lex->sphead; + +@@ -14735,10 +14646,10 @@ sp_tail: + sp= new sp_head(); + if (sp == NULL) + MYSQL_YYABORT; +- sp->reset_thd_mem_root(YYTHD); ++ sp->reset_thd_mem_root(thd); + sp->init(lex); + sp->m_type= TYPE_ENUM_PROCEDURE; +- sp->init_sp_name(YYTHD, $3); ++ sp->init_sp_name(thd, $3); + + lex->sphead= sp; + } +@@ -14753,7 +14664,6 @@ sp_tail: + sp_pdparam_list + ')' + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + + lex->sphead->m_param_end= YYLIP->get_cpp_tok_start(); +@@ -14761,7 +14671,6 @@ sp_tail: + } + sp_c_chistics + { +- THD *thd= YYTHD; + LEX *lex= thd->lex; + + lex->sphead->m_chistics= &lex->sp_chistics; +@@ -14772,9 +14681,9 @@ sp_tail: + LEX *lex= Lex; + sp_head *sp= lex->sphead; + +- sp->set_stmt_end(YYTHD); ++ sp->set_stmt_end(thd); + lex->sql_command= SQLCOM_CREATE_PROCEDURE; +- sp->restore_thd_mem_root(YYTHD); ++ sp->restore_thd_mem_root(thd); + } + ; + +@@ -14811,21 +14720,21 @@ xid: + text_string + { + MYSQL_YYABORT_UNLESS($1->length() <= MAXGTRIDSIZE); +- if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID)))) ++ if (!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))) + MYSQL_YYABORT; + Lex->xid->set(1L, $1->ptr(), $1->length(), 0, 0); + } + | text_string ',' text_string + { + MYSQL_YYABORT_UNLESS($1->length() <= MAXGTRIDSIZE && $3->length() <= MAXBQUALSIZE); +- if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID)))) ++ if (!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))) + MYSQL_YYABORT; + Lex->xid->set(1L, $1->ptr(), $1->length(), $3->ptr(), $3->length()); + } + | text_string ',' text_string ',' ulong_num + { + MYSQL_YYABORT_UNLESS($1->length() <= MAXGTRIDSIZE && $3->length() <= MAXBQUALSIZE); +- if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID)))) ++ if (!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))) + MYSQL_YYABORT; + Lex->xid->set($5, $1->ptr(), $1->length(), $3->ptr(), $3->length()); + } +-- +1.8.4 + diff --git a/community/percona-server/PKGBUILD b/community/percona-server/PKGBUILD index 67d824f5a..eff9ebd3b 100644 --- a/community/percona-server/PKGBUILD +++ b/community/percona-server/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 93544 2013-07-05 09:53:28Z mtorromeo $ +# $Id: PKGBUILD 96790 2013-09-05 08:50:02Z mtorromeo $ # Maintainer: Massimiliano Torromeo pkgname=percona-server -pkgver=5.5.32_rel31.0 +pkgver=5.5.33_rel31.1 pkgrel=1 pkgdesc="A backwards-compatible drop-in replacement for MySQL that provides improved performance, diagnostics and instrumentation" arch=('i686' 'x86_64') @@ -19,14 +19,18 @@ options=('!libtool' 'emptydirs') backup=('etc/mysql/my.cnf') install=percona.install source=("http://www.percona.com/downloads/Percona-Server-${pkgver%.*_*}/Percona-Server-${pkgver/_rel/-}/source/Percona-Server-${pkgver/_/-}.tar.gz" + '0001-MDEV-4902-sql_yacc.yy-incompatible-with-bison-3.patch' 'mysqld-post.sh' 'mysqld.service' 'mysqld-tmpfile.conf') -build() { +prepare() { cd "${srcdir}/Percona-Server-${pkgver/_/-}" sed -i 's|ADD_SUBDIRECTORY(libmysqld/examples)|# ADD_SUBDIRECTORY(libmysqld/examples)|' CMakeLists.txt + patch -p1 -i "$srcdir/0001-MDEV-4902-sql_yacc.yy-incompatible-with-bison-3.patch" +} +build() { cd "${srcdir}" rm -rf build mkdir build @@ -97,7 +101,8 @@ package() { rm "${pkgdir}"/usr/share/man/man1/mysql-test-run.pl.1 } -sha256sums=('e34676cea5ceb398258408e31e8527724845f83bbbf1f22308f5069304118e8f' +sha256sums=('2039ae974d0973b765a4cdc7ffa1dc75ebd93540769fb134b3a8dc521dfc0b3a' + '35f5e7819d6c24863f3319462676ea989fd58f8a334925432444b6bf5c42fdaf' '82a241d9fa4032187a26597d044e94ba810b209b53a7ce14bb6eb92555993a48' '9bc66470f3f80534c0bb62f9f8325ccf60b164f421f74ad74a963f065d7b1869' 'badf6a701d9dc6ea3b4ddca26cb0f42b6236432ccdbc14c64962147802594a60') diff --git a/community/prelink/PKGBUILD b/community/prelink/PKGBUILD index 8c67cdabc..f50b40811 100644 --- a/community/prelink/PKGBUILD +++ b/community/prelink/PKGBUILD @@ -1,28 +1,21 @@ -# $Id: PKGBUILD 90944 2013-05-16 03:44:23Z eric $ +# $Id: PKGBUILD 96818 2013-09-05 20:51:50Z eric $ # Maintainer: Lukas Fleischer # Contributor: Juergen Hoetzel # Contributor: Rouslan Solomakhin pkgname=prelink -pkgver=20111012 -pkgrel=2 -pkgdesc='ELF prelinking utility to speed up dynamic linking.' +pkgver=20130503 +pkgrel=1 +pkgdesc='ELF prelinking utility to speed up dynamic linking' arch=('i686' 'x86_64') url='http://people.redhat.com/jakub/prelink/' license=('GPL') depends=('elfutils') backup=('etc/prelink.conf') source=("http://people.redhat.com/jakub/prelink/${pkgname}-${pkgver}.tar.bz2" - 'prelink.conf' - 'arch-x86_64-dynamic_linker.patch') -md5sums=('f5aaf347432d677c293e5e3399ba4fdf' - '0793ed49e9b31c125cba4d936c333cf6' - 'b347580536e078b34c547742d36a3e9d') - -prepare() { - cd ${pkgname} - patch -Np0 -i ../arch-x86_64-dynamic_linker.patch -} + 'prelink.conf') +sha1sums=('eff86cb26f0cc174486769527286cc388d5216b0' + 'b83bd2d3505076151aa13d40de3d5c08a04440c7') build() { cd ${pkgname} @@ -30,6 +23,11 @@ build() { make } +check() { + cd ${pkgname} + make check +} + package() { cd ${pkgname} make DESTDIR="${pkgdir}" install diff --git a/community/prelink/arch-x86_64-dynamic_linker.patch b/community/prelink/arch-x86_64-dynamic_linker.patch deleted file mode 100644 index bceb9b2dc..000000000 --- a/community/prelink/arch-x86_64-dynamic_linker.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -rup ../prelink.orig/src/arch-x86_64.c ./src/arch-x86_64.c ---- ../prelink.orig/src/arch-x86_64.c 2010-12-22 12:03:06.725004002 +0100 -+++ ./src/arch-x86_64.c 2010-12-22 12:04:08.193712039 +0100 -@@ -532,7 +532,7 @@ PL_ARCH = { - .R_COPY = R_X86_64_COPY, - .R_RELATIVE = R_X86_64_RELATIVE, - .rtype_class_valid = RTYPE_CLASS_VALID, -- .dynamic_linker = "/lib64/ld-linux-x86-64.so.2", -+ .dynamic_linker = "/lib/ld-linux-x86-64.so.2", - .adjust_dyn = x86_64_adjust_dyn, - .adjust_rel = x86_64_adjust_rel, - .adjust_rela = x86_64_adjust_rela, diff --git a/community/prelink/prelink.conf b/community/prelink/prelink.conf index a242269ad..f48d7f9f8 100644 --- a/community/prelink/prelink.conf +++ b/community/prelink/prelink.conf @@ -1,24 +1,8 @@ # System /usr/lib /usr/bin -/lib -/bin -/usr/sbin -# Gnome -/opt/gnome/lib -/opt/gnome/bin -/opt/gnome/share - -# KDE/Qt -/opt/qt/lib -/opt/qt/bin -/opt/qt/share +# KDE3 /opt/kde/lib /opt/kde/bin /opt/kde/share - -# XFCE -/opt/xfce4/lib -/opt/xfce4/bin -/opt/xfce4/share diff --git a/community/python-numexpr/PKGBUILD b/community/python-numexpr/PKGBUILD index c8ba3ef34..eb00378bb 100644 --- a/community/python-numexpr/PKGBUILD +++ b/community/python-numexpr/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 96119 2013-08-20 06:32:53Z lcarlier $ +# $Id: PKGBUILD 96812 2013-09-05 18:53:58Z aginiewicz $ # Maintainer: Andrzej Giniewicz # Contributor: Sebastien Binet pkgbase=python-numexpr pkgname=('python2-numexpr' 'python-numexpr') -pkgver=2.1 -pkgrel=2 +pkgver=2.2 +pkgrel=1 pkgdesc="A JIT compiler for Python expressions" url="http://code.google.com/p/numexpr/" arch=('i686' 'x86_64') license=('MIT') makedepends=('python2-setuptools' 'python-setuptools' 'python-numpy' 'python2-numpy') source=(http://numexpr.googlecode.com/files/numexpr-$pkgver.tar.gz) -md5sums=('8c138e81fb4214d05453da0fc88bf0d5') +md5sums=('1d83b13e69fff897a5bc588b7119506c') build() { cd "$srcdir" diff --git a/community/python-scikit-learn/LICENSE b/community/python-scikit-learn/LICENSE new file mode 100644 index 000000000..9827e0f0c --- /dev/null +++ b/community/python-scikit-learn/LICENSE @@ -0,0 +1,24 @@ +Copyright (c) 2010–2011, scikit-learn developers +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/community/python-scikit-learn/PKGBUILD b/community/python-scikit-learn/PKGBUILD new file mode 100644 index 000000000..ae64bf4d2 --- /dev/null +++ b/community/python-scikit-learn/PKGBUILD @@ -0,0 +1,54 @@ +# $Id: PKGBUILD 96814 2013-09-05 19:19:46Z aginiewicz $ +# Maintainer: Andrzej Giniewicz + +pkgbase=python-scikit-learn +pkgname=('python2-scikit-learn' 'python-scikit-learn') +pkgver=0.14.1 +pkgrel=1 +pkgdesc="A set of python modules for machine learning and data mining" +arch=('i686' 'x86_64') +url="http://scikit-learn.sourceforge.net/" +license=('BSD') +makedepends=('python2-scipy' 'python-scipy' 'python2-setuptools' 'python-setuptools') +options=(!emptydirs) + +source=("http://downloads.sourceforge.net/project/scikit-learn/scikit-learn-${pkgver}.tar.gz" + "LICENSE") +md5sums=('790ad23547bb7f428060636628e13491' + '327083d2576cc0aad1b8f10b2bcd2974') + +build() { + cd "$srcdir" + cp -a scikit-learn-$pkgver scikit-learn-py2-$pkgver + + msg "Building Python2" + cd "$srcdir"/scikit-learn-py2-$pkgver + python2 setup.py build + + msg "Building Python3" + cd "$srcdir"/scikit-learn-$pkgver + python setup.py build +} + +package_python2-scikit-learn() { + depends=('python2-scipy') + cd "$srcdir"/scikit-learn-py2-$pkgver + + python2 setup.py install --root="$pkgdir"/ --optimize=1 + + sed -i -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \ + -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \ + $(find "${pkgdir}" -name '*.py') + + install -D "$srcdir"/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + +package_python-scikit-learn() { + depends=('python-scipy') + cd "$srcdir"/scikit-learn-$pkgver + + python setup.py install --root="$pkgdir"/ --optimize=1 + + install -D "$srcdir"/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + diff --git a/community/xmonad/PKGBUILD b/community/xmonad/PKGBUILD index 658c18cbd..9e473de44 100644 --- a/community/xmonad/PKGBUILD +++ b/community/xmonad/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 89334 2013-04-28 16:53:06Z td123 $ +# $Id: PKGBUILD 96798 2013-09-05 16:17:45Z bgyorgy $ # Maintainer: Sergej Pupykin # Maintainer: Vesa Kaihlavirta # Contributor: shild pkgname=xmonad pkgver=0.11 -pkgrel=6 +pkgrel=7 pkgdesc="Lightweight X11 tiled window manager written in Haskell" arch=('i686' 'x86_64') url="http://xmonad.org/" @@ -22,7 +22,7 @@ md5sums=('5ac9dc1dae5e85dcbdfb9f70cbe312c1' build() { cd "$srcdir" ghc-pkg list - gendesk + gendesk --pkgname "$pkgname" --pkgdesc "$pkgdesc" cd $srcdir/$pkgname-$pkgver @@ -47,4 +47,6 @@ package() { install -D -m644 LICENSE $pkgdir/usr/share/licenses/xmonad/LICENSE install -D -m644 $srcdir/xmonad.svg $pkgdir/usr/share/pixmaps/xmonad.svg + + install -D -m644 $srcdir/xmonad.desktop $pkgdir/usr/share/xsessions/xmonad.desktop } diff --git a/community/xmonad/xmonad-gnome-session.session b/community/xmonad/xmonad-gnome-session.session deleted file mode 100644 index c0bd16781..000000000 --- a/community/xmonad/xmonad-gnome-session.session +++ /dev/null @@ -1,6 +0,0 @@ -[GNOME Session] -Name=Xmonad session -RequiredComponents=gnome-panel;gnome-settings-daemon; -RequiredProviders=windowmanager;notifications; -DefaultProvider-windowmanager=xmonad -DefaultProvider-notifications=notification-daemon diff --git a/community/xmonad/xmonad.install b/community/xmonad/xmonad.install index 6659247db..96b94dc02 100644 --- a/community/xmonad/xmonad.install +++ b/community/xmonad/xmonad.install @@ -4,9 +4,6 @@ post_install() { ${HS_DIR}/register.sh echo "xmonad now has dynamic configuration via ~/.xmonad/xmonad.hs" echo "See http://haskell.org/haskellwiki/Xmonad/Config_archive for examples" - echo - echo "If you would like to run xmonad as a window manager inside GNOME, please see" - echo "http://www.haskell.org/haskellwiki/Xmonad/Using_xmonad_in_Gnome#Setting_up_Gnome_to_use_Xmonad" } pre_upgrade() { -- cgit v1.2.3-54-g00ecf