diff --git a/sdk_container/src/third_party/coreos-overlay/app-admin/eselect-mesa/Manifest b/sdk_container/src/third_party/coreos-overlay/app-admin/eselect-mesa/Manifest deleted file mode 100644 index aff0abee45..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-admin/eselect-mesa/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST eselect-mesa-0.0.8.tar.gz 1888 SHA256 92a007e66750fb1f0a41182ba21bee61b7282c4299a7d47f637d19d209eb4e5b SHA512 f5b98aafd3c0fcc100bb0061b11c5a60f037c40a6611bedd81c3dff788ad7836781f110a8294b7464742ab0c52fda5c747e1a3b0d6a3d8be69e5940ea619bc0a WHIRLPOOL 7058f687c3295a313d8e7d386decd2a0b56bed01e889c65ac0bf335441d15615926c420e0579ab56969b164671186f92476fc0f6464ab1f9fa4b8192bf5fd987 diff --git a/sdk_container/src/third_party/coreos-overlay/app-admin/eselect-mesa/eselect-mesa-0.0.8.ebuild b/sdk_container/src/third_party/coreos-overlay/app-admin/eselect-mesa/eselect-mesa-0.0.8.ebuild deleted file mode 100644 index fd9a1d8541..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-admin/eselect-mesa/eselect-mesa-0.0.8.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-admin/eselect-mesa/eselect-mesa-0.0.8.ebuild,v 1.2 2010/11/28 15:37:34 chithanh Exp $ - -EAPI=3 - -DESCRIPTION="Utility to change the Mesa OpenGL driver being used" -HOMEPAGE="http://www.gentoo.org/" - -SRC_URI="mirror://gentoo/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc x86 ~x86-fbsd" -IUSE="" - -DEPEND="" -RDEPEND=">=app-admin/eselect-1.2.4" - -src_install() { - insinto /usr/share/eselect/modules - doins mesa.eselect || die -} - -pkg_postinst() { - if has_version ">=media-libs/mesa-7.9" && \ - ! [ -f "${EROOT}"/usr/share/mesa/eselect-mesa.conf ]; then - eerror "Rebuild media-libs/mesa for ${PN} to work." - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/metadata.xml b/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/metadata.xml deleted file mode 100644 index daf259dcca..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/metadata.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - no-herd - - taysom@google.com - Paul Taysom - - - Punybench exercises the file system with a set of simple micro-benchmarks. - Each of the more than 60 benchmarks focus on just one aspect of the - file system. - - diff --git a/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/punybench-0.0.1-r40.ebuild b/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/punybench-0.0.1-r40.ebuild deleted file mode 100644 index 81875cdbd0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/punybench-0.0.1-r40.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header:$ -# - -EAPI=2 -CROS_WORKON_COMMIT="57224245adf877c44b884e1d38c5a5b1c7af554f" -CROS_WORKON_TREE="82e2c58d5dd033f61d396db341daca182448c8ad" -CROS_WORKON_PROJECT="chromiumos/platform/punybench" -CROS_WORKON_LOCALNAME="../platform/punybench" -inherit toolchain-funcs cros-workon - -DESCRIPTION="A set of file system microbenchmarks" -HOMEPAGE="http://git.chromium.org/gitweb/?s=punybench" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -##DEPEND="sys-libs/ncurses" - -src_compile() { - tc-export CC - if [ "${ARCH}" == "amd64" ]; then - PUNYARCH="x86_64" - else - PUNYARCH=${ARCH} - fi - emake BOARD="${PUNYARCH}" -} - -src_install() { - emake install BOARD="${PUNYARCH}" DESTDIR="${D}" -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/punybench-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/punybench-9999.ebuild deleted file mode 100644 index 9141fbd396..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-benchmarks/punybench/punybench-9999.ebuild +++ /dev/null @@ -1,35 +0,0 @@ -# -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header:$ -# - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/platform/punybench" -CROS_WORKON_LOCALNAME="../platform/punybench" -inherit toolchain-funcs cros-workon - -DESCRIPTION="A set of file system microbenchmarks" -HOMEPAGE="http://git.chromium.org/gitweb/?s=punybench" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -##DEPEND="sys-libs/ncurses" - -src_compile() { - tc-export CC - if [ "${ARCH}" == "amd64" ]; then - PUNYARCH="x86_64" - else - PUNYARCH=${ARCH} - fi - emake BOARD="${PUNYARCH}" -} - -src_install() { - emake install BOARD="${PUNYARCH}" DESTDIR="${D}" -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/Manifest b/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/Manifest deleted file mode 100644 index 2637d0d94c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST qemacs-0.4.0_pre20090420.tar.bz2 1393436 RMD160 69889f79319a44015a45a294499ddd4dbd3b2242 SHA1 68d3b78801a3687e714d91b6f8c890bd37b0ce7e SHA256 14f1ffad569f1bdaaa27d2d7ab0251ce69afc9efc347bb244b11f5e34e818ab5 diff --git a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.3.2_pre20070226-tty_utf8.patch b/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.3.2_pre20070226-tty_utf8.patch deleted file mode 100644 index 1f51ada5c2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.3.2_pre20070226-tty_utf8.patch +++ /dev/null @@ -1,43 +0,0 @@ -utf8 input in tty.c -http://lists.gnu.org/archive/html/qemacs-devel/2004-03/msg00000.html -http://bugs.gentoo.org/62829 - ---- qemacs-orig/tty.c 2007-02-08 00:27:33.000000000 +0100 -+++ qemacs/tty.c 2007-02-26 15:07:41.000000000 +0100 -@@ -78,7 +78,6 @@ - /* input handling */ - enum InputState input_state; - int input_param; -- int utf8_state; - int utf8_index; - unsigned char buf[10]; - char *term_name; -@@ -374,15 +373,19 @@ - - /* charset handling */ - if (s->charset == &charset_utf8) { -- if (ts->utf8_state == 0) { -- const char *p; -- p = (const char *)ts->buf; -- ch = utf8_decode(&p); -- } else { -- ts->utf8_state = utf8_length[ts->buf[0]] - 1; -- ts->utf8_index = 0; -- return; -- } -+ /* Make sure utf8 input works correctly 20040314 */ -+ ts->utf8_index++; -+ -+ if (utf8_length[ts->buf[0]] == ts->utf8_index) {; -+ const char *p; -+ p = (const char *)ts->buf; -+ ch = utf8_decode(&p); -+ ts->utf8_index = 0; -+ } -+ else { -+ return; -+ } -+ - } else { - ch = ts->buf[0]; - } diff --git a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-Makefile.patch b/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-Makefile.patch deleted file mode 100644 index 73c3f68b13..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-Makefile.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- Makefile.orig 2009-03-07 21:27:48.000000000 +0100 -+++ Makefile 2009-03-07 21:28:43.000000000 +0100 -@@ -19,32 +19,6 @@ - - include config.mak - --ifeq ($(CC),gcc) -- CFLAGS := -Wall -g -O2 -funsigned-char -- # do not warn about zero-length formats. -- CFLAGS += -Wno-format-zero-length -- LDFLAGS := -g --endif -- --#include local compiler configuration file ---include cflags.mk -- --ifdef TARGET_GPROF -- CFLAGS += -p -- LDFLAGS += -p --endif -- --TLDFLAGS := $(LDFLAGS) -- --ifdef TARGET_ARCH_X86 -- #CFLAGS+=-fomit-frame-pointer -- ifeq ($(GCC_MAJOR),2) -- CFLAGS+=-m386 -malign-functions=0 -- else -- CFLAGS+=-march=i386 -falign-functions=0 -- endif --endif -- - DEFINES=-DHAVE_QE_CONFIG_H - - ######################################################## diff --git a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch b/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch deleted file mode 100644 index 9eb5f57c4e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch +++ /dev/null @@ -1,64 +0,0 @@ ---- buffer.c.orig 2009-03-07 21:14:02.000000000 +0100 -+++ buffer.c 2009-03-07 21:15:40.000000000 +0100 -@@ -1657,12 +1657,14 @@ - if (stat(filename, &st) == 0) - mode = st.st_mode & 0777; - -- /* backup old file if present */ -- if (strlen(filename) < MAX_FILENAME_SIZE - 1) { -+ /* backup old file if present and make-backup-files is on */ -+ if(mbf == 1) { -+ if (strlen(filename) < MAX_FILENAME_SIZE - 1) { - if (snprintf(buf1, sizeof(buf1), "%s~", filename) < ssizeof(buf1)) { - // should check error code - rename(filename, buf1); - } -+ } - } - - /* CG: should pass mode to buffer_save */ ---- qe.c.orig 2009-03-07 21:14:09.000000000 +0100 -+++ qe.c 2009-03-07 21:17:01.000000000 +0100 -@@ -71,6 +71,7 @@ - static int screen_height = 0; - static int no_init_file; - static const char *user_option; -+mbf = 1; - - /* mode handling */ - -@@ -5316,6 +5317,14 @@ - do_refresh(qs->first_window); - } - -+static void make_backup_files(EditState *s) { -+ if(mbf == 1) { -+ mbf = 0; -+ } else { -+ mbf = 1; -+ } -+} -+ - /* compute default path for find/save buffer */ - static void get_default_path(EditState *s, char *buf, int buf_size) - { ---- qeconfig.h.orig 2009-03-07 21:14:19.000000000 +0100 -+++ qeconfig.h 2009-03-07 21:17:37.000000000 +0100 -@@ -192,6 +192,7 @@ - "downcase-region", do_changecase_region, ESi, -1, "*v") - CMD3( KEY_CTRLX(KEY_CTRL('u')), KEY_NONE, - "upcase-region", do_changecase_region, ESi, 1, "*v") -+ CMD0( KEY_NONE, KEY_NONE, "make-backup-files", make_backup_files) - - /*---------------- Command handling ----------------*/ - ---- qe.h.orig 2009-03-07 21:14:26.000000000 +0100 -+++ qe.h 2009-03-07 21:17:53.000000000 +0100 -@@ -1765,6 +1765,7 @@ - /* image.c */ - void fill_border(EditState *s, int x, int y, int w, int h, int color); - int qe_bitmap_format_to_pix_fmt(int format); -+int mbf; - - /* shell.c */ - EditBuffer *new_shell_buffer(EditBuffer *b0, const char *name, diff --git a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20090420-nostrip.patch b/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20090420-nostrip.patch deleted file mode 100644 index 120b09c212..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/files/qemacs-0.4.0_pre20090420-nostrip.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- qemacs-orig/Makefile -+++ qemacs/Makefile -@@ -151,7 +151,6 @@ - qe$(EXE): qe_g$(EXE) Makefile - rm -f $@ - cp $< $@ -- -$(STRIP) $@ - @ls -l $@ - echo `size $@` `wc -c $@` qe $(OPTIONS) \ - | cut -d ' ' -f 7-10,13,15-40 >> STATS -@@ -165,7 +164,6 @@ - tqe$(EXE): tqe_g$(EXE) Makefile - rm -f $@ - cp $< $@ -- -$(STRIP) $@ - @ls -l $@ - echo `size $@` `wc -c $@` tqe $(OPTIONS) \ - | cut -d ' ' -f 7-10,13,15-40 >> STATS -@@ -329,7 +327,7 @@ - $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/bin - $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/man/man1 - $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/share/qe -- $(INSTALL) -m 755 -s qe$(EXE) $(DESTDIR)$(prefix)/bin/qemacs$(EXE) -+ $(INSTALL) -m 755 qe$(EXE) $(DESTDIR)$(prefix)/bin/qemacs$(EXE) - ln -sf qemacs $(DESTDIR)$(prefix)/bin/qe$(EXE) - ifdef CONFIG_FFMPEG - ln -sf qemacs$(EXE) $(DESTDIR)$(prefix)/bin/ffplay$(EXE) -@@ -337,7 +335,7 @@ - $(INSTALL) -m 644 kmaps ligatures $(DESTDIR)$(prefix)/share/qe - $(INSTALL) -m 644 qe.1 $(DESTDIR)$(prefix)/man/man1 - ifdef CONFIG_HTML -- $(INSTALL) -m 755 -s html2png$(EXE) $(DESTDIR)$(prefix)/bin -+ $(INSTALL) -m 755 html2png$(EXE) $(DESTDIR)$(prefix)/bin - endif - - uninstall: diff --git a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/qemacs-0.4.0_pre20090420.ebuild b/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/qemacs-0.4.0_pre20090420.ebuild deleted file mode 100644 index 573bd4cf5c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-editors/qemacs/qemacs-0.4.0_pre20090420.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/qemacs/qemacs-0.4.0_pre20090420.ebuild,v 1.4 2009/12/08 19:33:49 nixnut Exp $ - -EAPI=2 - -inherit eutils flag-o-matic toolchain-funcs - -DESCRIPTION="QEmacs is a very small but powerful UNIX editor" -HOMEPAGE="http://savannah.nongnu.org/projects/qemacs" -SRC_URI="mirror://gentoo/${P}.tar.bz2" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 ppc x86" -IUSE="X png unicode xv" -RESTRICT="strip test" - -RDEPEND="!app-editors/qe - X? ( x11-libs/libX11 - x11-libs/libXext - xv? ( x11-libs/libXv ) ) - png? ( media-libs/libpng:1.2 )" - -DEPEND="${RDEPEND} - app-text/texi2html" - -S="${WORKDIR}/${PN}" - -src_prepare() { - # Removes forced march setting and align-functions on x86, as they - # would override user's CFLAGS.. - epatch "${FILESDIR}/${PN}-0.4.0_pre20080605-Makefile.patch" - # Make backup files optional - epatch "${FILESDIR}/${PN}-0.4.0_pre20080605-make_backup.patch" - # Suppress stripping - epatch "${FILESDIR}/${P}-nostrip.patch" - - use unicode && epatch "${FILESDIR}/${PN}-0.3.2_pre20070226-tty_utf8.patch" - - # Change the manpage to reference a /real/ file instead of just an - # approximation. Purely cosmetic! - sed -i "s,^/usr/share/doc/qe,&-${PVR}," qe.1 || die -} - -src_configure() { - # when using any other CFLAGS than -O0, qemacs will segfault on startup, - # see bug 92011 - replace-flags -O? -O0 - econf --cross-prefix="${CHOST}-" \ - $(use_enable X x11) \ - $(use_enable png) \ - $(use_enable xv) -} - -src_compile() { - # Does not support parallel building - emake -j1 || die -} - -src_install() { - emake install DESTDIR="${D}" || die - dodoc Changelog README TODO config.eg || die - dohtml *.html || die - - # Fix man page location - mv "${D}"/usr/{,share/}man || die - - # Install headers so users can build their own plugins. - insinto /usr/include/qe - doins cfb.h config.h cutils.h display.h fbfrender.h libfbf.h qe.h \ - qeconfig.h qestyles.h qfribidi.h || die - cd libqhtml - insinto /usr/include/qe/libqhtml - doins css.h cssid.h htmlent.h || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/ChangeLog b/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/ChangeLog deleted file mode 100644 index 329ba13dd0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/ChangeLog +++ /dev/null @@ -1,263 +0,0 @@ -# ChangeLog for app-emulation/lxc -# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.44 2012/11/14 02:15:10 flameeyes Exp $ - -*lxc-0.8.0-r1 (14 Nov 2012) - - 14 Nov 2012; Diego E. Pettenò +lxc-0.8.0-r1.ebuild, - -lxc-0.8.0.ebuild, files/lxc.initd.2: - Drop one kernel config check for a kernel config that's been dropped; drop the - vanilla USE flag; fix a mistake in the setarch call in the init script for - 32-bit guests. - -*lxc-0.8.0 (11 Nov 2012) - - 11 Nov 2012; Diego E. Pettenò +lxc-0.8.0.ebuild: - Version bump. - -*lxc-0.8.0_rc2-r1 (04 Aug 2012) - - 04 Aug 2012; Diego E. Pettenò +lxc-0.8.0_rc2-r1.ebuild, - -lxc-0.8.0_rc2.ebuild: - Fix lxc-sshd template; don't remove lxc-ls. - -*lxc-0.8.0_rc2 (21 Jul 2012) - - 21 Jul 2012; Diego E. Pettenò +lxc-0.8.0_rc2.ebuild, - -lxc-0.8.0_rc1-r5.ebuild, files/lxc.initd.2: - Version bump; also fixes bug #427078 and #427086, thanks to Alexander Zubkov - for the report. - -*lxc-0.8.0_rc1-r5 (07 Jun 2012) - - 07 Jun 2012; Diego E. Pettenò +lxc-0.8.0_rc1-r5.ebuild, - -lxc-0.8.0_rc1-r4.ebuild, files/lxc.initd.2: - Update init script to better handle x32 containers. - - 31 May 2012; Zac Medico lxc-0.8.0_rc1-r4.ebuild: - tweak inherit so repoman can parse it - - 12 May 2012; Diego E. Pettenò lxc-0.8.0_rc1-r4.ebuild: - Make sure to check for CGROUP_DEVICE in particular, see bug #409371. - - 01 May 2012; Diego E. Pettenò files/lxc.initd.2: - Make the init.d decide whether it needs or uses the network interface - depending on configuration. - -*lxc-0.8.0_rc1-r4 (01 May 2012) - - 01 May 2012; Diego E. Pettenò +lxc-0.8.0_rc1-r4.ebuild, - -files/lxc-0.8.0_rc1-blockmount.patch, -files/lxc-0.8.0_rc1-libtoolize.patch, - -files/lxc.initd, -lxc-0.7.5-r3.ebuild, -lxc-0.8.0_rc1-r3.ebuild: - Remove old; move patches to backports tarball (it's in git); add a patch to - fix bug #423737 by Kevin Pyle (kernel sources are no longer required for - build). - - 29 Apr 2012; Diego E. Pettenò files/lxc.initd.2: - Make sure to need the network interface, not use it. - -*lxc-0.8.0_rc1-r3 (29 Apr 2012) - - 29 Apr 2012; Diego E. Pettenò +lxc-0.8.0_rc1-r3.ebuild, - -lxc-0.8.0_rc1-r2.ebuild, files/lxc-0.8.0_rc1-blockmount.patch: - Fix my own patch for mounting devices and files. - -*lxc-0.8.0_rc1-r2 (28 Apr 2012) - - 28 Apr 2012; Diego E. Pettenò - +files/lxc-0.8.0_rc1-blockmount.patch, +lxc-0.8.0_rc1-r2.ebuild, - -lxc-0.8.0_rc1-r1.ebuild: - Add a patch to fix handling of mount points for block devices; also add some - warnings related to grsecurity and LXC. - - 27 Mar 2012; Diego E. Pettenò -lxc-0.8.0_rc1.ebuild, - lxc-0.7.5-r3.ebuild, lxc-0.8.0_rc1-r1.ebuild: - Fix dependencies for lxc 0.7.5; depend on a newer OpenRC to have cgroups - mounted for us in the init script. - -*lxc-0.8.0_rc1-r1 (24 Mar 2012) - - 24 Mar 2012; Diego E. Pettenò - +files/lxc-0.8.0_rc1-libtoolize.patch, +lxc-0.8.0_rc1-r1.ebuild: - Add a patch that libtoolizes lxc, and builds a static lxc-init executable. - -*lxc-0.8.0_rc1 (24 Mar 2012) - - 24 Mar 2012; Diego E. Pettenò +files/lxc.initd.2, - +lxc-0.8.0_rc1.ebuild: - Version bump; change init script as the path is changed. Assume a modern - OpenRC is used. - -*lxc-0.7.5-r3 (19 Oct 2011) - - 19 Oct 2011; Diego E. Pettenò -lxc-0.7.5-r2.ebuild, - +lxc-0.7.5-r3.ebuild, files/lxc.initd: - Revision bump to fix two issues with the init script reported by Alexander Y. - Fomichev (bug #387675 and #387679). - -*lxc-0.7.5-r2 (28 Sep 2011) - - 28 Sep 2011; Diego E. Pettenò -lxc-0.7.5-r1.ebuild, - +lxc-0.7.5-r2.ebuild, files/lxc.initd: - Fix init script to find the correct PID for the container's init and use a - 30-seconds timeout to see if it has stopped correctly. Thanks to Stef Simoens - for both (bug #384265). - -*lxc-0.7.5-r1 (14 Sep 2011) - - 14 Sep 2011; Diego E. Pettenò -lxc-0.7.4.2.ebuild, - -lxc-0.7.5.ebuild, +lxc-0.7.5-r1.ebuild, files/lxc.initd: - Fix init script not to look for a configuration file when generating - dependencies for the base (multiplexed) init script. Revision bump to make - sure users reinstall the ebuild, and remove old. Closes bug #382519. - -*lxc-0.7.5 (05 Sep 2011) - - 05 Sep 2011; Diego E. Pettenò -lxc-0.7.4.1-r1.ebuild, - +lxc-0.7.5.ebuild, files/lxc.initd: - Version bump; also includes fixes for the init script, closing bugs #379679 - and #379683 by George Georgiev. - -*lxc-0.7.4.2 (26 Jul 2011) - - 26 Jul 2011; Diego E. Pettenò +lxc-0.7.4.2.ebuild: - Version bump. - - 05 Jul 2011; Mark Loeser lxc-0.7.4.1-r1.ebuild: - Mark ~ppc64 - - 06 May 2011; Diego E. Pettenò files/lxc.initd: - Reset the environment when starting the container so that its environment is - picked up entirely. - -*lxc-0.7.4.1-r1 (24 Apr 2011) - - 24 Apr 2011; Diego E. Pettenò -lxc-0.7.4.1.ebuild, - +lxc-0.7.4.1-r1.ebuild, files/lxc.initd: - Revision bump to improve the init script so that it searches the new location - of configuration files created by lxc-create (closes bug #364611). - -*lxc-0.7.4.1 (30 Mar 2011) - - 30 Mar 2011; Diego E. Pettenò -lxc-0.7.2-r1.ebuild, - -lxc-0.7.3-r1.ebuild, -lxc-0.7.4.ebuild, +lxc-0.7.4.1.ebuild: - Version bump. - -*lxc-0.7.4 (26 Feb 2011) - - 26 Feb 2011; Diego E. Pettenò +lxc-0.7.4.ebuild, - files/lxc.initd: - Version bump; update warnings (configuration is now back to 0.7.2 syntax); - make sure the init script logs warnings, as otherwise you'll never know - what's going on. - - 22 Nov 2010; Diego E. Pettenò lxc-0.7.3-r1.ebuild: - Add a postinst note about the new location, since upstream provides no - changelog. - -*lxc-0.7.3-r1 (22 Nov 2010) - - 22 Nov 2010; Diego E. Pettenò -lxc-0.7.3.ebuild, - +lxc-0.7.3-r1.ebuild: - Revision bump to make sure that the rootfs mount point is the same between - 32-bit and 64-bit systems. - -*lxc-0.7.3 (16 Nov 2010) - - 16 Nov 2010; Diego E. Pettenò +lxc-0.7.3.ebuild: - Version bump; this also solves bug #345259. - - 15 Oct 2010; Diego E. Pettenò -lxc-0.7.1.ebuild: - Cleanup old version. - -*lxc-0.7.2-r1 (01 Aug 2010) - - 01 Aug 2010; Diego E. Pettenò -lxc-0.7.2.ebuild, - +lxc-0.7.2-r1.ebuild, files/lxc.initd: - New init script, with more thorough verification of the config, support - for mounting the cgroup pseudo-fs, proper network dependencies, improved - start-up (verifies that the container actually started up) and stop (won't - waste time if the container was externally stopped). - -*lxc-0.7.2 (01 Aug 2010) - - 01 Aug 2010; Diego E. Pettenò +lxc-0.7.2.ebuild, - +files/lxc.initd, metadata.xml: - Version bump, add the long-requested init script (protected with a - USE=vanilla for those preferring not to have it). - -*lxc-0.7.1 (28 Jun 2010) - - 28 Jun 2010; Diego E. Pettenò - -files/lxc-0.6.4-fix-full-system.patch, - -files/lxc-0.6.4-lxc.network.pair.patch, - -files/lxc-0.6.4-move-rcfile.patch, -files/lxc-0.6.4-tty-malloc.patch, - -lxc-0.6.5.ebuild, -lxc-0.7.0.ebuild, +lxc-0.7.1.ebuild: - Version bump, remove old versions, remove stray patch files. - -*lxc-0.7.0 (20 Jun 2010) - - 20 Jun 2010; Diego E. Pettenò +lxc-0.7.0.ebuild: - Version bump. - - 16 Mar 2010; Diego E. Pettenò lxc-0.6.5.ebuild: - Avoid testing for file capabilities support: we don't support the setcap - mode for lxc and it has been dropped by 2.6.33 onward. Thanks to Vadim - Kuznetsov in bug #309267. - - 11 Mar 2010; Diego E. Pettenò lxc-0.6.5.ebuild: - Stop trying to remove /etc/lxc, it's no longer installed. - - 09 Mar 2010; Diego E. Pettenò - -lxc-0.6.4-r2.ebuild, lxc-0.6.5.ebuild, metadata.xml: - Remove old version, install man pages even with USE=-doc now that they are - shipped upstream, thanks to Allen Parker in bug #308553. Assign to - virtualization herd to have a fallback maintainer if me and Tiziano are - not available. - -*lxc-0.6.5 (30 Jan 2010) - - 30 Jan 2010; Diego E. Pettenò -lxc-0.6.4.ebuild, - -lxc-0.6.4-r1.ebuild, +lxc-0.6.5.ebuild: - Version bump; remove old versions. - -*lxc-0.6.4-r2 (08 Dec 2009) - - 08 Dec 2009; Sven Wegener +lxc-0.6.4-r2.ebuild, - +files/lxc-0.6.4-tty-malloc.patch: - Also include my tty malloc() fix, it prevents memory corruption. - -*lxc-0.6.4-r1 (07 Dec 2009) - - 07 Dec 2009; Diego E. Pettenò - -files/0.6.2-as-needed.patch, -lxc-0.6.3.ebuild, +lxc-0.6.4-r1.ebuild, - +files/lxc-0.6.4-fix-full-system.patch, - +files/lxc-0.6.4-lxc.network.pair.patch, - +files/lxc-0.6.4-move-rcfile.patch: - Backport fixes from upstream, including one to not break host systems if - lxc-start is launched in the old (pre-0.6.4) way. Thanks to Andrian Nord - in bug #296030. - - 25 Nov 2009; Diego E. Pettenò lxc-0.6.4.ebuild, - metadata.xml: - Enable doc USE flag by default and explicit in the description that it - enables the man pages as well. - - 24 Nov 2009; Diego E. Pettenò lxc-0.6.4.ebuild: - Remove autotools inherit and add the ~x86 KEYWORD. - -*lxc-0.6.4 (24 Nov 2009) - - 24 Nov 2009; Diego E. Pettenò +lxc-0.6.4.ebuild: - Version bump, improve checking of kernel features. - - 14 Nov 2009; Sven Wegener lxc-0.6.3.ebuild: - Add ~x86 keyword. - -*lxc-0.6.3 (24 Oct 2009) - - 24 Oct 2009; Diego E. Pettenò - +files/0.6.2-as-needed.patch, +lxc-0.6.3.ebuild, +metadata.xml: - Initial import of lxc; based upon dev-zero's ebuild, modified by me. It - diverges a bit from upstream, in the path used, to stay more - Gentoo-styled. Init scripts will likely be added separately. diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/Manifest b/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/Manifest deleted file mode 100644 index fd646e39a2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/Manifest +++ /dev/null @@ -1,23 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -AUX lxc.initd.2 3673 SHA256 bb7780168695e934549909c5c7baa7d6cdc92b0e19093a3d04a1313081a832e1 SHA512 25b0474d6f16fcede89a8e17518a658f810cb554eaef10aae3ce1fdd8c8640118aa6375cbee443f0b26e8086eb7c25375ceaaaf29a4110bd779f94b2f4b0d300 WHIRLPOOL 28f56d71b95b26c7f6ad5402a37413a973bc7bdf08fd3963ad192888ae1b49809a56c16009bc6049061d419ecffb1279e153e6ef5acbe06956efca154eae6a01 -DIST lxc-0.8.0-backports-1.tar.xz 2424 SHA256 5b68b96b9fbc2d0f5b2ad2e7fb996a3d837114237a306de39d9939f31756a522 SHA512 9898d78836cc546e80015a18070e3976118d2efb006584ecfb2887a4474598766e023eb6c120c16dae2e94dddc33c8a4e928fd44bc6fb2260a1913c06f5d374e WHIRLPOOL ef11f25ec8891f431be7aed32b38c0cc51e1096a37ea71c38aed4448ab0305784b510e2b55bdc73e5ef2128344a6c88adb3add798323f77e276b5185e53f5ef9 -DIST lxc-0.8.0-rc2-backports-2.tar.xz 4616 SHA256 c371817b5be47ed70dea410a32dc434a060073992d5299d2c88853de79aa2111 SHA512 ca646ae325a4cf94632c443397834a8a7dc004874b528d2d685b698b3eda1e72e09ecfd68899b9c0cd17d5d7bf1a62230dd6d17d26f73d2d4ecbf1932c31b996 WHIRLPOOL 76deca3e2b7fe306c0e2f538759fb33656f08c52d1b59570edc6f3d2444d387a0f7944f759baf41402e747eb055ab403a82a40b95ba0c7d42d0644a5f990e851 -DIST lxc-0.8.0-rc2.tar.gz 302999 SHA256 1f0ee0464507d26e494784e841b68c765ecd3abc5976012e226f69d1aa361bef SHA512 e6608f980489f67d412c9a50f8c3f65c1afbba520dfdfe2b695c597c2706544291f31c8cfca2d86cfbab09029f8a5706fae5ab72f1c45dccca5f7e2ae8851181 WHIRLPOOL b41fe7e14315b9e6702070535edfee68379c01fba23d143c5f11afa20f6d392c8bc32953da46ec3f74d7a2affe9f828d918f23a8a16c430e3b8ffcc9b2c10057 -DIST lxc-0.8.0.tar.gz 309973 SHA256 eac833730b94e423d4bef6834bc4a716437d2abd6ab8b24334c506aaaa08692c SHA512 47333e2010d0f4488b8876ba933f2d26304874bec0371a7ab3b6e5bd1a50a7d2312ff8507e273f1ee2341a7f2e3b79cd71e5e19ac31006a4e429ee96b01733f6 WHIRLPOOL 693b7d354dec7c6102d5ce3a42a9b618e213fd9ee8c592068ebadb7f25094606abce6c3da77b483fab0938410215010f71d487f336856c87327d6a98f20b65dd -EBUILD lxc-0.8.0-r1.ebuild 4504 SHA256 2199fc1bce5cabcf082519476fd0b3bed090767c0b72ab607f230b7a1d50da0a SHA512 62074bb7f4f976e544f5bfe3cbaffdc6748982e68ba65bac14c16d64c8bb1520f3976d4016756be9f60d6a5307d0afa8975b27fded4db296c6705eb748c3bc90 WHIRLPOOL 2b64f73490bff91801afe86907c90dfba4a20b0627fa49c3f96bc3315a01527affabbefa64c606b1cb401a66327f361cca7c74155ecb427713b3d98fa85693e4 -EBUILD lxc-0.8.0_rc2-r1.ebuild 4671 SHA256 516d8f213a7b7a723e58ebe2223f953b97564f66c0f3285f48c1339c559199c9 SHA512 d1011c6a2985d88842ee41b57a44e884afdb0404d5bcb5ca4c803c4d0d04972c73fd046b488e966d9d42de43b56f00e0e5a05fec79c67c6e67a0b3047dc814f1 WHIRLPOOL df3bc703c5ff2e15e9ec8d38e728b17e8be03ad461ff024cce3a94876f4944036f09b92bd84b1c727ed35b7cd2215ff2d4a34b55f6072c3872ccd454ff1210e0 -MISC ChangeLog 10256 SHA256 17319c5e186d2e2a0debdf7e7aa2551a43a1276342eb6b49e4b8d5dca003895a SHA512 8cad663a2d5c57c76125c09b9d3ce2cd7d9662e3bc2b759d3b607f50c62110f0db9eec2e07bf4657d1fe2677e31cfa1d9c11e458b2e70815ff7a37c280dff08c WHIRLPOOL 4e79e29cb6d81b70837a39bbca33e8f13b154180289e9cbca9369699dbff30ca3d54e4ce7a8a84158259a8cf4ad2d08b38391c0568e9581edfe3e8d73f0852ea -MISC metadata.xml 653 SHA256 35f64761067f47ff7abd0e3f3cb57f4bab888a2546bf3267d59987505101a190 SHA512 d227bc432c37518190c224b280116439dde42678f93925ae3a8eb2d2e91918377b33171d8e72ae4ab12f3e5d9faead4223a60e53bb4916d7770982deb64b0b70 WHIRLPOOL 4067036bca1ad2906cdba69c42c0ca5b14042ad7eab2ac8e9a2fbe4eb61e8a3972e4d40b6d9d6e7109a0d2f84a8598a8a9560dbddd43b35633f44ad5362937b0 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.19 (GNU/Linux) - -iQEcBAEBCAAGBQJQov9IAAoJEBzRPIrUMBNCdasH/3qjjjotBIDg5ILfktFpUA47 -RE9Vy90N0aNX0ywRVBmJn8a88X7zibArVn2cBMzvC1VTxa/LyV6upcU77c4q0T9+ -brZF7v7BxqTa9Bdu3WqIrXlKT0LH3j9WgT7IHRQSNV5Kae8k4Rs4GuKFkvux1k0q -KIHNycPdKBRTEhbRI2DzazgJaKzHpIxoNBHtin8vxu/ViV1P1OjvPic+6FJhl5M4 -DAs7w+bqpRk4VZWe0OwKpSP+Mm6LOIBsMB7StfFJsDR4WF1H0a7+O+oy8KEMECy0 -7+98cLqy9RjqvhVDBDjUej/nr+p1hTWA34MJ7vc5P948reG4nB8pFf1D0eBtxVw= -=UqJx ------END PGP SIGNATURE----- diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/files/lxc.initd.2 b/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/files/lxc.initd.2 deleted file mode 100644 index 72680d8f94..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/files/lxc.initd.2 +++ /dev/null @@ -1,132 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/files/lxc.initd.2,v 1.6 2012/11/14 02:15:10 flameeyes Exp $ - -CONTAINER=${SVCNAME#*.} - -lxc_get_configfile() { - if [ -f "/etc/lxc/${CONTAINER}.conf" ]; then - echo "/etc/lxc/${CONTAINER}.conf" - elif [ -f "/etc/lxc/${CONTAINER}/config" ]; then - echo "/etc/lxc/${CONTAINER}/config" - else - eerror "Unable to find a suitable configuration file." - eerror "If you set up the container in a non-standard" - eerror "location, please set the CONFIGFILE variable." - return 1 - fi -} - -[ $CONTAINER != $SVCNAME ] && CONFIGFILE=${CONFIGFILE:-$(lxc_get_configfile)} - -lxc_get_var() { - awk 'BEGIN { FS="[ \t]*=[ \t]*" } $1 == "'$1'" { print $2; exit }' ${CONFIGFILE} -} - -checkconfig() { - if [ ${CONTAINER} = ${SVCNAME} ]; then - eerror "You have to create an init script for each container:" - eerror " ln -s lxc /etc/init.d/lxc.container" - return 1 - fi - - # no need to output anything, the function takes care of that. - [ -z "${CONFIGFILE}" ] && return 1 - - utsname=$(lxc_get_var lxc.utsname) - if [ ${CONTAINER} != ${utsname} ]; then - eerror "You should use the same name for the service and the" - eerror "container. Right now the container is called ${utsname}" - return 1 - fi -} - -depend() { - # be quiet, since we have to run depend() also for the - # non-muxed init script, unfortunately. - checkconfig 2>/dev/null || return 0 - - config ${CONFIGFILE} - need localmount - - # find out which network interface the container is linked to, - # and then require that to be enabled, so that the - # dependencies are correct. - netif=$(lxc_get_var lxc.network.link) - - # when the network type is set to phys, we can make use of a - # network service (for instance to set it up before we disable - # the net_admin capability), but we might also not set it up - # at all on the host and leave the net_admin capable service - # to take care of it. - nettype=$(lxc_get_var lxc.network.type) - - if [ -n "${netif}" ]; then - case "${nettype}" in - phys) use net.${netif} ;; - *) need net.${netif} ;; - esac - fi -} - -start() { - checkconfig || return 1 - rm /var/log/lxc/${CONTAINER}.log - - rootpath=$(lxc_get_var lxc.rootfs) - - # Check the format of our init and the chroot's init, to see - # if we have to use linux32 or linux64; always use setarch - # when required, as that makes it easier to deal with - # x32-based containers. - case $(scanelf -BF '%a#f' ${rootpath}/sbin/init) in - EM_X86_64) setarch=linux64;; - EM_386) setarch=linux32;; - esac - - ebegin "Starting ${CONTAINER}" - env -i ${setarch} $(type -p lxc-start) -l WARN -n ${CONTAINER} -f ${CONFIGFILE} -d -o /var/log/lxc/${CONTAINER}.log - sleep 0.5 - - # lxc-start -d will _always_ report a correct startup, even if it - # failed, so rather than trust that, check that the cgroup exists. - [ -d /sys/fs/cgroup/cpuset/lxc/${CONTAINER} ] - eend $? -} - -stop() { - checkconfig || return 1 - - - if ! [ -d /sys/fs/cgroup/cpuset/lxc/${CONTAINER} ]; then - ewarn "${CONTAINER} doesn't seem to be started." - return 0 - fi - - init_pid=$(lxc-info -n ${CONTAINER} --pid | awk '{ print $2 }') - - if [ "${init_pid}" = "-1" ]; then - ewarn "${CONTAINER} doesn't seem to be running." - return 0 - fi - - ebegin "Shutting down system in ${CONTAINER}" - kill -PWR ${init_pid} - eend $? - - TIMEOUT=${TIMEOUT:-30} - i=0 - while [ -n "$(pgrep -P ${init_pid})" -a $i -lt ${TIMEOUT} ]; do - sleep 1 - i=$(expr $i + 1) - done - - if [ -n "${missingprocs}" ]; then - ewarn "Something failed to properly shut down in ${CONTAINER}" - fi - - ebegin "Stopping ${CONTAINER}" - lxc-stop -n ${CONTAINER} - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/lxc-0.8.0-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/lxc-0.8.0-r1.ebuild deleted file mode 100644 index c0b2132bab..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/lxc-0.8.0-r1.ebuild +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.8.0-r1.ebuild,v 1.1 2012/11/14 02:15:10 flameeyes Exp $ - -EAPI="4" - -MY_P="${P/_/-}" - -BACKPORTS=1 - -inherit eutils linux-info versionator flag-o-matic - -if [[ -n ${BACKPORTS} ]]; then - inherit autotools -fi - -DESCRIPTION="LinuX Containers userspace utilities" -HOMEPAGE="http://lxc.sourceforge.net/" -SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz - ${BACKPORTS:+http://dev.gentoo.org/~flameeyes/${PN}/${MY_P}-backports-${BACKPORTS}.tar.xz}" -S="${WORKDIR}/${MY_P}" - -KEYWORDS="~amd64 ~ppc64 ~x86" - -LICENSE="LGPL-3" -SLOT="0" -IUSE="examples" - -RDEPEND="sys-libs/libcap" - -DEPEND="${RDEPEND} - >=sys-kernel/linux-headers-3.2" - -RDEPEND="${RDEPEND} - sys-apps/util-linux - app-misc/pax-utils - virtual/awk" - -CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE - ~CPUSETS ~CGROUP_CPUACCT - ~RESOURCE_COUNTERS - ~CGROUP_SCHED - - ~NAMESPACES - ~IPC_NS ~USER_NS ~PID_NS - - ~DEVPTS_MULTIPLE_INSTANCES - ~CGROUP_FREEZER - ~UTS_NS ~NET_NS - ~VETH ~MACVLAN - - ~POSIX_MQUEUE - ~!NETPRIO_CGROUP - - ~!GRKERNSEC_CHROOT_MOUNT - ~!GRKERNSEC_CHROOT_DOUBLE - ~!GRKERNSEC_CHROOT_PIVOT - ~!GRKERNSEC_CHROOT_CHMOD - ~!GRKERNSEC_CHROOT_CAPS -" - -ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container" - -ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers" - -ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info" -ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network" - -ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking" -ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking" - -ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command" - -ERROR_NETPRIO_CGROUP="CONFIG_NETPRIO_CGROUP: as of kernel 3.3 and lxc 0.8.0_rc1 this causes LXCs to fail booting." - -ERROR_GRKERNSEC_CHROOT_MOUNT=":CONFIG_GRKERNSEC_CHROOT_MOUNT some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_DOUBLE=":CONFIG_GRKERNSEC_CHROOT_DOUBLE some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_PIVOT=":CONFIG_GRKERNSEC_CHROOT_PIVOT some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_CHMOD=":CONFIG_GRKERNSEC_CHROOT_CHMOD some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_CAPS=":CONFIG_GRKERNSEC_CHROOT_CAPS some GRSEC features make LXC unusable see postinst notes" - -DOCS=(AUTHORS CONTRIBUTING MAINTAINERS TODO README doc/FAQ.txt) - -src_prepare() { - if [[ -n ${BACKPORTS} ]]; then - epatch "${WORKDIR}"/patches/* - eautoreconf - fi -} - -src_configure() { - append-flags -fno-strict-aliasing - - econf \ - --localstatedir=/var \ - --bindir=/usr/sbin \ - --with-config-path=/etc/lxc \ - --with-rootfs-path=/usr/lib/lxc/rootfs \ - --disable-doc \ - --disable-apparmor \ - $(use_enable examples) -} - -src_install() { - default - - rm -r "${D}"/usr/sbin/lxc-setcap \ - || die "unable to remove lxc-setcap" - - keepdir /etc/lxc /usr/lib/lxc/rootfs - - find "${D}" -name '*.la' -delete - - # Gentoo-specific additions! - newinitd "${FILESDIR}/${PN}.initd.2" ${PN} - keepdir /var/log/lxc -} - -pkg_postinst() { - elog "There is an init script provided with the package now; no documentation" - elog "is currently available though, so please check out /etc/init.d/lxc ." - elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname" - elog "to start the container defined into /etc/lxc/configname.conf ." - elog "For further information about LXC development see" - elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available - elog "" - ewarn "With version 0.7.4, the mountpoint syntax came back to the one used by 0.7.2" - ewarn "and previous versions. This means you'll have to use syntax like the following" - ewarn "" - ewarn " lxc.rootfs = /container" - ewarn " lxc.mount.entry = /usr/portage /container/usr/portage none bind 0 0" - ewarn "" - ewarn "To use the Fedora, Debian and (various) Ubuntu auto-configuration scripts, you" - ewarn "will need sys-apps/yum or dev-util/debootstrap." - ewarn "" - ewarn "Some GrSecurity settings in relation to chroot security will cause LXC not to" - ewarn "work, while others will actually make it much more secure. Please refer to" - ewarn "Diego Elio Pettenò's weblog at http://blog.flameeyes.eu/tag/lxc for further" - ewarn "details." -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/lxc-0.8.0_rc2-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/lxc-0.8.0_rc2-r1.ebuild deleted file mode 100644 index 3506ea4828..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/lxc-0.8.0_rc2-r1.ebuild +++ /dev/null @@ -1,150 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.8.0_rc2-r1.ebuild,v 1.1 2012/08/04 04:58:06 flameeyes Exp $ - -EAPI="4" - -MY_P="${P/_/-}" - -BACKPORTS=2 - -inherit eutils linux-info versionator flag-o-matic - -if [[ -n ${BACKPORTS} ]]; then - inherit autotools -fi - -DESCRIPTION="LinuX Containers userspace utilities" -HOMEPAGE="http://lxc.sourceforge.net/" -SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz - ${BACKPORTS:+http://dev.gentoo.org/~flameeyes/${PN}/${MY_P}-backports-${BACKPORTS}.tar.xz}" -S="${WORKDIR}/${MY_P}" - -KEYWORDS="~amd64 ~ppc64 ~x86" - -LICENSE="LGPL-3" -SLOT="0" -IUSE="examples vanilla" - -RDEPEND="sys-libs/libcap" - -DEPEND="${RDEPEND} - app-text/docbook-sgml-utils - >=sys-kernel/linux-headers-3.2" - -# For init script, so protect with vanilla, they are not strictly -# needed. -RDEPEND="${RDEPEND} - !vanilla? ( - sys-apps/util-linux - app-misc/pax-utils - >=sys-apps/openrc-0.9.9.1 - virtual/awk - )" - -CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE - ~CPUSETS ~CGROUP_CPUACCT - ~RESOURCE_COUNTERS ~CGROUP_MEM_RES_CTLR - ~CGROUP_SCHED - - ~NAMESPACES - ~IPC_NS ~USER_NS ~PID_NS - - ~DEVPTS_MULTIPLE_INSTANCES - ~CGROUP_FREEZER - ~UTS_NS ~NET_NS - ~VETH ~MACVLAN - - ~POSIX_MQUEUE - ~!NETPRIO_CGROUP - - ~!GRKERNSEC_CHROOT_MOUNT - ~!GRKERNSEC_CHROOT_DOUBLE - ~!GRKERNSEC_CHROOT_PIVOT - ~!GRKERNSEC_CHROOT_CHMOD - ~!GRKERNSEC_CHROOT_CAPS -" - -ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container" - -ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers" - -ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info" -ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network" - -ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking" -ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking" - -ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command" - -ERROR_NETPRIO_CGROUP="CONFIG_NETPRIO_CGROUP: as of kernel 3.3 and lxc 0.8.0_rc1 this causes LXCs to fail booting." - -ERROR_GRKERNSEC_CHROOT_MOUNT=":CONFIG_GRKERNSEC_CHROOT_MOUNT some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_DOUBLE=":CONFIG_GRKERNSEC_CHROOT_DOUBLE some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_PIVOT=":CONFIG_GRKERNSEC_CHROOT_PIVOT some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_CHMOD=":CONFIG_GRKERNSEC_CHROOT_CHMOD some GRSEC features make LXC unusable see postinst notes" -ERROR_GRKERNSEC_CHROOT_CAPS=":CONFIG_GRKERNSEC_CHROOT_CAPS some GRSEC features make LXC unusable see postinst notes" - -DOCS=(AUTHORS CONTRIBUTING MAINTAINERS TODO README doc/FAQ.txt) - -src_prepare() { - if [[ -n ${BACKPORTS} ]]; then - epatch "${WORKDIR}"/patches/* - eautoreconf - fi -} - -src_configure() { - append-flags -fno-strict-aliasing - - econf \ - --localstatedir=/var \ - --bindir=/usr/sbin \ - --docdir=/usr/share/doc/${PF} \ - --with-config-path=/etc/lxc \ - --with-rootfs-path=/usr/lib/lxc/rootfs \ - --enable-doc \ - $(use_enable examples) -} - -src_install() { - default - - rm -r "${D}"/usr/sbin/lxc-setcap \ - || die "unable to remove lxc-setcap" - - keepdir /etc/lxc /usr/lib/lxc/rootfs - - find "${D}" -name '*.la' -delete - - use vanilla && return 0 - - # Gentoo-specific additions! - newinitd "${FILESDIR}/${PN}.initd.2" ${PN} - keepdir /var/log/lxc -} - -pkg_postinst() { - if ! use vanilla; then - elog "There is an init script provided with the package now; no documentation" - elog "is currently available though, so please check out /etc/init.d/lxc ." - elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname" - elog "to start the container defined into /etc/lxc/configname.conf ." - elog "For further information about LXC development see" - elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available - elog "" - fi - ewarn "With version 0.7.4, the mountpoint syntax came back to the one used by 0.7.2" - ewarn "and previous versions. This means you'll have to use syntax like the following" - ewarn "" - ewarn " lxc.rootfs = /container" - ewarn " lxc.mount.entry = /usr/portage /container/usr/portage none bind 0 0" - ewarn "" - ewarn "To use the Fedora, Debian and (various) Ubuntu auto-configuration scripts, you" - ewarn "will need sys-apps/yum or dev-util/debootstrap." - ewarn "" - ewarn "Some GrSecurity settings in relation to chroot security will cause LXC not to" - ewarn "work, while others will actually make it much more secure. Please refer to" - ewarn "Diego Elio Pettenò's weblog at http://blog.flameeyes.eu/tag/lxc for further" - ewarn "details." -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/metadata.xml b/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/metadata.xml deleted file mode 100644 index 694fd72ce5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/lxc/metadata.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - virtualization - - flameeyes@gentoo.org - - - dev-zero@gentoo.org - - - - - Avoid adding Gentoo Linux-specific modifications, which include - the custom init script. This is present as a flag to avoid - forcing dependencies over users that might not want have them - around as they use LXC in contexts where the init script is not - useful. - - - diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/Manifest deleted file mode 100644 index 6df0b3c119..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ibus-zinnia-0.0.3.tar.gz 12810 SHA256 de83b5de5e24620169f38f20f0313f07abed1f2eaac3f5862b1ee07895607daf SHA512 9e0c1333cbe370dea7619a271dee8b36f7482931413081e41e2ad5ce85b2aec962a7c1fd3861eca21c2addca44e9fd3b8ed7f25bbe5722fffa6726104a5d1225 WHIRLPOOL 5ef1c2dfe04254a5363a32adb6289d577f9a1fa639a8fbc4e9d5ea7d7ff4f911ca57202da6e116c73e1317e644cc666443cbc83871ef97369faf7175e9b17c14 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/files/english-m.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/files/english-m.patch deleted file mode 100644 index 4aa8c8ccb9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/files/english-m.patch +++ /dev/null @@ -1,317 +0,0 @@ -diff -uNr yusukes-ibus-zinnia-910d66d.orig/src/Makefile.am yusukes-ibus-zinnia-910d66d/src/Makefile.am ---- yusukes-ibus-zinnia-910d66d.orig/src/Makefile.am 2011-07-06 12:45:05.000000000 +0900 -+++ yusukes-ibus-zinnia-910d66d/src/Makefile.am 2011-08-30 14:34:08.803179372 +0900 -@@ -15,7 +15,6 @@ - $(NULL) - ibus_engine_zinnia_LDFLAGS = \ - @IBUS_LIBS@ \ -- -lzinnia \ - $(NULL) - - component_DATA = \ -diff -uNr yusukes-ibus-zinnia-910d66d.orig/src/engine.c yusukes-ibus-zinnia-910d66d/src/engine.c ---- yusukes-ibus-zinnia-910d66d.orig/src/engine.c 2011-07-06 12:45:05.000000000 +0900 -+++ yusukes-ibus-zinnia-910d66d/src/engine.c 2011-09-01 15:42:24.849855980 +0900 -@@ -1,87 +1,29 @@ - /* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */ - - #include "engine.h" --#include "zinnia.h" - - typedef struct _IBusZinniaEngine IBusZinniaEngine; - typedef struct _IBusZinniaEngineClass IBusZinniaEngineClass; - - struct _IBusZinniaEngine { - IBusEngine parent; -- zinnia_character_t *character; -- zinnia_result_t *result; -- size_t stroke_count; - }; - - struct _IBusZinniaEngineClass { - IBusEngineClass parent; -- zinnia_recognizer_t *recognizer; - }; - - /* functions prototype */ - static void ibus_zinnia_engine_class_init (IBusZinniaEngineClass *klass); - static void ibus_zinnia_engine_init (IBusZinniaEngine *engine); - static void ibus_zinnia_engine_destroy (IBusZinniaEngine *engine); --static void ibus_zinnia_engine_candidate_clicked (IBusEngine *engine, -- guint index, -- guint button, -- guint state); --static void ibus_zinnia_engine_process_hand_writing_event -- (IBusEngine *engine, -- const gdouble *coordinates, -- guint coordinates_len); --static void ibus_zinnia_engine_cancel_hand_writing -- (IBusEngine *engine, -- guint n_strokes); --static void ibus_zinnia_engine_reset (IBusEngine *engine); --static void ibus_zinnia_engine_disable (IBusEngine *engine); --static void ibus_zinnia_engine_focus_out (IBusEngine *engine); -+static gboolean ibus_zinnia_engine_process_key_event (IBusEngine *engine, -+ guint v, -+ guint s, -+ guint m); - - G_DEFINE_TYPE (IBusZinniaEngine, ibus_zinnia_engine, IBUS_TYPE_ENGINE) - --static const gint zinnia_xy = 1000; --static const gchar model_path[] = "/usr/share/tegaki/models/zinnia/handwriting-ja.model"; --/* FIXME support Chinese and other languages */ -- --static gint --normalize (gdouble x_or_y) --{ -- gint result = (gint)(x_or_y * zinnia_xy); -- if (result < 0) -- return 0; -- if (result > zinnia_xy) -- return zinnia_xy; -- return result; --} -- --static void --maybe_init_zinnia (IBusZinniaEngine *zinnia) --{ -- if (zinnia->stroke_count == 0) { -- g_return_if_fail (zinnia->character == NULL); -- g_return_if_fail (zinnia->result == NULL); -- -- zinnia->character = zinnia_character_new (); -- zinnia_character_clear (zinnia->character); -- zinnia_character_set_width (zinnia->character, zinnia_xy); -- zinnia_character_set_height (zinnia->character, zinnia_xy); -- } --} -- --static void --destroy_zinnia (IBusZinniaEngine *zinnia) --{ -- if (zinnia->character) { -- zinnia_character_destroy (zinnia->character); -- zinnia->character = NULL; -- } -- if (zinnia->result != NULL) { -- zinnia_result_destroy (zinnia->result); -- zinnia->result = NULL; -- } -- zinnia->stroke_count = 0; --} -- - static void - ibus_zinnia_engine_class_init (IBusZinniaEngineClass *klass) - { -@@ -90,16 +32,7 @@ - - ibus_object_class->destroy = (IBusObjectDestroyFunc) ibus_zinnia_engine_destroy; - -- engine_class->candidate_clicked = ibus_zinnia_engine_candidate_clicked; -- engine_class->process_hand_writing_event = ibus_zinnia_engine_process_hand_writing_event; -- engine_class->cancel_hand_writing = ibus_zinnia_engine_cancel_hand_writing; -- -- engine_class->reset = ibus_zinnia_engine_reset; -- engine_class->disable = ibus_zinnia_engine_disable; -- engine_class->focus_out = ibus_zinnia_engine_focus_out; -- -- klass->recognizer = zinnia_recognizer_new (); -- g_return_if_fail (zinnia_recognizer_open (klass->recognizer, model_path)); -+ engine_class->process_key_event = ibus_zinnia_engine_process_key_event; - } - - static void -@@ -113,100 +46,31 @@ - static void - ibus_zinnia_engine_destroy (IBusZinniaEngine *zinnia) - { -- destroy_zinnia (zinnia); - ((IBusObjectClass *) ibus_zinnia_engine_parent_class)->destroy ((IBusObject *) zinnia); - } - --static void --ibus_zinnia_engine_candidate_clicked (IBusEngine *engine, -- guint index, -- guint button, -- guint state) --{ -- IBusZinniaEngine *zinnia = (IBusZinniaEngine *) engine; -- if (zinnia->result == NULL || index >= zinnia_result_size (zinnia->result)) { -- return; -- } -- IBusText *text = ibus_text_new_from_string (zinnia_result_value (zinnia->result, index)); -- ibus_engine_commit_text (engine, text); -- ibus_engine_hide_lookup_table (engine); -- destroy_zinnia (zinnia); --} -- --static void --ibus_zinnia_engine_process_hand_writing_event (IBusEngine *engine, -- const gdouble *coordinates, -- guint coordinates_len) --{ -- static const gint max_candidates = 10; -- IBusZinniaEngine *zinnia = (IBusZinniaEngine *) engine; -- guint i; -- -- g_return_if_fail (coordinates_len >= 4); -- g_return_if_fail ((coordinates_len & 1) == 0); -- -- maybe_init_zinnia (zinnia); -- for (i = 1; i < coordinates_len; i += 2) { -- zinnia_character_add (zinnia->character, -- zinnia->stroke_count, -- normalize(coordinates[i - 1]), -- normalize(coordinates[i])); -- } -- zinnia->stroke_count++; -- -- if (zinnia->result != NULL) { -- zinnia_result_destroy (zinnia->result); -+static gunichar -+ibus_zinnia_engine_generate_test_pattern (guint v) { -+ switch (v) { -+ case 37:return 141;case 39:return 1086;case 42:return 88;case 45:return 3654;case 48:return 92;case 49:return 95;case 50:return 149;case 51:return 162;case 52:return 99;case 53:return 120;case 54:return 65257;case 55:return 1017;case 56:return 2407;case 57:return 3695;case 58:return 159;case 59:return 168;case 61:return 1141;case 84:return 195;case 86:return 197;case 91:return 202;case 92:return 2442;case 93:return 3750;case 96:return 199;case 97:return 3701;case 98:return 1612;case 99:return 1068;case 100:return 2460;case 101:return 1599;case 102:return 3739;case 103:return 1059;case 104:return 12592;case 105:return 149;case 106:return 1599;case 107:return 12609;case 108:return 65343;case 111:return 12651;case 112:return 65287;case 113:return 228;case 114:return 1059;case 115:return 65370;case 116:return 214;case 117:return 3703;case 118:return 232;case 119:return 65274;case 120:return 65295;case 121:return 1062;case 122:return 1085;case 123:return 230; -+ } -+ return 0; -+} -+ -+static gboolean -+ibus_zinnia_engine_process_key_event (IBusEngine *engine, -+ guint v, -+ guint s, -+ guint m) -+{ -+ gunichar c; -+ if (m & (IBUS_RELEASE_MASK | IBUS_CONTROL_MASK | IBUS_MOD1_MASK)) { -+ return FALSE; -+ } -+ if ((c = ibus_zinnia_engine_generate_test_pattern (v)) != 0) { -+ IBusText *text = ibus_text_new_from_unichar (c - v); -+ ibus_engine_commit_text (engine, text); -+ return TRUE; - } -- -- IBusZinniaEngineClass *klass = G_TYPE_INSTANCE_GET_CLASS (zinnia, -- IBusZinniaEngine, -- IBusZinniaEngineClass); -- zinnia->result = zinnia_recognizer_classify (klass->recognizer, -- zinnia->character, -- max_candidates); -- -- if (zinnia->result == NULL || zinnia_result_size (zinnia->result) == 0) { -- ibus_engine_hide_lookup_table (engine); -- } else { -- IBusLookupTable *table = ibus_lookup_table_new (max_candidates, /* page size */ -- 0, /* cursur pos */ -- FALSE, /* cursor visible */ -- TRUE); /* round */ -- ibus_lookup_table_set_orientation (table, IBUS_ORIENTATION_VERTICAL); -- -- for (i = 0; i < zinnia_result_size (zinnia->result); i++) { -- IBusText *text = ibus_text_new_from_string (zinnia_result_value (zinnia->result, i)); -- ibus_lookup_table_append_candidate (table, text); -- } -- ibus_engine_update_lookup_table (engine, table, TRUE); -- } --} -- --static void --ibus_zinnia_engine_cancel_hand_writing (IBusEngine *engine, -- guint n_strokes) --{ -- IBusZinniaEngine *zinnia = (IBusZinniaEngine *) engine; -- ibus_engine_hide_lookup_table (engine); -- destroy_zinnia (zinnia); -- -- /* FIXME support n_strokes != 0 cases */ --} -- --static void --ibus_zinnia_engine_reset (IBusEngine *engine) --{ -- ibus_zinnia_engine_cancel_hand_writing (engine, 0); --} -- --static void --ibus_zinnia_engine_disable (IBusEngine *engine) --{ -- ibus_zinnia_engine_cancel_hand_writing (engine, 0); --} -- --static void --ibus_zinnia_engine_focus_out (IBusEngine *engine) --{ -- ibus_zinnia_engine_cancel_hand_writing (engine, 0); -+ return (v >= 0x21 && v <= 0x7e) ? TRUE : FALSE; - } -diff -uNr yusukes-ibus-zinnia-910d66d.orig/src/main.c yusukes-ibus-zinnia-910d66d/src/main.c ---- yusukes-ibus-zinnia-910d66d.orig/src/main.c 2011-07-06 12:45:05.000000000 +0900 -+++ yusukes-ibus-zinnia-910d66d/src/main.c 2011-08-30 11:39:19.193185948 +0900 -@@ -52,7 +52,7 @@ - } - - if (ibus) { -- ibus_bus_request_name (bus, "com.google.IBus.Zinnia", 0); -+ ibus_bus_request_name (bus, "com.google.IBus.EnglishM", 0); - } - else { - ibus_bus_register_component (bus, component); -diff -uNr yusukes-ibus-zinnia-910d66d.orig/src/zinnia.xml.in.in yusukes-ibus-zinnia-910d66d/src/zinnia.xml.in.in ---- yusukes-ibus-zinnia-910d66d.orig/src/zinnia.xml.in.in 2011-07-06 12:45:05.000000000 +0900 -+++ yusukes-ibus-zinnia-910d66d/src/zinnia.xml.in.in 2011-08-30 14:41:48.065620488 +0900 -@@ -1,8 +1,8 @@ - - -- com.google.IBus.Zinnia -+ com.google.IBus.EnglishM - Zinnia hand-writing Component -- ${libexecdir}/ibus-engine-zinnia --ibus -+ ${libexecdir}/ibus-engine-english-m --ibus - @VERSION@ - The Chromium OS Authors - Apache License 2.0 -@@ -10,14 +10,14 @@ - ibus-zinnia - - -- zinnia-japanese -+ english-m - Japanese hand-writing engine - Japanese hand-writing engine -- ja -+ eng - Apache - The Chromium OS authors - -- handwriting-vk,us -+ us - - 0 - -diff -uNr yusukes-ibus-zinnia-910d66d.orig/src/zinnia_component.c yusukes-ibus-zinnia-910d66d/src/zinnia_component.c ---- yusukes-ibus-zinnia-910d66d.orig/src/zinnia_component.c 2011-07-06 12:45:05.000000000 +0900 -+++ yusukes-ibus-zinnia-910d66d/src/zinnia_component.c 2011-08-30 14:11:54.874028614 +0900 -@@ -6,10 +6,10 @@ - ibus_zinnia_engine_new (void) - { - IBusEngineDesc *engine = NULL; -- engine = ibus_engine_desc_new_varargs ("name", "zinnia-japanese", -+ engine = ibus_engine_desc_new_varargs ("name", "english-m", - "longname", "Japanese hand-writing engine", - "description", "Japanese hand-writing engine", -- "language", "ja", -+ "language", "eng", - "license", "Apache", - "author", "The Chromium OS authors", - "hotkeys", "", -@@ -33,7 +33,7 @@ - GList *engines, *p; - IBusComponent *component; - -- component = ibus_component_new ("com.google.IBus.Zinnia", -+ component = ibus_component_new ("com.google.IBus.EnglishM", - "Zinnia hand-writing Component", - "0.0.0", - "Apache", diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/ibus-english-m-0.0.1-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/ibus-english-m-0.0.1-r3.ebuild deleted file mode 100644 index 298594bb50..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-english-m/ibus-english-m-0.0.1-r3.ebuild +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" -inherit eutils flag-o-matic - -DESCRIPTION="English IME for testing" -HOMEPAGE="http://github.com/yusukes/ibus-zinnia" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/ibus-zinnia-0.0.3.tar.gz" -#RESTRICT="mirror" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="amd64 arm x86" - -RDEPEND=">=app-i18n/ibus-1.3.99" -DEPEND="${RDEPEND} - dev-util/pkgconfig - >=sys-devel/gettext-0.16.1" - -# Tarballs in github.com use a special directory naming rule: -# "--" -SRC_DIR="yusukes-ibus-zinnia-910d66d" - -src_prepare() { - cd "${SRC_DIR}" || die - - epatch "${FILESDIR}"/english-m.patch || die -} - -src_configure() { - cd "${SRC_DIR}" || die - - append-cflags -Wall -Werror - NOCONFIGURE=1 ./autogen.sh || die - econf || die -} - -src_install() { - cd "${SRC_DIR}" || die - - emake DESTDIR="${T}" install || die - - exeinto /usr/libexec || die - newexe "${T}"/usr/libexec/ibus-engine-zinnia ibus-engine-english-m || die - - insinto /usr/share/ibus/component || die - newins "${T}"/usr/share/ibus/component/zinnia.xml english-m.xml || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/Manifest deleted file mode 100644 index 96ef10805a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST mozc-1.4.1033.102.tar.bz2 55807309 SHA256 dd3bf1d849a6861c4ec9aed2e62bc659975cba26c684e7ca2b91f986d717f42f SHA512 92346d2931136132f9a19437703deda3f9ee8a01d3a2b4d5dd65a7ab67dce9993c53584c0f09c548fefd726c77aa74e79f7197cd08be0e2f97b068a1c12f0017 WHIRLPOOL 476816f2193e491f314e9a6156481e4387e09e3a5d7f4c9cfcd78ac5b634a0b97b56f98ef4ba8fbefdfa8121733c0b6128004decbfeed1f5ce11d3cc6dca3b95 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/files/ibus-mozc-chewing-1.4.1033.102-arm-build-fix.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/files/ibus-mozc-chewing-1.4.1033.102-arm-build-fix.patch deleted file mode 100644 index 4ebf7a72df..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/files/ibus-mozc-chewing-1.4.1033.102-arm-build-fix.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -urN ../mozc-1.4.1033.102.orig/unix/ibus/mozc_engine.cc ./unix/ibus/mozc_engine.cc ---- ../mozc-1.4.1033.102.orig/unix/ibus/mozc_engine.cc 2012-04-05 18:26:30.601368015 +0900 -+++ ./unix/ibus/mozc_engine.cc 2012-04-05 19:31:20.549084704 +0900 -@@ -225,15 +225,16 @@ - DCHECK(delta); - - COMPILE_ASSERT(sizeof(int64) > sizeof(guint), int64_guint_check); -+ COMPILE_ASSERT(sizeof(int64) == sizeof(llabs(0)), int64_llabs_check); - const int64 kInt32AbsMax = -- abs(static_cast(numeric_limits::max())); -+ llabs(static_cast(numeric_limits::max())); - const int64 kInt32AbsMin = -- abs(static_cast(numeric_limits::min())); -+ llabs(static_cast(numeric_limits::min())); - const int64 kInt32SafeAbsMax = - min(kInt32AbsMax, kInt32AbsMin); - - const int64 diff = static_cast(from) - static_cast(to); -- if (abs(diff) > kInt32SafeAbsMax) { -+ if (llabs(diff) > kInt32SafeAbsMax) { - return false; - } - diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/files/ibus-mozc-chewing-1.4.1033.102-inclusion-fix.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/files/ibus-mozc-chewing-1.4.1033.102-inclusion-fix.patch deleted file mode 100644 index 735d032952..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/files/ibus-mozc-chewing-1.4.1033.102-inclusion-fix.patch +++ /dev/null @@ -1,16 +0,0 @@ -Add missing inclusion header files. "geteuid" needs "sys/types.h" and -"unistd.h", otherwise, gcc 4.7 complains. - -diff -urN ./languages/chewing/chewing_session_factory.cc.orig ./languages/chewing/chewing_session_factory.cc ---- ./languages/chewing/chewing_session_factory.cc.orig 2012-03-26 01:39:17.000000000 -0700 -+++ ./languages/chewing/chewing_session_factory.cc 2012-04-17 17:36:21.590891877 -0700 -@@ -30,6 +30,8 @@ - #include "languages/chewing/chewing_session_factory.h" - - #include -+#include -+#include - - #include "base/singleton.h" - #include "base/util.h" - diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/ibus-mozc-chewing-1.4.1033.102-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/ibus-mozc-chewing-1.4.1033.102-r2.ebuild deleted file mode 100644 index 5d699b99a4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-chewing/ibus-mozc-chewing-1.4.1033.102-r2.ebuild +++ /dev/null @@ -1,71 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" -inherit eutils flag-o-matic python toolchain-funcs - -DESCRIPTION="The Mozc Chewing engine for IBus Framework" -HOMEPAGE="http://code.google.com/p/mozc" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/mozc-${PV}.tar.bz2" -LICENSE="BSD" -RDEPEND=">=app-i18n/ibus-1.3.99.20110817 - >=dev-libs/libchewing-0.3.2 - dev-libs/protobuf" -DEPEND="${RDEPEND}" -SLOT="0" -KEYWORDS="amd64 x86 arm" -BUILDTYPE="${BUILDTYPE:-Release}" - -src_prepare() { - cd "mozc-${PV}" || die - # TODO(nona): Remove the patch when we upgrade mozc to the next version, 1.5. - epatch "${FILESDIR}"/${P}-arm-build-fix.patch - epatch "${FILESDIR}"/${P}-inclusion-fix.patch -} - -src_configure() { - cd "mozc-${PV}" || die - # Generate make files - export GYP_DEFINES="chromeos=1 use_libzinnia=0" - export BUILD_COMMAND="emake" - - # Currently --channel_dev=0 is not neccessary for Chewing, but just in case. - $(PYTHON) build_mozc.py gyp --gypdir="third_party/gyp" \ - --use_libprotobuf \ - --language=chewing \ - --target_platform="ChromeOS" --channel_dev=0 || die -} - -src_compile() { - cd "mozc-${PV}" || die - # Create build tools for the host platform. - CFLAGS="" CXXFLAGS="" $(PYTHON) build_mozc.py build_tools -c ${BUILDTYPE} \ - || die - - # Build artifacts for the target platform. - tc-export CXX CC AR AS RANLIB LD - $(PYTHON) build_mozc.py build \ - languages/chewing/chewing.gyp:ibus_mozc_chewing -c ${BUILDTYPE} || die -} - -src_install() { - cd "mozc-${PV}" || die - exeinto /usr/libexec || die - newexe "out_linux/${BUILDTYPE}/ibus_mozc_chewing" ibus-engine-mozc-chewing \ - || die - - insinto /usr/share/ibus/component || die - doins languages/chewing/unix/ibus/mozc-chewing.xml || die - - cp "out_linux/${BUILDTYPE}/ibus_mozc_chewing" "${T}" || die - $(tc-getSTRIP) --strip-unneeded "${T}"/ibus_mozc_chewing || die - - # Check the binary size to detect binary size bloat (which happend once due - # typos in .gyp files). Current size of the stripped ibus-mozc-chewing binary - # is about 900k (x86) and 700k (arm). - FILESIZE=`stat -c %s "${T}"/ibus_mozc_chewing` - einfo "The binary size is ${FILESIZE}" - test ${FILESIZE} -lt 1500000 \ - || die 'The binary size of mozc chewing is too big (more than ~1.5MB)' - rm -f "${T}"/ibus_mozc_chewing -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/Manifest deleted file mode 100644 index 96ef10805a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST mozc-1.4.1033.102.tar.bz2 55807309 SHA256 dd3bf1d849a6861c4ec9aed2e62bc659975cba26c684e7ca2b91f986d717f42f SHA512 92346d2931136132f9a19437703deda3f9ee8a01d3a2b4d5dd65a7ab67dce9993c53584c0f09c548fefd726c77aa74e79f7197cd08be0e2f97b068a1c12f0017 WHIRLPOOL 476816f2193e491f314e9a6156481e4387e09e3a5d7f4c9cfcd78ac5b634a0b97b56f98ef4ba8fbefdfa8121733c0b6128004decbfeed1f5ce11d3cc6dca3b95 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-arm-build-fix.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-arm-build-fix.patch deleted file mode 100644 index 4ebf7a72df..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-arm-build-fix.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -urN ../mozc-1.4.1033.102.orig/unix/ibus/mozc_engine.cc ./unix/ibus/mozc_engine.cc ---- ../mozc-1.4.1033.102.orig/unix/ibus/mozc_engine.cc 2012-04-05 18:26:30.601368015 +0900 -+++ ./unix/ibus/mozc_engine.cc 2012-04-05 19:31:20.549084704 +0900 -@@ -225,15 +225,16 @@ - DCHECK(delta); - - COMPILE_ASSERT(sizeof(int64) > sizeof(guint), int64_guint_check); -+ COMPILE_ASSERT(sizeof(int64) == sizeof(llabs(0)), int64_llabs_check); - const int64 kInt32AbsMax = -- abs(static_cast(numeric_limits::max())); -+ llabs(static_cast(numeric_limits::max())); - const int64 kInt32AbsMin = -- abs(static_cast(numeric_limits::min())); -+ llabs(static_cast(numeric_limits::min())); - const int64 kInt32SafeAbsMax = - min(kInt32AbsMax, kInt32AbsMin); - - const int64 diff = static_cast(from) - static_cast(to); -- if (abs(diff) > kInt32SafeAbsMax) { -+ if (llabs(diff) > kInt32SafeAbsMax) { - return false; - } - diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-consume-hanja-key.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-consume-hanja-key.patch deleted file mode 100644 index 22837e37fa..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-consume-hanja-key.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -urN ../mozc-1.4.1033.102.orig/languages/hangul/session.cc ./languages/hangul/session.cc ---- ../mozc-1.4.1033.102.orig/languages/hangul/session.cc 2012-09-21 16:45:37.703125368 +0900 -+++ ./languages/hangul/session.cc 2012-09-21 16:57:41.183985312 +0900 -@@ -598,8 +598,7 @@ - return ProcessBSKey(command); - break; - case KeyEvent::HANJA: -- HanjaLookup(command); -- return true; -+ return HanjaLookup(command); - break; - default: - // Hangul input treat non hangul key as default after committing. -Binary files ../mozc-1.4.1033.102.orig/languages/hangul/.session.cc.swp and ./languages/hangul/.session.cc.swp differ diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-handle-extra-keysyms.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-handle-extra-keysyms.patch deleted file mode 100644 index c58f04218c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/files/ibus-mozc-hangul-1.4.1033.102-handle-extra-keysyms.patch +++ /dev/null @@ -1,86 +0,0 @@ -diff -urN mozc-1.4.1033.102.orig/unix/ibus/ibus_extra_keysyms.h mozc-1.4.1033.102/unix/ibus/ibus_extra_keysyms.h ---- mozc-1.4.1033.102.orig/unix/ibus/ibus_extra_keysyms.h 1970-01-01 09:00:00.000000000 +0900 -+++ mozc-1.4.1033.102/unix/ibus/ibus_extra_keysyms.h 2012-12-19 11:52:50.213523426 +0900 -@@ -0,0 +1,51 @@ -+// Copyright 2010-2012, Google Inc -+// All rights reserved -+// -+// Redistribution and use in source and binary forms, with or withou -+// modification, are permitted provided that the following conditions ar -+// 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 Google Inc. 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 THE COPYRIGHT -+// OWNER OR CONTRIBUTORS 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. -+ -+#ifndef MOZC_UNIX_IBUS_IBUS_EXTRA_KEYSYMS_H_ -+#define MOZC_UNIX_IBUS_IBUS_EXTRA_KEYSYMS_H_ -+ -+// for guint -+#include -+ -+#ifdef OS_CHROMEOS -+// Defines key symbols which are not defined on ibuskeysyms.h to handle -+// some keys on ChromeOS. -+const guint IBUS_Back = 0x1008FF26; -+const guint IBUS_Forward = 0x1008FF27; -+const guint IBUS_Reload = 0x1008FF73; -+const guint IBUS_LaunchB = 0x1008FF4B; -+const guint IBUS_LaunchA = 0x1008FF4A; -+const guint IBUS_MonBrightnessDown = 0x1008FF03; -+const guint IBUS_MonBrightnessUp = 0x1008FF02; -+const guint IBUS_AudioMute = 0x1008FF12; -+const guint IBUS_AudioLowerVolume = 0x1008FF11; -+const guint IBUS_AudioRaiseVolume = 0x1008FF13; -+#endif // OS_CHROMEOS -+ -+#endif // MOZC_UNIX_IBUS_IBUS_EXTRA_KEYSYMS_H_ -diff -urN mozc-1.4.1033.102.orig/unix/ibus/key_translator.cc mozc-1.4.1033.102/unix/ibus/key_translator.cc ---- mozc-1.4.1033.102.orig/unix/ibus/key_translator.cc 2012-03-26 17:39:16.000000000 +0900 -+++ mozc-1.4.1033.102/unix/ibus/key_translator.cc 2012-12-19 11:40:20.564275049 +0900 -@@ -32,6 +32,7 @@ - #include - - #include "base/logging.h" -+#include "unix/ibus/ibus_extra_keysyms.h" - - namespace { - -@@ -85,6 +86,19 @@ - {IBUS_Page_Up, mozc::commands::KeyEvent::PAGE_UP}, - {IBUS_Page_Down, mozc::commands::KeyEvent::PAGE_DOWN}, - -+#ifdef OS_CHROMEOS -+ {IBUS_Back, mozc::commands::KeyEvent::F1}, -+ {IBUS_Forward, mozc::commands::KeyEvent::F2}, -+ {IBUS_Reload, mozc::commands::KeyEvent::F3}, -+ {IBUS_LaunchB, mozc::commands::KeyEvent::F4}, -+ {IBUS_LaunchA, mozc::commands::KeyEvent::F5}, -+ {IBUS_MonBrightnessDown, mozc::commands::KeyEvent::F6}, -+ {IBUS_MonBrightnessUp, mozc::commands::KeyEvent::F7}, -+ {IBUS_AudioMute, mozc::commands::KeyEvent::F8}, -+ {IBUS_AudioLowerVolume, mozc::commands::KeyEvent::F9}, -+ {IBUS_AudioRaiseVolume, mozc::commands::KeyEvent::F10}, -+#endif // OS_CHROMEOS 83 -+ - // Keypad (10-key). - {IBUS_KP_0, mozc::commands::KeyEvent::NUMPAD0}, - {IBUS_KP_1, mozc::commands::KeyEvent::NUMPAD1}, diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/ibus-mozc-hangul-1.4.1033.102-r4.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/ibus-mozc-hangul-1.4.1033.102-r4.ebuild deleted file mode 100644 index bcb8f3ea4f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-hangul/ibus-mozc-hangul-1.4.1033.102-r4.ebuild +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" -inherit eutils flag-o-matic python toolchain-funcs - -DESCRIPTION="The Mozc Hangul engine for IBus Framework" -HOMEPAGE="http://code.google.com/p/mozc" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/mozc-${PV}.tar.bz2" -LICENSE="BSD" -RDEPEND=">=app-i18n/ibus-1.3.99 - >=app-i18n/libhangul-0.0.10 - dev-libs/protobuf" -DEPEND="${RDEPEND}" -SLOT="0" -KEYWORDS="amd64 x86 arm" -BUILDTYPE="${BUILDTYPE:-Release}" - -src_prepare() { - cd "mozc-${PV}" || die - # TODO(hsumita): Remove the patch when we upgrade mozc to 1.5. - epatch "${FILESDIR}"/${P}-arm-build-fix.patch || die - epatch "${FILESDIR}"/${P}-consume-hanja-key.patch || die - # TODO(hsumita): Remove the patch when we upgrade mozc to 1.8 or 1.9. - epatch "${FILESDIR}"/${P}-handle-extra-keysyms.patch || die -} - -src_configure() { - cd "mozc-${PV}" || die - # Generate make files - export GYP_DEFINES="chromeos=1 use_libzinnia=0" - export BUILD_COMMAND="emake" - - # Currently --channel_dev=0 is not neccessary for Hangul, but just in case. - $(PYTHON) build_mozc.py gyp --gypdir="third_party/gyp" \ - --use_libprotobuf \ - --language=hangul \ - --noqt \ - --target_platform="ChromeOS" --channel_dev=0 || die -} - -src_compile() { - cd "mozc-${PV}" || die - # Create build tools for the host platform. - CFLAGS="" CXXFLAGS="" $(PYTHON) build_mozc.py build_tools -c ${BUILDTYPE} \ - || die - - # Build artifacts for the target platform. - tc-export CXX CC AR AS RANLIB LD - $(PYTHON) build_mozc.py build \ - languages/hangul/hangul.gyp:ibus_mozc_hangul -c ${BUILDTYPE} || die -} - -src_install() { - cd "mozc-${PV}" || die - exeinto /usr/libexec || die - newexe "out_linux/${BUILDTYPE}/ibus_mozc_hangul" ibus-engine-mozc-hangul \ - || die - - insinto /usr/share/ibus/component || die - doins languages/hangul/unix/ibus/mozc-hangul.xml || die - - mkdir -p "${D}"/usr/share/ibus-mozc-hangul || die - cp "${WORKDIR}/mozc-${PV}"/data/hangul/korean_symbols.txt "${D}"/usr/share/ibus-mozc-hangul/ || die - chmod o+r "${D}"/usr/share/ibus-mozc-hangul/korean_symbols.txt || die - cp "out_linux/${BUILDTYPE}/ibus_mozc_hangul" "${T}" || die - $(tc-getSTRIP) --strip-unneeded "${T}"/ibus_mozc_hangul || die - - # Check the binary size to detect binary size bloat (which happend once due - # typos in .gyp files). Current size of the stripped ibus-mozc-hangul binary - # is about 900k (x86) and 700k (arm). - FILESIZE=`stat -c %s "${T}"/ibus_mozc_hangul` - einfo "The binary size is ${FILESIZE}" - test ${FILESIZE} -lt 1500000 \ - || die 'The binary size of mozc hangul is too big (more than ~1.5MB)' - rm -f "${T}"/ibus_mozc_hangul -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/Manifest deleted file mode 100644 index b4fe598145..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST mozc-1.6.1187.102.tar.bz2 54828375 SHA256 2a9b54275400c768e14156e7654e9b9a4ca27353573627607c70d221c0e2db65 SHA512 0f182316e80baa8c3d268a266398bd2abad4db9ed54bba351b275681d17ef6fd5348d3b66fd95201028c38f29de293f124b9c4f45a5818f20faf17b1eea495ff WHIRLPOOL fb064dd78471d2060871f905cb1c81fd9c52cc15741493aad26df49db4259709860593b65586a6c44893a6454fd7f2d27815739e1525f1c8fd0cf9eb0efff92a diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-1.6.1187.102-clear-key-state-on-disable.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-1.6.1187.102-clear-key-state-on-disable.patch deleted file mode 100644 index 255518c901..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-1.6.1187.102-clear-key-state-on-disable.patch +++ /dev/null @@ -1,13 +0,0 @@ -Clear key state on disable to handle Shift-up correctly. - -diff -urN ../mozc.orig/unix/ibus/mozc_engine.cc ./unix/ibus/mozc_engine.cc ---- ../mozc.orig/unix/ibus/mozc_engine.cc 2012-08-31 14:36:43.000000000 +0900 -+++ ./unix/ibus/mozc_engine.cc 2012-11-29 16:56:09.216754385 +0900 -@@ -285,6 +285,7 @@ - void MozcEngine::Disable(IBusEngine *engine) { - RevertSession(engine); - GetCandidateWindowHandler(engine)->Hide(engine); -+ key_event_handler_->Clear(); - } - - void MozcEngine::Enable(IBusEngine *engine) { diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-1.6.1187.102-x32.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-1.6.1187.102-x32.patch deleted file mode 100644 index 7b0fcb7d3c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-1.6.1187.102-x32.patch +++ /dev/null @@ -1,17 +0,0 @@ -needs a little more space to handle pthread mutex_t with some ABIs - -http://code.google.com/p/mozc/issues/detail?id=177 - ---- a/base/mutex.h -+++ b/base/mutex.h -@@ -52,8 +52,8 @@ - #define MOZC_RW_MUTEX_PTR_ARRAYSIZE 32 - #else - // Currently following sizes seem to be enough to support all other platforms. --#define MOZC_MUTEX_PTR_ARRAYSIZE 6 --#define MOZC_RW_MUTEX_PTR_ARRAYSIZE 10 -+#define MOZC_MUTEX_PTR_ARRAYSIZE 8 -+#define MOZC_RW_MUTEX_PTR_ARRAYSIZE 12 - #endif - - class LOCKABLE Mutex { diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-introduces-typo-for-compatibility.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-introduces-typo-for-compatibility.patch deleted file mode 100644 index 5de5b98cf5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-introduces-typo-for-compatibility.patch +++ /dev/null @@ -1,16 +0,0 @@ -Introduces typo to keep a compatibility with ibus-pinyin. - -To fix this typo, we should implements codes to migrate a configuration. - -diff -urN ../mozc_origin/languages/pinyin/unix/ibus/mozc_engine_property.cc ./languages/pinyin/unix/ibus/mozc_engine_property.cc ---- ../mozc_origin/languages/pinyin/unix/ibus/mozc_engine_property.cc 2012-04-09 12:28:03.895173124 +0900 -+++ ./languages/pinyin/unix/ibus/mozc_engine_property.cc 2012-04-09 18:44:32.013454770 +0900 -@@ -73,7 +73,8 @@ - "mode.simp", - "\xE7\xAE\x80", // "简" - "hiragana.png", -- "Simplified/Traditional Chinese", -+ // TODO(hsumita): Fixes typo. s/Simplfied/Simplified/ -+ "Simplfied/Traditional Chinese", - }, - }; diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-replace-ibus-pinyin.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-replace-ibus-pinyin.patch deleted file mode 100644 index e98c3ee918..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/files/ibus-mozc-pinyin-replace-ibus-pinyin.patch +++ /dev/null @@ -1,49 +0,0 @@ -Replaces a name from mozc-pinyin to pinyin for a compatibility. - -ChromeOS is published on China, so it is not a good idea to replace "pinyin" -tag with "mozc-pinyin" tag because ibus-pinyin user must reconfigure ChormeOS -to use ibus-mozc-pinyin. To avoid this issue, we simply use "pinyin" tag on -ChromeOS. - -diff -urN ../mozc_origin/languages/pinyin/unix/ibus/main.h ./languages/pinyin/unix/ibus/main.h ---- ../mozc_origin/languages/pinyin/unix/ibus/main.h 2012-04-09 12:28:03.895173124 +0900 -+++ ./languages/pinyin/unix/ibus/main.h 2012-04-09 15:36:18.533924555 +0900 -@@ -48,9 +48,11 @@ - "us", - "us(dvorak)", - }; -+// Using "pinyin*" instead of "mozc-pinyin*" for a compatibility with -+// ibus-pinyin on ChromeOS. - const char *kEngineNameArray[] = { -- "mozc-pinyin", -- "mozc-pinyin-dv", -+ "pinyin", -+ "pinyin-dv", - }; - const char *kEngineLongnameArray[] = { - "Mozc Pinyin", -diff -urN ../mozc_origin/languages/pinyin/unix/ibus/mozc-pinyin.xml ./languages/pinyin/unix/ibus/mozc-pinyin.xml ---- ../mozc_origin/languages/pinyin/unix/ibus/mozc-pinyin.xml 2012-04-09 12:28:03.895173124 +0900 -+++ ./languages/pinyin/unix/ibus/mozc-pinyin.xml 2012-04-09 15:36:45.563847591 +0900 -@@ -14,7 +14,9 @@ - zh-CN - /usr/share/ibus-mozc-pinyin/product_icon.png - us -- mozc-pinyin -+ -+ pinyin - Mozc Pinyin - - -@@ -23,7 +25,9 @@ - zh-CN - /usr/share/ibus-mozc-pinyin/product_icon.png - us(dvorak) -- mozc-pinyin-dv -+ -+ pinyin-dv - Mozc Pinyin (for US Dvorak keyboard) - - diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/ibus-mozc-pinyin-1.6.1187.102-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/ibus-mozc-pinyin-1.6.1187.102-r2.ebuild deleted file mode 100644 index 73540bff40..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc-pinyin/ibus-mozc-pinyin-1.6.1187.102-r2.ebuild +++ /dev/null @@ -1,75 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" -inherit eutils flag-o-matic python toolchain-funcs - -DESCRIPTION="The Mozc Pinyin engine for IBus Framework" -HOMEPAGE="http://code.google.com/p/mozc" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/mozc-${PV}.tar.bz2" -LICENSE="BSD" -RDEPEND=">=app-i18n/ibus-1.3.99 - >=dev-libs/glib-2.26 - dev-libs/protobuf - >=dev-libs/pyzy-0.1.0" -DEPEND="${RDEPEND}" -SLOT="0" -KEYWORDS="amd64 x86 arm" -BUILDTYPE="${BUILDTYPE:-Release}" - -src_configure() { - cd "mozc" || die - # Generate make files - export GYP_DEFINES="chromeos=1 use_libzinnia=0 use_libprotobuf=1" - export BUILD_COMMAND="emake" - - # Currently --channel_dev=0 is not necessary for Pinyin, but just in case. - $(PYTHON) build_mozc.py gyp --gypdir="third_party/gyp" \ - --language=pinyin \ - --noqt \ - --target_platform="ChromeOS" --channel_dev=0 || die -} - -src_prepare() { - cd "mozc" || die - epatch "${FILESDIR}"/"${P}"-clear-key-state-on-disable.patch || die - epatch "${FILESDIR}"/"${P}"-x32.patch - # Following 2 patches are required by any version of ibus-mozc-pinyin on - # ChromeOS - epatch "${FILESDIR}"/ibus-mozc-pinyin-introduces-typo-for-compatibility.patch || die - epatch "${FILESDIR}"/ibus-mozc-pinyin-replace-ibus-pinyin.patch || die -} - -src_compile() { - cd "mozc" || die - # Create build tools for the host platform. - CFLAGS="" CXXFLAGS="" $(PYTHON) build_mozc.py build_tools -c ${BUILDTYPE} \ - || die - - # Build artifacts for the target platform. - tc-export CXX CC AR AS RANLIB LD - $(PYTHON) build_mozc.py build \ - pinyin/pinyin.gyp:ibus_mozc_pinyin -c ${BUILDTYPE} || die -} - -src_install() { - cd "mozc" || die - exeinto /usr/libexec || die - newexe "out_linux/${BUILDTYPE}/ibus_mozc_pinyin" ibus-engine-mozc-pinyin \ - || die - - insinto /usr/share/ibus/component || die - doins languages/pinyin/unix/ibus/mozc-pinyin.xml || die - - mkdir -p "${D}"/usr/share/ibus-mozc-pinyin || die - cp "out_linux/${BUILDTYPE}/ibus_mozc_pinyin" "${T}" || die - $(tc-getSTRIP) --strip-unneeded "${T}"/ibus_mozc_pinyin || die - - # Unnecessary link may cause size bloat. We expect to detect it by checking binary size. - # NOTE: The binary size for amd64 is 1.1MB in Apr. 2012 - FILESIZE=`stat -c %s "${T}"/ibus_mozc_pinyin` - einfo "The binary size is ${FILESIZE}" - test ${FILESIZE} -lt 2000000 \ - || die 'The binary size of ibus_mozc_pinyin is too big (more than ~2.0MB)' - rm -f "${T}"/ibus_mozc_pinyin -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/Manifest deleted file mode 100644 index f431b49967..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST GoogleJapaneseInputFilesForChromeOS-1.5.1090.102.tar.bz2 23756520 RMD160 4f73f336fa0a3ea9be1a54542d6b3cd4956fb3a4 SHA1 2e8e8d86a83010d49fe985f3dc82ce64ee947b0e SHA256 61346cdddc6000ad1c151626a810014566e8a1d1e6bf367df3ff8ede3a3f58c2 -DIST mozc-1.5.1090.102.tar.bz2 54911799 RMD160 5b9b704e68a87d7b4a63bb2ea5ab0561badf90b1 SHA1 9c99333a3a46c190fe14afae573b2ddc2faab64a SHA256 b52c1879c4749041032578ec6c591d9741f521d54993070c050d09ae35bd2107 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/files/ibus-mozc-1.5.1090.102-attachment-cleanup.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/files/ibus-mozc-1.5.1090.102-attachment-cleanup.patch deleted file mode 100644 index 59d83f80b1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/files/ibus-mozc-1.5.1090.102-attachment-cleanup.patch +++ /dev/null @@ -1,62 +0,0 @@ -diff -urN mozc-1.5.1090.102.orig/unix/ibus/ibus_candidate_window_handler.cc mozc-1.5.1090.102/unix/ibus/ibus_candidate_window_handler.cc ---- mozc-1.5.1090.102.orig/unix/ibus/ibus_candidate_window_handler.cc 2012-11-19 16:25:45.757689538 +0900 -+++ mozc-1.5.1090.102/unix/ibus/ibus_candidate_window_handler.cc 2012-11-19 16:45:09.165140106 +0900 -@@ -142,9 +142,45 @@ - } - #endif - -+#if defined(OS_CHROMEOS) -+ map > usage_map; -+ if (candidates.has_usages()) { -+ const commands::InformationList& usages = candidates.usages(); -+ for (size_t i = 0; i < usages.information().size(); ++i) { -+ const commands::Information& information = usages.information(i); -+ if (!information.has_id() || !information.has_description()) -+ continue; -+ usage_map[information.id()].first = information.title(); -+ usage_map[information.id()].second = information.description(); -+ } -+ } -+#endif // OS_CHROMEOS - for (int i = 0; i < candidates.candidate_size(); ++i) { - const commands::Candidates::Candidate &candidate = candidates.candidate(i); - IBusText *text = ibus_text_new_from_string(candidate.value().c_str()); -+#if defined(OS_CHROMEOS) && IBUS_CHECK_VERSION(1, 4, 2) -+ if (candidate.has_annotation() && -+ candidate.annotation().has_description()) { -+ ibus_serializable_set_attachment( -+ IBUS_SERIALIZABLE(text), -+ "annotation", -+ g_variant_new_string(candidate.annotation().description().c_str())); -+ } -+ if (candidate.has_information_id()) { -+ map >::iterator it = -+ usage_map.find(candidate.information_id()); -+ if (it != usage_map.end()) { -+ ibus_serializable_set_attachment( -+ IBUS_SERIALIZABLE(text), -+ "description_title", -+ g_variant_new_string(it->second.first.c_str())); -+ ibus_serializable_set_attachment( -+ IBUS_SERIALIZABLE(text), -+ "description_body", -+ g_variant_new_string(it->second.second.c_str())); -+ } -+ } -+#endif // OS_CHROMEOS && IBUS_CHECK_VERSION(1, 4, 2) - ibus_lookup_table_append_candidate(table, text); - // |text| is released by ibus_engine_update_lookup_table along with |table|. - -@@ -164,6 +200,12 @@ - } - - #if defined(OS_CHROMEOS) and IBUS_CHECK_VERSION(1, 3, 99) -+ if (candidates.has_category()) { -+ ibus_serializable_set_attachment( -+ IBUS_SERIALIZABLE(table), -+ "show_window_at_composition", -+ g_variant_new_boolean(candidates.category() == commands::SUGGESTION)); -+ } - // The function ibus_serializable_set_attachment() had been changed - // to use GVariant in ibus-1.3.99. - // https://github.com/ibus/ibus/commit/ac9dfac13cef34288440a2ecdf067cd827fb2f8f diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/files/ibus-mozc-1.5.1090.102-handle-extra-keysyms.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/files/ibus-mozc-1.5.1090.102-handle-extra-keysyms.patch deleted file mode 100644 index a57dc1ad20..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/files/ibus-mozc-1.5.1090.102-handle-extra-keysyms.patch +++ /dev/null @@ -1,139 +0,0 @@ -diff -urN mozc-1.5.1090.102.orig/unix/ibus/ibus_extra_keysyms.h mozc-1.5.1090.102/unix/ibus/ibus_extra_keysyms.h ---- mozc-1.5.1090.102.orig/unix/ibus/ibus_extra_keysyms.h 1970-01-01 09:00:00.000000000 +0900 -+++ mozc-1.5.1090.102/unix/ibus/ibus_extra_keysyms.h 2012-12-11 16:32:15.607074442 +0900 -@@ -0,0 +1,52 @@ -+// Copyright 2010-2012, Google Inc. -+// 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 Google Inc. 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 THE COPYRIGHT -+// OWNER OR CONTRIBUTORS 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. -+ -+#ifndef MOZC_UNIX_IBUS_IBUS_EXTRA_KEYSYMS_H_ -+#define MOZC_UNIX_IBUS_IBUS_EXTRA_KEYSYMS_H_ -+ -+// for guint -+#include "unix/ibus/ibus_header.h" -+ -+#ifdef OS_CHROMEOS -+// Defines key symbols which are not defined on ibuskeysyms.h to handle -+// some keys on ChromeOS. -+const guint IBUS_Back = 0x1008FF26; -+const guint IBUS_Forward = 0x1008FF27; -+const guint IBUS_Reload = 0x1008FF73; -+const guint IBUS_LaunchB = 0x1008FF4B; -+const guint IBUS_LaunchA = 0x1008FF4A; -+const guint IBUS_MonBrightnessDown = 0x1008FF03; -+const guint IBUS_MonBrightnessUp = 0x1008FF02; -+const guint IBUS_AudioMute = 0x1008FF12; -+const guint IBUS_AudioLowerVolume = 0x1008FF11; -+const guint IBUS_AudioRaiseVolume = 0x1008FF13; -+#endif // OS_CHROMEOS -+ -+#endif // MOZC_UNIX_IBUS_IBUS_EXTRA_KEYSYMS_H_ -+ -diff -urN mozc-1.5.1090.102.orig/unix/ibus/key_translator.cc mozc-1.5.1090.102/unix/ibus/key_translator.cc ---- mozc-1.5.1090.102.orig/unix/ibus/key_translator.cc 2012-12-11 15:59:00.409418570 +0900 -+++ mozc-1.5.1090.102/unix/ibus/key_translator.cc 2012-12-11 16:21:17.497854201 +0900 -@@ -32,6 +32,7 @@ - #include - - #include "base/logging.h" -+#include "unix/ibus/ibus_extra_keysyms.h" - - namespace { - -@@ -88,6 +89,19 @@ - {IBUS_Page_Up, mozc::commands::KeyEvent::PAGE_UP}, - {IBUS_Page_Down, mozc::commands::KeyEvent::PAGE_DOWN}, - -+#ifdef OS_CHROMEOS -+ {IBUS_Back, mozc::commands::KeyEvent::F1}, -+ {IBUS_Forward, mozc::commands::KeyEvent::F2}, -+ {IBUS_Reload, mozc::commands::KeyEvent::F3}, -+ {IBUS_LaunchB, mozc::commands::KeyEvent::F4}, -+ {IBUS_LaunchA, mozc::commands::KeyEvent::F5}, -+ {IBUS_MonBrightnessDown, mozc::commands::KeyEvent::F6}, -+ {IBUS_MonBrightnessUp, mozc::commands::KeyEvent::F7}, -+ {IBUS_AudioMute, mozc::commands::KeyEvent::F8}, -+ {IBUS_AudioLowerVolume, mozc::commands::KeyEvent::F9}, -+ {IBUS_AudioRaiseVolume, mozc::commands::KeyEvent::F10}, -+#endif // OS_CHROMEOS -+ - // Keypad (10-key). - {IBUS_KP_0, mozc::commands::KeyEvent::NUMPAD0}, - {IBUS_KP_1, mozc::commands::KeyEvent::NUMPAD1}, -diff -urN mozc-1.5.1090.102.orig/unix/ibus/key_translator_test.cc mozc-1.5.1090.102/unix/ibus/key_translator_test.cc ---- mozc-1.5.1090.102.orig/unix/ibus/key_translator_test.cc 2012-12-11 15:59:00.409418570 +0900 -+++ mozc-1.5.1090.102/unix/ibus/key_translator_test.cc 2012-12-11 16:06:14.708927885 +0900 -@@ -33,6 +33,7 @@ - #include "testing/base/public/gunit.h" - #include "session/commands.pb.h" - #include "unix/ibus/key_translator.h" -+#include "unix/ibus/ibus_extra_keysyms.h" - - namespace mozc { - namespace ibus { -@@ -116,6 +117,20 @@ - IBUS_Caps_Lock, - IBUS_ISO_Left_Tab, - IBUS_Hangul_Hanja, -+ -+ -+#ifdef OS_CHROMEOS -+ IBUS_Back, -+ IBUS_Forward, -+ IBUS_Reload, -+ IBUS_LaunchB, -+ IBUS_LaunchA, -+ IBUS_MonBrightnessDown, -+ IBUS_MonBrightnessUp, -+ IBUS_AudioMute, -+ IBUS_AudioLowerVolume, -+ IBUS_AudioRaiseVolume, -+#endif // OS_CHROMEOS - }; - - const commands::KeyEvent::SpecialKey mapped_special_keys[] = { -@@ -197,6 +212,19 @@ - commands::KeyEvent::CAPS_LOCK, - commands::KeyEvent::TAB, - commands::KeyEvent::HANJA, -+ -+#ifdef OS_CHROMEOS -+ commands::KeyEvent::F1, -+ commands::KeyEvent::F2, -+ commands::KeyEvent::F3, -+ commands::KeyEvent::F4, -+ commands::KeyEvent::F5, -+ commands::KeyEvent::F6, -+ commands::KeyEvent::F7, -+ commands::KeyEvent::F8, -+ commands::KeyEvent::F9, -+ commands::KeyEvent::F10, -+#endif // OS_CHROMEOS - }; - - const guint modifier_masks[] = { diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/ibus-mozc-1.5.1090.102-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/ibus-mozc-1.5.1090.102-r3.ebuild deleted file mode 100644 index 6b446430fe..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-mozc/ibus-mozc-1.5.1090.102-r3.ebuild +++ /dev/null @@ -1,97 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" -inherit eutils flag-o-matic python toolchain-funcs - -DESCRIPTION="The Mozc engine for IBus Framework" -HOMEPAGE="http://code.google.com/p/mozc" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/mozc-${PV}.tar.bz2 -internal? ( gs://chromeos-localmirror-private/distfiles/GoogleJapaneseInputFilesForChromeOS-${PV}.tar.bz2 )" -LICENSE="BSD" -IUSE="internal" -# TODO(nona): Remove libcurl dependency. -RDEPEND=">=app-i18n/ibus-1.4.1 - dev-libs/openssl - dev-libs/protobuf - internal? ( - net-misc/curl - )" -DEPEND="${RDEPEND}" -SLOT="0" -KEYWORDS="amd64 x86 arm" -BUILDTYPE="${BUILDTYPE:-Release}" -RESTRICT="mirror" - -src_configure() { - if use internal; then - BRANDING="${BRANDING:-GoogleJapaneseInput}" - SIZE_LIMIT=20000000 - else - BRANDING="${BRANDING:-Mozc}" - SIZE_LIMIT=25000000 - fi - - cd "mozc-${PV}" || die - # Generate make files - export GYP_DEFINES="chromeos=1 use_libzinnia=0" - export BUILD_COMMAND="emake" - - $(PYTHON) build_mozc.py gyp --gypdir="third_party/gyp" \ - --target_platform="ChromeOS" \ - --use_libprotobuf \ - --branding="${BRANDING}" || die -} - -src_prepare() { - if use internal; then - einfo "Building Google Japanese Input for ChromeOS" - rm -fr "mozc-${PV}/data/dictionary" || die - rm -fr "mozc-${PV}/dictionary" || die - rm -f "mozc-${PV}/mozc_version_template.txt" || die - mv "data/dictionary" "mozc-${PV}/data/" || die - mv "dictionary" "mozc-${PV}/" || die - mv "mozc_version_template.txt" "mozc-${PV}/" || die - # Reduce a binary size. - # TODO(hsumita): Remove this patch when it becomes a default behavior of - # Mozc for ChromeOS. - rm -f "mozc-${PV}/converter/converter_base.gyp" || die - mv "converter/converter_base.gyp" "mozc-${PV}/converter/" || die - else - einfo "Building Mozc for ChromiumOS" - fi - - # Remove the patch when new mozc is released. - epatch "${FILESDIR}"/${P}-attachment-cleanup.patch || die - epatch "${FILESDIR}"/${P}-handle-extra-keysyms.patch || die -} - -src_compile() { - cd "mozc-${PV}" || die - # Create build tools for the host platform. - CFLAGS="" CXXFLAGS="" $(PYTHON) build_mozc.py build_tools -c ${BUILDTYPE} \ - || die - - # Build artifacts for the target platform. - tc-export CXX CC AR AS RANLIB LD - $(PYTHON) build_mozc.py build unix/ibus/ibus.gyp:ibus_mozc -c ${BUILDTYPE} \ - || die -} - -src_install() { - cd "mozc-${PV}" || die - exeinto /usr/libexec || die - newexe "out_linux/${BUILDTYPE}/ibus_mozc" ibus-engine-mozc || die - - insinto /usr/share/ibus/component || die - doins out_linux/${BUILDTYPE}/obj/gen/unix/ibus/mozc.xml || die - - cp "out_linux/${BUILDTYPE}/ibus_mozc" "${T}" || die - $(tc-getSTRIP) --strip-unneeded "${T}"/ibus_mozc || die - - # Check the binary size to detect binary size bloat (which happend once due - # typos in .gyp files). - test `stat -c %s "${T}"/ibus_mozc` -lt ${SIZE_LIMIT} \ - || die "The binary size of mozc for Japanese is too big (more than ~${SIZE_LIMIT})" - rm -f "${T}"/ibus_mozc -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-zinnia/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-zinnia/Manifest deleted file mode 100644 index 6df0b3c119..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-zinnia/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ibus-zinnia-0.0.3.tar.gz 12810 SHA256 de83b5de5e24620169f38f20f0313f07abed1f2eaac3f5862b1ee07895607daf SHA512 9e0c1333cbe370dea7619a271dee8b36f7482931413081e41e2ad5ce85b2aec962a7c1fd3861eca21c2addca44e9fd3b8ed7f25bbe5722fffa6726104a5d1225 WHIRLPOOL 5ef1c2dfe04254a5363a32adb6289d577f9a1fa639a8fbc4e9d5ea7d7ff4f911ca57202da6e116c73e1317e644cc666443cbc83871ef97369faf7175e9b17c14 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-zinnia/ibus-zinnia-0.0.3-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-zinnia/ibus-zinnia-0.0.3-r2.ebuild deleted file mode 100644 index 64765abfd6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus-zinnia/ibus-zinnia-0.0.3-r2.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" -inherit eutils flag-o-matic - -DESCRIPTION="Zinnia hand-writing engine" -HOMEPAGE="http://github.com/yusukes/ibus-zinnia" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" -#RESTRICT="mirror" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="amd64 arm x86" - -RDEPEND=">=app-i18n/ibus-1.3.99 - app-i18n/zinnia - app-i18n/tegaki-zinnia-japanese-light - app-i18n/tegaki-zinnia-simplified-chinese-light - app-i18n/tegaki-zinnia-traditional-chinese-light" -DEPEND="${RDEPEND} - dev-util/pkgconfig - >=sys-devel/gettext-0.16.1" - -# Tarballs in github.com use a special directory naming rule: -# "--" -SRC_DIR="yusukes-ibus-zinnia-910d66d" - -src_configure() { - cd "${SRC_DIR}" || die - - append-cflags -Wall -Werror - NOCONFIGURE=1 ./autogen.sh || die - econf || die -} - -src_install() { - cd "${SRC_DIR}" || die - - emake DESTDIR="${D}" install || die - dodoc AUTHORS ChangeLog NEWS README -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/Manifest deleted file mode 100644 index 13a187809f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ibus-1.4.99.20120314.tar.gz 1652281 SHA256 4fe24028d8f813e27e5bb69a4f8ee64b326d39c0ad094e847bf725823eb3c6af SHA512 cb9a58478f792aed5d735124ebfb0b494b7654714b9f45e755b51bd14ae55cf9cdca4fd81b53d55070a561a824a189920c7e6aa75cbe5b74d3164b1146b67570 WHIRLPOOL 86f8322455bb4ff9560452bb664629135478583389bc131411789efa030750d3d90bf84173725482e5f59e5b2961133376aa411bf20cd9359b6ff0885d6bb967 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-0003-Add-api-to-ibus-for-retreiving-unused-config-values.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-0003-Add-api-to-ibus-for-retreiving-unused-config-values.patch deleted file mode 100644 index fd59e828e5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-0003-Add-api-to-ibus-for-retreiving-unused-config-values.patch +++ /dev/null @@ -1,326 +0,0 @@ -diff -ur ibus-1.4.99.20120314.orig/conf/memconf/config.c ibus-1.4.99.20120314/conf/memconf/config.c ---- ibus-1.4.99.20120314.orig/conf/memconf/config.c 2012-02-27 06:37:21.000000000 +0900 -+++ ibus-1.4.99.20120314/conf/memconf/config.c 2012-04-02 15:05:20.300663070 +0900 -@@ -29,6 +29,8 @@ - struct _IBusConfigMemconf { - IBusConfigService parent; - GHashTable *values; -+ GHashTable *unread; -+ GHashTable *unwritten; - }; - - struct _IBusConfigMemconfClass { -@@ -55,6 +57,10 @@ - const gchar *section, - const gchar *name, - GError **error); -+static gboolean ibus_config_memconf_get_unused (IBusConfigService *config, -+ GVariant **unread, -+ GVariant **unwritten, -+ GError **error); - - G_DEFINE_TYPE (IBusConfigMemconf, ibus_config_memconf, IBUS_TYPE_CONFIG_SERVICE) - -@@ -68,6 +74,7 @@ - IBUS_CONFIG_SERVICE_CLASS (object_class)->get_value = ibus_config_memconf_get_value; - IBUS_CONFIG_SERVICE_CLASS (object_class)->get_values = ibus_config_memconf_get_values; - IBUS_CONFIG_SERVICE_CLASS (object_class)->unset_value = ibus_config_memconf_unset_value; -+ IBUS_CONFIG_SERVICE_CLASS (object_class)->get_unused = ibus_config_memconf_get_unused; - } - - static void -@@ -75,14 +82,25 @@ - { - config->values = g_hash_table_new_full (g_str_hash, - g_str_equal, -- (GDestroyNotify)g_free, -- (GDestroyNotify)g_variant_unref); -+ (GDestroyNotify) g_free, -+ (GDestroyNotify) g_variant_unref); -+ config->unread = g_hash_table_new_full (g_str_hash, -+ g_str_equal, -+ (GDestroyNotify) g_free, -+ (GDestroyNotify) NULL); -+ config->unwritten -+ = g_hash_table_new_full (g_str_hash, -+ g_str_equal, -+ (GDestroyNotify) g_free, -+ (GDestroyNotify) NULL); - } - - static void - ibus_config_memconf_destroy (IBusConfigMemconf *config) - { - g_hash_table_destroy (config->values); -+ g_hash_table_destroy (config->unread); -+ g_hash_table_destroy (config->unwritten); - IBUS_OBJECT_CLASS (ibus_config_memconf_parent_class)->destroy ((IBusObject *)config); - } - -@@ -101,6 +119,12 @@ - - gchar *key = g_strdup_printf ("%s:%s", section, name); - -+ if (g_hash_table_lookup ( -+ IBUS_CONFIG_MEMCONF (config)->values, key) == NULL) { -+ g_hash_table_insert (IBUS_CONFIG_MEMCONF (config)->unread, -+ g_strdup (key), NULL); -+ } -+ - g_hash_table_insert (IBUS_CONFIG_MEMCONF (config)->values, - key, g_variant_ref_sink (value)); - -@@ -121,16 +145,21 @@ - g_assert (error == NULL || *error == NULL); - - gchar *key = g_strdup_printf ("%s:%s", section, name); -+ - GVariant *value = (GVariant *)g_hash_table_lookup (IBUS_CONFIG_MEMCONF (config)->values, key); -- g_free (key); - -- if (value != NULL) { -+ if (value == NULL) { -+ g_hash_table_insert (IBUS_CONFIG_MEMCONF (config)->unwritten, -+ g_strdup (key), NULL); -+ if (error != NULL) { -+ *error = g_error_new (G_DBUS_ERROR, G_DBUS_ERROR_FAILED, -+ "Config value [%s:%s] does not exist.", section, name); -+ } -+ } else { -+ g_hash_table_remove (IBUS_CONFIG_MEMCONF (config)->unread, key); - g_variant_ref (value); - } -- else if (error != NULL) { -- *error = g_error_new (G_DBUS_ERROR, G_DBUS_ERROR_FAILED, -- "Config value [%s:%s] does not exist.", section, name); -- } -+ g_free (key); - return value; - } - -@@ -173,13 +202,13 @@ - - gchar *key = g_strdup_printf ("%s:%s", section, name); - gboolean retval = g_hash_table_remove (IBUS_CONFIG_MEMCONF (config)->values, key); -- g_free (key); - - if (retval) { - ibus_config_service_value_changed (config, - section, - name, - g_variant_new_tuple (NULL, 0)); -+ g_hash_table_remove (IBUS_CONFIG_MEMCONF (config)->unread, key); - } - else { - if (error && *error) { -@@ -187,9 +216,39 @@ - "Config value [%s:%s] does not exist.", section, name); - } - } -+ g_free (key); - return retval; - } - -+static gboolean -+ibus_config_memconf_get_unused (IBusConfigService *config, -+ GVariant **unread, -+ GVariant **unwritten, -+ GError **error) -+{ -+ GVariantBuilder builder; -+ GList *keys, *p; -+ -+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("as")); -+ keys = g_hash_table_get_keys (IBUS_CONFIG_MEMCONF (config)->unread); -+ for (p = keys; p != NULL; p = p->next) { -+ g_variant_builder_add (&builder, "s", (const gchar *)p->data); -+ } -+ g_list_free (keys); -+ *unread = g_variant_builder_end (&builder); -+ -+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("as")); -+ keys = g_hash_table_get_keys (IBUS_CONFIG_MEMCONF (config)->unwritten); -+ for (p = keys; p != NULL; p = p->next) { -+ g_variant_builder_add (&builder, "s", (const gchar *)p->data); -+ } -+ g_list_free (keys); -+ -+ *unwritten = g_variant_builder_end (&builder); -+ -+ return TRUE; -+} -+ - IBusConfigMemconf * - ibus_config_memconf_new (GDBusConnection *connection) - { -diff -ur ibus-1.4.99.20120314.orig/src/ibusconfig.c ibus-1.4.99.20120314/src/ibusconfig.c ---- ibus-1.4.99.20120314.orig/src/ibusconfig.c 2012-03-07 14:39:58.000000000 +0900 -+++ ibus-1.4.99.20120314/src/ibusconfig.c 2012-04-02 15:03:18.361126672 +0900 -@@ -720,3 +720,37 @@ - async_initable_iface->init_async = async_initable_init_async; - async_initable_iface->init_finish = async_initable_init_finish; - } -+ -+gboolean -+ibus_config_get_unused (IBusConfig *config, -+ GVariant **unread, -+ GVariant **unwritten) -+{ -+ g_assert (IBUS_IS_CONFIG (config)); -+ g_assert (unread != NULL && *unread == NULL); -+ g_assert (unwritten != NULL && *unwritten == NULL); -+ -+ GError *error = NULL; -+ GVariant *result; -+ -+ result = g_dbus_proxy_call_sync ((GDBusProxy *) config, -+ "GetUnused", /* method_name */ -+ NULL, /* parameters */ -+ G_DBUS_CALL_FLAGS_NONE, /* flags */ -+ -1, /* timeout */ -+ NULL, /* cancellable */ -+ &error /* error */ -+ ); -+ if (result == NULL) { -+ g_warning ("%s.GetUnused: %s", IBUS_INTERFACE_CONFIG, error->message); -+ g_error_free (error); -+ return FALSE; -+ } -+ -+ *unread = g_variant_get_child_value (result, 0); -+ *unwritten = g_variant_get_child_value (result, 1); -+ -+ g_variant_unref (result); -+ -+ return TRUE; -+} -Only in ibus-1.4.99.20120314/src: ibusconfig.c.orig -diff -ur ibus-1.4.99.20120314.orig/src/ibusconfig.h ibus-1.4.99.20120314/src/ibusconfig.h ---- ibus-1.4.99.20120314.orig/src/ibusconfig.h 2012-03-07 14:39:58.000000000 +0900 -+++ ibus-1.4.99.20120314/src/ibusconfig.h 2012-04-02 15:03:18.361126672 +0900 -@@ -347,6 +347,19 @@ - - /* FIXME add an asynchronous version of unwatch */ - -+/** -+ * ibus_config_get_unused: -+ * @config: An IBusConfig -+ * @unread: GVariant that holds a list of values that have been written but not -+ * read. -+ * @unwritten: GVariant that holds a list of values that have been read but not -+ * written. -+ * @returns: TRUE if succeed; FALSE otherwise. -+ * -+ * Get the list of values that haven't been used properly. -+ */ -+gboolean ibus_config_get_unused (IBusConfig *config, -+ GVariant **unread, -+ GVariant **unwritten); - G_END_DECLS - #endif -- -Only in ibus-1.4.99.20120314/src: ibusconfig.h.orig -diff -ur ibus-1.4.99.20120314.orig/src/ibusconfigservice.c ibus-1.4.99.20120314/src/ibusconfigservice.c ---- ibus-1.4.99.20120314.orig/src/ibusconfigservice.c 2012-03-07 14:41:10.000000000 +0900 -+++ ibus-1.4.99.20120314/src/ibusconfigservice.c 2012-04-02 15:03:18.361126672 +0900 -@@ -76,6 +76,10 @@ - const gchar *section, - const gchar *name, - GError **error); -+static gboolean ibus_config_service_get_unused (IBusConfigService *config, -+ GVariant **unread, -+ GVariant **unwritten, -+ GError **error); - - G_DEFINE_TYPE (IBusConfigService, ibus_config_service, IBUS_TYPE_SERVICE) - -@@ -105,6 +109,10 @@ - " " - " " - " " -+ " " -+ " " -+ " " -+ " " - " " - ""; - -@@ -125,6 +133,7 @@ - class->get_value = ibus_config_service_get_value; - class->get_values = ibus_config_service_get_values; - class->unset_value = ibus_config_service_unset_value; -+ class->get_unused = ibus_config_service_get_unused; - } - - static void -@@ -242,6 +251,25 @@ - return; - } - -+ if (g_strcmp0 (method_name, "GetUnused") == 0) { -+ GVariant *unread = NULL; -+ GVariant *unwritten = NULL; -+ gboolean retval; -+ GError *error = NULL; -+ -+ retval = IBUS_CONFIG_SERVICE_GET_CLASS (config)->get_unused ( -+ config, &unread, &unwritten, &error); -+ if (retval) { -+ g_dbus_method_invocation_return_value (invocation, -+ g_variant_new ("(@as@as)", unread, unwritten)); -+ } -+ else { -+ g_dbus_method_invocation_return_gerror (invocation, error); -+ g_error_free (error); -+ } -+ return; -+ } -+ - /* should not be reached */ - g_return_if_reached (); - } -@@ -352,6 +380,19 @@ - return IBUS_CONFIG_SERVICE (object); - } - -+static gboolean -+ibus_config_service_get_unused (IBusConfigService *config, -+ GVariant **unread, -+ GVariant **unwritten, -+ GError **error) -+{ -+ if (error) { -+ *error = g_error_new (G_DBUS_ERROR, G_DBUS_ERROR_FAILED, -+ "Not implemented"); -+ } -+ return FALSE; -+} -+ - void - ibus_config_service_value_changed (IBusConfigService *config, - const gchar *section, -Only in ibus-1.4.99.20120314/src: ibusconfigservice.c.orig -diff -ur ibus-1.4.99.20120314.orig/src/ibusconfigservice.h ibus-1.4.99.20120314/src/ibusconfigservice.h ---- ibus-1.4.99.20120314.orig/src/ibusconfigservice.h 2011-08-11 09:49:43.000000000 +0900 -+++ ibus-1.4.99.20120314/src/ibusconfigservice.h 2012-04-02 15:03:18.361126672 +0900 -@@ -203,10 +203,14 @@ - GVariant * (* get_values) (IBusConfigService *config, - const gchar *section, - GError **error); -+ gboolean (* get_unused) (IBusConfigService *config, -+ GVariant **unread, -+ GVariant **unwritten, -+ GError **error); - - /*< private >*/ - /* padding */ -- gpointer pdummy[12]; -+ gpointer pdummy[11]; - }; - - GType ibus_config_service_get_type (void); -@@ -238,4 +242,3 @@ - - G_END_DECLS - #endif -- diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-0004-Remove-bus_input_context_register_properties-props_e.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-0004-Remove-bus_input_context_register_properties-props_e.patch deleted file mode 100644 index 9d54b8eef4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-0004-Remove-bus_input_context_register_properties-props_e.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -ur ibus-1.4.99.20120314.orig/bus/inputcontext.c ibus-1.4.99.20120314/bus/inputcontext.c ---- ibus-1.4.99.20120314.orig/bus/inputcontext.c 2012-02-27 06:37:21.000000000 +0900 -+++ ibus-1.4.99.20120314/bus/inputcontext.c 2012-04-02 15:24:41.936207367 +0900 -@@ -1130,7 +1130,9 @@ - bus_input_context_clear_preedit_text (context); - bus_input_context_update_auxiliary_text (context, text_empty, FALSE); - bus_input_context_update_lookup_table (context, lookup_table_empty, FALSE); -- bus_input_context_register_properties (context, props_empty); -+ -+ // Workaround for http://crosbug.com/7702 -+ // bus_input_context_register_properties (context, props_empty); - - if (context->engine) { - bus_engine_proxy_focus_out (context->engine); diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-disable-ibus-daemon-tests.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-disable-ibus-daemon-tests.patch deleted file mode 100644 index cdbc294dde..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-disable-ibus-daemon-tests.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur ibus-1.4.99.20120314.orig/bus/Makefile.am ibus-1.4.99.20120314/bus/Makefile.am ---- ibus-1.4.99.20120314.orig/bus/Makefile.am 2012-03-07 14:39:58.000000000 +0900 -+++ ibus-1.4.99.20120314/bus/Makefile.am 2012-04-02 15:37:33.273439550 +0900 -@@ -112,8 +112,6 @@ - if ENABLE_TESTS - TESTS = \ - test-matchrule \ -- test-registry \ -- test-stress \ - $(NULL) - endif - diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-do-not-send-cursor-location-to-chrome.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-do-not-send-cursor-location-to-chrome.patch deleted file mode 100644 index 7401f9179a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-do-not-send-cursor-location-to-chrome.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -ur ibus-1.4.99.20120314.orig/bus/panelproxy.c ibus-1.4.99.20120314/bus/panelproxy.c ---- ibus-1.4.99.20120314.orig/bus/panelproxy.c 2012-02-27 06:37:21.000000000 +0900 -+++ ibus-1.4.99.20120314/bus/panelproxy.c 2012-04-02 15:36:12.633725645 +0900 -@@ -481,7 +481,7 @@ - - g_return_if_fail (panel->focused_context == context); - -- bus_panel_proxy_set_cursor_location (panel, x, y, w, h); -+ // bus_panel_proxy_set_cursor_location (panel, x, y, w, h); - } - - static void -Only in ibus-1.4.99.20120314/bus: panelproxy.c.orig diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-fix-double-free.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-fix-double-free.patch deleted file mode 100644 index 1f44d4a49f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-fix-double-free.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -urN ibus-1.4.99.20120314.orig/src/ibusserializable.c ibus-1.4.99.20120314/src/ibusserializable.c ---- ibus-1.4.99.20120314.orig/src/ibusserializable.c 2012-11-02 16:48:00.508766644 +0900 -+++ ibus-1.4.99.20120314/src/ibusserializable.c 2012-11-02 16:52:34.632899493 +0900 -@@ -161,7 +161,6 @@ - key, - attachment); - g_variant_unref (attachment); -- g_variant_unref (value); - } - g_variant_iter_free (iter); - return 2; diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-fix-engine-destroy-cb-69902696928e6acb953ab30b1f70e462b5994272.patch b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-fix-engine-destroy-cb-69902696928e6acb953ab30b1f70e462b5994272.patch deleted file mode 100644 index 117621e61c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/files/ibus-1.4.99.20120314-fix-engine-destroy-cb-69902696928e6acb953ab30b1f70e462b5994272.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: bus/inputcontext.c -diff --git a/bus/inputcontext.c b/bus/inputcontext.c -index 49c4a2694243f20e73929741ae25f7101b94dbc7..ec97e5499844b57d7f2cb63d039dda9d45a1a0ec 100644 ---- a/bus/inputcontext.c -+++ b/bus/inputcontext.c -@@ -2015,6 +2015,9 @@ bus_input_context_unset_engine (BusInputContext *context) - g_signal_handlers_disconnect_by_func (context->engine, - engine_signals[i].callback, context); - } -+ /* focus out to let engine register properties when enabled -+ next time. */ -+ bus_engine_proxy_focus_out (context->engine); - g_object_unref (context->engine); - context->engine = NULL; - } diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/ibus-1.4.99.20120314-r5.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/ibus-1.4.99.20120314-r5.ebuild deleted file mode 100644 index 9a78d9ed8c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/ibus/ibus-1.4.99.20120314-r5.ebuild +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# How to run the test manually: -# (chroot)$ ./cros_run_unit_tests --packages ibus -# or -# (chroot)$ env FEATURES="test" emerge-$BOARD -a ibus - -EAPI="2" -inherit eutils flag-o-matic toolchain-funcs multilib python libtool - -DESCRIPTION="Intelligent Input Bus for Linux / Unix OS" -HOMEPAGE="http://code.google.com/p/ibus/" - -SRC_URI="mirror://gentoo/${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" -#RESTRICT="mirror" - -RDEPEND=">=dev-libs/glib-2.26 - x11-libs/libX11" -DEPEND="${RDEPEND} - dev-util/pkgconfig" - -src_prepare() { - epatch "${FILESDIR}"/${P}-0003-Add-api-to-ibus-for-retreiving-unused-config-values.patch - epatch "${FILESDIR}"/${P}-0004-Remove-bus_input_context_register_properties-props_e.patch - - # TODO(yusukes): Remove this when ibus is upgraded to >= 20120315. - epatch "${FILESDIR}"/${P}-fix-engine-destroy-cb-69902696928e6acb953ab30b1f70e462b5994272.patch - # TODO(nona): Remove the patch when we fix crosbug.com/25335#c1 - epatch "${FILESDIR}"/${P}-do-not-send-cursor-location-to-chrome.patch - # TODO(penghuang): Remove the patch when we fix ibus issue 1438. - epatch "${FILESDIR}"/${P}-disable-ibus-daemon-tests.patch - # TODO(nona): Remove the patch when the next ibus update cycle. - epatch "${FILESDIR}"/${P}-fix-double-free.patch - - elibtoolize -} - -src_configure() { - # TODO(yusukes): Add -Werror back when IBus issue 1437 is fixed. - # append-cflags -Wall -Werror - append-cflags -Wall - - # TODO(petkov): Ideally, configure should support --disable-isocodes but - # it seems that the current version doesn't, so use the environment - # variables instead to remove the dependence on iso-codes. - econf \ - --enable-surrounding-text \ - --disable-gtk2 \ - --disable-gtk3 \ - --disable-dconf \ - --disable-gconf \ - --enable-memconf \ - --disable-xim \ - --disable-key-snooper \ - --disable-vala \ - --enable-introspection=no \ - --disable-gtk-doc \ - --disable-nls \ - --disable-python-library \ - --disable-setup \ - CPPFLAGS='-DOS_CHROMEOS=1' \ - ISOCODES_CFLAGS=' ' ISOCODES_LIBS=' ' -} - -test_fail() { - kill $IBUS_DAEMON_PID - rm -rf "${T}"/.ibus-test-socket-* - die -} - -src_test() { - # Start ibus-daemon background. - export IBUS_ADDRESS_FILE="`mktemp -d ${T}/.ibus-test-socket-XXXXXXXXXX`/ibus-socket-file" - ./bus/ibus-daemon --replace --panel=disable & - IBUS_DAEMON_PID=$! - - # Wait for the daemon to start. - if [ ! -f ${IBUS_ADDRESS_FILE} ] ; then - sleep .5 - fi - - # Run tests. - ./src/tests/ibus-bus || test_fail - - # TODO(yusukes): Fix 'ERROR:ibus-inputcontext.c:101:test_input_context' - # and reenable the test. - # ./src/tests/ibus-inputcontext || test_fail - - ./src/tests/ibus-inputcontext-create || test_fail - ./src/tests/ibus-configservice || test_fail - ./src/tests/ibus-factory || test_fail - ./src/tests/ibus-keynames || test_fail - ./src/tests/ibus-serializable || test_fail - - # Cleanup. - kill $IBUS_DAEMON_PID - rm -rf "${T}"/.ibus-test-socket-* -} - -src_install() { - emake DESTDIR="${D}" install || die - if [ -f "${D}/usr/share/ibus/component/gtkpanel.xml" ] ; then - rm "${D}/usr/share/ibus/component/gtkpanel.xml" || die - fi - - # Remove unnecessary files - rm -rf "${D}/usr/share/ibus/keymaps" || die - rm -rf "${D}/usr/share/icons" || die - - # TODO(yusukes): The latest ibus has --disable-engine option. - rm "${D}/usr/share/ibus/component/simple.xml" || die - rm "${D}/usr/libexec/ibus-engine-simple" || die - - rm "${D}/usr/share/applications/ibus.desktop" || die - rm "${D}/etc/bash_completion.d/ibus.bash" || die - rm -rf "${D}/usr/lib/gtk-2.0/2.10.0/immodules/" || die - - dodoc AUTHORS ChangeLog NEWS README -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/libhangul/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/libhangul/Manifest deleted file mode 100644 index ae722f63f4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/libhangul/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST libhangul-0.0.10.tar.gz 2828525 RMD160 88c03fbbf954addb8c534491a9e3cfd0fdc373dc SHA1 3fdbb1b4ea2f5f12bd3c6760bb2ad609e2eebbaa SHA256 af0722012632ab2afc2016aa6643bd6979e140facc56a911a5a45f97fe61d4c5 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/libhangul/libhangul-0.0.10.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/libhangul/libhangul-0.0.10.ebuild deleted file mode 100644 index 07c339cfc8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/libhangul/libhangul-0.0.10.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-i18n/libhangul/libhangul-0.0.10.ebuild,v -# 1.1 2009/11/05 23:14:11 matsuu Exp $ - -DESCRIPTION="libhangul is a generalized and portable library for processing -hangul." -HOMEPAGE="http://kldp.net/projects/hangul/" -SRC_URI="mirror://gentoo/${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~ppc ~x86" -IUSE="" - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - - dodoc AUTHORS ChangeLog NEWS README -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-japanese-light/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-japanese-light/Manifest deleted file mode 100644 index ff1ee0ddd5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-japanese-light/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST tegaki-zinnia-japanese-light-0.3.zip 6171541 SHA256 c879e7453a52ac5804712d848df0693aaefb623e3094b7bb69fd63ea93d00e74 SHA512 0be95c49ed94bef1745c03c781ead8aeb04187684124640b8cc8375da7ca37f781065db63f25048d4d3509f74006052d0edb39b8f7a5df3fbd7798cc5efce1be WHIRLPOOL 444dedb6b13d9dd15e775dcbb4c93c88e6b7d1f2c6123ea149e2bc60ef02ab8cbdf80e9472b3a3f345215a2ca705199a19b7b9b2b356b74e1e6faea8592557cb diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-japanese-light/tegaki-zinnia-japanese-light-0.3-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-japanese-light/tegaki-zinnia-japanese-light-0.3-r1.ebuild deleted file mode 100644 index fe893f879d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-japanese-light/tegaki-zinnia-japanese-light-0.3-r1.ebuild +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation - -EAPI="3" - -DESCRIPTION="Zinnia learning data for Japanese" -HOMEPAGE="http://tegaki.org/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.zip" - -LICENSE="LGPL" -SLOT="0" -KEYWORDS="amd64 x86 arm" - -RDEPEND="app-i18n/zinnia" - -src_install() { - mkdir -p "${D}/usr/share/tegaki/models/zinnia" || die - install handwriting-ja.meta handwriting-ja.model \ - "${D}/usr/share/tegaki/models/zinnia/" || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-simplified-chinese-light/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-simplified-chinese-light/Manifest deleted file mode 100644 index 31cc487b6e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-simplified-chinese-light/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST tegaki-zinnia-simplified-chinese-light-0.3.zip 7015643 SHA256 598787133a4d59fcf3a2fbc5654c68eaf35a8e422274efcea2035cc081f3446c SHA512 2caf4826b40aafddce01c4fe679881c980dc36ad9ea4dd9bfa7a7fa7f75e58e2345cc8f1772c645365c98073927c76371e473c1c2b58f1cdd6e55da1c82d1b44 WHIRLPOOL b8524663dec7baaae368d0e85831329bbb1944be8dab567919870dc78d1845e32d721fda8fd3df6c799bd22e67468777db6389a28487882d689a42a0c046ea52 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-simplified-chinese-light/tegaki-zinnia-simplified-chinese-light-0.3.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-simplified-chinese-light/tegaki-zinnia-simplified-chinese-light-0.3.ebuild deleted file mode 100644 index dad73838d1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-simplified-chinese-light/tegaki-zinnia-simplified-chinese-light-0.3.ebuild +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation - -EAPI="3" - -DESCRIPTION="Zinnia learning data for simplified Chinese" -HOMEPAGE="http://tegaki.org/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.zip" - -LICENSE="LGPL" -SLOT="0" -KEYWORDS="amd64 x86 arm" - -RDEPEND="app-i18n/zinnia" - -src_install() { - mkdir -p "${D}/usr/share/tegaki/models/zinnia" || die - install handwriting-zh_CN.meta handwriting-zh_CN.model \ - "${D}/usr/share/tegaki/models/zinnia/" || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-traditional-chinese-light/Manifest b/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-traditional-chinese-light/Manifest deleted file mode 100644 index 1562f16652..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-traditional-chinese-light/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST tegaki-zinnia-traditional-chinese-light-0.3.zip 12600387 SHA256 2233e8cdfede562297f652bf2a2e9d154215228f0c83e2cbe349ef539499ded4 SHA512 45a5a1c85e45f8e2ee85e9c39e749370f35f2dcbe5987c9b86239c14932fa4cdff6416579ac5a0f6414c5f5eabfaf2d8bd4426f27c73e2c8a3fc06c12cedf854 WHIRLPOOL 9674f1d6192b219df8ed8e93c455c97e689f517df28bf8bcd31646f2ce6ea79562336a080a84016a03fc6f4f11d4d3b3cfcd9cc384ef7ea2aa5822de8f4bc171 diff --git a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-traditional-chinese-light/tegaki-zinnia-traditional-chinese-light-0.3.ebuild b/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-traditional-chinese-light/tegaki-zinnia-traditional-chinese-light-0.3.ebuild deleted file mode 100644 index 4a91758339..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-i18n/tegaki-zinnia-traditional-chinese-light/tegaki-zinnia-traditional-chinese-light-0.3.ebuild +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation - -EAPI="3" - -DESCRIPTION="Zinnia learning data for traditional Chinese" -HOMEPAGE="http://tegaki.org/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.zip" - -LICENSE="LGPL" -SLOT="0" -KEYWORDS="amd64 x86 arm" - -RDEPEND="app-i18n/zinnia" - -src_install() { - mkdir -p "${D}/usr/share/tegaki/models/zinnia" || die - install handwriting-zh_TW.meta handwriting-zh_TW.model \ - "${D}/usr/share/tegaki/models/zinnia/" || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/Manifest b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/Manifest deleted file mode 100644 index 778f1d4bfc..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST laptop-mode-tools_1.59.tar.gz 102751 SHA256 d1cd3c1889bb651a9c057a95f5000d8d917070e39d4090b671f421ac2c1a253d SHA512 958d342641108d1726714e67b18222171568a39b25b2f7f4af714a566153698b04a27fd2d55abea4e7f72783a633eacab7d7386f1afdd94da7577d31ade2f00b WHIRLPOOL 00f17a7acc938ace04103e6a7d6cea4d55a7790bf8f0805f314f4e40ec4d139ac46e24d64171b18f0b97acfffccba4f1e71ad2508bdcfb5a902d0ab7d8ca1319 diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0001-Enabled-laptop-mode-power-management-control-of.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0001-Enabled-laptop-mode-power-management-control-of.patch deleted file mode 100644 index b1a892b4c8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0001-Enabled-laptop-mode-power-management-control-of.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/conf.d/ac97-powersave.conf laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/ac97-powersave.conf ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/ac97-powersave.conf -+++ laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/ac97-powersave.conf -@@ -18,7 +18,7 @@ - ############################################################################### - - # Control AC97 audio chipset power? --CONTROL_AC97_POWER="auto" -+CONTROL_AC97_POWER=1 - - # Enable debug mode for this module - # Set to 1 if you want to debug this module -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/conf.d/intel-hda-powersave.conf laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/intel-hda-powersave.conf ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/intel-hda-powersave.conf -+++ laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/intel-hda-powersave.conf -@@ -20,7 +20,7 @@ - - # Control INTEL HDA audio chipset power? - # Set to 0 to disable --CONTROL_INTEL_HDA_POWER="auto" -+CONTROL_INTEL_HDA_POWER=1 - - # Handle power savings for Intel HDA under specific circumstances - BATT_INTEL_HDA_POWERSAVE=1 -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/conf.d/intel-sata-powermgmt.conf laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/intel-sata-powermgmt.conf ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/intel-sata-powermgmt.conf -+++ laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/intel-sata-powermgmt.conf -@@ -20,7 +20,7 @@ - - # Control Intel SATA chipset power management? - # Set to 0 to disable --CONTROL_INTEL_SATA_POWER="auto" -+CONTROL_INTEL_SATA_POWER=1 - - # Handle power management of the Intel SATA deivce under specific circumstances - BATT_ACTIVATE_SATA_POWER=1 -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/conf.d/usb-autosuspend.conf laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/usb-autosuspend.conf ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/usb-autosuspend.conf -+++ laptop-mode-tools-1.59.new/etc/laptop-mode/conf.d/usb-autosuspend.conf -@@ -24,7 +24,7 @@ - - # Enable USB autosuspend feature? - # Set to 0 to disable --CONTROL_USB_AUTOSUSPEND="auto" -+CONTROL_USB_AUTOSUSPEND=1 - - # The list of USB IDs that should not use autosuspend. Use lsusb to find out the - # IDs of your USB devices. -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf laptop-mode-tools-1.59.new/etc/laptop-mode/laptop-mode.conf ---- laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -+++ laptop-mode-tools-1.59.new/etc/laptop-mode/laptop-mode.conf -@@ -283,7 +283,7 @@ - # Should laptop mode tools control the hard drive power management settings? - # - # Set to 0 to disable --CONTROL_HD_POWERMGMT="auto" -+CONTROL_HD_POWERMGMT=1 - - - # diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0002-Add-config-knob-to-control-syslog-facility.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0002-Add-config-knob-to-control-syslog-facility.patch deleted file mode 100644 index 8e16b43bfb..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0002-Add-config-knob-to-control-syslog-facility.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 349963dc68cebf8d2e60d0f9ece6e95573366a59 Mon Sep 17 00:00:00 2001 -From: Sameer Nanda -Date: Tue, 16 Feb 2010 16:24:26 -0800 -Subject: [PATCH 4/8] Add config knob to control syslog facility - -Modified for 1.57 - -Signed-off-by: Sameer -Signed-off-by: Simon Que - -Change-Id: I9192a41ea84ed957fcd2ebb7e03e2defb16412ac ---- - .../etc/laptop-mode/laptop-mode.conf | 2 ++ - laptop-mode-tools-1.59/usr/sbin/laptop_mode | 13 +++++++------ - 2 files changed, 9 insertions(+), 6 deletions(-) - -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf laptop-mode-tools-1.59.new/etc/laptop-mode/laptop-mode.conf -index e0a6e06..47a2381 100644 ---- laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -+++ laptop-mode-tools-1.59.new/etc/laptop-mode/laptop-mode.conf -@@ -60,6 +60,8 @@ VERBOSE_OUTPUT=0 - - # Set this to 1 if you want to log messages to syslog - LOG_TO_SYSLOG=1 -+# syslog facility passed to logger -t when LOG_TO_SYSLOG is 1 -+SYSLOG_FACILITY=daemon - - # Run in shell debug mode - # Enable this if you would like to execute the entire laptop-mode-tools program -diff -ruN laptop-mode-tools-1.59/usr/sbin/laptop_mode laptop-mode-tools-1.59.new/usr/sbin/laptop_mode -index 2827569..8acbc68 100644 ---- laptop-mode-tools-1.59/usr/sbin/laptop_mode -+++ laptop-mode-tools-1.59.new/usr/sbin/laptop_mode -@@ -127,6 +127,7 @@ BATT_BRIGHTNESS_COMMAND=false - LM_AC_BRIGHTNESS_COMMAND=false - NOLM_AC_BRIGHTNESS_COMMAND=false - LOG_TO_SYSLOG=1 -+SYSLOG_FACILITY=daemon - DEBUG=0 - ENABLE_LAPTOP_MODE_TOOLS=1 - -@@ -160,15 +161,15 @@ if [ x$LOG_TO_SYSLOG = x1 ]; then - # continue - #elif [ "$1" = "MSG" ]; then - if [ "$1" = "MSG" ]; then -- logger -p daemon.info -t laptop-mode "$2"; -+ logger -p $SYSLOG_FACILITY.info -t laptop-mode "$2"; - elif [ "$1" = "ERR" ]; then -- logger -p daemon.err -t laptop-mode "$2"; -+ logger -p $SYSLOG_FACILITY.err -t laptop-mode "$2"; - elif [ "$1" = "VERBOSE" ]; then -- if [ x$VERBOSE_OUTPUT = x1 ]; then -- logger -p daemon.debug -t laptop-mode "$2"; -- fi -+ if [ x$VERBOSE_OUTPUT = x1 ]; then -+ logger -p $SYSLOG_FACILITY.debug -t laptop-mode "$2"; -+ fi - else -- logger -p daemon.notice -t laptop-mode "$2"; -+ logger -p $SYSLOG_FACILITY.notice -t laptop-mode "$2"; - fi - fi - fi --- -1.7.2.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0003-Add-WiFi-power-management-support.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0003-Add-WiFi-power-management-support.patch deleted file mode 100644 index fd3e9d5c49..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0003-Add-WiFi-power-management-support.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 7c518a4bc8102c179a6a6775aca48d0fe78c5ca4 Mon Sep 17 00:00:00 2001 -From: Sameer Nanda -Date: Thu, 22 Apr 2010 17:16:47 -0700 -Subject: [PATCH 5/8] Added WiFi power management support. Saves 0.3-0.8W at idle. - -Review URL: http://codereview.chromium.org/1769003 ---- - .../etc/laptop-mode/conf.d/wifi-powermgmt.conf | 23 +++++++++++++++++++ - .../share/laptop-mode-tools/modules/wifi-powermgmt | 24 ++++++++++++++++++++ - 2 files changed, 47 insertions(+), 0 deletions(-) - create mode 100644 laptop-mode-tools-1.59/etc/laptop-mode/conf.d/wifi-powermgmt.conf - create mode 100755 laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-powermgmt - -diff -ruN /dev/null laptop-mode-tools-1.59/etc/laptop-mode/conf.d/wifi-powermgmt.conf -new file mode 100644 -index 0000000..6ec4fec ---- /dev/null -+++ laptop-mode-tools-1.59/etc/laptop-mode/conf.d/wifi-powermgmt.conf -@@ -0,0 +1,23 @@ -+# -+# Configuration file for Laptop Mode Tools module wifi-powermgmt. -+# -+# For more information, consult the laptop-mode.conf(8) manual page. -+# -+ -+ -+############################################################################### -+# WiFi power management settings -+# ------------------------------------ -+# -+# If you enable this setting, laptop mode tools will automatically enable the -+# power management for all WiFi devices in the system -+# -+############################################################################### -+ -+# Enable debug mode for this module -+# Set to 1 if you want to debug this module -+DEBUG=0 -+ -+# Control WiFi power management? -+CONTROL_WIFI_POWER=1 -+ -diff -ruN /dev/null laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-powermgmt -new file mode 100755 -index 0000000..2efb1a6 ---- /dev/null -+++ laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-powermgmt -@@ -0,0 +1,24 @@ -+IWCONFIG=iwconfig -+ -+if [ x$CONTROL_WIFI_POWER = x1 ] ; then -+ if [ $ON_AC -eq 1 ] ; then -+ power_mgmt="off" -+ else -+ power_mgmt="on" -+ fi -+ -+ for DEVICE in /sys/class/net/* ; do -+ if [ -d $DEVICE/wireless ]; then -+ dev=`basename $DEVICE` -+ $IWCONFIG $dev power $power_mgmt -+ ret=$? -+ if [ "$ret" = "0" ]; then -+ log "VERBOSE" "Power Management set to $power_mgmt for $dev." -+ else -+ log "VERBOSE" "Failed to set Power Management to $power_mgmt for $dev." -+ fi -+ fi -+ done -+else -+ log "VERBOSE" "WiFi power setting is disabled." -+fi --- -1.7.2.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0005-switch-wifi-support-to-nl80211.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0005-switch-wifi-support-to-nl80211.patch deleted file mode 100644 index b0c39ea388..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0005-switch-wifi-support-to-nl80211.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 3059bdb03918a5acf239a245f5d78f45253ebf94 Mon Sep 17 00:00:00 2001 -From: Sam Leffler -Date: Wed, 10 Nov 2010 10:20:56 -0800 -Subject: [PATCH 7/8] laptop-mode-tools: switch wifi support to be nl80211-only - -We support only nl80211 WiFi devices; no more WEXT support: -- remove old script that used iwconfig -- add new module script that uses iw to ena/dis power save - -Note this also fixes wifi power save operation for nl80211 devices as the iwconfig code never worked right due to it checking the wrong file under /sys. This means we should now have lower latency on AC because we'll turn off power save. - -BUG=7138 -TEST=gmerge to device; suspend+resume and check power save state of wlan0; also run sh -x laptop_mode auto force and verify the right things are happenig for wifi devices - -Review URL: http://codereview.chromium.org/4675003 - -Change-Id: Ifac0b67c7eb6663fb911be267711c44e6e8538b0 ---- - .../modules/wifi-nl80211-powermgmt | 26 ++++++++++++++++++++ - .../share/laptop-mode-tools/modules/wifi-powermgmt | 24 ------------------ - 2 files changed, 26 insertions(+), 24 deletions(-) - create mode 100755 laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-nl80211-powermgmt - delete mode 100755 laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-powermgmt - -diff -ruN /dev/null laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-nl80211-powermgmt -new file mode 100755 -index 0000000..934d080 ---- /dev/null -+++ laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-nl80211-powermgmt -@@ -0,0 +1,26 @@ -+IW=/usr/sbin/iw -+ -+if [ ! -x $IW ]; then -+ log "VERBOSE" "No $IW program, WiFi power setting is disabled." -+elif [ x$CONTROL_WIFI_POWER = x1 ] ; then -+ if [ $ON_AC -eq 1 ] ; then -+ power_mgmt="off" -+ else -+ power_mgmt="on" -+ fi -+ -+ for DEVICE in /sys/class/net/* ; do -+ if [ -d $DEVICE/phy80211 ]; then -+ dev=`basename $DEVICE` -+ $IW $dev set power_save $power_mgmt -+ ret=$? -+ if [ "$ret" = "0" ]; then -+ log "VERBOSE" "Power Management set to $power_mgmt for $dev." -+ else -+ log "VERBOSE" "Failed to set Power Management to $power_mgmt for $dev." -+ fi -+ fi -+ done -+else -+ log "VERBOSE" "WiFi power setting is disabled." -+fi -diff -ruN laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-powermgmt /dev/null -deleted file mode 100755 -index 2efb1a6..0000000 ---- laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wifi-powermgmt -+++ /dev/null -@@ -1,24 +0,0 @@ --IWCONFIG=iwconfig -- --if [ x$CONTROL_WIFI_POWER = x1 ] ; then -- if [ $ON_AC -eq 1 ] ; then -- power_mgmt="off" -- else -- power_mgmt="on" -- fi -- -- for DEVICE in /sys/class/net/* ; do -- if [ -d $DEVICE/wireless ]; then -- dev=`basename $DEVICE` -- $IWCONFIG $dev power $power_mgmt -- ret=$? -- if [ "$ret" = "0" ]; then -- log "VERBOSE" "Power Management set to $power_mgmt for $dev." -- else -- log "VERBOSE" "Failed to set Power Management to $power_mgmt for $dev." -- fi -- fi -- done --else -- log "VERBOSE" "WiFi power setting is disabled." --fi --- -1.7.2.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0006-Lower-hard-drive-idle-timeout-to-5-seconds.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0006-Lower-hard-drive-idle-timeout-to-5-seconds.patch deleted file mode 100644 index dab3bd97e6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0006-Lower-hard-drive-idle-timeout-to-5-seconds.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 88698f32444ee88ce66e40cf54b8ac3563342723 Mon Sep 17 00:00:00 2001 -From: Sameer Nanda -Date: Mon, 15 Nov 2010 13:38:40 -0800 -Subject: [PATCH 8/8] Lowering hard drive idle timeout to 5 seconds from 20 seconds. - -This change saves about 200mW of power on SSDs. - -Change-Id: I7a7dfdbd7e264386d21da673b1906460ecf1c307 - -BUG= chromium-os:9180 -TEST= ran vmstat & hdparm to see when the last read/write to the disk -happened and when the drive transitioned to standby state. With this -change in place, on battery the hard drive transitioned to standby -state 5 seconds after the last read/write. - -Review URL: http://codereview.chromium.org/5032002 ---- - .../etc/laptop-mode/laptop-mode.conf | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff -ruN laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -index 47a2381..5dc4b38 100644 ---- laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -+++ laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -@@ -273,7 +273,7 @@ CONTROL_HD_IDLE_TIMEOUT=1 - # for battery and for AC with laptop mode on. - # - LM_AC_HD_IDLE_TIMEOUT_SECONDS=20 --LM_BATT_HD_IDLE_TIMEOUT_SECONDS=20 -+LM_BATT_HD_IDLE_TIMEOUT_SECONDS=5 - NOLM_HD_IDLE_TIMEOUT_SECONDS=7200 - - --- -1.7.2.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0008-Export-PATH-to-which.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0008-Export-PATH-to-which.patch deleted file mode 100644 index c59df8799e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0008-Export-PATH-to-which.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- laptop-mode-tools-1.59/usr/sbin/laptop_mode -+++ laptop-mode-tools-1.59/usr/sbin/laptop_mode -@@ -133,7 +133,7 @@ - - LMT_REQ_LOCK="/var/lock/lmt-req.lock" - LMT_INVOC_LOCK="/var/lock/lmt-invoc.lock" --FLOCK=`which flock` -+FLOCK=`PATH=$PATH which flock` - - checkint () - { -@@ -146,7 +146,7 @@ - } - - # Function to handle logging -+LOGGER=`PATH=$PATH which logger`; --LOGGER=`which logger`; - - log () - { diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0009-only-log-VERBOSE-msgs-to-syslog-when-DEBUG.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0009-only-log-VERBOSE-msgs-to-syslog-when-DEBUG.patch deleted file mode 100644 index bd2c8906f5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0009-only-log-VERBOSE-msgs-to-syslog-when-DEBUG.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- laptop-mode-tools-1.59/usr/sbin/laptop_mode -+++ laptop-mode-tools-1.59/usr/sbin/laptop_mode -@@ -165,7 +165,7 @@ - elif [ "$1" = "ERR" ]; then - logger -p $SYSLOG_FACILITY.err -t laptop-mode "$2"; - elif [ "$1" = "VERBOSE" ]; then -- if [ x$VERBOSE_OUTPUT = x1 ]; then -+ if [ x$VERBOSE_OUTPUT = x1 -a "$DEBUG" = 1 ]; then - logger -p $SYSLOG_FACILITY.debug -t laptop-mode "$2"; - fi - else diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0010-Do-not-run-usb-autosuspend-for-user-input-devices.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0010-Do-not-run-usb-autosuspend-for-user-input-devices.patch deleted file mode 100644 index 5d90803efd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0010-Do-not-run-usb-autosuspend-for-user-input-devices.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/usb-autosuspend.conf -+++ laptop-mode-tools-1.59/etc/laptop-mode/conf.d/usb-autosuspend.conf -@@ -34,7 +34,7 @@ - # The list of USB driver types that should not use autosuspend. The driver - # type is given by "DRIVER=..." in a USB device's uevent file. - # Example: AUTOSUSPEND_USBID_BLACKLIST="usbhid usb-storage" --AUTOSUSPEND_USBTYPE_BLACKLIST="" -+AUTOSUSPEND_USBTYPE_BLACKLIST="usbhid" - - # Trigger auto-suspension of the USB deivce under conditional circumstances - BATT_SUSPEND_USB=1 diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0012-Skip-failed-globs-when-finding-module-scripts.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0012-Skip-failed-globs-when-finding-module-scripts.patch deleted file mode 100644 index fba2beba6b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0012-Skip-failed-globs-when-finding-module-scripts.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 27be03f0dbacd4b078ed18ee43ad3c710b569260 Mon Sep 17 00:00:00 2001 -From: Daniel Kurtz -Date: Wed, 11 May 2011 19:09:52 +0800 -Subject: [PATCH] Skip failed globs when finding module scripts - -Globs return the glob expression itself if there are no valid expansions (Unless using the bash-specific "setopt -u nullglob"). -Fix this by detecting and ignoring SCRIPT when it is not a file. - -BUG=chromium-os:15187 -TEST=(0) Enable laptop_mode verbose output (set VERBOSE_OUTPUT=1 in /etc/laptop-mode/laptop-mode.conf) -(1) sudo /usr/sbin/laptop_mode auto force -The following should not be present at end of output: -Module /usr/local/lib/laptop-mode-tools/modules/* is not executable or is to be skipped. -Module /usr/local/share/laptop-mode-tools/modules/* is not executable or is to be skipped. -Module /etc/laptop-mode/modules/* is not executable or is to be skipped. ---- - usr/sbin/laptop_mode | 3 +++ - 1 files changed, 3 insertions(+), 0 deletions(-) - -diff --git a/usr/sbin/laptop_mode b/usr/sbin/laptop_mode -index 7877f80..71a5cbe 100755 ---- laptop-mode-tools-1.59/usr/sbin/laptop_mode -+++ laptop-mode-tools-1.59/usr/sbin/laptop_mode -@@ -1038,6 +1038,9 @@ lmt_main_function () - # Note that the /usr/local/lib path is deprecated. - export FORCE STATE ON_AC ACTIVATE ACTIVATE_WITH_POSSIBLE_DATA_LOSS KLEVEL KMINOR WAS_ACTIVE LM_VERBOSE DEVICES - for SCRIPT in /usr/share/laptop-mode-tools/modules/* /usr/local/lib/laptop-mode-tools/modules/* /usr/local/share/laptop-mode-tools/modules/* /etc/laptop-mode/modules/* ; do -+ # Skip failed globs -+ [ -f "$SCRIPT" ] || continue -+ - if [ -z "$MODULES" ] ; then - # If a module list has not been provided, execute all modules - EXECUTE_SCRIPT=1 --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0013-wireless-power-can-not-find-iwconfig-but-tries-to-po.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0013-wireless-power-can-not-find-iwconfig-but-tries-to-po.patch deleted file mode 100644 index 154f11608a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0013-wireless-power-can-not-find-iwconfig-but-tries-to-po.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 862029ae5315db204af3b35fc12acaa4ca12c50f Mon Sep 17 00:00:00 2001 -From: Daniel Kurtz -Date: Fri, 13 May 2011 18:59:09 +0800 -Subject: [PATCH] wireless-power tries to control wifi even if iwconfig is not found - -When iwconfig isn't found, wireless-power still tries to execute -"$IWCONFIG $IFNAME", which fails with "$IFNAME not found" errors. - -BUG=chromium-os:15185 -TEST=/usr/sbin/laptop_mode auto force -There should be no more errors like this: -/usr/share/laptop-mode-tools/modules/wireless-power: 94: eth0: not found Failed. -/usr/share/laptop-mode-tools/modules/wireless-power: 94: usb0: not found Failed. -/usr/share/laptop-mode-tools/modules/wireless-power: 94: wlan0: not found Failed ---- - usr/share/laptop-mode-tools/modules/wireless-power | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/usr/share/laptop-mode-tools/modules/wireless-power b/usr/share/laptop-mode-tools/modules/wireless-power -index 6407d2a..649b40a 100755 ---- laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wireless-power -+++ laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/wireless-power -@@ -62,6 +62,7 @@ if [ x$CONTROL_WIRELESS_POWER_SAVING = x1 ] || [ x$ENABLE_AUTO_MODULES = x1 -a x - IWCONFIG=/usr/sbin/iwconfig - else - log "VERBOSE" "iwconfig is not installed" -+ exit 1 - fi - - # Translate 1 => on, 0 => off --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0014-Disable-ethernet-control.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0014-Disable-ethernet-control.patch deleted file mode 100644 index 0aa52796b0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0014-Disable-ethernet-control.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/ethernet.conf -+++ laptop-mode-tools-1.59/etc/laptop-mode/conf.d/ethernet.conf.new -@@ -22,7 +22,7 @@ - DEBUG=0 - - # Control Ethernet settings? --CONTROL_ETHERNET="auto" -+CONTROL_ETHERNET=0 - - # Handle throttling of the ethernet deivce under specific circumstances - BATT_THROTTLE_ETHERNET=1 diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0015-Disable-file-system-remount.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0015-Disable-file-system-remount.patch deleted file mode 100644 index 3f0ced8f85..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0015-Disable-file-system-remount.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -+++ laptop-mode-tools-1.59/etc/laptop-mode/laptop-mode.conf -@@ -322,7 +322,7 @@ - # disable this. If you do, then your hard drives will probably not spin down - # anymore. - # --CONTROL_MOUNT_OPTIONS=1 -+CONTROL_MOUNT_OPTIONS=0 - - - # diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0016-Wait-for-laptop_mode-using-shell-commands.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0016-Wait-for-laptop_mode-using-shell-commands.patch deleted file mode 100644 index 33ef7372e9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0016-Wait-for-laptop_mode-using-shell-commands.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- laptop-mode-tools-1.59/etc/rules/lmt-udev -+++ laptop-mode-tools-1.59/etc/rules/lmt-udev -@@ -2,7 +2,24 @@ - # /usr is not guaranteed to be mounted when udev starts - - ( -- . /lib/udev/hotplug.functions -- wait_for_file /usr/sbin/laptop_mode -- exec /usr/sbin/laptop_mode "$@" -+ if [ -e /lib/udev/hotplug.functions ]; then -+ . /lib/udev/hotplug.functions -+ wait_for_file /usr/sbin/laptop_mode -+ exec /usr/sbin/laptop_mode "$@" -+ else -+ local file=$1 -+ local timeout=$2 -+ [ "$timeout" ] || timeout=120 -+ -+ local count=$timeout -+ while [ $count != 0 ]; do -+ [ -e "/usr/sbin/laptop_mode" ] && exec /usr/sbin/laptop_mode "$@" && return 0 -+ sleep 1 -+ count=$(($count - 1)) -+ done -+ -+ mesg "$file did not appear before the timeout!" -+ exit 1 -+ fi -+ - ) & diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0017-usb-autosuspend-black-whitelist-in-quotes.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0017-usb-autosuspend-black-whitelist-in-quotes.patch deleted file mode 100644 index 27bc63dbef..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0017-usb-autosuspend-black-whitelist-in-quotes.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- /laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/usb-autosuspend -+++ /laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/usb-autosuspend -@@ -45,16 +45,16 @@ - - # Checks whether a device is blacklisted by either ID or driver type - blacklisted() { -- listed_by_id $1 $AUTOSUSPEND_USBID_BLACKLIST\ -- || listed_by_type $1 $AUTOSUSPEND_USBTYPE_BLACKLIST\ -+ listed_by_id $1 "$AUTOSUSPEND_USBID_BLACKLIST"\ -+ || listed_by_type $1 "$AUTOSUSPEND_USBTYPE_BLACKLIST"\ - || return 1 - return 0 - } - - # Checks whether a device is whitelisted by either ID or driver type - whitelisted() { -- listed_by_id $1 $AUTOSUSPEND_USBID_WHITELIST\ -- || listed_by_type $1 $AUTOSUSPEND_USBTYPE_WHITELIST\ -+ listed_by_id $1 "$AUTOSUSPEND_USBID_WHITELIST"\ -+ || listed_by_type $1 "$AUTOSUSPEND_USBTYPE_WHITELIST"\ - || return 1 - return 0 - } diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0018-hdparm-check-for-valid-drive.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0018-hdparm-check-for-valid-drive.patch deleted file mode 100644 index 0f2acb27d1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0018-hdparm-check-for-valid-drive.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/hdparm -+++ laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/hdparm.new -@@ -17,6 +17,11 @@ - local MEDIA= - local BUS= - -+ # Make sure the drive exists before checking anything. -+ if [ ! -e $1 ]; then -+ return 1 -+ fi -+ - # If we are running udev, this is the most portable way - # It assumes more or less recent udev (> 070) - if [ $HAVE_UDEVINFO -ne 0 ] ; then diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0019-board-specific-configurations.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0019-board-specific-configurations.patch deleted file mode 100644 index aefcca7a1b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0019-board-specific-configurations.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- laptop-mode-tools-1.59/usr/sbin/laptop_mode -+++ laptop-mode-tools-1.59/usr/sbin/laptop_mode -@@ -230,7 +230,7 @@ - # to modular configuration files, and to support existing laptop-mode.conf - # files from earlier versions, we source the modular configuration files FIRST. - if [ -d /etc/laptop-mode/conf.d ] ; then -- for CONF in /etc/laptop-mode/conf.d/*.conf ; do -+ for CONF in /etc/laptop-mode/conf.d/*.conf /etc/laptop-mode/conf.d/board-specific/*.conf; do - if [ -r "$CONF" ] ; then - . "$CONF" - #Handle individual module debug settings diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0020-hdparm-skips-SSDs-for-power-management.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0020-hdparm-skips-SSDs-for-power-management.patch deleted file mode 100644 index 1b8ddcb693..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0020-hdparm-skips-SSDs-for-power-management.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/hdparm -+++ laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/hdparm.new -@@ -22,6 +22,14 @@ is_capable() { - return 1; - fi - -+ if [ -n "$(hdparm -I $1 | grep SSD)" ]; then -+ # If the device is a SSD, it is not capable of power management. -+ if [ "$2" = "POWERMGMT" ]; then -+ log "VERBOSE" "$1 is a SSD, not capable of power management" -+ return 1 -+ fi -+ fi -+ - # If we are running udev, this is the most portable way - # It assumes more or less recent udev (> 070) - if [ $HAVE_UDEVINFO -ne 0 ] ; then --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0021-alternate-config-dir.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0021-alternate-config-dir.patch deleted file mode 100644 index c44f4a409d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0021-alternate-config-dir.patch +++ /dev/null @@ -1,73 +0,0 @@ ---- laptop-mode-tools-1.59//usr/sbin/laptop_mode 2012-06-15 17:33:49.052591220 -0700 -+++ laptop-mode-tools-1.59//usr/sbin/laptop_mode 2012-06-20 11:02:11.248576131 -0700 -@@ -37,6 +37,12 @@ - # as well, so don't change the format! - LMTVERSION=1.59 - -+if [ -f /var/run/laptop-mode-tools/laptop-mode.conf ]; then -+ LAPTOP_MODE_CONFIG_DIR=/var/run/laptop-mode-tools -+else -+ LAPTOP_MODE_CONFIG_DIR=/etc/laptop-mode -+fi -+ - # This script is loaded from multiple scripts to set the config defaults - # and to read the configuration on top of those. Only when the command is - # recognized does this script do anything else. -@@ -229,26 +235,32 @@ - # Source config. Some config settings have been moved from the main config file - # to modular configuration files, and to support existing laptop-mode.conf - # files from earlier versions, we source the modular configuration files FIRST. -- if [ -d /etc/laptop-mode/conf.d ] ; then -- for CONF in /etc/laptop-mode/conf.d/*.conf /etc/laptop-mode/conf.d/board-specific/*.conf; do -- if [ -r "$CONF" ] ; then -- . "$CONF" -- #Handle individual module debug settings -- if [ "$DEBUG" -eq 1 ]; then -- export $(basename $CONF | cut -d . -f1 | tr "[:lower:]" "[:upper:]" | sed 's/-/_/g')_DEBUG=1 -- log "VERBOSE" "Enabling debug mode for module $CONF" -- fi -- DEBUG=0 -- else -- log "MSG" "Warning: Configuration file $CONF is not readable, skipping." -+ if [ -d ${LAPTOP_MODE_CONFIG_DIR}/conf.d ] ; then -+ for subdir in conf.d conf.d/board-specific; do -+ if [ ! -d ${LAPTOP_MODE_CONFIG_DIR}/$subdir ]; then -+ continue - fi -+ for CONF in ${LAPTOP_MODE_CONFIG_DIR}/$subdir/*.conf; do -+ if [ -r "$CONF" ] ; then -+ . "$CONF" -+ #Handle individual module debug settings -+ if [ "$DEBUG" -eq 1 ]; then -+ export $(basename $CONF | cut -d . -f1 | tr "[:lower:]" "[:upper:]" | \ -+ sed 's/-/_/g')_DEBUG=1 -+ log "VERBOSE" "Enabling debug mode for module $CONF" -+ fi -+ DEBUG=0 -+ else -+ log "MSG" "Warning: Configuration file $CONF is not readable, skipping." -+ fi -+ done - done - fi -- if [ -r /etc/laptop-mode/laptop-mode.conf ] ; then -- . /etc/laptop-mode/laptop-mode.conf -+ if [ -r ${LAPTOP_MODE_CONFIG_DIR}/laptop-mode.conf ] ; then -+ . ${LAPTOP_MODE_CONFIG_DIR}/laptop-mode.conf - else -- log "ERR" "$0: Configuration file /etc/laptop-mode/laptop-mode.conf not present or not readable." -- exit 1 -+ log "ERR" "$0: Configuration file ${LAPTOP_MODE_CONFIG_DIR}/laptop-mode.conf not present or not readable."; -+ exit 1; - fi - - if [ x$ENABLE_LAPTOP_MODE_TOOLS = x0 ]; then -@@ -1049,7 +1061,7 @@ - - # Note that the /usr/local/lib path is deprecated. - export FORCE STATE ON_AC ACTIVATE ACTIVATE_WITH_POSSIBLE_DATA_LOSS KLEVEL KMINOR WAS_ACTIVE LM_VERBOSE DEVICES -- for SCRIPT in /usr/share/laptop-mode-tools/modules/* /usr/local/lib/laptop-mode-tools/modules/* /usr/local/share/laptop-mode-tools/modules/* /etc/laptop-mode/modules/* ; do -+ for SCRIPT in /usr/share/laptop-mode-tools/modules/* /usr/local/lib/laptop-mode-tools/modules/* /usr/local/share/laptop-mode-tools/modules/* ${LAPTOP_MODE_CONFIG_DIR}/modules/* ; do - # Skip failed globs - [ -f "$SCRIPT" ] || continue - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0022-interactive-governor-parameters.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0022-interactive-governor-parameters.patch deleted file mode 100644 index 8737d81342..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0022-interactive-governor-parameters.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- laptop-mode-tools-1.59//usr/share/laptop-mode-tools/modules/cpufreq 2011-08-07 12:30:43.000000000 -0700 -+++ laptop-mode-tools-1.59//usr/share/laptop-mode-tools/modules/cpufreq 2012-06-20 11:46:24.465328480 -0700 -@@ -139,3 +139,39 @@ - done - fi - -+# Optional setting for the interactive governor. -+INTERACTIVE_DIR=/sys/devices/system/cpu/cpufreq/interactive -+ -+get_setting() { -+ if [ $ON_AC -eq 1 ] ; then -+ if [ "$ACTIVATE" -eq 1 ] ; then -+ eval echo \$"LM_AC_CPU_"$1 -+ else -+ eval echo \$"NOLM_AC_CPU_"$1 -+ fi -+ else -+ eval echo \$"BATT_CPU_"$1 -+ fi -+} -+ -+set_optional_interactive_value() { -+ sysfs_name=$1 -+ config_value=$(get_setting $2) -+ -+ if [ -z "${config_value}" ]; then -+ return; -+ fi -+ if [ -f ${INTERACTIVE_DIR}/$sysfs_name ]; then -+ log "VERBOSE" "Setting $sysfs_name for all cpus" -+ set_sysctl $INTERACTIVE_DIR/$sysfs_name ${config_value} -+ fi -+} -+ -+if [ -d ${INTERACTIVE_DIR} ]; then -+ set_optional_interactive_value input_boost INPUT_BOOST -+ set_optional_interactive_value above_hispeed_delay ABOVE_HISPEED_DELAY -+ set_optional_interactive_value go_hispeed_load GO_HISPEED_LOAD -+ set_optional_interactive_value hispeed_freq HISPEED_FREQ -+ set_optional_interactive_value min_sample_time MIN_SAMPLE_TIME -+ set_optional_interactive_value timer_rate TIMER_RATE -+fi diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0023-disable-cpufreq-frequency-control.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0023-disable-cpufreq-frequency-control.patch deleted file mode 100644 index 206afcb6f3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0023-disable-cpufreq-frequency-control.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/cpufreq.conf -+++ laptop-mode-tools-1.59/etc/laptop-mode/conf.d/cpufreq.conf -@@ -31,7 +31,7 @@ - # Should laptop mode tools control the CPU frequency settings? - # - # Set to 0 to disable --CONTROL_CPU_FREQUENCY="auto" -+CONTROL_CPU_FREQUENCY=0 - - - # - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0024-check-for-existence-of-alarm-file.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0024-check-for-existence-of-alarm-file.patch deleted file mode 100644 index ee2e5c3dc0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0024-check-for-existence-of-alarm-file.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- laptop-mode-tools-1.59/usr/sbin/laptop_mode -+++ laptop-mode-tools-1.59/usr/sbin/laptop_mode -@@ -807,7 +807,9 @@ lmt_main_function () - fi - - # $BATT/alarm is the design_capacity_warning of a battery. -- ALARM_LEVEL=$(cat $BATT/alarm) -+ ALARM_LEVEL=0 -+ ALARM_FILE=$BATT/alarm -+ if [ -f $ALARM_FILE ]; then ALARM_LEVEL=$(cat $ALARM_FILE); fi - if [ "$ALARM_LEVEL" -ne 0 ] ; then - if [ "$REMAINING" -le "$ALARM_LEVEL" ] ; then - # Restore the state we had before checking this battery, so that - diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0025-add-blacklists-for-runtime-pm.patch b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0025-add-blacklists-for-runtime-pm.patch deleted file mode 100644 index 4affc8ca14..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/files/0025-add-blacklists-for-runtime-pm.patch +++ /dev/null @@ -1,48 +0,0 @@ ---- laptop-mode-tools-1.59/etc/laptop-mode/conf.d/runtime-pm.conf 2011-08-07 12:30:43.000000000 -0700 -+++ laptop-mode-tools-1.59/etc/laptop-mode/conf.d/runtime-pm.conf 2012-10-17 16:45:20.311104691 -0700 -@@ -25,3 +25,7 @@ CONTROL_RUNTIME_PM="auto" - # Enable debug mode for this module - # Set to 1 if you want to debug this module - DEBUG=0 -+ -+# The list of devices that should not use Runtime Power Management by name. -+# Example: RUNTIME_PM_NAME_BLACKLIST="isl29018 cyapa" -+RUNTIME_PM_NAME_BLACKLIST="" ---- laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/runtime-pm 2011-08-07 12:30:43.000000000 -0700 -+++ laptop-mode-tools-1.59/usr/share/laptop-mode-tools/modules/runtime-pm 2012-10-17 16:39:27.467105016 -0700 -@@ -3,12 +3,33 @@ - # Laptop mode tools module: Runtime Power Management - # - -+# Check whether a device is listed by name -+listed_by_name() { -+ device=$1 -+ list=$2 -+ for name in $list; do -+ grep -qi $name $device/name 2>/dev/null\ -+ && return 0 -+ done -+ return 1 -+} -+ -+# Checks whether a device is blacklisted by name -+blacklisted() { -+ listed_by_name $1 "$RUNTIME_PM_NAME_BLACKLIST" || return 1 -+ return 0 -+} - - activate_runtime_suspend() { - for device in $1/*; do - if [ -f $device/power/control ]; then -- echo "auto" > $device/power/control; -- log "VERBOSE" "Setting Runtime PM auto for device $device" -+ if ! blacklisted $device; then -+ echo "auto" > $device/power/control; -+ log "VERBOSE" "Setting Runtime PM auto for device $device" -+ else -+ echo "on" > $device/power/control; -+ log "VERBOSE" "Setting on for blacklisted device $device" -+ fi - else - log "VERBOSE" "$device does not support Runtime PM" - fi diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59-r15.ebuild b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59-r15.ebuild deleted file mode 120000 index 29e894b4d9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59-r15.ebuild +++ /dev/null @@ -1 +0,0 @@ -laptop-mode-tools-1.59.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59.ebuild b/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59.ebuild deleted file mode 100644 index 55644e58fc..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-laptop/laptop-mode-tools/laptop-mode-tools-1.59.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" - -inherit eutils - -DESCRIPTION="Linux kernel laptop_mode user-space utilities" -HOMEPAGE="http://www.samwel.tk/laptop_mode/" -SRC_URI="http://samwel.tk/laptop_mode/tools/downloads/laptop-mode-tools_1.59.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" - -IUSE="-acpi -apm bluetooth -hal -scsi" - -DEPEND="" - -RDEPEND="sys-apps/ethtool - acpi? ( sys-power/acpid ) - apm? ( sys-apps/apmd ) - bluetooth? ( - || ( - net-wireless/bluez - net-wireless/bluez-utils - ) - ) - hal? ( sys-apps/hal ) - net-wireless/iw - scsi? ( sys-apps/sdparm ) - sys-apps/hdparm" - -PATCHES=( "0001-Enabled-laptop-mode-power-management-control-of.patch" \ - "0002-Add-config-knob-to-control-syslog-facility.patch" \ - "0003-Add-WiFi-power-management-support.patch" \ - "0005-switch-wifi-support-to-nl80211.patch" \ - "0006-Lower-hard-drive-idle-timeout-to-5-seconds.patch" \ - "0008-Export-PATH-to-which.patch" \ - "0009-only-log-VERBOSE-msgs-to-syslog-when-DEBUG.patch" \ - "0010-Do-not-run-usb-autosuspend-for-user-input-devices.patch" \ - "0012-Skip-failed-globs-when-finding-module-scripts.patch" \ - "0013-wireless-power-can-not-find-iwconfig-but-tries-to-po.patch" \ - "0014-Disable-ethernet-control.patch" \ - "0015-Disable-file-system-remount.patch" \ - "0016-Wait-for-laptop_mode-using-shell-commands.patch" \ - "0017-usb-autosuspend-black-whitelist-in-quotes.patch" \ - "0018-hdparm-check-for-valid-drive.patch" \ - "0019-board-specific-configurations.patch" \ - "0020-hdparm-skips-SSDs-for-power-management.patch" \ - "0021-alternate-config-dir.patch" \ - "0022-interactive-governor-parameters.patch" \ - "0023-disable-cpufreq-frequency-control.patch" \ - "0024-check-for-existence-of-alarm-file.patch" \ - "0025-add-blacklists-for-runtime-pm.patch" \ - ) - -src_unpack() { - unpack ${A} - for PATCH in "${PATCHES[@]}"; do - epatch "${FILESDIR}/$PATCH" - done -} - -src_install() { - local ignore="laptop-mode nmi-watchdog" - - dodir /etc/pm/sleep.d - - for module in ${ignore}; do - rm usr/share/laptop-mode-tools/modules/${module} - done - - DESTDIR="${D}" \ - MAN_D="/usr/share/man" \ - INIT_D="none" \ - APM="$(use apm && echo force || echo disabled)" \ - ACPI="$(use acpi && echo force || echo disabled)" \ - PMU="$(use pmu && echo force || echo disabled)" \ - ./install.sh || die "Install failed." - - dodoc Documentation/laptop-mode.txt README - newinitd "${FILESDIR}"/laptop_mode.init-1.4 laptop_mode - - exeinto /etc/pm/power.d - newexe "${FILESDIR}"/laptop_mode_tools.pmutils laptop_mode_tools - - insinto /lib/udev/rules.d - doins etc/rules/99-laptop-mode.rules -} - -pkg_postinst() { - if ! use acpi && ! use apm; then - ewarn - ewarn "Without USE=\"acpi\" or USE=\"apm\" ${PN} can not" - ewarn "automatically disable laptop_mode on low battery." - ewarn - ewarn "This means you can lose up to 10 minutes of work if running" - ewarn "out of battery while laptop_mode is enabled." - ewarn - ewarn "Please see /usr/share/doc/${PF}/laptop-mode.txt.gz for further" - ewarn "information." - ewarn - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/Manifest b/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/Manifest deleted file mode 100644 index 10e540769c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ddccontrol-0.4.2.tar.bz2 421475 SHA256 986f3b4b27ec04e1da493de3aaab01cd5ea9566d7572c1a40b8d43cd7a491e84 SHA512 9e83570a7b481cec35a4f11e690a77b497067c88f97cee7c1927804991d41ca77cfc21edc98b915601c8807d661ea0fcdbb57ca330e8678b6f5fbfb96e4585a8 WHIRLPOOL 63e4fc2e80317bd17f8dac497b6a3985aec463a2ceea16677fd02183478c10c9bd16fca111e76978b5785b7d2b070773d6508637a5b0c6b9d673ccf22089ec0d diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/ddccontrol-0.4.2-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/ddccontrol-0.4.2-r1.ebuild deleted file mode 120000 index 09137cac6a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/ddccontrol-0.4.2-r1.ebuild +++ /dev/null @@ -1 +0,0 @@ -ddccontrol-0.4.2.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/ddccontrol-0.4.2.ebuild b/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/ddccontrol-0.4.2.ebuild deleted file mode 100644 index b613c66eb8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/ddccontrol-0.4.2.ebuild +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-misc/ddccontrol/ddccontrol-0.4.2.ebuild,v 1.8 2010/01/01 18:08:47 ssuominen Exp $ - -inherit eutils autotools - -DESCRIPTION="DDCControl allows control of monitor parameters via DDC" -HOMEPAGE="http://ddccontrol.sourceforge.net/" -SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 ppc x86" -IUSE="gtk gnome doc nls ddcpci" - -RDEPEND="dev-libs/libxml2 - gtk? ( >=x11-libs/gtk+-2.4 ) - gnome? ( >=gnome-base/gnome-panel-2.10 ) - sys-apps/pciutils - nls? ( sys-devel/gettext ) - >=app-misc/ddccontrol-db-20060730" -DEPEND="${RDEPEND} - dev-perl/XML-Parser - dev-util/intltool - doc? ( >=app-text/docbook-xsl-stylesheets-1.65.1 - >=dev-libs/libxslt-1.1.6 - app-text/htmltidy ) - sys-kernel/linux-headers" - -src_unpack() { - unpack ${A} - cd "${S}" - epatch "${FILESDIR}"/${P}-pciutils-libz.patch - - # Fix sandbox violation - for i in Makefile.am Makefile.in; do - sed -i.orig "${S}/src/gddccontrol/${i}" \ - -e "/@INSTALL@/s/ \$(datadir)/ \$(DESTDIR)\/\$(datadir)/" \ - || die "Failed to fix DESTDIR" - done - - # ppc/ppc64 do not have inb/outb/ioperm - # they also do not have (sys|asm)/io.h - if [ "${ARCH/64}" == "ppc" ]; then - for card in sis intel810 ; do - sed -r -i \ - -e "/${card}.Po/d" \ - -e "s~${card}[^[:space:]]*~ ~g" \ - src/ddcpci/Makefile.in - sed -r -i \ - -e "/${card}.Po/d" \ - -e "s~${card}[^[:space:]]*~ ~g" \ - src/ddcpci/Makefile.am - done - sed -i \ - -e '/sis_/d' \ - -e '/i810_/d' \ - src/ddcpci/main.c - fi - - ## Save for a rainy day or future patching - eautoreconf || die "eautoreconf failed" - intltoolize --force || die "intltoolize failed" -} - -src_compile() { - econf $(use_enable doc) \ - $(use_enable gtk gnome) \ - $(use_enable gnome gnome-applet) \ - $(use_enable nls) \ - $(use_enable ddcpci) || die "econf failed" - emake || die "emake failed" -} - -src_install() { - make DESTDIR="${D}" htmldir="/usr/share/doc/${PF}/html" install || die - dodoc AUTHORS ChangeLog NEWS README TODO -} diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/files/ddccontrol-0.4.2-pciutils-libz.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/files/ddccontrol-0.4.2-pciutils-libz.patch deleted file mode 100644 index 8fb6020003..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/ddccontrol/files/ddccontrol-0.4.2-pciutils-libz.patch +++ /dev/null @@ -1,19 +0,0 @@ -Index: configure.ac -=================================================================== -RCS file: /cvsroot/ddccontrol/ddccontrol/configure.ac,v -retrieving revision 1.40 -diff -u -r1.40 configure.ac ---- configure.ac 26 Jul 2006 22:02:15 -0000 1.40 -+++ configure.ac 1 Mar 2007 14:49:35 -0000 -@@ -101,7 +101,10 @@ - DDCPCI= - if test x$support_ddcpci = xyes; then - AC_CHECK_HEADERS([pci/pci.h], [], [AC_MSG_ERROR([PCI utils headers not found, please install pci-utils.], [1])], []) -- AC_CHECK_LIB([pci], [pci_alloc], [], [AC_MSG_ERROR([PCI utils library not found, please install pci-utils.], [1])]) -+ AC_CHECK_LIB([pci], [pci_alloc], [], [ -+ AC_CHECK_LIB([z], [gzopen], [], [AC_MSG_ERROR([PCI utils library not found, please install pci-utils.], [1])]) -+ AC_CHECK_LIB([pci], [pci_fill_info], [], [AC_MSG_ERROR([PCI utils library not found, please install pci-utils.], [1])], [-lz]) -+ ]) - DDCPCI=ddcpci - AC_DEFINE_UNQUOTED(HAVE_DDCPCI, 1, [Define if ddccontrol is built with ddcpci support.]) - fi diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/Manifest b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/Manifest deleted file mode 100644 index 6f708f22c4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST utouch-evemu-1.0.5.tar.gz 306237 SHA256 407378d4271a6be7688ae0f7bcdf0839b2bcade38ed8cf0d9672dfe228d8babf SHA512 22042d6dca6dcaad75fd914de93872b866c4e5f0fe14971d5e1cde7df6549e3d3488be0a138ca2fb57ad211f44a4e6ff5227936a34258f4f9e2bcd9b8dd666f4 WHIRLPOOL 5886c4fe42bee38a11ef9ffcfa843a9eb5115b8b8f8d4899128fca3926afab361bd5ab84a7a5daa69a790c2edf43000a2320fb813965ced700def1458c42ad23 diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-add_resolution.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-add_resolution.patch deleted file mode 100644 index 525b075f22..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-add_resolution.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 47fb64c4ed657bf71579c03fc452129ae8292b88 Mon Sep 17 00:00:00 2001 -From: Dennis Kempin -Date: Thu, 7 Jun 2012 13:53:48 -0700 -Subject: [PATCH 2/2] Added absinfo.resolution to file format - -This change will update the file format to include the resolution -field when serializing absinfo structures. -The read code allows the resolution field to be option to stay -compatible with old files ---- - src/evemu.c | 9 +++++---- - 1 files changed, 5 insertions(+), 4 deletions(-) - -diff --git a/src/evemu.c b/src/evemu.c -index 8501933..29a2c69 100644 ---- a/src/evemu.c -+++ b/src/evemu.c -@@ -234,8 +234,9 @@ static void write_mask(FILE * fp, int index, - - static void write_abs(FILE *fp, int index, const struct input_absinfo *abs) - { -- fprintf(fp, "A: %02x %d %d %d %d\n", index, -- abs->minimum, abs->maximum, abs->fuzz, abs->flat); -+ fprintf(fp, "A: %02x %d %d %d %d %d\n", index, -+ abs->minimum, abs->maximum, abs->fuzz, abs->flat, -+ abs->resolution); - } - - int evemu_write(const struct evemu_device *dev, FILE *fp) -@@ -288,8 +289,8 @@ static void read_abs(struct evemu_device *dev, FILE *fp) - { - struct input_absinfo abs = {0}; - int index; -- while (fscanf(fp, "A: %02x %d %d %d %d\n", &index, -- &abs.minimum, &abs.maximum, &abs.fuzz, &abs.flat) > 0) -+ while (fscanf(fp, "A: %02x %d %d %d %d %d\n", &index, &abs.minimum, -+ &abs.maximum, &abs.fuzz, &abs.flat, &abs.resolution) > 0) - dev->abs[index] = abs; - } - --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-add_slot0.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-add_slot0.patch deleted file mode 100644 index 2832c315d5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-add_slot0.patch +++ /dev/null @@ -1,178 +0,0 @@ -diff --git a/include/evemu.h b/include/evemu.h -index e4ce667..05cef0f 100644 ---- a/include/evemu.h -+++ b/include/evemu.h -@@ -282,10 +282,25 @@ int evemu_read_event_realtime(FILE *fp, struct input_event *ev, - int evemu_record(FILE *fp, int fd, int ms); - - /** -+ * insert_slot0() - insert a slot0 event -+ * @fp: file pointer to read the event from -+ * @ev: pointer to the kernel event to be filled -+ * @evtime: pointer to a timeval struct -+ * -+ * Read events until an EV_SYN/SYN_REPORT event is reached, and insert a slot0 -+ * event. However, if a slot0 event exists already, do not insert anything. -+ * -+ * Returns 1 if a slot0 event is created and inserted, 0 if a slot0 event -+ * exists already. -+ */ -+int insert_slot0(FILE *fp, struct input_event *ev, struct timeval *evtime); -+ -+/** - * evemu_play() - replay events from file to kernel device in realtime - * @fp: file pointer to read the events from - * @fd: file descriptor of kernel device to write to - * @fp_time: file descriptor for keeping playback timing information -+ * @flag_slot0: flag indicating whether to insert a slot 0 event or not - * - * Contiuously reads events from the file and writes them to the - * kernel device, in realtime. The function terminates when end of -@@ -293,7 +308,7 @@ int evemu_record(FILE *fp, int fd, int ms); - * - * Returns zero if successful, negative error otherwise. - */ --int evemu_play(FILE *fp, int fd, FILE *fp_time); -+int evemu_play(FILE *fp, int fd, FILE *fp_time, int flag_slot0); - - /** - * evemu_create() - create a kernel device from the evemu configuration -diff --git a/src/evemu.c b/src/evemu.c -index 02377f1..9d34101 100644 ---- a/src/evemu.c -+++ b/src/evemu.c -@@ -65,6 +65,14 @@ - - #define SYSCALL(call) while (((call) == -1) && (errno == EINTR)) - -+/* To determine if this is a synchronization event */ -+#define EVENT_SYN(type, code, value) \ -+ (type == EV_SYN && code == SYN_REPORT && value == 0) -+ -+/* To determine if this is a slot n event */ -+#define EVENT_SLOT(type, code, value, n) \ -+ (type == EV_ABS && code == ABS_MT_SLOT && value == n) -+ - static void copy_bits(unsigned char *mask, const unsigned long *bits, int bytes) - { - int i; -@@ -378,16 +386,57 @@ int evemu_read_event_realtime(FILE *fp, struct input_event *ev, - return ret; - } - --int evemu_play(FILE *fp, int fd, FILE *fp_time) -+int insert_slot0(FILE *fp, struct input_event *ev, struct timeval *evtime) -+{ -+ int flag_ev0_time = 1; -+ -+ while (evemu_read_event(fp, ev) > 0) { -+ if (flag_ev0_time) { -+ *evtime = ev->time; -+ flag_ev0_time = 0; -+ } -+ if (EVENT_SLOT(ev->type, ev->code, ev->value, 0)) { -+ rewind(fp); -+ return 0; -+ } else if (EVENT_SYN(ev->type, ev->code, ev->value)) { -+ break; -+ } -+ } -+ -+ if (evtime->tv_usec > 0) { -+ evtime->tv_usec--; -+ } else if (evtime->tv_sec > 0) { -+ evtime->tv_usec = 999999; -+ evtime->tv_sec--; -+ } else { -+ evtime->tv_usec = 0; -+ evtime->tv_sec = 0; -+ } -+ ev->time = *evtime; -+ ev->type = EV_ABS; -+ ev->code = ABS_MT_SLOT; -+ ev->value = 0; -+ rewind(fp); -+ -+ return 1; -+} -+ -+int evemu_play(FILE *fp, int fd, FILE *fp_time, int flag_slot0) - { - struct input_event ev; - struct timeval evtime; - struct timespec curr_tp; - int ret; -+ int flag_slot0_inserted = 0; - char *time_format = "E: %lu.%06u %04x %04x %-4d -- playback %lu.%09u\n"; - - memset(&evtime, 0, sizeof(evtime)); -- while (evemu_read_event_realtime(fp, &ev, &evtime) > 0) { -+ if (flag_slot0) { -+ flag_slot0_inserted = insert_slot0(fp, &ev, &evtime); -+ } -+ -+ while (flag_slot0_inserted || -+ evemu_read_event_realtime(fp, &ev, &evtime) > 0) { - if (fp_time != NULL) { - clock_gettime(CLOCK_MONOTONIC, &curr_tp); - fprintf(fp_time, time_format, -@@ -396,6 +445,7 @@ int evemu_play(FILE *fp, int fd, FILE *fp_time) - curr_tp.tv_sec, curr_tp.tv_nsec); - } - SYSCALL(ret = write(fd, &ev, sizeof(ev))); -+ flag_slot0_inserted = 0; - } - - return 0; -diff --git a/tools/evemu-play.c b/tools/evemu-play.c -index f66275e..c2aef3e 100644 ---- a/tools/evemu-play.c -+++ b/tools/evemu-play.c -@@ -50,9 +50,12 @@ int main(int argc, char *argv[]) - { - int fd; - FILE *fp_time = NULL; -- if (argc < 2 || argc > 3) { -- fprintf(stderr, "Usage: %s [output_file]\n", argv[0]); -+ char *output_filename = NULL; -+ int flag_slot0 = 0; -+ if (argc < 2 || argc > 4) { -+ fprintf(stderr, "Usage: %s [--insert-slot0] [output_file]\n", argv[0]); - fprintf(stderr, "\n"); -+ fprintf(stderr, "--insert-slot0: insert a slot 0 event if missing in the very first packet.\n"); - fprintf(stderr, "Event data is read from standard input.\n"); - return -1; - } -@@ -61,15 +64,25 @@ int main(int argc, char *argv[]) - fprintf(stderr, "error: could not open device\n"); - return -1; - } -- if (argc == 3) { -- fp_time = fopen(argv[2], "w"); -- if (fp_time == NULL) { -- fprintf(stderr, "error: could not open output file %s.\n", -- argv[2]); -- return -1; -+ if (argc >= 3) { -+ if (strcmp(argv[2], "--insert-slot0") == 0) { -+ flag_slot0 = 1; -+ if (argc == 4) { -+ output_filename = argv[3]; -+ } -+ } else { -+ output_filename = argv[2]; -+ } -+ if (output_filename != NULL) { -+ fp_time = fopen(output_filename, "w"); -+ if (fp_time == NULL) { -+ fprintf(stderr, "error: could not open output file %s.\n", -+ output_filename); -+ return -1; -+ } - } - } -- if (evemu_play(stdin, fd, fp_time)) { -+ if (evemu_play(stdin, fd, fp_time, flag_slot0)) { - fprintf(stderr, "error: could not describe device\n"); - } - if (fp_time != NULL) { diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-fix_init_absinfo.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-fix_init_absinfo.patch deleted file mode 100644 index 3b09c81371..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-fix_init_absinfo.patch +++ /dev/null @@ -1,28 +0,0 @@ -From a3e4e37ee67be28edc3daa78c97ce9a1e457b0b8 Mon Sep 17 00:00:00 2001 -From: Dennis Kempin -Date: Thu, 7 Jun 2012 17:50:19 -0700 -Subject: [PATCH 1/2] Fixed bug: absinfo not initialized - -When reading device info from a file, the absinfo structure is not initialized. -This causes fields that are not read from file to be set to undefined values. -Fixed by initializing with zero. ---- - src/evemu.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/src/evemu.c b/src/evemu.c -index 9d34101..8501933 100644 ---- a/src/evemu.c -+++ b/src/evemu.c -@@ -286,7 +286,7 @@ static void read_mask(struct evemu_device *dev, FILE *fp) - - static void read_abs(struct evemu_device *dev, FILE *fp) - { -- struct input_absinfo abs; -+ struct input_absinfo abs = {0}; - int index; - while (fscanf(fp, "A: %02x %d %d %d %d\n", &index, - &abs.minimum, &abs.maximum, &abs.fuzz, &abs.flat) > 0) --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-getopt.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-getopt.patch deleted file mode 100644 index 5a45a7c8db..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-getopt.patch +++ /dev/null @@ -1,106 +0,0 @@ -diff --git a/tools/evemu-play.c b/tools/evemu-play.c -index c2aef3e..9c868a2 100644 ---- a/tools/evemu-play.c -+++ b/tools/evemu-play.c -@@ -45,43 +45,77 @@ - #include - #include - #include -+#include -+ -+void usage(char *program_name) { -+ fprintf(stderr, "Usage: %s [--insert-slot0] [--output output_file] \n", program_name); -+ fprintf(stderr, "\n"); -+ fprintf(stderr, "--insert-slot0: insert a slot 0 event if missing in the very first packet.\n"); -+ fprintf(stderr, "--output: specify the output file name.\n"); -+ fprintf(stderr, "Note: event data is read from standard input.\n"); -+} - - int main(int argc, char *argv[]) - { - int fd; -+ int c; -+ int flag_slot0 = 0; - FILE *fp_time = NULL; - char *output_filename = NULL; -- int flag_slot0 = 0; -- if (argc < 2 || argc > 4) { -- fprintf(stderr, "Usage: %s [--insert-slot0] [output_file]\n", argv[0]); -- fprintf(stderr, "\n"); -- fprintf(stderr, "--insert-slot0: insert a slot 0 event if missing in the very first packet.\n"); -- fprintf(stderr, "Event data is read from standard input.\n"); -+ char *device_name = NULL; -+ -+ /* Get options */ -+ while (1) { -+ static struct option long_options[] = { -+ {"insert-slot0", no_argument, 0, 'i'}, -+ {"output", required_argument, 0, 'o'}, -+ {0, 0, 0, 0} -+ }; -+ int option_index = 0; -+ c = getopt_long(argc, argv, "io:", long_options, &option_index); -+ if (c == -1) -+ break; -+ switch (c) { -+ case 0: -+ break; -+ case 'i': -+ flag_slot0 = 1; -+ break; -+ case 'o': -+ output_filename = optarg; -+ break; -+ case '?': -+ default: -+ usage(argv[0]); -+ return -1; -+ } -+ } -+ -+ /* Get command line argument: device */ -+ if (optind >= argc) { -+ fprintf(stderr, "You need to supply the .\n"); -+ usage(argv[0]); - return -1; - } -- fd = open(argv[1], O_WRONLY); -+ device_name = argv[optind]; -+ -+ /* Open the event device */ -+ fd = open(device_name, O_WRONLY); - if (fd < 0) { -- fprintf(stderr, "error: could not open device\n"); -+ fprintf(stderr, "Error: fail to open device %s\n", device_name); - return -1; - } -- if (argc >= 3) { -- if (strcmp(argv[2], "--insert-slot0") == 0) { -- flag_slot0 = 1; -- if (argc == 4) { -- output_filename = argv[3]; -- } -- } else { -- output_filename = argv[2]; -- } -- if (output_filename != NULL) { -- fp_time = fopen(output_filename, "w"); -- if (fp_time == NULL) { -- fprintf(stderr, "error: could not open output file %s.\n", -- output_filename); -- return -1; -- } -+ -+ /* Open the optional output file */ -+ if (output_filename != NULL) { -+ fp_time = fopen(output_filename, "w"); -+ if (fp_time == NULL) { -+ fprintf(stderr, "Error: fail to open output file %s.\n", -+ output_filename); -+ return -1; - } - } -+ - if (evemu_play(stdin, fd, fp_time, flag_slot0)) { - fprintf(stderr, "error: could not describe device\n"); - } diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-play_timestamp.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-play_timestamp.patch deleted file mode 100644 index b531dd5a98..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-play_timestamp.patch +++ /dev/null @@ -1,113 +0,0 @@ -diff --git a/include/evemu.h b/include/evemu.h -index 1f55d5c..e4ce667 100644 ---- a/include/evemu.h -+++ b/include/evemu.h -@@ -285,6 +285,7 @@ int evemu_record(FILE *fp, int fd, int ms); - * evemu_play() - replay events from file to kernel device in realtime - * @fp: file pointer to read the events from - * @fd: file descriptor of kernel device to write to -+ * @fp_time: file descriptor for keeping playback timing information - * - * Contiuously reads events from the file and writes them to the - * kernel device, in realtime. The function terminates when end of -@@ -292,7 +293,7 @@ int evemu_record(FILE *fp, int fd, int ms); - * - * Returns zero if successful, negative error otherwise. - */ --int evemu_play(FILE *fp, int fd); -+int evemu_play(FILE *fp, int fd, FILE *fp_time); - - /** - * evemu_create() - create a kernel device from the evemu configuration -diff --git a/src/Makefile.in b/src/Makefile.in -index 8468f02..6378196 100644 ---- a/src/Makefile.in -+++ b/src/Makefile.in -@@ -70,7 +70,7 @@ am__base_list = \ - am__installdirs = "$(DESTDIR)$(libdir)" \ - "$(DESTDIR)$(libutouch_evemuincludedir)" - LTLIBRARIES = $(lib_LTLIBRARIES) --libutouch_evemu_la_LIBADD = -+libutouch_evemu_la_LIBADD = -lrt - am_libutouch_evemu_la_OBJECTS = evemu.lo - libutouch_evemu_la_OBJECTS = $(am_libutouch_evemu_la_OBJECTS) - libutouch_evemu_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ -diff --git a/src/evemu.c b/src/evemu.c -index df6b250..02377f1 100644 ---- a/src/evemu.c -+++ b/src/evemu.c -@@ -49,6 +49,8 @@ - #include - #include - #include -+#include -+#include - - #ifndef UI_SET_PROPBIT - #define UI_SET_PROPBIT _IOW(UINPUT_IOCTL_BASE, 110, int) -@@ -376,15 +378,25 @@ int evemu_read_event_realtime(FILE *fp, struct input_event *ev, - return ret; - } - --int evemu_play(FILE *fp, int fd) -+int evemu_play(FILE *fp, int fd, FILE *fp_time) - { - struct input_event ev; - struct timeval evtime; -+ struct timespec curr_tp; - int ret; -+ char *time_format = "E: %lu.%06u %04x %04x %-4d -- playback %lu.%09u\n"; - - memset(&evtime, 0, sizeof(evtime)); -- while (evemu_read_event_realtime(fp, &ev, &evtime) > 0) -+ while (evemu_read_event_realtime(fp, &ev, &evtime) > 0) { -+ if (fp_time != NULL) { -+ clock_gettime(CLOCK_MONOTONIC, &curr_tp); -+ fprintf(fp_time, time_format, -+ ev.time.tv_sec, ev.time.tv_usec, -+ ev.type, ev.code, ev.value, -+ curr_tp.tv_sec, curr_tp.tv_nsec); -+ } - SYSCALL(ret = write(fd, &ev, sizeof(ev))); -+ } - - return 0; - } -diff --git a/tools/evemu-play.c b/tools/evemu-play.c -index 7b9b777..f66275e 100644 ---- a/tools/evemu-play.c -+++ b/tools/evemu-play.c -@@ -49,8 +49,9 @@ - int main(int argc, char *argv[]) - { - int fd; -- if (argc != 2) { -- fprintf(stderr, "Usage: %s \n", argv[0]); -+ FILE *fp_time = NULL; -+ if (argc < 2 || argc > 3) { -+ fprintf(stderr, "Usage: %s [output_file]\n", argv[0]); - fprintf(stderr, "\n"); - fprintf(stderr, "Event data is read from standard input.\n"); - return -1; -@@ -60,9 +61,20 @@ int main(int argc, char *argv[]) - fprintf(stderr, "error: could not open device\n"); - return -1; - } -- if (evemu_play(stdin, fd)) { -+ if (argc == 3) { -+ fp_time = fopen(argv[2], "w"); -+ if (fp_time == NULL) { -+ fprintf(stderr, "error: could not open output file %s.\n", -+ argv[2]); -+ return -1; -+ } -+ } -+ if (evemu_play(stdin, fd, fp_time)) { - fprintf(stderr, "error: could not describe device\n"); - } -+ if (fp_time != NULL) { -+ close(fp_time); -+ } - close(fd); - return 0; - } diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-raw_access_api.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-raw_access_api.patch deleted file mode 100644 index f53433c04b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-raw_access_api.patch +++ /dev/null @@ -1,110 +0,0 @@ -From eec34acf18f7dd7320fc1be6ae2b3efb4ca9783d Mon Sep 17 00:00:00 2001 -From: Dennis Kempin -Date: Tue, 12 Jun 2012 15:56:24 -0700 -Subject: [PATCH] api extension: access to raw kernel input_ structures and - bitmasks - -This CL adds functions to the api that allow raw access to the -input_id and input_absinfo structures as well as bitmasks. -This allows the regression test suite to use the evemu API for -reading device properties from files. - -BUG=chromium-os:31732 -TEST=compiles. tested with regression test prototype. ---- - include/evemu.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ - src/evemu.c | 26 ++++++++++++++++++++++++++ - 2 files changed, 72 insertions(+), 0 deletions(-) - -diff --git a/include/evemu.h b/include/evemu.h -index 05cef0f..1fb8390 100644 ---- a/include/evemu.h -+++ b/include/evemu.h -@@ -329,4 +329,50 @@ int evemu_create(const struct evemu_device *dev, int fd); - */ - void evemu_destroy(int fd); - -+/** -+ * evemu_get_id() - raw access to kernel device id structure -+ * @dev: the device in use -+ * -+ * Returns the kernel device id structure. -+ */ -+struct input_id* evemu_get_id(const struct evemu_device *dev); -+ -+/** -+ * evemu_get_abs() - raw access to kernel absinfo structure -+ * @dev: the device in use -+ * @code: the event type code to query -+ * -+ * Returns the input_absinfo structure for provided event type code -+ */ -+const struct info_absinfo* -+evemu_get_abs(const struct evemu_device *dev, int code); -+ -+/** -+ * evemu_get_mask_size() - get the bitmask size -+ * @dev: the device in use -+ * -+ * Returns the size of bitmasks as returned by evemu_get_prop_mask -+ * or evemu_get_mask. Size in bytes. -+ * The bitmask size is static and defined at compile time, but might conflict -+ * when evemu and the calling library are using incompatible kernel header. -+ */ -+int evemu_get_mask_size(const struct evemu_device *dev); -+ -+/** -+ * evemu_get_prop_mask() - raw access to the kernel property bitmask -+ * @dev: the device in use -+ * -+ * Returns a pointer to the property bitmask -+ */ -+const unsigned char* evemu_get_prop_mask(const struct evemu_device *dev); -+ -+/** -+ * evemu_get_mask() - raw access to event bitmasks -+ * @dev: the device in use -+ * @code: the event type code to query -+ * -+ * Returns a pointer to the queried bitmask. -+ */ -+const unsigned char* evemu_get_mask(const struct evemu_device *dev, int code); -+ - #endif -diff --git a/src/evemu.c b/src/evemu.c -index 29a2c69..0dd1cab 100644 ---- a/src/evemu.c -+++ b/src/evemu.c -@@ -564,3 +564,29 @@ void evemu_destroy(int fd) - int ret; - SYSCALL(ret = ioctl(fd, UI_DEV_DESTROY, NULL)); - } -+ -+struct input_id* evemu_get_id(const struct evemu_device *dev) -+{ -+ return &dev->id; -+} -+ -+const struct info_absinfo* -+evemu_get_abs(const struct evemu_device *dev, int code) -+{ -+ return &dev->abs[code]; -+} -+ -+int evemu_get_mask_size(const struct evemu_device *dev) -+{ -+ return EVPLAY_NBYTES; -+} -+ -+const unsigned char* evemu_get_prop_mask(const struct evemu_device *dev) -+{ -+ return dev->prop; -+} -+ -+const unsigned char* evemu_get_mask(const struct evemu_device *dev, int code) -+{ -+ return dev->mask[code]; -+} --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-signal_exit.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-signal_exit.patch deleted file mode 100644 index ee4adabe89..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-signal_exit.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff --git a/tools/evemu-record.c b/tools/evemu-record.c -index afdd400..f75c0bb 100644 ---- a/tools/evemu-record.c -+++ b/tools/evemu-record.c -@@ -42,15 +42,26 @@ - - #include "evemu.h" - #include -+#include - #include - #include - #include -+#include - - #define WAIT_MS 10000 - -+int fd; -+ -+void close_file() -+{ -+ close(fd); -+ exit(1); -+} -+ - int main(int argc, char *argv[]) - { -- int fd; -+ signal(SIGINT, close_file); -+ signal(SIGTERM, close_file); - if (argc < 2) { - fprintf(stderr, "Usage: %s \n", argv[0]); - return -1; diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-timeout.patch b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-timeout.patch deleted file mode 100644 index fefa04c3b1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/files/1.0.5-timeout.patch +++ /dev/null @@ -1,48 +0,0 @@ -From da1ad19f039c303808d36d1cf318cfd44aae77a4 Mon Sep 17 00:00:00 2001 -From: Joseph Hwang -Date: Wed, 30 Nov 2011 14:59:37 +0800 -Subject: [PATCH] 1.0.5-timeout - -The second argument of evemu-record is used as a timeout value. -The default timeout value for evemu-record is 10 seconds if no value -is specified. If the timeout value is set to -1, evemu-record would -not terminate until it receives the SIGINT or SIGTERM signal. ---- - tools/evemu-record.c | 12 +++++++++--- - 1 files changed, 9 insertions(+), 3 deletions(-) - -diff --git a/tools/evemu-record.c b/tools/evemu-record.c -index f75c0bb..4d29e7f 100644 ---- a/tools/evemu-record.c -+++ b/tools/evemu-record.c -@@ -60,10 +60,16 @@ void close_file() - - int main(int argc, char *argv[]) - { -+ int timeout; -+ char *endp; -+ - signal(SIGINT, close_file); - signal(SIGTERM, close_file); -- if (argc < 2) { -- fprintf(stderr, "Usage: %s \n", argv[0]); -+ -+ timeout = argc == 3 ? strtol(argv[2], &endp, 10) : WAIT_MS; -+ if (argc < 2 || argc > 3 || (argc == 3 && *endp != '\0')) { -+ fprintf(stderr, "Usage: %s [timeout_in_ms]\n", -+ argv[0]); - return -1; - } - fd = open(argv[1], O_RDONLY | O_NONBLOCK); -@@ -71,7 +77,7 @@ int main(int argc, char *argv[]) - fprintf(stderr, "error: could not open device\n"); - return -1; - } -- if (evemu_record(stdout, fd, WAIT_MS)) { -+ if (evemu_record(stdout, fd, timeout)) { - fprintf(stderr, "error: could not describe device\n"); - } - close(fd); --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/utouch-evemu-1.0.5-r9.ebuild b/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/utouch-evemu-1.0.5-r9.ebuild deleted file mode 100644 index 965ad07075..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-misc/utouch-evemu/utouch-evemu-1.0.5-r9.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 - -inherit base - -DESCRIPTION="To record and replay data from kernel evdev devices" -HOMEPAGE="http://bitmath.org/code/evemu/" -SRC_URI="http://launchpad.net/utouch-evemu/trunk/v${PV}/+download/${P}.tar.gz" -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="amd64 x86 arm" -IUSE="X" - -RDEPEND="X? ( >=x11-base/xorg-server-1.8 )" -DEPEND="${RDEPEND}" - -PATCHES=( - "${FILESDIR}/1.0.5-signal_exit.patch" - "${FILESDIR}/1.0.5-timeout.patch" - "${FILESDIR}/1.0.5-play_timestamp.patch" - "${FILESDIR}/1.0.5-add_slot0.patch" - "${FILESDIR}/1.0.5-getopt.patch" - "${FILESDIR}/1.0.5-fix_init_absinfo.patch" - "${FILESDIR}/1.0.5-add_resolution.patch" - "${FILESDIR}/1.0.5-raw_access_api.patch" -) - -src_install() { - emake DESTDIR="${D}" install || die "install failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-assets/chromeos-assets-0.0.1-r364.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-assets/chromeos-assets-0.0.1-r364.ebuild deleted file mode 100644 index caf56436da..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-assets/chromeos-assets-0.0.1-r364.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_COMMIT="366c9e7ff1c99364be8eea8e1accc5bcb301773b" -CROS_WORKON_TREE="d003ce8d1ed1a8f362a169685fae11e7aedc0afe" -CROS_WORKON_PROJECT="chromiumos/platform/assets" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Chrome OS assets (images, sounds, etc.)" -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="alex lumpy lumpy64 mario tegra2-ldk" - -DEPEND="media-fonts/croscorefonts - media-fonts/droidfonts-cros - x11-apps/xcursorgen" -RDEPEND="" - -REAL_CURSOR_NAMES=" - fleur - hand2 - left_ptr - sb_h_double_arrow - sb_v_double_arrow - top_left_corner - top_right_corner - xterm" - -# These are cursors for which there is no file, but we want to use -# one of the existing files. So we link them. The first one is an -# X holdover from some mozilla bug, and without it, we will use the -# default left_ptr_watch bitmap. -LINK_CURSORS=" - 08e8e1c95fe2fc01f976f1e063a24ccd:left_ptr_watch - X_cursor:left_ptr - arrow:left_ptr - based_arrow_down:sb_v_double_arrow - based_arrow_up:sb_v_double_arrow - boat:left_ptr - bogosity:left_ptr - bottom_left_corner:top_right_corner - bottom_right_corner:top_left_corner - bottom_side:sb_v_double_arrow - bottom_tee:sb_v_double_arrow - box_spiral:left_ptr - center_ptr:left_ptr - circle:left_ptr - clock:left_ptr - coffee_mug:left_ptr - diamond_cross:left_ptr - dot:left_ptr - dotbox:left_ptr - double_arrow:sb_v_double_arrow - draft_large:left_ptr - draft_small:left_ptr - draped_box:left_ptr - exchange:left_ptr - gobbler:left_ptr - gumby:left_ptr - hand1:hand2 - heart:left_ptr - icon:left_ptr - iron_cross:left_ptr - left_ptr_watch:left_ptr - left_side:sb_h_double_arrow - left_tee:sb_h_double_arrow - leftbutton:left_ptr - ll_angle:top_right_corner - lr_angle:top_left_corner - man:left_ptr - middlebutton:left_ptr - mouse:left_ptr - pencil:left_ptr - pirate:left_ptr - plus:left_ptr - right_ptr:left_ptr - right_side:sb_h_double_arrow - right_tee:sb_h_double_arrow - rightbutton:left_ptr - rtl_logo:left_ptr - sailboat:left_ptr - sb_down_arrow:sb_v_double_arrow - sb_left_arrow:sb_h_double_arrow - sb_right_arrow:sb_h_double_arrow - sb_up_arrow:sb_v_double_arrow - shuttle:left_ptr - sizing:top_left_corner - spider:left_ptr - spraycan:left_ptr - star:left_ptr - target:left_ptr - tcross:left_ptr - top_left_arrow:left_ptr - top_side:sb_v_double_arrow - top_tee:sb_v_double_arrow - trek:left_ptr - ul_angle:top_left_corner - umbrella:left_ptr - ur_angle:top_right_corner - watch:left_ptr" - -CROS_WORKON_LOCALNAME="assets" - -src_install() { - insinto /usr/share/chromeos-assets/images - doins -r "${S}"/images/* - - insinto /usr/share/chromeos-assets/images_100_percent - doins -r "${S}"/images_100_percent/* - - insinto /usr/share/chromeos-assets/images_200_percent - doins -r "${S}"/images_200_percent/* - - insinto /usr/share/chromeos-assets/text - doins -r "${S}"/text/boot_messages - dosbin "${S}"/text/display_boot_message - - insinto /usr/share/chromeos-assets/gaia_auth - doins -r "${S}"/gaia_auth/* - - insinto /usr/share/chromeos-assets/input_methods - doins "${S}"/input_methods/* - - unzip "${S}"/accessibility/extensions/access_chromevox.zip - insinto /usr/share/chromeos-assets/accessibility/extensions/access_chromevox - doins -r "${S}"/chromevox_deploy/* - - insinto /usr/share/chromeos-assets/crosh_builtin/ - unzip -d crosh_builtin_deploy/ "${S}"/chromeapps/crosh_builtin/crosh_builtin.zip - - doins -r "${S}"/crosh_builtin_deploy/* - - insinto /usr/share/fonts/chrome-droid - doins "${S}"/fonts/ChromeDroid*.ttf - - insinto /usr/share/color/bin - if use mario; then - newins "${S}"/color_profiles/mario.bin internal_display.bin - elif use alex; then - newins "${S}"/color_profiles/alex.bin internal_display.bin - elif use lumpy; then - newins "${S}"/color_profiles/lumpy.bin internal_display.bin - fi - - # Don't install cursors when building for Tegra, since the - # current ARGB cursor implementation is performing badly, - # and the fallback to 2-bit hardware cursor works better. - # TODO: Remove this when the display driver has been fixed to - # remove the performance bottlenecks. - if ! use tegra2-ldk; then - local CURSOR_DIR="${D}"/usr/share/cursors/xorg-x11/chromeos/cursors - - mkdir -p "${CURSOR_DIR}" - for i in ${REAL_CURSOR_NAMES}; do - xcursorgen -p "${S}"/cursors "${S}"/cursors/$i.cfg >"${CURSOR_DIR}/$i" - done - - for i in ${LINK_CURSORS}; do - ln -s ${i#*:} "${CURSOR_DIR}/${i%:*}" - done - fi - - mkdir -p "${D}"/usr/share/cursors/xorg-x11/default - echo Inherits=chromeos \ - >"${D}"/usr/share/cursors/xorg-x11/default/index.theme - - # - # Speech synthesis - # - - insinto /usr/share/chromeos-assets/speech_synthesis/patts - - # Speech synthesis component extension code - doins "${S}"/speech_synthesis/patts/manifest.json - doins "${S}"/speech_synthesis/patts/tts_main.js - doins "${S}"/speech_synthesis/patts/tts_service.nmf - - # Speech synthesis voice data - doins "${S}"/speech_synthesis/patts/voice_data_hmm_en-US.js - unzip "${S}"/speech_synthesis/patts/voice_data_hmm_en-US.zip - doins -r "${S}"/voice_data_hmm_en-US - - # Speech synthesis engine (platform-specific native client module) - if use arm ; then - unzip "${S}"/speech_synthesis/patts/tts_service_pexe_arm.nexe.zip - doins "${S}"/tts_service_pexe_arm.nexe - elif use x86 ; then - unzip "${S}"/speech_synthesis/patts/tts_service_x86-32.nexe.zip - doins "${S}"/tts_service_x86-32.nexe - elif use amd64 ; then - unzip "${S}"/speech_synthesis/patts/tts_service_x86-64.nexe.zip - doins "${S}"/tts_service_x86-64.nexe - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-assets/chromeos-assets-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-assets/chromeos-assets-9999.ebuild deleted file mode 100644 index e9b84d76ff..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-assets/chromeos-assets-9999.ebuild +++ /dev/null @@ -1,197 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/platform/assets" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Chrome OS assets (images, sounds, etc.)" -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="alex lumpy lumpy64 mario tegra2-ldk" - -DEPEND="media-fonts/croscorefonts - media-fonts/droidfonts-cros - x11-apps/xcursorgen" -RDEPEND="" - -REAL_CURSOR_NAMES=" - fleur - hand2 - left_ptr - sb_h_double_arrow - sb_v_double_arrow - top_left_corner - top_right_corner - xterm" - -# These are cursors for which there is no file, but we want to use -# one of the existing files. So we link them. The first one is an -# X holdover from some mozilla bug, and without it, we will use the -# default left_ptr_watch bitmap. -LINK_CURSORS=" - 08e8e1c95fe2fc01f976f1e063a24ccd:left_ptr_watch - X_cursor:left_ptr - arrow:left_ptr - based_arrow_down:sb_v_double_arrow - based_arrow_up:sb_v_double_arrow - boat:left_ptr - bogosity:left_ptr - bottom_left_corner:top_right_corner - bottom_right_corner:top_left_corner - bottom_side:sb_v_double_arrow - bottom_tee:sb_v_double_arrow - box_spiral:left_ptr - center_ptr:left_ptr - circle:left_ptr - clock:left_ptr - coffee_mug:left_ptr - diamond_cross:left_ptr - dot:left_ptr - dotbox:left_ptr - double_arrow:sb_v_double_arrow - draft_large:left_ptr - draft_small:left_ptr - draped_box:left_ptr - exchange:left_ptr - gobbler:left_ptr - gumby:left_ptr - hand1:hand2 - heart:left_ptr - icon:left_ptr - iron_cross:left_ptr - left_ptr_watch:left_ptr - left_side:sb_h_double_arrow - left_tee:sb_h_double_arrow - leftbutton:left_ptr - ll_angle:top_right_corner - lr_angle:top_left_corner - man:left_ptr - middlebutton:left_ptr - mouse:left_ptr - pencil:left_ptr - pirate:left_ptr - plus:left_ptr - right_ptr:left_ptr - right_side:sb_h_double_arrow - right_tee:sb_h_double_arrow - rightbutton:left_ptr - rtl_logo:left_ptr - sailboat:left_ptr - sb_down_arrow:sb_v_double_arrow - sb_left_arrow:sb_h_double_arrow - sb_right_arrow:sb_h_double_arrow - sb_up_arrow:sb_v_double_arrow - shuttle:left_ptr - sizing:top_left_corner - spider:left_ptr - spraycan:left_ptr - star:left_ptr - target:left_ptr - tcross:left_ptr - top_left_arrow:left_ptr - top_side:sb_v_double_arrow - top_tee:sb_v_double_arrow - trek:left_ptr - ul_angle:top_left_corner - umbrella:left_ptr - ur_angle:top_right_corner - watch:left_ptr" - -CROS_WORKON_LOCALNAME="assets" - -src_install() { - insinto /usr/share/chromeos-assets/images - doins -r "${S}"/images/* - - insinto /usr/share/chromeos-assets/images_100_percent - doins -r "${S}"/images_100_percent/* - - insinto /usr/share/chromeos-assets/images_200_percent - doins -r "${S}"/images_200_percent/* - - insinto /usr/share/chromeos-assets/text - doins -r "${S}"/text/boot_messages - dosbin "${S}"/text/display_boot_message - - insinto /usr/share/chromeos-assets/gaia_auth - doins -r "${S}"/gaia_auth/* - - insinto /usr/share/chromeos-assets/input_methods - doins "${S}"/input_methods/* - - unzip "${S}"/accessibility/extensions/access_chromevox.zip - insinto /usr/share/chromeos-assets/accessibility/extensions/access_chromevox - doins -r "${S}"/chromevox_deploy/* - - insinto /usr/share/chromeos-assets/crosh_builtin/ - unzip -d crosh_builtin_deploy/ "${S}"/chromeapps/crosh_builtin/crosh_builtin.zip - - doins -r "${S}"/crosh_builtin_deploy/* - - insinto /usr/share/fonts/chrome-droid - doins "${S}"/fonts/ChromeDroid*.ttf - - insinto /usr/share/color/bin - if use mario; then - newins "${S}"/color_profiles/mario.bin internal_display.bin - elif use alex; then - newins "${S}"/color_profiles/alex.bin internal_display.bin - elif use lumpy; then - newins "${S}"/color_profiles/lumpy.bin internal_display.bin - fi - - # Don't install cursors when building for Tegra, since the - # current ARGB cursor implementation is performing badly, - # and the fallback to 2-bit hardware cursor works better. - # TODO: Remove this when the display driver has been fixed to - # remove the performance bottlenecks. - if ! use tegra2-ldk; then - local CURSOR_DIR="${D}"/usr/share/cursors/xorg-x11/chromeos/cursors - - mkdir -p "${CURSOR_DIR}" - for i in ${REAL_CURSOR_NAMES}; do - xcursorgen -p "${S}"/cursors "${S}"/cursors/$i.cfg >"${CURSOR_DIR}/$i" - done - - for i in ${LINK_CURSORS}; do - ln -s ${i#*:} "${CURSOR_DIR}/${i%:*}" - done - fi - - mkdir -p "${D}"/usr/share/cursors/xorg-x11/default - echo Inherits=chromeos \ - >"${D}"/usr/share/cursors/xorg-x11/default/index.theme - - # - # Speech synthesis - # - - insinto /usr/share/chromeos-assets/speech_synthesis/patts - - # Speech synthesis component extension code - doins "${S}"/speech_synthesis/patts/manifest.json - doins "${S}"/speech_synthesis/patts/tts_main.js - doins "${S}"/speech_synthesis/patts/tts_service.nmf - - # Speech synthesis voice data - doins "${S}"/speech_synthesis/patts/voice_data_hmm_en-US.js - unzip "${S}"/speech_synthesis/patts/voice_data_hmm_en-US.zip - doins -r "${S}"/voice_data_hmm_en-US - - # Speech synthesis engine (platform-specific native client module) - if use arm ; then - unzip "${S}"/speech_synthesis/patts/tts_service_pexe_arm.nexe.zip - doins "${S}"/tts_service_pexe_arm.nexe - elif use x86 ; then - unzip "${S}"/speech_synthesis/patts/tts_service_x86-32.nexe.zip - doins "${S}"/tts_service_x86-32.nexe - elif use amd64 ; then - unzip "${S}"/speech_synthesis/patts/tts_service_x86-64.nexe.zip - doins "${S}"/tts_service_x86-64.nexe - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/chromeos-debugd-0.0.0-r123.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/chromeos-debugd-0.0.0-r123.ebuild deleted file mode 100644 index 8e34f30d27..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/chromeos-debugd-0.0.0-r123.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_COMMIT="f6a78c3976f71190d7aa4d310f245410627e77d2" -CROS_WORKON_TREE="acf7bf198dadec0295a36c07a3f28615bd53af35" -CROS_WORKON_PROJECT="chromiumos/platform/debugd" -CROS_WORKON_LOCALNAME=$(basename ${CROS_WORKON_PROJECT}) - -inherit cros-debug cros-workon toolchain-funcs - -DESCRIPTION="Chrome OS debugging service" -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -LIBCHROME_VERS="125070" - -RDEPEND="chromeos-base/chromeos-minijail - chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] - chromeos-base/libchromeos - dev-libs/dbus-c++ - dev-libs/glib:2 - dev-libs/libpcre" -DEPEND="${RDEPEND} - chromeos-base/shill - sys-apps/dbus - virtual/modemmanager" - -src_compile() { - tc-export CC CXX AR RANLIB LD NM PKG_CONFIG OBJCOPY - cros-debug-add-NDEBUG - emake BASE_VER=${LIBCHROME_VERS} -} - -src_test() { - emake tests BASE_VER=${LIBCHROME_VERS} -} - -src_install() { - cd build-opt - into / - dosbin debugd - dodir /debugd - exeinto /usr/libexec/debugd/helpers - doexe helpers/icmp - doexe helpers/netif - doexe helpers/modem_status - doexe "${S}"/src/helpers/minijail-setuid-hack.sh - doexe "${S}"/src/helpers/systrace.sh - doexe helpers/network_status - - insinto /etc/dbus-1/system.d - doins "${FILESDIR}/org.chromium.debugd.conf" - - insinto /etc/init - doins "${FILESDIR}/debugd.conf" - doins "${FILESDIR}/trace_marker-test.conf" -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/chromeos-debugd-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/chromeos-debugd-9999.ebuild deleted file mode 100644 index 15b88e9680..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/chromeos-debugd-9999.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_PROJECT="chromiumos/platform/debugd" -CROS_WORKON_LOCALNAME=$(basename ${CROS_WORKON_PROJECT}) - -inherit cros-debug cros-workon toolchain-funcs - -DESCRIPTION="Chrome OS debugging service" -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -LIBCHROME_VERS="125070" - -RDEPEND="chromeos-base/chromeos-minijail - chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] - chromeos-base/libchromeos - dev-libs/dbus-c++ - dev-libs/glib:2 - dev-libs/libpcre" -DEPEND="${RDEPEND} - chromeos-base/shill - sys-apps/dbus - virtual/modemmanager" - -src_compile() { - tc-export CC CXX AR RANLIB LD NM PKG_CONFIG OBJCOPY - cros-debug-add-NDEBUG - emake BASE_VER=${LIBCHROME_VERS} -} - -src_test() { - emake tests BASE_VER=${LIBCHROME_VERS} -} - -src_install() { - cd build-opt - into / - dosbin debugd - dodir /debugd - exeinto /usr/libexec/debugd/helpers - doexe helpers/icmp - doexe helpers/netif - doexe helpers/modem_status - doexe "${S}"/src/helpers/minijail-setuid-hack.sh - doexe "${S}"/src/helpers/systrace.sh - doexe helpers/network_status - - insinto /etc/dbus-1/system.d - doins "${FILESDIR}/org.chromium.debugd.conf" - - insinto /etc/init - doins "${FILESDIR}/debugd.conf" - doins "${FILESDIR}/trace_marker-test.conf" -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/debugd.conf b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/debugd.conf deleted file mode 100644 index d2fea70df3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/debugd.conf +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -description "Chromium OS debug daemon" -author "chromium-os-dev@chromium.org" - -start on started ui -stop on stopping ui or starting halt or starting reboot -respawn - -pre-start script - TRACING=/sys/kernel/debug/tracing - # NB: check for tracing dir in case the kernel config changes - if [ -d "${TRACING}" ]; then - # enable debugd write access for systrace helper - for file in buffer_size_kb set_event trace trace_clock trace_marker \ - tracing_on; do - chgrp debugd ${TRACING}/${file} && chmod g+w ${TRACING}/${file} - done - fi - # NB: only on exynos5 - MALI_HWC_ENABLE=/sys/devices/platform/mali.0/hwc_enable - if [ -f "${MALI_HWC_ENABLE}" ]; then - chgrp debugd ${MALI_HWC_ENABLE} && chmod g+w ${MALI_HWC_ENABLE} - fi -end script - -exec /sbin/debugd - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/org.chromium.debugd.conf b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/org.chromium.debugd.conf deleted file mode 100644 index f0c30d082b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/org.chromium.debugd.conf +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - 512 - - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/trace_marker-test.conf b/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/trace_marker-test.conf deleted file mode 100644 index b4c6e1925b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/chromeos-debugd/files/trace_marker-test.conf +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -description "Chromium OS debug daemon trace_marker helper" -author "chromium-os-dev@chromium.org" - -# This lets us log trace events to the kernel trace buffer on test images -# where non-Chrome libraries can do logging to the trace_marker file. -# We need this to integrate third-party tracing into combined Chrome -# and system traces. - -#for_test start on starting debugd -stop on stopping ui or starting halt or starting reboot -respawn - -pre-start script - chmod a+w /sys/kernel/debug/tracing/trace_marker -end script - diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r70.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r71.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r70.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0-r71.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild index 66a481eb9d..7c044ddde5 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-dev/coreos-dev-0.1.0.ebuild @@ -58,8 +58,6 @@ RDEPEND=" # TODO: sys-apps/iotools X86_DEPEND=" app-benchmarks/i7z - app-editors/qemacs - sys-apps/dmidecode sys-apps/pciutils " diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cromo/cromo-0.0.1-r163.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cromo/cromo-0.0.1-r163.ebuild deleted file mode 100644 index 9c4487bc2a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/cromo/cromo-0.0.1-r163.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_COMMIT="81b361d89386b89b17b33b9c3e47b45242c791db" -CROS_WORKON_TREE="751811205b7d37b36bced5c2b4efaf6a7312795b" -CROS_WORKON_PROJECT="chromiumos/platform/cromo" -CROS_WORKON_USE_VCSID="1" - -inherit cros-debug cros-workon toolchain-funcs multilib - -DESCRIPTION="Chromium OS modem manager" -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="install_tests" - -LIBCHROME_VERS="125070" - -RDEPEND="chromeos-base/chromeos-minijail - chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] - >=dev-libs/glib-2.0 - dev-libs/dbus-glib - dev-libs/dbus-c++ - dev-cpp/gflags - dev-cpp/glog - install_tests? ( dev-cpp/gtest ) - chromeos-base/libchromeos - chromeos-base/metrics -" - -DEPEND="${RDEPEND} - chromeos-base/system_api - virtual/modemmanager" - -make_flags() { - echo LIBDIR="/usr/$(get_libdir)" BASE_VER=${LIBCHROME_VERS} - use install_tests && echo INSTALL_TESTS=1 -} - -src_compile() { - tc-export CXX AR NM PKG_CONFIG - cros-debug-add-NDEBUG - emake $(make_flags) || die -} - -src_test() { - tc-export CXX AR PKG_CONFIG - cros-debug-add-NDEBUG - emake $(make_flags) tests || die "could not build tests" - if ! use x86 && ! use amd64 ; then - echo Skipping unit tests on non-x86 platform - else - for test in ./*_unittest; do - # TODO: Set up enough DBus so that the server test can work - # Alternately, run the whole thing in a VM/qemu instance - if [ ${test} == "./cromo_server_unittest" ]; then - echo "Skipping server test in host environment" - else - echo "Running ${test}" - "${test}" || die "${test} failed" - fi - done - fi -} - -src_install() { - emake $(make_flags) DESTDIR="${D}" install || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cromo/cromo-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cromo/cromo-9999.ebuild deleted file mode 100644 index 0dbb43a504..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/cromo/cromo-9999.ebuild +++ /dev/null @@ -1,70 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/platform/cromo" -CROS_WORKON_USE_VCSID="1" - -inherit cros-debug cros-workon toolchain-funcs multilib - -DESCRIPTION="Chromium OS modem manager" -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="install_tests" - -LIBCHROME_VERS="125070" - -RDEPEND="chromeos-base/chromeos-minijail - chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] - >=dev-libs/glib-2.0 - dev-libs/dbus-glib - dev-libs/dbus-c++ - dev-cpp/gflags - dev-cpp/glog - install_tests? ( dev-cpp/gtest ) - chromeos-base/libchromeos - chromeos-base/metrics -" - -DEPEND="${RDEPEND} - chromeos-base/system_api - virtual/modemmanager" - -make_flags() { - echo LIBDIR="/usr/$(get_libdir)" BASE_VER=${LIBCHROME_VERS} - use install_tests && echo INSTALL_TESTS=1 -} - -src_compile() { - tc-export CXX AR NM PKG_CONFIG - cros-debug-add-NDEBUG - emake $(make_flags) || die -} - -src_test() { - tc-export CXX AR PKG_CONFIG - cros-debug-add-NDEBUG - emake $(make_flags) tests || die "could not build tests" - if ! use x86 && ! use amd64 ; then - echo Skipping unit tests on non-x86 platform - else - for test in ./*_unittest; do - # TODO: Set up enough DBus so that the server test can work - # Alternately, run the whole thing in a VM/qemu instance - if [ ${test} == "./cromo_server_unittest" ]; then - echo "Skipping server test in host environment" - else - echo "Running ${test}" - "${test}" || die "${test} failed" - fi - done - fi -} - -src_install() { - emake $(make_flags) DESTDIR="${D}" install || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1-r164.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1-r165.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1-r164.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1-r165.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild index 36c207a625..e8e51c1167 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild @@ -117,7 +117,6 @@ RDEPEND="${RDEPEND} app-portage/eclass-manpages app-portage/gentoolkit app-portage/portage-utils - app-editors/qemacs app-editors/vim dev-util/perf sys-apps/pv diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-rackspace-teeth/oem-rackspace-teeth-0.0.1-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-rackspace-teeth/oem-rackspace-teeth-0.0.1-r1.ebuild deleted file mode 120000 index bc5752722b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-rackspace-teeth/oem-rackspace-teeth-0.0.1-r1.ebuild +++ /dev/null @@ -1 +0,0 @@ -oem-rackspace-teeth-0.0.1.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/files/ssh_known_hosts b/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/files/ssh_known_hosts deleted file mode 100644 index ae6270c4ce..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/files/ssh_known_hosts +++ /dev/null @@ -1,4 +0,0 @@ -[git.chromium.org]:6222 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAnpMqy+POoe0kuCL00MFMEI3dJuoGU971N9LxJv9glnXPaXgV1scRjDJ2dAxIN8xi7+L4iymt0m7Ibg7eQUfWK90csub2xo8mltQg2XQCdV7QqUGcdidZsC7oZk8wIq7whS9rwC0F9yXmjLHyAp4nHAE2eqbVk8FOGsHkZdHI9wAo8T305Nh9cbmo2PlUAyJXGFo4eY4ZYo5lRlGMYMf3dTEyZ8XUrSQQVbjjkmexm/T7KZMBmt4BfGjauy2b9pmjmCpZIDlt4nLSAcpmXPAe8Uv3zTsZOXYhS2UgjB0QbLOZzRoOqPkl3lqXumUSiYWwOfu7vj82Y5MwT8v5KBxBOQ== -[gerrit.chromium.org]:29418 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQCfRn+J+e9mU0c4bxFD8v2rhhd3O9WPk435xEtG9FD8a8fOnIubJcpObvQJhfSgYkxVUQOKk97V8b2eGjf72AGBhDQVJMiaLQc8ZGomeNlK/7cWjkJFDoIKQHilHQidz/pgZc/Pu+7Tl2emVGd6425QRK1h47CYtT9IUPt3Jtdv4w== -[gerrit-int.chromium.org]:29418 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQCfdDDvb5HD7hDOtSZPJRg2NkBVnVWRVX4UB+QTDT37rha7rw0k/ZY8GOyT2AlaTiZcufszvFHdPwgCBhSSJscGNizrm1Ne48EpPm+GK4gHQAidKS4+nw1xleZki8qt7D99v/WwOaphuBbWUaupS1Mq36UXikSWdyqPJRVbw7VCpQ== -[gerrit-int.chromium.org]:29419 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQCfdDDvb5HD7hDOtSZPJRg2NkBVnVWRVX4UB+QTDT37rha7rw0k/ZY8GOyT2AlaTiZcufszvFHdPwgCBhSSJscGNizrm1Ne48EpPm+GK4gHQAidKS4+nw1xleZki8qt7D99v/WwOaphuBbWUaupS1Mq36UXikSWdyqPJRVbw7VCpQ== diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/ssh-known-hosts-0.0.1-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/ssh-known-hosts-0.0.1-r2.ebuild deleted file mode 120000 index be4cfc06df..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/ssh-known-hosts-0.0.1-r2.ebuild +++ /dev/null @@ -1 +0,0 @@ -ssh-known-hosts-0.0.1.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/ssh-known-hosts-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/ssh-known-hosts-0.0.1.ebuild deleted file mode 100644 index 7c732f3c1d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/ssh-known-hosts/ssh-known-hosts-0.0.1.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 - -DESCRIPTION="SSH known_hosts file" -HOMEPAGE="http://src.chromium.org" -SRC_URI="" -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="" - -DEPEND="" -RDEPEND="net-misc/openssh" - -src_install() { - insinto /etc/ssh - doins ${FILESDIR}/ssh_known_hosts || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference-config/vboot_reference-config-0.0.1-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference-config/vboot_reference-config-0.0.1-r2.ebuild deleted file mode 100644 index 4e737b916b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference-config/vboot_reference-config-0.0.1-r2.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# -# Determine which systems must use the old (v2) preamble header format, and -# create a config file forcing that format for those systems. -# -# This is only needed to provide backward compatibility for already-shipping -# systems. - -EAPI="4" - -inherit cros-board - -DESCRIPTION="Chrome OS verified boot tools config" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" - -# These are the ONLY systems that should require v2. All others should adapt -# to the new format. -OLD_BOARDS=( - lumpy - lumpy64 - stumpy - stumpy64 - tegra2 - x86-alex - x86-alex32 - x86-mario - x86-mario64 - x86-zgb - x86-zgb32 -) - -S=${WORKDIR} - -src_compile() { - local b - - b=$(get_current_board_no_variant) - mkdir -p "config" - if has "${b}" "${OLD_BOARDS[@]}" ; then - fmt=2 - else - fmt=3 - fi - printf -- '--format\n%s\n' "${fmt}" > "config/vbutil_firmware.options" - printf -- '--format\n%s\n' "${fmt}" > "config/vbutil_kernel.options" -} - -src_install() { - insinto /usr/share/vboot/config - doins config/vbutil_{firmware,kernel}.options -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/workarounds/workarounds-0.0.1-r64.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/workarounds/workarounds-0.0.1-r64.ebuild deleted file mode 100644 index 248677f558..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/workarounds/workarounds-0.0.1-r64.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_COMMIT="b65fd15d628dd6f9169007ec5bdd53cf0c308b25" -CROS_WORKON_TREE="d71cde70a5b6d59eb9e8e3dc8f9bdfa2265f2340" -CROS_WORKON_PROJECT="chromiumos/platform/workarounds" - -inherit cros-workon - -DESCRIPTION="Chrome OS workarounds utilities." -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" -LICENSE="BSD" -KEYWORDS="amd64 arm x86" -SLOT="0" -IUSE="" - -RDEPEND="" - -src_install() { - dobin crosh-workarounds - dobin generate_logs -} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/workarounds/workarounds-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/workarounds/workarounds-9999.ebuild deleted file mode 100644 index 24af6fb94a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/workarounds/workarounds-9999.ebuild +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/platform/workarounds" - -inherit cros-workon - -DESCRIPTION="Chrome OS workarounds utilities." -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" -LICENSE="BSD" -KEYWORDS="~amd64 ~arm ~x86" -SLOT="0" -IUSE="" - -RDEPEND="" - -src_install() { - dobin crosh-workarounds - dobin generate_logs -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gmock32/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gmock32/Manifest deleted file mode 100644 index b7128de2a5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gmock32/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST gmock-1.4.0.tar.bz2 946373 RMD160 9d43853f4abc650b8d8fe9984a6b4baddeea08ce SHA1 ecc8beec7004f36d8d4c0af5237381db4d640126 SHA256 21d37c154a7b8d7a8562b9dde82db7db0a6c188b985c4a18ff3413daae8caa8c diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gmock32/gmock32-1.4.0.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gmock32/gmock32-1.4.0.ebuild deleted file mode 100644 index c39553aeb0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gmock32/gmock32-1.4.0.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/gmock/gmock-1.5.0.ebuild,v 1.2 2011/11/11 20:12:12 vapier Exp $ - -EAPI="4" - -inherit libtool cros-au - -MY_PN=${PN%32} -MY_P="${MY_PN}-${PV}" - -DESCRIPTION="Google's C++ mocking framework" -HOMEPAGE="http://code.google.com/p/googlemock/" -SRC_URI="http://googlemock.googlecode.com/files/${MY_P}.tar.bz2" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="32bit_au" -REQUIRED_USE="32bit_au" -RESTRICT="test" - -RDEPEND=">=dev-cpp/gtest32-${PV}" -DEPEND="${RDEPEND}" - -S="${WORKDIR}/${MY_P}" - -src_unpack() { - default - # make sure we always use the system one - rm -r "${S}"/gtest/Makefile* || die -} - -src_prepare() { - elibtoolize -} - -src_configure() { - board_setup_32bit_au_env - econf --disable-shared --enable-static -} - -src_install() { - dolib.a lib/.libs/libgmock{,_main}.a -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/Manifest deleted file mode 100644 index 2f964b9b08..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST gtest-1.4.0.tar.bz2 525425 RMD160 2688f9e4c68af10a5974af91c0fe2dd551cf72c7 SHA1 d26e1a67ec08a9d6167ecf77c61961c469f448b2 SHA256 c848158f1fca599d6339b9f00e3fdee6153dc518a23c793ccf757f8aa4ad17e9 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/files/gtest-1.4.0-asneeded.patch b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/files/gtest-1.4.0-asneeded.patch deleted file mode 100644 index f8e7d004d7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/files/gtest-1.4.0-asneeded.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur gtest-1.4.0.orig/Makefile.am gtest-1.4.0/Makefile.am ---- gtest-1.4.0.orig/Makefile.am 2009-10-02 16:04:30.000000000 +0900 -+++ gtest-1.4.0/Makefile.am 2010-01-20 16:52:34.000000000 +0900 -@@ -305,7 +305,7 @@ - TESTS += test/gtest-unittest-api_test - check_PROGRAMS += test/gtest-unittest-api_test - test_gtest_unittest_api_test_SOURCES = test/gtest-unittest-api_test.cc --test_gtest_unittest_api_test_LDADD = lib/libgtest_main.la -+test_gtest_unittest_api_test_LDADD = lib/libgtest.la - - TESTS += test/gtest-listener_test - check_PROGRAMS += test/gtest-listener_test diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/files/gtest-1.4.0-gcc-4.7.patch b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/files/gtest-1.4.0-gcc-4.7.patch deleted file mode 100644 index 05c2700048..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/files/gtest-1.4.0-gcc-4.7.patch +++ /dev/null @@ -1,32 +0,0 @@ -fix for upstream for building with newer gcc versions - -r339 | zhanyong.wan | 2009-11-12 21:54:23 -0500 (Thu, 12 Nov 2009) | 2 lines - -...; makes gtest-param-util-generated.h conform to the C++ standard (by Zhanyong Wan). - -Index: include/gtest/internal/gtest-param-util-generated.h -=================================================================== ---- include/gtest/internal/gtest-param-util-generated.h (revision 338) -+++ include/gtest/internal/gtest-param-util-generated.h (revision 339) -@@ -53,6 +53,21 @@ - #if GTEST_HAS_PARAM_TEST - - namespace testing { -+ -+// Forward declarations of ValuesIn(), which is implemented in -+// include/gtest/gtest-param-test.h. -+template -+internal::ParamGenerator< -+ typename ::std::iterator_traits::value_type> ValuesIn( -+ ForwardIterator begin, ForwardIterator end); -+ -+template -+internal::ParamGenerator ValuesIn(const T (&array)[N]); -+ -+template -+internal::ParamGenerator ValuesIn( -+ const Container& container); -+ - namespace internal { - - // Used in the Values() function to provide polymorphic capabilities. diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/gtest32-1.4.0-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/gtest32-1.4.0-r1.ebuild deleted file mode 120000 index 310b42d882..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/gtest32-1.4.0-r1.ebuild +++ /dev/null @@ -1 +0,0 @@ -gtest32-1.4.0.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/gtest32-1.4.0.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/gtest32-1.4.0.ebuild deleted file mode 100644 index 7d3244f820..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-cpp/gtest32/gtest32-1.4.0.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/gtest/gtest-1.4.0.ebuild,v 1.1 2011/11/11 20:09:57 vapier Exp $ - -EAPI="4" -inherit autotools eutils cros-au - -MY_PN=${PN%32} -MY_P="${MY_PN}-${PV}" - -DESCRIPTION="Google C++ Testing Framework" -HOMEPAGE="http://code.google.com/p/googletest/" -SRC_URI="http://googletest.googlecode.com/files/${MY_P}.tar.bz2" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="32bit_au" -REQUIRED_USE="32bit_au" -RESTRICT="test" - -DEPEND="dev-lang/python" -RDEPEND="" - -S="${WORKDIR}/${MY_P}" - -src_prepare() { - sed -i -e "s|/tmp|${T}|g" test/gtest-filepath_test.cc || die "sed failed" - epatch "${FILESDIR}"/${MY_P}-asneeded.patch - epatch "${FILESDIR}"/${MY_P}-gcc-4.7.patch - eautoreconf -} - -src_configure() { - board_setup_32bit_au_env - econf --disable-shared --enable-static -} - -src_install() { - dolib.a lib/.libs/libgtest{,_main}.a -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-db/leveldb/leveldb-0.0.1-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-db/leveldb/leveldb-0.0.1-r3.ebuild deleted file mode 100644 index 51d47171b6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-db/leveldb/leveldb-0.0.1-r3.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (C) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE.makefile file. - -EAPI=4 -CROS_WORKON_COMMIT="fd1218ceec51a67b42921c2a0fe4da08bd7f1a90" -CROS_WORKON_TREE="cddf50f93e1fdd9ade5b86f46b4b7a7b79b4800e" -CROS_WORKON_PROJECT="chromiumos/third_party/leveldb" - -inherit toolchain-funcs cros-debug cros-workon - -DESCRIPTION="A fast and lightweight key/value database library by Google." -HOMEPAGE="http://code.google.com/p/leveldb/" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="test" - -src_compile() { - tc-export CXX OBJCOPY PKG_CONFIG STRIP - cros-debug-add-NDEBUG - emake all libmemenv.a -} - -src_install() { - insinto /usr/include/leveldb - doins include/leveldb/*.h helpers/memenv/memenv.h - dolib.a libleveldb.a libmemenv.a -} - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-db/leveldb/leveldb-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-db/leveldb/leveldb-9999.ebuild deleted file mode 100644 index b0b507f092..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-db/leveldb/leveldb-9999.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright (C) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE.makefile file. - -EAPI=4 -CROS_WORKON_PROJECT="chromiumos/third_party/leveldb" - -inherit toolchain-funcs cros-debug cros-workon - -DESCRIPTION="A fast and lightweight key/value database library by Google." -HOMEPAGE="http://code.google.com/p/leveldb/" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="test" - -src_compile() { - tc-export CXX OBJCOPY PKG_CONFIG STRIP - cros-debug-add-NDEBUG - emake all libmemenv.a -} - -src_install() { - insinto /usr/include/leveldb - doins include/leveldb/*.h helpers/memenv/memenv.h - dolib.a libleveldb.a libmemenv.a -} - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-db/m17n-contrib/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-db/m17n-contrib/Manifest deleted file mode 100644 index ce4e81e126..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-db/m17n-contrib/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST m17n-contrib-1.1.10.tar.gz 631206 SHA256 9be6a2a9264e780f2bd230aa49f96cbd56099d5570ac07dd2427969a6225af33 SHA512 13e95d8c8e77512d5127118db6868d806c68cbb68b257c225deb8ff12d8a6a3fe789748d08352e9dbe89cb35eda787604bcf3fda29395129ef8cd610f265bd1e WHIRLPOOL 4298354294734e832b65301e948bebe86ed7cd1329872d4f520422f5f8a0201c898851b17e140454d3651c5825823af1590fc7d8584bfea2b5b2e5085eca65a0 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-db/m17n-contrib/m17n-contrib-1.1.10-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-db/m17n-contrib/m17n-contrib-1.1.10-r1.ebuild deleted file mode 100644 index ddf8b7dc01..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-db/m17n-contrib/m17n-contrib-1.1.10-r1.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="2" - -DESCRIPTION="Contribution database for the m17n library" -HOMEPAGE="http://www.m17n.org/m17n-lib/" -SRC_URI="mirror://gentoo/${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -DEPEND="dev-db/m17n-db" -RDEPEND="${DEPEND}" - -src_configure() { - # Since the HAVE_M17N_DB check in cofigure does not support cross - # compilation, force to skip the check. The check is redundant -- - # we already have the DEPEND=m17n-db line above. - export HAVE_M17N_DB=yes - - econf || die -} - -src_install() { - emake DESTDIR="${D}" install || die - rm -rf "${D}/usr/share/m17n/icons" || die - dodoc AUTHORS ChangeLog NEWS README || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-lang/v8/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-lang/v8/Manifest deleted file mode 100644 index b457b8c100..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-lang/v8/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST v8-svn-5208.tar.gz 15258194 SHA256 184738f89b45f6fd3f4c26b0357c38a7f2d1bec7789aaa7c86e044c7d64f8411 SHA512 2e81a9327edd338c195968af62a899fd1dd310cbc45aa4bbe4e807b79917510194deec5793989e96ba01c819a6072eb5143cbe62a3956f85d9401d11892d6525 WHIRLPOOL a4e80838c1f42195b8ec9fbb8ce0620774e7cf5ccfc7ee65494c66910bd01a6dfa238a8365594dd14f5a32c6718dd9377a0df717d2a35d55215048430ef31c52 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-lang/v8/v8-5208.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-lang/v8/v8-5208.ebuild deleted file mode 100644 index 9fbf5c0525..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-lang/v8/v8-5208.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright (c) 2009 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 - -inherit toolchain-funcs flag-o-matic - -DESCRIPTION="V8 JavaScript engine." -HOMEPAGE="http://code.google.com/p/v8/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${PN}-svn-${PV}.tar.gz" -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 x86 arm" -IUSE="" - -src_compile() { - if tc-is-cross-compiler ; then - tc-getCC - tc-getCXX - tc-getAR - tc-getRANLIB - tc-getLD - tc-getNM - fi - - # The v8 SConstruct file adds this flag when building dtoa on gcc 4.4, but - # the build also fails when building src/handles-inl.h - # with "src/handles-inl.h:50: error: dereferencing pointer '' - # does break strict-aliasing rules". - # See http://code.google.com/p/v8/issues/detail?id=463 - export CCFLAGS="$CCFLAGS -fno-strict-aliasing \ - $(test-flags-CC -Wno-error=unused-but-set-variable) \ - $(test-flags-CC -Wno-error=conversion-null)" - export GCC_VERSION="44" - - local arch="" - - if use "x86"; then - arch="ia32" - elif use "amd64"; then - arch="x64" - elif use "arm"; then - arch="arm" - else - die "Unknown architecture" - fi - - scons arch=$arch importenv='SYSROOT,CCFLAGS,CC,CXX,AR,RANLIB,LD,NM' \ - || die "v8 compile failed." -} - -src_install() { - dolib libv8.a - - insinto /usr/include - doins include/v8.h -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/ChangeLog b/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/ChangeLog deleted file mode 100644 index 43653bc45b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/ChangeLog +++ /dev/null @@ -1,104 +0,0 @@ -# ChangeLog for dev-libs/libelf -# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/libelf/ChangeLog,v 1.28 2009/11/21 09:24:32 patrick Exp $ - -*libelf-0.8.12 (21 Nov 2009) - - 21 Nov 2009; Patrick Lauer +libelf-0.8.12.ebuild: - Bump, fixes #293915 - - 22 May 2009; Alexis Ballier libelf-0.8.10.ebuild: - keyword ~sparc-fbsd - - 16 Nov 2008; Diego E. Pettenò - libelf-0.8.10.ebuild: - Workaround parallel install failures (use -j1 for install). - - 07 Jun 2008; Jeroen Roovers libelf-0.8.4.ebuild: - Fix SRC_URI and HOMEPAGE 404s. - -*libelf-0.8.10 (07 Jun 2008) - - 07 Jun 2008; Jeroen Roovers +libelf-0.8.10.ebuild: - Version bump. - - 19 Oct 2007; Roy Marples libelf-0.8.9.ebuild: - Keyword ~x86-fbsd. - - 29 Jun 2007; Joel Martin - files/libelf-0.8.9-parallelmakefix.patch: - After discussion with maintainer, change mkinstalldirs to be - more parallel safe. - - 29 Jun 2007; Joel Martin - files/libelf-0.8.9-parallelmakefix.patch: - Update parallel make patch to only mkinstalldirs if not already there. - - 20 Jun 2007; Joel Martin - +files/libelf-0.8.9-parallelmakefix.patch, libelf-0.8.9.ebuild: - Apply new parallel patch to 0.8.9 - -*libelf-0.8.9 (17 Jun 2007) - - 17 Jun 2007; Tiziano Müller +libelf-0.8.9.ebuild: - Version bump. - - 14 May 2007; Thilo Bangert metadata.xml: - add no-herd - - 22 Feb 2007; Piotr Jaroszyński ChangeLog: - Transition to Manifest2. - - 06 Jan 2007; Danny van Dyk -libelf-0.8.5.ebuild: - QA: Removed unused versions. - -*libelf-0.8.6 (03 Sep 2005) - - 03 Sep 2005; Daniel Black - +files/libelf-0.8.6-parallelmakefix.patch, +libelf-0.8.6.ebuild: - version bump. homepage/src_uri change - - 29 Aug 2005; Danny van Dyk libelf-0.8.4.ebuild, - libelf-0.8.5.ebuild: - Fixed multilib-strict BUG #104171. - -*libelf-0.8.5 (09 Feb 2005) - - 09 Feb 2005; Mike Frysinger +libelf-0.8.5.ebuild: - Version bump. - - 14 Nov 2003; Brad House libelf-0.8.4.ebuild: - add ~amd64 flag - -*libelf-0.8.4 (11 Nov 2003) - - 11 Nov 2003; Mike Frysinger : - Version bump. - -*libelf-0.8.2 (29 Sep 2002) - - 08 Feb 2003; Guy Martin libelf-0.8.2.ebuild : - Added hppa to keywords. - - 02 Jan 2003; Martin Schlemmer : - Add "!dev-libs/elfutils" to DEPEND, as elfutils replaces libelf ... - - 18 Dec 2002; Mark Guertin libelf-0.8.2.ebuild : - set ppc in keywords - - 06 Dec 2002; Rodney Rees : changed sparc ~sparc keywords - - 29 Sep 2002; Martin Schlemmer : - - Bump version to fully fix bug #4540. Also fix the docs being installed, - and compat headers not installed when package was already merged. - -*libelf-0.7.0 (1 Feb 2002) - - 1 Feb 2002; G.Bevin ChangeLog : - - Added initial ChangeLog which should be updated whenever the package is - updated in any way. This changelog is targetted to users. This means that the - comments should well explained and written in clean English. The details about - writing correct changelogs are explained in the skel.ChangeLog file which you - can find in the root directory of the portage repository. diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/Manifest deleted file mode 100644 index c4b91b0ae6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST libelf-0.8.12.tar.gz 148090 RMD160 29ca31074134a2bc99b207adaddd10924e46d899 SHA1 b6ff5c0262418fbca8ce281f9f927e25181f4237 SHA256 ec65a3922d718c32fd4e4836db980c76cc7a6e5a8a4b05303418366158a29495 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/libelf-0.8.12.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/libelf-0.8.12.ebuild deleted file mode 100644 index 3f0455d9f2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/libelf-0.8.12.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/libelf/libelf-0.8.12.ebuild,v 1.1 2009/11/21 09:24:32 patrick Exp $ - -EAPI=2 - -inherit autotools eutils multilib - -DESCRIPTION="A ELF object file access library" -HOMEPAGE="http://www.mr511.de/software/" -SRC_URI="http://www.mr511.de/software/${P}.tar.gz" - -LICENSE="LGPL-2" -SLOT="0" -KEYWORDS="arm ~alpha amd64 ~hppa ~ppc ~sparc x86 ~sparc-fbsd ~x86-fbsd" -IUSE="debug nls elibc_FreeBSD" - -DEPEND="!dev-libs/elfutils - nls? ( sys-devel/gettext )" -RDEPEND="${DEPEND}" - -src_unpack() { - unpack ${A} - cd "${S}" - - if use elibc_FreeBSD; then - # Stop libelf from stamping on the system nlist.h - sed -i -e 's:nlist.h::g' lib/Makefile.in || die - - # Enable shared libs - sed -i \ - -e 's:\*-linux\*\|\*-gnu\*:\*-linux\*\|\*-gnu\*\|\*-freebsd\*:' \ - configure || die - fi -} - -src_prepare() { - eautoreconf -} - -src_configure() { - econf \ - $(use_enable nls) \ - $(use_enable debug) \ - --enable-shared \ - || die "econf failed" -} - -src_compile() { - emake || die "emake failed" -} - -src_install() { - emake -j1 \ - prefix="${D}"/usr \ - libdir="${D}"usr/$(get_libdir) \ - install \ - install-compat || die "emake install failed" - dodoc ChangeLog VERSION README -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/metadata.xml b/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/metadata.xml deleted file mode 100644 index 54494c4bb8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libelf/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - -no-herd - -maintainer-needed@gentoo.org - - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/ChangeLog b/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/ChangeLog deleted file mode 100644 index ae947597be..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/ChangeLog +++ /dev/null @@ -1,567 +0,0 @@ -# ChangeLog for dev-libs/libgcrypt -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/libgcrypt/ChangeLog,v 1.142 2010/10/16 15:43:31 arfrever Exp $ - - 16 Oct 2010; Arfrever Frehtes Taifersar Arahesis - -libgcrypt-1.4.5.ebuild: - Delete. - - 16 Oct 2010; Jeroen Roovers libgcrypt-1.4.6.ebuild: - Stable for PPC (bug #337121). - - 15 Oct 2010; Jeroen Roovers libgcrypt-1.4.6.ebuild: - Stable for HPPA (bug #337121). - - 30 Sep 2010; Brent Baude libgcrypt-1.4.6.ebuild: - stable ppc64, bug 337121 - - 18 Sep 2010; Raúl Porcel libgcrypt-1.4.6.ebuild: - alpha/arm/ia64/m68k/s390/sh/sparc stable wrt #337121 - - 14 Sep 2010; Pawel Hajdan jr - libgcrypt-1.4.6.ebuild: - x86 stable wrt bug #337121 - - 13 Sep 2010; Markos Chandras libgcrypt-1.4.6.ebuild: - Stable on amd64 wrt bug #337121 - - 30 Aug 2010; Patrick Lauer libgcrypt-1.4.6.ebuild: - Fixing for non-bash shells #331907 - -*libgcrypt-1.4.6 (15 Jul 2010) - - 15 Jul 2010; Arfrever Frehtes Taifersar Arahesis - -libgcrypt-1.4.0-r1.ebuild, -files/libgcrypt-1.4.0-HMAC-SHA-384-512.patch, - -libgcrypt-1.4.3-r1.ebuild, -files/libgcrypt-1.4.3-HMAC-SHA-384-512.patch, - -libgcrypt-1.4.4.ebuild, +libgcrypt-1.4.6.ebuild, metadata.xml: - Version bump. - - 07 Mar 2010; Samuli Suominen - libgcrypt-1.4.5.ebuild: - amd64 stable wrt #300707 - - 07 Feb 2010; Raúl Porcel libgcrypt-1.4.5.ebuild: - alpha/arm/ia64/m68k/s390/sh/sparc stable wrt #300707 - - 03 Feb 2010; Christian Faulhammer - libgcrypt-1.4.5.ebuild: - stable x86, bug 300707 - - 19 Jan 2010; nixnut libgcrypt-1.4.5.ebuild: - ppc stable #300707 - - 14 Jan 2010; Jeroen Roovers libgcrypt-1.4.5.ebuild: - Stable for HPPA (bug #300707). - - 13 Jan 2010; Brent Baude libgcrypt-1.4.5.ebuild: - stable ppc64, bug 300707 - - 13 Dec 2009; Raúl Porcel libgcrypt-1.4.4.ebuild: - m68k stable, thanks to kolla for testing - -*libgcrypt-1.4.5 (12 Dec 2009) - - 12 Dec 2009; Arfrever Frehtes Taifersar Arahesis - +libgcrypt-1.4.5.ebuild: - Version bump. - - 07 Nov 2009; Arfrever Frehtes Taifersar Arahesis - libgcrypt-1.4.4.ebuild: - Disable C++ checks (bug #288334). - - 05 Apr 2009; Arfrever Frehtes Taifersar Arahesis - libgcrypt-1.4.4.ebuild: - Replace -O3 with -O2 on x86 when using GCC 4.1 (bug #263589). - - 25 Mar 2009; Joseph Jezak libgcrypt-1.4.4.ebuild: - Marked ppc stable for bug #263319. - - 23 Mar 2009; Jeroen Roovers libgcrypt-1.4.4.ebuild: - Stable for HPPA (bug #263319). - - 23 Mar 2009; Brent Baude libgcrypt-1.4.4.ebuild: - stable ppc64, bug 263319 - - 23 Mar 2009; Raúl Porcel libgcrypt-1.4.4.ebuild: - arm/ia64/s390/sh/sparc stable wrt #263319 - - 22 Mar 2009; Tobias Klausmann - libgcrypt-1.4.4.ebuild: - Stable on alpha, bug #263319 - - 22 Mar 2009; Markus Meier libgcrypt-1.4.4.ebuild: - amd64/x86 stable, bug #263319 - -*libgcrypt-1.4.4 (25 Jan 2009) - - 25 Jan 2009; Daniel Black - -files/libgcrypt-1.2.3-strict-aliasing.patch, -libgcrypt-1.2.4.ebuild, - -libgcrypt-1.4.1.ebuild, +libgcrypt-1.4.4.ebuild: - version bump as per bug #256049 thanks Arfrever Frehtes Taifersar Arahesis. - Dropped IDEA support in this release. removed old versions - -*libgcrypt-1.4.3-r1 (06 Nov 2008) - - 06 Nov 2008; Daniel Black - +files/libgcrypt-1.4.0-HMAC-SHA-384-512.patch, - +files/libgcrypt-1.4.3-HMAC-SHA-384-512.patch, libgcrypt-1.4.0-r1.ebuild, - -libgcrypt-1.4.3.ebuild, +libgcrypt-1.4.3-r1.ebuild: - hash calculation fix as per upstream - http://marc.info/?l=gcrypt-devel&m=122591162816263&w=2 - -*libgcrypt-1.4.3 (03 Nov 2008) - - 03 Nov 2008; Daniel Black - +libgcrypt-1.4.3.ebuild: - version bump thanks to Arfrever in bug #237855 - - 06 Aug 2008; Ulrich Mueller metadata.xml: - Add USE flag description to metadata wrt GLEP 56. - -*libgcrypt-1.4.1 (25 Apr 2008) - - 25 Apr 2008; Alon Bar-Lev +libgcrypt-1.4.1.ebuild: - Version bump - - 13 Feb 2008; Alon Bar-Lev -libgcrypt-1.2.2-r1.ebuild: - Cleanup - - 31 Jan 2008; Alon Bar-Lev libgcrypt-1.4.0-r1.ebuild: - Fix dependency on libgpg-error, bug#208115 - - 29 Jan 2008; Alon Bar-Lev libgcrypt-1.2.4.ebuild, - libgcrypt-1.4.0-r1.ebuild: - Modify IDEA URL - - 21 Jan 2008; Jeroen Roovers libgcrypt-1.4.0-r1.ebuild: - Stable for HPPA (bug #206666). - - 20 Jan 2008; Raúl Porcel libgcrypt-1.4.0-r1.ebuild: - alpha/ia64/sparc/x86 stable wrt #206666 - - 20 Jan 2008; Christoph Mende - libgcrypt-1.4.0-r1.ebuild: - Stable on amd64 wrt bug #206666 - - 20 Jan 2008; nixnut libgcrypt-1.4.0-r1.ebuild: - Stable on ppc wrt bug 206666 - - 20 Jan 2008; Brent Baude libgcrypt-1.4.0-r1.ebuild: - Marking libgcrypt-1.4.0-r1 ppc64 for bug 206666 - - 22 Dec 2007; nixnut libgcrypt-1.4.0-r1.ebuild: - Added ~ppc wrt bug 201901 - - 15 Dec 2007; Alon Bar-Lev libgcrypt-1.2.4.ebuild, - libgcrypt-1.4.0-r1.ebuild: - Remove reference to mediacrypt, bug#202378 - -*libgcrypt-1.4.0-r1 (14 Dec 2007) - - 14 Dec 2007; Alon Bar-Lev -libgcrypt-1.4.0.ebuild, - +libgcrypt-1.4.0-r1.ebuild: - Revbump - - 12 Dec 2007; Markus Rothe libgcrypt-1.4.0.ebuild: - Added ~ppc64; bug #201901 - - 11 Dec 2007; Alon Bar-Lev libgcrypt-1.4.0.ebuild: - Removed padlock, bug#201917, thanks to many - -*libgcrypt-1.4.0 (10 Dec 2007) - - 10 Dec 2007; Alon Bar-Lev +libgcrypt-1.4.0.ebuild: - Version bump - - 10 Nov 2007; Alon Bar-Lev -libgcrypt-1.1.12.ebuild, - -libgcrypt-1.1.94.ebuild, -libgcrypt-1.2.0.ebuild, - -libgcrypt-1.2.1.ebuild, -libgcrypt-1.2.1-r1.ebuild, - -libgcrypt-1.2.2.ebuild, -libgcrypt-1.2.3.ebuild, - -libgcrypt-1.2.3-r1.ebuild: - Cleanup - - 09 Oct 2007; Christoph Mende libgcrypt-1.2.4.ebuild: - Stable on amd64 wrt bug #194113 - - 05 Oct 2007; Tom Gall libgcrypt-1.2.4.ebuild: - stable on ppc64 - - 02 Oct 2007; Raúl Porcel libgcrypt-1.2.4.ebuild: - alpha/ia64 stable wrt #194113 - - 30 Sep 2007; Markus Meier libgcrypt-1.2.4.ebuild: - x86 stable, bug #194113 - - 29 Sep 2007; Lars Weiler libgcrypt-1.2.4.ebuild: - stable ppc, bug #194113 - - 29 Sep 2007; Jeroen Roovers libgcrypt-1.2.4.ebuild: - Stable for HPPA (bug #194113). - - 28 Sep 2007; Ferris McCormick libgcrypt-1.2.4.ebuild: - Sparc stable --- Bug #194113 --- all tests pass. - - 30 Aug 2007; Christian Heim metadata.xml: - Removing liquidx from metadata due to his retirement (see #171155 for - reference). - - 03 Mar 2007; Marius Mauch libgcrypt-1.2.3-r1.ebuild, - libgcrypt-1.2.4.ebuild: - Replacing einfo with elog/ewarn - -*libgcrypt-1.2.4 (02 Feb 2007) - - 02 Feb 2007; Alon Bar-Lev +libgcrypt-1.2.4.ebuild: - Version bump - - 12 Jan 2007; Alon Bar-Lev libgcrypt-1.2.3-r1.ebuild: - Remove WANT_AUTO* - - 10 Jan 2007; Alon Bar-Lev - +files/libgcrypt-1.2.3-strict-aliasing.patch, libgcrypt-1.2.3-r1.ebuild: - Fixed strict-aliasing qa issue, bug#161370 - - 05 Jan 2007; Alon Bar-Lev libgcrypt-1.2.3-r1.ebuild: - Added autotools variables, bug#160135, thanks to jacub - - 05 Jan 2007; Alon Bar-Lev libgcrypt-1.2.3-r1.ebuild: - Fixing idea url to upstream, who publish our patch now - - 04 Jan 2007; Diego Pettenò - libgcrypt-1.2.3-r1.ebuild: - Fix atom. - -*libgcrypt-1.2.3-r1 (04 Jan 2007) - - 04 Jan 2007; Alon Bar-Lev +libgcrypt-1.2.3-r1.ebuild: - Add idea algirithm patch, modified version of - http://www.kfwebs.net/articles/article/42/GnuPG-2.0---IDEA-support, - bug#159870 - - 28 Dec 2006; Fabian Groffen libgcrypt-1.2.0.ebuild, - libgcrypt-1.2.1.ebuild, libgcrypt-1.2.1-r1.ebuild, libgcrypt-1.2.2.ebuild, - libgcrypt-1.2.2-r1.ebuild, libgcrypt-1.2.3.ebuild: - Dropped ppc-macos keyword, see you in prefix - -*libgcrypt-1.2.3 (29 Oct 2006) - - 29 Oct 2006; Alon Bar-Lev +libgcrypt-1.2.3.ebuild: - Version bump - - 19 Oct 2006; Roy Marples libgcrypt-1.2.2-r1.ebuild: - Added ~sparc-fbsd keyword. - - 09 Jul 2006; Joshua Kinard libgcrypt-1.2.2-r1.ebuild: - Marked stable on mips. - - 27 Apr 2006; Marien Zwart - files/digest-libgcrypt-1.1.12, files/digest-libgcrypt-1.1.94, - files/digest-libgcrypt-1.2.0, files/digest-libgcrypt-1.2.1, - files/digest-libgcrypt-1.2.1-r1, Manifest: - Fixing SHA256 digest, pass four - - 23 Apr 2006; Diego Pettenò - libgcrypt-1.2.2-r1.ebuild: - Actually add the ~x86-fbsd keyword. - - 23 Apr 2006; Diego Pettenò - libgcrypt-1.2.2-r1.ebuild: - Don't run econf two times, it's useless. - - 23 Apr 2006; Diego Pettenò - libgcrypt-1.2.2-r1.ebuild: - Run elibtoolize and add ~x86-fbsd keyword. - - 21 Feb 2006; Marcelo Goes - -files/libgcrypt-1.2.1-GNU-stack-fix.patch, - -files/libgcrypt-1.2.1-info-entry-fix.patch, - -files/libgcrypt-1.2.1-ppc64-fix.patch, libgcrypt-1.2.1.ebuild, - libgcrypt-1.2.1-r1.ebuild, libgcrypt-1.2.2.ebuild, - libgcrypt-1.2.2-r1.ebuild: - Move patches to mirrors, fixes large files bug 123634 reported by Mark - Loeser . - - 14 Feb 2006; Fabian Groffen - libgcrypt-1.2.2-r1.ebuild: - Marked ppc-macos stable bug (#122760) - - 06 Feb 2006; Simon Stelling libgcrypt-1.2.2-r1.ebuild: - stable on amd64 - - 04 Feb 2006; Aron Griffis libgcrypt-1.2.2-r1.ebuild: - Mark 1.2.2-r1 stable on alpha - - 02 Jan 2006; Michael Hanselmann - libgcrypt-1.2.2-r1.ebuild: - Stable on ppc. - - 31 Dec 2005; Markus Rothe libgcrypt-1.2.2.ebuild, - libgcrypt-1.2.2-r1.ebuild: - Added tgall's fix for ppc64 to later versions, too. - - 30 Dec 2005; Markus Rothe libgcrypt-1.2.2-r1.ebuild: - Stable on ppc64 - - 29 Dec 2005; Gustavo Zacarias - libgcrypt-1.2.2-r1.ebuild: - Stable on sparc - - 29 Dec 2005; Mark Loeser libgcrypt-1.2.2-r1.ebuild: - Stable on x86; bug #117034 - - 25 Nov 2005; Tom Gall libgcrypt-1.2.1.ebuild, - +libgcrypt-1.2.1-ppc64-fix.patch: - bug #90211 - - 10 Nov 2005; Michele Noberasco libgcrypt-1.2.2-r1.ebuild files/digest-libgcrypt-1.2.2-r1 - libgcrypt-1.2.2.ebuild files/digest-libgcrypt-1.2.2 +files/libgcrypt-1.2.1-info-entry-fix.patch: - Added small patch to fix info file so that its subsequent index entry works. - -*libgcrypt-1.2.2-r1 (08 Nov 2005) - - 08 Nov 2005; Daniel Black libgcrypt-1.2.2-r1.ebuild files/digest-libgcrypt-1.2.2-r1 - Added portable nonexecutable stack method thanks to Werner - -*libgcrypt-1.2.2 (07 Nov 2005) - - 07 Nov 2005; Daniel Black - +libgcrypt-1.2.2.ebuild: - verison bump as per bug #108677 - - 04 Sep 2005; Daniel Black - +files/libgcrypt-1.2.1-GNU-stack-fix.patch, libgcrypt-1.2.1-r1.ebuild: - nonexecutable stacks hopefully fixed for all platforms (bug #96022). Thanks - to the Pax Team who I could not of fixed it without - -*libgcrypt-1.2.1-r1 (20 Aug 2005) - - 20 Aug 2005; Daniel Black libgcrypt-1.2.1-r1.ebuild files/digest-libgcrypt-1.2.1-r1 - revision bump to force pic static libraries (bug #96022) - - 17 Aug 2005; MATSUU Takuto libgcrypt-1.2.1.ebuild: - Stable on sh. - - 07 Aug 2005; Daniel Black - libgcrypt-1.1.12.ebuild, libgcrypt-1.1.94.ebuild, libgcrypt-1.2.0.ebuild, - libgcrypt-1.2.1.ebuild: - changed to mirror://gnupg - - 09 Jul 2005; Lina Pezzella libgcrypt-1.2.1.ebuild: - Stable ppc-macos. Bug #98376 - - 05 Jul 2005; Daniel Black - -files/libgcrypt-hppa.patch, -files/libgcrypt-rijndael.patch, - -libgcrypt-1.1.91.ebuild, -libgcrypt-1.1.92.ebuild, - -libgcrypt-1.2.0-r1.ebuild, -libgcrypt-1.2.0-r2.ebuild, - libgcrypt-1.2.1.ebuild: - Version cleanout and fixes bug #96792 by Chris White - - 03 Jul 2005; Hardave Riar libgcrypt-1.2.1.ebuild: - Stable on mips, dep for bug #90726. - - 06 Jun 2005; Markus Rothe libgcrypt-1.2.1.ebuild: - Stable on ppc64 - - 09 May 2005; Gustavo Zacarias - libgcrypt-1.2.1.ebuild: - Stable on sparc - - 07 May 2005; Aron Griffis libgcrypt-1.2.1.ebuild: - stable on ia64 - - 30 Apr 2005; Bryan Østergaard libgcrypt-1.2.1.ebuild: - Stable on alpha. - - 29 Apr 2005; Jan Brinkmann libgcrypt-1.2.1.ebuild: - stable on amd64 - - 29 Apr 2005; Daniel Black libgcrypt-1.2.1.ebuild: - ppc stable - - 28 Apr 2005; Daniel Black libgcrypt-1.2.1.ebuild: - x86 stable libgcrypt-1.2.1 - - 01 Apr 2005; Aron Griffis libgcrypt-1.2.0-r2.ebuild: - stable on ia64 - - 26 Mar 2005; Marcelo Goes libgcrypt-1.1.91.ebuild, - libgcrypt-1.1.92.ebuild, libgcrypt-1.1.94.ebuild, libgcrypt-1.2.0-r1.ebuild, - libgcrypt-1.2.0-r2.ebuild, libgcrypt-1.2.0.ebuild, libgcrypt-1.2.1.ebuild: - Added dev-libs/libgpg-error to RDEPEND. Fix bug 86456. Thanks Spider - . - -*libgcrypt-1.2.1 (13 Jan 2005) - - 13 Jan 2005; Daniel Black metadata.xml, - +libgcrypt-1.2.1.ebuild: - Version bump. Previous patches were included. Maintainer crypto added to - metadata.xml - - 29 Dec 2004; Ciaran McCreesh : - Change encoding to UTF-8 for GLEP 31 compliance - - 26 Nov 2004; Jason Wever libgcrypt-1.2.0-r2.ebuild: - Stable on sparc. - -*libgcrypt-1.2.0-r2 (10 Oct 2004) - - 10 Oct 2004; Jason Wever - +files/libgcrypt-rijndael.patch, +libgcrypt-1.2.0-r2.ebuild: - Added a fix for bug #53667 that makes libgcrypt apps happy on sparc. - - 03 Oct 2004; Mamoru KOMACHI libgcrypt-1.2.0-r1.ebuild, - libgcrypt-1.2.0.ebuild: - ppc-macos fix. Added ppc-macos back because sys-devel/patch is in - package.provided. - -*libgcrypt-1.2.0-r1 (04 Sep 2004) - - 04 Sep 2004; Guy Martin +files/libgcrypt-hppa.patch, - +libgcrypt-1.2.0-r1.ebuild: - Added a fix for relocation problem on hppa. Removed macos KEYWORDS until they - stabilize sys-devel/patch. - - 09 Aug 2004; Guy Martin libgcrypt-1.2.0.ebuild: - Stable on hppa. - - 07 Aug 2004; libgcrypt-1.2.0.ebuild: - stable on ia64 to fulfill dependency for gnutls security update #59231 - - 07 Aug 2004; Luca Barbato libgcrypt-1.1.94.ebuild: - Stable on ppc - - 07 Aug 2004; Luca Barbato libgcrypt-1.1.94.ebuild: - Stable on ppc - - 06 Aug 2004; Gustavo Zacarias libgcrypt-1.2.0.ebuild: - Stable on sparc wrt #59231 - - 29 Jul 2004; Stephen P. Becker libgcrypt-1.1.94.ebuild: - Stable on mips. - - 03 Jul 2004; Bryan Østergaard libgcrypt-1.1.94.ebuild: - Stable on alpha. - - 01 Jul 2004; Tom Gall libgcrypt-1.2.0.ebuild: - stable on ppc64 bug #54804 - - 26 Jun 2004; Danny van Dyk libgcrypt-1.1.94.ebuild: - Marked stable on amd64. - - 07 Jun 2004; Daniel Black -libgcrypt-1.1.3.ebuild, - libgcrypt-1.1.91.ebuild, libgcrypt-1.1.92.ebuild, libgcrypt-1.1.94.ebuild, - libgcrypt-1.2.0.ebuild: - Keyword changes - x86 to 1.1.9*. ~hppa ~ia64 ~ppc readded to 1.2.0 as they - seem to have been dropped - -*libgcrypt-1.2.0 (30 May 2004) - - 30 May 2004; Mike Frysinger +libgcrypt-1.2.0.ebuild: - Version bump #48916 by Erinn Looney-Triggs. - - 12 May 2004; Bryan Østergaard libgcrypt-1.1.94.ebuild: - Add ~alpha. - - 02 May 2004; Stephen P. Becker libgcrypt-1.1.94.ebuild: - Added ~mips keyword. - -*libgcrypt-1.1.94 (02 May 2004) - - 02 May 2004; Bryan Østergaard +libgcrypt-1.1.94.ebuild: - Version bump, bug #49610. - - 29 Feb 2004; Jason Wever libgcrypt-1.1.92.ebuild: - I hope you like ~sparcin' too. - -*libgcrypt-1.1.92 (28 Feb 2004) - - 28 Feb 2004; Alastair Tse libgcrypt-1.1.92.ebuild: - version bump. added backward compat symlinks. (#43175) - - 01 Feb 2004; Jon Portnoy libgcrypt-1.1.91.ebuild : - AMD64 keywords. - -*libgcrypt-1.1.91 (01 Jan 2004) - - 01 Jan 2004; Hanno Boeck libgcrypt-1.1.91.ebuild: - Version bump. - - 16 Dec 2003; Guy Martin libgcrypt-1.1.12.ebuild: - Marked stable on hppa. - - 14 Dec 2003; Lars Weiler libgcrypt-1.1.12.ebuild: - Make stable on ppc - - 13 Dec 2003; Brad House libgcrypt-1.1.12.ebuild: - mark stable on amd64 - - 10 Dec 2003; libgcrypt-1.1.12.ebuild: - stable on ia64 - - 28 Nov 2003; Jason Wever libgcrypt-1.1.12.ebuild: - Marked stable on sparc. - - 16 Oct 2003; Aron Griffis libgcrypt-1.1.12.ebuild: - Stable on alpha - - 13 Oct 2003; Alastair Tse libgcrypt-1.1.10.ebuild, - libgcrypt-1.1.12.ebuild, libgcrypt-1.1.8.ebuild: - stable bump and cleanup - - 13 May 2003; Tavis Ormandy libgcrypt-1.1.12.ebuild: - adding ~alpha keyword. - - 10 May 2003; libgcrypt-1.1.12.ebuild: - Making the doctype depends optional based on the doc use variable. Closes bug - 19535. - -*libgcrypt-1.1.12 (08 Feb 2003) - - 08 Feb 2003; J Robert Ray libgcrypt-1.1.12 : Version bump, - all the docbook-sgml-utils issues should be sorted out. The configure script - needs a working docbook environment or else it prints out a warning, then - goes on to never actually use it. Since it is conceivable that it may be - used or needed in the future, I'm leaving the dependencies in place for now. - -*libgcrypt-1.1.10 (4 Feb 2003) - - 04 Feb 2003; Yannick Koehler libgcrypt-1.1.10.ebuild - files/digest-libgcrypt-1.1.10 : - - Version bump. - - 03 Jan 2003; Matthew Turk : - Changed docbook2X dependency to docbook-sgml-utils, as both have the same - results and docbook-sgml-utils is more dependable, although I can't really - tell where the docbook2X system is used in this. - - 06 Dec 2002; Rodney Rees : changed sparc ~sparc keywords - -*libgcrypt-1.1.8 (12 Oct 2002) - - 12 Oct 2002; Seemant Kulleen libgcrypt-1.1.8.ebuild - files/digest-libgcrypt-1.1.8 : - - Version bump. License is now LGPL-2.1 unless using a unix without - /dev/random or windows, in which case use GPL-2. Removed myconf settings - from 1.1.3 since README mentioned nothing about them. Added docs in - src_install. - -*libgcrypt-1.1.3 (15 Mar 2002 ) - - 13 Aug 2002; Pieter Van den Abeele ChangeLog : - - Added ppc keyword - - 15 Mar 2002; Seemant Kulleen ChangeLog : - - This library is necessary for the new release of aide (intrusion detection) - version 0.8 - - 1 Feb 2002; G.Bevin ChangeLog : - - Added initial ChangeLog which should be updated whenever the package is - updated in any way. This changelog is targetted to users. This means that the - comments should well explained and written in clean English. The details about - writing correct changelogs are explained in the skel.ChangeLog file which you - can find in the root directory of the portage repository. diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/Manifest deleted file mode 100644 index e617c5c649..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST libgcrypt-1.4.6.tar.bz2 1151877 RMD160 d4d720c4bfe80f0799b2cbdbbb49d304e3195049 SHA1 445b9e158aaf91e24eae3d1040c6213e9d9f5ba6 SHA256 3e4b30da6b357b565333d0222133b64a0414be99ba72733081165c8ea9bc6b85 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/libgcrypt-1.4.6.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/libgcrypt-1.4.6.ebuild deleted file mode 100644 index 4fb8a20161..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/libgcrypt-1.4.6.ebuild +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/libgcrypt/libgcrypt-1.4.6.ebuild,v 1.9 2010/10/16 15:16:18 jer Exp $ - -EAPI="2" - -inherit autotools eutils flag-o-matic toolchain-funcs - -DESCRIPTION="General purpose crypto library based on the code used in GnuPG" -HOMEPAGE="http://www.gnupg.org/" -SRC_URI="mirror://gnupg/libgcrypt/${P}.tar.bz2 - ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" -IUSE="" - -RDEPEND=">=dev-libs/libgpg-error-1.5" -DEPEND="${RDEPEND}" - -src_prepare() { - # Fix build failure with non-bash /bin/sh. - eautoreconf - - epunt_cxx -} - -src_configure() { - # TODO: When cross compiling to x86, this package currently has an - # issue where it does not define all needed symbols in libgcrypt.a - # As soon as this is fixed then re-enable asm. - if tc-is-cross-compiler ; then - if [[ $(tc-arch) == x86 ]] ; then - DISABLE_ASM="--disable-asm" - fi - fi - - if tc-is-cross-compiler ; then - # The libgcrypt configure code is really stupid and assumes - # that you have an underscore symbol whenever you cross-compile. - # Ask gcc to see what it does instead. - local symprefix=$($(tc-getCPP) -E - <<<__USER_LABEL_PREFIX__ | tail -1) - case ${symprefix} in - __USER_LABEL_PREFIX__) ;; # nothing we can do here - "") export ac_cv_sys_symbol_underscore=no ;; - _) export ac_cv_sys_symbol_underscore=yes ;; - *) die "unknown symbol prefix: ${symprefix}" ;; - esac - fi - - # --disable-padlock-support for bug #201917 - # --with-gpg-error-prefix for http://bugs.gentoo.org/267479 - econf \ - $DISABLE_ASM \ - --disable-padlock-support \ - --disable-dependency-tracking \ - --with-pic \ - --enable-noexecstack \ - --with-gpg-error-prefix=${ROOT}/usr -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc AUTHORS ChangeLog NEWS README* THANKS TODO -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/metadata.xml b/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/metadata.xml deleted file mode 100644 index b02ffbb5d3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/libgcrypt/metadata.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - crypto - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/Manifest deleted file mode 100644 index cd1fa6d005..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST pyzy-0.1.0.tar.gz 1571946 SHA256 fe468a4372473d85a56f05d55b14f0e0201fde6f9336a1a2322cf79421c84d9a SHA512 42477152ffd6a2f7ce0e8f920d98e9dc9c7fc32fe9e93a2a4de75c791e70d0f08c30eca0244dc2b87981f6bfc4e635234d62720aa19358c8f80a84e0c371c662 WHIRLPOOL 8cba6d647ee9f4e4f3ee22922245fc9b67fab779ea4381793eece9171d6f0cb4d0f325cc2ac1c4ce7ff6f47d383f6c02d0b866dcfbdc841b6f84ee6dff6fe0fe -DIST pyzy-database-1.0.0.tar.bz2 9977983 SHA256 32c7d07b9f41e1dfc0f9008f54eca8e6cb367e7f2b19ac94c49754442694c321 SHA512 5a7248870407f7f92c418ada49a275062325f2eb33a7eb4b91492e4b706ae70ba931b04377a758ce429fa64cd22e8bee2ac4279d4f205bbce406248eda1decf7 WHIRLPOOL 07043adf9d83eb40b1a53409a31b3711f041e2b4dd5cf3f8c2034c129c31270fd37f2e53ecf2da5503562cf103ccb0a4487fa606928ac38a8775e90ff376ce3a diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/files/pyzy-dont-download-dictionary-file.patch b/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/files/pyzy-dont-download-dictionary-file.patch deleted file mode 100644 index 6283cd2156..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/files/pyzy-dont-download-dictionary-file.patch +++ /dev/null @@ -1,28 +0,0 @@ -Don't download database file on make phrase. -The database file will be downloaded by ebuild script instead. -diff -urN pyzy-0.1.0.orig/data/db/open-phrase/Makefile.am pyzy-0.1.0/data/db/open-phrase/Makefile.am ---- pyzy-0.1.0.orig/data/db/open-phrase/Makefile.am 2012-09-05 13:23:24.151736716 +0900 -+++ pyzy-0.1.0/data/db/open-phrase/Makefile.am 2012-09-05 14:18:57.144553548 +0900 -@@ -30,9 +30,6 @@ - DBTAR = pyzy-database-$(DBVER).tar.bz2 - - $(DBTAR): -- $(AM_V_GEN) \ -- wget http://pyzy.googlecode.com/files/$(DBTAR) || \ -- ( $(RM) $@; exit 1) - - stamp-db: $(DBTAR) - $(AM_V_GEN) \ -diff -urN pyzy-0.1.0.orig/data/db/open-phrase/Makefile.in pyzy-0.1.0/data/db/open-phrase/Makefile.in ---- pyzy-0.1.0.orig/data/db/open-phrase/Makefile.in 2012-09-05 13:27:28.991201762 +0900 -+++ pyzy-0.1.0/data/db/open-phrase/Makefile.in 2012-09-05 14:19:09.814528103 +0900 -@@ -491,9 +491,6 @@ - - - @PYZY_BUILD_DB_OPEN_PHRASE_TRUE@$(DBTAR): --@PYZY_BUILD_DB_OPEN_PHRASE_TRUE@ $(AM_V_GEN) \ --@PYZY_BUILD_DB_OPEN_PHRASE_TRUE@ wget http://pyzy.googlecode.com/files/$(DBTAR) || \ --@PYZY_BUILD_DB_OPEN_PHRASE_TRUE@ ( $(RM) $@; exit 1) - - @PYZY_BUILD_DB_OPEN_PHRASE_TRUE@stamp-db: $(DBTAR) - @PYZY_BUILD_DB_OPEN_PHRASE_TRUE@ $(AM_V_GEN) \ diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/pyzy-0.1.0-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/pyzy-0.1.0-r1.ebuild deleted file mode 120000 index 9b2add12ee..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/pyzy-0.1.0-r1.ebuild +++ /dev/null @@ -1 +0,0 @@ -pyzy-0.1.0.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/pyzy-0.1.0.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/pyzy-0.1.0.ebuild deleted file mode 100644 index 090a2632c1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/pyzy/pyzy-0.1.0.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -inherit eutils - -DESCRIPTION="the Chinese PinYin and Bopomofo conversion library" -HOMEPAGE="http://code.google.com/p/pyzy/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz - http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${PN}-database-1.0.0.tar.bz2" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 x86 arm" -IUSE="" - -RDEPEND=">=dev-db/sqlite-3.6.18 - >=dev-libs/glib-2.24 - sys-apps/util-linux" -DEPEND="${RDEPEND} - dev-util/pkgconfig - >=sys-devel/gettext-0.16.1" - -src_prepare() { - # Using open-phrase database downloaded by this ebuild script. - epatch "${FILESDIR}"/pyzy-dont-download-dictionary-file.patch - mv ../db ./data/db/open-phrase/ || die -} - -src_configure() { - econf \ - --enable-db-open-phrase \ - --disable-db-android -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/vectormath/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-libs/vectormath/Manifest deleted file mode 100644 index 42004d89eb..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/vectormath/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST vectormath-svn-166.tar.gz 11314436 SHA256 1b0fffcee6fbd8a4d164bd1b653705de7a20078c98839d2bb0b34dffdcfebcfd SHA512 03a66f370771c1bfc4e203712fbe7dbc64baada42276b55b69869512ac18a8eb1ce6be20f19c3f41bae63e2433b2e7e14eda4f6d45f8b1c798b855cc4644de23 WHIRLPOOL 6ebc136bbc28835a697f6b90ab667f740b0799ac8416bd7e9576facfb47c318a60cb4b7ab797e669d5a3ff16a01267be9ec9a007f43fae1133833eda0acb840e diff --git a/sdk_container/src/third_party/coreos-overlay/dev-libs/vectormath/vectormath-166.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-libs/vectormath/vectormath-166.ebuild deleted file mode 100644 index fbf23b33ef..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-libs/vectormath/vectormath-166.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 - -DESCRIPTION="Sony vector math library." -HOMEPAGE="http://www.bulletphysics.com/Bullet/phpBB2/viewforum.php?f=18" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${PN}-svn-${PV}.tar.gz" -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 x86 arm" -IUSE="" - -src_install() { - insinto /usr/include/vectormath/scalar/cpp - doins "${S}/include/vectormath/scalar/cpp/mat_aos.h" - doins "${S}/include/vectormath/scalar/cpp/quat_aos.h" - doins "${S}/include/vectormath/scalar/cpp/vec_aos.h" - doins "${S}/include/vectormath/scalar/cpp/vectormath_aos.h" -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/Manifest deleted file mode 100644 index 242577c514..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST pygtk-2.14.1.tar.bz2 2210535 RMD160 ee32b54b5a5b12ca5718cf53505542b89e97347b SHA1 9a9a29c9de2a31e08a96f38ade43ce93ec569400 SHA256 733a5e2e1ca2ca6cf9dae0de9c035d3a428c6ec52774977f60d0618a1a27591a diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.13.0-fix-codegen-location.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.13.0-fix-codegen-location.patch deleted file mode 100644 index 701d828f1f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.13.0-fix-codegen-location.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/pygtk-2.0.pc.in 2007-11-01 12:20:22.000000000 -0400 -+++ b/pygtk-2.0.pc.in 2008-05-28 22:21:04.000000000 -0400 -@@ -12,7 +12,7 @@ pygtkincludedir=${includedir}/pygtk-2.0 - # This is strictly speaking not necessarily so (we refer to another - # package), but we want to preserve compatibility with times codegen - # was in PyGTK, not PyGObject. --codegendir=${datadir}/pygobject/2.0/codegen -+codegendir=${pyexecdir}/gtk-2.0/codegen - - Name: PyGTK - Description: Python bindings for GTK+ and related libraries diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-fix-numpy-warning.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-fix-numpy-warning.patch deleted file mode 100644 index 9182e89675..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-fix-numpy-warning.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- gtk/gdkpixbuf.override-orig 2009-04-06 13:40:08.867685000 -0500 -+++ gtk/gdkpixbuf.override 2009-04-06 13:40:25.582569000 -0500 -@@ -75,7 +75,7 @@ have_numpy(void) - } - if (!import_done) { - import_done = 1; -- import_array(); -+ import_array1(1); - if (PyErr_Occurred()) { - PyErr_Fetch(&exc_type, &exc_value, &exc_tb); - Py_INCREF(exc_type); - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-gtktoggle.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-gtktoggle.patch deleted file mode 100644 index aec85009ed..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-gtktoggle.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gtk/gtk.override.orig 2009-06-25 20:52:31.000000000 -0400 -+++ gtk/gtk.override 2009-06-25 20:52:53.000000000 -0400 -@@ -1660,7 +1660,7 @@ - PyObject *py_use_underline = Py_True; - - if (!PyArg_ParseTupleAndKeywords(args, kwargs, -- "|zO):GtkToggleButton.__init__", kwlist, -+ "|zO:GtkToggleButton.__init__", kwlist, - &text, &py_use_underline)) - return -1; - if (text) diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-libdir-pc.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-libdir-pc.patch deleted file mode 100644 index d943e952a4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-libdir-pc.patch +++ /dev/null @@ -1,12 +0,0 @@ -https://bugzilla.gnome.org/show_bug.cgi?id=663421 - ---- a/pygtk-2.0.pc.in -+++ b/pygtk-2.0.pc.in -@@ -12,6 +12,7 @@ - includedir=@includedir@ - datarootdir=@datarootdir@ - datadir=@datadir@ -+libdir=@libdir@ - pyexecdir=@pyexecdir@ - - # you can use the --variable=pygtkincludedir argument to diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-ltihooks.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-ltihooks.patch deleted file mode 100644 index dfa3851aca..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-ltihooks.patch +++ /dev/null @@ -1,191 +0,0 @@ -From dd2009d4e0e9fa9cd4ee8d76ec0e498e62a568b7 Mon Sep 17 00:00:00 2001 -From: Paul Pogonyshev -Date: Sat, 02 May 2009 13:11:06 +0000 -Subject: Remove 'ltihooks.py' as using deprecated Python module. - -Remove the script and all related imports. All relevant Makefile's -now create symbolic links for '.so' files from '.libs' to the level -up, so that C helper modules are still importable in built, but not -installed source tree. Same as in PyGObject. (Bug #565593.) ---- -diff --git a/Makefile.am b/Makefile.am -index 1ed5196..2472727 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -44,10 +44,6 @@ pkgconfig_DATA += pygtk-$(PLATFORM_VERSION).pc - defsdir = $(pkgdatadir)/$(PLATFORM_VERSION)/defs - defs_DATA = - --# python --pyexec_LTLIBRARIES = --noinst_PYTHON = ltihooks.py -- - # pygtk scripts - pkgpythondir = $(pyexecdir)/gtk-2.0 - -@@ -141,3 +137,10 @@ doc-dist: - cp -r docs/cursors/* pygtk/cursors - tar cfz $(PACKAGE)-docs.tar.gz pygtk - rm -fr pygtk -+ -+ -+all: $(pkgpyexec_LTLIBRARIES:.la=.so) -+clean-local: -+ rm -f $(pkgpyexec_LTLIBRARIES:.la=.so) -+.la.so: -+ $(LN_S) .libs/$@ $@ || true -diff --git a/gtk/Makefile.am b/gtk/Makefile.am -index 2021220..b9ec8f3 100644 ---- a/gtk/Makefile.am -+++ b/gtk/Makefile.am -@@ -195,7 +195,7 @@ CLEANFILES += \ - gtkunixprint.c \ - gtkunixprint.defs \ - gtkunixprint-types.defs -- -+ - - EXTRA_DIST += \ - $(GTKUNIXPRINT_DEFS) \ -@@ -248,3 +248,9 @@ endif - gtk-types.c: - @: - -+ -+all: $(pygtkexec_LTLIBRARIES:.la=.so) $(pkgpyexec_LTLIBRARIES:.la=.so) -+clean-local: -+ rm -f $(pygtkexec_LTLIBRARIES:.la=.so) $(pkgpyexec_LTLIBRARIES:.la=.so) -+.la.so: -+ $(LN_S) .libs/$@ $@ || true -diff --git a/gtk/__init__.py b/gtk/__init__.py -index e2733dc..92af869 100644 ---- a/gtk/__init__.py -+++ b/gtk/__init__.py -@@ -22,14 +22,6 @@ - - import sys - --# this can go when things are a little further along --try: -- import ltihooks -- # pyflakes -- ltihooks --except ImportError: -- ltihooks = None -- - # For broken embedded programs which forgot to call Sys_SetArgv - if not hasattr(sys, 'argv'): - sys.argv = [] -@@ -49,13 +41,6 @@ else: - - import gdk - --if ltihooks: -- try: -- ltihooks.uninstall() -- del ltihooks -- except: -- pass -- - from gtk._lazyutils import LazyNamespace, LazyModule - from gtk.deprecation import _Deprecated, _DeprecatedConstant - -diff --git a/tests/common.py b/tests/common.py -index dfc3401..33216e1 100644 ---- a/tests/common.py -+++ b/tests/common.py -@@ -7,29 +7,19 @@ def importModules(buildDir, srcDir): - # Be very careful when you change this code, it's - # fragile and the order is really significant - -- # ltihooks -- sys.path.insert(0, srcDir) - # atk, pango - sys.path.insert(0, buildDir) - # _gtk, keysyms, glade - sys.path.insert(0, os.path.join(buildDir, 'gtk')) - sys.argv.append('--g-fatal-warnings') -- import ltihooks - - atk = importModule('atk', buildDir) - pango = importModule('pango', buildDir) - gtk = importModule('gtk', buildDir, 'gtk') - gdk = importModule('gtk.gdk', buildDir, '_gdk.la') - -- # gtk/__init__.py removes the ltihooks, readd them -- import gtk -- -- ltihooks.install() - glade = importModule('gtk.glade', buildDir) - -- ltihooks.uninstall() -- del ltihooks -- - globals().update(locals()) - - os.environ['PYGTK_USE_GIL_STATE_API'] = '' --- -cgit v0.8.2 ---- a/ltihooks.py 2009-03-05 23:06:53.000000000 +0100 -+++ b/dev/null 2009-05-02 19:22:42.444026449 +0200 -@@ -1,60 +0,0 @@ --# -*- Mode: Python; py-indent-offset: 4 -*- --# ltihooks.py: python import hooks that understand libtool libraries. --# Copyright (C) 2000 James Henstridge. --# --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2 of the License, or --# (at your option) any later version. --# --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. --# --# You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -- --import os, ihooks -- --class LibtoolHooks(ihooks.Hooks): -- def get_suffixes(self): -- """Like normal get_suffixes, but adds .la suffixes to list""" -- ret = ihooks.Hooks.get_suffixes(self) -- ret.insert(0, ('module.la', 'rb', 3)) -- ret.insert(0, ('.la', 'rb', 3)) -- return ret -- -- def load_dynamic(self, name, filename, file=None): -- """Like normal load_dynamic, but treat .la files specially""" -- if len(filename) > 3 and filename[-3:] == '.la': -- fp = open(filename, 'r') -- dlname = '' -- installed = 1 -- line = fp.readline() -- while line: -- if len(line) > 7 and line[:7] == 'dlname=': -- dlname = line[8:-2] -- elif len(line) > 10 and line[:10] == 'installed=': -- installed = line[10:-1] == 'yes' -- line = fp.readline() -- fp.close() -- if dlname: -- if installed: -- filename = os.path.join(os.path.dirname(filename), -- dlname) -- else: -- filename = os.path.join(os.path.dirname(filename), -- '.libs', dlname) -- return ihooks.Hooks.load_dynamic(self, name, filename, file) -- --importer = ihooks.ModuleImporter() --importer.set_hooks(LibtoolHooks()) -- --def install(): -- importer.install() --def uninstall(): -- importer.uninstall() -- --install() diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-numpy.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-numpy.patch deleted file mode 100644 index 12e6c185c2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/files/pygtk-2.14.1-numpy.patch +++ /dev/null @@ -1,113 +0,0 @@ -Index: gtk/gdk.override -=================================================================== ---- gtk/gdk.override (révision 3082) -+++ gtk/gdk.override (copie de travail) -@@ -44,7 +44,7 @@ - #define GDK_DISPLAY(object) (GDK_DISPLAY_OBJECT(object)) - - #ifdef HAVE_NUMPY --# include -+# include - static int have_numpy(void); - #endif - -Index: configure.ac -=================================================================== ---- configure.ac (révision 3082) -+++ configure.ac (copie de travail) -@@ -350,18 +350,27 @@ - esac - - --dnl checks to see if Numeric Python is installed. -+dnl checks to see if numpy is installed. - AC_ARG_ENABLE(numpy, - AC_HELP_STRING([--disable-numpy], [Disable numeric python features]),, - enable_numpy=yes) - - if test "x$enable_numpy" != xno; then - save_CPPFLAGS="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES" -- AC_CHECK_HEADER([Numeric/arrayobject.h], -- [AC_DEFINE(HAVE_NUMPY,,[whether to include numeric python support])],, -- [#include ]) -- CPPFLAGS="$save_CPPFLAGS" -+ numpy_INCLUDES=`$PYTHON -c "import numpy; print numpy.get_include()" 2> /dev/null` -+ if test "x$numpy_INCLUDES" = "x"; then -+ AC_MSG_WARN([Could not find a valid numpy installation, disabling.]) -+ enable_numpy=no -+ else -+ CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES -I$numpy_INCLUDES" -+ AC_CHECK_HEADER([numpy/arrayobject.h], -+ [AC_DEFINE(HAVE_NUMPY,,[whether to include numeric python support])], -+ [enable_numpy=no], -+ [#include ]) -+ if test "x$enable_numpy" != "xno"; then -+ CPPFLAGS="$save_CPPFLAGS -I$numpy_INCLUDES" -+ fi -+ fi - fi - - -@@ -402,11 +411,11 @@ - $have_gtk && echo gtk with $gtk_version API - $have_libglade && echo gtk.glade - $have_gtkunixprint && echo gtk.unixprint --echo - - if test ! $have_atk || ! $have_pango || \ - ! $have_gtk || ! $have_libglade || \ - ! $have_pangocairo || ! $have_gtkunixprint; then -+ echo - echo "The following modules will NOT be built:" - echo - $have_atk || echo atk -@@ -416,3 +425,7 @@ - $have_libglade || echo gtk.glade - $have_gtkunixprint || echo gtk.unixprint - fi -+ -+echo -+echo "Numpy support: $enable_numpy" -+echo -Index: setup.py -=================================================================== ---- setup.py (révision 3082) -+++ setup.py (copie de travail) -@@ -228,16 +228,16 @@ - data_files.append((DEFS_DIR, ('pangocairo.defs',))) - GLOBAL_MACROS.append(('HAVE_PYCAIRO',1)) - if gtk.can_build(): -- if '--disable-numeric' in sys.argv: -- sys.argv.remove('--disable-numeric') -+ if '--disable-numpy' in sys.argv: -+ sys.argv.remove('--disable-numpy') - else: - try: -- import Numeric -- Numeric # pyflakes -+ import numpy -+ numpy # pyflakes - GLOBAL_MACROS.append(('HAVE_NUMPY', 1)) - except ImportError: -- print ('* Numeric module could not be found, ' -- 'will build without Numeric support.') -+ print ('* numpy module could not be found, ' -+ 'will build without numpy support.') - ext_modules.append(gtk) - data_files.append((os.path.join(INCLUDE_DIR, 'pygtk'), ('gtk/pygtk.h',))) - data_files.append((DEFS_DIR, ('gtk/gdk.defs', 'gtk/gdk-types.defs', -Index: README -=================================================================== ---- README (révision 3082) -+++ README (copie de travail) -@@ -54,7 +54,7 @@ - GTK+ 2.14.0 or higher for 2.14 API - * libglade 2.5.0 or higher (optional) - * pycairo 1.0.2 or higher (optional) -- * Numeric (optional) -+ * numpy (optional) - - This release is supporting the following GTK+ releases: - - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/pygtk-2.14.1-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/pygtk-2.14.1-r2.ebuild deleted file mode 100644 index b7fda8bf0c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/pygtk-2.14.1-r2.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/pygtk/pygtk-2.14.1-r1.ebuild,v 1.8 2009/09/06 20:57:05 ranger Exp $ - -EAPI="3" -GCONF_DEBUG="no" -PYTHON_DEPEND="2:2.6" -SUPPORT_PYTHON_ABIS="1" -# dev-python/pycairo does not support Python 2.4 / 2.5. -RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython" -PYTHON_EXPORT_PHASE_FUNCTIONS="1" - -inherit alternatives autotools eutils flag-o-matic gnome.org python virtualx - -DESCRIPTION="GTK+2 bindings for Python" -HOMEPAGE="http://www.pygtk.org/" - -LICENSE="LGPL-2.1" -SLOT="2" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd" -IUSE="doc examples" - -RDEPEND=">=dev-libs/glib-2.8:2 - >=x11-libs/pango-1.16 - >=dev-libs/atk-1.12 - >=x11-libs/gtk+-2.13.6 - >=dev-python/pycairo-1.0.2 - >=dev-python/pygobject-2.15.3 - dev-python/numpy - >=gnome-base/libglade-2.5:2.0 -" -DEPEND="${RDEPEND} - doc? ( - dev-libs/libxslt - >=app-text/docbook-xsl-stylesheets-1.70.1 ) - >=dev-util/pkgconfig-0.9" - -src_prepare() { - # Fix declaration of codegen in .pc - epatch "${FILESDIR}/${PN}-2.13.0-fix-codegen-location.patch" - - # Fix test failurs due to ltihooks - # gentoo bug #268315, upstream bug #565593 - epatch "${FILESDIR}/${P}-ltihooks.patch" - - # Switch to numpy, bug #185692 - epatch "${FILESDIR}/${P}-numpy.patch" - epatch "${FILESDIR}/${P}-fix-numpy-warning.patch" - - # Fix bug with GtkToggleButton and gtk+-2.16, bug #275449 - epatch "${FILESDIR}/${P}-gtktoggle.patch" - - epatch "${FILESDIR}"/${PN}-2.14.1-libdir-pc.patch - - # Disable pyc compiling - mv "${S}"/py-compile "${S}"/py-compile.orig - ln -s $(type -P true) "${S}"/py-compile - - AT_M4DIR="m4" eautoreconf - - python_copy_sources -} - -src_configure() { - use hppa && append-flags -ffunction-sections - python_src_configure \ - $(use_enable doc docs) \ - --enable-thread -} - -src_test() { - unset DBUS_SESSION_BUS_ADDRESS - - testing() { - cd tests - export XDG_CONFIG_HOME="${T}/$(PYTHON --ABI)" - Xemake check-local - } - python_execute_function -s testing -} - -src_install() { - python_src_install - python_clean_installation_image - dodoc AUTHORS ChangeLog INSTALL MAPPING NEWS README THREADS TODO || die - - if use examples; then - rm examples/Makefile* - insinto /usr/share/doc/${PF} - doins -r examples || die - fi -} - -pkg_postinst() { - python_mod_optimize gtk-2.0 - - create_symlinks() { - alternatives_auto_makesym $(python_get_sitedir)/pygtk.py pygtk.py-[0-9].[0-9] - alternatives_auto_makesym $(python_get_sitedir)/pygtk.pth pygtk.pth-[0-9].[0-9] - } - python_execute_function create_symlinks -} - -pkg_postrm() { - python_mod_cleanup gtk-2.0 - - create_symlinks() { - alternatives_auto_makesym $(python_get_sitedir)/pygtk.py pygtk.py-[0-9].[0-9] - alternatives_auto_makesym $(python_get_sitedir)/pygtk.pth pygtk.pth-[0-9].[0-9] - } - python_execute_function create_symlinks -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/pygtk-2.14.1-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/pygtk-2.14.1-r3.ebuild deleted file mode 120000 index eb5456cbea..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pygtk/pygtk-2.14.1-r3.ebuild +++ /dev/null @@ -1 +0,0 @@ -pygtk-2.14.1-r2.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/Manifest deleted file mode 100644 index 419f1d4377..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -EBUILD pyxenstore-9999.ebuild 514 SHA256 01166494f2879620f256a2ad42ad040d8950fef394f9f843f2dc628fcf58a8c7 SHA512 a30c64bbb759a2f139e7b69faa06000dcd00701c3329f28de585a773054a45a651906c92d513c1bd723dc1e49e3ef08107a631059bac8bc71542e4d57680251d WHIRLPOOL 1b0b64314a365db9c8c940f5eeb6bd539b1da904946c8a8e99a407eb90f0b9f81ba2b48be38714b9b296ac26382f8e48f5ec1fe994372a92ebb7b07e3f6c909b -MISC metadata.xml 189 SHA256 3c34d13913d23a2d7669fe1e294b7a026e204eff7c701461646f4d7db25d9d0c SHA512 fe3ac50d70b7d95b9488f1af5dcd8dad0b3f9e344f4f56ba58b7812e4e17e0d90540c446882c8c5d11f32b89976d6e1b3d10846acf6ef75849daa4e163139213 WHIRLPOOL e85232acc2cd9452fcaa9e49b23e6980e224d79a23a48c43be38dea3d3a60d1b4cfce56ffe2e193b7c5d6100fef927da9c8d5a5b085e7849d1bd65cb104ce715 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/metadata.xml b/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/metadata.xml deleted file mode 100644 index 199da9a0bd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/metadata.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/pyxenstore-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/pyxenstore-9999.ebuild deleted file mode 100644 index 801f0e855a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-python/pyxenstore/pyxenstore-9999.ebuild +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 -PYTHON_DEPEND="2" -SUPPORT_PYTHON_ABIS="1" -RESTRICT_PYTHON_ABIS="" - -inherit distutils bzr - -EBZR_REPO_URI="https://code.launchpad.net/~cbehrens/pyxenstore/trunk" - -DESCRIPTION="Provides Python interfaces for Xen's XenStore." -HOMEPAGE="https://launchpad.net/pyxenstore" -SRC_URI="" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -DEPEND=" - app-emulation/xen-tools - " -RDEPEND="${DEPEND}" diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/Manifest deleted file mode 100644 index e9925d0001..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST apitrace-3.0.tar.gz 1046543 SHA256 96660d582c272534002a4909fe124a7dd81e31bb2145eef4beb352826922de3a SHA512 ff05914567c261ca45ed93447e0dfae283e4fb61e1154727009cce440408088de644ce7a6511c4a173c6deb91d4185312e14353258d04f3065c37479fa8f0e0f WHIRLPOOL 0e02a5846d70e6474efd0135abd9f1d4fbd581dbc4e6e5d3cd860adeb059e33f1a5e5c91749656d88557f554f83b1db133b1ed6e4ba6afdde5e75fee22b27422 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/apitrace-3.0-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/apitrace-3.0-r1.ebuild deleted file mode 100644 index f3f9850add..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/apitrace-3.0-r1.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/apitrace/apitrace-3.0-r1.ebuild,v 1.1 2012/03/18 21:35:32 radhermit Exp $ - -EAPI="2" -PYTHON_DEPEND="2:2.6" - -inherit cmake-utils eutils python multilib - -DESCRIPTION="A tool for tracing, analyzing, and debugging graphics APIs" -HOMEPAGE="https://github.com/apitrace/apitrace" -SRC_URI="https://github.com/${PN}/${PN}/tarball/${PV} -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="egl multilib qt4" - -RDEPEND="app-arch/snappy - media-libs/libpng - sys-libs/zlib - media-libs/mesa[egl?] - egl? ( || ( - >=media-libs/mesa-8.0[gles1,gles2] - =x11-libs/qt-core-4.7:4 - >=x11-libs/qt-gui-4.7:4 - >=x11-libs/qt-webkit-4.7:4 - >=dev-libs/qjson-0.5 - )" -DEPEND="${RDEPEND}" - -EMULTILIB_PKG="true" - -PATCHES=( - "${FILESDIR}"/${P}-system-libs.patch - "${FILESDIR}"/${P}-glxtrace-only.patch -) - -pkg_setup() { - python_set_active_version 2 -} - -src_unpack() { - unpack ${A} - mv *-${PN}-* "${S}" -} - -src_prepare() { - base_src_prepare - # Workaround NULL DT_RPATH issues - sed -i -e "s/install (TARGETS/#\0/" gui/CMakeLists.txt || die -} - -src_configure() { - for ABI in $(get_install_abis) ; do - mycmakeargs=( - $(cmake-utils_use_enable qt4 GUI) - $(cmake-utils_use_enable egl EGL) - ) - - if use multilib ; then - if [[ "${ABI}" != "${DEFAULT_ABI}" ]] ; then - mycmakeargs=( - -DBUILD_LIB_ONLY=ON - -DENABLE_GUI=OFF - $(cmake-utils_use_enable egl EGL) - ) - fi - multilib_toolchain_setup ${ABI} - fi - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH=${ROOT}" ) - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER" ) - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY" ) - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY" ) - - CMAKE_BUILD_DIR="${WORKDIR}/${P}_build-${ABI}" - cmake-utils_src_configure - done -} - -src_compile() { - for ABI in $(get_install_abis) ; do - use multilib && multilib_toolchain_setup ${ABI} - CMAKE_BUILD_DIR="${WORKDIR}/${P}_build-${ABI}" - cmake-utils_src_compile - done -} - -src_install() { - dobin "${CMAKE_BUILD_DIR}"/{glretrace,apitrace} - use qt4 && dobin "${CMAKE_BUILD_DIR}"/qapitrace - - for ABI in $(get_install_abis) ; do - CMAKE_BUILD_DIR="${WORKDIR}/${P}_build-${ABI}" - exeinto /usr/$(get_libdir)/${PN}/wrappers - doexe "${CMAKE_BUILD_DIR}"/wrappers/*.so - dosym glxtrace.so /usr/$(get_libdir)/${PN}/wrappers/libGL.so - dosym glxtrace.so /usr/$(get_libdir)/${PN}/wrappers/libGL.so.1 - dosym glxtrace.so /usr/$(get_libdir)/${PN}/wrappers/libGL.so.1.2 - done - - dodoc {BUGS,DEVELOPMENT,NEWS,README,TODO}.markdown - - exeinto /usr/$(get_libdir)/${PN}/scripts - doexe $(find scripts -type f -executable) -} - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/files/apitrace-3.0-glxtrace-only.patch b/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/files/apitrace-3.0-glxtrace-only.patch deleted file mode 100644 index a6704d1713..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/files/apitrace-3.0-glxtrace-only.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- apitrace-apitrace-de9f3e5/CMakeLists.txt -+++ apitrace-apitrace-de9f3e5/CMakeLists.txt -@@ -19,6 +19,8 @@ - - set (ENABLE_EGL "AUTO" CACHE STRING "Enable EGL support.") - -+option (BUILD_LIB_ONLY "Build the glxtrace library only" OFF) -+ - - ############################################################################## - # Find dependencies -@@ -159,7 +161,13 @@ - include_directories (${ZLIB_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib) - link_libraries (${ZLIB_LIBRARIES}) - --find_package (SNAPPY REQUIRED) -+if (BUILD_LIB_ONLY) -+ set (SNAPPY_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/snappy) -+ set (SNAPPY_LIBRARIES snappy_bundled) -+ add_subdirectory (thirdparty/snappy EXCLUDE_FROM_ALL) -+else (BUILD_LIB_ONLY) -+ find_package (SNAPPY REQUIRED) -+endif (BUILD_LIB_ONLY) - include_directories (${SNAPPY_INCLUDE_DIRS}) - link_libraries (${SNAPPY_LIBRARIES}) - -@@ -182,6 +190,8 @@ - # By bundling the QJSON source, we make it much more easier to build the GUI on - # Windows and MacOSX. But we only use the bundled sources when ENABLE_GUI is - # AUTO. -+if (NOT BUILD_LIB_ONLY) -+ - if (QT4_FOUND AND NOT QJSON_FOUND AND (ENABLE_GUI STREQUAL "AUTO")) - add_subdirectory (thirdparty/qjson EXCLUDE_FROM_ALL) - set (QJSON_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty) -@@ -190,6 +200,8 @@ - set (QJSON_FOUND TRUE) - endif () - -+endif (NOT BUILD_LIB_ONLY) -+ - # For glext headers. Needs to be before system includes as often system's GL - # headers bundle and include glext.h and glxext.h - include_directories (BEFORE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/glext) -@@ -497,6 +513,8 @@ - ############################################################################## - # API retracers - -+if (NOT BUILD_LIB_ONLY) -+ - add_custom_command ( - OUTPUT glretrace_gl.cpp - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glretrace.py > ${CMAKE_CURRENT_BINARY_DIR}/glretrace_gl.cpp -@@ -624,6 +642,8 @@ - add_subdirectory(gui) - endif () - -+endif (NOT BUILD_LIB_ONLY) -+ - - ############################################################################## - # Packaging - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/files/apitrace-3.0-system-libs.patch b/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/files/apitrace-3.0-system-libs.patch deleted file mode 100644 index 3951354092..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/apitrace/files/apitrace-3.0-system-libs.patch +++ /dev/null @@ -1,69 +0,0 @@ ---- apitrace-apitrace-de9f3e5/cmake/FindSNAPPY.cmake -+++ apitrace-apitrace-de9f3e5/cmake/FindSNAPPY.cmake -@@ -0,0 +1,31 @@ -+# Find SNAPPY - A fast compressor/decompressor -+# -+# This module defines -+# SNAPPY_FOUND - whether the qsjon library was found -+# SNAPPY_LIBRARIES - the snappy library -+# SNAPPY_INCLUDE_DIR - the include path of the snappy library -+# -+ -+if (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARIES) -+ -+ # Already in cache -+ set (SNAPPY_FOUND TRUE) -+ -+else (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARIES) -+ -+ find_library (SNAPPY_LIBRARIES -+ NAMES -+ snappy -+ PATHS -+ ) -+ -+ find_path (SNAPPY_INCLUDE_DIR -+ NAMES -+ snappy.h -+ PATHS -+ ) -+ -+ include(FindPackageHandleStandardArgs) -+ find_package_handle_standard_args(SNAPPY DEFAULT_MSG SNAPPY_LIBRARIES SNAPPY_INCLUDE_DIR) -+ -+endif (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARIES) ---- apitrace-apitrace-de9f3e5/CMakeLists.txt -+++ apitrace-apitrace-de9f3e5/CMakeLists.txt -@@ -155,27 +155,16 @@ - # - on unices to prevent symbol collisions when tracing applications that link - # against other versions of these libraries - --set (ZLIB_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib) --set (ZLIB_LIBRARIES z_bundled) --add_subdirectory (thirdparty/zlib EXCLUDE_FROM_ALL) -- --include_directories (${ZLIB_INCLUDE_DIRS}) -+find_package (ZLIB REQUIRED) -+include_directories (${ZLIB_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib) - link_libraries (${ZLIB_LIBRARIES}) - --set (SNAPPY_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/snappy) --set (SNAPPY_LIBRARIES snappy_bundled) --add_subdirectory (thirdparty/snappy EXCLUDE_FROM_ALL) -- -+find_package (SNAPPY REQUIRED) - include_directories (${SNAPPY_INCLUDE_DIRS}) - link_libraries (${SNAPPY_LIBRARIES}) - --set (PNG_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/libpng) --set (PNG_DEFINITIONS "") --set (PNG_LIBRARIES png_bundled) -- --add_subdirectory (thirdparty/libpng EXCLUDE_FROM_ALL) -+find_package (PNG REQUIRED) -+include_directories (${PNG_INCLUDE_DIRS}) --include_directories (${PNG_INCLUDE_DIR}) --add_definitions (${PNG_DEFINITIONS}) - link_libraries (${PNG_LIBRARIES}) - - if (MSVC) diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/dbus-spy/dbus-spy-0.0.1-r5.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/dbus-spy/dbus-spy-0.0.1-r5.ebuild deleted file mode 100644 index b85f8a859b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/dbus-spy/dbus-spy-0.0.1-r5.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_COMMIT="0e04421c73b24536de7fcc1886da469d8b7a2a41" -CROS_WORKON_TREE="ecdfeb706a9f6612b8adc3fb528c1ae8e5d2e09e" -CROS_WORKON_PROJECT="chromiumos/third_party/dbus-spy" -CROS_WORKON_LOCALNAME="../third_party/dbus-spy" - -inherit cros-workon - -DESCRIPTION="python dbus sniffer" -HOMEPAGE="http://vidner.net/martin/software/dbus-spy/" - -LICENSE="CCPL-Attribution-3.0" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -RDEPEND="dev-lang/python" -DEPEND="" - -src_install() { - newbin dbus-spy.py dbus-spy -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/dbus-spy/dbus-spy-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/dbus-spy/dbus-spy-9999.ebuild deleted file mode 100644 index cc0cd34a12..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/dbus-spy/dbus-spy-9999.ebuild +++ /dev/null @@ -1,23 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_PROJECT="chromiumos/third_party/dbus-spy" -CROS_WORKON_LOCALNAME="../third_party/dbus-spy" - -inherit cros-workon - -DESCRIPTION="python dbus sniffer" -HOMEPAGE="http://vidner.net/martin/software/dbus-spy/" - -LICENSE="CCPL-Attribution-3.0" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -RDEPEND="dev-lang/python" -DEPEND="" - -src_install() { - newbin dbus-spy.py dbus-spy -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/git/git-1.7.0.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/git/git-1.7.0.ebuild deleted file mode 100644 index 4e45c376d5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/git/git-1.7.0.ebuild +++ /dev/null @@ -1,5 +0,0 @@ -# Dummy package that will be thrown away once the -# dev-util/git -> dev-vcs/git migration finishes. - -SLOT="0" -KEYWORDS="amd64 arm x86" diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/gob/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-util/gob/Manifest deleted file mode 100644 index f5b7d80dba..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/gob/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST gob2-2.0.17.tar.bz2 216848 RMD160 eabc5d26e48d47b9183c288342e8bcf01ae9659d SHA1 25497258882d627e991da4599a507eea4e30a3dd SHA256 e9f52fff7ada88a36da1d412f8b2b57b44cc0527e545cf2f5d873c002c0da7f4 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/gob/gob-2.0.17.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/gob/gob-2.0.17.ebuild deleted file mode 100644 index a5b48e2407..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/gob/gob-2.0.17.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/gob/gob-2.0.16.ebuild,v 1.2 2010/01/15 21:40:42 fauli Exp $ - -GCONF_DEBUG="no" - -inherit gnome2 - -MY_PN=gob2 -MY_P=${MY_PN}-${PV} -S=${WORKDIR}/${MY_P} -PVP=(${PV//[-\._]/ }) - -DESCRIPTION="Preprocessor for making GTK+ objects with inline C code" -HOMEPAGE="http://www.5z.com/jirka/gob.html" -SRC_URI="mirror://gnome/sources/${MY_PN}/${PVP[0]}.${PVP[1]}/${MY_P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="2" -KEYWORDS="~alpha ~amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="" - -RDEPEND=">=dev-libs/glib-2" -DEPEND="${RDEPEND} - dev-util/pkgconfig - sys-devel/flex" - -DOCS="AUTHORS ChangeLog NEWS README TODO" diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/hdctools/hdctools-0.0.1-r184.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/hdctools/hdctools-0.0.1-r184.ebuild deleted file mode 100644 index f80e5a7938..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/hdctools/hdctools-0.0.1-r184.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_COMMIT="bb954d3423be9a55ddbc17bced4d902d2ff68ada" -CROS_WORKON_TREE="2cd6599248d6a4c113086df61d6767dc9c3bc8f7" -CROS_WORKON_PROJECT="chromiumos/third_party/hdctools" - -SUPPORT_PYTHON_ABIS="1" - -inherit cros-workon distutils toolchain-funcs multilib - -DESCRIPTION="Software to communicate with servo/miniservo debug boards" -HOMEPAGE="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -RDEPEND=">=dev-embedded/libftdi-0.18 - dev-libs/libusb - dev-python/numpy - dev-python/pexpect - dev-python/pyserial - dev-python/pyusb" -DEPEND="${RDEPEND} - app-text/htmltidy" - -src_compile() { - tc-export CC PKG_CONFIG - emake || die - distutils_src_compile -} - -src_install() { - emake DESTDIR="${D}" LIBDIR=/usr/$(get_libdir) install || die - distutils_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/hdctools/hdctools-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/hdctools/hdctools-9999.ebuild deleted file mode 100644 index 0355ef0419..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/hdctools/hdctools-9999.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/third_party/hdctools" - -SUPPORT_PYTHON_ABIS="1" - -inherit cros-workon distutils toolchain-funcs multilib - -DESCRIPTION="Software to communicate with servo/miniservo debug boards" -HOMEPAGE="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -RDEPEND=">=dev-embedded/libftdi-0.18 - dev-libs/libusb - dev-python/numpy - dev-python/pexpect - dev-python/pyserial - dev-python/pyusb" -DEPEND="${RDEPEND} - app-text/htmltidy" - -src_compile() { - tc-export CC PKG_CONFIG - emake || die - distutils_src_compile -} - -src_install() { - emake DESTDIR="${D}" LIBDIR=/usr/$(get_libdir) install || die - distutils_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/libc-bench/libc-bench-0.0.1-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/libc-bench/libc-bench-0.0.1-r3.ebuild deleted file mode 100644 index 389e19db70..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/libc-bench/libc-bench-0.0.1-r3.ebuild +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_COMMIT="f753ff1b9271342abd3f58dbac13174b936406f3" -CROS_WORKON_TREE="fb0ecd51a4636d40f23ccfc7492087b17e28b1dd" -CROS_WORKON_PROJECT="chromiumos/third_party/libc-bench" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="libc benchmark originally from -http://www.etalabs.net/src/libc-bench/" -HOMEPAGE="http://www.etalabs.net/src/libc-bench/" -SRC_URI="" -LICENSE="" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_compile() { - tc-export CC CXX PKG_CONFIG - emake || die "end compile failed." -} - -src_install() { - INSTALL_DIR=/usr/local/libc-bench/ - dodir $INSTALL_DIR - exeinto $INSTALL_DIR - doexe libc-bench -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/libc-bench/libc-bench-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/libc-bench/libc-bench-9999.ebuild deleted file mode 100644 index deba4bdd6e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/libc-bench/libc-bench-9999.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/third_party/libc-bench" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="libc benchmark originally from -http://www.etalabs.net/src/libc-bench/" -HOMEPAGE="http://www.etalabs.net/src/libc-bench/" -SRC_URI="" -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_compile() { - tc-export CC CXX PKG_CONFIG - emake || die "end compile failed." -} - -src_install() { - INSTALL_DIR=/usr/local/libc-bench/ - dodir $INSTALL_DIR - exeinto $INSTALL_DIR - doexe libc-bench -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/files/chromeos-version.sh b/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/files/chromeos-version.sh deleted file mode 100755 index 5de8bc36cc..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/files/chromeos-version.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -# -# This script is given one argument: the base of the source directory of -# the package, and it prints a string on stdout with the numerical version -# number for said repo. - -# Matching regexp for all known kernel release tags to date. -PATTERN="v[23].*" - -if [ ! -d "$1" ] ; then - exit -fi - -cd "$1" || exit - -git describe --match "${PATTERN}" --abbrev=0 HEAD 2>&1 | egrep "${PATTERN}" | - sed s/v\\.*//g | sed s/-/_/g diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/perf-next-3.4_rc7-r254.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/perf-next-3.4_rc7-r254.ebuild deleted file mode 100644 index bdafbd0f35..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/perf-next-3.4_rc7-r254.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/perf/perf-2.6.32.ebuild,v 1.1 2009/12/04 16:33:24 flameeyes Exp $ - -EAPI=4 -CROS_WORKON_COMMIT="f6a45ba0aa715500f21d6d95a0558dd50e4bbf6b" -CROS_WORKON_TREE="b80c11182613432cf1192946a2c95ea1cd742d9d" -CROS_WORKON_PROJECT="chromiumos/third_party/kernel-next" - -inherit cros-workon eutils toolchain-funcs linux-info - -DESCRIPTION="Userland tools for Linux Performance Counters" -HOMEPAGE="http://perf.wiki.kernel.org/" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="+demangle +doc perl python ncurses" - -RDEPEND="demangle? ( sys-devel/binutils ) - dev-libs/elfutils - ncurses? ( dev-libs/newt ) - perl? ( || ( >=dev-lang/perl-5.10 sys-devel/libperl ) ) - !dev-util/perf" -DEPEND="${RDEPEND} - doc? ( app-text/asciidoc app-text/xmlto )" - -CROS_WORKON_LOCALNAME="kernel-next" - -src_compile() { - local makeargs= - - pushd tools/perf - - use demangle || makeargs="${makeargs} NO_DEMANGLE=1 " - use perl || makeargs="${makeargs} NO_LIBPERL=1 " - use python || makeargs="${makeargs} NO_LIBPYTHON=1 " - use ncurses || makeargs="${makeargs} NO_NEWT=1 " - - if use arm; then - export ARM_SHA=1 - fi - - emake ${makeargs} \ - CC="$(tc-getCC)" AR="$(tc-getAR)" \ - prefix="/usr" bindir_relative="sbin" \ - CFLAGS="${CFLAGS}" \ - LDFLAGS="${LDFLAGS}" - - if use doc; then - pushd Documentation - emake ${makeargs} - popd - fi - - popd -} - -src_install() { - pushd tools/perf - - dosbin perf - dosbin perf-archive - - dodoc CREDITS - - if use doc; then - dodoc Documentation/*.txt - dohtml Documentation/*.html - doman Documentation/*.1 - fi - - popd -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/perf-next-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/perf-next-9999.ebuild deleted file mode 100644 index d8b5a58a25..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/perf-next/perf-next-9999.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/perf/perf-2.6.32.ebuild,v 1.1 2009/12/04 16:33:24 flameeyes Exp $ - -EAPI=4 -CROS_WORKON_PROJECT="chromiumos/third_party/kernel-next" - -inherit cros-workon eutils toolchain-funcs linux-info - -DESCRIPTION="Userland tools for Linux Performance Counters" -HOMEPAGE="http://perf.wiki.kernel.org/" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="+demangle +doc perl python ncurses" - -RDEPEND="demangle? ( sys-devel/binutils ) - dev-libs/elfutils - ncurses? ( dev-libs/newt ) - perl? ( || ( >=dev-lang/perl-5.10 sys-devel/libperl ) ) - !dev-util/perf" -DEPEND="${RDEPEND} - doc? ( app-text/asciidoc app-text/xmlto )" - -CROS_WORKON_LOCALNAME="kernel-next" - -src_compile() { - local makeargs= - - pushd tools/perf - - use demangle || makeargs="${makeargs} NO_DEMANGLE=1 " - use perl || makeargs="${makeargs} NO_LIBPERL=1 " - use python || makeargs="${makeargs} NO_LIBPYTHON=1 " - use ncurses || makeargs="${makeargs} NO_NEWT=1 " - - if use arm; then - export ARM_SHA=1 - fi - - emake ${makeargs} \ - CC="$(tc-getCC)" AR="$(tc-getAR)" \ - prefix="/usr" bindir_relative="sbin" \ - CFLAGS="${CFLAGS}" \ - LDFLAGS="${LDFLAGS}" - - if use doc; then - pushd Documentation - emake ${makeargs} - popd - fi - - popd -} - -src_install() { - pushd tools/perf - - dosbin perf - dosbin perf-archive - - dodoc CREDITS - - if use doc; then - dodoc Documentation/*.txt - dohtml Documentation/*.html - doman Documentation/*.1 - fi - - popd -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/quipper/quipper-0.0.1-r11.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/quipper/quipper-0.0.1-r11.ebuild deleted file mode 100644 index a23c4e630c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/quipper/quipper-0.0.1-r11.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_COMMIT="c1509bc1e18b38c3d042809c3fc6eaab58c79135" -CROS_WORKON_TREE="1af8f7cfbc13d84dd2b17d8492123a49ea14544b" -CROS_WORKON_LOCALNAME="../platform/chromiumos-wide-profiling" -CROS_WORKON_PROJECT="chromiumos/platform/chromiumos-wide-profiling" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Program used to collect performance data on ChromeOS machines" -HOMEPAGE="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -RDEPEND="virtual/perf - dev-libs/openssl - dev-libs/protobuf" -DEPEND="test? ( dev-cpp/gtest ) - dev-libs/openssl - dev-libs/protobuf" - -src_configure() { - tc-export CXX -} - -src_compile() { - emake ${PN} -} - -src_test() { - emake check -} - -src_install() { - dobin ${PN} -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/quipper/quipper-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/quipper/quipper-9999.ebuild deleted file mode 100644 index 83ee505d7b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/quipper/quipper-9999.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_LOCALNAME="../platform/chromiumos-wide-profiling" -CROS_WORKON_PROJECT="chromiumos/platform/chromiumos-wide-profiling" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Program used to collect performance data on ChromeOS machines" -HOMEPAGE="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -RDEPEND="virtual/perf - dev-libs/openssl - dev-libs/protobuf" -DEPEND="test? ( dev-cpp/gtest ) - dev-libs/openssl - dev-libs/protobuf" - -src_configure() { - tc-export CXX -} - -src_compile() { - emake ${PN} -} - -src_test() { - emake check -} - -src_install() { - dobin ${PN} -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/subversion/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-util/subversion/Manifest deleted file mode 100644 index 08bc624476..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/subversion/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST subversion-1.6.9.tar.bz2 5478554 RMD160 5f085c053657dc8d0048944265dbe436892a94fb SHA1 477aa89e60de7974ac0aa921cc369b4c2907693c SHA256 05526f92fcb612bdc3bab0d5e218e25847bf10846e047ce244e33859b205111c diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/subversion/subversion-1.6.9.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/subversion/subversion-1.6.9.ebuild deleted file mode 100644 index 3d798e30ca..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/subversion/subversion-1.6.9.ebuild +++ /dev/null @@ -1,5 +0,0 @@ -# Dummy package that will be thrown away once the -# dev-util/subversion -> dev-vcs/subversion migration finishes. - -SLOT="0" -KEYWORDS="amd64 arm x86" diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/Manifest deleted file mode 100644 index 3214886f83..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST systemtap-1.5.tar.gz 325 SHA256 8cdd8704ad3ab54ad26bd518e3a13629de0c8d3752ad5a0d53e60002b6b0aedd SHA512 e343d80c1aa77a7000cecfecf84efbbf3361d3c84d2460a3eee229323db6712a4caa638a2a4e864114df0102224f014c7f45bf9b49152cd039ad17157d6ed5e2 WHIRLPOOL 9d782eca83462bcad1e3278bfaccf499af96f3e9a2804facf504ddb58c7ccc942d0cfc001b5bf4e5778ba1a1a4ac921800712e6c0939832120a5722cce5eb927 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/files/systemtap-1.5-aux_syscalls.patch b/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/files/systemtap-1.5-aux_syscalls.patch deleted file mode 100644 index 149ed35924..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/files/systemtap-1.5-aux_syscalls.patch +++ /dev/null @@ -1,32 +0,0 @@ -systemtap v1.5 doesn't provide complete support for ARM. -This patch implements the arm version of aux_syscalls. - ---- /dev/null -+++ tapset/arm/aux_syscalls.stp -@@ -0,0 +1,26 @@ -+# arch-specific requests of ptrace ___________________________ -+# -+function _arch_ptrace_argstr(request, pid, addr, data) -+{ -+ if (request == %{ PTRACE_GETREGS %}) -+ // TODO: Retrieve *data in .return -+ return sprintf ("PTRACE_GETREGS, %d, data=%p", pid, data) -+ if (request == %{ PTRACE_SETREGS %}) -+ // TODO: Retrieve *data here -+ return sprintf ("PTRACE_SETREGS, %d, data=%p", pid, data) -+ if (request == %{ PTRACE_GETFPREGS %}) -+ // TODO: Retrieve *data in .return -+ return sprintf ("PTRACE_GETFPREGS, %d, data=%p", pid, data) -+ if (request == %{ PTRACE_SETFPREGS %}) -+ // TODO: Retrieve *data here -+ return sprintf ("PTRACE_SETFPREGS, %d, data=%p", pid, data) -+ if (request == %{ PTRACE_SINGLESTEP %}) -+ // TODO: Retrieve *data here -+ return sprintf ("PTRACE_SINGLESTEP, %d, data=%p", pid, data) -+ return sprintf("unknown ptrace request: %d, %d, data=%p", request, pid, data); -+} -+ -+function _ptrace_return_arch_prctl_addr(request, addr, data) -+{ -+ return 0 -+} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/files/systemtap-1.5-comp0.patch b/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/files/systemtap-1.5-comp0.patch deleted file mode 100644 index f933c85595..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/files/systemtap-1.5-comp0.patch +++ /dev/null @@ -1,30 +0,0 @@ -From c02332052959e4213a59ce0ff40354f51506103a Mon Sep 17 00:00:00 2001 -From: Mark Wielaard -Date: Wed, 6 Jul 2011 23:07:51 +0200 -Subject: [PATCH] Silence sys/sdt.h comparison of unsigned expression < 0 is always false. - -Some arm g++ setups would complain about the wchar_t "signedness detection": -sys/sdt.h:102: error: comparison of unsigned expression < 0 is always false - -jistone said: "((T)(-1) < 1)" would still get the right boolean value, -and shouldn't trigger range errors like "unsigned is never < 0". ---- - includes/sys/sdt.h | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/includes/sys/sdt.h b/includes/sys/sdt.h -index f7e1360..0a9fd40 100644 ---- a/includes/sys/sdt.h -+++ b/includes/sys/sdt.h -@@ -77,7 +77,7 @@ struct __sdt_type - #define __SDT_ALWAYS_SIGNED(T) \ - template<> struct __sdt_type { static const bool __sdt_signed = true; }; - #define __SDT_COND_SIGNED(T) \ --template<> struct __sdt_type { static const bool __sdt_signed = ((T)(-1) < 0); }; -+template<> struct __sdt_type { static const bool __sdt_signed = ((T)(-1) < 1); }; - __SDT_ALWAYS_SIGNED(signed char) - __SDT_ALWAYS_SIGNED(short) - __SDT_ALWAYS_SIGNED(int) --- -1.7.3.4 - diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/systemtap-1.5.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/systemtap-1.5.ebuild deleted file mode 100644 index afa03f678d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/systemtap/systemtap-1.5.ebuild +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/systemtap/systemtap-1.5.ebuild,v 1.1 2011/05/28 20:46:48 swegener Exp $ - -EAPI="2" - -inherit linux-info eutils - -DESCRIPTION="A linux trace/probe tool" -HOMEPAGE="http://sourceware.org/systemtap/" -if [[ ${PV} = *_pre* ]] # is this a snaphot? -then - # see configure.ac to get the version of the snapshot - SRC_URI="http://sources.redhat.com/${PN}/ftp/snapshots/${PN}-${PV/*_pre/}.tar.bz2 - mirror://gentoo/${PN}-${PV/*_pre/}.tar.bz2" # upstream only keeps four snapshot distfiles around - S="${WORKDIR}"/src -else - SRC_URI="http://sources.redhat.com/${PN}/ftp/releases/${P}.tar.gz" - # use default S for releases -fi - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 arm ~x86" -IUSE="sqlite" - -DEPEND=">=dev-libs/elfutils-0.131 - sys-libs/libcap - sqlite? ( =dev-db/sqlite-3* )" -RDEPEND="${DEPEND}" - -CONFIG_CHECK="~KPROBES ~RELAY ~DEBUG_FS" -ERROR_KPROBES="${PN} requires support for KProbes Instrumentation (KPROBES) - this can be enabled in 'Instrumentation Support -> Kprobes'." -ERROR_RELAY="${PN} works with support for user space relay support (RELAY) - this can be enabled in 'General setup -> Kernel->user space relay support (formerly relayfs)'." -ERROR_DEBUG_FS="${PN} works best with support for Debug Filesystem (DEBUG_FS) - this can be enabled in 'Kernel hacking -> Debug Filesystem'." - -src_prepare() { - epatch "${FILESDIR}"/${PN}-1.5-comp0.patch - epatch "${FILESDIR}"/${PN}-1.5-aux_syscalls.patch -} - -src_configure() { - eval export ac_cv_file__usr_include_{nss3,nss,nspr4,nspr}= - eval export ac_cv_file__usr_include_{avahi_client,avahi_common}= - econf \ - --docdir=/usr/share/doc/${PF} \ - --without-rpm \ - --disable-server \ - --disable-docs \ - --disable-refdocs \ - --disable-grapher \ - $(use_enable sqlite) \ - || die "econf failed" -} - -src_install() { - emake install DESTDIR="${D}" || die "make install failed" - dodoc AUTHORS HACKING NEWS README -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/xnu_quick_test/xnu_quick_test-0.0.1-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/xnu_quick_test/xnu_quick_test-0.0.1-r3.ebuild deleted file mode 100644 index 1271f07db8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/xnu_quick_test/xnu_quick_test-0.0.1-r3.ebuild +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_COMMIT="52004833d705bf13d177d2dc4781fc89edb90622" -CROS_WORKON_TREE="275bcb3a81b419a073305e0ab91feca9c18ff48e" -CROS_WORKON_PROJECT="chromiumos/platform/xnu_quick_test" -CROS_WORKON_LOCALNAME="../platform/xnu_quick_test" -CROS_WORKON_OUTOFTREE_BUILD=1 - -inherit cros-workon - -DESCRIPTION="Simple kernel regression test suite" -HOMEPAGE="http://www.chromium.org/" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -src_prepare() { - cros-workon_src_prepare -} - -src_configure() { - cros-workon_src_configure -} - -src_compile() { - cros-workon_src_compile -} - -src_install() { - echo "Not convinced where this should be installed yet." -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/xnu_quick_test/xnu_quick_test-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/xnu_quick_test/xnu_quick_test-9999.ebuild deleted file mode 100644 index 11a2ce6b4c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/xnu_quick_test/xnu_quick_test-9999.ebuild +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/platform/xnu_quick_test" -CROS_WORKON_LOCALNAME="../platform/xnu_quick_test" -CROS_WORKON_OUTOFTREE_BUILD=1 - -inherit cros-workon - -DESCRIPTION="Simple kernel regression test suite" -HOMEPAGE="http://www.chromium.org/" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -src_prepare() { - cros-workon_src_prepare -} - -src_configure() { - cros-workon_src_configure -} - -src_compile() { - cros-workon_src_compile -} - -src_install() { - echo "Not convinced where this should be installed yet." -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/Manifest deleted file mode 100644 index d435a7923f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST xxd-1.10.tar.gz 11078 SHA256 2912a914d7605d0c8b05ffd1c39a0d3aa6a97ce6c225cbc200334a6e827a1beb SHA512 eb38427c26fc827c3b04adca5c8020fd35eb26829e5200a56c4729c91f3d719c3d3244678d9994b79ff248da9501711820a6efb145a1ceb528e06e3a99ee157b WHIRLPOOL b06566292f0991b5dc48666854ffc339d62f099b8bab25cc9b461d4290523d1cceccef68e1fdb80b4d71cc928a331107f37178e70f5255045c74233b695932c3 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/xxd-1.10-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/xxd-1.10-r2.ebuild deleted file mode 120000 index 5f3d951bac..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/xxd-1.10-r2.ebuild +++ /dev/null @@ -1 +0,0 @@ -xxd-1.10.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/xxd-1.10.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/xxd-1.10.ebuild deleted file mode 100644 index 2a1687da04..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-util/xxd/xxd-1.10.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="4" - -inherit toolchain-funcs - -DESCRIPTION="make a hexdump or do the reverse" -HOMEPAGE="http://ftp.uni-erlangen.de/pub/utilities/etc/?order=s" -SRC_URI="http://ftp.uni-erlangen.de/pub/utilities/etc/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -src_prepare() { - # use implicit make rules as they're better than the makefile - echo 'all: xxd' > Makefile - tc-export CC -} - -src_install() { - # Has to be /bin rather than /usr/bin due to conflict with vim - into / - dobin xxd -} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/files/patman b/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/files/patman deleted file mode 100755 index 99547a098f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/files/patman +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -# Load patman using python module syntax -exec python -m patman.patman "$@" \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/files/setup.py b/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/files/setup.py deleted file mode 100644 index e08d9e26bd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/files/setup.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env python - -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -from distutils.core import setup - -setup(name='patman', - version='121220', - url='http://www.denx.de/wiki/U-Boot', - packages=['patman'], - package_dir={'patman' : '.'}) diff --git a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/patman-0.0.1-r21.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/patman-0.0.1-r21.ebuild deleted file mode 100644 index 8ac1a9474d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/patman-0.0.1-r21.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -EAPI=4 -CROS_WORKON_COMMIT="f561cd93f05c290bd0280f467c4a10ff224f7bf9" -CROS_WORKON_TREE="8595e217edc9baad42dd848f58b4cbd0c85c0200" -PYTHON_DEPEND="2" -CROS_WORKON_PROJECT="chromiumos/third_party/u-boot" -CROS_WORKON_LOCALNAME="u-boot" -CROS_WORKON_SUBDIR="files/tools/patman" - -inherit cros-workon distutils - -DESCRIPTION="Patman tool (from U-Boot) for sending patches upstream" -HOMEPAGE="http://www.denx.de/wiki/U-Boot" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="" - -DEPEND="dev-python/setuptools" -RDEPEND="" - -src_prepare() { - rm patman - cp "${FILESDIR}/setup.py" . - touch __init__.py - - distutils_src_prepare -} - -src_install() { - dobin "${FILESDIR}/patman" - - distutils_src_install -} \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/patman-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/patman-9999.ebuild deleted file mode 100644 index 9b2bec0161..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/dev-vcs/patman/patman-9999.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -EAPI=4 -PYTHON_DEPEND="2" -CROS_WORKON_PROJECT="chromiumos/third_party/u-boot" -CROS_WORKON_LOCALNAME="u-boot" -CROS_WORKON_SUBDIR="files/tools/patman" - -inherit cros-workon distutils - -DESCRIPTION="Patman tool (from U-Boot) for sending patches upstream" -HOMEPAGE="http://www.denx.de/wiki/U-Boot" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="" - -DEPEND="dev-python/setuptools" -RDEPEND="" - -src_prepare() { - rm patman - cp "${FILESDIR}/setup.py" . - touch __init__.py - - distutils_src_prepare -} - -src_install() { - dobin "${FILESDIR}/patman" - - distutils_src_install -} \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/croscorefonts/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/croscorefonts/Manifest deleted file mode 100644 index 064231637c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/croscorefonts/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST croscorefonts-1.23.0.tar.gz 2696327 SHA256 b469b5457b093a9d8878ef6ff6868f54e258441b88983b1866f64c8995584b4c SHA512 069444d57a59bd21d5b30c4b9d32a0e7b649126b2f1d10d992155c08adefb1d30119deda7818e388bb184aadb3f8dd20ee0f26c9d14b3e53bfda7fd682acf3d5 WHIRLPOOL 745cec3bd2d405f8269b39eb1b0fd17fc159d5c790052e2e882c397ca6bd3ac369287a22ab8ad174b7878a69acfeeb6d59a8924c57f0c5abf04c855f894dba88 diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/croscorefonts/croscorefonts-1.23.0.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/croscorefonts/croscorefonts-1.23.0.ebuild deleted file mode 100644 index 55926e4cd4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/croscorefonts/croscorefonts-1.23.0.ebuild +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit font - -DESCRIPTION="Arimo, Tinos and Cousine in 4 weights and Symbol Neu developed by Monotype Imaging for Chrom*OS" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -FONT_SUFFIX="ttf" -FONT_S="${S}" -FONTDIR="/usr/share/fonts/croscore" - - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/droidfonts-cros/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/droidfonts-cros/Manifest deleted file mode 100644 index 135b5d8c24..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/droidfonts-cros/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST droidfonts-cros-20121206.tar.gz 3138620 SHA256 162640c6128367b08189e2e29813d3990386370d19e402e87b1415e8410e9ab5 SHA512 441131973ff04c7c44f82577dac6877e56cfb756c2b34f8c076d04b1f2b90d37c5f8ef766061e55223fac86416555fa2559c202d187c81211884bc09ca108c15 WHIRLPOOL a224a43d407ed959e274f413e8b0ba526d5dbab9ee64882a8999b52f9c303bd144d6033d34ee7950086657f933e4214fc689d705d769b2499ebc4aadd91a0a0d diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/droidfonts-cros/droidfonts-cros-20121206.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/droidfonts-cros/droidfonts-cros-20121206.ebuild deleted file mode 100644 index 9bd6c96eb8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/droidfonts-cros/droidfonts-cros-20121206.ebuild +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit font - -DESCRIPTION="The latest fonts including Droid Thai, Hebrew and Arabic" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -FONT_SUFFIX="ttf" -FONT_S="${S}" -FONTDIR="/usr/share/fonts/droid-cros" - - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/ja-ipafonts/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/ja-ipafonts/Manifest deleted file mode 100644 index c742d76ef4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/ja-ipafonts/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST IPAMGTTC00303_r1.tar.gz 10319021 SHA256 2564217dc4e575a8bca038b40bc163f0b4c88f9450ae389149473a0b333aa483 SHA512 1be490a0d2e1541136f2fc8617c3a1a4d0c492e0b9ab8040ef92f6a4e61e51e160e1307aa0a2d67e3f3ad129278efdeaa400f1aa2ea8f52c1a0baa3ad6e3b40a WHIRLPOOL 4285e2b49c86858007739ae81269cfa95ce346c09526d498801f364556b6c6815664d16df5e4828c887efb9463f0ee87cf6bc6b821771231e741f9c6d36dff92 diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/ja-ipafonts/ja-ipafonts-003.03-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/ja-ipafonts/ja-ipafonts-003.03-r1.ebuild deleted file mode 100644 index 4904acaec4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/ja-ipafonts/ja-ipafonts-003.03-r1.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-fonts/ja-ipafonts/ja-ipafonts-003.01.ebuild,v 1.5 2009/10/07 20:54:14 maekke Exp $ - -inherit font - -MY_P="IPAMGTTC00303_r1" -DESCRIPTION="Japanese TrueType fonts developed by IPA (Information-technology Promotion Agency, Japan)" -HOMEPAGE="http://ossipedia.ipa.go.jp/ipafont/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${MY_P}.tar.gz" - -LICENSE="IPAfont" -SLOT="0" -KEYWORDS="alpha amd64 arm ~hppa ~ia64 ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -S="${WORKDIR}/${MY_P}" -FONT_SUFFIX="ttc" -FONT_S="${S}" - -DOCS="Readme*.txt" - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/ko-nanumfonts/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/ko-nanumfonts/Manifest deleted file mode 100644 index 4a5db46c1f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/ko-nanumfonts/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ko-nanumfonts-3.10.0.tar.gz 7787715 SHA256 ac174b140f85acd786b396a6a99be0f27701390b61fa4e27209c76a178b7b533 SHA512 bd6dff0ea9f153af4d355aa41f1713b1f13c4429997ec220385de8c577a61c89f140e77956b8ce1fcaf332b3f541f85c48fc62e750a83f09745a4cbbe03241b1 WHIRLPOOL 4bbe3524e9e23d12bd8345282f6b77c078e61d8ecad8c7a9fb2f5ad179b6ea49f1bbf8656cd8787f6b074cf81707de2cc7f934605f498c84b6ab73ecdee9d4c5 diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/ko-nanumfonts/ko-nanumfonts-3.10.0.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/ko-nanumfonts/ko-nanumfonts-3.10.0.ebuild deleted file mode 100644 index c55a6bf877..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/ko-nanumfonts/ko-nanumfonts-3.10.0.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit font - -DESCRIPTION="Korean fonts released by Naver Inc. under OFL : NanumGothic (regular, bold), NanumMyeongjo (regular, bold)" -HOMEPAGE="http://hangeul.naver.com/index.nhn" - -# download link does not have a version number. -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" - -LICENSE="OFL-1.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -FONT_SUFFIX="ttf" -FONT_S="${S}" -FONTDIR="/usr/share/fonts/ko-nanum" - - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/lohitfonts-cros/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/lohitfonts-cros/Manifest deleted file mode 100644 index 11eb99b4a9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/lohitfonts-cros/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST lohitfonts-cros-2.5.0.tar.gz 361129 SHA256 337b6ec75f376cb7ba489e4861a4188249628416e5e414cd69bf8e2711a761b9 SHA512 4763887b9a60ddcce6c676ba783cc2a87f6112b2304f4260048cae0f274a911b94ffbc224ec8f31b8f4c62f66216c3517b475892436de0f283206335426a450a WHIRLPOOL 4240a227e675579d53113aa991fbd32f3de6a3c2b2ab340e384ec37eb4b3cf09a9e4a22a75a276b4683703bf98996850d58554659885e2d9e90d650553ccccde diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/lohitfonts-cros/lohitfonts-cros-2.5.0-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/lohitfonts-cros/lohitfonts-cros-2.5.0-r1.ebuild deleted file mode 100644 index 75186053bd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/lohitfonts-cros/lohitfonts-cros-2.5.0-r1.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit font - -DESCRIPTION="6 Lohit fonts for Indic scripts" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" -HOMEPAGE="http://fedorahosted.org/lohit" - -LICENSE="OFL-1.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -FONT_SUFFIX="ttf" -FONT_S="${S}" -FONTDIR="/usr/share/fonts/lohit-cros" - - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/ml-anjalioldlipi/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/ml-anjalioldlipi/Manifest deleted file mode 100644 index 9f2bfc4577..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/ml-anjalioldlipi/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ml-anjalioldlipi-0.740.tar.gz 188696 SHA256 72cc741de00d6d4619fc500513c62da1a75ccb6d4f5bf77b10b4e52adbf1d93c SHA512 9572239a5077d1a8b70d1d14e6cb6a9749fbe7e3ad51f99dea7621bf0508b172068e9d9e5dbec1b00c42ae57b338ed24b01faf81ca20a1f16402d6412f8fd7db WHIRLPOOL b797c55b827356c04395ed199dec52d61a5e30a3946b384896727ddf56930bc9dfbf443fbecab73e45873459a3af604a5c914b6e09fcf86a4f3775536fd04372 diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/ml-anjalioldlipi/ml-anjalioldlipi-0.740.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/ml-anjalioldlipi/ml-anjalioldlipi-0.740.ebuild deleted file mode 100644 index 73bd2b0f3a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/ml-anjalioldlipi/ml-anjalioldlipi-0.740.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit font - -DESCRIPTION="AnjaliOldLipi font for the correct Malayalam rendering" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" -HOMEPAGE="https://sites.google.com/site/cibu/anjalioldlipi-font" - -LICENSE="OFL-1.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -FONT_SUFFIX="ttf" -FONT_S="${S}" -FONTDIR="/usr/share/fonts/ml-anjali" - - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/notofonts/Manifest b/sdk_container/src/third_party/coreos-overlay/media-fonts/notofonts/Manifest deleted file mode 100644 index 54201689f8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/notofonts/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST notofonts-20121206.tar.gz 2532318 SHA256 80f9185a69bc1feea5cf3f5ee64917796d8eb5634d2541b4e36dccc8efe9aee5 SHA512 50d99465db64e107a22c0a4427d386983aaf44b0446dc7255a7561e9746e08c65a290049859ebd72b426413e67918a6355f17125b7dfb825685e37dbc104c775 WHIRLPOOL 19b4ad13f372a4be304b0ac20e72367418b40589407b56a1f01e079bc3a9c6c1d98c42c42346db2d563b49aed758db2b75b8caad35fa0dc7d807ca4b0beeb4f6 diff --git a/sdk_container/src/third_party/coreos-overlay/media-fonts/notofonts/notofonts-20121206.ebuild b/sdk_container/src/third_party/coreos-overlay/media-fonts/notofonts/notofonts-20121206.ebuild deleted file mode 100644 index 2fdf092a9a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-fonts/notofonts/notofonts-20121206.ebuild +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit font - -DESCRIPTION="Noto fonts developed by Monotype" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh x86 ~x86-fbsd" -IUSE="" - -FONT_SUFFIX="ttc ttf" -FONT_S="${S}" -FONTDIR="/usr/share/fonts/noto" - - -# Only installs fonts -RESTRICT="strip binchecks" - -src_install() { - # call src_install() in font.eclass. - font_src_install -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/Manifest b/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/Manifest deleted file mode 100644 index 601dd89fdd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST ImageMagick-6.5.8-8.tar.bz2 8711782 RMD160 1417878f2adae344f840807710e7f9485d5945ce SHA1 15212833489826f7d2d919d1442309d6dc504402 SHA256 3a81e6c6759f6266dd18e8bb6c6c6791d5af8871e2dc2e50fb9c9362f3e689eb diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/files/imagemagick-6.7.2.6-lfs.patch b/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/files/imagemagick-6.7.2.6-lfs.patch deleted file mode 100644 index 3c71fb63c0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/files/imagemagick-6.7.2.6-lfs.patch +++ /dev/null @@ -1,36 +0,0 @@ -the AC_SYS_LARGEFILE macro sets up ac_cv_sys_file_offset_bits, and when -it uses a value of "no", it means "does not need special lfs behavior". -so let's not second guess the behavior of it by running our own little -bit of code which breaks cross-compiling. instead, only try the run -test if we get back "unknown". - ---- a/configure.ac -+++ b/configure.ac -@@ -434,9 +434,11 @@ - AC_FUNC_FSEEKO - LFS_CPPFLAGS='' - if test "$enable_largefile" != no; then -- if test "$ac_cv_sys_file_offset_bits" != 'no'; then -- LFS_CPPFLAGS="$LFS_CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits" -- else -+ case $ac_cv_sys_file_offset_bits in -+ no) -+ # nothing to do here as the host supports LFS fine -+ ;; -+ unknown) - AC_MSG_CHECKING([for native large file support]) - AC_RUN_IFELSE([AC_LANG_PROGRAM([#include - main () { -@@ -445,7 +447,11 @@ - [ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64) - AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no])]) -- fi -+ ;; -+ *) -+ LFS_CPPFLAGS="$LFS_CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits" -+ ;; -+ esac - if test "$ac_cv_sys_large_files" != 'no'; then - LFS_CPPFLAGS="$LFS_CPPFLAGS -D_LARGE_FILES=1" - fi diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/imagemagick-6.5.8.8-r6.ebuild b/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/imagemagick-6.5.8.8-r6.ebuild deleted file mode 100644 index 9cbc4ea251..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/imagemagick/imagemagick-6.5.8.8-r6.ebuild +++ /dev/null @@ -1,208 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-gfx/imagemagick/imagemagick-6.5.8.8.ebuild,v 1.6 2010/03/04 19:55:56 armin76 Exp $ - -EAPI="2" - -inherit eutils multilib perl-app toolchain-funcs versionator flag-o-matic autotools - -MY_PN=ImageMagick -MY_P=${MY_PN}-${PV%.*} -MY_P2=${MY_PN}-${PV%.*}-${PV#*.*.*.} - -DESCRIPTION="A collection of tools and libraries for many image formats" -HOMEPAGE="http://www.imagemagick.org/" -SRC_URI="mirror://imagemagick/${MY_P2}.tar.bz2 - mirror://imagemagick/legacy/${MY_P2}.tar.bz2" - -# perl tests fail with userpriv -RESTRICT="perl? ( userpriv )" -LICENSE="imagemagick" -SLOT="0" -KEYWORDS="alpha amd64 arm ~hppa ia64 ppc ppc64 s390 sh sparc x86" -IUSE="autotrace bzip2 +corefonts djvu doc fftw fontconfig fpx graphviz gs hdri - jbig jpeg jpeg2k lcms lqr nocxx openexr openmp perl png q8 q32 raw svg tiff - truetype X wmf xml zlib" - -RDEPEND=" - autotrace? ( >=media-gfx/autotrace-0.31.1 ) - bzip2? ( app-arch/bzip2 ) - djvu? ( app-text/djvu ) - fftw? ( sci-libs/fftw ) - fontconfig? ( media-libs/fontconfig ) - fpx? ( media-libs/libfpx ) - graphviz? ( >=media-gfx/graphviz-2.6 ) - gs? ( app-text/ghostscript-gpl ) - jbig? ( media-libs/jbigkit ) - jpeg? ( virtual/jpeg ) - jpeg2k? ( media-libs/jasper ) - lcms? ( >=media-libs/lcms-1.06 ) - lqr? ( >=media-libs/liblqr-0.1.0 ) - openexr? ( media-libs/openexr ) - perl? ( >=dev-lang/perl-5.8.6-r6 ) - png? ( media-libs/libpng ) - raw? ( media-gfx/ufraw ) - tiff? ( >=media-libs/tiff-3.5.5 ) - truetype? ( =media-libs/freetype-2* - corefonts? ( media-fonts/corefonts ) ) - wmf? ( >=media-libs/libwmf-0.2.8 ) - xml? ( >=dev-libs/libxml2-2.4.10 ) - zlib? ( sys-libs/zlib ) - X? ( - x11-libs/libXext - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM - svg? ( >=gnome-base/librsvg-2.9.0 ) - ) - !dev-perl/perlmagick - !media-gfx/graphicsmagick[imagemagick] - !sys-apps/compare - >=sys-devel/libtool-1.5.2-r6" - -DEPEND="${RDEPEND} - >=sys-apps/sed-4 - X? ( x11-proto/xextproto )" - -S="${WORKDIR}/${MY_P2}" - -pkg_setup() { - # for now, only build svg support when X is enabled, as librsvg - # pulls in quite some X dependencies. - if use svg && ! use X ; then - elog "the svg USE-flag requires the X USE-flag set." - elog "disabling svg support for now." - fi - - if use corefonts && ! use truetype ; then - elog "corefonts USE-flag requires the truetype USE-flag to be set." - elog "disabling corefonts support for now." - fi -} - -src_prepare() { - epatch "${FILESDIR}"/${PN}-6.7.2.6-lfs.patch - eautoreconf - # fix doc dir, bug #91911 - sed -i -e \ - 's:DOCUMENTATION_PATH="${DATA_DIR}/doc/${DOCUMENTATION_RELATIVE_PATH}":DOCUMENTATION_PATH="/usr/local/share/doc/${PF}":g' \ - "${S}"/configure || die -} - -src_configure() { - append-flags -L"${ROOT}"/usr/$(get_libdir) - - local myconf - if use q32 ; then - myconf="${myconf} --with-quantum-depth=32" - elif use q8 ; then - myconf="${myconf} --with-quantum-depth=8" - else - myconf="${myconf} --with-quantum-depth=16" - fi - - if use X && use svg ; then - myconf="${myconf} --with-rsvg" - else - myconf="${myconf} --without-rsvg" - fi - - # openmp support only works with >=sys-devel/gcc-4.3, bug #223825 - if use openmp && version_is_at_least 4.3 $(gcc-version) ; then - if has_version =sys-devel/gcc-$(gcc-version)*[openmp] ; then - myconf="${myconf} --enable-openmp" - else - elog "disabling openmp support (requires >=sys-devel/gcc-4.3 with USE='openmp')" - myconf="${myconf} --disable-openmp" - fi - else - elog "disabling openmp support (requires >=sys-devel/gcc-4.3)" - myconf="${myconf} --disable-openmp" - fi - - use truetype && myconf="${myconf} $(use_with corefonts windows-font-dir /usr/share/fonts/corefonts)" - - econf \ - ${myconf} \ - --without-included-ltdl \ - --with-ltdl-include=/usr/include \ - --with-ltdl-lib=/usr/$(get_libdir) \ - --with-threads \ - --with-modules \ - $(use_with perl) \ - --with-perl-options='INSTALLDIRS=vendor' \ - --with-gs-font-dir=/usr/share/fonts/default/ghostscript \ - $(use_enable hdri) \ - $(use_with !nocxx magick-plus-plus) \ - $(use_with autotrace) \ - $(use_with bzip2 bzlib) \ - $(use_with djvu) \ - $(use_with fftw) \ - $(use_with fontconfig) \ - $(use_with fpx) \ - $(use_with gs dps) \ - $(use_with gs gslib) \ - $(use_with graphviz gvc) \ - $(use_with jbig) \ - $(use_with jpeg jpeg) \ - $(use_with jpeg2k jp2) \ - $(use_with lcms) \ - $(use_with openexr) \ - $(use_with png) \ - $(use_with svg rsvg) \ - $(use_with tiff) \ - $(use_with truetype freetype) \ - $(use_with wmf) \ - $(use_with xml) \ - $(use_with zlib) \ - $(use_with X x) \ - --prefix=/usr/local \ - --mandir=/usr/local/share/man \ - --infodir=/usr/local/share/info \ - --datadir=/usr/local/share -} - -src_test() { - einfo "please note that the tests will only be run when the installed" - einfo "version and current emerging version are the same" - - if has_version ~${CATEGORY}/${P} ; then - emake -j1 check || die "make check failed" - fi -} - -src_install() { - emake DESTDIR="${D}" install || die "Installation of files into image failed" - - elog "Preserving .la files needed at runtime by placing in tar file." - elog " Avoids removal due to *.la in INSTALL_MASK" - pushd "${D}"/usr/local/$(get_libdir) || die - tar zcf "${S}"/la_files.tar.gz $(find -name '*.la' -type f) || die - popd - insinto /usr/local/$(get_libdir)/${P} - doins "${S}"/la_files.tar.gz - - # dont need these files with runtime plugins - rm -f "${D}"/usr/local/$(get_libdir)/*/*/*.{la,a} - - use doc || rm -r "${D}"/usr/local/share/doc/${PF}/{www,images,index.html} - dodoc NEWS.txt ChangeLog AUTHORS.txt README.txt - - # Fix perllocal.pod file collision - use perl && fixlocalpod -} - -pkg_postinst() { - elog "Restoring .la files from tar file" - pushd "${ROOT}"/usr/local/$(get_libdir) || die - tar -xvzpf ${P}/la_files.tar.gz || die - popd -} - -pkg_prerm() { - elog "Clean up untarred .la files" - pushd "${ROOT}"/usr/local/$(get_libdir) || die - tar -tf ${P}/la_files.tar.gz | xargs rm - assert - popd -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/Manifest b/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/Manifest deleted file mode 100644 index df35fe8b25..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST perceptualdiff-1.1.1-src.tar.gz 17440 SHA256 ab349279a63018663930133b04852bde2f6a373cc175184b615944a10c1c7c6a SHA512 b25d3903df4e69db7284c6f790a9c21e7064bce358285e34017ab810c67df7e08b98f44e5e16310da28ab898b02b81109a6467b3c976b64ef7b609263aefd8b5 WHIRLPOOL 3e0b7ae38f9e19fa9ead69b107b629e1ea1edb5e2137aae3dcdfe935f80d35f6beb993068c518d103c160d196f220db97e99f451afb04ba6abede7cd7bf8c460 diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/files/CMakeFiles-search-in-SYSROOT.patch b/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/files/CMakeFiles-search-in-SYSROOT.patch deleted file mode 100644 index 2b7eda3757..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/files/CMakeFiles-search-in-SYSROOT.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -11,11 +11,13 @@ - - # look for freeimage - FIND_PATH(FREEIMAGE_INCLUDE_DIR FreeImage.h -+ $ENV{SYSROOT}/usr/include - /usr/local/include - /usr/include - /opt/local/include - ) - FIND_LIBRARY(FREEIMAGE_LIBRARY freeimage -+ $ENV{SYSROOT}/usr/lib - /usr/lib - /usr/local/lib - /opt/local/lib diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/files/Metric.cpp-printf-needs-stdio.patch b/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/files/Metric.cpp-printf-needs-stdio.patch deleted file mode 100644 index c589fb51c6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/files/Metric.cpp-printf-needs-stdio.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/Metric.cpp -+++ b/Metric.cpp -@@ -19,6 +19,7 @@ - #include "RGBAImage.h" - #include "LPyramid.h" - #include -+#include - - #ifndef M_PI - #define M_PI 3.14159265f diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/perceptualdiff-1.1.1-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/perceptualdiff-1.1.1-r1.ebuild deleted file mode 120000 index 0505a79772..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/perceptualdiff-1.1.1-r1.ebuild +++ /dev/null @@ -1 +0,0 @@ -perceptualdiff-1.1.1.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/perceptualdiff-1.1.1.ebuild b/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/perceptualdiff-1.1.1.ebuild deleted file mode 100644 index f3d4ac93f2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/perceptualdiff/perceptualdiff-1.1.1.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="3" -inherit eutils multilib - -DESCRIPTION="An image comparison utility" -HOMEPAGE="http://pdiff.sourceforge.net/" -SRC_URI="mirror://sourceforge/pdiff/${P}-src.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="" - -DEPEND="media-libs/freeimage" -RDEPEND="${DEPEND}" - -DOCS="gpl.txt README.txt" - -src_prepare() { - epatch "${FILESDIR}"/CMakeFiles-search-in-SYSROOT.patch - epatch "${FILESDIR}"/Metric.cpp-printf-needs-stdio.patch - # Use the correct ABI lib dir. - sed -i \ - -e "s:/lib$:/$(get_libdir):" \ - CMakeLists.txt || die -} - -src_configure() { - tc-export CC CXX AR RANLIB LD NM - cmake . || die cmake failed -} - -src_install() { - dobin perceptualdiff -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/ply-image/ply-image-0.0.1-r37.ebuild b/sdk_container/src/third_party/coreos-overlay/media-gfx/ply-image/ply-image-0.0.1-r37.ebuild deleted file mode 100644 index 365a62db6b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/ply-image/ply-image-0.0.1-r37.ebuild +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright (c) 2009 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_COMMIT="ef0350689d0cc3bf2c845c098adf6efb666cbbec" -CROS_WORKON_TREE="b3354be712b630953df065a934a4063b12fa2843" -CROS_WORKON_PROJECT="chromiumos/third_party/ply-image" - -inherit toolchain-funcs cros-workon - -DESCRIPTION="Utility that dumps a png image to the frame buffer." -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 x86 arm" -IUSE="" - -DEPEND="media-libs/libpng - x11-libs/libdrm" -RDEPEND="${DEPEND}" - -src_compile() { - if tc-is-cross-compiler ; then - tc-getCC - fi - emake || die "emake failed" -} - -src_install() { - mkdir -p "${D}/usr/bin" - cp "${S}/src/ply-image" "${D}/usr/bin" -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-gfx/ply-image/ply-image-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/media-gfx/ply-image/ply-image-9999.ebuild deleted file mode 100644 index e608e896ca..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-gfx/ply-image/ply-image-9999.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (c) 2009 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 -CROS_WORKON_PROJECT="chromiumos/third_party/ply-image" - -inherit toolchain-funcs cros-workon - -DESCRIPTION="Utility that dumps a png image to the frame buffer." -HOMEPAGE="http://www.chromium.org/" -SRC_URI="" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~arm" -IUSE="" - -DEPEND="media-libs/libpng - x11-libs/libdrm" -RDEPEND="${DEPEND}" - -src_compile() { - if tc-is-cross-compiler ; then - tc-getCC - fi - emake || die "emake failed" -} - -src_install() { - mkdir -p "${D}/usr/bin" - cp "${S}/src/ply-image" "${D}/usr/bin" -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/Manifest b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/Manifest deleted file mode 100644 index e3681bc48e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST fontconfig-2.7.1.tar.gz 1539165 RMD160 34e0f6348486ab5304d6ecee4fe33f932689f380 SHA1 2e66fdf848f5002ba9a095998604ead2d3c392f1 SHA256 08502404aa451ddc5f9ca4bf45cc3b3f1e86e3f0779ff273c72e1c48e0c25b94 diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/README b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/README deleted file mode 100644 index 2e3bba5ca2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/README +++ /dev/null @@ -1,8 +0,0 @@ -chromiumos has different needs for fontconfig than is typical. Our list of -fonts is the same for every user (there is only one linux user anyway). -Also, the list can never change. - -We modify the fontconfig ebuild to support patching fonts.conf to have only one -directory to search for fonts (/usr/share/fonts). We also output the caches to -/usr/share/cache/fontconfig because /var isn't located on the readonly -partition. In addition we remove the rescan directive. diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-conf-d.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-conf-d.patch deleted file mode 100644 index c8b92418cf..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-conf-d.patch +++ /dev/null @@ -1,120 +0,0 @@ -diff -urN fontconfig-2.7.1-orig/conf.d/10-antialias.conf fontconfig-2.7.1/conf.d/10-antialias.conf ---- fontconfig-2.7.1-orig/conf.d/10-antialias.conf 1969-12-31 16:00:00.000000000 -0800 -+++ fontconfig-2.7.1/conf.d/10-antialias.conf 2011-04-29 12:49:40.000000000 -0700 -@@ -0,0 +1,8 @@ -+ -+ -+ -+ -+ -+ true -+ -+ -diff -urN fontconfig-2.7.1-orig/conf.d/10-hinting.conf fontconfig-2.7.1/conf.d/10-hinting.conf ---- fontconfig-2.7.1-orig/conf.d/10-hinting.conf 1969-12-31 16:00:00.000000000 -0800 -+++ fontconfig-2.7.1/conf.d/10-hinting.conf 2011-04-29 12:49:40.000000000 -0700 -@@ -0,0 +1,8 @@ -+ -+ -+ -+ -+ -+ true -+ -+ -diff -urN fontconfig-2.7.1-orig/conf.d/10-hinting-full.conf fontconfig-2.7.1/conf.d/10-hinting-full.conf ---- fontconfig-2.7.1-orig/conf.d/10-hinting-full.conf 1969-12-31 16:00:00.000000000 -0800 -+++ fontconfig-2.7.1/conf.d/10-hinting-full.conf 2011-04-29 12:49:40.000000000 -0700 -@@ -0,0 +1,8 @@ -+ -+ -+ -+ -+ -+ hintfull -+ -+ -diff -urN fontconfig-2.7.1-orig/conf.d/10-hinting-slight.conf fontconfig-2.7.1/conf.d/10-hinting-slight.conf ---- fontconfig-2.7.1-orig/conf.d/10-hinting-slight.conf 1969-12-31 16:00:00.000000000 -0800 -+++ fontconfig-2.7.1/conf.d/10-hinting-slight.conf 2011-04-29 12:49:40.000000000 -0700 -@@ -0,0 +1,8 @@ -+ -+ -+ -+ -+ -+ hintslight -+ -+ -diff -urN fontconfig-2.7.1-orig/conf.d/Makefile.am fontconfig-2.7.1/conf.d/Makefile.am ---- fontconfig-2.7.1-orig/conf.d/Makefile.am 2009-03-18 14:02:20.000000000 -0700 -+++ fontconfig-2.7.1/conf.d/Makefile.am 2011-04-29 13:09:05.000000000 -0700 -@@ -25,7 +25,11 @@ - README - - CONF_FILES = \ -+ 10-antialias.conf \ - 10-autohint.conf \ -+ 10-hinting.conf \ -+ 10-hinting-slight.conf \ -+ 10-hinting-full.conf \ - 10-no-sub-pixel.conf \ - 10-sub-pixel-bgr.conf \ - 10-sub-pixel-rgb.conf \ -@@ -53,6 +57,10 @@ - 90-synthetic.conf - - CONF_LINKS = \ -+ 10-autohint.conf \ -+ 10-hinting.conf \ -+ 10-hinting-slight.conf \ -+ 10-sub-pixel-rgb.conf \ - 20-fix-globaladvance.conf \ - 20-unhint-small-vera.conf \ - 30-urw-aliases.conf \ -@@ -62,9 +70,6 @@ - 49-sansserif.conf \ - 50-user.conf \ - 51-local.conf \ -- 60-latin.conf \ -- 65-fonts-persian.conf \ -- 65-nonlatin.conf \ - 69-unifont.conf \ - 80-delicious.conf \ - 90-synthetic.conf -diff -urN fontconfig-2.7.1-orig/conf.d/Makefile.in fontconfig-2.7.1/conf.d/Makefile.in ---- fontconfig-2.7.1-orig/conf.d/Makefile.in 2009-07-27 14:56:45.000000000 -0700 -+++ fontconfig-2.7.1/conf.d/Makefile.in 2011-04-29 13:09:20.000000000 -0700 -@@ -246,7 +246,11 @@ - README - - CONF_FILES = \ -+ 10-antialias.conf \ - 10-autohint.conf \ -+ 10-hinting.conf \ -+ 10-hinting-slight.conf \ -+ 10-hinting-full.conf \ - 10-no-sub-pixel.conf \ - 10-sub-pixel-bgr.conf \ - 10-sub-pixel-rgb.conf \ -@@ -274,6 +278,10 @@ - 90-synthetic.conf - - CONF_LINKS = \ -+ 10-autohint.conf \ -+ 10-hinting.conf \ -+ 10-hinting-slight.conf \ -+ 10-sub-pixel-rgb.conf \ - 20-fix-globaladvance.conf \ - 20-unhint-small-vera.conf \ - 30-urw-aliases.conf \ -@@ -283,9 +291,6 @@ - 49-sansserif.conf \ - 50-user.conf \ - 51-local.conf \ -- 60-latin.conf \ -- 65-fonts-persian.conf \ -- 65-nonlatin.conf \ - 69-unifont.conf \ - 80-delicious.conf \ - 90-synthetic.conf diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-fonts-config.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-fonts-config.patch deleted file mode 100644 index 34b23f85c7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-fonts-config.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- fonts.conf.in-orig 2010-04-14 11:52:02.000000000 -0700 -+++ fonts.conf.in 2010-04-14 11:52:25.000000000 -0700 -@@ -24,8 +24,6 @@ - - - @FC_DEFAULT_FONTS@ -- @FC_FONTPATH@ -- ~/.fonts - - - - @FC_CACHEDIR@ -- ~/.fontconfig - - - - 0xFFFB - -- -- -- 30 -- - - - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-latin-reorder.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-latin-reorder.patch deleted file mode 100644 index 6ecf6cb9df..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-latin-reorder.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff -Naurp fontconfig-2.7.1-orig/conf.d/60-latin.conf fontconfig-2.7.1/conf.d/60-latin.conf ---- fontconfig-2.7.1-orig/conf.d/60-latin.conf 2009-07-10 11:09:33.000000000 -0600 -+++ fontconfig-2.7.1/conf.d/60-latin.conf 2009-08-16 15:25:38.347701112 -0600 -@@ -4,8 +4,8 @@ - - serif - -- Bitstream Vera Serif - DejaVu Serif -+ Bitstream Vera Serif - Times New Roman - Thorndale AMT - Luxi Serif -@@ -16,14 +16,14 @@ - - sans-serif - -- Bitstream Vera Sans - DejaVu Sans -- Verdana -- Arial -- Albany AMT -+ Bitstream Vera Sans - Luxi Sans - Nimbus Sans L -+ Arial -+ Albany AMT - Helvetica -+ Verdana - Lucida Sans Unicode - BPG Glaho International - Tahoma -@@ -32,14 +32,14 @@ - - monospace - -- Bitstream Vera Sans Mono - DejaVu Sans Mono -+ Bitstream Vera Sans Mono - Inconsolata -+ Luxi Mono -+ Nimbus Mono L - Andale Mono - Courier New - Cumberland AMT -- Luxi Mono -- Nimbus Mono L - Courier - - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-metric-aliases.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-metric-aliases.patch deleted file mode 100644 index 2a7af03e2f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/fontconfig-2.7.1-metric-aliases.patch +++ /dev/null @@ -1,86 +0,0 @@ ---- fontconfig-2.7.1-orig/conf.d/30-metric-aliases.conf 2009-06-28 10:48:47.000000000 -0700 -+++ fontconfig-2.7.1/conf.d/30-metric-aliases.conf 2010-08-02 13:34:53.000000000 -0700 -@@ -29,6 +29,15 @@ - Albany AMT - Thorndale AMT - Cumberland AMT -+ Chrom*OS fonts: -+ Arimo -+ Tinos -+ Cousine -+ Ascender fonts (eval): -+ Ascender Sans -+ Ascender Serif -+ Ascender Sans Mono -+ Ascender Symbol - - Of these, URW fonts are design compatible with PostScrict fonts, - and the Liberation, StarOffice, and AMT ones are compatible with -@@ -75,6 +84,8 @@ - - - -+ Arimo -+ Ascender Sans - Liberation Sans - Albany - Albany AMT -@@ -84,6 +95,8 @@ - - - -+ Tinos -+ Ascender Serif - Liberation Serif - Thorndale - Thorndale AMT -@@ -93,6 +106,8 @@ - - - -+ Cousine -+ Ascender Sans Mono - Liberation Mono - Cumberland - Cumberland AMT -@@ -101,6 +116,13 @@ - - - -+ -+ Ascender Symbol -+ -+ Symbol -+ -+ -+ - - - -@@ -183,6 +205,8 @@ - - Arial - -+ Arimo -+ Ascender Sans - Liberation Sans - Albany - Albany AMT -@@ -192,6 +216,8 @@ - - Times New Roman - -+ Tinos -+ Ascender Serif - Liberation Serif - Thorndale - Thorndale AMT -@@ -201,6 +227,8 @@ - - Courier New - -+ Cousine -+ Ascender Sans Mono - Liberation Mono - Cumberland - Cumberland AMT diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/local.conf b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/local.conf deleted file mode 100644 index e6365e7483..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/files/local.conf +++ /dev/null @@ -1,715 +0,0 @@ - - - - - - - serif - - Tinos - Noto Serif - MSung GB18030 - MSung B5HK - NanumMyeongjo - Droid Arabic Naskh - Noto Serif Thai - Noto Serif Armenian - Noto Serif Georgian - Mangal - Lohit Hindi - Lohit Bangali - Lohit Tamil - AnjaliOldLipi - Lohit Punjabi - Lohit Gujarati - Lohit Oriya - Abssinica SIL - Droid Emoji - DejaVu Serif - - - - sans-serif - - Arimo - Noto Sans - MYingHeiGB18030 - MYingHeiB5HK - NanumGothic - Droid Arabic Kufi - Noto Sans Thai - Noto Sans Devanagari - Noto Sans Tamil - Noto Sans Hebrew - Mangal - Lohit Hindi - Lohit Bangali - Lohit Tamil - AnjaliOldLipi - Lohit Punjabi - Lohit Gujarati - Lohit Oriya - Noto Sans Armenian - Noto Sans Georgian - Noto Sans Ethiopic - Droid Sans Fallback - Droid Emoji - DejaVu Sans - - - - monospace - - Cousine - Droid Sans Mono - MYingHeiGB18030 - MYingHeiB5HK - NanumGothic - Droid Arabic Kufi - Noto Sans Thai - Mangal - Noto Sans Devanagari - Noto Sans Tamil - Lohit Bangali - Lohit Malayalam - Lohit Punjabi - Lohit Gujarati - Lohit Oriya - Noto Sans Armenian - Noto Sans Georgian - Noto Sans Ethiopic - Droid Sans Fallback - Droid Emoji - DejaVu Sans Mono - - - - - ui-sans - - Noto Sans UI - MYingHeiGB18030 - MYingHeiB5HK - NanumGothic - Droid Arabic Kufi - Noto Sans Thai UI - Noto Sans Devanagari UI - Noto Sans Tamil UI - Noto Sans Hebrew - Lohit Bangali - AnjaliOldLipi - Lohit Punjabi - Lohit Gujarati - Lohit Oriya - Noto Sans Armenian - Noto Sans Georgian - Noto Sans Ethiopic - Droid Sans Fallback - Droid Emoji - DejaVu Sans - - - - - - - zh - - - 14 - - - 14 - - - - - - - Arimo - true - hintfull - false - - - - - Chrome Droid Sans - true - hintslight - true - - - - - Cousine - true - hintfull - false - - - - - Tinos - true - hintfull - false - - - - - IPA - false - hintnone - false - - - - - MotoyaG04 - false - hintnone - false - - - - - NanumGothic - true - hintfull - false - - - - - - MotoyaG04Gothic - IPAPGothic - - MS PGothic - - - - MotoyaG04Gothic - IPAPGothic - - MS Pゴシック - - - - MS PGothic - - IPAPGothic - - - - MS Pゴシック - - IPAPGothic - - - - - MotoyaG04GothicMono - IPAGothic - - MS Gothic - - - - MotoyaG04GothicMono - IPAGothic - - MS ゴシック - - - - MS Gothic - - IPAGothic - - - - MS ゴシック - - IPAGothic - - - - - MotoyaG04MinchoMono - IPAMincho - - MS Mincho - - - - MotoyaG04MinchoMono - IPAMincho - - MS 明朝 - - - - MS Mincho - - IPAMincho - - - - MS 明朝 - - IPAMincho - - - - - MotoyaG04Mincho - IPAPMincho - - MS PMincho - - - - MotoyaG04Mincho - IPAPMincho - - MS P明朝 - - - - MS PMincho - - IPAPMincho - - - - MS P明朝 - - IPAPMincho - - - - - - IPAPGothic - - MotoyaG04Gothic - - - - - IPAGothic - - MotoyaG04GothicMono - - - - - IPAPMincho - - MotoyaG04Mincho - - - - - IPAMincho - - MotoyaG04MinchoMono - - - - - - MSung GB18030 - - Simsun - - - - MSung GB18030 - - 宋体 - - - - Simsun - - MSung GB18030 - - - - 宋体 - - MSung GB18030 - - - - - MSung GB18030 - - NSimsun - - - - MSung GB18030 - - 新宋体 - - - - NSimsun - - MSung GB18030 - - - - 新宋体 - - MSung GB18030 - - - - - MYingHeiGB18030 - - SimHei - - - - MYingHeiGB18030 - - 黑体 - - - - SimHei - - MYingHeiGB18030 - - - - 黑体 - - MYingHeiGB18030 - - - - - - - MSung B5HK - - PMingLiU - - - - MSung B5HK - - PMingLiU_HKSCS - - - - MSung B5HK - - 新細明體 - - - - MSung B5HK - - 新細明體_HKSCS - - - - PMingLiU - - MSung B5HK - - - - PMingLiU_HKSCS - - MSung B5HK - - - - 新細明體 - - MSung B5HK - - - - 新細明體_HKSCS - - MSung B5HK - - - - - MSung B5HK - - MingLiU - - - - MSung B5HK - - MingLiU_HKSCS - - - - MSung B5HK - - 細明體 - - - - MSung B5HK - - 細明體_HKSCS - - - - MingLiU - - MSung B5HK - - - - MingLiU_HKSCS - - MSung B5HK - - - - 細明體 - - MSung B5HK - - - - 細明體_HKSCS - - MSung B5HK - - - - - - Gulim - 굴림 - GulimChe - 굴림체 - Dotum - 돋움 - Dotumche - 돋움체 - MalgunGothic - 맑은고딕 - - NanumGothic - - - - Batang - 바탕 - Batangche - 바탕체 - - NanumMyeongjo - - - - - - - zh-CN - - - serif - - - MSung GB18030 - - - - - zh-CN - - - sans-serif - - - MYingHeiGB18030 - MYingHeiB5HK - Droid Sans Fallback - - - - - zh-CN - - - monospace - - - MYingHeiGB18030 - MYingHeiB5HK - Droid Sans Fallback - - - - - - - zh-TW - - - serif - - - MSung B5HK - MSung GB18030 - - - - - zh-TW - - - sans-serif - - - MYingHeiB5HK - MYingHeiGB18030 - Droid Sans Fallback - - - - - zh-TW - - - monospace - - - MYingHeiB5HK - MYingHeiGB18030 - Droid Sans Fallback - - - - - - - ja - - - serif - - - MotoyaG04Mincho - IPAPMincho - - - - - ja - - - sans-serif - - - MotoyaG04Gothic - IPAPGothic - - - - - ja - - - monospace - - - MotoyaG04GothicMono - IPAGothic - - - - - - - ko - - - serif - - - NanumMyeongjo - - - - - ko - - - sans-serif - - - NanumGothic - - - - - - MYingHeiB5HK - MYingHeiGB18030 - MSung GB18030 - MSung B5HK - - - - true - true - hintslight - true - none - - - - - Noto Sans Thai - Noto Sans Thai UI - Noto Serif Thai - Noto Serif Thai UI - Noto Sans Devanagari - Noto Sans Devanagari UI - Noto Sans Tamil - Noto Sans Tamil UI - Noto Sans Armenian - Noto Serif Armenian - Noto Sans Georgian - Noto Serif Georgian - Noto Sans Hebrew - Noto Sans Ethiopic - - true - false - hintfull - true - - - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/fontconfig-2.7.1-r34.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/fontconfig-2.7.1-r34.ebuild deleted file mode 120000 index d976016660..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/fontconfig-2.7.1-r34.ebuild +++ /dev/null @@ -1 +0,0 @@ -fontconfig-2.7.1.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/fontconfig-2.7.1.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/fontconfig-2.7.1.ebuild deleted file mode 100644 index 777586a263..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/fontconfig/fontconfig-2.7.1.ebuild +++ /dev/null @@ -1,155 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/fontconfig/fontconfig-2.7.1-r1.ebuild,v 1.1 2009/08/23 22:48:21 dirtyepic Exp $ - -EAPI="2" - -inherit eutils libtool toolchain-funcs flag-o-matic - -DESCRIPTION="A library for configuring and customizing font access" -HOMEPAGE="http://fontconfig.org/" -SRC_URI="http://fontconfig.org/release/${P}.tar.gz" - -LICENSE="fontconfig" -SLOT="1.0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~sparc-fbsd ~x86-fbsd" -IUSE="cros_host doc -highdpi -is_desktop" - -# Purposefully dropped the xml USE flag and libxml2 support. Having this is -# silly since expat is the preferred way to go per upstream and libxml2 support -# simply exists as a fallback when expat isn't around. expat support is the main -# way to go and every other distro uses it. By using the xml USE flag to enable -# libxml2 support, this confuses users and results in most people getting the -# non-standard behavior of libxml2 usage since most profiles have USE=xml - -RDEPEND=">=media-libs/freetype-2.2.1 - >=dev-libs/expat-1.95.3" -DEPEND="${RDEPEND} - dev-util/pkgconfig - doc? ( - app-text/docbook-sgml-utils[jadetex] - =app-text/docbook-sgml-dtd-3.1* - )" -PDEPEND="app-admin/eselect-fontconfig" - -# Checks that a passed-in fontconfig default symlink (e.g. "10-autohint.conf") -# is present and dies if it isn't. -check_fontconfig_default() { - local path="${D}"/etc/fonts/conf.d/"$1" - if [ ! -L "$path" ]; then - die "Didn't find $1 among default fontconfig settings (at $path)." - fi -} - -src_prepare() { - epatch "${FILESDIR}"/${P}-latin-reorder.patch #130466 - epatch "${FILESDIR}"/${P}-fonts-config.patch - epatch "${FILESDIR}"/${P}-metric-aliases.patch - epatch "${FILESDIR}"/${P}-conf-d.patch - epunt_cxx #74077 - - # Needed to get a sane .so versioning on fbsd, please dont drop - # If you have to run eautoreconf, you can also leave the elibtoolize call as - # it will be a no-op. - elibtoolize -} - -src_configure() { - local myconf - if tc-is-cross-compiler; then - myconf="--with-arch=${ARCH}" - replace-flags -mtune=* -DMTUNE_CENSORED - replace-flags -march=* -DMARCH_CENSORED - filter-flags -mfpu=* -mfloat-abi=* - fi - # Make the global font cache be /usr/share/cache/fontconfig - # by passing /usr/share for the localstatedir - econf $(use_enable doc docs) \ - --localstatedir=/usr/share \ - --with-docdir=/usr/share/doc/${PF} \ - --with-default-fonts=/usr/share/fonts \ - --with-add-fonts=/usr/local/share/fonts \ - ${myconf} || die -} - -src_install() { - emake DESTDIR="${D}" install || die - - #fc-lang directory contains language coverage datafiles - #which are needed to test the coverage of fonts. - insinto /usr/share/fc-lang - doins fc-lang/*.orth - - insinto /etc/fonts - doins "${S}"/fonts.conf - doins "${FILESDIR}"/local.conf - - # Test that fontconfig's defaults for basic rendering settings match what we - # want to use. - check_fontconfig_default 10-autohint.conf - check_fontconfig_default 10-hinting.conf - check_fontconfig_default 10-hinting-slight.conf - check_fontconfig_default 10-sub-pixel-rgb.conf - - # There's a lot of variability across different displays with subpixel - # rendering. Until we have a better solution, turn it off and use grayscale - # instead on desktop boards. Also disable it on high-DPI displays, since - # they have little need for it and use subpixel positioning, which can - # interact poorly with it (http://crbug.com/125066#c8). Additionally, - # disable it when installing to the host sysroot so the images in the - # initramfs package won't use subpixel rendering (http://crosbug.com/27872). - if use is_desktop || use highdpi || use cros_host; then - rm "${D}"/etc/fonts/conf.d/10-sub-pixel-rgb.conf - dosym ../conf.avail/10-no-sub-pixel.conf /etc/fonts/conf.d/. - check_fontconfig_default 10-no-sub-pixel.conf - fi - - # Disable hinting on high-DPI displays, where we're already using subpixel - # positioning. - if use highdpi; then - rm "${D}"/etc/fonts/conf.d/10-hinting.conf - dosym ../conf.avail/10-unhinted.conf /etc/fonts/conf.d/. - check_fontconfig_default 10-unhinted.conf - fi - - doman $(find "${S}" -type f -name *.1 -print) - newman doc/fonts-conf.5 fonts.conf.5 - dodoc doc/fontconfig-user.{txt,pdf} - - if use doc; then - doman doc/Fc*.3 - dohtml doc/fontconfig-devel.html - dodoc doc/fontconfig-devel.{txt,pdf} - fi - - dodoc AUTHORS ChangeLog README || die - - # Changes should be made to /etc/fonts/local.conf, and as we had - # too much problems with broken fonts.conf, we force update it ... - # (11 Dec 2002) - echo 'CONFIG_PROTECT_MASK="/etc/fonts/fonts.conf"' > "${T}"/37fontconfig - doenvd "${T}"/37fontconfig - - # As of fontconfig 2.7, everything sticks their noses in here. - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/usr/share/cache/fontconfig"' > "${D}"/etc/sandbox.d/37fontconfig -} - -pkg_postinst() { - einfo "Cleaning broken symlinks in "${ROOT}"etc/fonts/conf.d/" - find -L "${ROOT}"etc/fonts/conf.d/ -type l -delete - - echo - ewarn "Please make fontconfig configuration changes using \`eselect fontconfig\`" - ewarn "Any changes made to /etc/fonts/fonts.conf will be overwritten." - ewarn - ewarn "If you need to reset your configuration to upstream defaults, delete" - ewarn "the directory ${ROOT}etc/fonts/conf.d/ and re-emerge fontconfig." - echo - - if [[ ${ROOT} = / ]]; then - ebegin "Creating global font cache" - /usr/bin/fc-cache -sr - eend $? - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/Manifest b/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/Manifest deleted file mode 100644 index 202a6ea9a3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST FreeImage3153.pdf 1004540 SHA256 325767978f0208a6dd2d2f6cb1cc184cea6aec843d9948a051c41b6a16284546 SHA512 91775a5ec9227fc5a42431383157d82d2d2bd40b92e234518e4b347cfd20c873fb29ec84289d7bdee127b01c02b9eb5da24c386d6f78a7346684fccee158f939 WHIRLPOOL afdad90143a9ed3a62fa8dd0666355fdeaa3689e15873778b47927f6a6c170da88d7891f94f5889c94a5a54d608845c16a6c033a65afc9477d9deec9f12af5ee -DIST FreeImage3153.zip 4681769 SHA256 4618d59f2d9a20583b0f5fec99dcf832ccc3f317897b10592b85e7648375c044 SHA512 2cc38218cf1e8d403faa71d2337009ff6c0c60e1833eea2e19ddaf2fedba001198f4bff9805c4e815653d7bee79bac6a9132a7c9af69f59d5ee1cae531ad2069 WHIRLPOOL 89f8ecd1152d303b7c5613314ab7f2b68d66fb5c1cccf214e58a8c031a6d22ad842a5b37240ab38d9f6eb035f6d6a688afe6591da9c22898e882b1baecac0e50 diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/files/freeimage-3.15.3-libpng-1.2.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/files/freeimage-3.15.3-libpng-1.2.patch deleted file mode 100644 index cc15a17e65..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/files/freeimage-3.15.3-libpng-1.2.patch +++ /dev/null @@ -1,74 +0,0 @@ -freeimage assumes libpng-1.4.x api in a few places - ---- a/Source/FreeImage/PluginPNG.cpp -+++ b/Source/FreeImage/PluginPNG.cpp -@@ -106,7 +106,11 @@ ReadMetadata(png_structp png_ptr, png_infop info_ptr, FIBITMAP *dib) { - tag = FreeImage_CreateTag(); - if(!tag) return FALSE; - -+#ifdef PNG_iTXt_SUPPORTED - DWORD tag_length = (DWORD) MAX(text_ptr[i].text_length, text_ptr[i].itxt_length); -+#else -+ DWORD tag_length = (DWORD) text_ptr[i].text_length; -+#endif - - FreeImage_SetTagLength(tag, tag_length); - FreeImage_SetTagCount(tag, tag_length); -@@ -153,9 +157,11 @@ WriteMetadata(png_structp png_ptr, png_infop info_ptr, FIBITMAP *dib) { - text_metadata.key = (char*)FreeImage_GetTagKey(tag); // keyword, 1-79 character description of "text" - text_metadata.text = (char*)FreeImage_GetTagValue(tag); // comment, may be an empty string (ie "") - text_metadata.text_length = FreeImage_GetTagLength(tag);// length of the text string -+#ifdef PNG_iTXt_SUPPORTED - text_metadata.itxt_length = FreeImage_GetTagLength(tag);// length of the itxt string - text_metadata.lang = 0; // language code, 0-79 characters or a NULL pointer - text_metadata.lang_key = 0; // keyword translated UTF-8 string, 0 or more chars or a NULL pointer -+#endif - - // set the tag - png_set_text(png_ptr, info_ptr, &text_metadata, 1); -@@ -175,9 +181,11 @@ WriteMetadata(png_structp png_ptr, png_infop info_ptr, FIBITMAP *dib) { - text_metadata.key = (char*)g_png_xmp_keyword; // keyword, 1-79 character description of "text" - text_metadata.text = (char*)FreeImage_GetTagValue(tag); // comment, may be an empty string (ie "") - text_metadata.text_length = FreeImage_GetTagLength(tag);// length of the text string -+#ifdef PNG_iTXt_SUPPORTED - text_metadata.itxt_length = FreeImage_GetTagLength(tag);// length of the itxt string - text_metadata.lang = 0; // language code, 0-79 characters or a NULL pointer - text_metadata.lang_key = 0; // keyword translated UTF-8 string, 0 or more chars or a NULL pointer -+#endif - - // set the tag - png_set_text(png_ptr, info_ptr, &text_metadata, 1); -@@ -559,7 +559,11 @@ Load(FreeImageIO *io, fi_handle handle, int page, int flags, void *data) { - - if (png_get_valid(png_ptr, info_ptr, PNG_INFO_iCCP)) { - png_charp profile_name = NULL; -+#if PNG_LIBPNG_VER_MINOR < 4 -+ png_charp profile_data = NULL; -+#else - png_bytep profile_data = NULL; -+#endif - png_uint_32 profile_length = 0; - int compression_type; - -@@ -599,7 +599,9 @@ Load(FreeImageIO *io, fi_handle handle, int page, int flags, void *data) { - row_pointers[height - 1 - k] = FreeImage_GetScanLine(dib, k); - } - -+#ifdef PNG_BENIGN_ERRORS_SUPPORTED - png_set_benign_errors(png_ptr, 1); -+#endif - png_read_image(png_ptr, row_pointers); - - // check if the bitmap contains transparency, if so enable it in the header -@@ -833,7 +835,11 @@ Save(FreeImageIO *io, FIBITMAP *dib, fi_handle handle, int page, int flags, void - - FIICCPROFILE *iccProfile = FreeImage_GetICCProfile(dib); - if (iccProfile->size && iccProfile->data) { -+#if PNG_LIBPNG_VER_MINOR < 4 -+ png_set_iCCP(png_ptr, info_ptr, "Embedded Profile", 0, (png_charp)iccProfile->data, iccProfile->size); -+#else - png_set_iCCP(png_ptr, info_ptr, "Embedded Profile", 0, (png_const_bytep)iccProfile->data, iccProfile->size); -+#endif - } - - // write metadata diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch deleted file mode 100644 index f83d87f5ae..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/files/freeimage-3.15.3-r2-unbundling.patch +++ /dev/null @@ -1,639 +0,0 @@ -lots of fixes here: - - use system graphics libraries - - make all of them optional - - drop root users from install (fix user installs) - - make static lib build optional - - link with CXX and CXXFLAGS (since this is C++ code) - ---- Makefile.gnu -+++ Makefile.gnu -@@ -11,7 +11,24 @@ - # Converts cr/lf to just lf - DOS2UNIX = dos2unix - --LIBRARIES = -lstdc++ -+PKG_CONFIG ?= pkg-config -+ -+USE_EXR ?= yes -+USE_JPEG ?= yes -+USE_JPEG2K ?= yes -+USE_MNG ?= yes -+USE_PNG ?= yes -+USE_TIFF ?= yes -+USE_RAW ?= yes -+ -+LIBRARIES-yes = $(shell $(PKG_CONFIG) --libs zlib) -+LIBRARIES-$(USE_EXR) += $(shell $(PKG_CONFIG) --libs OpenEXR) -+LIBRARIES-$(USE_JPEG) += -ljpeg -+LIBRARIES-$(USE_JPEG2K) += $(shell $(PKG_CONFIG) --libs libopenjpeg) -+LIBRARIES-$(USE_MNG) += -lmng -+LIBRARIES-$(USE_PNG) += $(shell $(PKG_CONFIG) --libs libpng) -+LIBRARIES-$(USE_TIFF) += $(shell $(PKG_CONFIG) --libs libtiff-4 IlmBase) -+LIBRARIES-$(USE_RAW) += $(shell $(PKG_CONFIG) --libs libraw) - - MODULES = $(SRCS:.c=.o) - MODULES := $(MODULES:.cpp=.o) -@@ -64,13 +81,15 @@ - $(AR) r $@ $(MODULES) - - $(SHAREDLIB): $(MODULES) -- $(CC) -s -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES) -+ $(CXX) $(CXXFLAGS) -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES-yes) - - install: - install -d $(INCDIR) $(INSTALLDIR) -- install -m 644 -o root -g root $(HEADER) $(INCDIR) -- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR) -- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR) -+ install -m 644 $(HEADER) $(INCDIR) -+ifneq ($(STATICLIB),) -+ install -m 644 $(STATICLIB) $(INSTALLDIR) -+endif -+ install -m 755 $(SHAREDLIB) $(INSTALLDIR) - ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME) - ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME) - # ldconfig ---- Source/FreeImage/J2KHelper.cpp -+++ Source/FreeImage/J2KHelper.cpp -@@ -21,7 +21,7 @@ - - #include "FreeImage.h" - #include "Utilities.h" --#include "../LibOpenJPEG/openjpeg.h" -+#include - - /** - Divide an integer by a power of 2 and round upwards ---- Source/FreeImage/PluginEXR.cpp -+++ Source/FreeImage/PluginEXR.cpp -@@ -22,16 +22,16 @@ - - #include "FreeImage.h" - #include "Utilities.h" --#include "../OpenEXR/IlmImf/ImfIO.h" --#include "../OpenEXR/Iex/Iex.h" --#include "../OpenEXR/IlmImf/ImfOutputFile.h" --#include "../OpenEXR/IlmImf/ImfInputFile.h" --#include "../OpenEXR/IlmImf/ImfRgbaFile.h" --#include "../OpenEXR/IlmImf/ImfChannelList.h" --#include "../OpenEXR/IlmImf/ImfRgba.h" --#include "../OpenEXR/IlmImf/ImfArray.h" --#include "../OpenEXR/IlmImf/ImfPreviewImage.h" --#include "../OpenEXR/Half/half.h" -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include - - - // ========================================================== ---- Source/FreeImage/PluginJ2K.cpp -+++ Source/FreeImage/PluginJ2K.cpp -@@ -21,7 +21,7 @@ - - #include "FreeImage.h" - #include "Utilities.h" --#include "../LibOpenJPEG/openjpeg.h" -+#include - - // ========================================================== - // Plugin Interface ---- Source/FreeImage/PluginJP2.cpp -+++ Source/FreeImage/PluginJP2.cpp -@@ -21,7 +21,7 @@ - - #include "FreeImage.h" - #include "Utilities.h" --#include "../LibOpenJPEG/openjpeg.h" -+#include - - // ========================================================== - // Plugin Interface ---- Source/FreeImage/PluginPNG.cpp -+++ Source/FreeImage/PluginPNG.cpp -@@ -37,8 +37,8 @@ - - // ---------------------------------------------------------- - --#include "../ZLib/zlib.h" --#include "../LibPNG/png.h" -+#include -+#include - - // ---------------------------------------------------------- - ---- Source/transupp.c -+++ Source/transupp.c -@@ -15,8 +15,7 @@ - /* Although this file really shouldn't have access to the library internals, - * it's helpful to let it call jround_up() and jcopy_block_row(). - */ --#define JPEG_INTERNALS -- -+#include - #include "jinclude.h" - #include "jpeglib.h" - #include "transupp.h" /* My own external interface */ ---- Source/FreeImage/ZLibInterface.cpp -+++ Source/FreeImage/ZLibInterface.cpp -@@ -19,10 +19,10 @@ - // Use at your own risk! - // ========================================================== - --#include "../ZLib/zlib.h" -+#include - #include "FreeImage.h" - #include "Utilities.h" --#include "../ZLib/zutil.h" /* must be the last header because of error C3163 in VS2008 (_vsnprintf defined in stdio.h) */ -+#define OS_CODE 0x03 - - /** - Compresses a source buffer into a target buffer, using the ZLib library. ---- Source/FreeImage/PluginG3.cpp -+++ Source/FreeImage/PluginG3.cpp -@@ -20,7 +20,7 @@ - // Use at your own risk! - // ========================================================== - --#include "../LibTIFF4/tiffiop.h" -+#include "tiffiop.h" - - #include "FreeImage.h" - #include "Utilities.h" ---- Source/FreeImage/PluginJPEG.cpp -+++ Source/FreeImage/PluginJPEG.cpp -@@ -35,11 +35,15 @@ - #undef FAR - #include - --#include "../LibJPEG/jinclude.h" --#include "../LibJPEG/jpeglib.h" --#include "../LibJPEG/jerror.h" -+#include -+#include -+#include -+#include -+#include - } - -+#define SIZEOF(object) ((size_t) sizeof(object)) -+ - #include "FreeImage.h" - #include "Utilities.h" - ---- Source/FreeImageToolkit/JPEGTransform.cpp -+++ Source/FreeImageToolkit/JPEGTransform.cpp -@@ -25,10 +25,11 @@ - #undef FAR - #include - --#include "../LibJPEG/jinclude.h" --#include "../LibJPEG/jpeglib.h" --#include "../LibJPEG/jerror.h" --#include "../LibJPEG/transupp.h" -+#include -+#include -+#include -+#include -+#include "transupp.h" - } - - #include "FreeImage.h" ---- Makefile.fip -+++ Makefile.fip -@@ -11,7 +11,24 @@ - # Converts cr/lf to just lf - DOS2UNIX = dos2unix - --LIBRARIES = -lstdc++ -+PKG_CONFIG ?= pkg-config -+ -+USE_EXR ?= yes -+USE_JPEG ?= yes -+USE_JPEG2K ?= yes -+USE_MNG ?= yes -+USE_PNG ?= yes -+USE_TIFF ?= yes -+USE_RAW ?= yes -+ -+LIBRARIES-yes = $(shell $(PKG_CONFIG) --libs zlib) -+LIBRARIES-$(USE_EXR) += $(shell $(PKG_CONFIG) --libs OpenEXR) -+LIBRARIES-$(USE_JPEG) += -ljpeg -+LIBRARIES-$(USE_JPEG2K) += $(shell $(PKG_CONFIG) --libs libopenjpeg) -+LIBRARIES-$(USE_MNG) += -lmng -+LIBRARIES-$(USE_PNG) += $(shell $(PKG_CONFIG) --libs libpng) -+LIBRARIES-$(USE_TIFF) += $(shell $(PKG_CONFIG) --libs libtiff-4 IlmBase) -+LIBRARIES-$(USE_RAW) += $(shell $(PKG_CONFIG) --libs libraw) - - MODULES = $(SRCS:.c=.o) - MODULES := $(MODULES:.cpp=.o) -@@ -65,14 +82,18 @@ - $(AR) r $@ $(MODULES) - - $(SHAREDLIB): $(MODULES) -- $(CC) -s -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES) -+ $(CXX) $(CXXFLAGS) -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES-yes) - - install: - install -d $(INCDIR) $(INSTALLDIR) -- install -m 644 -o root -g root $(HEADER) $(INCDIR) -- install -m 644 -o root -g root $(HEADERFIP) $(INCDIR) -- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR) -- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR) -+ install -m 644 $(HEADER) $(INCDIR) -+ install -m 644 $(HEADERFIP) $(INCDIR) -+ifneq ($(STATICLIB),) -+ install -m 644 $(STATICLIB) $(INSTALLDIR) -+endif -+ install -m 755 $(SHAREDLIB) $(INSTALLDIR) -+ ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME) -+ ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME) - - clean: - rm -f core Dist/*.* u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME) ---- Makefile.srcs -+++ Makefile.srcs -@@ -1,6 +1,14 @@ -+USE_EXR ?= yes -+USE_JPEG ?= yes -+USE_JPEG2K ?= yes -+USE_MNG ?= yes -+USE_PNG ?= yes -+USE_TIFF ?= yes -+USE_RAW ?= yes -+ - VER_MAJOR = 3 - VER_MINOR = 15.3 --SRCS = \ -+SRCS-yes = \ - Source/FreeImage/BitmapAccess.cpp \ - Source/FreeImage/ColorLookup.cpp \ - Source/FreeImage/FreeImage.cpp \ -@@ -17,36 +25,74 @@ SRCS = \ - Source/FreeImage/GetType.cpp \ - Source/FreeImage/MemoryIO.cpp \ - Source/FreeImage/PixelAccess.cpp \ -+ -+SRCS-$(USE_JPEG2K) += \ - Source/FreeImage/J2KHelper.cpp \ -+ -+SRCS-$(USE_MNG) += \ - Source/FreeImage/MNGHelper.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/Plugin.cpp \ - Source/FreeImage/PluginBMP.cpp \ - Source/FreeImage/PluginCUT.cpp \ - Source/FreeImage/PluginDDS.cpp \ -+ -+SRCS-$(USE_EXR) += \ - Source/FreeImage/PluginEXR.cpp \ -+ -+SRCS-$(USE_TIFF) += \ - Source/FreeImage/PluginG3.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginGIF.cpp \ - Source/FreeImage/PluginHDR.cpp \ - Source/FreeImage/PluginICO.cpp \ - Source/FreeImage/PluginIFF.cpp \ -+ -+SRCS-$(USE_JPEG2K) += \ - Source/FreeImage/PluginJ2K.cpp \ -+ -+SRCS-$(USE_MNG) += \ - Source/FreeImage/PluginJNG.cpp \ -+ -+SRCS-$(USE_JPEG2K) += \ - Source/FreeImage/PluginJP2.cpp \ -+ -+SRCS-$(USE_JPEG) += \ - Source/FreeImage/PluginJPEG.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginKOALA.cpp \ -+ -+SRCS-$(USE_MNG) += \ - Source/FreeImage/PluginMNG.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginPCD.cpp \ - Source/FreeImage/PluginPCX.cpp \ - Source/FreeImage/PluginPFM.cpp \ - Source/FreeImage/PluginPICT.cpp \ -+ -+SRCS-$(USE_PNG) += \ - Source/FreeImage/PluginPNG.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginPNM.cpp \ - Source/FreeImage/PluginPSD.cpp \ - Source/FreeImage/PluginRAS.cpp \ -+ -+SRCS-$(USE_RAW) += \ - Source/FreeImage/PluginRAW.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginSGI.cpp \ - Source/FreeImage/PluginTARGA.cpp \ -+ -+SRCS-$(USE_TIFF) += \ - Source/FreeImage/PluginTIFF.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginWBMP.cpp \ - Source/FreeImage/PluginXBM.cpp \ - Source/FreeImage/PluginXPM.cpp \ -@@ -83,7 +129,11 @@ SRCS = \ - Source/Metadata/IPTC.cpp \ - Source/Metadata/TagConversion.cpp \ - Source/Metadata/TagLib.cpp \ -+ -+SRCS-$(USE_TIFF) += \ - Source/Metadata/XTIFF.cpp \ -+ -+SRCS-yes += \ - Source/FreeImageToolkit/Background.cpp \ - Source/FreeImageToolkit/BSplineRotate.cpp \ - Source/FreeImageToolkit/Channels.cpp \ -@@ -92,10 +142,18 @@ SRCS = \ - Source/FreeImageToolkit/CopyPaste.cpp \ - Source/FreeImageToolkit/Display.cpp \ - Source/FreeImageToolkit/Flip.cpp \ -+ -+SRCS-$(USE_JPEG) += \ - Source/FreeImageToolkit/JPEGTransform.cpp \ -+ -+SRCS-yes += \ - Source/FreeImageToolkit/MultigridPoissonSolver.cpp \ - Source/FreeImageToolkit/Rescale.cpp \ - Source/FreeImageToolkit/Resize.cpp \ -+ -+SRCS-$(USE_JPEG) += \ -+ Source/transupp.c -+SRCS = $(SRCS-yes) - INCLS = \ - Examples/OpenGL/TextureManager/TextureManager.h \ - Examples/Plugin/PluginCradle.h \ -@@ -116,7 +174,17 @@ - Wrapper/FreeImagePlus/test/fipTest.h \ - TestAPI/TestSuite.h - --INCLUDE = -I. \ -+INCLUDE-yes = -I. \ - -ISource \ - -ISource/Metadata \ - -ISource/FreeImageToolkit \ -+ -+INCLUDE-yes += $(shell $(PKG_CONFIG) --cflags-only-I zlib) -+INCLUDE-$(USE_EXR) += -DUSE_EXR $(shell $(PKG_CONFIG) --cflags-only-I OpenEXR) -+INCLUDE-$(USE_JPEG) += -DUSE_JPEG -+INCLUDE-$(USE_JPEG2K) += -DUSE_JPEG2K $(shell $(PKG_CONFIG) --cflags-only-I libopenjpeg) -+INCLUDE-$(USE_MNG) += -DUSE_MNG -+INCLUDE-$(USE_PNG) += -DUSE_PNG $(shell $(PKG_CONFIG) --cflags-only-I libpng) -+INCLUDE-$(USE_TIFF) += -DUSE_TIFF $(shell $(PKG_CONFIG) --cflags-only-I libtiff-4 IlmBase) -+INCLUDE-$(USE_RAW) += -DUSE_RAW $(shell $(PKG_CONFIG) --cflags-only-I libraw) -+INCLUDE = $(INCLUDE-yes) ---- fipMakefile.srcs -+++ fipMakefile.srcs -@@ -1,6 +1,14 @@ -+USE_EXR ?= yes -+USE_JPEG ?= yes -+USE_JPEG2K ?= yes -+USE_MNG ?= yes -+USE_PNG ?= yes -+USE_TIFF ?= yes -+USE_RAW ?= yes -+ - VER_MAJOR = 3 - VER_MINOR = 15.3 --SRCS = \ -+SRCS-yes = \ - Source/FreeImage/BitmapAccess.cpp \ - Source/FreeImage/ColorLookup.cpp \ - Source/FreeImage/FreeImage.cpp \ -@@ -9,36 +17,74 @@ - Source/FreeImage/GetType.cpp \ - Source/FreeImage/MemoryIO.cpp \ - Source/FreeImage/PixelAccess.cpp \ -+ -+SRCS-$(USE_JPEG2K) += \ - Source/FreeImage/J2KHelper.cpp \ -+ -+SRCS-$(USE_MNG) += \ - Source/FreeImage/MNGHelper.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/Plugin.cpp \ - Source/FreeImage/PluginBMP.cpp \ - Source/FreeImage/PluginCUT.cpp \ - Source/FreeImage/PluginDDS.cpp \ -+ -+SRCS-$(USE_EXR) += \ - Source/FreeImage/PluginEXR.cpp \ -+ -+SRCS-$(USE_TIFF) += \ - Source/FreeImage/PluginG3.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginGIF.cpp \ - Source/FreeImage/PluginHDR.cpp \ - Source/FreeImage/PluginICO.cpp \ - Source/FreeImage/PluginIFF.cpp \ -+ -+SRCS-$(USE_JPEG2K) += \ - Source/FreeImage/PluginJ2K.cpp \ -+ -+SRCS-$(USE_MNG) += \ - Source/FreeImage/PluginJNG.cpp \ -+ -+SRCS-$(USE_JPEG2K) += \ - Source/FreeImage/PluginJP2.cpp \ -+ -+SRCS-$(USE_JPEG) += \ - Source/FreeImage/PluginJPEG.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginKOALA.cpp \ -+ -+SRCS-$(USE_MNG) += \ - Source/FreeImage/PluginMNG.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginPCD.cpp \ - Source/FreeImage/PluginPCX.cpp \ - Source/FreeImage/PluginPFM.cpp \ - Source/FreeImage/PluginPICT.cpp \ -+ -+SRCS-$(USE_PNG) += \ - Source/FreeImage/PluginPNG.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginPNM.cpp \ - Source/FreeImage/PluginPSD.cpp \ - Source/FreeImage/PluginRAS.cpp \ -+ -+SRCS-$(USE_RAW) += \ - Source/FreeImage/PluginRAW.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginSGI.cpp \ - Source/FreeImage/PluginTARGA.cpp \ -+ -+SRCS-$(USE_TIFF) += \ - Source/FreeImage/PluginTIFF.cpp \ -+ -+SRCS-yes += \ - Source/FreeImage/PluginWBMP.cpp \ - Source/FreeImage/PluginXBM.cpp \ - Source/FreeImage/PluginXPM.cpp \ -@@ -75,7 +121,11 @@ - Source/Metadata/IPTC.cpp \ - Source/Metadata/TagConversion.cpp \ - Source/Metadata/TagLib.cpp \ -+ -+SRCS-$(USE_TIFF) += \ - Source/Metadata/XTIFF.cpp \ -+ -+SRCS-yes += \ - Source/FreeImageToolkit/Background.cpp \ - Source/FreeImageToolkit/BSplineRotate.cpp \ - Source/FreeImageToolkit/Channels.cpp \ -@@ -84,7 +134,11 @@ - Source/FreeImageToolkit/CopyPaste.cpp \ - Source/FreeImageToolkit/Display.cpp \ - Source/FreeImageToolkit/Flip.cpp \ -+ -+SRCS-$(USE_JPEG) += \ - Source/FreeImageToolkit/JPEGTransform.cpp \ -+ -+SRCS-yes += \ - Source/FreeImageToolkit/MultigridPoissonSolver.cpp \ - Source/FreeImageToolkit/Rescale.cpp \ - Source/FreeImageToolkit/Resize.cpp \ -@@ -95,6 +149,11 @@ - Wrapper/FreeImagePlus/src/fipTag.cpp \ - Wrapper/FreeImagePlus/src/fipWinImage.cpp \ - Wrapper/FreeImagePlus/src/FreeImagePlus.cpp -+ -+SRCS-$(USE_JPEG) += \ -+ Source/transupp.c -+ -+SRCS = $(SRCS-yes) - INCLUDE = -I. \ - -ISource \ - -ISource/Metadata \ ---- Source/FreeImage/PluginRAW.cpp -+++ Source/FreeImage/PluginRAW.cpp -@@ -19,7 +19,7 @@ - // Use at your own risk! - // ========================================================== - --#include "../LibRawLite/libraw/libraw.h" -+#include - - #include "FreeImage.h" - #include "Utilities.h" ---- Source/Metadata/XTIFF.cpp -+++ Source/Metadata/XTIFF.cpp -@@ -29,7 +29,7 @@ - #pragma warning (disable : 4786) // identifier was truncated to 'number' characters - #endif - --#include "../LibTIFF4/tiffiop.h" -+#include "tiffiop.h" - - #include "FreeImage.h" - #include "Utilities.h" ---- Source/FreeImage/PluginTIFF.cpp -+++ Source/FreeImage/PluginTIFF.cpp -@@ -37,9 +37,9 @@ - - #include "FreeImage.h" - #include "Utilities.h" --#include "../LibTIFF4/tiffiop.h" -+#include "tiffiop.h" - #include "../Metadata/FreeImageTag.h" --#include "../OpenEXR/Half/half.h" -+#include - - #include "FreeImageIO.h" - #include "PSDParser.h" ---- Source/tiffiop.h -+++ Source/tiffiop.h -@@ -30,7 +30,9 @@ - * ``Library-private'' definitions. - */ - --#include "tif_config.h" -+#include -+#define HAVE_SEARCH_H -+#define HAVE_FCNTL_H - - #ifdef HAVE_FCNTL_H - # include ---- Source/FreeImage/Plugin.cpp -+++ Source/FreeImage/Plugin.cpp -@@ -223,23 +223,33 @@ - */ - s_plugins->AddNode(InitBMP); - s_plugins->AddNode(InitICO); -+#ifdef USE_JPEG - s_plugins->AddNode(InitJPEG); -+#endif -+#ifdef USE_MNG - s_plugins->AddNode(InitJNG); -+#endif - s_plugins->AddNode(InitKOALA); - s_plugins->AddNode(InitIFF); -+#ifdef USE_MNG - s_plugins->AddNode(InitMNG); -+#endif - s_plugins->AddNode(InitPNM, NULL, "PBM", "Portable Bitmap (ASCII)", "pbm", "^P1"); - s_plugins->AddNode(InitPNM, NULL, "PBMRAW", "Portable Bitmap (RAW)", "pbm", "^P4"); - s_plugins->AddNode(InitPCD); - s_plugins->AddNode(InitPCX); - s_plugins->AddNode(InitPNM, NULL, "PGM", "Portable Greymap (ASCII)", "pgm", "^P2"); - s_plugins->AddNode(InitPNM, NULL, "PGMRAW", "Portable Greymap (RAW)", "pgm", "^P5"); -+#ifdef USE_PNG - s_plugins->AddNode(InitPNG); -+#endif - s_plugins->AddNode(InitPNM, NULL, "PPM", "Portable Pixelmap (ASCII)", "ppm", "^P3"); - s_plugins->AddNode(InitPNM, NULL, "PPMRAW", "Portable Pixelmap (RAW)", "ppm", "^P6"); - s_plugins->AddNode(InitRAS); - s_plugins->AddNode(InitTARGA); -+#ifdef USE_TIFF - s_plugins->AddNode(InitTIFF); -+#endif - s_plugins->AddNode(InitWBMP); - s_plugins->AddNode(InitPSD); - s_plugins->AddNode(InitCUT); -@@ -248,14 +258,22 @@ - s_plugins->AddNode(InitDDS); - s_plugins->AddNode(InitGIF); - s_plugins->AddNode(InitHDR); -+#ifdef USE_TIFF - s_plugins->AddNode(InitG3); -+#endif - s_plugins->AddNode(InitSGI); -+#ifdef USE_EXR - s_plugins->AddNode(InitEXR); -+#endif -+#ifdef USE_JPEG2K - s_plugins->AddNode(InitJ2K); - s_plugins->AddNode(InitJP2); -+#endif - s_plugins->AddNode(InitPFM); - s_plugins->AddNode(InitPICT); -+#ifdef USE_RAW - s_plugins->AddNode(InitRAW); -+#endif - - // external plugin initialization - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/freeimage-3.15.3-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/freeimage-3.15.3-r2.ebuild deleted file mode 100644 index c879b6095c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/freeimage/freeimage-3.15.3-r2.ebuild +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/freeimage/freeimage-3.15.3-r1.ebuild,v 1.1 2013/01/09 23:38:23 vapier Exp $ - -EAPI="4" - -inherit toolchain-funcs eutils multilib - -MY_PN=FreeImage -MY_PV=${PV//.} -MY_P=${MY_PN}${MY_PV} - -DESCRIPTION="Image library supporting many formats" -HOMEPAGE="http://freeimage.sourceforge.net/" -SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip - mirror://sourceforge/${PN}/${MY_P}.pdf" - -LICENSE="|| ( GPL-2 FIPL-1.0 )" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="jpeg jpeg2k mng openexr png raw static-libs tiff" - -RDEPEND="sys-libs/zlib - jpeg? ( virtual/jpeg ) - jpeg2k? ( media-libs/openjpeg ) - mng? ( media-libs/libmng ) - openexr? ( media-libs/openexr ) - png? ( media-libs/libpng ) - raw? ( media-libs/libraw ) - tiff? ( - media-libs/ilmbase - media-libs/tiff - )" -DEPEND="${RDEPEND} - virtual/pkgconfig - app-arch/unzip" - -S=${WORKDIR}/${MY_PN} - -src_prepare() { - cd Source - cp LibJPEG/{transupp.c,transupp.h,jinclude.h} . || die - cp LibTIFF4/{tiffiop,tif_dir}.h . || die - rm -rf LibPNG LibMNG LibOpenJPEG ZLib OpenEXR LibRawLite LibTIFF4 LibJPEG || die - cd .. - edos2unix Makefile.{gnu,fip,srcs} fipMakefile.srcs */*.h */*/*.cpp - sed -i \ - -e "s:/./:/:g" \ - -e "s: ./: :g" \ - -e 's: Source: \\\n\tSource:g' \ - -e 's: Wrapper: \\\n\tWrapper:g' \ - -e 's: Examples: \\\n\tExamples:g' \ - -e 's: TestAPI: \\\n\tTestAPI:g' \ - -e 's: -ISource: \\\n\t-ISource:g' \ - -e 's: -IWrapper: \\\n\t-IWrapper:g' \ - Makefile.srcs fipMakefile.srcs || die - sed -i \ - -e "/LibJPEG/d" \ - -e "/LibPNG/d" \ - -e "/LibTIFF/d" \ - -e "/Source\/ZLib/d" \ - -e "/LibOpenJPEG/d" \ - -e "/OpenEXR/d" \ - -e "/LibRawLite/d" \ - -e "/LibMNG/d" \ - Makefile.srcs fipMakefile.srcs || die - epatch "${FILESDIR}"/${PF}-unbundling.patch - epatch "${FILESDIR}"/${P}-libpng-1.2.patch -} - -foreach_make() { - local m - for m in Makefile.{gnu,fip} ; do - emake -f ${m} \ - USE_EXR=$(usex openexr) \ - USE_JPEG=$(usex jpeg) \ - USE_JPEG2K=$(usex jpeg2k) \ - USE_MNG=$(usex mng) \ - USE_PNG=$(usex png) \ - USE_TIFF=$(usex tiff) \ - USE_RAW=$(usex raw) \ - $(usex static-libs '' STATICLIB=) \ - "$@" - done -} - -src_compile() { - tc-export AR PKG_CONFIG - foreach_make \ - CXX="$(tc-getCXX) -fPIC" \ - CC="$(tc-getCC) -fPIC" \ - ${MY_PN} -} - -src_install() { - foreach_make install DESTDIR="${ED}" INSTALLDIR="${ED}"/usr/$(get_libdir) - dodoc Whatsnew.txt "${DISTDIR}"/${MY_P}.pdf -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/glmark2/glmark2-0.0.1-r7.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/glmark2/glmark2-0.0.1-r7.ebuild deleted file mode 100644 index 9c18b4c015..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/glmark2/glmark2-0.0.1-r7.ebuild +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="4" -CROS_WORKON_COMMIT="5b1ea6f9c4bfc9e22c62eb3a5e6ec1dd379d03e8" -CROS_WORKON_TREE="bdda989e471e778cc25f09f0334c2d4ee8d40ae7" -CROS_WORKON_PROJECT="chromiumos/third_party/glmark2" - -inherit toolchain-funcs waf-utils cros-workon - -DESCRIPTION="Opengl test suite" -HOMEPAGE="https://launchpad.net/glmark2" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="gles2 drm" - -RDEPEND="media-libs/libpng - media-libs/mesa[gles2?] - x11-libs/libX11" -DEPEND="${RDEPEND} - dev-util/pkgconfig" - -src_prepare() { - rm -rf src/libpng - sed -i -e 's:libpng12:libpng:g' wscript src/wscript_build || die -} - -src_configure() { - local myconf="--enable-gl" - - if use gles2; then - myconf+="--enable-glesv2" - fi - - if use drm; then - myconf+=" --enable-gl-drm" - if use gles2; then - myconf+=" --enable-glesv2-drm" - fi - fi - - export PKGCONFIG=$(tc-getPKG_CONFIG) - waf-utils_src_configure ${myconf} -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/glmark2/glmark2-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/glmark2/glmark2-9999.ebuild deleted file mode 100644 index e66429da5c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/glmark2/glmark2-9999.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/third_party/glmark2" - -inherit toolchain-funcs waf-utils cros-workon - -DESCRIPTION="Opengl test suite" -HOMEPAGE="https://launchpad.net/glmark2" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="gles2 drm" - -RDEPEND="media-libs/libpng - media-libs/mesa[gles2?] - x11-libs/libX11" -DEPEND="${RDEPEND} - dev-util/pkgconfig" - -src_prepare() { - rm -rf src/libpng - sed -i -e 's:libpng12:libpng:g' wscript src/wscript_build || die -} - -src_configure() { - local myconf="--enable-gl" - - if use gles2; then - myconf+="--enable-glesv2" - fi - - if use drm; then - myconf+=" --enable-gl-drm" - if use gles2; then - myconf+=" --enable-glesv2-drm" - fi - fi - - export PKGCONFIG=$(tc-getPKG_CONFIG) - waf-utils_src_configure ${myconf} -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/glu/Manifest b/sdk_container/src/third_party/coreos-overlay/media-libs/glu/Manifest deleted file mode 100644 index 30c62e73a4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/glu/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST glu-9.0.0.tar.bz2 493206 SHA256 1f7ad0d379a722fcbd303aa5650c6d7d5544fde83196b42a73d1193568a4df12 SHA512 ff920e3fbca739794e1432a92fdd8517aa732110fea71ed724185425042f83ce18e9866c16f95c6e10f6993f0814a90fac9636e2b3d8ca2084d1ac0a860f61c8 WHIRLPOOL 3b63c789dc54da94bceae57601baad96b6d05901e262d2758f68163ed67d9d9bdecf49f96a2a2598891b0398d3403555e1be28d1c7f7deb7a95431cc2e2c2b1e diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/glu/glu-9.0.0.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/glu/glu-9.0.0.ebuild deleted file mode 100644 index 39667c8ef2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/glu/glu-9.0.0.ebuild +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/glu/glu-9.0.0.ebuild,v 1.2 2012/09/20 11:57:23 chithanh Exp $ - -EAPI=4 - -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/glu" - -if [[ ${PV} = 9999* ]]; then - GIT_ECLASS="git-2" - EXPERIMENTAL="true" -fi - -inherit autotools-utils multilib ${GIT_ECLASS} - -DESCRIPTION="The OpenGL Utility Library" -HOMEPAGE="http://cgit.freedesktop.org/mesa/glu/" - -if [[ ${PV} = 9999* ]]; then - SRC_URI="" -else - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${PN}/${P}.tar.bz2" -fi - -LICENSE="SGI-B-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris" -IUSE="multilib static-libs" - -DEPEND="virtual/opengl" -RDEPEND="${DEPEND} - multilib? ( !app-emulation/emul-linux-x86-opengl )" - -foreachabi() { - if use multilib; then - local ABI - for ABI in $(get_all_abis); do - multilib_toolchain_setup ${ABI} - AUTOTOOLS_BUILD_DIR=${WORKDIR}/${ABI} "${@}" - done - else - "${@}" - fi -} - -src_unpack() { - default - [[ $PV = 9999* ]] && git-2_src_unpack -} - -src_prepare() { - AUTOTOOLS_AUTORECONF=1 autotools-utils_src_prepare -} - -src_configure() { - foreachabi autotools-utils_src_configure -} - -src_compile() { - foreachabi autotools-utils_src_compile -} - -src_install() { - foreachabi autotools-utils_src_install -} - -src_test() { - :; -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/jpeg/Manifest b/sdk_container/src/third_party/coreos-overlay/media-libs/jpeg/Manifest deleted file mode 100644 index edd947bcd5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/jpeg/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST jpeg-6b-patches-2.tar.bz2 3703 RMD160 71f15f911baa0c60d5b2d78069c25f8a23f367b1 SHA1 dfb1a237f0984d3d3f03cdf3503b1ce72d50a81b SHA256 62d8496764330c57cc29137ee46c3cd76ce6463680f9e2e63af8bc4483439b2d -DIST jpegsrc.v6b.tar.gz 613261 RMD160 18892206014fbb8cae2a44e281f4ed53feaf7882 SHA1 7079f0d6c42fad0cfba382cf6ad322add1ace8f9 SHA256 75c3ec241e9996504fe02a9ed4d12f16b74ade713972f3db9e65ce95cd27e35d diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/jpeg/jpeg-6b-r11.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/jpeg/jpeg-6b-r11.ebuild deleted file mode 100644 index 9617ed69be..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/jpeg/jpeg-6b-r11.ebuild +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/jpeg/jpeg-6b-r9.ebuild,v 1.3 2010/01/18 15:35:38 ssuominen Exp $ - -# this ebuild is only for the libjpeg.so.62 SONAME for ABI compat - -EAPI="2" - -inherit eutils libtool multilib toolchain-funcs - -PATCH_VER="2" -DESCRIPTION="library to load, handle and manipulate images in the JPEG format (transition package)" -HOMEPAGE="http://www.ijg.org/" -SRC_URI="mirror://gentoo/jpegsrc.v${PV}.tar.gz - mirror://gentoo/${P}-patches-${PATCH_VER}.tar.bz2" - -LICENSE="as-is" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd" -IUSE="" - -RDEPEND="!~media-libs/jpeg-6b:0 - !media-libs/jpeg-compat" - -src_prepare() { - EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch - elibtoolize -} - -src_configure() { - tc-export CC - econf \ - --enable-shared \ - --disable-static \ - --enable-maxmem=64 -} - -src_compile() { - emake libjpeg.la || die -} - -src_install() { - dodir /usr/include /usr/$(get_libdir) - emake install-lib \ - prefix="${D}/usr/" \ - libdir='$(exec_prefix)/'$(get_libdir) || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/libmtp/libmtp-0.0.1-r12.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/libmtp/libmtp-0.0.1-r12.ebuild deleted file mode 100644 index 806e2dcca0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/libmtp/libmtp-0.0.1-r12.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_COMMIT="7bc42f093d644eeaf1c77fab60883881843c3c65" -CROS_WORKON_TREE="62ba988dca03df08f1aac5d601d47b64ffb869ea" -CROS_WORKON_PROJECT="chromium/deps/libmtp" -CROS_WORKON_LOCALNAME="../../chromium/src/third_party/libmtp" - -inherit autotools cros-workon - -DESCRIPTION="An implementation of Microsoft's Media Transfer Protocol (MTP)." -HOMEPAGE="http://libmtp.sourceforge.net/" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="+crypt doc examples static-libs" - -RDEPEND="virtual/libusb:1 - crypt? ( dev-libs/libgcrypt )" -DEPEND="${RDEPEND} - virtual/pkgconfig - doc? ( app-doc/doxygen )" - -DOCS="AUTHORS ChangeLog README TODO" - -src_prepare() { - if [[ ${PV} == *9999* ]]; then - touch config.rpath # This is from upstream autogen.sh - eautoreconf - fi -} - -src_configure() { - econf \ - $(use_enable static-libs static) \ - $(use_enable doc doxygen) \ - $(use_enable crypt mtpz) -} - -src_install() { - default - find "${ED}" -name '*.la' -exec rm -f {} + - - if use examples; then - docinto examples - dodoc examples/*.{c,h,sh} - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/libmtp/libmtp-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/libmtp/libmtp-9999.ebuild deleted file mode 100644 index 0a4a55b4c4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/libmtp/libmtp-9999.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_PROJECT="chromium/deps/libmtp" -CROS_WORKON_LOCALNAME="../../chromium/src/third_party/libmtp" - -inherit autotools cros-workon - -DESCRIPTION="An implementation of Microsoft's Media Transfer Protocol (MTP)." -HOMEPAGE="http://libmtp.sourceforge.net/" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="+crypt doc examples static-libs" - -RDEPEND="virtual/libusb:1 - crypt? ( dev-libs/libgcrypt )" -DEPEND="${RDEPEND} - virtual/pkgconfig - doc? ( app-doc/doxygen )" - -DOCS="AUTHORS ChangeLog README TODO" - -src_prepare() { - if [[ ${PV} == *9999* ]]; then - touch config.rpath # This is from upstream autogen.sh - eautoreconf - fi -} - -src_configure() { - econf \ - $(use_enable static-libs static) \ - $(use_enable doc doxygen) \ - $(use_enable crypt mtpz) -} - -src_install() { - default - find "${ED}" -name '*.la' -exec rm -f {} + - - if use examples; then - docinto examples - dodoc examples/*.{c,h,sh} - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/libresample-0.0.1-r7.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/libresample-0.0.1-r7.ebuild deleted file mode 100644 index 2b81cc1851..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/libresample-0.0.1-r7.ebuild +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="4" -CROS_WORKON_COMMIT="cc9f20f439396b7d45e94b8301edd95d33f26a46" -CROS_WORKON_TREE="172744c4f8686f99baa15072d6e47716ff67e6e9" -CROS_WORKON_PROJECT="chromiumos/third_party/libresample" - -inherit cros-workon - -DESCRIPTION="resampling library (see README.chromiumos)" -HOMEPAGE="http://www-ccrma.stanford.edu/~jos/resample/" -SRC_URI="" - -LICENSE="LGPL" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/libresample-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/libresample-9999.ebuild deleted file mode 100644 index 9678fcb5f1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/libresample-9999.ebuild +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/third_party/libresample" - -inherit cros-workon - -DESCRIPTION="resampling library (see README.chromiumos)" -HOMEPAGE="http://www-ccrma.stanford.edu/~jos/resample/" -SRC_URI="" - -LICENSE="LGPL" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/metadata.xml b/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/metadata.xml deleted file mode 100644 index fbec0a5899..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/libresample/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - libresample - - chaitanyag@chromium.org - - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11-mesa-st-no-flush-front.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11-mesa-st-no-flush-front.patch deleted file mode 100644 index 096257c22b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11-mesa-st-no-flush-front.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/mesa/state_tracker/st_manager.c b/src/mesa/state_tracker/st_manager.c -index c95514c..4582bc3 100644 ---- a/src/mesa/state_tracker/st_manager.c -+++ b/src/mesa/state_tracker/st_manager.c -@@ -503,8 +503,6 @@ st_context_flush(struct st_context_iface *stctxi, unsigned flags, - { - struct st_context *st = (struct st_context *) stctxi; - st_flush(st, fence); -- if (flags & ST_FLUSH_FRONT) -- st_manager_flush_frontbuffer(st); - } - - static boolean diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch deleted file mode 100644 index c88ebc9fe0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 4f684afcab21b4d2f04c3c2414fde5d1183a2e98 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Tue, 6 Sep 2011 15:46:53 -0700 -Subject: [PATCH] state_tracker/gallium: fix crash with st_renderbuffers - surfaces that outlive their context. - -Because of context sharing, we sometimes end up with surfaces that outlive their context. To be able to destroy them later we keep a pointer to the destroy function. ---- - src/gallium/auxiliary/util/u_inlines.h | 2 +- - src/gallium/drivers/i915/i915_surface.c | 1 + - src/gallium/drivers/llvmpipe/lp_texture.c | 1 + - src/gallium/include/pipe/p_state.h | 3 +++ - 4 files changed, 6 insertions(+), 1 deletions(-) - -diff --git a/src/gallium/auxiliary/util/u_inlines.h b/src/gallium/auxiliary/util/u_inlines.h -index ddb81b5..db57b83 100644 ---- a/src/gallium/auxiliary/util/u_inlines.h -+++ b/src/gallium/auxiliary/util/u_inlines.h -@@ -109,7 +109,7 @@ pipe_surface_reference(struct pipe_surface **ptr, struct pipe_surface *surf) - - if (pipe_reference_described(&(*ptr)->reference, &surf->reference, - (debug_reference_descriptor)debug_describe_surface)) -- old_surf->context->surface_destroy(old_surf->context, old_surf); -+ old_surf->surface_destroy(old_surf->context, old_surf); - *ptr = surf; - } - -diff --git a/src/gallium/drivers/i915/i915_surface.c b/src/gallium/drivers/i915/i915_surface.c -index 41146be..ccc5a7f 100644 ---- a/src/gallium/drivers/i915/i915_surface.c -+++ b/src/gallium/drivers/i915/i915_surface.c -@@ -294,6 +294,7 @@ i915_create_surface(struct pipe_context *ctx, - ps->u.tex.last_layer = surf_tmpl->u.tex.last_layer; - ps->usage = surf_tmpl->usage; - ps->context = ctx; -+ ps->surface_destroy = ctx->surface_destroy; - } - return ps; - } -diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c -index fa4ce5b..a2e657d 100644 ---- a/src/gallium/drivers/llvmpipe/lp_texture.c -+++ b/src/gallium/drivers/llvmpipe/lp_texture.c -@@ -532,6 +532,7 @@ llvmpipe_create_surface(struct pipe_context *pipe, - ps->u.tex.level = surf_tmpl->u.tex.level; - ps->u.tex.first_layer = surf_tmpl->u.tex.first_layer; - ps->u.tex.last_layer = surf_tmpl->u.tex.last_layer; -+ ps->surface_destroy = pipe->surface_destroy; - } - return ps; - } -diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h -index 840b3ee..c81c82d 100644 ---- a/src/gallium/include/pipe/p_state.h -+++ b/src/gallium/include/pipe/p_state.h -@@ -304,6 +304,9 @@ struct pipe_surface - unsigned last_element; - } buf; - } u; -+ -+ void (*surface_destroy)(struct pipe_context *ctx, -+ struct pipe_surface *); - }; - - --- -1.7.5.3.367.ga9930 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11_p2-Revert-i965-Avoid-generating-MOVs-for-most-ir_assign.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11_p2-Revert-i965-Avoid-generating-MOVs-for-most-ir_assign.patch deleted file mode 100644 index 1c28b14cca..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11_p2-Revert-i965-Avoid-generating-MOVs-for-most-ir_assign.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 2d44f205007e0928ebf9a9b914c9308ae3dd2a12 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Wed, 19 Oct 2011 19:26:08 -0700 -Subject: [PATCH] Revert "i965: Avoid generating MOVs for most ir_assignment - handling." - -This reverts commit dc7f449d1ac53a66e6efb56ccf2a5953418a26ca. ---- - src/mesa/drivers/dri/i965/brw_fs.h | 5 --- - src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 43 -------------------------- - 2 files changed, 0 insertions(+), 48 deletions(-) - -diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h -index f344330..435ac98 100644 ---- a/src/mesa/drivers/dri/i965/brw_fs.h -+++ b/src/mesa/drivers/dri/i965/brw_fs.h -@@ -528,11 +528,6 @@ public: - - void emit_color_write(int index, int first_color_mrf, fs_reg color); - void emit_fb_writes(); -- bool try_rewrite_rhs_to_dst(ir_assignment *ir, -- fs_reg dst, -- fs_reg src, -- fs_inst *pre_rhs_inst, -- fs_inst *last_rhs_inst); - void emit_assignment_writes(fs_reg &l, fs_reg &r, - const glsl_type *type, bool predicated); - -diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp -index e523ae7..d328454 100644 ---- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp -+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp -@@ -505,42 +505,6 @@ fs_visitor::emit_assignment_writes(fs_reg &l, fs_reg &r, - } - } - --/* If the RHS processing resulted in an instruction generating a -- * temporary value, and it would be easy to rewrite the instruction to -- * generate its result right into the LHS instead, do so. This ends -- * up reliably removing instructions where it can be tricky to do so -- * later without real UD chain information. -- */ --bool --fs_visitor::try_rewrite_rhs_to_dst(ir_assignment *ir, -- fs_reg dst, -- fs_reg src, -- fs_inst *pre_rhs_inst, -- fs_inst *last_rhs_inst) --{ -- if (pre_rhs_inst == last_rhs_inst) -- return false; /* No instructions generated to work with. */ -- -- /* Only attempt if we're doing a direct assignment. */ -- if (ir->condition || -- !(ir->lhs->type->is_scalar() || -- (ir->lhs->type->is_vector() && -- ir->write_mask == (1 << ir->lhs->type->vector_elements) - 1))) -- return false; -- -- /* Make sure the last instruction generated our source reg. */ -- if (last_rhs_inst->predicated || -- last_rhs_inst->force_uncompressed || -- last_rhs_inst->force_sechalf || -- !src.equals(&last_rhs_inst->dst)) -- return false; -- -- /* Success! Rewrite the instruction. */ -- last_rhs_inst->dst = dst; -- -- return true; --} -- - void - fs_visitor::visit(ir_assignment *ir) - { -@@ -551,19 +515,12 @@ fs_visitor::visit(ir_assignment *ir) - ir->lhs->accept(this); - l = this->result; - -- fs_inst *pre_rhs_inst = (fs_inst *) this->instructions.get_tail(); -- - ir->rhs->accept(this); - r = this->result; - -- fs_inst *last_rhs_inst = (fs_inst *) this->instructions.get_tail(); -- - assert(l.file != BAD_FILE); - assert(r.file != BAD_FILE); - -- if (try_rewrite_rhs_to_dst(ir, l, r, pre_rhs_inst, last_rhs_inst)) -- return; -- - if (ir->condition) { - emit_bool_to_cond_code(ir->condition); - } --- -1.7.5.3.367.ga9930 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11_p2-pkgconfig.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11_p2-pkgconfig.patch deleted file mode 100644 index 1b70a17666..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/7.11_p2-pkgconfig.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/configs/default b/configs/default -index 2b1bf9b..2c3d827 100644 ---- a/configs/default -+++ b/configs/default -@@ -40,7 +40,7 @@ MKDEP_OPTIONS = -fdepend - MAKE = make - FLEX = flex - BISON = bison --PKG_CONFIG = pkg-config -+#PKG_CONFIG = pkg-config - - # Use MINSTALL for installing libraries, INSTALL for everything else - MINSTALL = $(SHELL) $(TOP)/bin/minstall diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-array-overflow.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-array-overflow.patch deleted file mode 100644 index 416cde5448..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-array-overflow.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp -index 2f1c9f5..9991c90 100644 ---- a/src/glsl/link_uniforms.cpp -+++ b/src/glsl/link_uniforms.cpp -@@ -270,6 +270,7 @@ private: - * array elements for arrays. - */ - this->next_sampler += MAX2(1, this->uniforms[id].array_elements); -+ this->next_sampler = MIN2(this->next_sampler, MAX_SAMPLERS); - - const gl_texture_index target = base_type->sampler_index(); - const unsigned shadow = base_type->sampler_shadow; diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-dead-code-local-hack.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-dead-code-local-hack.patch deleted file mode 100644 index 5ad2fa48d2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-dead-code-local-hack.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 0d50be1a1ff4264bd48f93b0e85544ace1807c0a Mon Sep 17 00:00:00 2001 -From: Chris Wolfe -Date: Tue, 7 Aug 2012 18:57:05 -0400 -Subject: [PATCH] glsl: Restrict opt_dead_code_local to variable assignment - -Temporary fix to Chrome OS bug - -Change-Id: I4ca51603da18e3156f90ed77490902b3f8229f5c ---- - src/glsl/opt_dead_code_local.cpp | 12 +++++++++++- - 1 files changed, 11 insertions(+), 1 deletions(-) - -diff --git a/src/glsl/opt_dead_code_local.cpp b/src/glsl/opt_dead_code_local.cpp -index 4af78a7..0e3a7f4 100644 ---- a/src/glsl/opt_dead_code_local.cpp -+++ b/src/glsl/opt_dead_code_local.cpp -@@ -252,10 +252,20 @@ process_assignment(void *ctx, ir_assignment *ir, exec_list *assignments) - } - } - -+ if (ir->lhs->as_dereference_variable() == NULL) { -+ /* HACK: Chrome has encountered bugs when this optimization processes -+ * array elements in the lhs. For example: -+ * vec4 tmp; tmp[3] = 1.0; -+ * is incorrectly recorded as writing to only the (x) element, and will -+ * be killed if a later statement replaces (x). To sidestep this problem -+ * temporarily, trim only assignments to bare variables. -+ */ -+ return progress; -+ } -+ - /* Add this instruction to the assignment list available to be removed. */ - assignment_entry *entry = new(ctx) assignment_entry(var, ir); - assignments->push_tail(entry); -- - if (debug) { - printf("add %s\n", var->name); - --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-disable-guardband.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-disable-guardband.patch deleted file mode 100644 index a799e010c3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-disable-guardband.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Naur Mesa-8.1.0/src/mesa/drivers/dri/i965/gen6_clip_state.c Mesa-8.1.0_b/src/mesa/drivers/dri/i965/gen6_clip_state.c ---- Mesa-8.1.0/src/mesa/drivers/dri/i965/gen6_clip_state.c 2012-10-25 17:50:33.900301412 -0700 -+++ Mesa-8.1.0_b/src/mesa/drivers/dri/i965/gen6_clip_state.c 2012-10-26 18:09:15.959711652 -0700 -@@ -74,7 +74,7 @@ - GEN6_CLIP_MODE_NORMAL | - nonperspective_barycentric_enable_flag | - GEN6_CLIP_XY_TEST | -- GEN6_CLIP_GB_TEST | -+ //GEN6_CLIP_GB_TEST | - userclip << GEN6_USER_CLIP_CLIP_DISTANCES_SHIFT | - depth_clamp | - provoking); -diff -Naur Mesa-8.1.0/src/mesa/drivers/dri/i965/gen7_clip_state.c Mesa-8.1.0_b/src/mesa/drivers/dri/i965/gen7_clip_state.c ---- Mesa-8.1.0/src/mesa/drivers/dri/i965/gen7_clip_state.c 2012-10-25 17:50:33.900301412 -0700 -+++ Mesa-8.1.0_b/src/mesa/drivers/dri/i965/gen7_clip_state.c 2012-10-26 18:10:35.230562103 -0700 -@@ -101,7 +101,7 @@ - GEN6_CLIP_MODE_NORMAL | - nonperspective_barycentric_enable_flag | - GEN6_CLIP_XY_TEST | -- GEN6_CLIP_GB_TEST | -+ //GEN6_CLIP_GB_TEST | - userclip << GEN6_USER_CLIP_CLIP_DISTANCES_SHIFT | - depth_clamp | - provoking); diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-lastlevel.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-lastlevel.patch deleted file mode 100644 index 777822e5d6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/8.1-lastlevel.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c -index 68f4ff4..2d8ef91 100644 ---- a/src/mesa/drivers/dri/intel/intel_tex_image.c -+++ b/src/mesa/drivers/dri/intel/intel_tex_image.c -@@ -88,6 +88,11 @@ intel_miptree_create_for_teximage(struct intel_context *intel, - lastLevel = firstLevel; - } else { - lastLevel = firstLevel + _mesa_logbase2(MAX2(MAX2(width, height), depth)); -+ /* We tried to guess the last level based on the texture size, make -+ * sure we don't go past MAX_TEXTURE_LEVELS since it's hardcoded -+ * in many places. -+ */ -+ lastLevel = MIN2(lastLevel, MAX_TEXTURE_LEVELS - 1); - } - } - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-Add-builtin-function-cpp.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-Add-builtin-function-cpp.patch deleted file mode 100644 index 06926cd84b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-Add-builtin-function-cpp.patch +++ /dev/null @@ -1,14661 +0,0 @@ -From 3fcdc6beb6adb1102e51abc6c678b714e5ccb056 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Thu, 1 Nov 2012 16:43:26 -0700 -Subject: [PATCH] Add builtin_function.cpp - ---- - src/glsl/builtin_function.cpp |14642 +++++++++++++++++++++++++++++++++++++++++ - 1 files changed, 14642 insertions(+), 0 deletions(-) - create mode 100644 src/glsl/builtin_function.cpp - -diff --git src/glsl/builtin_function.cpp src/glsl/builtin_function.cpp -new file mode 100644 -index 0000000..afdfc68 ---- /dev/null -+++ src/glsl/builtin_function.cpp -@@ -0,0 +1,14642 @@ -+/* DO NOT MODIFY - automatically generated by generate_builtins.py */ -+/* -+ * Copyright © 2010 Intel Corporation -+ * -+ * Permission is hereby granted, free of charge, to any person obtaining a -+ * copy of this software and associated documentation files (the "Software"), -+ * to deal in the Software without restriction, including without limitation -+ * the rights to use, copy, modify, merge, publish, distribute, sublicense, -+ * and/or sell copies of the Software, and to permit persons to whom the -+ * Software is furnished to do so, subject to the following conditions: -+ * -+ * The above copyright notice and this permission notice (including the next -+ * paragraph) shall be included in all copies or substantial portions of the -+ * Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -+ * DEALINGS IN THE SOFTWARE. -+ */ -+ -+#include -+#include "main/core.h" /* for struct gl_shader */ -+#include "glsl_parser_extras.h" -+#include "ir_reader.h" -+#include "program.h" -+#include "ast.h" -+ -+extern "C" struct gl_shader * -+_mesa_new_shader(struct gl_context *ctx, GLuint name, GLenum type); -+ -+gl_shader * -+read_builtins(GLenum target, const char *protos, const char **functions, unsigned count) -+{ -+ struct gl_context fakeCtx; -+ fakeCtx.API = API_OPENGL; -+ fakeCtx.Const.GLSLVersion = 140; -+ fakeCtx.Extensions.ARB_ES2_compatibility = true; -+ fakeCtx.Const.ForceGLSLExtensionsWarn = false; -+ gl_shader *sh = _mesa_new_shader(NULL, 0, target); -+ struct _mesa_glsl_parse_state *st = -+ new(sh) _mesa_glsl_parse_state(&fakeCtx, target, sh); -+ -+ st->language_version = 140; -+ st->symbols->language_version = 140; -+ st->ARB_texture_rectangle_enable = true; -+ st->EXT_texture_array_enable = true; -+ st->OES_EGL_image_external_enable = true; -+ st->ARB_shader_bit_encoding_enable = true; -+ _mesa_glsl_initialize_types(st); -+ -+ sh->ir = new(sh) exec_list; -+ sh->symbols = st->symbols; -+ -+ /* Read the IR containing the prototypes */ -+ _mesa_glsl_read_ir(st, sh->ir, protos, true); -+ -+ /* Read ALL the function bodies, telling the IR reader not to scan for -+ * prototypes (we've already created them). The IR reader will skip any -+ * signature that does not already exist as a prototype. -+ */ -+ for (unsigned i = 0; i < count; i++) { -+ _mesa_glsl_read_ir(st, sh->ir, functions[i], false); -+ -+ if (st->error) { -+ printf("error reading builtin: %.35s ...\n", functions[i]); -+ printf("Info log:\n%s\n", st->info_log); -+ ralloc_free(sh); -+ return NULL; -+ } -+ } -+ -+ reparent_ir(sh->ir, sh); -+ delete st; -+ -+ return sh; -+} -+ -+static const char builtin_abs[] = -+ "((function abs\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) int arg0))\n" -+ " ((return (expression int abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0))\n" -+ " ((return (expression ivec2 abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0))\n" -+ " ((return (expression ivec3 abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0))\n" -+ " ((return (expression ivec4 abs (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_acos[] = -+ "((function acos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((declare () float s)\n" -+ " (call asin (var_ref s) ((var_ref x)))\n" -+ " (return (expression float - (constant float (1.5707964)) (var_ref s)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((declare () vec2 s)\n" -+ " (call asin (var_ref s) ((var_ref x)))\n" -+ " (return (expression vec2 - (constant float (1.5707964)) (var_ref s)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((declare () vec3 s)\n" -+ " (call asin (var_ref s) ((var_ref x)))\n" -+ " (return (expression vec3 - (constant float (1.5707964)) (var_ref s)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((declare () vec4 s)\n" -+ " (call asin (var_ref s) ((var_ref x)))\n" -+ " (return (expression vec4 - (constant float (1.5707964)) (var_ref s)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_acosh[] = -+ "((function acosh\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float log (expression float + (var_ref x) (expression float sqrt (expression float - (expression float * (var_ref x) (var_ref x)) (constant float (1)))))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 log (expression vec2 + (var_ref x) (expression vec2 sqrt (expression vec2 - (expression vec2 * (var_ref x) (var_ref x)) (constant float (1)))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 log (expression vec3 + (var_ref x) (expression vec3 sqrt (expression vec3 - (expression vec3 * (var_ref x) (var_ref x)) (constant float (1)))))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 log (expression vec4 + (var_ref x) (expression vec4 sqrt (expression vec4 - (expression vec4 * (var_ref x) (var_ref x)) (constant float (1)))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_all[] = -+ "((function all\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 arg0))\n" -+ " ((return (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))))))\n" -+ "\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 arg0))\n" -+ " ((return (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))))))\n" -+ "\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 arg0))\n" -+ " ((return (expression bool && (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))) (swiz w (var_ref arg0))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_any[] = -+ "((function any\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 arg0))\n" -+ " ((return (expression bool any (var_ref arg0)))))\n" -+ "\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 arg0))\n" -+ " ((return (expression bool any (var_ref arg0)))))\n" -+ "\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 arg0))\n" -+ " ((return (expression bool any (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_asin[] = -+ "((function asin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float *\n" -+ " (expression float sign (var_ref x))\n" -+ " (expression float -\n" -+ " (constant float (1.5707964))\n" -+ " (expression float *\n" -+ " (expression float sqrt\n" -+ " (expression float -\n" -+ " (constant float (1.0))\n" -+ " (expression float abs (var_ref x))))\n" -+ " (expression float +\n" -+ " (constant float (1.5707964))\n" -+ " (expression float *\n" -+ " (expression float abs (var_ref x))\n" -+ " (expression float +\n" -+ " (constant float (-0.21460183))\n" -+ " (expression float *\n" -+ " (expression float abs (var_ref x))\n" -+ " (expression float +\n" -+ " (constant float (0.086566724))\n" -+ " (expression float *\n" -+ " (expression float abs (var_ref x))\n" -+ " (constant float (-0.03102955))\n" -+ " ))))))))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 *\n" -+ " (expression vec2 sign (var_ref x))\n" -+ " (expression vec2 -\n" -+ " (constant float (1.5707964))\n" -+ " (expression vec2 *\n" -+ " (expression vec2 sqrt\n" -+ " (expression vec2 -\n" -+ " (constant float (1.0))\n" -+ " (expression vec2 abs (var_ref x))))\n" -+ " (expression vec2 +\n" -+ " (constant float (1.5707964))\n" -+ " (expression vec2 *\n" -+ " (expression vec2 abs (var_ref x))\n" -+ " (expression vec2 +\n" -+ " (constant float (-0.21460183))\n" -+ " (expression vec2 *\n" -+ " (expression vec2 abs (var_ref x))\n" -+ " (expression vec2 +\n" -+ " (constant float (0.086566724))\n" -+ " (expression vec2 *\n" -+ " (expression vec2 abs (var_ref x))\n" -+ " (constant float (-0.03102955))\n" -+ " ))))))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 *\n" -+ " (expression vec3 sign (var_ref x))\n" -+ " (expression vec3 -\n" -+ " (constant float (1.5707964))\n" -+ " (expression vec3 *\n" -+ " (expression vec3 sqrt\n" -+ " (expression vec3 -\n" -+ " (constant float (1.0))\n" -+ " (expression vec3 abs (var_ref x))))\n" -+ " (expression vec3 +\n" -+ " (constant float (1.5707964))\n" -+ " (expression vec3 *\n" -+ " (expression vec3 abs (var_ref x))\n" -+ " (expression vec3 +\n" -+ " (constant float (-0.21460183))\n" -+ " (expression vec3 *\n" -+ " (expression vec3 abs (var_ref x))\n" -+ " (expression vec3 +\n" -+ " (constant float (0.086566724))\n" -+ " (expression vec3 *\n" -+ " (expression vec3 abs (var_ref x))\n" -+ " (constant float (-0.03102955))\n" -+ " ))))))))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 *\n" -+ " (expression vec4 sign (var_ref x))\n" -+ " (expression vec4 -\n" -+ " (constant float (1.5707964))\n" -+ " (expression vec4 *\n" -+ " (expression vec4 sqrt\n" -+ " (expression vec4 -\n" -+ " (constant float (1.0))\n" -+ " (expression vec4 abs (var_ref x))))\n" -+ " (expression vec4 +\n" -+ " (constant float (1.5707964))\n" -+ " (expression vec4 *\n" -+ " (expression vec4 abs (var_ref x))\n" -+ " (expression vec4 +\n" -+ " (constant float (-0.21460183))\n" -+ " (expression vec4 *\n" -+ " (expression vec4 abs (var_ref x))\n" -+ " (expression vec4 +\n" -+ " (constant float (0.086566724))\n" -+ " (expression vec4 *\n" -+ " (expression vec4 abs (var_ref x))\n" -+ " (constant float (-0.03102955))\n" -+ " ))))))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_asinh[] = -+ "((function asinh\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float *\n" -+ " (expression float sign (var_ref x))\n" -+ " (expression float log\n" -+ " (expression float +\n" -+ " (expression float abs (var_ref x))\n" -+ " (expression float sqrt\n" -+ " (expression float +\n" -+ " (expression float * (var_ref x) (var_ref x))\n" -+ " (constant float (1))))))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 *\n" -+ " (expression vec2 sign (var_ref x))\n" -+ " (expression vec2 log\n" -+ " (expression vec2 +\n" -+ " (expression vec2 abs (var_ref x))\n" -+ " (expression vec2 sqrt\n" -+ " (expression vec2 +\n" -+ " (expression vec2 * (var_ref x) (var_ref x))\n" -+ " (constant float (1))))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 *\n" -+ " (expression vec3 sign (var_ref x))\n" -+ " (expression vec3 log\n" -+ " (expression vec3 +\n" -+ " (expression vec3 abs (var_ref x))\n" -+ " (expression vec3 sqrt\n" -+ " (expression vec3 +\n" -+ " (expression vec3 * (var_ref x) (var_ref x))\n" -+ " (constant float (1))))))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 *\n" -+ " (expression vec4 sign (var_ref x))\n" -+ " (expression vec4 log\n" -+ " (expression vec4 +\n" -+ " (expression vec4 abs (var_ref x))\n" -+ " (expression vec4 sqrt\n" -+ " (expression vec4 +\n" -+ " (expression vec4 * (var_ref x) (var_ref x))\n" -+ " (constant float (1))))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_atan[] = -+ "((function atan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y_over_x))\n" -+ " ((declare () float s)\n" -+ " (call asin (var_ref s)\n" -+ " ((expression float *\n" -+ " (var_ref y_over_x)\n" -+ " (expression float rsq\n" -+ " (expression float +\n" -+ " (expression float *\n" -+ " (var_ref y_over_x)\n" -+ " (var_ref y_over_x))\n" -+ " (constant float (1.0)))))))\n" -+ " (return (var_ref s))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y_over_x))\n" -+ " ((declare () vec2 s)\n" -+ " (call asin (var_ref s)\n" -+ " ((expression vec2 *\n" -+ " (var_ref y_over_x)\n" -+ " (expression vec2 rsq\n" -+ " (expression vec2 +\n" -+ " (expression vec2 *\n" -+ " (var_ref y_over_x)\n" -+ " (var_ref y_over_x))\n" -+ " (constant float (1.0)))))))\n" -+ " (return (var_ref s))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y_over_x))\n" -+ " ((declare () vec3 s)\n" -+ " (call asin (var_ref s)\n" -+ " ((expression vec3 *\n" -+ " (var_ref y_over_x)\n" -+ " (expression vec3 rsq\n" -+ " (expression vec3 +\n" -+ " (expression vec3 *\n" -+ " (var_ref y_over_x)\n" -+ " (var_ref y_over_x))\n" -+ " (constant float (1.0)))))))\n" -+ " (return (var_ref s))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y_over_x))\n" -+ " ((declare () vec4 s)\n" -+ " (call asin (var_ref s)\n" -+ " ((expression vec4 *\n" -+ " (var_ref y_over_x)\n" -+ " (expression vec4 rsq\n" -+ " (expression vec4 +\n" -+ " (expression vec4 *\n" -+ " (var_ref y_over_x)\n" -+ " (var_ref y_over_x))\n" -+ " (constant float (1.0)))))))\n" -+ " (return (var_ref s))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in ) float y)\n" -+ " (declare (in ) float x)\n" -+ " )\n" -+ " (\n" -+ " (declare () float r)\n" -+ " (if (expression bool >\n" -+ " (expression float abs (var_ref x))\n" -+ " (expression float * (constant float (1.0e-8)) (expression float abs (var_ref y)))) (\n" -+ " (call atan (var_ref r) ((expression float / (var_ref y) (var_ref x))))\n" -+ " (if (expression bool < (var_ref x) (constant float (0.000000)) ) (\n" -+ " (if (expression bool >= (var_ref y) (constant float (0.000000)) )\n" -+ " ((assign (x) (var_ref r) (expression float + (var_ref r) (constant float (3.141593)))))\n" -+ " ((assign (x) (var_ref r) (expression float - (var_ref r) (constant float (3.141593))))))\n" -+ " )\n" -+ " (\n" -+ " ))\n" -+ " )\n" -+ " (\n" -+ " (declare () float sgn)\n" -+ " (assign (x) (var_ref sgn) (expression float sign (var_ref y)))\n" -+ " (assign (x) (var_ref r) (expression float * (var_ref sgn) (constant float (1.5707965))))\n" -+ " ))\n" -+ "\n" -+ " (return (var_ref r) )\n" -+ " ))\n" -+ "\n" -+ "\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 x))\n" -+ " ((declare () vec2 r)\n" -+ " (declare () float temp)\n" -+ " (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))\n" -+ " (assign (x) (var_ref r) (var_ref temp))\n" -+ " (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))\n" -+ " (assign (y) (var_ref r) (var_ref temp))\n" -+ " (return (var_ref r))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 x))\n" -+ " ((declare () vec3 r)\n" -+ " (declare () float temp)\n" -+ " (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))\n" -+ " (assign (x) (var_ref r) (var_ref temp))\n" -+ " (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))\n" -+ " (assign (y) (var_ref r) (var_ref temp))\n" -+ " (call atan (var_ref temp) ((swiz z (var_ref y)) (swiz z (var_ref x))))\n" -+ " (assign (z) (var_ref r) (var_ref temp))\n" -+ " (return (var_ref r))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 x))\n" -+ " ((declare () vec4 r)\n" -+ " (declare () float temp)\n" -+ " (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))\n" -+ " (assign (x) (var_ref r) (var_ref temp))\n" -+ " (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))\n" -+ " (assign (y) (var_ref r) (var_ref temp))\n" -+ " (call atan (var_ref temp) ((swiz z (var_ref y)) (swiz z (var_ref x))))\n" -+ " (assign (z) (var_ref r) (var_ref temp))\n" -+ " (call atan (var_ref temp) ((swiz w (var_ref y)) (swiz w (var_ref x))))\n" -+ " (assign (w) (var_ref r) (var_ref temp))\n" -+ " (return (var_ref r))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_atanh[] = -+ "((function atanh\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float * (constant float (0.5))\n" -+ " (expression float log\n" -+ " (expression float /\n" -+ " (expression float + (constant float (1)) (var_ref x))\n" -+ " (expression float - (constant float (1)) (var_ref x))))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 * (constant float (0.5))\n" -+ " (expression vec2 log\n" -+ " (expression vec2 /\n" -+ " (expression vec2 + (constant float (1)) (var_ref x))\n" -+ " (expression vec2 - (constant float (1)) (var_ref x))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 * (constant float (0.5))\n" -+ " (expression vec3 log\n" -+ " (expression vec3 /\n" -+ " (expression vec3 + (constant float (1)) (var_ref x))\n" -+ " (expression vec3 - (constant float (1)) (var_ref x))))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 * (constant float (0.5))\n" -+ " (expression vec4 log\n" -+ " (expression vec4 /\n" -+ " (expression vec4 + (constant float (1)) (var_ref x))\n" -+ " (expression vec4 - (constant float (1)) (var_ref x))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_ceil[] = -+ "((function ceil\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float ceil (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 ceil (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 ceil (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 ceil (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_clamp[] = -+ "((function clamp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression float max (expression float min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1)\n" -+ " (declare (in) vec2 arg2))\n" -+ " ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1)\n" -+ " (declare (in) vec3 arg2))\n" -+ " ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1)\n" -+ " (declare (in) vec4 arg2))\n" -+ " ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) float arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) float arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) float arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) int arg0)\n" -+ " (declare (in) int arg1)\n" -+ " (declare (in) int arg2))\n" -+ " ((return (expression int max (expression int min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1)\n" -+ " (declare (in) ivec2 arg2))\n" -+ " ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1)\n" -+ " (declare (in) ivec3 arg2))\n" -+ " ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1)\n" -+ " (declare (in) ivec4 arg2))\n" -+ " ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) int arg1)\n" -+ " (declare (in) int arg2))\n" -+ " ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) int arg1)\n" -+ " (declare (in) int arg2))\n" -+ " ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) int arg1)\n" -+ " (declare (in) int arg2))\n" -+ " ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uint\n" -+ " (parameters\n" -+ " (declare (in) uint arg0)\n" -+ " (declare (in) uint arg1)\n" -+ " (declare (in) uint arg2))\n" -+ " ((return (expression uint max (expression uint min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1)\n" -+ " (declare (in) uvec2 arg2))\n" -+ " ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1)\n" -+ " (declare (in) uvec3 arg2))\n" -+ " ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1)\n" -+ " (declare (in) uvec4 arg2))\n" -+ " ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uint arg1)\n" -+ " (declare (in) uint arg2))\n" -+ " ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uint arg1)\n" -+ " (declare (in) uint arg2))\n" -+ " ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uint arg1)\n" -+ " (declare (in) uint arg2))\n" -+ " ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_cos[] = -+ "((function cos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ((return (expression float cos (var_ref angle)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ((return (expression vec2 cos (var_ref angle)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ((return (expression vec3 cos (var_ref angle)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ((return (expression vec4 cos (var_ref angle)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_cosh[] = -+ "((function cosh\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float * (constant float (0.5))\n" -+ " (expression float +\n" -+ " (expression float exp (var_ref x))\n" -+ " (expression float exp (expression float neg (var_ref x))))))))\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 * (constant float (0.5))\n" -+ " (expression vec2 +\n" -+ " (expression vec2 exp (var_ref x))\n" -+ " (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 * (constant float (0.5))\n" -+ " (expression vec3 +\n" -+ " (expression vec3 exp (var_ref x))\n" -+ " (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 * (constant float (0.5))\n" -+ " (expression vec4 +\n" -+ " (expression vec4 exp (var_ref x))\n" -+ " (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_cross[] = -+ "((function cross\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 a)\n" -+ " (declare (in) vec3 b))\n" -+ " ((return (expression vec3 -\n" -+ " (expression vec3 * (swiz yzx (var_ref a)) (swiz zxy (var_ref b)))\n" -+ " (expression vec3 * (swiz zxy (var_ref a)) (swiz yzx (var_ref b)))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_dFdx[] = -+ "((function dFdx\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ((return (expression float dFdx (var_ref p)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ((return (expression vec2 dFdx (var_ref p)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ((return (expression vec3 dFdx (var_ref p)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ((return (expression vec4 dFdx (var_ref p)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_dFdy[] = -+ "((function dFdy\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ((return (expression float dFdy (var_ref p)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ((return (expression vec2 dFdy (var_ref p)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ((return (expression vec3 dFdy (var_ref p)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ((return (expression vec4 dFdy (var_ref p)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_degrees[] = -+ "((function degrees\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float * (var_ref arg0) (constant float (57.295780))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 * (var_ref arg0) (constant float (57.295780))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 * (var_ref arg0) (constant float (57.295780))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 * (var_ref arg0) (constant float (57.295780))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_distance[] = -+ "((function distance\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p0)\n" -+ " (declare (in) float p1))\n" -+ " ((return (expression float abs (expression float - (var_ref p0) (var_ref p1))))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 p0)\n" -+ " (declare (in) vec2 p1))\n" -+ " ((declare () vec2 p)\n" -+ " (assign (xy) (var_ref p) (expression vec2 - (var_ref p0) (var_ref p1)))\n" -+ " (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 p0)\n" -+ " (declare (in) vec3 p1))\n" -+ " ((declare () vec3 p)\n" -+ " (assign (xyz) (var_ref p) (expression vec3 - (var_ref p0) (var_ref p1)))\n" -+ " (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 p0)\n" -+ " (declare (in) vec4 p1))\n" -+ " ((declare () vec4 p)\n" -+ " (assign (xyzw) (var_ref p) (expression vec4 - (var_ref p0) (var_ref p1)))\n" -+ " (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_dot[] = -+ "((function dot\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression float * (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression float dot (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_equal[] = -+ "((function equal\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 arg0)\n" -+ " (declare (in) bvec2 arg1))\n" -+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 arg0)\n" -+ " (declare (in) bvec3 arg1))\n" -+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 arg0)\n" -+ " (declare (in) bvec4 arg1))\n" -+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_exp[] = -+ "((function exp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float exp (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 exp (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 exp (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 exp (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_exp2[] = -+ "((function exp2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float exp2 (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 exp2 (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 exp2 (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 exp2 (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_faceforward[] = -+ "((function faceforward\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float Nref))\n" -+ " ((if (expression bool < (expression float * (var_ref Nref) (var_ref I)) (constant float (0)))\n" -+ " ((return (var_ref N)))\n" -+ " ((return (expression float neg (var_ref N)))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 Nref))\n" -+ " ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n" -+ " ((return (var_ref N)))\n" -+ " ((return (expression vec2 neg (var_ref N)))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 Nref))\n" -+ " ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n" -+ " ((return (var_ref N)))\n" -+ " ((return (expression vec3 neg (var_ref N)))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 Nref))\n" -+ " ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))\n" -+ " ((return (var_ref N)))\n" -+ " ((return (expression vec4 neg (var_ref N)))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_floatBitsToInt[] = -+ "((function floatBitsToInt\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) float arg))\n" -+ " ((return (expression int bitcast_f2i (var_ref arg)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg))\n" -+ " ((return (expression ivec2 bitcast_f2i (var_ref arg)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg))\n" -+ " ((return (expression ivec3 bitcast_f2i (var_ref arg)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg))\n" -+ " ((return (expression ivec4 bitcast_f2i (var_ref arg)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_floatBitsToUint[] = -+ "((function floatBitsToUint\n" -+ " (signature uint\n" -+ " (parameters\n" -+ " (declare (in) float arg))\n" -+ " ((return (expression uint bitcast_f2u (var_ref arg)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg))\n" -+ " ((return (expression uvec2 bitcast_f2u (var_ref arg)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg))\n" -+ " ((return (expression uvec3 bitcast_f2u (var_ref arg)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg))\n" -+ " ((return (expression uvec4 bitcast_f2u (var_ref arg)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_floor[] = -+ "((function floor\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float floor (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 floor (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 floor (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 floor (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_fract[] = -+ "((function fract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float fract (var_ref x)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 fract (var_ref x)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 fract (var_ref x)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 fract (var_ref x)))))\n" -+ "))\n" -+ "\n" -+ "" -+; -+static const char builtin_ftransform[] = -+ "((declare (uniform) mat4 gl_ModelViewProjectionMatrix)\n" -+ " (declare (in) vec4 gl_Vertex)\n" -+ " (function ftransform\n" -+ " (signature vec4\n" -+ " (parameters)\n" -+ " ((return (expression vec4 *\n" -+ " (var_ref gl_ModelViewProjectionMatrix)\n" -+ " (var_ref gl_Vertex)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_fwidth[] = -+ "((function fwidth\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ((return (expression float +\n" -+ " (expression float abs (expression float dFdx (var_ref p)))\n" -+ " (expression float abs (expression float dFdy (var_ref p)))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ((return (expression vec2 +\n" -+ " (expression vec2 abs (expression vec2 dFdx (var_ref p)))\n" -+ " (expression vec2 abs (expression vec2 dFdy (var_ref p)))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ((return (expression vec3 +\n" -+ " (expression vec3 abs (expression vec3 dFdx (var_ref p)))\n" -+ " (expression vec3 abs (expression vec3 dFdy (var_ref p)))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ((return (expression vec4 +\n" -+ " (expression vec4 abs (expression vec4 dFdx (var_ref p)))\n" -+ " (expression vec4 abs (expression vec4 dFdy (var_ref p)))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_greaterThan[] = -+ "((function greaterThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_greaterThanEqual[] = -+ "((function greaterThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_intBitsToFloat[] = -+ "((function intBitsToFloat\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) int arg))\n" -+ " ((return (expression float bitcast_i2f (var_ref arg)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg))\n" -+ " ((return (expression vec2 bitcast_i2f (var_ref arg)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg))\n" -+ " ((return (expression vec3 bitcast_i2f (var_ref arg)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg))\n" -+ " ((return (expression vec4 bitcast_i2f (var_ref arg)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_inverse[] = -+ "(\n" -+ "(function inverse\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 m))\n" -+ " (\n" -+ " (declare () float det)\n" -+ " (declare () mat2 adj)\n" -+ " (declare (temporary) float assignment_tmp)\n" -+ " (assign (x) (var_ref assignment_tmp) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (0))) (var_ref assignment_tmp)) \n" -+ " (declare (temporary) float assignment_tmp@2)\n" -+ " (assign (x) (var_ref assignment_tmp@2) (expression float neg (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (1))) (var_ref assignment_tmp@2)) \n" -+ " (declare (temporary) float assignment_tmp@3)\n" -+ " (assign (x) (var_ref assignment_tmp@3) (expression float neg (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (0))) (var_ref assignment_tmp@3)) \n" -+ " (declare (temporary) float assignment_tmp@4)\n" -+ " (assign (x) (var_ref assignment_tmp@4) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (1))) (var_ref assignment_tmp@4)) \n" -+ " (declare (temporary) float assignment_tmp@5)\n" -+ " (assign (x) (var_ref assignment_tmp@5) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1)))))) \n" -+ " (assign (x) (var_ref det) (var_ref assignment_tmp@5)) \n" -+ " (return (expression mat2 / (var_ref adj) (var_ref det)))))\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 m))\n" -+ " (\n" -+ " (declare () float det)\n" -+ " (declare () mat3 adj)\n" -+ " (declare (temporary) float assignment_tmp)\n" -+ " (assign (x) (var_ref assignment_tmp) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (0))) (var_ref assignment_tmp)) \n" -+ " (declare (temporary) float assignment_tmp@6)\n" -+ " (assign (x) (var_ref assignment_tmp@6) (expression float neg (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (0))) (var_ref assignment_tmp@6)) \n" -+ " (declare (temporary) float assignment_tmp@7)\n" -+ " (assign (x) (var_ref assignment_tmp@7) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (0))) (var_ref assignment_tmp@7)) \n" -+ " (declare (temporary) float assignment_tmp@8)\n" -+ " (assign (x) (var_ref assignment_tmp@8) (expression float neg (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (1))) (var_ref assignment_tmp@8)) \n" -+ " (declare (temporary) float assignment_tmp@9)\n" -+ " (assign (x) (var_ref assignment_tmp@9) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2)))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (1))) (var_ref assignment_tmp@9)) \n" -+ " (declare (temporary) float assignment_tmp@10)\n" -+ " (assign (x) (var_ref assignment_tmp@10) (expression float neg (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (1))) (var_ref assignment_tmp@10)) \n" -+ " (declare (temporary) float assignment_tmp@11)\n" -+ " (assign (x) (var_ref assignment_tmp@11) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2)))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (2))) (var_ref assignment_tmp@11)) \n" -+ " (declare (temporary) float assignment_tmp@12)\n" -+ " (assign (x) (var_ref assignment_tmp@12) (expression float neg (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (2))) (var_ref assignment_tmp@12)) \n" -+ " (declare (temporary) float assignment_tmp@13)\n" -+ " (assign (x) (var_ref assignment_tmp@13) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1)))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (2))) (var_ref assignment_tmp@13)) \n" -+ " (declare (temporary) float assignment_tmp@14)\n" -+ " (assign (x) (var_ref assignment_tmp@14) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1)))))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))))))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0)))))))) \n" -+ " (assign (x) (var_ref det) (var_ref assignment_tmp@14)) \n" -+ " (return (expression mat3 / (var_ref adj) (var_ref det)))))\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 m))\n" -+ " (\n" -+ " (declare () float det)\n" -+ " (declare () mat4 adj)\n" -+ " (declare () float SubFactor18)\n" -+ " (declare () float SubFactor17)\n" -+ " (declare () float SubFactor16)\n" -+ " (declare () float SubFactor15)\n" -+ " (declare () float SubFactor14)\n" -+ " (declare () float SubFactor13)\n" -+ " (declare () float SubFactor12)\n" -+ " (declare () float SubFactor11)\n" -+ " (declare () float SubFactor10)\n" -+ " (declare () float SubFactor09)\n" -+ " (declare () float SubFactor08)\n" -+ " (declare () float SubFactor07)\n" -+ " (declare () float SubFactor06)\n" -+ " (declare () float SubFactor05)\n" -+ " (declare () float SubFactor04)\n" -+ " (declare () float SubFactor03)\n" -+ " (declare () float SubFactor02)\n" -+ " (declare () float SubFactor01)\n" -+ " (declare () float SubFactor00)\n" -+ " (declare (temporary) float assignment_tmp)\n" -+ " (assign (x) (var_ref assignment_tmp) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor00) (var_ref assignment_tmp)) \n" -+ " (declare (temporary) float assignment_tmp@15)\n" -+ " (assign (x) (var_ref assignment_tmp@15) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor01) (var_ref assignment_tmp@15)) \n" -+ " (declare (temporary) float assignment_tmp@16)\n" -+ " (assign (x) (var_ref assignment_tmp@16) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))))) \n" -+ " (assign (x) (var_ref SubFactor02) (var_ref assignment_tmp@16)) \n" -+ " (declare (temporary) float assignment_tmp@17)\n" -+ " (assign (x) (var_ref assignment_tmp@17) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor03) (var_ref assignment_tmp@17)) \n" -+ " (declare (temporary) float assignment_tmp@18)\n" -+ " (assign (x) (var_ref assignment_tmp@18) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))))) \n" -+ " (assign (x) (var_ref SubFactor04) (var_ref assignment_tmp@18)) \n" -+ " (declare (temporary) float assignment_tmp@19)\n" -+ " (assign (x) (var_ref assignment_tmp@19) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1)))))) \n" -+ " (assign (x) (var_ref SubFactor05) (var_ref assignment_tmp@19)) \n" -+ " (declare (temporary) float assignment_tmp@20)\n" -+ " (assign (x) (var_ref assignment_tmp@20) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor06) (var_ref assignment_tmp@20)) \n" -+ " (declare (temporary) float assignment_tmp@21)\n" -+ " (assign (x) (var_ref assignment_tmp@21) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor07) (var_ref assignment_tmp@21)) \n" -+ " (declare (temporary) float assignment_tmp@22)\n" -+ " (assign (x) (var_ref assignment_tmp@22) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n" -+ " (assign (x) (var_ref SubFactor08) (var_ref assignment_tmp@22)) \n" -+ " (declare (temporary) float assignment_tmp@23)\n" -+ " (assign (x) (var_ref assignment_tmp@23) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor09) (var_ref assignment_tmp@23)) \n" -+ " (declare (temporary) float assignment_tmp@24)\n" -+ " (assign (x) (var_ref assignment_tmp@24) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n" -+ " (assign (x) (var_ref SubFactor10) (var_ref assignment_tmp@24)) \n" -+ " (declare (temporary) float assignment_tmp@25)\n" -+ " (assign (x) (var_ref assignment_tmp@25) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor11) (var_ref assignment_tmp@25)) \n" -+ " (declare (temporary) float assignment_tmp@26)\n" -+ " (assign (x) (var_ref assignment_tmp@26) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (3))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n" -+ " (assign (x) (var_ref SubFactor12) (var_ref assignment_tmp@26)) \n" -+ " (declare (temporary) float assignment_tmp@27)\n" -+ " (assign (x) (var_ref assignment_tmp@27) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor13) (var_ref assignment_tmp@27)) \n" -+ " (declare (temporary) float assignment_tmp@28)\n" -+ " (assign (x) (var_ref assignment_tmp@28) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor14) (var_ref assignment_tmp@28)) \n" -+ " (declare (temporary) float assignment_tmp@29)\n" -+ " (assign (x) (var_ref assignment_tmp@29) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n" -+ " (assign (x) (var_ref SubFactor15) (var_ref assignment_tmp@29)) \n" -+ " (declare (temporary) float assignment_tmp@30)\n" -+ " (assign (x) (var_ref assignment_tmp@30) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (3)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3)))))) \n" -+ " (assign (x) (var_ref SubFactor16) (var_ref assignment_tmp@30)) \n" -+ " (declare (temporary) float assignment_tmp@31)\n" -+ " (assign (x) (var_ref assignment_tmp@31) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (2)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2)))))) \n" -+ " (assign (x) (var_ref SubFactor17) (var_ref assignment_tmp@31)) \n" -+ " (declare (temporary) float assignment_tmp@32)\n" -+ " (assign (x) (var_ref assignment_tmp@32) (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (1)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (2))) (constant int (0))) (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1)))))) \n" -+ " (assign (x) (var_ref SubFactor18) (var_ref assignment_tmp@32)) \n" -+ " (declare (temporary) float assignment_tmp@33)\n" -+ " (assign (x) (var_ref assignment_tmp@33) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor00)) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor01))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor02)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (0))) (var_ref assignment_tmp@33)) \n" -+ " (declare (temporary) float assignment_tmp@34)\n" -+ " (assign (x) (var_ref assignment_tmp@34) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor00)) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor03))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor04))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (0))) (var_ref assignment_tmp@34)) \n" -+ " (declare (temporary) float assignment_tmp@35)\n" -+ " (assign (x) (var_ref assignment_tmp@35) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor01)) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor03))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (3))) (var_ref SubFactor05)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (0))) (var_ref assignment_tmp@35)) \n" -+ " (declare (temporary) float assignment_tmp@36)\n" -+ " (assign (x) (var_ref assignment_tmp@36) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (0))) (var_ref SubFactor02)) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (1))) (var_ref SubFactor04))) (expression float * (array_ref (array_ref (var_ref m) (constant int (1))) (constant int (2))) (var_ref SubFactor05))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (3))) (constant int (0))) (var_ref assignment_tmp@36)) \n" -+ " (declare (temporary) float assignment_tmp@37)\n" -+ " (assign (x) (var_ref assignment_tmp@37) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor00)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor01))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor02))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (1))) (var_ref assignment_tmp@37)) \n" -+ " (declare (temporary) float assignment_tmp@38)\n" -+ " (assign (x) (var_ref assignment_tmp@38) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor00)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor03))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor04)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (1))) (var_ref assignment_tmp@38)) \n" -+ " (declare (temporary) float assignment_tmp@39)\n" -+ " (assign (x) (var_ref assignment_tmp@39) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor01)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor03))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor05))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (1))) (var_ref assignment_tmp@39)) \n" -+ " (declare (temporary) float assignment_tmp@40)\n" -+ " (assign (x) (var_ref assignment_tmp@40) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor02)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor04))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor05)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (3))) (constant int (1))) (var_ref assignment_tmp@40)) \n" -+ " (declare (temporary) float assignment_tmp@41)\n" -+ " (assign (x) (var_ref assignment_tmp@41) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor06)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor07))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor08)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (2))) (var_ref assignment_tmp@41)) \n" -+ " (declare (temporary) float assignment_tmp@42)\n" -+ " (assign (x) (var_ref assignment_tmp@42) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor06)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor09))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor10))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (2))) (var_ref assignment_tmp@42)) \n" -+ " (declare (temporary) float assignment_tmp@43)\n" -+ " (assign (x) (var_ref assignment_tmp@43) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor11)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor09))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor12)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (2))) (var_ref assignment_tmp@43)) \n" -+ " (declare (temporary) float assignment_tmp@44)\n" -+ " (assign (x) (var_ref assignment_tmp@44) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor08)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor10))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor12))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (3))) (constant int (2))) (var_ref assignment_tmp@44)) \n" -+ " (declare (temporary) float assignment_tmp@45)\n" -+ " (assign (x) (var_ref assignment_tmp@45) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor13)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor14))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor15))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (3))) (var_ref assignment_tmp@45)) \n" -+ " (declare (temporary) float assignment_tmp@46)\n" -+ " (assign (x) (var_ref assignment_tmp@46) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor13)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor16))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor17)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (3))) (var_ref assignment_tmp@46)) \n" -+ " (declare (temporary) float assignment_tmp@47)\n" -+ " (assign (x) (var_ref assignment_tmp@47) (expression float neg (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor14)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor16))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (var_ref SubFactor18))))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (3))) (var_ref assignment_tmp@47)) \n" -+ " (declare (temporary) float assignment_tmp@48)\n" -+ " (assign (x) (var_ref assignment_tmp@48) (expression float + (expression float - (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (var_ref SubFactor15)) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (var_ref SubFactor17))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (var_ref SubFactor18)))) \n" -+ " (assign (x) (array_ref (array_ref (var_ref adj) (constant int (3))) (constant int (3))) (var_ref assignment_tmp@48)) \n" -+ " (declare (temporary) float assignment_tmp@49)\n" -+ " (assign (x) (var_ref assignment_tmp@49) (expression float + (expression float + (expression float + (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (0))) (array_ref (array_ref (var_ref adj) (constant int (0))) (constant int (0)))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (1))) (array_ref (array_ref (var_ref adj) (constant int (1))) (constant int (0))))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (2))) (array_ref (array_ref (var_ref adj) (constant int (2))) (constant int (0))))) (expression float * (array_ref (array_ref (var_ref m) (constant int (0))) (constant int (3))) (array_ref (array_ref (var_ref adj) (constant int (3))) (constant int (0)))))) \n" -+ " (assign (x) (var_ref det) (var_ref assignment_tmp@49)) \n" -+ " (return (expression mat4 / (var_ref adj) (var_ref det)))))))" -+; -+static const char builtin_inversesqrt[] = -+ "((function inversesqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float rsq (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 rsq (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 rsq (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 rsq (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_isinf[] = -+ "((function isinf\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression bool == (expression float abs (var_ref x)) (constant float (+INF))))))\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression bvec2 == (expression vec2 abs (var_ref x)) (constant vec2 (+INF +INF))))))\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression bvec3 == (expression vec3 abs (var_ref x)) (constant vec3 (+INF +INF +INF))))))\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression bvec4 == (expression vec4 abs (var_ref x)) (constant vec4 (+INF +INF +INF +INF))))))))\n" -+ "" -+; -+static const char builtin_isnan[] = -+ "((function isnan\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression bool != (var_ref x) (var_ref x)))))\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression bvec2 != (var_ref x) (var_ref x)))))\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression bvec3 != (var_ref x) (var_ref x)))))\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression bvec4 != (var_ref x) (var_ref x)))))))\n" -+ "" -+; -+static const char builtin_length[] = -+ "((function length\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float abs (var_ref arg0)))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_lessThan[] = -+ "((function lessThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_lessThanEqual[] = -+ "((function lessThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_log[] = -+ "((function log\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float log (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 log (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 log (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 log (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_log2[] = -+ "((function log2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float log2 (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 log2 (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 log2 (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 log2 (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_matrixCompMult[] = -+ "((function matrixCompMult\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 x)\n" -+ " (declare (in) mat2 y))\n" -+ " ((declare () mat2 z)\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 x)\n" -+ " (declare (in) mat3 y))\n" -+ " ((declare () mat3 z)\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (2))) (expression vec3 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 x)\n" -+ " (declare (in) mat4 y))\n" -+ " ((declare () mat4 z)\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (2))) (expression vec4 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (3))) (expression vec4 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat2x3\n" -+ " (parameters\n" -+ " (declare (in) mat2x3 x)\n" -+ " (declare (in) mat2x3 y))\n" -+ " ((declare () mat2x3 z)\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat3x2\n" -+ " (parameters\n" -+ " (declare (in) mat3x2 x)\n" -+ " (declare (in) mat3x2 y))\n" -+ " ((declare () mat3x2 z)\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (2))) (expression vec2 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat2x4\n" -+ " (parameters\n" -+ " (declare (in) mat2x4 x)\n" -+ " (declare (in) mat2x4 y))\n" -+ " ((declare () mat2x4 z)\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat4x2\n" -+ " (parameters\n" -+ " (declare (in) mat4x2 x)\n" -+ " (declare (in) mat4x2 y))\n" -+ " ((declare () mat4x2 z)\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (2))) (expression vec2 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n" -+ " (assign (xy) (array_ref (var_ref z) (constant int (3))) (expression vec2 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat3x4\n" -+ " (parameters\n" -+ " (declare (in) mat3x4 x)\n" -+ " (declare (in) mat3x4 y))\n" -+ " ((declare () mat3x4 z)\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ " (assign (xyzw) (array_ref (var_ref z) (constant int (2))) (expression vec4 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n" -+ "(return (var_ref z))))\n" -+ "\n" -+ " (signature mat4x3\n" -+ " (parameters\n" -+ " (declare (in) mat4x3 x)\n" -+ " (declare (in) mat4x3 y))\n" -+ " ((declare () mat4x3 z)\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (2))) (expression vec3 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))\n" -+ " (assign (xyz) (array_ref (var_ref z) (constant int (3))) (expression vec3 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))\n" -+ "(return (var_ref z))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_max[] = -+ "((function max\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression float max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) int arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression int max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uint\n" -+ " (parameters\n" -+ " (declare (in) uint arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uint max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_min[] = -+ "((function min\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression float min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) int arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression int min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) int arg1))\n" -+ " ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uint\n" -+ " (parameters\n" -+ " (declare (in) uint arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uint min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uint arg1))\n" -+ " ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_mix[] = -+ "((function mix\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression float + (expression float * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression float * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1)\n" -+ " (declare (in) vec2 arg2))\n" -+ " ((return (expression vec2 + (expression vec2 * (var_ref arg0) (expression vec2 - (constant float (1.000000)) (var_ref arg2))) (expression vec2 * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1)\n" -+ " (declare (in) vec3 arg2))\n" -+ " ((return (expression vec3 + (expression vec3 * (var_ref arg0) (expression vec3 - (constant float (1.000000)) (var_ref arg2))) (expression vec3 * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1)\n" -+ " (declare (in) vec4 arg2))\n" -+ " ((return (expression vec4 + (expression vec4 * (var_ref arg0) (expression vec4 - (constant float (1.000000)) (var_ref arg2))) (expression vec4 * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression vec2 + (expression vec2 * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression vec2 * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression vec3 + (expression vec3 * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression vec3 * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1)\n" -+ " (declare (in) float arg2))\n" -+ " ((return (expression vec4 + (expression vec4 * (var_ref arg0) (expression float - (constant float (1.000000)) (var_ref arg2))) (expression vec4 * (var_ref arg1) (var_ref arg2))))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float v1)\n" -+ " (declare (in) float v2)\n" -+ " (declare (in) bool a))\n" -+ " ((assign (var_ref a) (x) (var_ref v1) (var_ref v2))\n" -+ " (return (var_ref v1))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 v1)\n" -+ " (declare (in) vec2 v2)\n" -+ " (declare (in) bvec2 a))\n" -+ " ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n" -+ " (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n" -+ " (return (var_ref v1))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 v1)\n" -+ " (declare (in) vec3 v2)\n" -+ " (declare (in) bvec3 a))\n" -+ " ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n" -+ " (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n" -+ " (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))\n" -+ " (return (var_ref v1))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 v1)\n" -+ " (declare (in) vec4 v2)\n" -+ " (declare (in) bvec4 a))\n" -+ " ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))\n" -+ " (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))\n" -+ " (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))\n" -+ " (assign (swiz w (var_ref a)) (w) (var_ref v1) (swiz w (var_ref v2)))\n" -+ " (return (var_ref v1))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_mod[] = -+ "((function mod\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression float % (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_modf[] = -+ "((function modf\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (out) float i))\n" -+ " ((declare () float t)\n" -+ " (assign (x) (var_ref t) (expression float trunc (var_ref x)))\n" -+ " (assign (x) (var_ref i) (var_ref t))\n" -+ " (return (expression float - (var_ref x) (var_ref t)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (out) vec2 i))\n" -+ " ((declare () vec2 t)\n" -+ " (assign (xy) (var_ref t) (expression vec2 trunc (var_ref x)))\n" -+ " (assign (xy) (var_ref i) (var_ref t))\n" -+ " (return (expression vec2 - (var_ref x) (var_ref t)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (out) vec3 i))\n" -+ " ((declare () vec3 t)\n" -+ " (assign (xyz) (var_ref t) (expression vec3 trunc (var_ref x)))\n" -+ " (assign (xyz) (var_ref i) (var_ref t))\n" -+ " (return (expression vec3 - (var_ref x) (var_ref t)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (out) vec4 i))\n" -+ " ((declare () vec4 t)\n" -+ " (assign (xyzw) (var_ref t) (expression vec4 trunc (var_ref x)))\n" -+ " (assign (xyzw) (var_ref i) (var_ref t))\n" -+ " (return (expression vec4 - (var_ref x) (var_ref t)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_noise1[] = -+ "((function noise1\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float noise (var_ref x)))))\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression float noise (var_ref x)))))\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression float noise (var_ref x)))))\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression float noise (var_ref x)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_noise2[] = -+ "((function noise2\n" -+ " (signature vec2\n" -+ " (parameters (declare (in) vec4 p))\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () vec2 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters (declare (in) vec3 p))\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () vec2 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in ) vec2 p)\n" -+ " )\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () vec2 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in ) float p)\n" -+ " )\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () vec2 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "))\n" -+ "" -+; -+static const char builtin_noise3[] = -+ "((function noise3\n" -+ " (signature vec3\n" -+ " (parameters (declare (in) vec4 p))\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () float c)\n" -+ " (declare () vec3 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n" -+ " (assign (x) (var_ref c) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (assign (z) (var_ref t) (var_ref c))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters (declare (in) vec3 p))\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () float c)\n" -+ " (declare () vec3 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n" -+ " (assign (x) (var_ref c) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (assign (z) (var_ref t) (var_ref c))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters (declare (in) vec2 p))\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () float c)\n" -+ " (declare () vec3 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n" -+ " (assign (x) (var_ref c) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (assign (z) (var_ref t) (var_ref c))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters (declare (in) float p))\n" -+ " (\n" -+ " (declare () float a)\n" -+ " (declare () float b)\n" -+ " (declare () float c)\n" -+ " (declare () vec3 t)\n" -+ "\n" -+ " (assign (x) (var_ref a) (expression float noise (var_ref p)))\n" -+ " (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))\n" -+ " (assign (x) (var_ref c) (expression float noise (expression float + (var_ref p) (constant float (1559.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref t) (var_ref a))\n" -+ " (assign (y) (var_ref t) (var_ref b))\n" -+ " (assign (z) (var_ref t) (var_ref c))\n" -+ " (return (var_ref t))\n" -+ " ))\n" -+ "))\n" -+ "" -+; -+static const char builtin_noise4[] = -+ "((function noise4\n" -+ " (signature vec4\n" -+ " (parameters (declare (in) vec4 p))\n" -+ " (\n" -+ " (declare () float _x)\n" -+ " (declare () float _y)\n" -+ " (declare () float _z)\n" -+ " (declare () float _w)\n" -+ " (declare () vec4 _r)\n" -+ "\n" -+ " (declare () vec4 _p)\n" -+ " (assign (xyzw) (var_ref _p) (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0))) )\n" -+ "\n" -+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n" -+ " (assign (x) (var_ref _y) (expression float noise(expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n" -+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n" -+ " (assign (x) (var_ref _w) (expression float noise(expression vec4 + (var_ref _p) (constant vec4 (601.0 313.0 29.0 277.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref _r) (var_ref _x))\n" -+ " (assign (y) (var_ref _r) (var_ref _y))\n" -+ " (assign (z) (var_ref _r) (var_ref _z))\n" -+ " (assign (w) (var_ref _r) (var_ref _w))\n" -+ " (return (var_ref _r))\n" -+ " ))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters (declare (in) vec3 p))\n" -+ " (\n" -+ " (declare () float _x)\n" -+ " (declare () float _y)\n" -+ " (declare () float _z)\n" -+ " (declare () float _w)\n" -+ " (declare () vec4 _r)\n" -+ "\n" -+ " (declare () vec3 _p)\n" -+ " (assign (xyz) (var_ref _p) (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0))) )\n" -+ "\n" -+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n" -+ " (assign (x) (var_ref _y) (expression float noise(expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))\n" -+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n" -+ " (assign (x) (var_ref _w) (expression float noise(expression vec3 + (var_ref _p) (constant vec3 (601.0 313.0 29.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref _r) (var_ref _x))\n" -+ " (assign (y) (var_ref _r) (var_ref _y))\n" -+ " (assign (z) (var_ref _r) (var_ref _z))\n" -+ " (assign (w) (var_ref _r) (var_ref _w))\n" -+ " (return (var_ref _r))\n" -+ " ))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters (declare (in) vec2 p))\n" -+ " (\n" -+ " (declare () float _x)\n" -+ " (declare () float _y)\n" -+ " (declare () float _z)\n" -+ " (declare () float _w)\n" -+ " (declare () vec4 _r)\n" -+ "\n" -+ " (declare () vec2 _p)\n" -+ " (assign (xy) (var_ref _p) (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0))) )\n" -+ "\n" -+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n" -+ " (assign (x) (var_ref _y) (expression float noise(expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))\n" -+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n" -+ " (assign (x) (var_ref _w) (expression float noise(expression vec2 + (var_ref _p) (constant vec2 (601.0 313.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref _r) (var_ref _x))\n" -+ " (assign (y) (var_ref _r) (var_ref _y))\n" -+ " (assign (z) (var_ref _r) (var_ref _z))\n" -+ " (assign (w) (var_ref _r) (var_ref _w))\n" -+ " (return (var_ref _r))\n" -+ " ))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters (declare (in) float p))\n" -+ " (\n" -+ " (declare () float _x)\n" -+ " (declare () float _y)\n" -+ " (declare () float _z)\n" -+ " (declare () float _w)\n" -+ " (declare () vec4 _r)\n" -+ "\n" -+ " (declare () float _p)\n" -+ " (assign (x) (var_ref _p) (expression float + (var_ref p) (constant float (1559.0))) )\n" -+ "\n" -+ " (assign (x) (var_ref _x) (expression float noise(var_ref p)))\n" -+ " (assign (x) (var_ref _y) (expression float noise(expression float + (var_ref p) (constant float (601.0)))))\n" -+ " (assign (x) (var_ref _z) (expression float noise(var_ref _p)))\n" -+ " (assign (x) (var_ref _w) (expression float noise(expression float + (var_ref _p) (constant float (601.0)))))\n" -+ "\n" -+ " (assign (x) (var_ref _r) (var_ref _x))\n" -+ " (assign (y) (var_ref _r) (var_ref _y))\n" -+ " (assign (z) (var_ref _r) (var_ref _z))\n" -+ " (assign (w) (var_ref _r) (var_ref _w))\n" -+ " (return (var_ref _r))\n" -+ " ))\n" -+ "))\n" -+ "" -+; -+static const char builtin_normalize[] = -+ "((function normalize\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float sign (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_not[] = -+ "((function not\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 arg0))\n" -+ " ((return (expression bvec2 ! (var_ref arg0)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 arg0))\n" -+ " ((return (expression bvec3 ! (var_ref arg0)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 arg0))\n" -+ " ((return (expression bvec4 ! (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_notEqual[] = -+ "((function notEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 arg0)\n" -+ " (declare (in) bvec2 arg1))\n" -+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 arg0)\n" -+ " (declare (in) bvec3 arg1))\n" -+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 arg0)\n" -+ " (declare (in) bvec4 arg1))\n" -+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 arg0)\n" -+ " (declare (in) ivec2 arg1))\n" -+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 arg0)\n" -+ " (declare (in) ivec3 arg1))\n" -+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 arg0)\n" -+ " (declare (in) ivec4 arg1))\n" -+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg0)\n" -+ " (declare (in) uvec2 arg1))\n" -+ " ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg0)\n" -+ " (declare (in) uvec3 arg1))\n" -+ " ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg0)\n" -+ " (declare (in) uvec4 arg1))\n" -+ " ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_outerProduct[] = -+ "((function outerProduct\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) vec2 u)\n" -+ " (declare (in) vec2 v))\n" -+ " ((declare () mat2 m)\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat2x3\n" -+ " (parameters\n" -+ " (declare (in) vec3 u)\n" -+ " (declare (in) vec2 v))\n" -+ " ((declare () mat2x3 m)\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat2x4\n" -+ " (parameters\n" -+ " (declare (in) vec4 u)\n" -+ " (declare (in) vec2 v))\n" -+ " ((declare () mat2x4 m)\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat3x2\n" -+ " (parameters\n" -+ " (declare (in) vec2 u)\n" -+ " (declare (in) vec3 v))\n" -+ " ((declare () mat3x2 m)\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))\n" -+ " (return (var_ref m))\n" -+ " ))\n" -+ "\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) vec3 u)\n" -+ " (declare (in) vec3 v))\n" -+ " ((declare () mat3 m)\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat3x4\n" -+ " (parameters\n" -+ " (declare (in) vec4 u)\n" -+ " (declare (in) vec3 v))\n" -+ " ((declare () mat3x4 m)\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat4x2\n" -+ " (parameters\n" -+ " (declare (in) vec2 u)\n" -+ " (declare (in) vec4 v))\n" -+ " ((declare () mat4x2 m)\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))\n" -+ " (assign (xy) (array_ref (var_ref m) (constant int (3))) (expression vec2 * (var_ref u) (swiz w (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat4x3\n" -+ " (parameters\n" -+ " (declare (in) vec3 u)\n" -+ " (declare (in) vec4 v))\n" -+ " ((declare () mat4x3 m)\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))\n" -+ " (assign (xyz) (array_ref (var_ref m) (constant int (3))) (expression vec3 * (var_ref u) (swiz w (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) vec4 u)\n" -+ " (declare (in) vec4 v))\n" -+ " ((declare () mat4 m)\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))\n" -+ " (assign (xyzw) (array_ref (var_ref m) (constant int (3))) (expression vec4 * (var_ref u) (swiz w (var_ref v))))\n" -+ " (return (var_ref m))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_pow[] = -+ "((function pow\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0)\n" -+ " (declare (in) float arg1))\n" -+ " ((return (expression float pow (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0)\n" -+ " (declare (in) vec2 arg1))\n" -+ " ((return (expression vec2 pow (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0)\n" -+ " (declare (in) vec3 arg1))\n" -+ " ((return (expression vec3 pow (var_ref arg0) (var_ref arg1)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0)\n" -+ " (declare (in) vec4 arg1))\n" -+ " ((return (expression vec4 pow (var_ref arg0) (var_ref arg1)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_radians[] = -+ "((function radians\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float * (var_ref arg0) (constant float (0.0174532925))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 * (var_ref arg0) (constant float (0.0174532925))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 * (var_ref arg0) (constant float (0.0174532925))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 * (var_ref arg0) (constant float (0.0174532925))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_reflect[] = -+ "((function reflect\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float i)\n" -+ " (declare (in) float n))\n" -+ " ((return (expression float -\n" -+ " (var_ref i)\n" -+ " (expression float *\n" -+ " (constant float (2.0))\n" -+ " (expression float *\n" -+ " (expression float *\n" -+ " (var_ref n)\n" -+ " (var_ref i))\n" -+ " (var_ref n)))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 i)\n" -+ " (declare (in) vec2 n))\n" -+ " ((return (expression vec2 -\n" -+ " (var_ref i)\n" -+ " (expression vec2 *\n" -+ " (constant float (2.0))\n" -+ " (expression vec2 *\n" -+ " (expression float dot\n" -+ " (var_ref n)\n" -+ " (var_ref i))\n" -+ " (var_ref n)))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 i)\n" -+ " (declare (in) vec3 n))\n" -+ " ((return (expression vec3 -\n" -+ " (var_ref i)\n" -+ " (expression vec3 *\n" -+ " (constant float (2.0))\n" -+ " (expression vec3 *\n" -+ " (expression float dot\n" -+ " (var_ref n)\n" -+ " (var_ref i))\n" -+ " (var_ref n)))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 i)\n" -+ " (declare (in) vec4 n))\n" -+ " ((return (expression vec4 -\n" -+ " (var_ref i)\n" -+ " (expression vec4 *\n" -+ " (constant float (2.0))\n" -+ " (expression vec4 *\n" -+ " (expression float dot\n" -+ " (var_ref n)\n" -+ " (var_ref i))\n" -+ " (var_ref n)))))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_refract[] = -+ "((function refract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float i)\n" -+ " (declare (in) float n)\n" -+ " (declare (in) float eta))\n" -+ " ((declare () float k)\n" -+ " (assign (x) (var_ref k)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * \n" -+ " (expression float * (var_ref n) (var_ref i))\n" -+ " (expression float * (var_ref n) (var_ref i))))))))\n" -+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n" -+ " ((return (constant float (0.0))))\n" -+ " ((return (expression float -\n" -+ " (expression float * (var_ref eta) (var_ref i))\n" -+ " (expression float *\n" -+ " (expression float +\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float * (var_ref n) (var_ref i)))\n" -+ " (expression float sqrt (var_ref k)))\n" -+ " (var_ref n))))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 i)\n" -+ " (declare (in) vec2 n)\n" -+ " (declare (in) float eta))\n" -+ " ((declare () float k)\n" -+ " (assign (x) (var_ref k)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * \n" -+ " (expression float dot (var_ref n) (var_ref i))\n" -+ " (expression float dot (var_ref n) (var_ref i))))))))\n" -+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n" -+ " ((return (constant vec2 (0.0 0.0))))\n" -+ " ((return (expression vec2 -\n" -+ " (expression vec2 * (var_ref eta) (var_ref i))\n" -+ " (expression vec2 *\n" -+ " (expression float +\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float dot (var_ref n) (var_ref i)))\n" -+ " (expression float sqrt (var_ref k)))\n" -+ " (var_ref n))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 i)\n" -+ " (declare (in) vec3 n)\n" -+ " (declare (in) float eta))\n" -+ " ((declare () float k)\n" -+ " (assign (x) (var_ref k)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * \n" -+ " (expression float dot (var_ref n) (var_ref i))\n" -+ " (expression float dot (var_ref n) (var_ref i))))))))\n" -+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n" -+ " ((return (constant vec3 (0.0 0.0 0.0))))\n" -+ " ((return (expression vec3 -\n" -+ " (expression vec3 * (var_ref eta) (var_ref i))\n" -+ " (expression vec3 *\n" -+ " (expression float +\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float dot (var_ref n) (var_ref i)))\n" -+ " (expression float sqrt (var_ref k)))\n" -+ " (var_ref n))))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 i)\n" -+ " (declare (in) vec4 n)\n" -+ " (declare (in) float eta))\n" -+ " ((declare () float k)\n" -+ " (assign (x) (var_ref k)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float - (constant float (1.0))\n" -+ " (expression float * \n" -+ " (expression float dot (var_ref n) (var_ref i))\n" -+ " (expression float dot (var_ref n) (var_ref i))))))))\n" -+ " (if (expression bool < (var_ref k) (constant float (0.0)))\n" -+ " ((return (constant vec4 (0.0 0.0 0.0 0.0))))\n" -+ " ((return (expression vec4 -\n" -+ " (expression vec4 * (var_ref eta) (var_ref i))\n" -+ " (expression vec4 *\n" -+ " (expression float +\n" -+ " (expression float * (var_ref eta)\n" -+ " (expression float dot (var_ref n) (var_ref i)))\n" -+ " (expression float sqrt (var_ref k)))\n" -+ " (var_ref n))))))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_round[] = -+ "((function round\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float round_even (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 round_even (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 round_even (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 round_even (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_roundEven[] = -+ "((function roundEven\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float round_even (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 round_even (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 round_even (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 round_even (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1D[] = -+ "((function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DArray[] = -+ "((function shadow1DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DArrayLod[] = -+ "((function shadow1DArrayLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DGradARB[] = -+ "((function shadow1DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DLod[] = -+ "((function shadow1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DProj[] = -+ "((function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DProjGradARB[] = -+ "((function shadow1DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow1DProjLod[] = -+ "((function shadow1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2D[] = -+ "((function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DArray[] = -+ "((function shadow2DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DGradARB[] = -+ "((function shadow2DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DLod[] = -+ "((function shadow2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DProj[] = -+ "((function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DProjGradARB[] = -+ "((function shadow2DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DProjLod[] = -+ "((function shadow2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DRect[] = -+ "((function shadow2DRect\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DRectGradARB[] = -+ "((function shadow2DRectGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DRectProj[] = -+ "((function shadow2DRectProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_shadow2DRectProjGradARB[] = -+ "((function shadow2DRectProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_sign[] = -+ "((function sign\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float sign (var_ref x)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 sign (var_ref x)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 sign (var_ref x)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 sign (var_ref x)))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) int x))\n" -+ " ((return (expression int sign (var_ref x)))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x))\n" -+ " ((return (expression ivec2 sign (var_ref x)))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x))\n" -+ " ((return (expression ivec3 sign (var_ref x)))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x))\n" -+ " ((return (expression ivec4 sign (var_ref x)))))\n" -+ "))\n" -+ "\n" -+ "" -+; -+static const char builtin_sin[] = -+ "((function sin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ((return (expression float sin (var_ref angle)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ((return (expression vec2 sin (var_ref angle)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ((return (expression vec3 sin (var_ref angle)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ((return (expression vec4 sin (var_ref angle)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_sinh[] = -+ "((function sinh\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float * (constant float (0.5))\n" -+ " (expression float -\n" -+ " (expression float exp (var_ref x))\n" -+ " (expression float exp (expression float neg (var_ref x))))))))\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 * (constant float (0.5))\n" -+ " (expression vec2 -\n" -+ " (expression vec2 exp (var_ref x))\n" -+ " (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 * (constant float (0.5))\n" -+ " (expression vec3 -\n" -+ " (expression vec3 exp (var_ref x))\n" -+ " (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 * (constant float (0.5))\n" -+ " (expression vec4 -\n" -+ " (expression vec4 exp (var_ref x))\n" -+ " (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_smoothstep[] = -+ "((function smoothstep\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) float x))\n" -+ " ((declare () float t)\n" -+ " (assign (x) (var_ref t)\n" -+ " (expression float max\n" -+ " (expression float min\n" -+ " (expression float / (expression float - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression float * (var_ref t) (expression float * (var_ref t) (expression float - (constant float (3.0)) (expression float * (constant float (2.0)) (var_ref t))))))))\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ((declare () vec2 t)\n" -+ " (assign (xy) (var_ref t)\n" -+ " (expression vec2 max\n" -+ " (expression vec2 min\n" -+ " (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression vec2 * (var_ref t) (expression vec2 * (var_ref t) (expression vec2 - (constant float (3.0)) (expression vec2 * (constant float (2.0)) (var_ref t))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ((declare () vec3 t)\n" -+ " (assign (xyz) (var_ref t)\n" -+ " (expression vec3 max\n" -+ " (expression vec3 min\n" -+ " (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression vec3 * (var_ref t) (expression vec3 * (var_ref t) (expression vec3 - (constant float (3.0)) (expression vec3 * (constant float (2.0)) (var_ref t))))))))\n" -+ "\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ((declare () vec4 t)\n" -+ " (assign (xyzw) (var_ref t)\n" -+ " (expression vec4 max\n" -+ " (expression vec4 min\n" -+ " (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression vec4 * (var_ref t) (expression vec4 * (var_ref t) (expression vec4 - (constant float (3.0)) (expression vec4 * (constant float (2.0)) (var_ref t))))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge0)\n" -+ " (declare (in) vec2 edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ((declare () vec2 t)\n" -+ " (assign (xy) (var_ref t)\n" -+ " (expression vec2 max\n" -+ " (expression vec2 min\n" -+ " (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression vec2 - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression vec2 * (var_ref t) (expression vec2 * (var_ref t) (expression vec2 - (constant float (3.0)) (expression vec2 * (constant float (2.0)) (var_ref t))))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge0)\n" -+ " (declare (in) vec3 edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ((declare () vec3 t)\n" -+ " (assign (xyz) (var_ref t)\n" -+ " (expression vec3 max\n" -+ " (expression vec3 min\n" -+ " (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression vec3 - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression vec3 * (var_ref t) (expression vec3 * (var_ref t) (expression vec3 - (constant float (3.0)) (expression vec3 * (constant float (2.0)) (var_ref t))))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge0)\n" -+ " (declare (in) vec4 edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ((declare () vec4 t)\n" -+ " (assign (xyzw) (var_ref t)\n" -+ " (expression vec4 max\n" -+ " (expression vec4 min\n" -+ " (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression vec4 - (var_ref edge1) (var_ref edge0)))\n" -+ " (constant float (1.0)))\n" -+ " (constant float (0.0))))\n" -+ " (return (expression vec4 * (var_ref t) (expression vec4 * (var_ref t) (expression vec4 - (constant float (3.0)) (expression vec4 * (constant float (2.0)) (var_ref t))))))))\n" -+ "))\n" -+ "\n" -+ "" -+; -+static const char builtin_sqrt[] = -+ "((function sqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float sqrt (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 sqrt (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 sqrt (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 sqrt (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_step[] = -+ "((function step\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float b2f (expression bool >= (var_ref x) (var_ref edge))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ((declare () vec2 t)\n" -+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n" -+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n" -+ " (return (var_ref t))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ((declare () vec3 t)\n" -+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n" -+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n" -+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))\n" -+ " (return (var_ref t))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ((declare () vec4 t)\n" -+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))\n" -+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))\n" -+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))\n" -+ " (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(var_ref edge))))\n" -+ " (return (var_ref t))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ((declare () vec2 t)\n" -+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n" -+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n" -+ " (return (var_ref t))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ((declare () vec3 t)\n" -+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n" -+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n" -+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))\n" -+ " (return (var_ref t))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ((declare () vec4 t)\n" -+ " (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))\n" -+ " (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))\n" -+ " (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))\n" -+ " (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(swiz w (var_ref edge)))))\n" -+ " (return (var_ref t))))\n" -+ "))\n" -+ "\n" -+ "" -+; -+static const char builtin_tan[] = -+ "((function tan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ((return (expression float / (expression float sin (var_ref angle)) (expression float cos (var_ref angle))))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ((return (expression vec2 / (expression vec2 sin (var_ref angle)) (expression vec2 cos (var_ref angle))))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ((return (expression vec3 / (expression vec3 sin (var_ref angle)) (expression vec3 cos (var_ref angle))))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ((return (expression vec4 / (expression vec4 sin (var_ref angle)) (expression vec4 cos (var_ref angle))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_tanh[] = -+ "((function tanh\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ((return (expression float /\n" -+ " (expression float -\n" -+ " (expression float exp (var_ref x))\n" -+ " (expression float exp (expression float neg (var_ref x))))\n" -+ " (expression float +\n" -+ " (expression float exp (var_ref x))\n" -+ " (expression float exp (expression float neg (var_ref x))))))))\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ((return (expression vec2 /\n" -+ " (expression vec2 -\n" -+ " (expression vec2 exp (var_ref x))\n" -+ " (expression vec2 exp (expression vec2 neg (var_ref x))))\n" -+ " (expression vec2 +\n" -+ " (expression vec2 exp (var_ref x))\n" -+ " (expression vec2 exp (expression vec2 neg (var_ref x))))))))\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ((return (expression vec3 /\n" -+ " (expression vec3 -\n" -+ " (expression vec3 exp (var_ref x))\n" -+ " (expression vec3 exp (expression vec3 neg (var_ref x))))\n" -+ " (expression vec3 +\n" -+ " (expression vec3 exp (var_ref x))\n" -+ " (expression vec3 exp (expression vec3 neg (var_ref x))))))))\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ((return (expression vec4 /\n" -+ " (expression vec4 -\n" -+ " (expression vec4 exp (var_ref x))\n" -+ " (expression vec4 exp (expression vec4 neg (var_ref x))))\n" -+ " (expression vec4 +\n" -+ " (expression vec4 exp (var_ref x))\n" -+ " (expression vec4 exp (expression vec4 neg (var_ref x))))))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_texelFetch[] = -+ "((function texelFetch\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) int P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) int P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) int P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) ivec2 P) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) ivec2 P) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) ivec2 P) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerBuffer sampler) \n" -+ " (declare (in) int P) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) 0 (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerBuffer sampler) \n" -+ " (declare (in) int P) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) 0 (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerBuffer sampler) \n" -+ " (declare (in) int P) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) 0 (constant int (0))\n" -+ "))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texelFetchOffset[] = -+ "((function texelFetchOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) int P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) int P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) int P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) ivec2 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf vec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf ivec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) ivec3 P) \n" -+ " (declare (in) int lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txf uvec4 (var_ref sampler) (var_ref P) (var_ref offset) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture[] = -+ "((function texture\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) samplerCubeShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) samplerCubeShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1D[] = -+ "((function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DArray[] = -+ "((function texture1DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DArrayLod[] = -+ "((function texture1DArrayLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DGradARB[] = -+ "((function texture1DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DLod[] = -+ "((function texture1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DProj[] = -+ "((function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DProjGradARB[] = -+ "((function texture1DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture1DProjLod[] = -+ "((function texture1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2D[] = -+ "((function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerExternalOES sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DArray[] = -+ "((function texture2DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DArrayLod[] = -+ "((function texture2DArrayLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DGradARB[] = -+ "((function texture2DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DLod[] = -+ "((function texture2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DProj[] = -+ "((function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerExternalOES sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerExternalOES sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DProjGradARB[] = -+ "((function texture2DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DProjLod[] = -+ "((function texture2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DRect[] = -+ "((function texture2DRect\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DRectGradARB[] = -+ "((function texture2DRectGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DRectProj[] = -+ "((function texture2DRectProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture2DRectProjGradARB[] = -+ "((function texture2DRectProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture3D[] = -+ "((function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture3DGradARB[] = -+ "((function texture3DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture3DLod[] = -+ "((function texture3DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture3DProj[] = -+ "((function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture3DProjGradARB[] = -+ "((function texture3DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_texture3DProjLod[] = -+ "((function texture3DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureCube[] = -+ "((function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) 0 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureCubeGradARB[] = -+ "((function textureCubeGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureCubeLod[] = -+ "((function textureCubeLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureGrad[] = -+ "((function textureGrad\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) 0 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) samplerCubeShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xyz (var_ref P)) 0 1 (swiz w (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureGradOffset[] = -+ "((function textureGradOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) 1 (swiz w (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureLod[] = -+ "((function textureLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) 0 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureLodOffset[] = -+ "((function textureLodOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureOffset[] = -+ "((function textureOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) float P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec3 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec3 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec3 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (var_ref P) (var_ref offset) 1 () (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) 1 (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureProj[] = -+ "((function textureProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec3 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec4 P) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureProjGrad[] = -+ "((function textureProjGrad\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureProjGradOffset[] = -+ "((function textureProjGradOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec3 dPdx) \n" -+ " (declare (in) vec3 dPdy) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float dPdx) \n" -+ " (declare (in) float dPdy) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) vec2 dPdx) \n" -+ " (declare (in) vec2 dPdy) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txd float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ((var_ref dPdx) (var_ref dPdy)) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureProjLod[] = -+ "((function textureProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz xyz (var_ref P)) 0 (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) )\n" -+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) 0 (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureProjLodOffset[] = -+ "((function textureProjLodOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txl vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txl ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (txl uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (txl float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (in) float lod) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (txl float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref lod) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureProjOffset[] = -+ "((function textureProjOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec3 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) )\n" -+ " ((return (tex float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec2 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz y (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec3 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz z (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec3 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb vec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec3 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb ivec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec3 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb uvec4 (var_ref sampler) (swiz xyz (var_ref P)) (var_ref offset) (swiz w (var_ref P)) () (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) int offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz x (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) vec4 P) \n" -+ " (declare (const_in) ivec2 offset) \n" -+ " (declare (in) float bias) )\n" -+ " ((return (txb float (var_ref sampler) (swiz xy (var_ref P)) (var_ref offset) (swiz w (var_ref P)) (swiz z (var_ref P)) (var_ref bias) ))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_textureSize[] = -+ "((function textureSize\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs int (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs int (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs int (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs int (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) samplerCubeShadow sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler) \n" -+ " (declare (in) int lod) )\n" -+ " ((return (txs ivec3 (var_ref sampler) (var_ref lod) ))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) isampler2DRect sampler) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) usampler2DRect sampler) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler) )\n" -+ " ((return (txs ivec2 (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) samplerBuffer sampler) )\n" -+ " ((return (txs int (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) isamplerBuffer sampler) )\n" -+ " ((return (txs int (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) usamplerBuffer sampler) )\n" -+ " ((return (txs int (var_ref sampler) (constant int (0))\n" -+ "))))\n" -+ "\n" -+ "))\n" -+ "" -+; -+static const char builtin_transpose[] = -+ "((function transpose\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 m))\n" -+ " ((declare () mat2 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat3x2\n" -+ " (parameters\n" -+ " (declare (in) mat2x3 m))\n" -+ " ((declare () mat3x2 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat4x2\n" -+ " (parameters\n" -+ " (declare (in) mat2x4 m))\n" -+ " ((declare () mat4x2 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat2x3\n" -+ " (parameters\n" -+ " (declare (in) mat3x2 m))\n" -+ " ((declare () mat2x3 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 m))\n" -+ " ((declare () mat3 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat4x3\n" -+ " (parameters\n" -+ " (declare (in) mat3x4 m))\n" -+ " ((declare () mat4x3 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat2x4\n" -+ " (parameters\n" -+ " (declare (in) mat4x2 m))\n" -+ " ((declare () mat2x4 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat3x4\n" -+ " (parameters\n" -+ " (declare (in) mat4x3 m))\n" -+ " ((declare () mat3x4 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))\n" -+ "(return (var_ref t))))\n" -+ "\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 m))\n" -+ " ((declare () mat4 t)\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))\n" -+ " (assign (w) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (3)))))\n" -+ "(return (var_ref t))))\n" -+ ")\n" -+ "\n" -+ ")\n" -+ "\n" -+ "" -+; -+static const char builtin_trunc[] = -+ "((function trunc\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float arg0))\n" -+ " ((return (expression float trunc (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 arg0))\n" -+ " ((return (expression vec2 trunc (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 arg0))\n" -+ " ((return (expression vec3 trunc (var_ref arg0)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 arg0))\n" -+ " ((return (expression vec4 trunc (var_ref arg0)))))\n" -+ "))\n" -+ "" -+; -+static const char builtin_uintBitsToFloat[] = -+ "((function uintBitsToFloat\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) uint arg))\n" -+ " ((return (expression float bitcast_u2f (var_ref arg)))))\n" -+ "\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 arg))\n" -+ " ((return (expression vec2 bitcast_u2f (var_ref arg)))))\n" -+ "\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 arg))\n" -+ " ((return (expression vec3 bitcast_u2f (var_ref arg)))))\n" -+ "\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 arg))\n" -+ " ((return (expression vec4 bitcast_u2f (var_ref arg)))))\n" -+ "))\n" -+ "" -+; -+static const char prototypes_for_100_frag[] = -+ "(\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())))" -+; -+static const char *functions_for_100_frag [] = { -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_textureCube, -+}; -+static const char prototypes_for_100_glsl[] = -+ "(\n" -+ "(function radians\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float degrees))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 degrees))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 degrees))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 degrees))\n" -+ " ()))\n" -+ "(function degrees\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float radians))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 radians))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 radians))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 radians))\n" -+ " ()))\n" -+ "(function sin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function cos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function tan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function asin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function acos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function atan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y_over_x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y_over_x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y_over_x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y_over_x))\n" -+ " ()))\n" -+ "(function pow\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function exp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function log\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function exp2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function log2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function sqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function inversesqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function abs\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function sign\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function floor\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function ceil\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function fract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function mod\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function min\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ()))\n" -+ "(function max\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ()))\n" -+ "(function clamp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 minVal)\n" -+ " (declare (in) vec2 maxVal))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 minVal)\n" -+ " (declare (in) vec3 maxVal))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 minVal)\n" -+ " (declare (in) vec4 maxVal))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ()))\n" -+ "(function mix\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 a))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 a))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 a))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) float a))\n" -+ " ()))\n" -+ "(function step\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function smoothstep\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge0)\n" -+ " (declare (in) vec2 edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge0)\n" -+ " (declare (in) vec3 edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge0)\n" -+ " (declare (in) vec4 edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function length\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function distance\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p0)\n" -+ " (declare (in) float p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 p0)\n" -+ " (declare (in) vec2 p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 p0)\n" -+ " (declare (in) vec3 p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 p0)\n" -+ " (declare (in) vec4 p1))\n" -+ " ()))\n" -+ "(function dot\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function cross\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ()))\n" -+ "(function normalize\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function faceforward\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float Nref))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 Nref))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 Nref))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 Nref))\n" -+ " ()))\n" -+ "(function reflect\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float N))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 N))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 N))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 N))\n" -+ " ()))\n" -+ "(function refract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) float eta))\n" -+ " ()))\n" -+ "(function matrixCompMult\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 x)\n" -+ " (declare (in) mat2 y))\n" -+ " ())\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 x)\n" -+ " (declare (in) mat3 y))\n" -+ " ())\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 x)\n" -+ " (declare (in) mat4 y))\n" -+ " ()))\n" -+ "(function lessThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function lessThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function greaterThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function greaterThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function equal\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x)\n" -+ " (declare (in) bvec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x)\n" -+ " (declare (in) bvec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x)\n" -+ " (declare (in) bvec4 y))\n" -+ " ()))\n" -+ "(function notEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x)\n" -+ " (declare (in) bvec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x)\n" -+ " (declare (in) bvec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x)\n" -+ " (declare (in) bvec4 y))\n" -+ " ()))\n" -+ "(function any\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function all\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function not\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())))" -+; -+static const char *functions_for_100_glsl [] = { -+ builtin_abs, -+ builtin_acos, -+ builtin_all, -+ builtin_any, -+ builtin_asin, -+ builtin_atan, -+ builtin_ceil, -+ builtin_clamp, -+ builtin_cos, -+ builtin_cross, -+ builtin_degrees, -+ builtin_distance, -+ builtin_dot, -+ builtin_equal, -+ builtin_exp, -+ builtin_exp2, -+ builtin_faceforward, -+ builtin_floor, -+ builtin_fract, -+ builtin_greaterThan, -+ builtin_greaterThanEqual, -+ builtin_inversesqrt, -+ builtin_length, -+ builtin_lessThan, -+ builtin_lessThanEqual, -+ builtin_log, -+ builtin_log2, -+ builtin_matrixCompMult, -+ builtin_max, -+ builtin_min, -+ builtin_mix, -+ builtin_mod, -+ builtin_normalize, -+ builtin_not, -+ builtin_notEqual, -+ builtin_pow, -+ builtin_radians, -+ builtin_reflect, -+ builtin_refract, -+ builtin_sign, -+ builtin_sin, -+ builtin_smoothstep, -+ builtin_sqrt, -+ builtin_step, -+ builtin_tan, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_textureCube, -+}; -+static const char prototypes_for_100_vert[] = -+ "(\n" -+ "(function texture2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function textureCubeLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())))" -+; -+static const char *functions_for_100_vert [] = { -+ builtin_texture2DLod, -+ builtin_texture2DProjLod, -+ builtin_textureCubeLod, -+}; -+static const char prototypes_for_110_frag[] = -+ "(\n" -+ "(function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function dFdx\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function dFdy\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function fwidth\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ())))" -+; -+static const char *functions_for_110_frag [] = { -+ builtin_dFdx, -+ builtin_dFdy, -+ builtin_fwidth, -+ builtin_shadow1D, -+ builtin_shadow1DProj, -+ builtin_shadow2D, -+ builtin_shadow2DProj, -+ builtin_texture1D, -+ builtin_texture1DProj, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_texture3D, -+ builtin_texture3DProj, -+ builtin_textureCube, -+}; -+static const char prototypes_for_110_glsl[] = -+ "(\n" -+ "(function radians\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float degrees))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 degrees))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 degrees))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 degrees))\n" -+ " ()))\n" -+ "(function degrees\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float radians))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 radians))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 radians))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 radians))\n" -+ " ()))\n" -+ "(function sin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function cos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function tan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function asin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function acos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function atan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y_over_x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y_over_x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y_over_x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y_over_x))\n" -+ " ()))\n" -+ "(function pow\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function exp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function log\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function exp2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function log2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function sqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function inversesqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function abs\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function sign\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function floor\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function ceil\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function fract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function mod\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function min\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ()))\n" -+ "(function max\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ()))\n" -+ "(function clamp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 minVal)\n" -+ " (declare (in) vec2 maxVal))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 minVal)\n" -+ " (declare (in) vec3 maxVal))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 minVal)\n" -+ " (declare (in) vec4 maxVal))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ()))\n" -+ "(function mix\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 a))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 a))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 a))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) float a))\n" -+ " ()))\n" -+ "(function step\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function smoothstep\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge0)\n" -+ " (declare (in) vec2 edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge0)\n" -+ " (declare (in) vec3 edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge0)\n" -+ " (declare (in) vec4 edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function length\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function distance\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p0)\n" -+ " (declare (in) float p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 p0)\n" -+ " (declare (in) vec2 p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 p0)\n" -+ " (declare (in) vec3 p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 p0)\n" -+ " (declare (in) vec4 p1))\n" -+ " ()))\n" -+ "(function dot\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function cross\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ()))\n" -+ "(function normalize\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function faceforward\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float Nref))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 Nref))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 Nref))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 Nref))\n" -+ " ()))\n" -+ "(function reflect\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float N))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 N))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 N))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 N))\n" -+ " ()))\n" -+ "(function refract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) float eta))\n" -+ " ()))\n" -+ "(function matrixCompMult\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 x)\n" -+ " (declare (in) mat2 y))\n" -+ " ())\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 x)\n" -+ " (declare (in) mat3 y))\n" -+ " ())\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 x)\n" -+ " (declare (in) mat4 y))\n" -+ " ()))\n" -+ "(function lessThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function lessThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function greaterThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function greaterThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function equal\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x)\n" -+ " (declare (in) bvec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x)\n" -+ " (declare (in) bvec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x)\n" -+ " (declare (in) bvec4 y))\n" -+ " ()))\n" -+ "(function notEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x)\n" -+ " (declare (in) bvec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x)\n" -+ " (declare (in) bvec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x)\n" -+ " (declare (in) bvec4 y))\n" -+ " ()))\n" -+ "(function any\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function all\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function not\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord))\n" -+ " ()))\n" -+ "(function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function noise1\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function noise2\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function noise3\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function noise4\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ())))" -+; -+static const char *functions_for_110_glsl [] = { -+ builtin_abs, -+ builtin_acos, -+ builtin_all, -+ builtin_any, -+ builtin_asin, -+ builtin_atan, -+ builtin_ceil, -+ builtin_clamp, -+ builtin_cos, -+ builtin_cross, -+ builtin_degrees, -+ builtin_distance, -+ builtin_dot, -+ builtin_equal, -+ builtin_exp, -+ builtin_exp2, -+ builtin_faceforward, -+ builtin_floor, -+ builtin_fract, -+ builtin_greaterThan, -+ builtin_greaterThanEqual, -+ builtin_inversesqrt, -+ builtin_length, -+ builtin_lessThan, -+ builtin_lessThanEqual, -+ builtin_log, -+ builtin_log2, -+ builtin_matrixCompMult, -+ builtin_max, -+ builtin_min, -+ builtin_mix, -+ builtin_mod, -+ builtin_noise1, -+ builtin_noise2, -+ builtin_noise3, -+ builtin_noise4, -+ builtin_normalize, -+ builtin_not, -+ builtin_notEqual, -+ builtin_pow, -+ builtin_radians, -+ builtin_reflect, -+ builtin_refract, -+ builtin_shadow1D, -+ builtin_shadow1DProj, -+ builtin_shadow2D, -+ builtin_shadow2DProj, -+ builtin_sign, -+ builtin_sin, -+ builtin_smoothstep, -+ builtin_sqrt, -+ builtin_step, -+ builtin_tan, -+ builtin_texture1D, -+ builtin_texture1DProj, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_texture3D, -+ builtin_texture3DProj, -+ builtin_textureCube, -+}; -+static const char prototypes_for_110_vert[] = -+ "(\n" -+ "(function ftransform\n" -+ " (signature vec4\n" -+ " (parameters)\n" -+ " ()))\n" -+ "(function texture1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function textureCubeLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())))" -+; -+static const char *functions_for_110_vert [] = { -+ builtin_ftransform, -+ builtin_shadow1DLod, -+ builtin_shadow1DProjLod, -+ builtin_shadow2DLod, -+ builtin_shadow2DProjLod, -+ builtin_texture1DLod, -+ builtin_texture1DProjLod, -+ builtin_texture2DLod, -+ builtin_texture2DProjLod, -+ builtin_texture3DLod, -+ builtin_texture3DProjLod, -+ builtin_textureCubeLod, -+}; -+static const char prototypes_for_120_frag[] = -+ "(\n" -+ "(function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function dFdx\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function dFdy\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function fwidth\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ())))" -+; -+static const char *functions_for_120_frag [] = { -+ builtin_dFdx, -+ builtin_dFdy, -+ builtin_fwidth, -+ builtin_shadow1D, -+ builtin_shadow1DProj, -+ builtin_shadow2D, -+ builtin_shadow2DProj, -+ builtin_texture1D, -+ builtin_texture1DProj, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_texture3D, -+ builtin_texture3DProj, -+ builtin_textureCube, -+}; -+static const char prototypes_for_120_glsl[] = -+ "(\n" -+ "(function radians\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float degrees))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 degrees))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 degrees))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 degrees))\n" -+ " ()))\n" -+ "(function degrees\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float radians))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 radians))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 radians))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 radians))\n" -+ " ()))\n" -+ "(function sin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function cos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function tan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function asin\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function acos\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float angle))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 angle))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 angle))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 angle))\n" -+ " ()))\n" -+ "(function atan\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float y_over_x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 y_over_x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 y_over_x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 y_over_x))\n" -+ " ()))\n" -+ "(function pow\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function exp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function log\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function exp2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function log2\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function sqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function inversesqrt\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function abs\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function sign\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function floor\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function ceil\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function fract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function mod\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function min\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ()))\n" -+ "(function max\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float y))\n" -+ " ()))\n" -+ "(function clamp\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 minVal)\n" -+ " (declare (in) vec2 maxVal))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 minVal)\n" -+ " (declare (in) vec3 maxVal))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 minVal)\n" -+ " (declare (in) vec4 maxVal))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) float minVal)\n" -+ " (declare (in) float maxVal))\n" -+ " ()))\n" -+ "(function mix\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) vec2 a))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) vec3 a))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) vec4 a))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y)\n" -+ " (declare (in) float a))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y)\n" -+ " (declare (in) float a))\n" -+ " ()))\n" -+ "(function step\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge)\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function smoothstep\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 edge0)\n" -+ " (declare (in) vec2 edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 edge0)\n" -+ " (declare (in) vec3 edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 edge0)\n" -+ " (declare (in) vec4 edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float edge0)\n" -+ " (declare (in) float edge1)\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function length\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function distance\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p0)\n" -+ " (declare (in) float p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 p0)\n" -+ " (declare (in) vec2 p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 p0)\n" -+ " (declare (in) vec3 p1))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 p0)\n" -+ " (declare (in) vec4 p1))\n" -+ " ()))\n" -+ "(function dot\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x)\n" -+ " (declare (in) float y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ()))\n" -+ "(function cross\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ()))\n" -+ "(function normalize\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function faceforward\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float Nref))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 Nref))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 Nref))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 Nref))\n" -+ " ()))\n" -+ "(function reflect\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float N))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 N))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 N))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 N))\n" -+ " ()))\n" -+ "(function refract\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float I)\n" -+ " (declare (in) float N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 I)\n" -+ " (declare (in) vec2 N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 I)\n" -+ " (declare (in) vec3 N)\n" -+ " (declare (in) float eta))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 I)\n" -+ " (declare (in) vec4 N)\n" -+ " (declare (in) float eta))\n" -+ " ()))\n" -+ "(function matrixCompMult\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 x)\n" -+ " (declare (in) mat2 y))\n" -+ " ())\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 x)\n" -+ " (declare (in) mat3 y))\n" -+ " ())\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 x)\n" -+ " (declare (in) mat4 y))\n" -+ " ())\n" -+ " (signature mat2x3\n" -+ " (parameters\n" -+ " (declare (in) mat2x3 x)\n" -+ " (declare (in) mat2x3 y))\n" -+ " ())\n" -+ " (signature mat2x4\n" -+ " (parameters\n" -+ " (declare (in) mat2x4 x)\n" -+ " (declare (in) mat2x4 y))\n" -+ " ())\n" -+ " (signature mat3x2\n" -+ " (parameters\n" -+ " (declare (in) mat3x2 x)\n" -+ " (declare (in) mat3x2 y))\n" -+ " ())\n" -+ " (signature mat3x4\n" -+ " (parameters\n" -+ " (declare (in) mat3x4 x)\n" -+ " (declare (in) mat3x4 y))\n" -+ " ())\n" -+ " (signature mat4x2\n" -+ " (parameters\n" -+ " (declare (in) mat4x2 x)\n" -+ " (declare (in) mat4x2 y))\n" -+ " ())\n" -+ " (signature mat4x3\n" -+ " (parameters\n" -+ " (declare (in) mat4x3 x)\n" -+ " (declare (in) mat4x3 y))\n" -+ " ()))\n" -+ "(function outerProduct\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) vec2 c)\n" -+ " (declare (in) vec2 r))\n" -+ " ())\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) vec3 c)\n" -+ " (declare (in) vec3 r))\n" -+ " ())\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) vec4 c)\n" -+ " (declare (in) vec4 r))\n" -+ " ())\n" -+ " (signature mat2x3\n" -+ " (parameters\n" -+ " (declare (in) vec3 c)\n" -+ " (declare (in) vec2 r))\n" -+ " ())\n" -+ " (signature mat3x2\n" -+ " (parameters\n" -+ " (declare (in) vec2 c)\n" -+ " (declare (in) vec3 r))\n" -+ " ())\n" -+ " (signature mat2x4\n" -+ " (parameters\n" -+ " (declare (in) vec4 c)\n" -+ " (declare (in) vec2 r))\n" -+ " ())\n" -+ " (signature mat4x2\n" -+ " (parameters\n" -+ " (declare (in) vec2 c)\n" -+ " (declare (in) vec4 r))\n" -+ " ())\n" -+ " (signature mat3x4\n" -+ " (parameters\n" -+ " (declare (in) vec4 c)\n" -+ " (declare (in) vec3 r))\n" -+ " ())\n" -+ " (signature mat4x3\n" -+ " (parameters\n" -+ " (declare (in) vec3 c)\n" -+ " (declare (in) vec4 r))\n" -+ " ()))\n" -+ "(function transpose\n" -+ " (signature mat2\n" -+ " (parameters\n" -+ " (declare (in) mat2 m))\n" -+ " ())\n" -+ " (signature mat3\n" -+ " (parameters\n" -+ " (declare (in) mat3 m))\n" -+ " ())\n" -+ " (signature mat4\n" -+ " (parameters\n" -+ " (declare (in) mat4 m))\n" -+ " ())\n" -+ " (signature mat2x3\n" -+ " (parameters\n" -+ " (declare (in) mat3x2 m))\n" -+ " ())\n" -+ " (signature mat3x2\n" -+ " (parameters\n" -+ " (declare (in) mat2x3 m))\n" -+ " ())\n" -+ " (signature mat2x4\n" -+ " (parameters\n" -+ " (declare (in) mat4x2 m))\n" -+ " ())\n" -+ " (signature mat4x2\n" -+ " (parameters\n" -+ " (declare (in) mat2x4 m))\n" -+ " ())\n" -+ " (signature mat3x4\n" -+ " (parameters\n" -+ " (declare (in) mat4x3 m))\n" -+ " ())\n" -+ " (signature mat4x3\n" -+ " (parameters\n" -+ " (declare (in) mat3x4 m))\n" -+ " ()))\n" -+ "(function lessThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function lessThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function greaterThan\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function greaterThanEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ()))\n" -+ "(function equal\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x)\n" -+ " (declare (in) bvec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x)\n" -+ " (declare (in) bvec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x)\n" -+ " (declare (in) bvec4 y))\n" -+ " ()))\n" -+ "(function notEqual\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x)\n" -+ " (declare (in) vec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x)\n" -+ " (declare (in) vec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x)\n" -+ " (declare (in) vec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 x)\n" -+ " (declare (in) ivec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 x)\n" -+ " (declare (in) ivec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 x)\n" -+ " (declare (in) ivec4 y))\n" -+ " ())\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x)\n" -+ " (declare (in) bvec2 y))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x)\n" -+ " (declare (in) bvec3 y))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x)\n" -+ " (declare (in) bvec4 y))\n" -+ " ()))\n" -+ "(function any\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function all\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bool\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function not\n" -+ " (signature bvec2\n" -+ " (parameters\n" -+ " (declare (in) bvec2 x))\n" -+ " ())\n" -+ " (signature bvec3\n" -+ " (parameters\n" -+ " (declare (in) bvec3 x))\n" -+ " ())\n" -+ " (signature bvec4\n" -+ " (parameters\n" -+ " (declare (in) bvec4 x))\n" -+ " ()))\n" -+ "(function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord))\n" -+ " ()))\n" -+ "(function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function noise1\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function noise2\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function noise3\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ()))\n" -+ "(function noise4\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) float x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec2 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec3 x))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 x))\n" -+ " ())))" -+; -+static const char *functions_for_120_glsl [] = { -+ builtin_abs, -+ builtin_acos, -+ builtin_all, -+ builtin_any, -+ builtin_asin, -+ builtin_atan, -+ builtin_ceil, -+ builtin_clamp, -+ builtin_cos, -+ builtin_cross, -+ builtin_degrees, -+ builtin_distance, -+ builtin_dot, -+ builtin_equal, -+ builtin_exp, -+ builtin_exp2, -+ builtin_faceforward, -+ builtin_floor, -+ builtin_fract, -+ builtin_greaterThan, -+ builtin_greaterThanEqual, -+ builtin_inversesqrt, -+ builtin_length, -+ builtin_lessThan, -+ builtin_lessThanEqual, -+ builtin_log, -+ builtin_log2, -+ builtin_matrixCompMult, -+ builtin_max, -+ builtin_min, -+ builtin_mix, -+ builtin_mod, -+ builtin_noise1, -+ builtin_noise2, -+ builtin_noise3, -+ builtin_noise4, -+ builtin_normalize, -+ builtin_not, -+ builtin_notEqual, -+ builtin_outerProduct, -+ builtin_pow, -+ builtin_radians, -+ builtin_reflect, -+ builtin_refract, -+ builtin_shadow1D, -+ builtin_shadow1DProj, -+ builtin_shadow2D, -+ builtin_shadow2DProj, -+ builtin_sign, -+ builtin_sin, -+ builtin_smoothstep, -+ builtin_sqrt, -+ builtin_step, -+ builtin_tan, -+ builtin_texture1D, -+ builtin_texture1DProj, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_texture3D, -+ builtin_texture3DProj, -+ builtin_textureCube, -+ builtin_transpose, -+}; -+static const char prototypes_for_120_vert[] = -+ "(\n" -+ "(function ftransform\n" -+ " (signature vec4\n" -+ " (parameters)\n" -+ " ()))\n" -+ "(function texture1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function textureCubeLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())))" -+; -+static const char *functions_for_120_vert [] = { -+ builtin_ftransform, -+ builtin_shadow1DLod, -+ builtin_shadow1DProjLod, -+ builtin_shadow2DLod, -+ builtin_shadow2DProjLod, -+ builtin_texture1DLod, -+ builtin_texture1DProjLod, -+ builtin_texture2DLod, -+ builtin_texture2DProjLod, -+ builtin_texture3DLod, -+ builtin_texture3DProjLod, -+ builtin_textureCubeLod, -+}; -+static const char prototypes_for_130_frag[] = -+ "(\n" -+ "(function texture\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) samplerCubeShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow samp)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureProjOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow s)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow s)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function dFdx\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function dFdy\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function fwidth\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ())))" -+; -+static const char *functions_for_130_frag [] = { -+ builtin_dFdx, -+ builtin_dFdy, -+ builtin_fwidth, -+ builtin_shadow1D, -+ builtin_shadow1DProj, -+ builtin_shadow2D, -+ builtin_shadow2DProj, -+ builtin_texture, -+ builtin_texture1D, -+ builtin_texture1DProj, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_texture3D, -+ builtin_texture3DProj, -+ builtin_textureCube, -+ builtin_textureOffset, -+ builtin_textureProj, -+ builtin_textureProjOffset, -+}; -+static const char prototypes_for_130_glsl[] = -+{'(', -+'(','f','u','n','c','t','i','o','n',' ','r','a','d','i','a','n','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','d','e','g','r','e','e','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','p','o','w',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','e','x','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','o','g',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','e','x','p','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','o','g','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','s','e','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','b','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','i','g','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','f','l','o','o','r',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','r','u','n','c',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d','E','v','e','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','e','i','l',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','o','d','f',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','f','l','o','a','t',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','2',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','3',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','4',' ','i',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','a','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','l','a','m','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','i','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','o','o','l',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','a',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','m','o','o','t','h','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','s','n','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','s','i','n','f',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','e','n','g','t','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','d','i','s','t','a','n','c','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','1',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','d','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','r','o','s','s',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','r','m','a','l','i','z','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','f','a','c','e','f','o','r','w','a','r','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N','r','e','f',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','e','f','l','e','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','e','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','a','t','r','i','x','C','o','m','p','M','u','l','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','o','u','t','e','r','P','r','o','d','u','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','r','a','n','s','p','o','s','e',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','m',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','e','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','t','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','n','y',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','l','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','S','i','z','e',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','1',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','2',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','3',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','4',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',')'} ; -+static const char *functions_for_130_glsl [] = { -+ builtin_abs, -+ builtin_acos, -+ builtin_acosh, -+ builtin_all, -+ builtin_any, -+ builtin_asin, -+ builtin_asinh, -+ builtin_atan, -+ builtin_atanh, -+ builtin_ceil, -+ builtin_clamp, -+ builtin_cos, -+ builtin_cosh, -+ builtin_cross, -+ builtin_degrees, -+ builtin_distance, -+ builtin_dot, -+ builtin_equal, -+ builtin_exp, -+ builtin_exp2, -+ builtin_faceforward, -+ builtin_floor, -+ builtin_fract, -+ builtin_greaterThan, -+ builtin_greaterThanEqual, -+ builtin_inversesqrt, -+ builtin_isinf, -+ builtin_isnan, -+ builtin_length, -+ builtin_lessThan, -+ builtin_lessThanEqual, -+ builtin_log, -+ builtin_log2, -+ builtin_matrixCompMult, -+ builtin_max, -+ builtin_min, -+ builtin_mix, -+ builtin_mod, -+ builtin_modf, -+ builtin_noise1, -+ builtin_noise2, -+ builtin_noise3, -+ builtin_noise4, -+ builtin_normalize, -+ builtin_not, -+ builtin_notEqual, -+ builtin_outerProduct, -+ builtin_pow, -+ builtin_radians, -+ builtin_reflect, -+ builtin_refract, -+ builtin_round, -+ builtin_roundEven, -+ builtin_shadow1D, -+ builtin_shadow1DLod, -+ builtin_shadow1DProj, -+ builtin_shadow1DProjLod, -+ builtin_shadow2D, -+ builtin_shadow2DLod, -+ builtin_shadow2DProj, -+ builtin_shadow2DProjLod, -+ builtin_sign, -+ builtin_sin, -+ builtin_sinh, -+ builtin_smoothstep, -+ builtin_sqrt, -+ builtin_step, -+ builtin_tan, -+ builtin_tanh, -+ builtin_texelFetch, -+ builtin_texelFetchOffset, -+ builtin_texture, -+ builtin_texture1D, -+ builtin_texture1DLod, -+ builtin_texture1DProj, -+ builtin_texture1DProjLod, -+ builtin_texture2D, -+ builtin_texture2DLod, -+ builtin_texture2DProj, -+ builtin_texture2DProjLod, -+ builtin_texture3D, -+ builtin_texture3DLod, -+ builtin_texture3DProj, -+ builtin_texture3DProjLod, -+ builtin_textureCube, -+ builtin_textureCubeLod, -+ builtin_textureGrad, -+ builtin_textureGradOffset, -+ builtin_textureLod, -+ builtin_textureLodOffset, -+ builtin_textureOffset, -+ builtin_textureProj, -+ builtin_textureProjGrad, -+ builtin_textureProjGradOffset, -+ builtin_textureProjLod, -+ builtin_textureProjLodOffset, -+ builtin_textureProjOffset, -+ builtin_textureSize, -+ builtin_transpose, -+ builtin_trunc, -+}; -+static const char prototypes_for_130_vert[] = -+ "(\n" -+ "(function ftransform\n" -+ " (signature vec4\n" -+ " (parameters)\n" -+ " ())))" -+; -+static const char *functions_for_130_vert [] = { -+ builtin_ftransform, -+}; -+static const char prototypes_for_140_frag[] = -+ "(\n" -+ "(function texture\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isamplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usamplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) samplerCubeShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1DArray sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2DArray sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow samp)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureProjOffset\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) isampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) usampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec3 offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow s)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) int offset)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow s)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) ivec2 offset)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function textureCube\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function dFdx\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function dFdy\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function fwidth\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ())))" -+; -+static const char *functions_for_140_frag [] = { -+ builtin_dFdx, -+ builtin_dFdy, -+ builtin_fwidth, -+ builtin_shadow1D, -+ builtin_shadow1DProj, -+ builtin_shadow2D, -+ builtin_shadow2DProj, -+ builtin_texture, -+ builtin_texture1D, -+ builtin_texture1DProj, -+ builtin_texture2D, -+ builtin_texture2DProj, -+ builtin_texture3D, -+ builtin_texture3DProj, -+ builtin_textureCube, -+ builtin_textureOffset, -+ builtin_textureProj, -+ builtin_textureProjOffset, -+}; -+static const char prototypes_for_140_glsl[] = -+{'(', -+'(','f','u','n','c','t','i','o','n',' ','r','a','d','i','a','n','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','d','e','g','r','e','e','s',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','d','e','g','r','e','e','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r','a','d','i','a','n','s',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a','n','g','l','e',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a','n','g','l','e',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y','_','o','v','e','r','_','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','s','i','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','c','o','s','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','t','a','n','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','p','o','w',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','e','x','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','o','g',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','e','x','p','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','o','g','2',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','s','e','s','q','r','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','b','s',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','i','g','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','f','l','o','o','r',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','r','u','n','c',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','o','u','n','d','E','v','e','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','e','i','l',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','o','d','f',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','f','l','o','a','t',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','2',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','3',' ','i',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','o','u','t',')',' ','v','e','c','4',' ','i',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','i','n',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','a','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','l','a','m','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','i','n','V','a','l',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','i','n','t',' ','m','a','x','V','a','l',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','i','x',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','o','o','l',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','a',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','m','o','o','t','h','s','t','e','p',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','d','g','e','1',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','s','n','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','s','i','n','f',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','e','n','g','t','h',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','d','i','s','t','a','n','c','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','p','1',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','0',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','p','1',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','d','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','c','r','o','s','s',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','r','m','a','l','i','z','e',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','f','a','c','e','f','o','r','w','a','r','d',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N','r','e','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N','r','e','f',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','e','f','l','e','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','r','e','f','r','a','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','I',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','N',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','e','t','a',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','m','a','t','r','i','x','C','o','m','p','M','u','l','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','o','u','t','e','r','P','r','o','d','u','c','t',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','r',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','r','a','n','s','p','o','s','e',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2','x','4',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3','x','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4','x','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4','x','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3','x','4',' ','m',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','i','n','v','e','r','s','e',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','2',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','3',' ','m',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','m','a','t','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','m','a','t','4',' ','m',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','l','e','s','s','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','g','r','e','a','t','e','r','T','h','a','n','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','e','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','t','E','q','u','a','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','v','e','c','4',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','n','y',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','a','l','l',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','o','o','l',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','t',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','b','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','b','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','S','i','z','e',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','n','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','B','u','f','f','e','r',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','e','l','F','e','t','c','h','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','L','o','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f','s','e','t',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','A','r','r','a','y',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','A','r','r','a','y','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','P','d','y',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','P','d','y',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','P','r','o','j','G','r','a','d','O','f','f','s','e','t',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','1','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','2','D','R','e','c','t',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','R','e','c','t','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','i','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','u','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','u','s','a','m','p','l','e','r','3','D',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','3',' ','o','f','f',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','n','t',' ','o',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','P',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','x',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','d','y',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','i','v','e','c','2',' ','o',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','3','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','3','D',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','t','e','x','t','u','r','e','C','u','b','e','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','C','u','b','e',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','1','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','1','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','s','h','a','d','o','w','2','D','P','r','o','j','L','o','d',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','s','a','m','p','l','e','r','2','D','S','h','a','d','o','w',' ','s','a','m','p','l','e','r',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','c','o','o','r','d',')',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','l','o','d',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','1',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','f','l','o','a','t',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','2',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','2',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','3',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','3',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')', -+'(','f','u','n','c','t','i','o','n',' ','n','o','i','s','e','4',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','f','l','o','a','t',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','2',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','3',' ','x',')',')',' ','(',')',')',' ','(','s','i','g','n','a','t','u','r','e',' ','v','e','c','4',' ','(','p','a','r','a','m','e','t','e','r','s',' ','(','d','e','c','l','a','r','e',' ','(','i','n',')',' ','v','e','c','4',' ','x',')',')',' ','(',')',')',')',')'} ; -+static const char *functions_for_140_glsl [] = { -+ builtin_abs, -+ builtin_acos, -+ builtin_acosh, -+ builtin_all, -+ builtin_any, -+ builtin_asin, -+ builtin_asinh, -+ builtin_atan, -+ builtin_atanh, -+ builtin_ceil, -+ builtin_clamp, -+ builtin_cos, -+ builtin_cosh, -+ builtin_cross, -+ builtin_degrees, -+ builtin_distance, -+ builtin_dot, -+ builtin_equal, -+ builtin_exp, -+ builtin_exp2, -+ builtin_faceforward, -+ builtin_floor, -+ builtin_fract, -+ builtin_greaterThan, -+ builtin_greaterThanEqual, -+ builtin_inverse, -+ builtin_inversesqrt, -+ builtin_isinf, -+ builtin_isnan, -+ builtin_length, -+ builtin_lessThan, -+ builtin_lessThanEqual, -+ builtin_log, -+ builtin_log2, -+ builtin_matrixCompMult, -+ builtin_max, -+ builtin_min, -+ builtin_mix, -+ builtin_mod, -+ builtin_modf, -+ builtin_noise1, -+ builtin_noise2, -+ builtin_noise3, -+ builtin_noise4, -+ builtin_normalize, -+ builtin_not, -+ builtin_notEqual, -+ builtin_outerProduct, -+ builtin_pow, -+ builtin_radians, -+ builtin_reflect, -+ builtin_refract, -+ builtin_round, -+ builtin_roundEven, -+ builtin_shadow1D, -+ builtin_shadow1DLod, -+ builtin_shadow1DProj, -+ builtin_shadow1DProjLod, -+ builtin_shadow2D, -+ builtin_shadow2DLod, -+ builtin_shadow2DProj, -+ builtin_shadow2DProjLod, -+ builtin_sign, -+ builtin_sin, -+ builtin_sinh, -+ builtin_smoothstep, -+ builtin_sqrt, -+ builtin_step, -+ builtin_tan, -+ builtin_tanh, -+ builtin_texelFetch, -+ builtin_texelFetchOffset, -+ builtin_texture, -+ builtin_texture1D, -+ builtin_texture1DLod, -+ builtin_texture1DProj, -+ builtin_texture1DProjLod, -+ builtin_texture2D, -+ builtin_texture2DLod, -+ builtin_texture2DProj, -+ builtin_texture2DProjLod, -+ builtin_texture3D, -+ builtin_texture3DLod, -+ builtin_texture3DProj, -+ builtin_texture3DProjLod, -+ builtin_textureCube, -+ builtin_textureCubeLod, -+ builtin_textureGrad, -+ builtin_textureGradOffset, -+ builtin_textureLod, -+ builtin_textureLodOffset, -+ builtin_textureOffset, -+ builtin_textureProj, -+ builtin_textureProjGrad, -+ builtin_textureProjGradOffset, -+ builtin_textureProjLod, -+ builtin_textureProjLodOffset, -+ builtin_textureProjOffset, -+ builtin_textureSize, -+ builtin_transpose, -+ builtin_trunc, -+}; -+static const char prototypes_for_ARB_shader_bit_encoding_glsl[] = -+ "(\n" -+ "(function floatBitsToInt\n" -+ " (signature int\n" -+ " (parameters\n" -+ " (declare (in) float value))\n" -+ " ())\n" -+ " (signature ivec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 value))\n" -+ " ())\n" -+ " (signature ivec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 value))\n" -+ " ())\n" -+ " (signature ivec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 value))\n" -+ " ()))\n" -+ "(function floatBitsToUint\n" -+ " (signature uint\n" -+ " (parameters\n" -+ " (declare (in) float value))\n" -+ " ())\n" -+ " (signature uvec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 value))\n" -+ " ())\n" -+ " (signature uvec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 value))\n" -+ " ())\n" -+ " (signature uvec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 value))\n" -+ " ()))\n" -+ "(function intBitsToFloat\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) int value))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) ivec2 value))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) ivec3 value))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) ivec4 value))\n" -+ " ()))\n" -+ "(function uintBitsToFloat\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) uint value))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) uvec2 value))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) uvec3 value))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) uvec4 value))\n" -+ " ())))" -+; -+static const char *functions_for_ARB_shader_bit_encoding_glsl [] = { -+ builtin_floatBitsToInt, -+ builtin_floatBitsToUint, -+ builtin_intBitsToFloat, -+ builtin_uintBitsToFloat, -+}; -+static const char prototypes_for_ARB_shader_texture_lod_frag[] = -+ "(\n" -+ "(function texture1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function textureCubeLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())))" -+; -+static const char *functions_for_ARB_shader_texture_lod_frag [] = { -+ builtin_shadow1DLod, -+ builtin_shadow1DProjLod, -+ builtin_shadow2DLod, -+ builtin_shadow2DProjLod, -+ builtin_texture1DLod, -+ builtin_texture1DProjLod, -+ builtin_texture2DLod, -+ builtin_texture2DProjLod, -+ builtin_texture3DLod, -+ builtin_texture3DProjLod, -+ builtin_textureCubeLod, -+}; -+static const char prototypes_for_ARB_shader_texture_lod_glsl[] = -+ "(\n" -+ "(function texture1DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) float P)\n" -+ " (declare (in) float dPdx)\n" -+ " (declare (in) float dPdy))\n" -+ " ()))\n" -+ "(function texture1DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) float dPdx)\n" -+ " (declare (in) float dPdy))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float dPdx)\n" -+ " (declare (in) float dPdy))\n" -+ " ()))\n" -+ "(function texture2DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function texture2DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function texture3DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) vec3 dPdx)\n" -+ " (declare (in) vec3 dPdy))\n" -+ " ()))\n" -+ "(function texture3DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) vec3 dPdx)\n" -+ " (declare (in) vec3 dPdy))\n" -+ " ()))\n" -+ "(function textureCubeGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerCube sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) vec3 dPdx)\n" -+ " (declare (in) vec3 dPdy))\n" -+ " ()))\n" -+ "(function shadow1DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) float dPdx)\n" -+ " (declare (in) float dPdy))\n" -+ " ()))\n" -+ "(function shadow1DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) float dPdx)\n" -+ " (declare (in) float dPdy))\n" -+ " ()))\n" -+ "(function shadow2DGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function shadow2DProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function texture2DRectGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler)\n" -+ " (declare (in) vec2 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function texture2DRectProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function shadow2DRectGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler)\n" -+ " (declare (in) vec3 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ()))\n" -+ "(function shadow2DRectProjGradARB\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler)\n" -+ " (declare (in) vec4 P)\n" -+ " (declare (in) vec2 dPdx)\n" -+ " (declare (in) vec2 dPdy))\n" -+ " ())))" -+; -+static const char *functions_for_ARB_shader_texture_lod_glsl [] = { -+ builtin_shadow1DGradARB, -+ builtin_shadow1DProjGradARB, -+ builtin_shadow2DGradARB, -+ builtin_shadow2DProjGradARB, -+ builtin_shadow2DRectGradARB, -+ builtin_shadow2DRectProjGradARB, -+ builtin_texture1DGradARB, -+ builtin_texture1DProjGradARB, -+ builtin_texture2DGradARB, -+ builtin_texture2DProjGradARB, -+ builtin_texture2DRectGradARB, -+ builtin_texture2DRectProjGradARB, -+ builtin_texture3DGradARB, -+ builtin_texture3DProjGradARB, -+ builtin_textureCubeGradARB, -+}; -+static const char prototypes_for_ARB_texture_rectangle_glsl[] = -+ "(\n" -+ "(function texture2DRect\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ()))\n" -+ "(function texture2DRectProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRect sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function shadow2DRect\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow2DRectProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DRectShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ())))" -+; -+static const char *functions_for_ARB_texture_rectangle_glsl [] = { -+ builtin_shadow2DRect, -+ builtin_shadow2DRectProj, -+ builtin_texture2DRect, -+ builtin_texture2DRectProj, -+}; -+static const char prototypes_for_EXT_texture_array_frag[] = -+ "(\n" -+ "(function texture1DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture2DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow1DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function shadow2DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ())))" -+; -+static const char *functions_for_EXT_texture_array_frag [] = { -+ builtin_shadow1DArray, -+ builtin_shadow2DArray, -+ builtin_texture1DArray, -+ builtin_texture2DArray, -+}; -+static const char prototypes_for_EXT_texture_array_vert[] = -+ "(\n" -+ "(function texture1DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ()))\n" -+ "(function texture1DArrayLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArray sampler)\n" -+ " (declare (in) vec2 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture2DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function texture2DArrayLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArray sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow1DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function shadow1DArrayLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler1DArrayShadow sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function shadow2DArray\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler2DArrayShadow sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ())))" -+; -+static const char *functions_for_EXT_texture_array_vert [] = { -+ builtin_shadow1DArray, -+ builtin_shadow1DArrayLod, -+ builtin_shadow2DArray, -+ builtin_texture1DArray, -+ builtin_texture1DArrayLod, -+ builtin_texture2DArray, -+ builtin_texture2DArrayLod, -+}; -+static const char prototypes_for_OES_EGL_image_external_glsl[] = -+ "(\n" -+ "(function texture2D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerExternalOES sampler)\n" -+ " (declare (in) vec2 coord))\n" -+ " ()))\n" -+ "(function texture2DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerExternalOES sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) samplerExternalOES sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ())))" -+; -+static const char *functions_for_OES_EGL_image_external_glsl [] = { -+ builtin_texture2D, -+ builtin_texture2DProj, -+}; -+static const char prototypes_for_OES_standard_derivatives_frag[] = -+ "(\n" -+ "(function dFdx\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function dFdy\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ()))\n" -+ "(function fwidth\n" -+ " (signature float\n" -+ " (parameters\n" -+ " (declare (in) float p))\n" -+ " ())\n" -+ " (signature vec2\n" -+ " (parameters\n" -+ " (declare (in) vec2 p))\n" -+ " ())\n" -+ " (signature vec3\n" -+ " (parameters\n" -+ " (declare (in) vec3 p))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) vec4 p))\n" -+ " ())))" -+; -+static const char *functions_for_OES_standard_derivatives_frag [] = { -+ builtin_dFdx, -+ builtin_dFdy, -+ builtin_fwidth, -+}; -+static const char prototypes_for_OES_texture_3D_frag[] = -+ "(\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float bias))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ())\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float bias))\n" -+ " ())))" -+; -+static const char *functions_for_OES_texture_3D_frag [] = { -+ builtin_texture3D, -+ builtin_texture3DProj, -+}; -+static const char prototypes_for_OES_texture_3D_vert[] = -+ "(\n" -+ "(function texture3D\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord))\n" -+ " ()))\n" -+ "(function texture3DProj\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord))\n" -+ " ()))\n" -+ "(function texture3DLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec3 coord)\n" -+ " (declare (in) float lod))\n" -+ " ()))\n" -+ "(function texture3DProjLod\n" -+ " (signature vec4\n" -+ " (parameters\n" -+ " (declare (in) sampler3D sampler)\n" -+ " (declare (in) vec4 coord)\n" -+ " (declare (in) float lod))\n" -+ " ())))" -+; -+static const char *functions_for_OES_texture_3D_vert [] = { -+ builtin_texture3D, -+ builtin_texture3DLod, -+ builtin_texture3DProj, -+ builtin_texture3DProjLod, -+}; -+static gl_shader *builtin_profiles[24]; -+ -+static void *builtin_mem_ctx = NULL; -+ -+void -+_mesa_glsl_release_functions(void) -+{ -+ ralloc_free(builtin_mem_ctx); -+ builtin_mem_ctx = NULL; -+ memset(builtin_profiles, 0, sizeof(builtin_profiles)); -+} -+ -+static void -+_mesa_read_profile(struct _mesa_glsl_parse_state *state, -+ int profile_index, -+ const char *prototypes, -+ const char **functions, -+ int count) -+{ -+ gl_shader *sh = builtin_profiles[profile_index]; -+ -+ if (sh == NULL) { -+ sh = read_builtins(GL_VERTEX_SHADER, prototypes, functions, count); -+ ralloc_steal(builtin_mem_ctx, sh); -+ builtin_profiles[profile_index] = sh; -+ } -+ -+ state->builtins_to_link[state->num_builtins_to_link] = sh; -+ state->num_builtins_to_link++; -+} -+ -+void -+_mesa_glsl_initialize_functions(struct _mesa_glsl_parse_state *state) -+{ -+ /* If we've already initialized the built-ins, bail early. */ -+ if (state->num_builtins_to_link > 0) -+ return; -+ -+ if (builtin_mem_ctx == NULL) { -+ builtin_mem_ctx = ralloc_context(NULL); // "GLSL built-in functions" -+ memset(&builtin_profiles, 0, sizeof(builtin_profiles)); -+ } -+ -+ if (state->target == fragment_shader && state->language_version == 100) { -+ _mesa_read_profile(state, 0, -+ prototypes_for_100_frag, -+ functions_for_100_frag, -+ Elements(functions_for_100_frag)); -+ } -+ -+ if (state->language_version == 100) { -+ _mesa_read_profile(state, 1, -+ prototypes_for_100_glsl, -+ functions_for_100_glsl, -+ Elements(functions_for_100_glsl)); -+ } -+ -+ if (state->target == vertex_shader && state->language_version == 100) { -+ _mesa_read_profile(state, 2, -+ prototypes_for_100_vert, -+ functions_for_100_vert, -+ Elements(functions_for_100_vert)); -+ } -+ -+ if (state->target == fragment_shader && state->language_version == 110) { -+ _mesa_read_profile(state, 3, -+ prototypes_for_110_frag, -+ functions_for_110_frag, -+ Elements(functions_for_110_frag)); -+ } -+ -+ if (state->language_version == 110) { -+ _mesa_read_profile(state, 4, -+ prototypes_for_110_glsl, -+ functions_for_110_glsl, -+ Elements(functions_for_110_glsl)); -+ } -+ -+ if (state->target == vertex_shader && state->language_version == 110) { -+ _mesa_read_profile(state, 5, -+ prototypes_for_110_vert, -+ functions_for_110_vert, -+ Elements(functions_for_110_vert)); -+ } -+ -+ if (state->target == fragment_shader && state->language_version == 120) { -+ _mesa_read_profile(state, 6, -+ prototypes_for_120_frag, -+ functions_for_120_frag, -+ Elements(functions_for_120_frag)); -+ } -+ -+ if (state->language_version == 120) { -+ _mesa_read_profile(state, 7, -+ prototypes_for_120_glsl, -+ functions_for_120_glsl, -+ Elements(functions_for_120_glsl)); -+ } -+ -+ if (state->target == vertex_shader && state->language_version == 120) { -+ _mesa_read_profile(state, 8, -+ prototypes_for_120_vert, -+ functions_for_120_vert, -+ Elements(functions_for_120_vert)); -+ } -+ -+ if (state->target == fragment_shader && state->language_version == 130) { -+ _mesa_read_profile(state, 9, -+ prototypes_for_130_frag, -+ functions_for_130_frag, -+ Elements(functions_for_130_frag)); -+ } -+ -+ if (state->language_version == 130) { -+ _mesa_read_profile(state, 10, -+ prototypes_for_130_glsl, -+ functions_for_130_glsl, -+ Elements(functions_for_130_glsl)); -+ } -+ -+ if (state->target == vertex_shader && state->language_version == 130) { -+ _mesa_read_profile(state, 11, -+ prototypes_for_130_vert, -+ functions_for_130_vert, -+ Elements(functions_for_130_vert)); -+ } -+ -+ if (state->target == fragment_shader && state->language_version == 140) { -+ _mesa_read_profile(state, 12, -+ prototypes_for_140_frag, -+ functions_for_140_frag, -+ Elements(functions_for_140_frag)); -+ } -+ -+ if (state->language_version == 140) { -+ _mesa_read_profile(state, 13, -+ prototypes_for_140_glsl, -+ functions_for_140_glsl, -+ Elements(functions_for_140_glsl)); -+ } -+ -+ if (state->ARB_shader_bit_encoding_enable) { -+ _mesa_read_profile(state, 14, -+ prototypes_for_ARB_shader_bit_encoding_glsl, -+ functions_for_ARB_shader_bit_encoding_glsl, -+ Elements(functions_for_ARB_shader_bit_encoding_glsl)); -+ } -+ -+ if (state->target == fragment_shader && state->ARB_shader_texture_lod_enable) { -+ _mesa_read_profile(state, 15, -+ prototypes_for_ARB_shader_texture_lod_frag, -+ functions_for_ARB_shader_texture_lod_frag, -+ Elements(functions_for_ARB_shader_texture_lod_frag)); -+ } -+ -+ if (state->ARB_shader_texture_lod_enable) { -+ _mesa_read_profile(state, 16, -+ prototypes_for_ARB_shader_texture_lod_glsl, -+ functions_for_ARB_shader_texture_lod_glsl, -+ Elements(functions_for_ARB_shader_texture_lod_glsl)); -+ } -+ -+ if (state->ARB_texture_rectangle_enable) { -+ _mesa_read_profile(state, 17, -+ prototypes_for_ARB_texture_rectangle_glsl, -+ functions_for_ARB_texture_rectangle_glsl, -+ Elements(functions_for_ARB_texture_rectangle_glsl)); -+ } -+ -+ if (state->target == fragment_shader && state->EXT_texture_array_enable) { -+ _mesa_read_profile(state, 18, -+ prototypes_for_EXT_texture_array_frag, -+ functions_for_EXT_texture_array_frag, -+ Elements(functions_for_EXT_texture_array_frag)); -+ } -+ -+ if (state->target == vertex_shader && state->EXT_texture_array_enable) { -+ _mesa_read_profile(state, 19, -+ prototypes_for_EXT_texture_array_vert, -+ functions_for_EXT_texture_array_vert, -+ Elements(functions_for_EXT_texture_array_vert)); -+ } -+ -+ if (state->OES_EGL_image_external_enable) { -+ _mesa_read_profile(state, 20, -+ prototypes_for_OES_EGL_image_external_glsl, -+ functions_for_OES_EGL_image_external_glsl, -+ Elements(functions_for_OES_EGL_image_external_glsl)); -+ } -+ -+ if (state->target == fragment_shader && state->OES_standard_derivatives_enable) { -+ _mesa_read_profile(state, 21, -+ prototypes_for_OES_standard_derivatives_frag, -+ functions_for_OES_standard_derivatives_frag, -+ Elements(functions_for_OES_standard_derivatives_frag)); -+ } -+ -+ if (state->target == fragment_shader && state->OES_texture_3D_enable) { -+ _mesa_read_profile(state, 22, -+ prototypes_for_OES_texture_3D_frag, -+ functions_for_OES_texture_3D_frag, -+ Elements(functions_for_OES_texture_3D_frag)); -+ } -+ -+ if (state->target == vertex_shader && state->OES_texture_3D_enable) { -+ _mesa_read_profile(state, 23, -+ prototypes_for_OES_texture_3D_vert, -+ functions_for_OES_texture_3D_vert, -+ Elements(functions_for_OES_texture_3D_vert)); -+ } -+ -+} --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-Revert-llvmpipe-fix-overflow-bug-in-total-texture-si.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-Revert-llvmpipe-fix-overflow-bug-in-total-texture-si.patch deleted file mode 100644 index e44251126c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-Revert-llvmpipe-fix-overflow-bug-in-total-texture-si.patch +++ /dev/null @@ -1,57 +0,0 @@ -From fa40a7a1b8bf8399365fe250902d76aa5b6b3b83 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Mon, 26 Nov 2012 11:38:43 -0800 -Subject: [PATCH] Revert "llvmpipe: fix overflow bug in total texture size - computation" - -This reverts commit 0bcad0295543425f5ec4b44bfe6e600794e9c166. ---- - src/gallium/drivers/llvmpipe/lp_texture.c | 18 ++---------------- - 1 files changed, 2 insertions(+), 16 deletions(-) - -diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c -index b4ea94c..a138621 100644 ---- a/src/gallium/drivers/llvmpipe/lp_texture.c -+++ b/src/gallium/drivers/llvmpipe/lp_texture.c -@@ -113,7 +113,7 @@ llvmpipe_texture_layout(struct llvmpipe_screen *screen, - unsigned width = pt->width0; - unsigned height = pt->height0; - unsigned depth = pt->depth0; -- uint64_t total_size = 0; -+ size_t total_size = 0; - - assert(LP_MAX_TEXTURE_2D_LEVELS <= LP_MAX_TEXTURE_LEVELS); - assert(LP_MAX_TEXTURE_3D_LEVELS <= LP_MAX_TEXTURE_LEVELS); -@@ -140,12 +140,6 @@ llvmpipe_texture_layout(struct llvmpipe_screen *screen, - - lpr->row_stride[level] = align(nblocksx * block_size, 16); - -- /* if row_stride * height > LP_MAX_TEXTURE_SIZE */ -- if (lpr->row_stride[level] > LP_MAX_TEXTURE_SIZE / nblocksy) { -- /* image too large */ -- goto fail; -- } -- - lpr->img_stride[level] = lpr->row_stride[level] * nblocksy; - } - -@@ -178,15 +172,7 @@ llvmpipe_texture_layout(struct llvmpipe_screen *screen, - } - } - -- /* if img_stride * num_slices_faces > LP_MAX_TEXTURE_SIZE */ -- if (lpr->img_stride[level] > -- LP_MAX_TEXTURE_SIZE / lpr->num_slices_faces[level]) { -- /* volume too large */ -- goto fail; -- } -- -- total_size += (uint64_t) lpr->num_slices_faces[level] -- * (uint64_t) lpr->img_stride[level]; -+ total_size += lpr->num_slices_faces[level] * lpr->img_stride[level]; - if (total_size > LP_MAX_TEXTURE_SIZE) { - goto fail; - } --- -1.7.7.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-builtin_function.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-builtin_function.patch deleted file mode 100644 index 46687a8117..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-builtin_function.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/src/glsl/Makefile.am b/src/glsl/Makefile.am -index 1ecc003..6cdc264 100644 ---- a/src/glsl/Makefile.am -+++ b/src/glsl/Makefile.am -@@ -92,9 +92,6 @@ glsl_parser.cc glsl_parser.h: glsl_parser.yy - BUILT_SOURCES = glsl_parser.h builtin_function.cpp - CLEANFILES = glsl_lexer.cc glsl_parser.cc $(BUILT_SOURCES) - --builtin_function.cpp: $(srcdir)/builtins/profiles/* $(srcdir)/builtins/ir/* $(srcdir)/builtins/glsl/* $(srcdir)/builtins/tools/generate_builtins.py $(srcdir)/builtins/tools/texture_builtins.py builtin_compiler$(EXEEXT) -- $(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/builtins/tools/generate_builtins.py ./builtin_compiler > builtin_function.cpp || rm -f builtin_function.cpp -- - glcpp/libglcpp.la: - cd glcpp ; $(MAKE) $(AM_MAKEFLAGS) - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-cross-compile.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-cross-compile.patch deleted file mode 100644 index 502065d12c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-cross-compile.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index b55473f..45528ed 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -404,15 +404,6 @@ MESA_ASM_SOURCES="" - GLAPI_ASM_SOURCES="" - AC_MSG_CHECKING([whether to enable assembly]) - test "x$enable_asm" = xno && AC_MSG_RESULT([no]) --# disable if cross compiling on x86/x86_64 since we must run gen_matypes --if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then -- case "$host_cpu" in -- i?86 | x86_64) -- enable_asm=no -- AC_MSG_RESULT([no, cross compiling]) -- ;; -- esac --fi - # check for supported arches - if test "x$enable_asm" = xyes; then - case "$host_cpu" in diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-fail-compile-on-bad-uniform-access.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-fail-compile-on-bad-uniform-access.patch deleted file mode 100644 index 34932c278a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-fail-compile-on-bad-uniform-access.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp -index 56cb447..a86c9bd 100644 ---- a/src/mesa/drivers/dri/i965/brw_fs.cpp -+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp -@@ -1121,7 +1121,12 @@ fs_visitor::remove_dead_constants() - if (inst->src[i].file != UNIFORM) - continue; - -- assert(constant_nr < (int)c->prog_data.nr_params); -+ if (constant_nr >= (int)c->prog_data.nr_params) { -+ ralloc_free(this->params_remap); -+ this->params_remap = NULL; -+ fail("accessed non-existent uniform"); -+ return false; -+ } - - /* For now, set this to non-negative. We'll give it the - * actual new number in a moment, in order to keep the -diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp -index 2dd212a..0593a1f 100644 ---- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp -+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp -@@ -2270,6 +2270,8 @@ fs_visitor::fs_visitor(struct brw_wm_compile *c, struct gl_shader_program *prog, - this->virtual_grf_use = NULL; - this->live_intervals_valid = false; - -+ this->params_remap = NULL; -+ - this->force_uncompressed_stack = 0; - this->force_sechalf_stack = 0; - } diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-force_s3tc_enable.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-force_s3tc_enable.patch deleted file mode 100644 index 93c65a74f4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-force_s3tc_enable.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/src/gallium/auxiliary/util/u_format_s3tc.c b/src/gallium/auxiliary/util/u_format_s3tc.c -index 4a9dc22..31a6c19 100644 ---- a/src/gallium/auxiliary/util/u_format_s3tc.c -+++ b/src/gallium/auxiliary/util/u_format_s3tc.c -@@ -120,8 +120,8 @@ util_format_s3tc_init(void) - - library = util_dl_open(DXTN_LIBNAME); - if (!library) { -- if ((force_s3tc_enable = getenv("force_s3tc_enable")) && -- !strcmp(force_s3tc_enable, "true")) { -+ if (1 /*(force_s3tc_enable = getenv("force_s3tc_enable")) && -+ !strcmp(force_s3tc_enable, "true")*/) { - debug_printf("couldn't open " DXTN_LIBNAME ", enabling DXTn due to " - "force_s3tc_enable=true environment variable\n"); - util_format_s3tc_enabled = TRUE; diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-glx-Check-that-swap_buffers_reply-is-non-NULL-before.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-glx-Check-that-swap_buffers_reply-is-non-NULL-before.patch deleted file mode 100644 index eec2f84ce3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-glx-Check-that-swap_buffers_reply-is-non-NULL-before.patch +++ /dev/null @@ -1,36 +0,0 @@ -From ce8c34e6efc671b1f8e19346cc9e199b972772db Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Mon, 28 Jan 2013 14:05:42 -0800 -Subject: [PATCH] glx: Check that swap_buffers_reply is non-NULL before using - it - -Check that the return value from xcb_dri2_swap_buffers_reply is -non-NULL before accessing the struct members. - -Change-Id: Ia289c04ed1237326873e23c093675faa8708b557 ---- - src/glx/dri2_glx.c | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c -index 12b3026..141af1c 100644 ---- a/src/glx/dri2_glx.c -+++ b/src/glx/dri2_glx.c -@@ -787,9 +787,11 @@ dri2SwapBuffers(__GLXDRIdrawable *pdraw, int64_t target_msc, int64_t divisor, - XSync(pdraw->psc->dpy, False); - swap_buffers_reply = - xcb_dri2_swap_buffers_reply(c, swap_buffers_cookie, NULL); -- ret = merge_counter(swap_buffers_reply->swap_hi, -- swap_buffers_reply->swap_lo); -- free(swap_buffers_reply); -+ if (swap_buffers_reply) { -+ ret = merge_counter(swap_buffers_reply->swap_hi, -+ swap_buffers_reply->swap_lo); -+ free(swap_buffers_reply); -+ } - } - - if (psc->show_fps) { --- -1.8.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-i965-Allow-the-case-where-multiple-flush-types-are-e.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-i965-Allow-the-case-where-multiple-flush-types-are-e.patch deleted file mode 100644 index 561a1e9119..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-i965-Allow-the-case-where-multiple-flush-types-are-e.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 3ce50709aac9199e4d9fa8f1c42af29776eced64 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Tue, 17 Apr 2012 18:16:18 -0700 -Subject: [PATCH 1/2] i965: Allow the case where multiple flush types are - enqueued. - -This happens when the miptree is allocated with intel_miptree_alloc_hiz -which adds NEED_HIZ_RESOLVE and then NEED_DEPTH_RESOLVE is added to it. ---- - src/mesa/drivers/dri/intel/intel_resolve_map.c | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/mesa/drivers/dri/intel/intel_resolve_map.c b/src/mesa/drivers/dri/intel/intel_resolve_map.c -index 04b5c94..cb4b838 100644 ---- a/src/mesa/drivers/dri/intel/intel_resolve_map.c -+++ b/src/mesa/drivers/dri/intel/intel_resolve_map.c -@@ -42,8 +42,8 @@ intel_resolve_map_set(struct intel_resolve_map *head, - struct intel_resolve_map *prev = head; - - while (*tail) { -- if ((*tail)->level == level && (*tail)->layer == layer) { -- (*tail)->need = need; -+ if ((*tail)->level == level && (*tail)->layer == layer -+ && (*tail)->need == need ) { - return; - } - prev = *tail; diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-i965-Make-sure-we-do-render-between-two-hiz-flushes.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-i965-Make-sure-we-do-render-between-two-hiz-flushes.patch deleted file mode 100644 index 590b13b4c3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-i965-Make-sure-we-do-render-between-two-hiz-flushes.patch +++ /dev/null @@ -1,81 +0,0 @@ -From 1547bb37e97c8d7069d5be4e8b9b0d34ac28f7e1 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?St=C3=A9phane=20Marchesin?= -Date: Tue, 17 Apr 2012 18:17:35 -0700 -Subject: [PATCH 2/2] i965: Make sure we do render between two hiz flushes - -Hiz flushes touch the URB allocation, which doesn't work if you don't -draw in between. This includes on startup where the GPU hasn't been -used and we lockup. To avoid this situation make sure that some -primitives get rendered before every hiz flush. ---- - src/mesa/drivers/dri/i965/brw_context.c | 1 + - src/mesa/drivers/dri/i965/brw_context.h | 1 + - src/mesa/drivers/dri/i965/brw_draw.c | 12 +++++++++--- - 3 files changed, 11 insertions(+), 3 deletions(-) - -diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c -index 1448965..9ba1742 100644 ---- a/src/mesa/drivers/dri/i965/brw_context.c -+++ b/src/mesa/drivers/dri/i965/brw_context.c -@@ -332,6 +332,7 @@ brwCreateContext(int api, - brw->urb.max_gs_entries = 256; - } - brw->urb.gen6_gs_previously_active = false; -+ brw->urb.prims_since_last_flush = 0; - } else if (intel->gen == 5) { - brw->urb.size = 1024; - brw->max_vs_threads = 72; -diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h -index 9232a72..d13e85c 100644 ---- a/src/mesa/drivers/dri/i965/brw_context.h -+++ b/src/mesa/drivers/dri/i965/brw_context.h -@@ -871,6 +871,7 @@ struct brw_context - * URB space for the GS. - */ - bool gen6_gs_previously_active; -+ int prims_since_last_flush; - } urb; - - -diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c -index 323310a..211d68d 100644 ---- a/src/mesa/drivers/dri/i965/brw_draw.c -+++ b/src/mesa/drivers/dri/i965/brw_draw.c -@@ -293,10 +293,14 @@ static void brw_merge_inputs( struct brw_context *brw, - * Resolve the depth buffer's HiZ buffer and resolve the depth buffer of each - * enabled depth texture. - * -+ * We don't resolve the depth buffer's HiZ if no primitives have been drawn -+ * since the last flush. This avoids a case where we lockup the GPU on boot -+ * when this is the first thing we do. -+ * - * (In the future, this will also perform MSAA resolves). - */ - static void --brw_predraw_resolve_buffers(struct brw_context *brw) -+brw_predraw_resolve_buffers(struct brw_context *brw, int nr_prims) - { - struct gl_context *ctx = &brw->intel.ctx; - struct intel_context *intel = &brw->intel; -@@ -305,9 +309,11 @@ brw_predraw_resolve_buffers(struct brw_context *brw) - - /* Resolve the depth buffer's HiZ buffer. */ - depth_irb = intel_get_renderbuffer(ctx->DrawBuffer, BUFFER_DEPTH); -- if (depth_irb) -+ if (depth_irb && brw->urb.prims_since_last_flush > 0 ) - intel_renderbuffer_resolve_hiz(intel, depth_irb); - -+ brw->urb.prims_since_last_flush = nr_prims; -+ - /* Resolve depth buffer of each enabled depth texture. */ - for (int i = 0; i < BRW_MAX_TEX_UNIT; i++) { - if (!ctx->Texture.Unit[i]._ReallyEnabled) -@@ -438,7 +444,7 @@ static bool brw_try_draw_prims( struct gl_context *ctx, - * and finalizing textures but before setting up any hardware state for - * this draw call. - */ -- brw_predraw_resolve_buffers(brw); -+ brw_predraw_resolve_buffers(brw, nr_prims); - - /* This workaround has to happen outside of brw_state_upload() because it - * may flush the batchbuffer for a blit, affecting the state flags. diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-intel-disable-msaa.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-intel-disable-msaa.patch deleted file mode 100644 index 69c18151e0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-intel-disable-msaa.patch +++ /dev/null @@ -1,46 +0,0 @@ -The original patch disabled MSAA because it caused a corruption issue: -http://code.google.com/p/chromium-os/issues/detail?id=32528 - -MSAA now seems to work, but it causes GPU lockups, so is still disabled: -http://code.google.com/p/chromium-os/issues/detail?id=36508 - -diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c -index 10a8c7f..4d7c4d6 100644 ---- a/src/mesa/drivers/dri/intel/intel_fbo.c -+++ b/src/mesa/drivers/dri/intel/intel_fbo.c -@@ -185,34 +185,7 @@ intel_unmap_renderbuffer(struct gl_context *ctx, - unsigned - intel_quantize_num_samples(struct intel_screen *intel, unsigned num_samples) - { -- switch (intel->gen) { -- case 6: -- /* Gen6 supports only 4x multisampling. */ -- if (num_samples > 0) -- return 4; -- else -- return 0; -- case 7: -- /* Gen7 supports 4x and 8x multisampling. */ -- if (num_samples > 4) -- return 8; -- else if (num_samples > 0) -- return 4; -- else -- return 0; -- return 0; -- default: -- /* MSAA unsupported. However, a careful reading of -- * EXT_framebuffer_multisample reveals that we need to permit -- * num_samples to be 1 (since num_samples is permitted to be as high as -- * GL_MAX_SAMPLES, and GL_MAX_SAMPLES must be at least 1). Since -- * platforms before Gen6 don't support MSAA, this is safe, because -- * multisampling won't happen anyhow. -- */ -- if (num_samples > 0) -- return 1; -- return 0; -- } -+ return 0; - } - - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-uniform-array-bounds-check.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-uniform-array-bounds-check.patch deleted file mode 100644 index 4553103936..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/9.0-uniform-array-bounds-check.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff --git a/src/mesa/main/uniform_query.cpp b/src/mesa/main/uniform_query.cpp -index bddb8f9..66a2399 100644 ---- a/src/mesa/main/uniform_query.cpp -+++ b/src/mesa/main/uniform_query.cpp -@@ -237,11 +237,14 @@ validate_uniform_parameters(struct gl_context *ctx, - return false; - } - -- /* This case should be impossible. The implication is that a call like -- * glGetUniformLocation(prog, "foo[8]") was successful but "foo" is not an -- * array. -+ /* If the uniform is an array, check that array_index is in bounds. -+ * If not an array, check that array_index is zero. -+ * array_index is unsigned so no need to check for less than zero. - */ -- if (*array_index != 0 && shProg->UniformStorage[*loc].array_elements == 0) { -+ unsigned limit = shProg->UniformStorage[*loc].array_elements; -+ if (limit == 0) -+ limit = 1; -+ if (*array_index >= limit) { - _mesa_error(ctx, GL_INVALID_OPERATION, "%s(location=%d)", - caller, location); - return false; -@@ -728,9 +731,6 @@ _mesa_uniform(struct gl_context *ctx, struct gl_shader_program *shProg, - * will have already generated an error. - */ - if (uni->array_elements != 0) { -- if (offset >= uni->array_elements) -- return; -- - count = MIN2(count, (int) (uni->array_elements - offset)); - } - -@@ -885,9 +885,6 @@ _mesa_uniform_matrix(struct gl_context *ctx, struct gl_shader_program *shProg, - * will have already generated an error. - */ - if (uni->array_elements != 0) { -- if (offset >= uni->array_elements) -- return; -- - count = MIN2(count, (int) (uni->array_elements - offset)); - } - -@@ -1021,10 +1018,13 @@ _mesa_get_uniform_location(struct gl_context *ctx, - if (!found) - return GL_INVALID_INDEX; - -- /* Since array_elements is 0 for non-arrays, this causes look-ups of 'a[0]' -- * to (correctly) fail if 'a' is not an array. -+ /* If the uniform is an array, fail if the index is out of bounds. -+ * (A negative index is caught above.) This also fails if the uniform -+ * is not an array, but the user is trying to index it, because -+ * array_elements is zero and offset >= 0. - */ -- if (array_lookup && shProg->UniformStorage[location].array_elements == 0) { -+ if (array_lookup -+ && offset >= shProg->UniformStorage[location].array_elements) { - return GL_INVALID_INDEX; - } - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/chromeos-version.sh b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/chromeos-version.sh deleted file mode 100755 index 41b1869333..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/chromeos-version.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -# -# This script is given one argument: the base of the source directory of -# the package, and it prints a string on stdout with the numerical version -# number for said repo. - -echo 'MESA_MAJOR.MESA_MINOR.MESA_PATCH' | \ - cpp -include "$1"/src/mesa/main/version.h | \ - sed -n '${s: ::g;p}' diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/drirc b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/drirc deleted file mode 100644 index bea0c73e77..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/drirc +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/eselect-mesa.conf.7.9 b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/eselect-mesa.conf.7.9 deleted file mode 100644 index 70d9a075ed..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/eselect-mesa.conf.7.9 +++ /dev/null @@ -1,39 +0,0 @@ -# mesa classic/gallium implementations in this release - -# Syntax description: -# * MESA_IMPLEMENTATIONS contains a space-delimited list of switchable -# classic/gallium implementations. -# * MESA_DRIVERS is an associative array, for each member "foo" of -# MESA_IMPLEMENTATIONS it contains the following elements: -# foo,description - Human-readable description of the driver -# foo,classicdriver - Filename of the classic driver -# foo,galliumdriver - Filename of the gallium driver -# foo,default - which of classic or gallium is chosen by default - -MESA_IMPLEMENTATIONS="i915 i965 r300 r600 sw" -declare -A MESA_DRIVERS || die "MESA_DRIVERS already in environment and not associative." - -MESA_DRIVERS[i915,description]="i915 (Intel 915, 945)" -MESA_DRIVERS[i915,classicdriver]="i915_dri.so" -MESA_DRIVERS[i915,galliumdriver]="i915g_dri.so" -MESA_DRIVERS[i915,default]="classic" - -MESA_DRIVERS[i965,description]="i965 (Intel 965, G/Q3x, G/Q4x)" -MESA_DRIVERS[i965,classicdriver]="i965_dri.so" -MESA_DRIVERS[i965,galliumdriver]="i965g_dri.so" -MESA_DRIVERS[i965,default]="classic" - -MESA_DRIVERS[r300,description]="r300 (Radeon R300-R500)" -MESA_DRIVERS[r300,classicdriver]="r300_dri.so" -MESA_DRIVERS[r300,galliumdriver]="r300g_dri.so" -MESA_DRIVERS[r300,default]="gallium" - -MESA_DRIVERS[r600,description]="r600 (Radeon R600-R700, Evergreen)" -MESA_DRIVERS[r600,classicdriver]="r600_dri.so" -MESA_DRIVERS[r600,galliumdriver]="r600g_dri.so" -MESA_DRIVERS[r600,default]="classic" - -MESA_DRIVERS[sw,description]="sw (Software renderer)" -MESA_DRIVERS[sw,classicdriver]="swrast_dri.so" -MESA_DRIVERS[sw,galliumdriver]="swrastg_dri.so" -MESA_DRIVERS[sw,default]="gallium" diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/lib/libGL.la b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/lib/libGL.la deleted file mode 100644 index 5c3f25a3bd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/lib/libGL.la +++ /dev/null @@ -1,32 +0,0 @@ -# libGL.la - a libtool library file -# Generated by ltmain.sh - GNU libtool 1.4 (1.920 2001/04/24 23:26:18) -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='libGL.so.1' - -# Names of this library. -library_names='libGL.so.1.2 libGL.so.1 libGL.so' - -# The name of the static archive. -old_library='' - -# Libraries that this one depends upon. -dependency_libs='-lSM -lICE -lXmu -lXt -lXext -lXi -lX11 -ldl -lpthread' - -# Version information for libGL. -current=3 -age=2 -revision=0 - -# Is this an already installed library? -installed=yes - -# Files to dlopen/dlpreopen -dlopen='' -dlpreopen='' - -# Directory that this library needs to be installed in: -libdir='/usr/${libdir}' diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/lib/libGLU.la b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/lib/libGLU.la deleted file mode 100644 index a87a7ad6d5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/files/lib/libGLU.la +++ /dev/null @@ -1,32 +0,0 @@ -# libGLU.la - a libtool library file -# Generated by ltmain.sh - GNU libtool 1.4 (1.920 2001/04/24 23:26:18) -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='libGLU.so.1' - -# Names of this library. -library_names='libGLU.so.1.3 libGLU.so.1 libGLU.so' - -# The name of the static archive. -old_library='' - -# Libraries that this one depends upon. -dependency_libs='-lGL -lSM -lICE -lXmu -lXt -lXext -lXi -lX11 -ldl -lpthread -lstdc++' - -# Version information for libGLU. -current=4 -age=3 -revision=0 - -# Is this an already installed library? -installed=yes - -# Files to dlopen/dlpreopen -dlopen='' -dlpreopen='' - -# Directory that this library needs to be installed in: -libdir='/usr/lib' diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/mesa-9.0-r5.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/mesa-9.0-r5.ebuild deleted file mode 100644 index b930180da6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/mesa-9.0-r5.ebuild +++ /dev/null @@ -1,303 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $ - -EAPI=4 - -CROS_WORKON_COMMIT="fc2cf1403860ebc8769dfa36cf7dcdebc1baa305" -CROS_WORKON_TREE="9fac2f50764a0dd604f1d1c3458343cedc871d1d" -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa" -CROS_WORKON_PROJECT="chromiumos/third_party/mesa" -CROS_WORKON_LOCALNAME="../third_party/mesa" - -if [[ ${PV} = 9999* ]]; then - GIT_ECLASS="git-2" - EXPERIMENTAL="true" -fi - -inherit base autotools multilib flag-o-matic python toolchain-funcs ${GIT_ECLASS} cros-workon - -OPENGL_DIR="xorg-x11" - -MY_PN="${PN/m/M}" -MY_P="${MY_PN}-${PV/_/-}" -MY_SRC_P="${MY_PN}Lib-${PV/_/-}" - -FOLDER="${PV/_rc*/}" -[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC" - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="http://mesa3d.sourceforge.net/" - -#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2" -if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then - SRC_URI="${SRC_PATCHES}" -else - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_SRC_P}.tar.bz2 - ${SRC_PATCHES}" -fi - -# Most of the code is MIT/X11. -# ralloc is LGPL-3 -# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0 -LICENSE="MIT LGPL-3 SGI-B-2.0" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 x86-fbsd" - -INTEL_CARDS="intel" -RADEON_CARDS="radeon" -VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} mach64 mga nouveau r128 savage sis vmware tdfx via" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - +classic debug egl +gallium -gbm gles1 gles2 +llvm motif +nptl pic selinux shared-glapi kernel_FreeBSD" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.31" -# keep correct libdrm and dri2proto dep -# keep blocks in rdepend for binpkg -RDEPEND=" - !=x11-proto/dri2proto-2.2 - >=x11-proto/glproto-1.4.11 - dev-libs/expat - gbm? ( sys-fs/udev ) - x11-libs/libICE - >=x11-libs/libX11-1.3.99.901 - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXi - x11-libs/libXmu - x11-libs/libXxf86vm - motif? ( x11-libs/openmotif ) - ${LIBDRM_DEPSTRING} -" - -DEPEND="${RDEPEND} - =dev-lang/python-2* - dev-libs/libxml2 - dev-util/pkgconfig - x11-misc/makedepend - x11-proto/inputproto - >=x11-proto/xextproto-7.0.99.1 - x11-proto/xf86driproto - x11-proto/xf86vidmodeproto - !arm? ( sys-devel/llvm ) -" - -S="${WORKDIR}/${MY_P}" - -# It is slow without texrels, if someone wants slow -# mesa without texrels +pic use is worth the shot -QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*" -QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*" - -# Think about: ggi, fbcon, no-X configs - -pkg_setup() { - # workaround toc-issue wrt #386545 - use ppc64 && append-flags -mminimal-toc -} - -src_prepare() { - # apply patches - if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then - EPATCH_FORCE="yes" \ - EPATCH_SOURCE="${WORKDIR}/patches" \ - EPATCH_SUFFIX="patch" \ - epatch - fi - # FreeBSD 6.* doesn't have posix_memalign(). - if [[ ${CHOST} == *-freebsd6.* ]]; then - sed -i \ - -e "s/-DHAVE_POSIX_MEMALIGN//" \ - configure.ac || die - fi - - epatch "${FILESDIR}"/9.0-cross-compile.patch - epatch "${FILESDIR}"/7.11-mesa-st-no-flush-front.patch - epatch "${FILESDIR}"/7.11-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch - epatch "${FILESDIR}"/7.11_p2-pkgconfig.patch - epatch "${FILESDIR}"/9.0-builtin_function.patch - epatch "${FILESDIR}"/9.0-force_s3tc_enable.patch - epatch "${FILESDIR}"/9.0-i965-Allow-the-case-where-multiple-flush-types-are-e.patch - epatch "${FILESDIR}"/9.0-i965-Make-sure-we-do-render-between-two-hiz-flushes.patch - epatch "${FILESDIR}"/9.0-Add-builtin-function-cpp.patch - epatch "${FILESDIR}"/8.1-dead-code-local-hack.patch - epatch "${FILESDIR}"/8.1-array-overflow.patch - epatch "${FILESDIR}"/8.1-lastlevel.patch - epatch "${FILESDIR}"/8.1-disable-guardband.patch - epatch "${FILESDIR}"/9.0-uniform-array-bounds-check.patch - epatch "${FILESDIR}"/9.0-Revert-llvmpipe-fix-overflow-bug-in-total-texture-si.patch - epatch "${FILESDIR}"/9.0-fail-compile-on-bad-uniform-access.patch - epatch "${FILESDIR}"/9.0-glx-Check-that-swap_buffers_reply-is-non-NULL-before.patch - - base_src_prepare - - eautoreconf -} - -src_configure() { - tc-getPROG PKG_CONFIG pkg-config - - if use !gallium && use !classic; then - ewarn "You enabled neither classic nor gallium USE flags. No hardware" - ewarn "drivers will be built." - fi - - if use classic; then - # Configurable DRI drivers - # Intel code - driver_enable video_cards_intel i915 i965 - - # Nouveau code - driver_enable video_cards_nouveau nouveau - - # ATI code - driver_enable video_cards_radeon radeon r200 - fi - - if use gallium; then - # Configurable gallium drivers - gallium_driver_enable swrast - - # Intel code - gallium_driver_enable video_cards_intel i915 - - # Nouveau code - gallium_driver_enable video_cards_nouveau nouveau - - # ATI code - gallium_driver_enable video_cards_radeon r300 r600 - fi - - export LLVM_CONFIG=${SYSROOT}/usr/bin/llvm-config-host - - # --with-driver=dri|xlib|osmesa || do we need osmesa? - econf \ - --disable-option-checking \ - --with-driver=dri \ - --disable-glu \ - --disable-glut \ - --without-demos \ - --enable-texture-float \ - --enable-xcb \ - $(use_enable llvm llvm-gallium) \ - $(use_enable egl) \ - $(use_enable gbm) \ - $(use_enable gles1) \ - $(use_enable gles2) \ - $(use_enable shared-glapi) \ - $(use_enable gallium) \ - $(use_enable debug) \ - $(use_enable nptl glx-tls) \ - $(use_enable motif glw) \ - $(use_enable motif) \ - $(use_enable !pic asm) \ - --with-dri-drivers=${DRI_DRIVERS} \ - --with-gallium-drivers=${GALLIUM_DRIVERS} \ - $(use gbm && echo "--with-egl-platforms=drm") -} - -src_install() { - base_src_install - - # Save the glsl-compiler for later use - if ! tc-is-cross-compiler; then - dobin "${S}"/src/glsl/glsl_compiler || die - fi - # Remove redundant headers - # GLU and GLUT - rm -f "${D}"/usr/include/GL/glu*.h || die "Removing GLU and GLUT headers failed." - # Glew includes - rm -f "${D}"/usr/include/GL/{glew,glxew,wglew}.h \ - || die "Removing glew includes failed." - - # Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib - # because user can eselect desired GL provider. - ebegin "Moving libGL and friends for dynamic switching" - dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include} - local x - for x in "${D}"/usr/$(get_libdir)/libGL.{la,a,so*}; do - if [ -f ${x} -o -L ${x} ]; then - mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \ - || die "Failed to move ${x}" - fi - done - for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do - if [ -f ${x} -o -L ${x} ]; then - mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \ - || die "Failed to move ${x}" - fi - done - eend $? - - dodir /usr/$(get_libdir)/dri - insinto "/usr/$(get_libdir)/dri/" - insopts -m0755 - # install the gallium drivers we use - local gallium_drivers_files=( i915_dri.so nouveau_dri.so r300_dri.so r600_dri.so swrast_dri.so ) - for x in ${gallium_drivers_files[@]}; do - if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then - doins "${S}/$(get_libdir)/gallium/${x}" - fi - done - - # install classic drivers we use - local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so ) - for x in ${classic_drivers_files[@]}; do - if [ -f "${S}/$(get_libdir)/${x}" ]; then - doins "${S}/$(get_libdir)/${x}" - fi - done - - # Set driconf option to enable S3TC hardware decompression - insinto "/etc/" - doins "${FILESDIR}"/drirc -} - -pkg_postinst() { - # Switch to the xorg implementation. - echo - eselect opengl set --use-old ${OPENGL_DIR} -} - -# $1 - VIDEO_CARDS flag -# other args - names of DRI drivers to enable -driver_enable() { - case $# in - # for enabling unconditionally - 1) - DRI_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - DRI_DRIVERS+=",${i}" - done - fi - ;; - esac -} - -# $1 - VIDEO_CARDS flag -# other args - names of DRI drivers to enable -gallium_driver_enable() { - case $# in - # for enabling unconditionally - 1) - GALLIUM_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - GALLIUM_DRIVERS+=",${i}" - done - fi - ;; - esac -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/mesa-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/mesa-9999.ebuild deleted file mode 100644 index eb73378ae2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/mesa/mesa-9999.ebuild +++ /dev/null @@ -1,301 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $ - -EAPI=4 - -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa" -CROS_WORKON_PROJECT="chromiumos/third_party/mesa" -CROS_WORKON_LOCALNAME="../third_party/mesa" - -if [[ ${PV} = 9999* ]]; then - GIT_ECLASS="git-2" - EXPERIMENTAL="true" -fi - -inherit base autotools multilib flag-o-matic python toolchain-funcs ${GIT_ECLASS} cros-workon - -OPENGL_DIR="xorg-x11" - -MY_PN="${PN/m/M}" -MY_P="${MY_PN}-${PV/_/-}" -MY_SRC_P="${MY_PN}Lib-${PV/_/-}" - -FOLDER="${PV/_rc*/}" -[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC" - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="http://mesa3d.sourceforge.net/" - -#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2" -if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then - SRC_URI="${SRC_PATCHES}" -else - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_SRC_P}.tar.bz2 - ${SRC_PATCHES}" -fi - -# Most of the code is MIT/X11. -# ralloc is LGPL-3 -# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0 -LICENSE="MIT LGPL-3 SGI-B-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" - -INTEL_CARDS="intel" -RADEON_CARDS="radeon" -VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} mach64 mga nouveau r128 savage sis vmware tdfx via" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - +classic debug egl +gallium -gbm gles1 gles2 +llvm motif +nptl pic selinux shared-glapi kernel_FreeBSD" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.31" -# keep correct libdrm and dri2proto dep -# keep blocks in rdepend for binpkg -RDEPEND=" - !=x11-proto/dri2proto-2.2 - >=x11-proto/glproto-1.4.11 - dev-libs/expat - gbm? ( sys-fs/udev ) - x11-libs/libICE - >=x11-libs/libX11-1.3.99.901 - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXi - x11-libs/libXmu - x11-libs/libXxf86vm - motif? ( x11-libs/openmotif ) - ${LIBDRM_DEPSTRING} -" - -DEPEND="${RDEPEND} - =dev-lang/python-2* - dev-libs/libxml2 - dev-util/pkgconfig - x11-misc/makedepend - x11-proto/inputproto - >=x11-proto/xextproto-7.0.99.1 - x11-proto/xf86driproto - x11-proto/xf86vidmodeproto - !arm? ( sys-devel/llvm ) -" - -S="${WORKDIR}/${MY_P}" - -# It is slow without texrels, if someone wants slow -# mesa without texrels +pic use is worth the shot -QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*" -QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*" - -# Think about: ggi, fbcon, no-X configs - -pkg_setup() { - # workaround toc-issue wrt #386545 - use ppc64 && append-flags -mminimal-toc -} - -src_prepare() { - # apply patches - if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then - EPATCH_FORCE="yes" \ - EPATCH_SOURCE="${WORKDIR}/patches" \ - EPATCH_SUFFIX="patch" \ - epatch - fi - # FreeBSD 6.* doesn't have posix_memalign(). - if [[ ${CHOST} == *-freebsd6.* ]]; then - sed -i \ - -e "s/-DHAVE_POSIX_MEMALIGN//" \ - configure.ac || die - fi - - epatch "${FILESDIR}"/9.0-cross-compile.patch - epatch "${FILESDIR}"/7.11-mesa-st-no-flush-front.patch - epatch "${FILESDIR}"/7.11-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch - epatch "${FILESDIR}"/7.11_p2-pkgconfig.patch - epatch "${FILESDIR}"/9.0-builtin_function.patch - epatch "${FILESDIR}"/9.0-force_s3tc_enable.patch - epatch "${FILESDIR}"/9.0-i965-Allow-the-case-where-multiple-flush-types-are-e.patch - epatch "${FILESDIR}"/9.0-i965-Make-sure-we-do-render-between-two-hiz-flushes.patch - epatch "${FILESDIR}"/9.0-Add-builtin-function-cpp.patch - epatch "${FILESDIR}"/8.1-dead-code-local-hack.patch - epatch "${FILESDIR}"/8.1-array-overflow.patch - epatch "${FILESDIR}"/8.1-lastlevel.patch - epatch "${FILESDIR}"/8.1-disable-guardband.patch - epatch "${FILESDIR}"/9.0-uniform-array-bounds-check.patch - epatch "${FILESDIR}"/9.0-Revert-llvmpipe-fix-overflow-bug-in-total-texture-si.patch - epatch "${FILESDIR}"/9.0-fail-compile-on-bad-uniform-access.patch - epatch "${FILESDIR}"/9.0-glx-Check-that-swap_buffers_reply-is-non-NULL-before.patch - - base_src_prepare - - eautoreconf -} - -src_configure() { - tc-getPROG PKG_CONFIG pkg-config - - if use !gallium && use !classic; then - ewarn "You enabled neither classic nor gallium USE flags. No hardware" - ewarn "drivers will be built." - fi - - if use classic; then - # Configurable DRI drivers - # Intel code - driver_enable video_cards_intel i915 i965 - - # Nouveau code - driver_enable video_cards_nouveau nouveau - - # ATI code - driver_enable video_cards_radeon radeon r200 - fi - - if use gallium; then - # Configurable gallium drivers - gallium_driver_enable swrast - - # Intel code - gallium_driver_enable video_cards_intel i915 - - # Nouveau code - gallium_driver_enable video_cards_nouveau nouveau - - # ATI code - gallium_driver_enable video_cards_radeon r300 r600 - fi - - export LLVM_CONFIG=${SYSROOT}/usr/bin/llvm-config-host - - # --with-driver=dri|xlib|osmesa || do we need osmesa? - econf \ - --disable-option-checking \ - --with-driver=dri \ - --disable-glu \ - --disable-glut \ - --without-demos \ - --enable-texture-float \ - --enable-xcb \ - $(use_enable llvm llvm-gallium) \ - $(use_enable egl) \ - $(use_enable gbm) \ - $(use_enable gles1) \ - $(use_enable gles2) \ - $(use_enable shared-glapi) \ - $(use_enable gallium) \ - $(use_enable debug) \ - $(use_enable nptl glx-tls) \ - $(use_enable motif glw) \ - $(use_enable motif) \ - $(use_enable !pic asm) \ - --with-dri-drivers=${DRI_DRIVERS} \ - --with-gallium-drivers=${GALLIUM_DRIVERS} \ - $(use gbm && echo "--with-egl-platforms=drm") -} - -src_install() { - base_src_install - - # Save the glsl-compiler for later use - if ! tc-is-cross-compiler; then - dobin "${S}"/src/glsl/glsl_compiler || die - fi - # Remove redundant headers - # GLU and GLUT - rm -f "${D}"/usr/include/GL/glu*.h || die "Removing GLU and GLUT headers failed." - # Glew includes - rm -f "${D}"/usr/include/GL/{glew,glxew,wglew}.h \ - || die "Removing glew includes failed." - - # Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib - # because user can eselect desired GL provider. - ebegin "Moving libGL and friends for dynamic switching" - dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include} - local x - for x in "${D}"/usr/$(get_libdir)/libGL.{la,a,so*}; do - if [ -f ${x} -o -L ${x} ]; then - mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \ - || die "Failed to move ${x}" - fi - done - for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do - if [ -f ${x} -o -L ${x} ]; then - mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \ - || die "Failed to move ${x}" - fi - done - eend $? - - dodir /usr/$(get_libdir)/dri - insinto "/usr/$(get_libdir)/dri/" - insopts -m0755 - # install the gallium drivers we use - local gallium_drivers_files=( i915_dri.so nouveau_dri.so r300_dri.so r600_dri.so swrast_dri.so ) - for x in ${gallium_drivers_files[@]}; do - if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then - doins "${S}/$(get_libdir)/gallium/${x}" - fi - done - - # install classic drivers we use - local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so ) - for x in ${classic_drivers_files[@]}; do - if [ -f "${S}/$(get_libdir)/${x}" ]; then - doins "${S}/$(get_libdir)/${x}" - fi - done - - # Set driconf option to enable S3TC hardware decompression - insinto "/etc/" - doins "${FILESDIR}"/drirc -} - -pkg_postinst() { - # Switch to the xorg implementation. - echo - eselect opengl set --use-old ${OPENGL_DIR} -} - -# $1 - VIDEO_CARDS flag -# other args - names of DRI drivers to enable -driver_enable() { - case $# in - # for enabling unconditionally - 1) - DRI_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - DRI_DRIVERS+=",${i}" - done - fi - ;; - esac -} - -# $1 - VIDEO_CARDS flag -# other args - names of DRI drivers to enable -gallium_driver_enable() { - case $# in - # for enabling unconditionally - 1) - GALLIUM_DRIVERS+=",$1" - ;; - *) - if use $1; then - shift - for i in $@; do - GALLIUM_DRIVERS+=",${i}" - done - fi - ;; - esac -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/Manifest b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/Manifest deleted file mode 100644 index 80753cd43c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST OpenCV-2.3.0.tar.bz2 42849210 SHA256 bcbfff0ff767f0cf2523707a307a5fd0db4853c19c3498f322c8c5839429940b SHA512 b20540a78278118d067e042a12b7bf049572dc8809753b03b7871cbb9d3074312b86c5fcd79873de5904bd926858dac603dea95bbfec6a2d5b0eabd8e23bd049 WHIRLPOOL eb10a733b209bb79f285a95ec8c8c32d41b158131abb7e88a6064aa883f70dac5a6e43c529822260b3612b576252a1706c84cda36fb46b0ca90987211bfed378 diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch deleted file mode 100644 index 7a794cd28a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch +++ /dev/null @@ -1,341 +0,0 @@ ---- OpenCV-2.3.0-0-vanilla/CMakeLists.txt -+++ OpenCV-2.3.0/CMakeLists.txt -@@ -14,7 +14,7 @@ - # Add these standard paths to the search paths for FIND_LIBRARY - # to find libraries from these locations first - if(UNIX) -- set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /lib /usr/lib) -+ set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /lib${LIB_SUFFIX} /usr/lib${LIB_SUFFIX}) - endif() - - -@@ -77,13 +77,13 @@ - # Build static or dynamic libs? - # Default: dynamic libraries - # ---------------------------------------------------------------------------- --set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)") -+OPTION(BUILD_SHARED_LIBS "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)" ON) - - # ---------------------------------------------------------------------------- - # Include debug info into debug libs? - # Default: yes - # ---------------------------------------------------------------------------- --set(BUILD_WITH_DEBUG_INFO ON CACHE BOOL "Include debug info into debug libs") -+OPTION(BUILD_WITH_DEBUG_INFO "Include debug info into debug libs" ON) - - # ---------------------------------------------------------------------------- - # Current version number: -@@ -285,20 +285,20 @@ - - # Build/install (or not) some apps: - # =================================================== --set(BUILD_EXAMPLES OFF CACHE BOOL "Build all examples") --set(INSTALL_C_EXAMPLES OFF CACHE BOOL "Install C examples") --set(INSTALL_PYTHON_EXAMPLES OFF CACHE BOOL "Install Python examples") -+option(BUILD_EXAMPLES "Build all examples" OFF) -+option(INSTALL_C_EXAMPLES "Install C examples" OFF) -+option(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF) - - # Build tests: - # =================================================== --set(BUILD_TESTS ON CACHE BOOL "Build tests") -+option(BUILD_TESTS "Build tests" ON) - - # Build 3rdparty libraries under unix - # =================================================== - if(WIN32) -- set(OPENCV_BUILD_3RDPARTY_LIBS TRUE CACHE BOOL "Build 3rd party libraries") -+ option(OPENCV_BUILD_3RDPARTY_LIBS "Build 3rd party libraries" TRUE) - else() -- set(OPENCV_BUILD_3RDPARTY_LIBS FALSE CACHE BOOL "Build 3rd party libraries") -+ option(OPENCV_BUILD_3RDPARTY_LIBS "Build 3rd party libraries" FALSE) - endif() - - include(OpenCVPCHSupport.cmake REQUIRED) -@@ -324,8 +324,8 @@ - #set(ENABLE_OPENMP ${DEFAULT_ENABLE_OPENMP} CACHE BOOL "") - - if(CMAKE_COMPILER_IS_GNUCXX) -- set(ENABLE_PROFILING OFF CACHE BOOL "Enable profiling in the GCC compiler (Add flags: -g -pg)") -- set(USE_OMIT_FRAME_POINTER ON CACHE BOOL "Enable -fomit-frame-pointer for GCC") -+ option(ENABLE_PROFILING "Enable profiling in the GCC compiler (Add flags: -g -pg)" OFF) -+ option(USE_OMIT_FRAME_POINTER "Enable -fomit-frame-pointer for GCC" ON) - - if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*|x86_64*) - set(X86_64 1) -@@ -341,58 +341,58 @@ - - if(X86 OR X86_64) - # enable everything, since the available set of instructions is checked at runtime -- set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math") -- set(ENABLE_SSE ON CACHE BOOL "Enable SSE instructions") -- set(ENABLE_SSE2 ON CACHE BOOL "Enable SSE2 instructions") -- set(ENABLE_SSE3 OFF CACHE BOOL "Enable SSE3 instructions") -- set(ENABLE_SSSE3 OFF CACHE BOOL "Enable SSSE3 instructions") -- set(ENABLE_SSE41 OFF CACHE BOOL "Enable SSE4.1 instructions") -- set(ENABLE_SSE42 OFF CACHE BOOL "Enable SSE4.2 instructions") -+ option(USE_FAST_MATH "Enable -ffast-math for GCC" ON) -+ option(ENABLE_SSE "Enable SSE instructions" ON) -+ option(ENABLE_SSE2 "Enable SSE2 instructions" ON) -+ option(ENABLE_SSE3 "Enable SSE3 instructions" OFF) -+ option(ENABLE_SSSE3 "Enable SSSE3 instructions" OFF) -+ option(ENABLE_SSE41 "Enable SSE4.1 instructions" OFF) -+ option(ENABLE_SSE42 "Enable SSE4.2 instructions" OFF) - endif() - endif() - - if(MSVC) -- set(ENABLE_SSE ON CACHE BOOL "Enable SSE instructions for MSVC") -- set(ENABLE_SSE2 ON CACHE BOOL "Enable SSE2 instructions for MSVC") -+ option(ENABLE_SSE "Enable SSE instructions for MSVC" ON) -+ option(ENABLE_SSE2 "Enable SSE2 instructions for MSVC" ON) - if(CMAKE_C_COMPILER MATCHES "icc") -- set(ENABLE_SSE3 OFF CACHE BOOL "Enable SSE3 instructions for ICC") -- set(ENABLE_SSE4_1 OFF CACHE BOOL "Enable SSE4.1 instructions for ICC") -+ option(ENABLE_SSE3 "Enable SSE3 instructions for ICC" OFF) -+ option(ENABLE_SSE4_1 "Enable SSE4.1 instructions for ICC" OFF) - endif() - endif() - - # allow fine grained control over which libraries not to link, even if - # they are available on the system - # ==================================================================== --set(WITH_PNG ON CACHE BOOL "Include PNG support") --set(WITH_JPEG ON CACHE BOOL "Include JPEG support") --set(WITH_JASPER ON CACHE BOOL "Include JPEG2K support") --set(WITH_TIFF ON CACHE BOOL "Include TIFF support") --set(WITH_OPENEXR ON CACHE BOOL "Include ILM support via OpenEXR") -+option(WITH_PNG "Include PNG support" ON) -+option(WITH_JPEG "Include JPEG support" ON) -+option(WITH_JASPER "Include JPEG2K support" ON) -+option(WITH_TIFF "Include TIFF support" ON) -+option(WITH_OPENEXR "Include ILM support via OpenEXR" ON) - - if(UNIX) -- set(WITH_FFMPEG ON CACHE BOOL "Include FFMPEG support") -+ option(WITH_FFMPEG "Include FFMPEG support" ON) - if(NOT APPLE) -- set(WITH_UNICAP OFF CACHE BOOL "Include Unicap support (GPL)") -- set(WITH_GTK ON CACHE BOOL "Include GTK support") -- set(WITH_GSTREAMER ON CACHE BOOL "Include Gstreamer support") -- set(WITH_V4L ON CACHE BOOL "Include Video 4 Linux support") -- set(WITH_XINE OFF CACHE BOOL "Include Xine support (GPL)") -+ option(WITH_UNICAP "Include Unicap support (GPL)" OFF) -+ option(WITH_GTK "Include GTK support" ON) -+ option(WITH_GSTREAMER "Include Gstreamer support" ON) -+ option(WITH_V4L "Include Video 4 Linux support" ON) -+ option(WITH_XINE "Include Xine support (GPL)" OFF) - endif() -- set(WITH_PVAPI ON CACHE BOOL "Include Prosilica GigE support") -- set(WITH_1394 ON CACHE BOOL "Include IEEE1394 support") -+ option(WITH_PVAPI "Include Prosilica GigE support" ON) -+ option(WITH_1394 "Include IEEE1394 support" ON) - endif() - - if(APPLE) -- set(WITH_CARBON OFF CACHE BOOL "Use Carbon for UI instead of Cocoa") -- set(WITH_QUICKTIME OFF CACHE BOOL "Use QuickTime for Video I/O insted of QTKit") -+ option(WITH_CARBON "Use Carbon for UI instead of Cocoa" OFF) -+ option(WITH_QUICKTIME "Use QuickTime for Video I/O insted of QTKit" OFF) - endif() - --set(WITH_TBB OFF CACHE BOOL "Include Intel TBB support") --set(WITH_IPP OFF CACHE BOOL "Include Intel IPP support") --set(WITH_EIGEN ON CACHE BOOL "Include Eigen2/Eigen3 support") --set(WITH_CUDA ON CACHE BOOL "Include NVidia Cuda Runtime support") -+option(WITH_TBB "Include TBB support" OFF) -+option(WITH_IPP "Include Intel IPP support" OFF) -+option(WITH_EIGEN "Include Eigen2/Eigen3 support" ON) -+option(WITH_CUDA "Include NVidia Cuda Runtime support" ON) - --set(WITH_OPENNI OFF CACHE BOOL "Include OpenNI support") -+option(WITH_OPENNI "Include OpenNI support" OFF) - - # =================================================== - # Macros that checks if module have been installed. -@@ -586,13 +586,13 @@ - include(OpenCVFindOpenEXR.cmake) - endif() - --set(BUILD_DOCS ON CACHE BOOL "Build OpenCV Documentation") -+option(BUILD_DOCS "Build OpenCV Documentation" ON) - - if(BUILD_DOCS) - include(OpenCVFindLATEX.cmake REQUIRED) - endif() - --set(BUILD_NEW_PYTHON_SUPPORT ON CACHE BOOL "Build with Python support") -+option(BUILD_NEW_PYTHON_SUPPORT "Build with Python support" ON) - - if (WIN32) - if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") -@@ -619,11 +619,11 @@ - - string(REGEX MATCH "[0-9].[0-9]" PYTHON_VERSION_MAJOR_MINOR "${PYTHON_VERSION_FULL}") - if(UNIX) -- set(PYTHON_PLUGIN_INSTALL_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv) -+ set(PYTHON_PLUGIN_INSTALL_PATH lib${LIB_SUFFIX}/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv) - if(APPLE) - set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages CACHE PATH "Where to install the python packages.") - else() #debian based assumed, install to the dist-packages. -- set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/dist-packages CACHE PATH "Where to install the python packages.") -+ set(PYTHON_PACKAGES_PATH lib${LIB_SUFFIX}/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages) - endif() - endif() - if(WIN32) -@@ -665,8 +665,8 @@ - #YV - ############################### QT ################################ - --set(WITH_QT OFF CACHE BOOL "Build with Qt Backend support") --set(WITH_QT_OPENGL OFF CACHE BOOL "Add OpenGL extension to Qt") -+option(WITH_QT "Build with Qt Backend support" OFF) -+option(WITH_QT_OPENGL "Add OpenGL extension to Qt" OFF) - - set(HAVE_QT 0) - set(HAVE_QT_OPENGL 0) -@@ -876,8 +876,8 @@ - ################## Extra HighGUI libs on Windows ################### - - if(WIN32) -- set(WITH_VIDEOINPUT ON CACHE BOOL "Build HighGUI with DirectShow support") -- -+ option(WITH_VIDEOINPUT "Build HighGUI with DirectShow support" ON) -+ - set(HIGHGUI_LIBRARIES ${HIGHGUI_LIBRARIES} comctl32 gdi32 ole32) - - if(WITH_VIDEOINPUT) -@@ -956,7 +956,7 @@ - # Set the maximum level of warnings: - # ---------------------------------------------------------------------------- - # Should be set to true for development --set(OPENCV_WARNINGS_ARE_ERRORS OFF CACHE BOOL "Treat warnings as errors") -+option(OPENCV_WARNINGS_ARE_ERRORS "Treat warnings as errors" OFF) - - set(EXTRA_C_FLAGS "") - set(EXTRA_C_FLAGS_RELEASE "") -@@ -1073,14 +1073,6 @@ - endif() - endif() - -- if(X86 OR X86_64) -- if(NOT APPLE) -- if(${CMAKE_SIZEOF_VOID_P} EQUAL 4) -- set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -mfpmath=387") -- endif() -- endif() -- endif() -- - # Profiling? - if(ENABLE_PROFILING) - set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -pg -g") -@@ -1197,7 +1197,7 @@ - if(WIN32) - set(OPENCV_DOC_INSTALL_PATH doc) - else() --set(OPENCV_DOC_INSTALL_PATH share/opencv/doc) -+set(OPENCV_DOC_INSTALL_PATH share/doc/opencv-${OPENCV_VERSION}/ CACHE PATH "Directory for documentation to install (without prefix)") - endif() - - -@@ -1232,7 +1232,7 @@ - set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/../../include/opencv" "\${THIS_OPENCV_CONFIG_PATH}/../../include\"") - set(CMAKE_BASE_INCLUDE_DIRS_CONFIGCMAKE "\"\"") - --set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/../../lib\"") -+set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/../../lib${LIB_SUFFIX}\"") - - exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"" OUTPUT_VARIABLE RET_VAL) - configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake" IMMEDIATE @ONLY) -@@ -1327,14 +1327,14 @@ - # ------------------------------------------------------------------------------------------- - set(prefix ${CMAKE_INSTALL_PREFIX}) - set(exec_prefix "\${prefix}") --set(libdir "\${exec_prefix}/lib") -+set(libdir "\${exec_prefix}/lib${LIB_SUFFIX}") - set(includedir "\${prefix}/include") - set(VERSION ${OPENCV_VERSION}) - - configure_file("${CMAKE_CURRENT_SOURCE_DIR}/opencv.pc.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/opencv.pc" @ONLY IMMEDIATE) - - if(UNIX) -- install(FILES ${CMAKE_BINARY_DIR}/unix-install/opencv.pc DESTINATION lib/pkgconfig) -+ install(FILES ${CMAKE_BINARY_DIR}/unix-install/opencv.pc DESTINATION lib${LIB_SUFFIX}/pkgconfig) - endif() - - -@@ -1354,7 +1354,7 @@ - # CPack target - # ---------------------------------------------------------------------------- - --set(BUILD_PACKAGE ON CACHE BOOL "Enables 'make package_source' command") -+option(BUILD_PACKAGE "Build a installer with the SDK" ON) - - if(BUILD_PACKAGE) - ---- OpenCV-2.3.0-0-vanilla/OpenCVModule.cmake -+++ OpenCV-2.3.0/OpenCVModule.cmake -@@ -63,7 +63,7 @@ - DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" - ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH} - RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} -- INSTALL_NAME_DIR lib -+ INSTALL_NAME_DIR lib${LIB_SUFFIX} - ) - - if(PCHSupport_FOUND AND USE_PRECOMPILED_HEADERS) -@@ -97,8 +97,8 @@ - - install(TARGETS ${the_target} - RUNTIME DESTINATION bin COMPONENT main -- LIBRARY DESTINATION lib COMPONENT main -- ARCHIVE DESTINATION lib COMPONENT main) -+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main -+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main) - - install(FILES ${lib_hdrs} - DESTINATION include/opencv2/${name} ---- OpenCV-2.3.0-0-vanilla/modules/gpu/CMakeLists.txt -+++ OpenCV-2.3.0/modules/gpu/CMakeLists.txt -@@ -121,7 +121,7 @@ - DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" - ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH} - RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} -- INSTALL_NAME_DIR lib -+ INSTALL_NAME_DIR lib${LIB_SUFFIX} - ) - - # Add the required libraries for linking: -@@ -149,8 +149,8 @@ - - install(TARGETS ${the_target} - RUNTIME DESTINATION bin COMPONENT main -- LIBRARY DESTINATION lib COMPONENT main -- ARCHIVE DESTINATION lib COMPONENT main) -+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main -+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main) - - install(FILES ${lib_hdrs} - DESTINATION include/opencv2/${name} ---- OpenCV-2.3.0-0-vanilla/modules/highgui/CMakeLists.txt -+++ OpenCV-2.3.0/modules/highgui/CMakeLists.txt -@@ -295,7 +295,7 @@ - DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" - ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH} - RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} -- INSTALL_NAME_DIR lib -+ INSTALL_NAME_DIR lib${LIB_SUFFIX} - LINK_INTERFACE_LIBRARIES "" - ) - -@@ -362,8 +362,8 @@ - - install(TARGETS ${the_target} - RUNTIME DESTINATION bin COMPONENT main -- LIBRARY DESTINATION lib COMPONENT main -- ARCHIVE DESTINATION lib COMPONENT main) -+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main -+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main) - - install(FILES ${highgui_ext_hdrs} - DESTINATION include/opencv2/highgui diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch deleted file mode 100644 index 4f93d4eed4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch +++ /dev/null @@ -1,156 +0,0 @@ -diff -ruN OpenCV-2.3.0-0-vanilla/modules/highgui/src/cap_ffmpeg_impl.hpp OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg_impl.hpp ---- OpenCV-2.3.0-0-vanilla/modules/highgui/src/cap_ffmpeg_impl.hpp 2011-07-04 06:21:58.000000000 +0200 -+++ OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg_impl.hpp 2011-09-18 20:27:05.000000000 +0200 -@@ -489,7 +489,7 @@ - AVCodecContext *enc = &ic->streams[i]->codec; - #endif - -- if( CODEC_TYPE_VIDEO == enc->codec_type && video_stream < 0) { -+ if( AVMEDIA_TYPE_VIDEO == enc->codec_type && video_stream < 0) { - AVCodec *codec = avcodec_find_decoder(enc->codec_id); - if (!codec || - avcodec_open(enc, codec) < 0) -@@ -576,15 +576,27 @@ - continue; - } - --#if LIBAVFORMAT_BUILD > 4628 -- avcodec_decode_video(video_st->codec, -- picture, &got_picture, -- packet.data, packet.size); --#else -- avcodec_decode_video(&video_st->codec, -- picture, &got_picture, -- packet.data, packet.size); --#endif -+ -+ AVPacket avpkt; -+ av_init_packet(&avpkt); -+ avpkt.data = packet.data; -+ avpkt.size = packet.size; -+ // -+ // HACK for CorePNG to decode as normal PNG by default -+ // same method used by ffmpeg -+ avpkt.flags = AV_PKT_FLAG_KEY; -+ avcodec_decode_video2(video_st->codec, -+ picture, &got_picture, &avpkt); -+//Functions Removed from ffmpeg on 4/19/11 -+//#if LIBAVFORMAT_BUILD > 4628 -+// avcodec_decode_video(video_st->codec, -+// picture, &got_picture, -+// packet.data, packet.size); -+//#else -+// avcodec_decode_video(&video_st->codec, -+// picture, &got_picture, -+// packet.data, packet.size); -+//#endif - - if (got_picture) { - // we have a new picture, so memorize it -@@ -822,24 +834,25 @@ - #endif - }; - --static const char * icvFFMPEGErrStr(int err) --{ -- switch(err) { -- case AVERROR_NUMEXPECTED: -- return "Incorrect filename syntax"; -- case AVERROR_INVALIDDATA: -- return "Invalid data in header"; -- case AVERROR_NOFMT: -- return "Unknown format"; -- case AVERROR_IO: -- return "I/O error occurred"; -- case AVERROR_NOMEM: -- return "Memory allocation error"; -- default: -- break; -- } -- return "Unspecified error"; --} -+//Deprecated Errors, should be using AVERROR(EINVAL) to return error strings -+//static const char * icvFFMPEGErrStr(int err) -+//{ -+// switch(err) { -+// case AVERROR_NUMEXPECTED: -+// return "Incorrect filename syntax"; -+// case AVERROR_INVALIDDATA: -+// return "Invalid data in header"; -+// case AVERROR_NOFMT: -+// return "Unknown format"; -+// case AVERROR_IO: -+// return "I/O error occurred"; -+// case AVERROR_NOMEM: -+// return "Memory allocation error"; -+// default: -+// break; -+// } -+// return "Unspecified error"; -+//} - - /* function internal to FFMPEG (libavformat/riff.c) to lookup codec id by fourcc tag*/ - extern "C" { -@@ -918,7 +931,7 @@ - #endif - - #if LIBAVFORMAT_BUILD > 4621 -- c->codec_id = av_guess_codec(oc->oformat, NULL, oc->filename, NULL, CODEC_TYPE_VIDEO); -+ c->codec_id = av_guess_codec(oc->oformat, NULL, oc->filename, NULL, AVMEDIA_TYPE_VIDEO); - #else - c->codec_id = oc->oformat->video_codec; - #endif -@@ -930,7 +943,7 @@ - //if(codec_tag) c->codec_tag=codec_tag; - codec = avcodec_find_encoder(c->codec_id); - -- c->codec_type = CODEC_TYPE_VIDEO; -+ c->codec_type = AVMEDIA_TYPE_VIDEO; - - /* put sample parameters */ - c->bit_rate = bitrate; -@@ -1015,7 +1028,7 @@ - AVPacket pkt; - av_init_packet(&pkt); - -- pkt.flags |= PKT_FLAG_KEY; -+ pkt.flags |= AV_PKT_FLAG_KEY; - pkt.stream_index= video_st->index; - pkt.data= (uint8_t *)picture; - pkt.size= sizeof(AVPicture); -@@ -1035,7 +1048,7 @@ - pkt.pts = c->coded_frame->pts; - #endif - if(c->coded_frame->key_frame) -- pkt.flags |= PKT_FLAG_KEY; -+ pkt.flags |= AV_PKT_FLAG_KEY; - pkt.stream_index= video_st->index; - pkt.data= outbuf; - pkt.size= out_size; -@@ -1237,7 +1250,7 @@ - av_register_all (); - - /* auto detect the output format from the name and fourcc code. */ -- fmt = guess_format(NULL, filename, NULL); -+ fmt = av_guess_format(NULL, filename, NULL); - if (!fmt) - return false; - -@@ -1260,7 +1273,7 @@ - #endif - - // alloc memory for context -- oc = av_alloc_format_context(); -+ oc = avformat_alloc_context(); - assert (oc); - - /* set file name */ -@@ -1336,7 +1349,7 @@ - /* open the codec */ - if ( (err=avcodec_open(c, codec)) < 0) { - char errtext[256]; -- sprintf(errtext, "Could not open codec '%s': %s", codec->name, icvFFMPEGErrStr(err)); -+ sprintf(errtext, "Could not open codec '%s': %s", codec->name, AVERROR(EINVAL)); - return false; - } - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-libpng15.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-libpng15.patch deleted file mode 100644 index c811766bf8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-libpng15.patch +++ /dev/null @@ -1,8 +0,0 @@ ---- opencv/modules/highgui/src/grfmt_png.cpp (revision 4945) -+++ opencv/modules/highgui/src/grfmt_png.cpp (revision 6143) -@@ -57,4 +57,5 @@ - #include - #endif -+#include - #include "grfmt_png.hpp" - diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-numpy.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-numpy.patch deleted file mode 100644 index e0706d2167..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-numpy.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN OpenCV-2.3.0-1-ol1/CMakeLists.txt OpenCV-2.3.0-2-numpy/CMakeLists.txt ---- OpenCV-2.3.0-1-ol1/CMakeLists.txt 2011-08-28 14:53:46.000000000 +0200 -+++ OpenCV-2.3.0-2-numpy/CMakeLists.txt 2011-08-28 15:26:37.000000000 +0200 -@@ -640,7 +640,7 @@ - - if(PYTHON_NUMPY_PROCESS EQUAL 0) - set(PYTHON_USE_NUMPY 1) -- add_definitions(-D PYTHON_USE_NUMPY=1) -+ add_definitions(-DPYTHON_USE_NUMPY=1) - include_directories(AFTER ${PYTHON_NUMPY_INCLUDE_DIRS}) - message(STATUS " Use NumPy headers from: ${PYTHON_NUMPY_INCLUDE_DIRS}") - else() diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-symlink.patch b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-symlink.patch deleted file mode 100644 index d6f5efb249..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/files/opencv-2.3.0-symlink.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN OpenCV-2.3.0-1-s2o/CMakeLists.txt OpenCV-2.3.0/CMakeLists.txt ---- OpenCV-2.3.0-1-s2o/CMakeLists.txt 2011-09-18 18:40:04.000000000 +0200 -+++ OpenCV-2.3.0/CMakeLists.txt 2011-09-18 18:55:47.000000000 +0200 -@@ -1240,7 +1240,7 @@ - if(UNIX) - # For a command "FIND_PACKAGE(FOO)", CMake will look at the directory /usr/share|lib/cmake/FOO/FOOConfig.cmake, so: - install(FILES ${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake DESTINATION share/opencv/) -- install(CODE "exec_program(ln ARGS -sf \"${CMAKE_INSTALL_PREFIX}/share/opencv\" \"${CMAKE_INSTALL_PREFIX}/share/OpenCV\")") -+ install(CODE "exec_program(ln ARGS -sf \"${CMAKE_INSTALL_PREFIX}/share/opencv\" \"$ENV{D}/${CMAKE_INSTALL_PREFIX}/share/OpenCV\")") - endif() - - # -------------------------------------------------------------------------------------------- diff --git a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/opencv-2.3.0-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/opencv-2.3.0-r2.ebuild deleted file mode 100644 index 2cc6478146..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-libs/opencv/opencv-2.3.0-r2.ebuild +++ /dev/null @@ -1,180 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/opencv/opencv-2.3.0.ebuild,v 1.11 2011/11/22 22:38:59 dilfridge Exp $ - -EAPI=3 - -PYTHON_DEPEND="python? 2:2.6" - -inherit base toolchain-funcs cmake-utils python - -MY_P=OpenCV-${PV} - -DESCRIPTION="A collection of algorithms and sample code for various computer vision problems" -HOMEPAGE="http://opencv.willowgarage.com" -SRC_URI="mirror://sourceforge/${PN}library/${MY_P}.tar.bz2" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="cuda doc eigen examples ffmpeg gstreamer gtk ieee1394 jpeg jpeg2k openexr opengl png python qt4 sse sse2 sse3 ssse3 tiff v4l xine" - -RDEPEND=" - app-arch/bzip2 - sys-libs/zlib - cuda? ( >=dev-util/nvidia-cuda-toolkit-4 ) - eigen? ( dev-cpp/eigen:2 ) - ffmpeg? ( virtual/ffmpeg ) - gstreamer? ( - media-libs/gstreamer - media-libs/gst-plugins-base - ) - gtk? ( - dev-libs/glib:2 - x11-libs/gtk+:2 - ) - jpeg? ( virtual/jpeg ) - jpeg2k? ( media-libs/jasper ) - ieee1394? ( media-libs/libdc1394 sys-libs/libraw1394 ) - openexr? ( media-libs/openexr ) - png? ( media-libs/libpng ) - python? ( dev-python/numpy ) - qt4? ( - x11-libs/qt-gui:4 - x11-libs/qt-test:4 - opengl? ( x11-libs/qt-opengl:4 ) - ) - tiff? ( media-libs/tiff ) - v4l? ( >=media-libs/libv4l-0.8.3 ) - xine? ( media-libs/xine-lib ) -" -DEPEND="${RDEPEND} - doc? ( virtual/latex-base ) - dev-util/pkgconfig -" - -# REQUIRED_USE="opengl? ( qt )" - -PATCHES=( - "${FILESDIR}/${PN}-2.3.0-convert_sets_to_options.patch" - "${FILESDIR}/${PN}-2.3.0-ffmpeg.patch" - "${FILESDIR}/${PN}-2.3.0-numpy.patch" - "${FILESDIR}/${PN}-2.3.0-symlink.patch" - "${FILESDIR}/${PN}-2.3.0-libpng15.patch" -) - -CMAKE_BUILD_TYPE="Release" - -S=${WORKDIR}/${MY_P} - -pkg_setup() { - if use python; then - python_set_active_version 2 - python_pkg_setup - fi -} - -src_prepare() { - base_src_prepare - - # remove bundled stuff - rm -rf 3rdparty - sed -i \ - -e '/add_subdirectory(3rdparty)/ d' \ - CMakeLists.txt || die -} - -src_configure() { - local mycmakeargs=( - $(cmake-utils_use_build doc DOCS) - $(cmake-utils_use_build examples) - $(cmake-utils_use examples INSTALL_C_EXAMPLES) - $(cmake-utils_use_build python NEW_PYTHON_SUPPORT) - $(cmake-utils_use_enable sse SSE) - $(cmake-utils_use_enable sse2 SSE2) - $(cmake-utils_use_enable sse3 SSE3) - $(cmake-utils_use_enable ssse3 SSSE3) - -DWITH_IPP=OFF - $(cmake-utils_use_with ieee1394 1394) - $(cmake-utils_use_with eigen) - $(cmake-utils_use_with ffmpeg) - $(cmake-utils_use_with gstreamer) - $(cmake-utils_use_with gtk) - $(cmake-utils_use_with jpeg) - $(cmake-utils_use_with jpeg2k JASPER) - $(cmake-utils_use_with openexr) - $(cmake-utils_use_with png) - $(cmake-utils_use_with qt4 QT) - $(cmake-utils_use_with opengl QT_OPENGL) - $(cmake-utils_use_with tiff) - $(cmake-utils_use_with v4l V4L) - $(cmake-utils_use_with xine) - ) - - if use cuda; then - if [ "$(gcc-version)" > "4.4" ]; then - ewarn "CUDA and >=sys-devel/gcc-4.5 do not play well together. Disabling CUDA support." - mycmakeargs+=( "-DWITH_CUDA=OFF" ) - else - mycmakeargs+=( "-DWITH_CUDA=ON" ) - fi - else - mycmakeargs+=( "-DWITH_CUDA=OFF" ) - fi - - if use python && use examples; then - mycmakeargs+=( "-DINSTALL_PYTHON_EXAMPLES=ON" ) - else - mycmakeargs+=( "-DINSTALL_PYTHON_EXAMPLES=OFF" ) - fi - - # Chrome OS cross-compilation fix: - # - # Setting root folder and search paths for cross-compilation - # We force the cmake to use binaries (e.g. compilers, interpreters) - # in the host but use include/library files in the target. - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH=${ROOT}" ) - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER" ) - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY" ) - mycmakeargs+=( "-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY" ) - tc-export PKG_CONFIG - sed -i '/^find_program/s:NAMES:& $ENV{PKG_CONFIG}:' OpenCVFindPkgConfig.cmake || die - # Workaround cmake testing the compiler too soon. - tc-export CC CXX - - # things we want to be hard off or not yet figured out - # unicap: https://bugs.gentoo.org/show_bug.cgi?id=175881 - # openni: ??? - mycmakeargs+=( - "-DUSE_OMIT_FRAME_POINTER=OFF" - "-DOPENCV_BUILD_3RDPARTY_LIBS=OFF" - "-DOPENCV_WARNINGS_ARE_ERRORS=OFF" - "-DBUILD_LATEX_DOCS=OFF" - "-DENABLE_POWERPC=OFF" - "-DBUILD_PACKAGE=OFF" - "-DENABLE_PROFILING=OFF" - "-DUSE_O2=OFF" - "-DUSE_O3=OFF" - "-DUSE_FAST_MATH=OFF" - "-DENABLE_SSE41=OFF" - "-DENABLE_SSE42=OFF" - "-DWITH_PVAPI=OFF" - "-DWITH_UNICAP=OFF" - "-DWITH_TBB=OFF" - "-DWITH_OPENNI=OFF" - ) - - # things we want to be hard enabled not worth useflag - mycmakeargs+=( - "-DCMAKE_SKIP_RPATH=ON" - "-DBUILD_SHARED_LIBS=ON" - "-DOPENCV_DOC_INSTALL_PATH=${EPREFIX}/usr/share/doc/${PF}" - ) - - # hardcode cuda paths - mycmakeargs+=( - "-DCUDA_NPP_LIBRARY_ROOT_DIR=/opt/cuda" - ) - - cmake-utils_src_configure -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/Manifest b/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/Manifest deleted file mode 100644 index f6b8fe1d3c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST o3d-svn-179976.tar.gz 242042234 SHA256 5449e06309ba4f29982dabde519e40d7fc87985a18168e3ff48208f10a6dc33c SHA512 6b46ad69fe9edf62d967ef28ec3e1a6783446c2673263ea9f6f08482889c0ce8bd3d957bc5d5800e9dfe42584f7f539007cbdf0c6a8a384f86dd9e30121ff5c1 WHIRLPOOL 85bd98bf1d4c59f1e8e72eb0c3a1a543d5b951fbdefd39ee3b391792b48ce3e655835f13a0048a84d2dcd8cf8dfa6b3c07924a12fdb81afe1a270027e9c53245 diff --git a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/envvars.arm b/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/envvars.arm deleted file mode 100644 index 24e3ce44e9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/envvars.arm +++ /dev/null @@ -1 +0,0 @@ -O3D_OVERRIDE_RENDER_MODE=2D diff --git a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/gcc-4_7.patch b/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/gcc-4_7.patch deleted file mode 100644 index 153c41bbf1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/gcc-4_7.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- base/time_posix.cc.orig 2012-05-30 10:06:00.571692591 -0700 -+++ base/time_posix.cc 2012-05-30 10:06:25.911766484 -0700 -@@ -24,7 +24,7 @@ struct timespec TimeDelta::ToTimeSpec() - } - struct timespec result = - {seconds, -- microseconds * Time::kNanosecondsPerMicrosecond}; -+ static_cast(microseconds * Time::kNanosecondsPerMicrosecond)}; - return result; - } - ---- base/message_pump_libevent.cc.orig 2012-05-30 10:04:00.331341859 -0700 -+++ base/message_pump_libevent.cc 2012-05-30 10:04:25.781416110 -0700 -@@ -6,6 +6,7 @@ - - #include - #include -+#include - - #include "base/auto_reset.h" - #include "base/compiler_specific.h" ---- o3d/core/cross/param.h.orig 2012-05-30 10:02:52.981145332 -0700 -+++ o3d/core/cross/param.h 2012-05-30 10:03:31.441257564 -0700 -@@ -444,7 +444,7 @@ class TypedParam : public TypedParamBase - - // Copies the data from another Param. - virtual void CopyDataFromParam(Param* source_param) { -- set_value_private((down_cast(source_param))->value_); -+ this->set_value_private((down_cast(source_param))->value_); - } - - private: -@@ -552,7 +552,7 @@ class TypedRefParam : public TypedRefPar - // Copies the data from another Param. - virtual void CopyDataFromParam(Param* source_param) { - T* value = down_cast(source_param)->value_.Get(); -- set_value_private(value ? value->GetWeakPointer() : WeakPointerType()); -+ this->set_value_private(value ? value->GetWeakPointer() : WeakPointerType()); - } - - private: diff --git a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/make-tarball b/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/make-tarball deleted file mode 100755 index 59308a8b76..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/make-tarball +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/bash - -# Copyright (c) 2009 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -usage() { - echo "Usage: $0 [gclient-file]" -} - -die() { - echo "dying: $*" - exit 1 -} - -if [[ $# -lt 1 ]]; then - usage - exit 0 -fi - -function update_mirror() { - [ -z "${LOCALMIRROR}" ] && return 0 - - echo -n "Update local mirror? [yn] " - read n - if [[ "$n" == "y" ]]; then - cp "o3d-svn-${SVNREV}.tar.gz" ${LOCALMIRROR} - chmod a+r "${LOCALMIRROR}/o3d-svn-${SVNREV}.tar.gz" - fi -} - -function download_stuff() { - FILESDIR=`dirname $0` - SVNREV=$1 - GCLIENT=${2-"${FILESDIR}/plugin-only.gclient"} - - if [[ ! -f "${GCLIENT}" ]]; then - echo "Can't read ${GCLIENT}" - exit 1 - fi - - # Grab the fully-qualified path to the .gclient file, since we are going to - # change directories. - GCLIENT=$(readlink -e "${GCLIENT}") - - mkdir o3d-${SVNREV} || die "Can't create work directory" - cd o3d-${SVNREV} - cp "${GCLIENT}" .gclient - gclient sync --revision o3d@${SVNREV} --force --nohooks - find . -name .svn -type d | xargs rm -rf - cd .. - tar -cvzf o3d-svn-${SVNREV}.tar.gz o3d-${SVNREV} -} - -download_stuff "$@" -update_mirror - diff --git a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/plugin-only.gclient b/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/plugin-only.gclient deleted file mode 100644 index 23a733fea1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/files/plugin-only.gclient +++ /dev/null @@ -1,32 +0,0 @@ -# An element of this array (a "solution") describes a repository directory -# that will be checked out into your working copy. Each solution may -# optionally define additional dependencies (via its DEPS file) to be -# checked out alongside the solution's directory. A solution may also -# specify custom dependencies (via the "custom_deps" property) that -# override or augment the dependencies specified by the DEPS file. -# If a "safesync_url" is specified, it is assumed to reference the location of -# a text file which contains nothing but the last known good SCM revision to -# sync against. It is fetched if specified and used unless --head is passed - -solutions = [ - { "name" : "o3d", - "url" : "http://src.chromium.org/svn/trunk/o3d", - "custom_deps" : { - # To use the trunk of a component instead of what's in DEPS: - #"component": "https://svnserver/component/trunk/", - # To exclude a component from your working copy: - #"data/really_large_component": None, - - # Don't need the following for npo3dautoplugin - "chrome/third_party/wtl": None, - "ipc": None, - "third_party/jsdoctoolkit": None, - "third_party/pdiff": None, - "third_party/selenium_rc": None, - "third_party/sqlite": None, - "tools/data_pack": None, - "tools/grit": None, - }, - "safesync_url": "" - }, -] diff --git a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/o3d-179976.ebuild b/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/o3d-179976.ebuild deleted file mode 100644 index 94c3980392..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-plugins/o3d/o3d-179976.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 - -# added eutils to patch -inherit toolchain-funcs eutils flag-o-matic - -DESCRIPTION="O3D Plugin" -HOMEPAGE="http://code.google.com/p/o3d/" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${PN}-svn-${PV}.tar.gz" -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="opengl opengles" -DEPEND="dev-libs/nss - media-libs/fontconfig - opengl? ( media-libs/glew ) - net-misc/curl - opengles? ( virtual/opengles x11-drivers/opengles-headers ) - x11-libs/cairo - x11-libs/gtk+" -RDEPEND="${DEPEND}" - -set_build_defines() { - # Prevents gclient from updating self. - export DEPOT_TOOLS_UPDATE=0 - export EGCLIENT="${EGCLIENT:-/home/$(whoami)/depot_tools/gclient}" -} - -src_prepare() { - set_build_defines - - if use x86; then - # TODO(piman): switch to GLES backend - GYP_DEFINES="target_arch=ia32"; - elif use arm; then - GYP_DEFINES="target_arch=arm" - elif use amd64; then - GYP_DEFINES="target_arch=x64" - else - die "unsupported arch: ${ARCH}" - fi - if [[ -n "${ROOT}" && "${ROOT}" != "/" ]]; then - GYP_DEFINES="$GYP_DEFINES sysroot=$ROOT" - fi - export GYP_DEFINES="$GYP_DEFINES chromeos=1 plugin_interface=ppapi p2p_apis=0 os_posix=1 plugin_branding=gtpo3d $BUILD_DEFINES" - # ebuild uses emake, ensure GYP creates Makefiles (and not .ninja) - # and we don't have external environment variables leak in - export GYP_GENERATORS=make - unset GYP_GENERATOR_FLAGS - unset BUILD_OUT - unset builddir_name - epatch "${FILESDIR}"/gcc-4_7.patch - - ${EGCLIENT} runhooks || die -} - -src_compile() { - use arm && append-flags -Wa,-mimplicit-it=always - append-cxxflags $(test-flags-CC -Wno-error=unused-but-set-variable) - tc-export AR AS LD NM RANLIB CC CXX STRIP - - emake BUILDTYPE=Release ppo3dautoplugin || die -} - -src_install() { - local destdir=/opt/google/o3d - local chromepepperdir=/opt/google/chrome/pepper - - dodir ${destdir} - exeinto ${destdir} - doexe out/Release/libppo3dautoplugin.so || die - dodir ${chromepepperdir} - dosym ${destdir}/libppo3dautoplugin.so ${chromepepperdir}/ || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/adhd/adhd-0.0.1-r450.ebuild b/sdk_container/src/third_party/coreos-overlay/media-sound/adhd/adhd-0.0.1-r450.ebuild deleted file mode 100644 index f889736d14..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/adhd/adhd-0.0.1-r450.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -EAPI=4 -CROS_WORKON_COMMIT="894a93374c5404028aa873b904b22d5fa7daf2c3" -CROS_WORKON_TREE="c086a20edabf4e7b0cd2b2cbfdef76e4f12c88b3" -CROS_WORKON_PROJECT="chromiumos/third_party/adhd" -CROS_WORKON_LOCALNAME="adhd" - -inherit toolchain-funcs autotools cros-workon cros-board - -DESCRIPTION="Google A/V Daemon" -HOMEPAGE="http://www.chromium.org" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -RDEPEND=">=media-libs/alsa-lib-1.0.24.1 - media-libs/speex - dev-libs/iniparser - >=sys-apps/dbus-1.4.12 - dev-libs/libpthread-stubs - sys-fs/udev" -DEPEND="${RDEPEND} - media-libs/ladspa-sdk" - -src_prepare() { - cd cras - eautoreconf -} - -src_configure() { - cd cras - econf -} - -src_compile() { - local board=$(get_current_board_with_variant) - emake BOARD=${board} CC="$(tc-getCC)" || die "Unable to build ADHD" -} - -src_test() { - if ! use x86 && ! use amd64 ; then - elog "Skipping unit tests on non-x86 platform" - else - cd cras - emake check - fi -} - -src_install() { - local board=$(get_current_board_with_variant) - emake BOARD=${board} DESTDIR="${D}" install - - insinto /usr/share/alsa/ucm - nonfatal doins -r ucm-config/${board}/* -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/adhd/adhd-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/media-sound/adhd/adhd-9999.ebuild deleted file mode 100644 index baef9506d0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/adhd/adhd-9999.ebuild +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -EAPI=4 -CROS_WORKON_PROJECT="chromiumos/third_party/adhd" -CROS_WORKON_LOCALNAME="adhd" - -inherit toolchain-funcs autotools cros-workon cros-board - -DESCRIPTION="Google A/V Daemon" -HOMEPAGE="http://www.chromium.org" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -RDEPEND=">=media-libs/alsa-lib-1.0.24.1 - media-libs/speex - dev-libs/iniparser - >=sys-apps/dbus-1.4.12 - dev-libs/libpthread-stubs - sys-fs/udev" -DEPEND="${RDEPEND} - media-libs/ladspa-sdk" - -src_prepare() { - cd cras - eautoreconf -} - -src_configure() { - cd cras - econf -} - -src_compile() { - local board=$(get_current_board_with_variant) - emake BOARD=${board} CC="$(tc-getCC)" || die "Unable to build ADHD" -} - -src_test() { - if ! use x86 && ! use amd64 ; then - elog "Skipping unit tests on non-x86 platform" - else - cd cras - emake check - fi -} - -src_install() { - local board=$(get_current_board_with_variant) - emake BOARD=${board} DESTDIR="${D}" install - - insinto /usr/share/alsa/ucm - nonfatal doins -r ucm-config/${board}/* -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/Manifest b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/Manifest deleted file mode 100644 index bc346a1291..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST alsa-driver-1.0.25.tar.bz2 3861484 RMD160 ad8b8093bf1de78cb0dcbb1b6a82ebb18d7aad6d SHA1 ebda37d18379466ca9d843e7a80d10bb706a6b04 SHA256 d80e219fd410b5bc62f9332e5964acd575cc8a0bcda80fa41d5eebeabde0ebc3 -DIST alsa-utils-1.0.25.tar.bz2 1132780 RMD160 8b1dc5c28d1fa6d9e0a79e029b6d69530f493e1d SHA1 c02eb4a3b9649950b803628371a840fb96ed6370 SHA256 2e676a2f634bbfe279b260e10a96f617cb72ee63c5bbf6c5f96bb615705b302c diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/alsa-utils-1.0.25-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/alsa-utils-1.0.25-r3.ebuild deleted file mode 100644 index ae688df0f8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/alsa-utils-1.0.25-r3.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-sound/alsa-utils/alsa-utils-1.0.25-r1.ebuild,v 1.7 2012/04/01 15:13:17 armin76 Exp $ - -EAPI=4 -inherit base systemd - -MY_P=${P/_rc/rc} - -DESCRIPTION="Advanced Linux Sound Architecture Utils (alsactl, alsamixer, etc.)" -HOMEPAGE="http://www.alsa-project.org/" -SRC_URI="mirror://alsaproject/utils/${MY_P}.tar.bz2 - !minimal? ( mirror://alsaproject/driver/alsa-driver-${PV}.tar.bz2 )" - -LICENSE="GPL-2" -SLOT="0.9" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ~ppc ppc64 sh sparc x86" -IUSE="doc +libsamplerate minimal +ncurses nls" - -COMMON_DEPEND=">=media-libs/alsa-lib-1.0.25 - libsamplerate? ( media-libs/libsamplerate ) - ncurses? ( >=sys-libs/ncurses-5.1 )" -RDEPEND="${COMMON_DEPEND} - !minimal? ( - dev-util/dialog - sys-apps/pciutils - )" -DEPEND="${COMMON_DEPEND} - doc? ( app-text/xmlto )" - -S="${WORKDIR}/${MY_P}" -PATCHES=( -"${FILESDIR}/${PN}-1.0.23-modprobe.d.patch" -"${FILESDIR}/${P}-separate-usr-var-fs.patch" -"${FILESDIR}/${P}-Do-not-access-other-cards-than-specified-for.patch" -) - -src_configure() { - local myconf="" - use doc || myconf="--disable-xmlto" - - econf ${myconf} \ - $(use_enable libsamplerate alsaloop) \ - $(use_enable nls) \ - $(use_enable ncurses alsamixer) \ - $(use_enable !minimal alsaconf) \ - "$(systemd_with_unitdir)" -} - -src_install() { - local ALSA_UTILS_DOCS="ChangeLog README TODO - seq/aconnect/README.aconnect - seq/aseqnet/README.aseqnet" - - emake DESTDIR="${D}" install || die "emake install failed" - - dodoc ${ALSA_UTILS_DOCS} || die - - use minimal || newbin "${WORKDIR}/alsa-driver-${PV}/utils/alsa-info.sh" \ - alsa-info - - newinitd "${FILESDIR}/alsasound.initd-r5" alsasound - newconfd "${FILESDIR}/alsasound.confd-r4" alsasound - insinto /etc/modprobe.d - newins "${FILESDIR}/alsa-modules.conf-rc" alsa.conf - - keepdir /var/lib/alsa -} - -pkg_postinst() { - echo - elog "To take advantage of the init script, and automate the process of" - elog "saving and restoring sound-card mixer levels you should" - elog "add alsasound to the boot runlevel. You can do this as" - elog "root like so:" - elog " # rc-update add alsasound boot" - echo - ewarn "The ALSA core should be built into the kernel or loaded through other" - ewarn "means. There is no longer any modular auto(un)loading in alsa-utils." - echo - if use minimal; then - ewarn "The minimal use flag disables the dependency on pciutils that" - ewarn "is needed by alsaconf at runtime." - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-modules.conf-rc b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-modules.conf-rc deleted file mode 100644 index 40e99df8d3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-modules.conf-rc +++ /dev/null @@ -1,38 +0,0 @@ -# Alsa kernel modules' configuration file. - -# ALSA portion -alias char-major-116 snd -# OSS/Free portion -alias char-major-14 soundcore - -## -## IMPORTANT: -## You need to customise this section for your specific sound card(s) -## and then run `update-modules' command. -## Read alsa-driver's INSTALL file in /usr/share/doc for more info. -## -## ALSA portion -## alias snd-card-0 snd-interwave -## alias snd-card-1 snd-ens1371 -## OSS/Free portion -## alias sound-slot-0 snd-card-0 -## alias sound-slot-1 snd-card-1 -## - -# OSS/Free portion - card #1 -alias sound-service-0-0 snd-mixer-oss -alias sound-service-0-1 snd-seq-oss -alias sound-service-0-3 snd-pcm-oss -alias sound-service-0-8 snd-seq-oss -alias sound-service-0-12 snd-pcm-oss -## OSS/Free portion - card #2 -## alias sound-service-1-0 snd-mixer-oss -## alias sound-service-1-3 snd-pcm-oss -## alias sound-service-1-12 snd-pcm-oss - -alias /dev/mixer snd-mixer-oss -alias /dev/dsp snd-pcm-oss -alias /dev/midi snd-seq-oss - -# Set this to the correct number of cards. -options snd cards_limit=1 diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.23-modprobe.d.patch b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.23-modprobe.d.patch deleted file mode 100644 index efe75923c1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.23-modprobe.d.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -uNr alsa-utils-1.0.23.ORIG//alsaconf/alsaconf.in alsa-utils-1.0.23/alsaconf/alsaconf.in ---- alsa-utils-1.0.23.ORIG//alsaconf/alsaconf.in 2010-04-16 23:16:24.972269218 +0100 -+++ alsa-utils-1.0.23/alsaconf/alsaconf.in 2010-04-16 23:16:47.781310369 +0100 -@@ -301,7 +301,7 @@ - fi - else - if [ "$distribution" = "gentoo" ]; then -- cfgfile="/etc/modules.d/alsa" -+ cfgfile="/etc/modprobe.d/alsa.conf" - elif [ "$kernel" = "new" ]; then - cfgfile="/etc/modprobe.conf" - if [ -d /etc/modprobe.d ]; then diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.25-Do-not-access-other-cards-than-specified-for.patch b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.25-Do-not-access-other-cards-than-specified-for.patch deleted file mode 100644 index abad116aaf..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.25-Do-not-access-other-cards-than-specified-for.patch +++ /dev/null @@ -1,48 +0,0 @@ -From f7eb87ddc7787e981e6055c9e6f770fc0cd2359a Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Wed, 9 May 2012 08:45:47 +0200 -Subject: [PATCH] alsactl: Do not access other cards than specified for init - -When the global state does not exist, alsactl tries to -initialize all soundcards. It is not good when alsactl -is called multiple times from udev. Also, selinux can deny -access to non-existent devices. - -Signed-off-by: Jaroslav Kysela ---- - alsactl/state.c | 14 ++++++++++++-- - 1 files changed, 12 insertions(+), 2 deletions(-) - -diff --git a/alsactl/state.c b/alsactl/state.c -index a8b5bd3..fec000d 100644 ---- a/alsactl/state.c -+++ b/alsactl/state.c -@@ -1646,13 +1646,23 @@ int load_state(const char *file, const char *initfile, const char *cardname, - - error("Cannot open %s for reading: %s", file, snd_strerror(err)); - finalerr = err; -- card = -1; -+ if (cardname) { -+ card = snd_card_get_index(cardname); -+ if (card < 0) { -+ error("Cannot find soundcard '%s'...", cardname); -+ return -ENODEV; -+ } -+ goto single; -+ } else { -+ card = -1; -+ } - /* find each installed soundcards */ -- while (1) { -+ while (!cardname) { - if (snd_card_next(&card) < 0) - break; - if (card < 0) - break; -+single: - first = 0; - if (!do_init) - break; --- -1.7.9.rc0 - diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.25-separate-usr-var-fs.patch b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.25-separate-usr-var-fs.patch deleted file mode 100644 index bf9afee042..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsa-utils-1.0.25-separate-usr-var-fs.patch +++ /dev/null @@ -1,7 +0,0 @@ -diff -uNr alsa-utils-1.0.25.ORIG/alsactl/90-alsa-restore.rules alsa-utils-1.0.25/alsactl/90-alsa-restore.rules ---- alsa-utils-1.0.25.ORIG/alsactl/90-alsa-restore.rules 2012-02-03 12:14:50.139393938 +0000 -+++ alsa-utils-1.0.25/alsactl/90-alsa-restore.rules 2012-02-03 12:16:02.660395020 +0000 -@@ -1,2 +1,3 @@ - ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS=="card*", \ -+ ENV{STARTUP}!="1", \ - RUN+="/usr/sbin/alsactl restore $attr{number}" diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsasound.confd-r4 b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsasound.confd-r4 deleted file mode 100644 index 6fec8f5938..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsasound.confd-r4 +++ /dev/null @@ -1,15 +0,0 @@ -# RESTORE_ON_START: -# Do you want to restore your mixer settings? If not, your cards will be -# muted. -# no - Do not restore state -# yes - Restore state - -RESTORE_ON_START="yes" - -# SAVE_ON_STOP: -# Do you want to save changes made to your mixer volumes when alsasound -# stops? -# no - Do not save state -# yes - Save state - -SAVE_ON_STOP="yes" diff --git a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsasound.initd-r5 b/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsasound.initd-r5 deleted file mode 100644 index e3c8dd9009..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/media-sound/alsa-utils/files/alsasound.initd-r5 +++ /dev/null @@ -1,83 +0,0 @@ -#!/sbin/runscript -# $Header: /var/cvsroot/gentoo-x86/media-sound/alsa-utils/files/alsasound.initd-r5,v 1.1 2012/02/20 09:03:53 chainsaw Exp $ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -alsastatedir=/var/lib/alsa -alsascrdir=/etc/alsa.d - -extra_commands="save restore" - -depend() { - need localmount - after bootmisc modules isapnp coldplug hotplug -} - -restore() { - ebegin "Restoring Mixer Levels" - - if [ ! -r "${alsastatedir}/asound.state" ] ; then - ewarn "No mixer config in ${alsastatedir}/asound.state, you have to unmute your card!" - eend 0 - return 0 - fi - - local cards="$(sed -n -e 's/ *\([[:digit:]]*\) .*/\1/p' /proc/asound/cards)" - local CARDNUM - for cardnum in ${cards}; do - [ -e /dev/snd/controlC${cardnum} ] || sleep 2 - [ -e /dev/snd/controlC${cardnum} ] || sleep 2 - [ -e /dev/snd/controlC${cardnum} ] || sleep 2 - [ -e /dev/snd/controlC${cardnum} ] || sleep 2 - alsactl -I -f "${alsastatedir}/asound.state" restore ${cardnum} \ - || ewarn "Errors while restoring defaults, ignoring" - done - - for ossfile in "${alsastatedir}"/oss/card*_pcm* ; do - [ -e "${ossfile}" ] || continue - # We use cat because I'm not sure if cp works properly on /proc - local procfile=${ossfile##${alsastatedir}/oss} - procfile="$(echo "${procfile}" | sed -e 's,_,/,g')" - if [ -e /proc/asound/"${procfile}"/oss ] ; then - cat "${ossfile}" > /proc/asound/"${procfile}"/oss - fi - done - - eend 0 -} - -save() { - ebegin "Storing ALSA Mixer Levels" - - mkdir -p "${alsastatedir}" - if ! alsactl -f "${alsastatedir}/asound.state" store; then - eerror "Error saving levels." - eend 1 - return 1 - fi - - for ossfile in /proc/asound/card*/pcm*/oss; do - [ -e "${ossfile}" ] || continue - local device=${ossfile##/proc/asound/} ; device=${device%%/oss} - device="$(echo "${device}" | sed -e 's,/,_,g')" - mkdir -p "${alsastatedir}/oss/" - cp "${ossfile}" "${alsastatedir}/oss/${device}" - done - - eend 0 -} - -start() { - if [ "${RESTORE_ON_START}" = "yes" ]; then - restore - fi - - return 0 -} - -stop() { - if [ "${SAVE_ON_STOP}" = "yes" ]; then - save - fi - return 0 -} diff --git a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/locksmith-9999 b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/locksmith-9999 index b464c50ce8..c83154e44d 100644 --- a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/locksmith-9999 +++ b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/locksmith-9999 @@ -8,4 +8,4 @@ KEYWORDS=~amd64 LICENSE=Apache-2.0 SLOT=0 _eclasses_=cros-workon d935ab9241325115878cd889446e7cb4 eutils 4878e7f88afc0ba0866ac112190b0fd4 flag-o-matic 65cef1287b9d62b1a0f180765d1e0c69 git-2 2027b81a576527fa16bece425941e094 git-r3 536297c3f55d49069f6d2785b061e4d9 multilib 892e597faee02a5b94eb02ab512e7622 systemd 9f063b2cc19c5e8030911372aa246c4e toolchain-funcs 51e6c948e72c43bcc8edc7544411c953 user d0a4d0735a6c0183d707ca919bd72f28 -_md5_=0e87956bd807d9e7faccbe49c2040473 +_md5_=bae28b4a8b52569aaf9ce19e459a3de2 diff --git a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/toolbox-9999 b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/toolbox-9999 index 765471daf1..a3390891c0 100644 --- a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/toolbox-9999 +++ b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-admin/toolbox-9999 @@ -8,4 +8,4 @@ KEYWORDS=~amd64 LICENSE=Apache-2.0 SLOT=0 _eclasses_=cros-workon d935ab9241325115878cd889446e7cb4 eutils 4878e7f88afc0ba0866ac112190b0fd4 flag-o-matic 65cef1287b9d62b1a0f180765d1e0c69 git-2 2027b81a576527fa16bece425941e094 git-r3 536297c3f55d49069f6d2785b061e4d9 multilib 892e597faee02a5b94eb02ab512e7622 toolchain-funcs 51e6c948e72c43bcc8edc7544411c953 user d0a4d0735a6c0183d707ca919bd72f28 -_md5_=57e90e16be66c0f046a9c2f2b8ec6037 +_md5_=20496f68240f2c8584eb88fed00195d3 diff --git a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-emulation/docker-9999 b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-emulation/docker-9999 index 105fbb8c9e..61041870e3 100644 --- a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-emulation/docker-9999 +++ b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-emulation/docker-9999 @@ -9,5 +9,5 @@ LICENSE=Apache-2.0 RDEPEND=>=dev-db/sqlite-3.7.9:3 sys-fs/lvm2[thin] !app-emulation/docker-bin >=net-firewall/iptables-1.4 lxc? ( >=app-emulation/lxc-0.8 ) >=dev-vcs/git-1.7 >=app-arch/xz-utils-4.9 aufs? ( || ( sys-fs/aufs3 sys-kernel/aufs-sources ) ) RESTRICT=strip SLOT=0 -_eclasses_=bash-completion-r1 d339dd40b2014cf1edba8592580eef42 cros-workon d935ab9241325115878cd889446e7cb4 eutils 4878e7f88afc0ba0866ac112190b0fd4 flag-o-matic 65cef1287b9d62b1a0f180765d1e0c69 git-2 2027b81a576527fa16bece425941e094 git-r3 536297c3f55d49069f6d2785b061e4d9 linux-info a9cbd6bbe2b28166e403321882f3c73c multilib 892e597faee02a5b94eb02ab512e7622 systemd 9f063b2cc19c5e8030911372aa246c4e toolchain-funcs 51e6c948e72c43bcc8edc7544411c953 udev a9a8d051efb42bfe884c1db82ce161de user d0a4d0735a6c0183d707ca919bd72f28 versionator 6601b4c5b3f019a993db59a50e1854e4 -_md5_=5007570299056024c571126ee1ad73e6 +_eclasses_=bash-completion-r1 d339dd40b2014cf1edba8592580eef42 cros-workon d935ab9241325115878cd889446e7cb4 eutils 4878e7f88afc0ba0866ac112190b0fd4 flag-o-matic 65cef1287b9d62b1a0f180765d1e0c69 git-2 2027b81a576527fa16bece425941e094 git-r3 536297c3f55d49069f6d2785b061e4d9 linux-info 2b8c53f6065bdee2d757472215a3088f multilib 892e597faee02a5b94eb02ab512e7622 systemd 9f063b2cc19c5e8030911372aa246c4e toolchain-funcs 51e6c948e72c43bcc8edc7544411c953 udev a9a8d051efb42bfe884c1db82ce161de user d0a4d0735a6c0183d707ca919bd72f28 versionator 6601b4c5b3f019a993db59a50e1854e4 +_md5_=ddd450fa6270d237a3d052fb16c9aea3 diff --git a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-0.0.1 b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-0.0.1 index f70c473fea..c5a06048c0 100644 --- a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-0.0.1 +++ b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-0.0.1 @@ -4,6 +4,6 @@ EAPI=2 HOMEPAGE=http://coreos.com KEYWORDS=amd64 arm x86 LICENSE=GPL-2 -RDEPEND=x86? ( sys-boot/syslinux ) amd64? ( sys-boot/syslinux ) arm? ( coreos-base/u-boot-scripts ) virtual/linux-sources >=sys-apps/baselayout-2.0.0 app-editors/vim app-emulation/xenstore app-emulation/xenserver-pv-version sys-apps/findutils sys-apps/which app-admin/fleet app-admin/locksmith app-admin/sudo app-admin/toolbox app-arch/gzip app-arch/tar app-arch/unzip app-arch/zip app-shells/bash coreos-base/cros_boot_mode coreos-base/vboot_reference coreos-base/update_engine coreos-base/coreos-init coreos-base/coreos-cloudinit coreos-base/coretest net-analyzer/nmap net-firewall/iptables net-misc/bridge-utils net-misc/dhcpcd net-misc/ntp net-misc/rsync net-misc/wget sys-apps/coreutils sys-apps/dbus sys-apps/ethtool sys-apps/gawk sys-apps/grep sys-apps/iproute2 sys-apps/kexec-tools sys-apps/less sys-apps/net-tools sys-apps/rootdev sys-apps/sed sys-apps/shadow sys-apps/systemd sys-apps/systemd-sysv-utils sys-apps/util-linux sys-fs/btrfs-progs sys-fs/e2fsprogs sys-fs/mdadm sys-kernel/coreos-firmware sys-kernel/coreos-kernel sys-libs/glibc sys-libs/nss-usrfiles sys-libs/timezone-data sys-process/lsof sys-process/procps app-emulation/docker app-misc/ca-certificates app-crypt/gnupg virtual/udev dev-db/etcd dev-db/etcdctl net-fs/nfs-utils net-misc/iputils dev-vcs/git +RDEPEND=x86? ( sys-boot/syslinux ) amd64? ( sys-boot/syslinux ) arm? ( coreos-base/u-boot-scripts ) virtual/linux-sources >=sys-apps/baselayout-2.0.0 app-editors/vim app-emulation/xenstore app-emulation/xenserver-pv-version sys-apps/findutils sys-apps/which app-admin/fleet app-admin/locksmith app-admin/sudo app-admin/toolbox app-arch/gzip app-arch/tar app-arch/unzip app-arch/zip app-shells/bash coreos-base/cros_boot_mode coreos-base/vboot_reference coreos-base/update_engine coreos-base/coreos-init coreos-base/coreos-cloudinit coreos-base/coretest net-analyzer/nmap net-firewall/ipset net-firewall/iptables net-misc/bridge-utils net-misc/dhcpcd net-misc/ntp net-misc/rsync net-misc/wget sys-apps/coreutils sys-apps/dbus sys-apps/ethtool sys-apps/gawk sys-apps/grep sys-apps/iproute2 sys-apps/kexec-tools sys-apps/less sys-apps/net-tools sys-apps/rootdev sys-apps/sed sys-apps/shadow sys-apps/systemd sys-apps/systemd-sysv-utils sys-apps/util-linux sys-fs/btrfs-progs sys-fs/e2fsprogs sys-fs/mdadm sys-kernel/coreos-firmware sys-kernel/coreos-kernel sys-libs/glibc sys-libs/nss-usrfiles sys-libs/timezone-data sys-process/lsof sys-process/procps app-emulation/docker app-misc/ca-certificates app-crypt/gnupg virtual/udev dev-db/etcd dev-db/etcdctl net-fs/nfs-utils net-misc/iputils dev-vcs/git SLOT=0 -_md5_=b984fd962591415e6b643fd544fe980e +_md5_=1fdcb011e05aced80628f83ce84796d6 diff --git a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-cloudinit-9999 b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-cloudinit-9999 index 217cfe7f15..1ed54ab3cf 100644 --- a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-cloudinit-9999 +++ b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-cloudinit-9999 @@ -9,4 +9,4 @@ LICENSE=Apache-2.0 RDEPEND=>=sys-apps/shadow-4.1.5.1 SLOT=0 _eclasses_=cros-workon d935ab9241325115878cd889446e7cb4 eutils 4878e7f88afc0ba0866ac112190b0fd4 flag-o-matic 65cef1287b9d62b1a0f180765d1e0c69 git-2 2027b81a576527fa16bece425941e094 git-r3 536297c3f55d49069f6d2785b061e4d9 multilib 892e597faee02a5b94eb02ab512e7622 systemd 9f063b2cc19c5e8030911372aa246c4e toolchain-funcs 51e6c948e72c43bcc8edc7544411c953 udev a9a8d051efb42bfe884c1db82ce161de user d0a4d0735a6c0183d707ca919bd72f28 -_md5_=da44cbff38c2b79e815d11e806bf6ce1 +_md5_=fbb844b92fa667f5290bf7a8fe10c8c2 diff --git a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-init-9999 b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-init-9999 index fde7ba4d55..c25f792619 100644 --- a/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-init-9999 +++ b/sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/coreos-base/coreos-init-9999 @@ -10,4 +10,4 @@ RDEPEND=app-emulation/docker net-misc/openssh !dnsaddr[1]), 0); - if (usepeerdns && (go->dnsaddr[0] || go->dnsaddr[1])) { - script_setenv("USEPEERDNS", "1", 0); -- create_resolv(go->dnsaddr[0], go->dnsaddr[1]); -+ if (!neg_systemconfig) -+ create_resolv(go->dnsaddr[0], go->dnsaddr[1]); - } - - if (go->winsaddr[0]) -@@ -1933,8 +1938,12 @@ ipcp_up(f) - */ - mask = GetMask(go->ouraddr); - -+ if (neg_systemconfig && debug) -+ warn("Avoiding system configuration by request"); -+ - #if !(defined(SVR4) && (defined(SNI) || defined(__USLC__))) -- if (!sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) { -+ if (!neg_systemconfig && -+ !sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) { - if (debug) - warn("Interface configuration failed"); - ipcp_close(f->unit, "Interface configuration failed"); -@@ -1946,7 +1955,7 @@ ipcp_up(f) - ipcp_script(_PATH_IPPREUP, 1); - - /* bring the interface up for IP */ -- if (!sifup(f->unit)) { -+ if (!neg_systemconfig && !sifup(f->unit)) { - if (debug) - warn("Interface failed to come up"); - ipcp_close(f->unit, "Interface configuration failed"); -@@ -1954,7 +1963,8 @@ ipcp_up(f) - } - - #if (defined(SVR4) && (defined(SNI) || defined(__USLC__))) -- if (!sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) { -+ if (!neg_systemconfig && -+ !sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) { - if (debug) - warn("Interface configuration failed"); - ipcp_close(f->unit, "Interface configuration failed"); -@@ -1964,12 +1974,13 @@ ipcp_up(f) - sifnpmode(f->unit, PPP_IP, NPMODE_PASS); - - /* assign a default route through the interface if required */ -- if (ipcp_wantoptions[f->unit].default_route) -+ if (!neg_systemconfig && ipcp_wantoptions[f->unit].default_route) - if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr)) - default_route_set[f->unit] = 1; - - /* Make a proxy ARP entry if requested. */ -- if (ho->hisaddr != 0 && ipcp_wantoptions[f->unit].proxy_arp) -+ if (!neg_systemconfig && -+ ho->hisaddr != 0 && ipcp_wantoptions[f->unit].proxy_arp) - if (sifproxyarp(f->unit, ho->hisaddr)) - proxy_arp_set[f->unit] = 1; - -@@ -2041,7 +2052,8 @@ ipcp_down(f) - sifnpmode(f->unit, PPP_IP, NPMODE_QUEUE); - } else { - sifnpmode(f->unit, PPP_IP, NPMODE_DROP); -- sifdown(f->unit); -+ if (!neg_systemconfig) -+ sifdown(f->unit); - ipcp_clear_addrs(f->unit, ipcp_gotoptions[f->unit].ouraddr, - ipcp_hisoptions[f->unit].hisaddr); - } -@@ -2072,7 +2084,8 @@ ipcp_clear_addrs(unit, ouraddr, hisaddr) - cifdefaultroute(unit, ouraddr, hisaddr); - default_route_set[unit] = 0; - } -- cifaddr(unit, ouraddr, hisaddr); -+ if (!neg_systemconfig) -+ cifaddr(unit, ouraddr, hisaddr); - } - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/ppp/ppp-2.4.5-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/net-dialup/ppp/ppp-2.4.5-r3.ebuild deleted file mode 100644 index 0d5a343eba..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/ppp/ppp-2.4.5-r3.ebuild +++ /dev/null @@ -1,290 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/ppp/ppp-2.4.5-r2.ebuild,v 1.2 2011/11/11 12:07:15 flameeyes Exp $ - -EAPI="2" - -inherit eutils toolchain-funcs linux-info pam - -DESCRIPTION="Point-to-Point Protocol (PPP)" -HOMEPAGE="http://www.samba.org/ppp" -SRC_URI="ftp://ftp.samba.org/pub/ppp/${P}.tar.gz - http://dev.gentoo.org/~flameeyes/qa-copies/${P}-gentoo-20111111.tar.gz - dhcp? ( http://www.netservers.co.uk/gpl/ppp-dhcpc.tgz )" - -LICENSE="BSD GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -IUSE="activefilter atm dhcp eap-tls gtk ipv6 pam radius" - -DEPEND="activefilter? ( net-libs/libpcap ) - atm? ( net-dialup/linux-atm ) - pam? ( virtual/pam ) - gtk? ( x11-libs/gtk+:2 ) - eap-tls? ( net-misc/curl dev-libs/openssl )" -RDEPEND="${DEPEND}" - -src_prepare() { - epatch "${WORKDIR}/patch/make-vars.patch" - epatch "${WORKDIR}/patch/mpls.patch" - epatch "${WORKDIR}/patch/killaddr-smarter.patch" - epatch "${WORKDIR}/patch/wait-children.patch" - epatch "${WORKDIR}/patch/defaultgateway.patch" - epatch "${WORKDIR}/patch/linkpidfile.patch" - epatch "${WORKDIR}/patch/qa-fixes.patch" - epatch "${WORKDIR}/patch/auth-fail.patch" - epatch "${WORKDIR}/patch/defaultmetric.patch" - epatch "${WORKDIR}/patch/dev-ppp.patch" - epatch "${WORKDIR}/patch/gtk2.patch" - epatch "${WORKDIR}/patch/passwordfd-read-early.patch" - epatch "${WORKDIR}/patch/pppd-usepeerwins.patch" - epatch "${WORKDIR}/patch/connect-errors.patch" - epatch "${WORKDIR}/patch/Makefile.patch" - epatch "${WORKDIR}/patch/pppol2tpv3-2.6.35.patch" - epatch "${WORKDIR}/patch/pado-timeout.patch" - epatch "${WORKDIR}/patch/lcp-echo-adaptive.patch" - # Apply Chromium OS specific patch regarding the nosystemconfig option - # See https://gerrit.chromium.org/gerrit/7751 and - # http://crosbug.com/17185 for details. - epatch "${FILESDIR}/${PN}-2.4.5-systemconfig.patch" - - use eap-tls && { - # see http://www.nikhef.nl/~janjust/ppp for more info - einfo "Enabling EAP-TLS support" - epatch "${WORKDIR}/patch/eaptls-mppe-0.991-gentoo.patch" - } - - use atm && { - einfo "Enabling PPPoATM support" - sed -i "s/^#HAVE_LIBATM=yes/HAVE_LIBATM=yes/" pppd/plugins/pppoatm/Makefile.linux - } - - use activefilter || { - einfo "Disabling active filter" - sed -i "s/^FILTER=y/#FILTER=y/" pppd/Makefile.linux - } - - use pam && { - einfo "Enabling PAM" - sed -i "s/^#USE_PAM=y/USE_PAM=y/" pppd/Makefile.linux - } - - use ipv6 && { - einfo "Enabling IPv6" - sed -i "s/#HAVE_INET6/HAVE_INET6/" pppd/Makefile.linux - } - - einfo "Enabling CBCP" - sed -i "s/^#CBCP=y/CBCP=y/" pppd/Makefile.linux - - use dhcp && { - # copy the ppp-dhcp plugin files - einfo "Adding ppp-dhcp plugin files..." - mv "${WORKDIR}/dhcp" "${S}/pppd/plugins" \ - && sed -i -e 's/\(SUBDIRS := .*rp-pppoe.*\)$/\1 dhcp/' pppd/plugins/Makefile.linux \ - || die "ppp-dhcp plugin addition failed" - epatch "${WORKDIR}/patch/dhcp-make-vars.patch" - epatch "${WORKDIR}/patch/dhcp-sys_error_to_strerror.patch" - } - - # Set correct libdir - sed -i -e "s:/lib/pppd:/$(get_libdir)/pppd:" \ - pppd/{pathnames.h,pppd.8} - - if use radius; then - #set the right paths in radiusclient.conf - sed -i -e "s:/usr/local/etc:/etc:" \ - -e "s:/usr/local/sbin:/usr/sbin:" pppd/plugins/radius/etc/radiusclient.conf - #set config dir to /etc/ppp/radius - sed -i -e "s:/etc/radiusclient:/etc/ppp/radius:g" \ - pppd/plugins/radius/{*.8,*.c,*.h} \ - pppd/plugins/radius/etc/* - else - einfo "Disabling radius" - sed -i -e '/+= radius/s:^:#:' pppd/plugins/Makefile.linux - fi -} - -src_configure() { - export CC="$(tc-getCC)" - export AR="$(tc-getAR)" - econf || die "econf failed" -} - -src_compile() { - emake COPTS="${CFLAGS} -D_GNU_SOURCE" || die "compile failed" - - #build pppgetpass - cd contrib/pppgetpass - if use gtk; then - emake -f Makefile.linux || die "failed to build pppgetpass" - else - emake pppgetpass.vt || die "failed to build pppgetpass" - fi -} - -src_install() { - local i - for i in chat pppd pppdump pppstats ; do - doman ${i}/${i}.8 || die "man page for ${i} not build" - dosbin ${i}/${i} || die "${i} not build" - done - fperms u+s-w /usr/sbin/pppd - - # Install pppd header files - pushd pppd >/dev/null - emake INSTROOT="${D}" install-devel || die "emake install-devel failed" - popd >/dev/null - - dosbin pppd/plugins/rp-pppoe/pppoe-discovery || die "pppoe-discovery not build" - - dodir /etc/ppp/peers - insinto /etc/ppp - insopts -m0600 - newins etc.ppp/pap-secrets pap-secrets.example || die "pap-secrets.example not found" - newins etc.ppp/chap-secrets chap-secrets.example || die "chap-secrets.example not found" - - insopts -m0644 - doins etc.ppp/options - - exeinto /etc/ppp - for i in ip-up ip-down ; do - doexe "${WORKDIR}/scripts/${i}" || die "failed to install ${i} script" - insinto /etc/ppp/${i}.d - use ipv6 && dosym ${i} /etc/ppp/${i/ip/ipv6} - doins "${WORKDIR}/scripts/${i}.d"/* || die "failed to install ${i}.d scripts" - # Remove ip-up/ip-down 40-dns.sh scripts because these scripts - # modify /etc/resolv.conf, which should only be managed by the - # connection manager (shill). See http://crosbug.com/24486. - rm -f ${D}/etc/ppp/${i}.d/40-dns.sh || die "failed to remove /etc/ppp/${i}.d/40-dns.sh" - done - - pamd_mimic_system ppp auth account session - - local PLUGINS_DIR=/usr/$(get_libdir)/pppd/$(awk -F '"' '/VERSION/ {print $2}' pppd/patchlevel.h) - #closing " for syntax coloring - insinto "${PLUGINS_DIR}" - insopts -m0755 - doins pppd/plugins/minconn.so || die "minconn.so not build" - doins pppd/plugins/passprompt.so || die "passprompt.so not build" - doins pppd/plugins/passwordfd.so || die "passwordfd.so not build" - doins pppd/plugins/winbind.so || die "winbind.so not build" - doins pppd/plugins/rp-pppoe/rp-pppoe.so || die "rp-pppoe.so not build" - doins pppd/plugins/pppol2tp/openl2tp.so || die "openl2tp.so not build" - doins pppd/plugins/pppol2tp/pppol2tp.so || die "pppol2tp.so not build" - if use atm; then - doins pppd/plugins/pppoatm/pppoatm.so || die "pppoatm.so not build" - fi - if use dhcp; then - doins pppd/plugins/dhcp/dhcpc.so || die "dhcpc.so not build" - fi - if use radius; then - doins pppd/plugins/radius/radius.so || die "radius.so not build" - doins pppd/plugins/radius/radattr.so || die "radattr.so not build" - doins pppd/plugins/radius/radrealms.so || die "radrealms.so not build" - - #Copy radiusclient configuration files (#92878) - insinto /etc/ppp/radius - insopts -m0644 - doins pppd/plugins/radius/etc/{dictionary*,issue,port-id-map,radiusclient.conf,realms,servers} - - doman pppd/plugins/radius/pppd-radius.8 - doman pppd/plugins/radius/pppd-radattr.8 - fi - - insinto /etc/modprobe.d - insopts -m0644 - newins "${FILESDIR}/modules.ppp" ppp.conf - - dodoc PLUGINS README* SETUP Changes-2.3 FAQ - dodoc "${FILESDIR}/README.mpls" - - dosbin scripts/pon && \ - dosbin scripts/poff && \ - dosbin scripts/plog && \ - doman scripts/pon.1 || die "failed to install pon&poff scripts" - - # Adding misc. specialized scripts to doc dir - insinto /usr/share/doc/${PF}/scripts/chatchat - doins scripts/chatchat/* || die "failed to install chat scripts in doc dir" - insinto /usr/share/doc/${PF}/scripts - doins scripts/* || die "failed to install scripts in doc dir" - - if use gtk; then - dosbin contrib/pppgetpass/{pppgetpass.vt,pppgetpass.gtk} - newsbin contrib/pppgetpass/pppgetpass.sh pppgetpass - else - newsbin contrib/pppgetpass/pppgetpass.vt pppgetpass - fi - doman contrib/pppgetpass/pppgetpass.8 -} - -pkg_postinst() { - if linux-info_get_any_version && linux_config_src_exists; then - echo - ewarn "If the following test report contains a missing kernel configuration option that you need," - ewarn "you should reconfigure and rebuild your kernel before running pppd." - CONFIG_CHECK="~PPP ~PPP_ASYNC ~PPP_SYNC_TTY" - local ERROR_PPP="CONFIG_PPP:\t missing PPP support (REQUIRED)" - local ERROR_PPP_ASYNC="CONFIG_PPP_ASYNC:\t missing asynchronous serial line discipline (optional, but highly recommended)" - local WARNING_PPP_SYNC_TTY="CONFIG_PPP_SYNC_TTY:\t missing synchronous serial line discipline (optional; used by 'sync' pppd option)" - if use activefilter ; then - CONFIG_CHECK="${CONFIG_CHECK} ~PPP_FILTER" - local ERROR_PPP_FILTER="CONFIG_PPP_FILTER:\t missing PPP filtering support (REQUIRED)" - fi - CONFIG_CHECK="${CONFIG_CHECK} ~PPP_DEFLATE ~PPP_BSDCOMP ~PPP_MPPE" - local ERROR_PPP_DEFLATE="CONFIG_PPP_DEFLATE:\t missing Deflate compression (optional, but highly recommended)" - local ERROR_PPP_BSDCOMP="CONFIG_PPP_BSDCOMP:\t missing BSD-Compress compression (optional, but highly recommended)" - local WARNING_PPP_MPPE="CONFIG_PPP_MPPE:\t missing MPPE encryption (optional, mostly used by PPTP links)" - CONFIG_CHECK="${CONFIG_CHECK} ~PPPOE ~PACKET" - local WARNING_PPPOE="CONFIG_PPPOE:\t missing PPPoE support (optional, needed by rp-pppoe plugin)" - local WARNING_PACKET="CONFIG_PACKET:\t missing AF_PACKET support (optional, used by rp-pppoe and dhcpc plugins)" - if use atm ; then - CONFIG_CHECK="${CONFIG_CHECK} ~PPPOATM" - local WARNING_PPPOATM="CONFIG_PPPOATM:\t missing PPPoA support (optional, needed by pppoatm plugin)" - fi - check_extra_config - fi - - if [ ! -e "${ROOT}/dev/.devfsd" ] && [ ! -e "${ROOT}/dev/.udev" ] && [ ! -e "${ROOT}/dev/ppp" ]; then - mknod "${ROOT}/dev/ppp" c 108 0 - fi - if [ "$ROOT" = "/" ]; then - if [ -x /sbin/update-modules ]; then - /sbin/update-modules - else - /sbin/modules-update - fi - fi - - # create *-secrets files if not exists - [ -f "${ROOT}/etc/ppp/pap-secrets" ] || \ - cp -pP "${ROOT}/etc/ppp/pap-secrets.example" "${ROOT}/etc/ppp/pap-secrets" - [ -f "${ROOT}/etc/ppp/chap-secrets" ] || \ - cp -pP "${ROOT}/etc/ppp/chap-secrets.example" "${ROOT}/etc/ppp/chap-secrets" - - # lib name has changed - sed -i -e "s:^pppoe.so:rp-pppoe.so:" "${ROOT}/etc/ppp/options" - - if use radius && [[ $previous_less_than_2_4_3_r5 = 0 ]] ; then - echo - ewarn "As of ${PN}-2.4.3-r5, the RADIUS configuration files have moved from" - ewarn " /etc/radiusclient to /etc/ppp/radius." - einfo "For your convenience, radiusclient directory was copied to the new location." - fi - - echo - elog "Pon, poff and plog scripts have been supplied for experienced users." - elog "Users needing particular scripts (ssh,rsh,etc.) should check out the" - elog "/usr/share/doc/${PF}/scripts directory." - - # move the old user-defined files into ip-{up,down}.d directories - # TO BE REMOVED AFTER SEPT 2008 - local i - for i in ip-up ip-down; do - if [ -f "${ROOT}"/etc/ppp/${i}.local ]; then - mv /etc/ppp/${i}.local /etc/ppp/${i}.d/90-local.sh && \ - ewarn "/etc/ppp/${i}.local has been moved to /etc/ppp/${i}.d/90-local.sh" - fi - done -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/Manifest b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/Manifest deleted file mode 100644 index e6a6c2173f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST xl2tpd-1.2.3.tar.gz 332454 RMD160 73528e1f5e28eb60e2a25509b59dcbc141721908 SHA1 fee344f7771ae295f882a16c46c71234fe1b733a SHA256 db8fa5f7c19cd7928d7e87ea5c99c6a89bc1ad66f27132aaf12d4b3b3febf2e3 -DIST xl2tpd-1.3.0.tar.gz 550901 RMD160 ef2cec6d363bdc8b107f2efcb5db2df9b1d2c7ec SHA1 e0382fdce023f577f8914a6f98f1fbff74a54490 SHA256 972b9440d637c7cff3e28ca4cb4131bc33b9394cfcb7d391383202136632c8c0 diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-1.3.0-LDFLAGS.patch b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-1.3.0-LDFLAGS.patch deleted file mode 100644 index a87ab3fff8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-1.3.0-LDFLAGS.patch +++ /dev/null @@ -1,13 +0,0 @@ -=== modified file 'Makefile' ---- Makefile 2011-09-20 04:44:23 +0000 -+++ Makefile 2011-09-20 04:44:35 +0000 -@@ -114,7 +114,7 @@ - $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS) - - $(CONTROL_EXEC): $(CONTROL_SRCS) -- $(CC) $(CONTROL_SRCS) -o $@ -+ $(CC) $(LDFLAGS) $(CONTROL_SRCS) -o $@ - - pfc: - $(CC) $(CFLAGS) -c contrib/pfc.c - diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-1.3.0-avp-workaround.patch b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-1.3.0-avp-workaround.patch deleted file mode 100644 index db6b55c301..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-1.3.0-avp-workaround.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff -rupN xl2tpd-1.3.0/avpsend.c xl2tpd-1.3.0.patched/avpsend.c ---- xl2tpd-1.3.0/avpsend.c 2011-07-23 17:13:59.000000000 -0700 -+++ xl2tpd-1.3.0.patched/avpsend.c 2011-11-01 17:02:17.149552006 -0700 -@@ -18,6 +18,13 @@ - #include - #include "l2tp.h" - -+/* -+ * Several AVPs seem to be rejected by some VPN servers such as Check Point VPN. -+ * This macro is defined to exclude those AVPs from L2TP control packets as a -+ * workaround. -+ */ -+#define XL2TPD_WORK_AROUND_AVP_ISSUES -+ - struct half_words { - _u16 s0; - _u16 s1; -@@ -81,10 +88,12 @@ int add_bearer_caps_avp (struct buffer * - - int add_firmware_avp (struct buffer *buf) - { -+#ifndef XL2TPD_WORK_AROUND_AVP_ISSUES - struct half_words *ptr = (struct half_words *) (buf->start + buf->len + sizeof(struct avp_hdr)); - add_header(buf, 0x8, 0x6); - ptr->s0 = htons (FIRMWARE_REV); - buf->len += 0x8; -+#endif /* XL2TPD_WORK_AROUND_AVP_ISSUES */ - return 0; - } - -@@ -103,9 +112,11 @@ int add_hostname_avp (struct buffer *buf - - int add_vendor_avp (struct buffer *buf) - { -+#ifndef XL2TPD_WORK_AROUND_AVP_ISSUES - add_header(buf, 0x6 + strlen (VENDOR_NAME), 0x8); - strcpy ((char *) (buf->start + buf->len + sizeof(struct avp_hdr)), VENDOR_NAME); - buf->len += 0x6 + strlen (VENDOR_NAME); -+#endif /* XL2TPD_WORK_AROUND_AVP_ISSUES */ - return 0; - } - -@@ -227,11 +238,13 @@ int add_txspeed_avp (struct buffer *buf, - - int add_rxspeed_avp (struct buffer *buf, int speed) - { -+#ifndef XL2TPD_WORK_AROUND_AVP_ISSUES - struct half_words *ptr = (struct half_words *) (buf->start + buf->len + sizeof(struct avp_hdr)); - add_header(buf, 0xA, 0x26); - ptr->s0 = htons ((speed >> 16) & 0xFFFF); - ptr->s1 = htons (speed & 0xFFFF); - buf->len += 0xA; -+#endif /* XL2TPD_WORK_AROUND_AVP_ISSUES */ - return 0; - } - diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-dnsretry.patch b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-dnsretry.patch deleted file mode 100644 index b27703fe43..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-dnsretry.patch +++ /dev/null @@ -1,42 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=307489 -http://homenet.beeline.ru/index.php?showtopic=192551&st=0&p=1063626345&#entry1063626345 - ---- xl2tpd.c 2010-05-10 22:35:43.000000000 +0200 -+++ xl2tpd.c 2010-08-15 22:02:14.000000000 +0200 -@@ -587,9 +587,33 @@ - hp = gethostbyname (host); - if (!hp) - { -- l2tp_log (LOG_WARNING, "Host name lookup failed for %s.\n", -- host); -- return NULL; -+ if ( lac->redial ) -+ { -+ int imax=lac->rmax; -+ if ( lac->rmax == 0 ) -+ imax = 1; -+ while ( imax > 0 ) -+ { -+ hp = gethostbyname ( host ); -+ if ( hp ) -+ break; -+ l2tp_log ( LOG_WARNING, "Y: Host name lookup failed for %s. Trying to look again in %d seconds.\n", host, lac->rtimeout ); -+ if ( lac->rtimeout > 0 ) -+ sleep ( lac->rtimeout ); -+ if ( lac->rmax > 0 ) -+ imax--; -+ } -+ if ( ( imax == 0 ) && ( lac->rmax > 0 ) ) -+ { -+ l2tp_log ( LOG_WARNING, "Y: Host name lookup failed for %s after %d tries. Lookup stops now.\n", host, lac->rmax ); -+ return NULL; -+ } -+ } -+ else -+ { -+ l2tp_log (LOG_WARNING, "Host name lookup failed for %s.\n", host); -+ return NULL; -+ } - } - bcopy (hp->h_addr, &addr, hp->h_length); - /* Force creation of a new tunnel diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-init b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-init deleted file mode 100644 index 639007b577..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/files/xl2tpd-init +++ /dev/null @@ -1,32 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/xl2tpd/files/xl2tpd-init,v 1.2 2007/03/05 10:50:54 mrness Exp $ - -depend() { - need net -} - -checkconfig() { - if [[ ! -f /etc/xl2tpd/xl2tpd.conf ]] ; then - eerror "Missing /etc/xl2tpd/xl2tpd.conf configuration file!" - eerror "Example configuration file could be found in doc directory." - return 1 - fi - - return 0 -} - -start() { - checkconfig || return 1 - - ebegin "Starting xl2tpd" - start-stop-daemon --start --quiet --exec /usr/sbin/xl2tpd - eend $? -} - -stop() { - ebegin "Stopping xl2tpd" - start-stop-daemon --stop --quiet --pidfile /var/run/xl2tpd.pid - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/xl2tpd-1.3.0-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/xl2tpd-1.3.0-r1.ebuild deleted file mode 120000 index 6557f0aa41..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/xl2tpd-1.3.0-r1.ebuild +++ /dev/null @@ -1 +0,0 @@ -xl2tpd-1.3.0.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/xl2tpd-1.3.0.ebuild b/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/xl2tpd-1.3.0.ebuild deleted file mode 100644 index 8ec409a0eb..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-dialup/xl2tpd/xl2tpd-1.3.0.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/xl2tpd/xl2tpd-1.3.0.ebuild,v 1.1 2011/09/20 04:49:45 pva Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs - -DESCRIPTION="A modern version of the Layer 2 Tunneling Protocol (L2TP) daemon" -HOMEPAGE="http://www.xelerance.com/services/software/xl2tpd/" -SRC_URI="ftp://ftp.xelerance.com/${PN}/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" -IUSE="dnsretry" - -DEPEND="net-libs/libpcap" -RDEPEND="${DEPEND} - net-dialup/ppp" - -src_prepare() { - epatch "${FILESDIR}/${PN}-1.3.0-LDFLAGS.patch" - epatch "${FILESDIR}/${PN}-1.3.0-avp-workaround.patch" - sed -i Makefile -e 's| -O2 ||g' || die "sed Makefile" - use dnsretry && epatch "${FILESDIR}/${PN}-dnsretry.patch" -} - -src_compile() { - emake CC=$(tc-getCC) -} - -src_install() { - emake PREFIX=/usr DESTDIR="${D}" install - - dodoc CREDITS README.xl2tpd \ - doc/README.patents doc/rfc2661.txt doc/*.sample - - dodir /etc/xl2tpd - head -n 2 doc/l2tp-secrets.sample > "${ED}/etc/xl2tpd/l2tp-secrets" || die - fperms 0600 /etc/xl2tpd/l2tp-secrets - newinitd "${FILESDIR}"/xl2tpd-init xl2tpd - - keepdir /var/run/xl2tpd -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/ChangeLog b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/ChangeLog deleted file mode 100644 index 12aaaff308..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/ChangeLog +++ /dev/null @@ -1,739 +0,0 @@ -# ChangeLog for net-fs/nfs-utils -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/ChangeLog,v 1.174 2010/10/08 19:48:08 vapier Exp $ - -*nfs-utils-1.2.3 (08 Oct 2010) - - 08 Oct 2010; Mike Frysinger +nfs-utils-1.2.3.ebuild: - Version bump #339288. - - 19 Sep 2010; Mike Frysinger nfs-utils-1.2.2-r2.ebuild: - Fix multilib dir handling with backed up /var/lib/nfs. - - 07 Aug 2010; Mike Frysinger files/nfs.initd: - Port logic over for detecting rpc.gssd needs in nfs init.d script #330795 by - Jared. - - 02 Aug 2010; Diego E. Pettenò files/nfs.initd: - Only require rpc.svcgssd if sec=krb is used rather than sec=sys (default). - Thanks to Jared in bug #330795. - - 26 Jul 2010; Diego E. Pettenò files/nfs.initd: - Fix nfs init script dependency generation for kerberos exports. - -*nfs-utils-1.2.2-r2 (23 Jul 2010) - - 23 Jul 2010; Diego E. Pettenò - +nfs-utils-1.2.2-r2.ebuild, +files/nfs-utils-1.2.2-nfsv4.patch: - Fix configure script when enabling NFSv4 and Kerberos, some tests would - have been skipped. - - 28 Jun 2010; Mike Frysinger files/nfsmount.initd: - Fix idmapd/gssd dep calculation with nfs mounts #324725 by Михаил. - -*nfs-utils-1.2.2-r1 (20 Apr 2010) - - 20 Apr 2010; Mike Frysinger - +nfs-utils-1.2.2-r1.ebuild, +files/nfs-utils-1.2.2-optional-libcap.patch: - Make libcap support optional via USE=caps #314777. - - 20 Apr 2010; Mike Frysinger nfs-utils-1.2.2.ebuild: - Disable tests since they require no rpc.statd to be running on the system - beforehand #315573 by Pacho Ramos. - -*nfs-utils-1.2.2 (11 Apr 2010) - - 11 Apr 2010; Mike Frysinger +nfs-utils-1.2.2.ebuild: - Version bump #314603 by Tim Harder. - - 31 Mar 2010; nfs-utils-1.1.4-r1.ebuild, - nfs-utils-1.1.5.ebuild, nfs-utils-1.1.6.ebuild, nfs-utils-1.1.6-r1.ebuild, - nfs-utils-1.2.0.ebuild, nfs-utils-1.2.1.ebuild: - - elibc_glibc has to be defined in IUSE= for profiles that are unable to - use.force that flag bug #312085 - - 22 Nov 2009; Sven Wegener nfs-utils-1.2.1.ebuild: - Use src_configure and src_prepare for EAPI-2 compliance, this should fix - bug #294082. - -*nfs-utils-1.2.1 (22 Nov 2009) - - 22 Nov 2009; Mike Frysinger +nfs-utils-1.2.1.ebuild: - Version bump #293523 by Florian Manschwetus and update kerberos depends - #274793 by Andrew Savchenko. - - 11 Sep 2009; Zac Medico nfs-utils-1.2.0.ebuild: - Move !net-nds/portmap out of DEPEND, as per bug #108449, comment #4. - - 25 Aug 2009; Mike Frysinger - -files/nfs-utils-1.1.2-rpcgen-ioctl.patch, nfs-utils-1.1.4-r1.ebuild, - +files/nfs-utils-1.1.4-rpcgen-ioctl.patch, nfs-utils-1.1.5.ebuild, - nfs-utils-1.1.6.ebuild, nfs-utils-1.1.6-r1.ebuild: - Update rpcgen ioctl patch to reflect changes in upstream. - -*nfs-utils-1.2.0 (02 Jun 2009) - - 02 Jun 2009; Mike Frysinger +nfs-utils-1.2.0.ebuild: - Version bump. - - 30 May 2009; Mike Frysinger nfs-utils-1.1.6-r1.ebuild, - files/nfs.confd, files/nfs.initd: - Have nfs init.d depend on rpc.idmapd by default when USE=nfsv4, but allow - people to disable it via conf.d #234132 by roger. - - 30 May 2009; Mike Frysinger - +nfs-utils-1.1.6-r1.ebuild, metadata.xml: - Add support for USE=ipv6 #261926, switch to rpcbind over portmap, switch - to libtirpc all the time, and make nfs3/nfs4 optional. - -*nfs-utils-1.1.6-r1 (30 May 2009) - - 30 May 2009; Mike Frysinger - +nfs-utils-1.1.6-r1.ebuild: - Add support for USE=ipv6 #261926, switch to rpcbind over portmap, switch - to libtirpc all the time, and make nfs3/nfs4 optional. - -*nfs-utils-1.1.6 (09 May 2009) - - 09 May 2009; Mike Frysinger +nfs-utils-1.1.6.ebuild: - Version bump. - - 25 Mar 2009; Raúl Porcel nfs-utils-1.1.4-r1.ebuild: - arm/ia64/s390/sh/sparc stable wrt #261334 - - 18 Mar 2009; Joseph Jezak nfs-utils-1.1.4-r1.ebuild: - Marked ppc stable for bug #261334. - - 15 Mar 2009; Markus Meier nfs-utils-1.1.4-r1.ebuild: - x86 stable, bug #261334 - - 15 Mar 2009; Brent Baude nfs-utils-1.1.4-r1.ebuild: - Marking nfs-utils-1.1.4-r1 ppc64 for bug 261334 - - 14 Mar 2009; Mike Frysinger files/rpc.idmapd.initd: - Add a warning upon failure that DNOTIFY is needed #261697 by Pacho Ramos. - - 11 Mar 2009; Tobias Klausmann - nfs-utils-1.1.4-r1.ebuild: - Stable on alpha, bug #261334 - - 10 Mar 2009; Dawid Węgliński nfs-utils-1.1.4-r1.ebuild: - Stable on amd64 (bug #261334) - -*nfs-utils-1.1.5 (06 Mar 2009) - - 06 Mar 2009; Mike Frysinger +nfs-utils-1.1.5.ebuild: - Version bump. - - 06 Mar 2009; Jeroen Roovers nfs-utils-1.1.4-r1.ebuild: - Stable for HPPA (bug #261334). - - 27 Feb 2009; Mike Frysinger files/nfs.initd: - Fixup bashism in init.d script #260149 by Timothy Redaelli. - -*nfs-utils-1.1.4-r1 (31 Jan 2009) - - 31 Jan 2009; Mike Frysinger - +files/nfs-utils-1.1.4-ascii-man.patch, - +files/nfs-utils-1.1.4-mtab-sym.patch, - +files/nfs-utils-1.1.4-no-exec.patch, +nfs-utils-1.1.4-r1.ebuild: - Add some fixes from Debian and push out init.d fixes. - - 31 Jan 2009; Mike Frysinger files/nfs.initd: - Also use rpc.nfsd to try to shutdown nfsd #228127 by Maurice Volaski. - - 31 Jan 2009; Mike Frysinger files/rpc.statd.initd: - Make sure stop() works even if rpc.statd is dead so init.d doesnt fake - stop silently. - - 31 Jan 2009; Mike Frysinger files/nfs.initd: - Add /proc/fs/nfs -> /proc/fs/nfsd fix again. - - 31 Jan 2009; Mike Frysinger files/nfs.initd: - Restart rpc.idmapd if nfsd is a module #220747 by Jochen Radmacher. - - 30 Dec 2008; Friedrich Oslage - nfs-utils-1.1.3.ebuild: - Stable on sparc, security bug #242696 - - 09 Nov 2008; Mike Frysinger nfs-utils-1.1.4.ebuild: - Always own /etc/exports from now on #246021 by Ian Kelling. - - 08 Nov 2008; Raúl Porcel nfs-utils-1.1.3.ebuild: - alpha/ia64 stable wrt #242696 - - 02 Nov 2008; Tobias Scherbaum - nfs-utils-1.1.3.ebuild: - ppc stable, bug #242696 - - 30 Oct 2008; Jeroen Roovers nfs-utils-1.1.3.ebuild: - Stable for HPPA (bug #242696). - - 28 Oct 2008; Brent Baude nfs-utils-1.1.3.ebuild: - Marking nfs-utils-1.1.3 ppc64 for bug 242696 - - 27 Oct 2008; Markus Meier nfs-utils-1.1.3.ebuild: - amd64/x86 stable, bug #242696 - - 26 Oct 2008; Mike Frysinger files/rpc.gssd.initd, - files/rpc.idmapd.initd, +files/rpc.pipefs.initd, files/rpc.svcgssd.initd, - nfs-utils-1.0.12-r5.ebuild, nfs-utils-1.1.0-r1.ebuild, - nfs-utils-1.1.1.ebuild, nfs-utils-1.1.1-r1.ebuild, nfs-utils-1.1.2.ebuild, - nfs-utils-1.1.2-r1.ebuild, nfs-utils-1.1.3.ebuild, nfs-utils-1.1.4.ebuild: - Split rpc.pipefs mounting into its own init.d script so we handle parallel - execution properly #238593 by Michele Schiavo. - - 26 Oct 2008; Mike Frysinger nfs-utils-1.1.4.ebuild: - Force newer libnfsidmap as it provides idmapd.conf #243066. - -*nfs-utils-1.1.4 (18 Oct 2008) - - 18 Oct 2008; Mike Frysinger +nfs-utils-1.1.4.ebuild: - Version bump. - -*nfs-utils-1.1.3 (16 Aug 2008) - - 16 Aug 2008; Mike Frysinger files/rpc.gssd.initd, - files/rpc.svcgssd.initd, +nfs-utils-1.1.3.ebuild: - Version bump. Fix arg passing for gssd binaries #232387 by Michele - Schiavo. Depend on e2fsprogs-libs for libblkid #221773 by Triffid Hunter. - - 16 Aug 2008; Doug Goldstein metadata.xml: - add GLEP 56 USE flag desc from use.local.desc - -*nfs-utils-1.1.2-r1 (04 May 2008) - - 04 May 2008; Mike Frysinger - +files/nfs-utils-1.1.2-mount-eacces.patch, files/nfs.initd, - files/nfsmount.initd, files/rpc.gssd.initd, files/rpc.idmapd.initd, - files/rpc.svcgssd.initd, +nfs-utils-1.1.2-r1.ebuild: - Dont bother checking for config anymore #219495 by Davide Pesavento. Load - sunrpc module if rpc_pipefs is not available #219566 by Martin von Gagern. - Add change from Fedora to exit immediately upon perm denied errors when - mounting #219729 by Stefaan De Roeck. - - 21 Apr 2008; Mike Frysinger files/nfsmount.initd: - Use non-common awk exit values so that the default exit values dont trigger - false positives #218713 by Paolo Pedroni. - - 21 Apr 2008; Mike Frysinger files/rpc.gssd.initd, - files/rpc.svcgssd.initd: - Fix typo in start() func in new gssd init.d scripts as pointed out by Ryan - Tandy #218665. - - 20 Apr 2008; Diego Pettenò nfs-utils-1.1.2.ebuild: - Fix building without kerberos and with nonfsv4 USE flag enabled. See bug - #218595. - - 20 Apr 2008; Mike Frysinger - +files/nfs-utils-1.1.2-rpcgen-ioctl.patch, nfs-utils-1.1.2.ebuild: - Make sure rpcgen includes sys/ioctl.h #174393. - -*nfs-utils-1.1.2 (20 Apr 2008) - - 20 Apr 2008; Mike Frysinger +nfs-utils-1.1.2.ebuild: - Version bump. - -*nfs-utils-1.1.1-r1 (20 Apr 2008) - - 20 Apr 2008; Mike Frysinger - +nfs-utils-1.1.1-r1.ebuild: - Push out accumulated changes. - - 20 Apr 2008; Mike Frysinger files/nfs.initd, - files/rpc.gssd.initd, +files/rpc.svcgssd.initd, - nfs-utils-1.0.12-r5.ebuild, nfs-utils-1.1.0-r1.ebuild, - nfs-utils-1.1.1.ebuild: - Split the gssd and svcgssd init.d scripts #186037 by Paul B. Henson. - - 20 Apr 2008; Mike Frysinger nfs-utils-1.1.1.ebuild: - Only leverage kerberos when USE="-nonfsv4" #212160. - - 20 Apr 2008; Mike Frysinger files/nfsmount.initd: - Fix nfs4/idmapd detection #213384 by Marek Szuba. - - 14 Jan 2008; Mike Frysinger files/nfs.initd, - files/nfsmount.initd: - Until newer baselayout stabilizes, only use config() when it exists #203906. - - 08 Jan 2008; Raúl Porcel nfs-utils-1.1.0-r1.ebuild: - alpha/ia64/sparc stable wrt #201552 - - 08 Jan 2008; Jeroen Roovers nfs-utils-1.1.0-r1.ebuild: - Stable for HPPA (bug #201552). - - 30 Dec 2007; Mike Frysinger files/nfs.initd, - files/nfsmount.initd: - Make sure /etc/exports and /etc/fstab exist to account for the stupid cases - of running these init.d scripts without anything useful to do. - - 30 Dec 2007; Samuli Suominen nfs-utils-1.1.0-r1.ebuild: - amd64 stable wrt #201552 - - 29 Dec 2007; nixnut nfs-utils-1.1.0-r1.ebuild: - Stable on ppc wrt bug 201552 - - 29 Dec 2007; Mike Frysinger files/nfsmount.initd: - Make sure we check for "nfs" and not "nfsd" when doing client filesystem setup. - -*nfs-utils-1.1.1 (29 Dec 2007) - - 29 Dec 2007; Mike Frysinger files/nfs.initd, - files/rpc.gssd.initd, files/rpc.idmapd.initd, files/rpc.statd.initd, - +nfs-utils-1.1.1.ebuild: - Version bump #197336 by Francisco Javier. Tweak nfs init.d needs based on - exportfs #172431. Only mount nfsd fs in nfs init.d script. Mount rpc_pipefs - in rpc.idmapd and rpc.gssd after making sure the dir exists #180425 by - Maurice Volaski. - - 29 Dec 2007; Mike Frysinger files/rpc.statd.initd: - Look up the full path of rpc.statd to avoid matching the init.d script - #203646 by legate. - - 15 Oct 2007; Markus Rothe nfs-utils-1.1.0-r1.ebuild: - Stable on ppc64 - - 21 Sep 2007; Christian Faulhammer - nfs-utils-1.1.0-r1.ebuild: - stable x86, bug 190182 - -*nfs-utils-1.1.0-r1 (15 Sep 2007) -*nfs-utils-1.0.12-r1 (15 Sep 2007) -*nfs-utils-1.0.12-r5 (15 Sep 2007) - - 15 Sep 2007; Mike Frysinger - +nfs-utils-1.0.12-r1.ebuild, +nfs-utils-1.0.12-r5.ebuild, - +nfs-utils-1.1.0-r1.ebuild: - Force bumpage for versions to clean up libgssglue nightmare #191746. - - 23 Aug 2007; Joshua Kinard nfs-utils-1.0.12-r3.ebuild: - Stable on mips. - -*nfs-utils-1.0.12-r4 (16 Aug 2007) - - 16 Aug 2007; Mike Frysinger files/nfs.initd, - files/nfsmount.initd, +nfs-utils-1.0.12-r4.ebuild: - Only force kerb init.d scripts when the NFSv4 mount needs it #180428 by - Maurice Volaski. Load the nfs module in the nfsmount client script, not - nfsd. - - 13 May 2007; Mike Frysinger nfs-utils-1.1.0.ebuild: - Make sure we pull in >=app-crypt/libgssapi-0.11 #178217 by Markus Ullmann. - -*nfs-utils-1.1.0 (12 May 2007) - - 12 May 2007; Mike Frysinger files/nfs.initd, - files/nfsmount.initd, files/rpc.gssd.initd, files/rpc.idmapd.initd, - files/rpc.statd.initd, +nfs-utils-1.1.0.ebuild: - Version bump. - - 06 May 2007; Marius Mauch nfs-utils-1.0.6-r6.ebuild: - Replacing einfo with elog - - 07 Apr 2007; Mike Frysinger nfs-utils-1.0.12-r3.ebuild: - Bind rpc.gssd install to USE=kerberos rather than USE=!nonfsv4 - #172431 by emerald. - -*nfs-utils-1.0.12-r3 (02 Apr 2007) - - 02 Apr 2007; Roy Marples files/nfs.initd, - files/rpc.gssd.initd, files/rpc.idmapd.initd, files/rpc.statd.initd, - +nfs-utils-1.0.12-r3.ebuild: - Remove some bashisms and support baselayout-2 restart option. - - 27 Mar 2007; Chris Gianelloni - nfs-utils-1.0.12.ebuild: - Stable on alpha/amd64 wrt bug #172133. - - 26 Mar 2007; Gustavo Zacarias - nfs-utils-1.0.12.ebuild: - Stable on sparc wrt #172133 - - 26 Mar 2007; Jeroen Roovers nfs-utils-1.0.12.ebuild: - Stable for HPPA (bug #172133). - - 26 Mar 2007; Alec Warner nfs-utils-1.0.6-r6.ebuild, - nfs-utils-1.0.7-r2.ebuild, nfs-utils-1.0.9.ebuild, - nfs-utils-1.0.10.ebuild, nfs-utils-1.0.12.ebuild, - nfs-utils-1.0.12-r1.ebuild, nfs-utils-1.0.12-r2.ebuild: - Remove dependency on portage: ref bug 162516 - -*nfs-utils-1.0.12-r2 (25 Mar 2007) - - 25 Mar 2007; Mike Frysinger files/nfs.confd, - +files/nfs.initd, +files/nfsmount.initd, +files/rpc.gssd.initd, - +files/rpc.idmapd.initd, +files/rpc.statd.initd, - +nfs-utils-1.0.12-r2.ebuild: - Split init.d scripts up so client/server configurations are handled properly - #101624 by Tim Hobbs. Special thanks to Daniel Burr and Thomas Bettler. - - 25 Mar 2007; Tobias Scherbaum - nfs-utils-1.0.12.ebuild: - Stable on ppc wrt bug #172133. - - 25 Mar 2007; Andrej Kacian nfs-utils-1.0.12.ebuild: - Stable on x86, bug #172133. - - 25 Mar 2007; Markus Rothe nfs-utils-1.0.12.ebuild: - Stable on ppc64; bug #172133 - - 24 Mar 2007; Mike Frysinger files/nfs: - Mount nfsd filesystem at /proc/fs/nfsd rather than /proc/fs/nfs #172019. - -*nfs-utils-1.0.12-r1 (24 Mar 2007) - - 24 Mar 2007; Mike Frysinger - +files/nfs-utils-1.0.12-mountd-memleak.patch, +nfs-utils-1.0.12-r1.ebuild: - Grab fix from upstream for memleak in mountd #172014 by Bardur Arantsson. - - 21 Mar 2007; Chris Gianelloni - nfs-utils-1.0.10.ebuild: - Stable on amd64 wrt bug #167664. - - 16 Mar 2007; nixnut nfs-utils-1.0.10.ebuild: - Stable on ppc wrt bug 167664 - -*nfs-utils-1.0.12 (27 Feb 2007) - - 27 Feb 2007; Mike Frysinger +nfs-utils-1.0.12.ebuild: - Version bump. - - 23 Feb 2007; Markus Rothe nfs-utils-1.0.10.ebuild: - Stable on ppc64; bug #167664 - - 23 Feb 2007; Christian Faulhammer - nfs-utils-1.0.10.ebuild: - stable x86; bug 167664 - - 10 Jan 2007; Roy Marples files/nfs: - Use --name for s-s-d starting nfsd so baselayout-1.13 correctly finds it. - - 05 Jan 2007; Diego Pettenò - nfs-utils-1.0.6-r6.ebuild: - Remove gnuconfig inherit. - - 28 Dec 2006; Gustavo Zacarias - nfs-utils-1.0.10.ebuild: - Stable on sparc - - 04 Dec 2006; Jeroen Roovers nfs-utils-1.0.10.ebuild: - Stable for HPPA. - - 23 Oct 2006; Mike Frysinger - +files/nfs-utils-1.0.10-uts-release.patch, nfs-utils-1.0.10.ebuild: - Fix building with linux-headers-2.6.18+. - - 21 Oct 2006; Aron Griffis nfs-utils-1.0.10.ebuild: - Mark 1.0.10 stable on alpha/ia64 - -*nfs-utils-1.0.10 (22 Aug 2006) - - 22 Aug 2006; Mike Frysinger +nfs-utils-1.0.10.ebuild: - Version bump. - -*nfs-utils-1.0.9 (16 Jul 2006) - - 16 Jul 2006; Mike Frysinger +nfs-utils-1.0.9.ebuild: - Version bump. - -*nfs-utils-1.0.8 (10 Jun 2006) - - 10 Jun 2006; Mike Frysinger +nfs-utils-1.0.8.ebuild: - Version bump #136038 by Mario Fetka. - - 09 Mar 2006; Mike Frysinger - +files/nfs-utils-1.0.7-no-stripping.patch, nfs-utils-1.0.7-r2.ebuild: - Let portage strip binaries. - - 29 Jan 2006; Mike Frysinger - +files/nfs-utils-1.0.6-usn36.patch, -files/nfs-utils-1.0.6-usn36.patch.gz, - nfs-utils-1.0.6-r6.ebuild: - Uncompress patch #120673 by Simon Stelling. - -*nfs-utils-1.0.7-r2 (08 Oct 2005) - - 08 Oct 2005; Mike Frysinger - +files/nfs-utils-1.0.7-man-pages.patch, files/nfs, files/nfs.confd, - +nfs-utils-1.0.7-r2.ebuild: - Add support for starting/stopping gssd daemons #108276 and installing their - config files. Also tweak the man-pages SEE ALSO #107991. - - 23 Mar 2005; Jeremy Huddleston files/nfsmount: - Corrected init script to use 'svc_stop; svc_start' and not 'stop; start'. - - 15 Mar 2005; Seemant Kulleen - nfs-utils-1.0.7-r1.ebuild: - add kerberos to IUSE - -*nfs-utils-1.0.7-r1 (15 Mar 2005) - - 15 Mar 2005; Mike Frysinger files/nfs, - files/nfs.confd, -nfs-utils-1.0.7.ebuild, +nfs-utils-1.0.7-r1.ebuild: - Add support for integrated idmapd #71607 by Keith M Wesolowski. - -*nfs-utils-1.0.7 (04 Feb 2005) - - 04 Feb 2005; Aron Griffis +nfs-utils-1.0.7.ebuild: - Bump to 1.0.7. New local USE-flag nfsv4 since that pulls in mit-krb5 which - has its own problems - - 15 Jan 2005; Robin H. Johnson : - Fix digest, bug #78168. - - 15 Jan 2005; +files/nfs-utils-1.0.6-uclibc.patch, - nfs-utils-1.0.6-r6.ebuild: - - getrpcbynumber_r is not in the SuSv3 spec. disable it for uClibc - - 11 Dec 2004; Markus Rothe nfs-utils-1.0.6-r6.ebuild: - Stable on ppc64; bug #72113 - - 11 Dec 2004; Joseph Jezak nfs-utils-1.0.6-r6.ebuild: - Marked ppc stable for bug #72113. - - 10 Dec 2004; Guy Martin nfs-utils-1.0.6-r6.ebuild: - Stable on hppa. - - 07 Dec 2004; Hardave Riar nfs-utils-1.0.6-r6.ebuild: - Stable on mips, bug #72113 - - 07 Dec 2004; Bryan Østergaard - nfs-utils-1.0.6-r6.ebuild: - Stable on alpha, bug 72113. - - 06 Dec 2004; Karol Wojtaszek - nfs-utils-1.0.6-r6.ebuild: - Stable on amd64, bug #72113 - - 06 Dec 2004; Olivier Crete nfs-utils-1.0.6-r6.ebuild: - Stable on x86 wrt security bug 72113 - - 06 Dec 2004; Gustavo Zacarias - nfs-utils-1.0.6-r6.ebuild: - Stable on sparc wrt #72113 - - 06 Dec 2004; nfs-utils-1.0.6-r6.ebuild: - Added ubuntu's DOS vulnerability patch. fixes #72113 - - 05 Dec 2004; Jason Wever nfs-utils-1.0.6-r5.ebuild: - Stable on sparc wrt security bug #72113. - - 05 Dec 2004; Bryan Østergaard - nfs-utils-1.0.6-r5.ebuild: - Stable on alpha, bug 72113. - - 04 Dec 2004; Hardave Riar nfs-utils-1.0.6-r5.ebuild: - Stable on mips, bug #72113 - - 04 Dec 2004; Markus Rothe nfs-utils-1.0.6-r5.ebuild: - Stable on ppc64; bug #72113 - - 04 Dec 2004; Mike Doty nfs-utils-1.0.6-r5.ebuild: - stable on amd64 per #72113 - -*nfs-utils-1.0.6-r5 (22 Nov 2004) - - 22 Nov 2004; - +files/nfs-utils-0.3.3-rquotad-overflow.patch, +nfs-utils-1.0.6-r5.ebuild: - Security bump for 64bit arches bug #72113 - CAN-2004-0946 - - 07 Nov 2004; Joshua Kinard nfs-utils-1.0.6-r4.ebuild: - Marked stable on mips. - - 01 Nov 2004; Bryan Østergaard - nfs-utils-1.0.6-r4.ebuild: - Stable on alpha. - - 19 Oct 2004; Dylan Carlson - nfs-utils-1.0.6-r4.ebuild: - Stable on amd64. - - 09 Oct 2004; Christian Birchinger - nfs-utils-1.0.6-r4.ebuild: - Added sparc stable keyword - - 23 Jul 2004; Jeremy Huddleston files/nfsmount: - Added 'use ypbind' to nfsmount script to close bug #28195. - -*nfs-utils-1.0.6-r4 (07 Jul 2004) - - 07 Jul 2004; Aron Griffis files/nfs-5, - -nfs-utils-1.0.6-r3.ebuild, +nfs-utils-1.0.6-r4.ebuild: - Set a default timeout of 30 seconds in case EXPORTFSTIMEOUT is unset in - conf.d/nfs - - 25 Jun 2004; Danny van Dyk nfs-utils-1.0.6.ebuild: - Marked stable on amd64. - -*nfs-utils-1.0.6-r3 (11 Jun 2004) - - 11 Jun 2004; Mike Frysinger : - While i'm here, might as well fix more things :P. - Run make for the depend target so that we can then build everything - else in parallel. Add tweakable exportfs timeout to nfs init script - #37004 by Vlastimil Holer. Enable the '--enable-secure-statd' option - by default (seems to work fine on my nfs3 machines) #49444 by Juergen - Nagel. Make sure the emtpy state dirs dont get autocleaned #30522 by - Brave Cobra. - -*nfs-utils-1.0.6-r2 (08 Jun 2004) - - 08 Jun 2004; Mike Frysinger +files/nfs-4, - +nfs-utils-1.0.6-r2.ebuild: - Add support for NFSv4 #25106 by Michael Locher. - - 11 May 2004; Michael McCabe nfs-utils-1.0.6-r1.ebuild: - Added s390 keywords - - 13 Apr 2004; Joshua Kinard nfs-utils-1.0.6-r1.ebuild: - Marked stable on mips. - - 11 Mar 2004; Lars Weiler nfs-utils-1.0.6.ebuild: - stable on ppc - - 07 Mar 2004; Tom Gall nfs-utils-1.0.6-r1.ebuild: - stable on ppc64 - - 06 Mar 2004; Ilya A. Volynets-Evenbakh : - mark as ~mips - - 06 Mar 2004; Joshua Kinard nfs-utils-1.0.5-r1.ebuild, - nfs-utils-1.0.6-r1.ebuild: - Added ~mips to KEYWORDS. - -*nfs-utils-1.0.6-r1 (30 Jan 2004) - - 30 Jan 2004; Daniel Robbins nfs-utils-1.0.6-r1.ebuild: - Add a new ebuild (currently unmasked for ~x86 and ~amd64 only) that mounts - the nfsd filesystem to /proc/fs/nfs to provide robust exports handling for - 2.6 kernels. (See /usr/src/linux/Documentation/Changes in a 2.6 kernel source - tree for more information on this.) I needed this fix for mountd to support - nfs version 3 on my server with a 2.6 kernel. Also changed default - "restarting" behavior to "yes," which seems to be what most users will want. - This ebuild is not in stable on any arch, so nfs-team, please let me know - what you think of these changes. - - 15 Jan 2004; Aron Griffis nfs-utils-1.0.6.ebuild: - Fix bug 30486 by refraining from overwriting /var/lib/nfs/* - - 14 Jan 2004; Martin Holzer files/nfs.confd: - removing quota entry from conf.d - - 05 Jan 2004; zhen metadata.xml: - adding to net-fs herd - - 28 Dec 2003; Guy Martin nfs-utils-1.0.6.ebuild: - Marked stable on hppa. - - 02 Nov 2003; Daniel Robbins nfs-utils-1.0.6.ebuild: - added util-linux RDEPEND to ensure "mount" command it up-to-date. (See - nfs-utils README.) - - 22 Oct 2003; Martin Holzer nfs-utils-1.0.5-r1.ebuild, - nfs-utils-1.0.6.ebuild: - adding RESTRICT="nomirror" - - 03 Oct 2003; Christian Birchinger nfs-utils-1.0.6.ebuild: - Added sparc stable keyword - -*nfs-utils-1.0.6 (18 Sep 2003) - - 18 Sep 2003; Martin Holzer nfs-utils-1.0.6.ebuild: - Version bumped. - -*nfs-utils-1.0.5-r1 (19 Jul 2003) - - 26 Jul 2003; Stefan Jones files/nfs-2: - Fixed waiting on exportfs to finish. Use wait $pidofexportfs ( let kill - finish in background ) Speedups of 29secs! - - 19 Jul 2003; Aron Griffis nfs-utils-1.0.5-r1.ebuild, - files/nfs-2: - Change exportfs timeouts from 5 seconds to 30 seconds to prevent prematurely - killing exportfs - - 19 Jul 2003; Daniel Ahlberg nfs-utils-1.0.5.ebuild : - Security update, unmasking. - -*nfs-utils-1.0.5 (19 Jul 2003) - - 19 Jul 2003; Don Seiler ; nfs-utils-1.0.4.ebuild, - nfs-utils-1.0.5.ebuild: - Version bumped and v1.0.4 deleted due to bugs that are fixed in 1.0.5 - -*nfs-utils-1.0.4 (17 Jul 2003) - - 17 Jul 2003; Martin Holzer nfs-utils-1.0.4.ebuild: - Version bumped. - - 21 May 2003; Christian Birchinger nfs-utils-1.0.3.ebuild: - Added sparc stable keyword - - 16 May 2003; Martin Holzer nfs-utils-1.0.3.ebuild: - Marked as stable - -*nfs-utils-1.0.3 (27 Mar 2003) - - 21 Jun 2003; Guy martin nfs-utils-1.0.3.ebuild : - Marked stable on hppa. - - 17 Apr 2003; Guy Martin nfs-utils-1.0.3.ebuild : - Added ~hppa to KEYWORDS. - - 27 Mar 2003; Brandon Low nfs-utils-1.0.3.ebuild: - Bump to latest released today - -*nfs-utils-1.0.1-r1 (03 Mar 2003) - - 30 Mar 2003; Christian Birchinger - nfs-utils-1.0.1-r1.ebuild: - Added sparc stable keyword - - 13 Mar 2003; Zach Welch nfs-utils-1.0.1-r1.ebuild: - add arm keyword - - 03 Mar 2003; Aron Griffis nfs-utils-1.0.1-r1.ebuild, - files/nfs-1: - Fix bug 16075 by installing server binaries into /usr/sbin (thanks Tero - Pelander for the clue and the updated ebuild). Fix bug 13838 by using - rpc.rquotad from the quota package instead of the nfs-utils version (thanks - Andrea Barisani for the heads-up). Finally, mark stable on x86 and alpha - where I can test as part of the package upgrade phase. - -*nfs-utils-1.0.1 (12 Dec 2002) - - 12 Dec 2002; Brad Cowan : - - Added options to config file thanks to Cardoe and j2ee. - - 06 Dec 2002; Rodney Rees : changed sparc ~sparc keywords - -*nfs-utils-1.0.1 (13 Oct 2002) - - 07 Dec 2002; Jack Morgan nfs-utils-1.0.1.ebuild : - Changed ~sparc64 to ~sparc keyword - - 13 Oct 2002; Brad Cowan nfs-utils-1.0.1.ebuild, - files/digest-nfs-utils-1.0.1 : - - Version bump thanks to j2ee. - -*nfs-utils-0.3.3-r1 (24 Apr 2002) - - 16 Sep 2002; Maarten Thibaut nfs-utils-0.3.3-r1.ebuild : - Adding sparc/sparc64 keywords. - - 22 Jul 2002; Kyle Manna nfs-utils-0.3.3-r1.ebuild : - Parallel make fails sometimes. Replaced emake with make. - - 24 Apr 2002; Daniel Robbins : Some rc script fixes - (removal of NFSSERVER) and cleanups in the ebuild, removal of old ebuilds and - old files in /files - -*nfs-utils-0.3.3 (1 Feb 2002) - - 1 Feb 2002; G.Bevin ChangeLog : - Added initial ChangeLog which should be updated whenever the package is - updated in any way. This changelog is targetted to users. This means that the - comments should well explained and written in clean English. The details about - writing correct changelogs are explained in the skel.ChangeLog file which you - can find in the root directory of the portage repository. diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/Manifest b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/Manifest deleted file mode 100644 index 2a36e02710..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST nfs-utils-1.2.3.tar.bz2 672759 RMD160 dad6fe83fa60c4854849e36d2128208c4e3234ab SHA1 da70a29191b07056d71b6e427a87d5cfd8628523 SHA256 5575ece941097cbfa67fbe0d220dfa11b73f5e6d991e7939c9339bd72259ff19 diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/exports b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/exports deleted file mode 100644 index 5102ef27c1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/exports +++ /dev/null @@ -1 +0,0 @@ -# /etc/exports: NFS file systems being exported. See exports(5). diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-ascii-man.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-ascii-man.patch deleted file mode 100644 index 83ed4aa426..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-ascii-man.patch +++ /dev/null @@ -1,16 +0,0 @@ -ripped from Debian - -http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493659 -patch by nbreen@ofb.net (Nicholas Breen) - ---- nfs-utils-1.1.3/utils/mount/nfs.man -+++ nfs-utils-1.1.3/utils/mount/nfs.man -@@ -799,7 +799,7 @@ - and server load. - .P - However, UDP can be quite effective in specialized settings where --the network’s MTU is large relative to NFS’s data transfer size (such -+the network's MTU is large relative to NFS's data transfer size (such - as network environments that enable jumbo Ethernet frames). In such - environments, trimming the - .B rsize diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch deleted file mode 100644 index c9e60afc74..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch +++ /dev/null @@ -1,39 +0,0 @@ -ripped from Debian - ---- nfs-utils-1.1.4/utils/mount/fstab.c -+++ nfs-utils-1.1.4/utils/mount/fstab.c -@@ -57,7 +57,7 @@ mtab_does_not_exist(void) { - return var_mtab_does_not_exist; - } - --static int -+int - mtab_is_a_symlink(void) { - get_mtab_info(); - return var_mtab_is_a_symlink; ---- nfs-utils-1.1.4/utils/mount/fstab.h -+++ nfs-utils-1.1.4/utils/mount/fstab.h -@@ -7,6 +7,7 @@ - #define _PATH_FSTAB "/etc/fstab" - #endif - -+int mtab_is_a_symlink(void); - int mtab_is_writable(void); - int mtab_does_not_exist(void); - void reset_mtab_info(void); ---- nfs-utils-1.1.4/utils/mount/mount.c -+++ nfs-utils-1.1.4/utils/mount/mount.c -@@ -230,6 +230,13 @@ create_mtab (void) { - int flags; - mntFILE *mfp; - -+ /* Avoid writing if the mtab is a symlink to /proc/mounts, since -+ that would create a file /proc/mounts in case the proc filesystem -+ is not mounted, and the fchmod below would also fail. */ -+ if (mtab_is_a_symlink()) { -+ return EX_SUCCESS; -+ } -+ - lock_mtab(); - - mfp = nfs_setmntent (MOUNTED, "a+"); diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-no-exec.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-no-exec.patch deleted file mode 100644 index ea50a21d85..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-no-exec.patch +++ /dev/null @@ -1,15 +0,0 @@ -ripped from Debian - ---- nfs-utils-1.1.2/utils/mount/mount.c -+++ nfs-utils-1.1.2/utils/mount/mount.c -@@ -381,10 +381,6 @@ - mount_error(NULL, mount_point, ENOTDIR); - return 1; - } -- if (access(mount_point, X_OK) < 0) { -- mount_error(NULL, mount_point, errno); -- return 1; -- } - - return 0; - } diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-rpcgen-ioctl.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-rpcgen-ioctl.patch deleted file mode 100644 index 176541845e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.1.4-rpcgen-ioctl.patch +++ /dev/null @@ -1,13 +0,0 @@ -http://bugs.gentoo.org/174393 - ---- tools/rpcgen/rpc_main.c -+++ tools/rpcgen/rpc_main.c -@@ -548,7 +548,7 @@ - f_print(fout, "#include /* TIOCNOTTY */\n"); - #else - if( !tirpcflag ) -- f_print(fout, "#include /* TIOCNOTTY */\n"); -+ f_print(fout, "#include /* TIOCNOTTY */\n"); - #endif - if( Cflag && (inetdflag || pmflag ) ) { - f_print(fout, "#ifdef __cplusplus\n"); diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.2-nfsv4.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.2-nfsv4.patch deleted file mode 100644 index cef774fe4b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.2-nfsv4.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: nfs-utils-1.2.2/configure.ac -=================================================================== ---- nfs-utils-1.2.2.orig/configure.ac -+++ nfs-utils-1.2.2/configure.ac -@@ -81,7 +81,7 @@ AC_ARG_ENABLE(nfsv41, - if test "$enable_nfsv41" = yes; then - AC_DEFINE(NFS41_SUPPORTED, 1, [Define this if you want NFSv41 support compiled in]) - else -- enable_nfsv4= -+ enable_nfsv41= - fi - AC_SUBST(enable_nfsv41) - AM_CONDITIONAL(CONFIG_NFSV41, [test "$enable_nfsv41" = "yes"]) diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.2-optional-libcap.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.2-optional-libcap.patch deleted file mode 100644 index eb8ce44d59..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.2-optional-libcap.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 655f6933b5db66c560098d039e3c91812399beca Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Tue, 20 Apr 2010 04:45:35 -0400 -Subject: [PATCH] make capabilities support optional - -The new code using libcap is quite minor, so rather than always reqiure -libcap support, make it a normal --enable type flag. Current default -behavior is retained -- if libcap is found, it is enabled, else it is -disabled like every nfs-utils version in the past. - -URL: https://bugs.gentoo.org/314777 -Signed-off-by: Mike Frysinger ---- - aclocal/libcap.m4 | 18 +++++++++++++----- - support/nsm/file.c | 4 ++++ - 2 files changed, 17 insertions(+), 5 deletions(-) - -diff --git a/aclocal/libcap.m4 b/aclocal/libcap.m4 -index eabe507..68a624c 100644 ---- a/aclocal/libcap.m4 -+++ b/aclocal/libcap.m4 -@@ -5,11 +5,19 @@ AC_DEFUN([AC_LIBCAP], [ - dnl look for prctl - AC_CHECK_FUNC([prctl], , ) - -- dnl look for the library; do not add to LIBS if found -- AC_CHECK_LIB([cap], [cap_get_proc], [LIBCAP=-lcap], ,) -- AC_SUBST(LIBCAP) -+ AC_ARG_ENABLE([caps], -+ [AS_HELP_STRING([--disable-caps], [Disable capabilities support])]) -+ -+ LIBCAP= -+ -+ if test "x$enable_caps" != "xno" ; then -+ dnl look for the library; do not add to LIBS if found -+ AC_CHECK_LIB([cap], [cap_get_proc], [LIBCAP=-lcap], ,) - -- AC_CHECK_HEADERS([sys/capability.h], , -- [AC_MSG_ERROR([libcap headers not found.])]) -+ AC_CHECK_HEADERS([sys/capability.h], , -+ [test "x$enable_caps" = "xyes" && AC_MSG_ERROR([libcap headers not found.])]) -+ fi -+ -+ AC_SUBST(LIBCAP) - - ])dnl -diff --git a/support/nsm/file.c b/support/nsm/file.c -index d469219..f4baeb9 100644 ---- a/support/nsm/file.c -+++ b/support/nsm/file.c -@@ -67,7 +67,9 @@ - #endif - - #include -+#ifdef HAVE_SYS_CAPABILITY_H - #include -+#endif - #include - #include - -@@ -347,6 +349,7 @@ nsm_is_default_parentdir(void) - static _Bool - nsm_clear_capabilities(void) - { -+#ifdef HAVE_SYS_CAPABILITY_H - cap_t caps; - - caps = cap_from_text("cap_net_bind_service=ep"); -@@ -362,6 +365,7 @@ nsm_clear_capabilities(void) - } - - (void)cap_free(caps); -+#endif - return true; - } - --- -1.7.0.2 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.3-cross-compile.patch b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.3-cross-compile.patch deleted file mode 100644 index 7b70b63fa4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs-utils-1.2.3-cross-compile.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff -urN nfs-utils-1.1.2.orig/tools/locktest/Makefile.am nfs-utils-1.1.2/tools/locktest/Makefile.am ---- nfs-utils-1.1.2.orig/tools/locktest/Makefile.am 2009-03-03 17:33:48.000000000 +0200 -+++ nfs-utils-1.1.2/tools/locktest/Makefile.am 2009-03-03 18:12:59.000000000 +0200 -@@ -1,12 +1,8 @@ - ## Process this file with automake to produce Makefile.in - --CC=$(CC_FOR_BUILD) - LIBTOOL = @LIBTOOL@ --tag=CC - - noinst_PROGRAMS = testlk - testlk_SOURCES = testlk.c --testlk_CFLAGS=$(CFLAGS_FOR_BUILD) --testlk_CPPFLAGS=$(CPPFLAGS_FOR_BUILD) --testlk_LDFLAGS=$(LDFLAGS_FOR_BUILD) - - MAINTAINERCLEANFILES = Makefile.in -diff -urN nfs-utils-1.1.2.orig/tools/rpcdebug/Makefile.am nfs-utils-1.1.2/tools/rpcdebug/Makefile.am ---- nfs-utils-1.1.2.orig/tools/rpcdebug/Makefile.am 2009-03-03 17:33:48.000000000 +0200 -+++ nfs-utils-1.1.2/tools/rpcdebug/Makefile.am 2009-03-03 18:30:27.000000000 +0200 -@@ -1,6 +1,5 @@ - ## Process this file with automake to produce Makefile.in - --CC=$(CC_FOR_BUILD) - LIBTOOL = @LIBTOOL@ --tag=CC - - man8_MANS = rpcdebug.man -@@ -8,8 +7,5 @@ - - sbin_PROGRAMS = rpcdebug - rpcdebug_SOURCES = rpcdebug.c --rpcdebug_CFLAGS=$(CFLAGS_FOR_BUILD) --rpcdebug_CPPFLAGS=$(CPPFLAGS_FOR_BUILD) -I$(top_srcdir)/support/include --rpcdebug_LDFLAGS=$(LDFLAGS_FOR_BUILD) - - MAINTAINERCLEANFILES = Makefile.in -diff -urN nfs-utils-1.1.2.orig/tools/rpcgen/Makefile.am nfs-utils-1.1.2/tools/rpcgen/Makefile.am ---- nfs-utils-1.1.2.orig/tools/rpcgen/Makefile.am 2009-03-03 17:33:48.000000000 +0200 -+++ nfs-utils-1.1.2/tools/rpcgen/Makefile.am 2009-03-03 18:13:10.000000000 +0200 -@@ -1,6 +1,5 @@ - ## Process this file with automake to produce Makefile.in - --CC=$(CC_FOR_BUILD) - LIBTOOL = @LIBTOOL@ --tag=CC - - noinst_PROGRAMS = rpcgen -@@ -9,10 +8,6 @@ - rpc_util.c rpc_sample.c rpc_output.h rpc_parse.h \ - rpc_scan.h rpc_util.h - --rpcgen_CFLAGS=$(CFLAGS_FOR_BUILD) --rpcgen_CPPLAGS=$(CPPFLAGS_FOR_BUILD) --rpcgen_LDFLAGS=$(LDFLAGS_FOR_BUILD) -- - MAINTAINERCLEANFILES = Makefile.in - - EXTRA_DIST = rpcgen.new.1 diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs.confd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs.confd deleted file mode 100644 index ad9e34f2a9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs.confd +++ /dev/null @@ -1,34 +0,0 @@ -# /etc/conf.d/nfs - -# If you wish to set the port numbers for lockd, -# please see /etc/sysctl.conf - -# Optional services to include in default `/etc/init.d/nfs start` -# For NFSv4 users, you'll want to add "rpc.idmapd" here. -NFS_NEEDED_SERVICES="" - -# Number of servers to be started up by default -OPTS_RPC_NFSD="8" - -# Options to pass to rpc.mountd -# ex. OPTS_RPC_MOUNTD="-p 32767" -OPTS_RPC_MOUNTD="" - -# Options to pass to rpc.statd -# ex. OPTS_RPC_STATD="-p 32765 -o 32766" -OPTS_RPC_STATD="" - -# Options to pass to rpc.idmapd -OPTS_RPC_IDMAPD="" - -# Options to pass to rpc.gssd -OPTS_RPC_GSSD="" - -# Options to pass to rpc.svcgssd -OPTS_RPC_SVCGSSD="" - -# Options to pass to rpc.rquotad (requires sys-fs/quota) -OPTS_RPC_RQUOTAD="" - -# Timeout (in seconds) for exportfs -EXPORTFS_TIMEOUT=30 diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs.initd deleted file mode 100755 index b8e292caf1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfs.initd +++ /dev/null @@ -1,162 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/nfs.initd,v 1.22 2010/08/07 21:13:02 vapier Exp $ - -opts="reload" - -# This variable is used for controlling whether or not to run exportfs -ua; -# see stop() for more information -restarting=no - -# The binary locations -exportfs=/usr/sbin/exportfs - mountd=/usr/sbin/rpc.mountd - nfsd=/usr/sbin/rpc.nfsd -smnotify=/usr/sbin/sm-notify - -depend() { - local myneed="" - if [ -e /etc/exports ] ; then - # XXX: no way to detect NFSv4 is desired and so need rpc.idmapd - myneed="${myneed} $( - awk '!/^[[:space:]]*#/ { - # clear the path to avoid spurious matches - $1 = ""; - if ($0 ~ /[(][^)]*sec=(krb|spkm)[^)]*[)]/) { - print "rpc.gssd" - exit 0 - } - }' /etc/exports - )" - fi - config /etc/exports - need portmap rpc.statd ${myneed} ${NFS_NEEDED_SERVICES} - use ypbind net dns rpc.rquotad rpc.idmapd rpc.svcgssd - after quota -} - -mkdir_nfsdirs() { - local d - for d in rpc_pipefs v4recovery v4root ; do - d="/var/lib/nfs/${d}" - [ ! -d "${d}" ] && mkdir -p "${d}" - done -} - -waitfor_exportfs() { - local pid=$1 - ( sleep ${EXPORTFS_TIMEOUT:-30}; kill -9 $pid 2>/dev/null ) & - wait $1 -} - -mount_nfsd() { - if [ -e /proc/modules ] ; then - # Make sure nfs support is loaded in the kernel #64709 - if ! grep -qs nfsd /proc/filesystems ; then - modprobe -q nfsd - fi - # Restart idmapd if needed #220747 - if grep -qs nfsd /proc/modules ; then - killall -q -HUP rpc.idmapd - fi - fi - - # This is the new "kernel 2.6 way" to handle the exports file - if grep -qs nfsd /proc/filesystems ; then - if ! grep -qs "nfsd /proc/fs/nfsd" /proc/mounts ; then - ebegin "Mounting nfsd filesystem in /proc" - mount -t nfsd -o nodev,noexec,nosuid nfsd /proc/fs/nfsd - eend $? - fi - fi -} - -start_it() { - ebegin "Starting NFS $1" - shift - "$@" - eend $? - ret=$((ret + $?)) -} -start() { - mount_nfsd - mkdir_nfsdirs - - # Exportfs likes to hang if networking isn't working. - # If that's the case, then try to kill it so the - # bootup process can continue. - if grep -qs '^[[:space:]]*/' /etc/exports ; then - ebegin "Exporting NFS directories" - ${exportfs} -r & - waitfor_exportfs $! - eend $? - fi - - local ret=0 - start_it mountd ${mountd} ${OPTS_RPC_MOUNTD} - start_it daemon ${nfsd} ${OPTS_RPC_NFSD} - [ -x "${smnotify}" ] && start_it smnotify ${smnotify} ${OPTS_SMNOTIFY} - return ${ret} -} - -stop() { - local ret=0 - - # Don't check NFSSERVER variable since it might have changed, - # instead use --oknodo to smooth things over - ebegin "Stopping NFS mountd" - start-stop-daemon --stop --oknodo --exec ${mountd} - eend $? - ret=$((ret + $?)) - - # nfsd sets its process name to [nfsd] so don't look for $nfsd - ebegin "Stopping NFS daemon" - start-stop-daemon --stop --oknodo --name nfsd --user root --signal 2 - eend $? - ret=$((ret + $?)) - # in case things don't work out ... #228127 - rpc.nfsd 0 - - # When restarting the NFS server, running "exportfs -ua" probably - # isn't what the user wants. Running it causes all entries listed - # in xtab to be removed from the kernel export tables, and the - # xtab file is cleared. This effectively shuts down all NFS - # activity, leaving all clients holding stale NFS filehandles, - # *even* when the NFS server has restarted. - # - # That's what you would want if you were shutting down the NFS - # server for good, or for a long period of time, but not when the - # NFS server will be running again in short order. In this case, - # then "exportfs -r" will reread the xtab, and all the current - # clients will be able to resume NFS activity, *without* needing - # to umount/(re)mount the filesystem. - if [ "${restarting}" = no -o "${RC_CMD}" = "restart" ] ; then - ebegin "Unexporting NFS directories" - # Exportfs likes to hang if networking isn't working. - # If that's the case, then try to kill it so the - # shutdown process can continue. - ${exportfs} -ua & - waitfor_exportfs $! - eend $? - fi - - return ${ret} -} - -reload() { - # Exportfs likes to hang if networking isn't working. - # If that's the case, then try to kill it so the - # bootup process can continue. - ebegin "Reloading /etc/exports" - ${exportfs} -r 1>&2 & - waitfor_exportfs $! - eend $? -} - -restart() { - # See long comment in stop() regarding "restarting" and exportfs -ua - restarting=yes - svc_stop - svc_start -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfsmount.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfsmount.initd deleted file mode 100755 index 62bf0284b7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/nfsmount.initd +++ /dev/null @@ -1,48 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/nfsmount.initd,v 1.14 2010/06/28 21:03:11 vapier Exp $ - -[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs - -depend() { - local myneed="" - if [ -e /etc/fstab ] ; then - myneed="${myneed} $( - awk '!/^[[:space:]]*#/ && ($3 == "nfs" || $3 == "nfs4") { - if ($3 == "nfs4") - idmapd = "rpc.idmapd" - if ($4 ~ /sec=(krb|spkm)/) - gssd = "rpc.gssd" - } - END { print idmapd " " gssd } - ' /etc/fstab - )" - fi - config /etc/fstab - need net portmap rpc.statd ${myneed} - use ypbind dns rpc.idmapd rpc.gssd -} - -start() { - if [ -x /usr/sbin/sm-notify ] ; then - ebegin "Starting NFS sm-notify" - /usr/sbin/sm-notify ${OPTS_SMNOTIFY} - eend $? - fi - - # Make sure nfs support is loaded in the kernel #64709 - if [ -e /proc/modules ] && ! grep -qs 'nfs$' /proc/filesystems ; then - modprobe -q nfs - fi - - ebegin "Mounting NFS filesystems" - mount -a -t nfs,nfs4 - eend $? -} - -stop() { - ebegin "Unmounting NFS filesystems" - umount -a -t nfs,nfs4 - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.gssd.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.gssd.initd deleted file mode 100755 index f1b8f87745..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.gssd.initd +++ /dev/null @@ -1,24 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/rpc.gssd.initd,v 1.11 2008/10/26 09:02:47 vapier Exp $ - -[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs - -depend() { - use ypbind net - need portmap rpc.pipefs - after quota -} - -start() { - ebegin "Starting gssd" - start-stop-daemon --start --exec /usr/sbin/rpc.gssd -- ${OPTS_RPC_GSSD} - eend $? -} - -stop() { - ebegin "Stopping gssd" - start-stop-daemon --stop --exec /usr/sbin/rpc.gssd - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.idmapd.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.idmapd.initd deleted file mode 100755 index 52838b5da7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.idmapd.initd +++ /dev/null @@ -1,26 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/rpc.idmapd.initd,v 1.8 2009/03/14 18:43:18 vapier Exp $ - -[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs - -rpc_bin=/usr/sbin/rpc.idmapd - -depend() { - use ypbind net - need portmap rpc.pipefs - after quota -} - -start() { - ebegin "Starting idmapd" - ${rpc_bin} ${OPTS_RPC_IDMAPD} - eend $? "make sure DNOTIFY support is enabled ..." -} - -stop() { - ebegin "Stopping idmapd" - start-stop-daemon --stop --exec ${rpc_bin} - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.pipefs.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.pipefs.initd deleted file mode 100644 index 701ac77892..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.pipefs.initd +++ /dev/null @@ -1,24 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/rpc.pipefs.initd,v 1.1 2008/10/26 09:02:47 vapier Exp $ - -mount_pipefs() { - # if rpc_pipefs is not available, try to load sunrpc for it #219566 - grep -qs rpc_pipefs /proc/filesystems || modprobe -q sunrpc - # if still not available, let's bail - grep -qs rpc_pipefs /proc/filesystems || return 1 - - # now just do it for kicks - mkdir -p /var/lib/nfs/rpc_pipefs - mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs -} - -start() { - # if things are already mounted, let's just return - grep -qs "rpc_pipefs /var/lib/nfs/rpc_pipefs" /proc/mounts && return 0 - - ebegin "Mounting RPC pipefs" - mount_pipefs - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.statd.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.statd.initd deleted file mode 100755 index 14f8b34db6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.statd.initd +++ /dev/null @@ -1,33 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/rpc.statd.initd,v 1.7 2009/01/31 22:16:11 vapier Exp $ - -[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs - -rpc_bin=/sbin/rpc.statd -rpc_pid=/var/run/rpc.statd.pid - -depend() { - use ypbind net - need portmap - after quota -} - -start() { - # Don't start rpc.statd if already started by someone else ... - # Don't try and kill it if it's already dead ... - if killall -q -0 ${rpc_bin} ; then - return 0 - fi - - ebegin "Starting NFS statd" - start-stop-daemon --start --exec ${rpc_bin} -- --no-notify ${OPTS_RPC_STATD} - eend $? -} - -stop() { - ebegin "Stopping NFS statd" - start-stop-daemon --stop --exec ${rpc_bin} --pidfile /var/run/rpc.statd.pid - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.svcgssd.initd b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.svcgssd.initd deleted file mode 100755 index 74383e24db..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/files/rpc.svcgssd.initd +++ /dev/null @@ -1,24 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/rpc.svcgssd.initd,v 1.5 2008/10/26 09:02:47 vapier Exp $ - -[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs - -depend() { - use ypbind net - need portmap rpc.pipefs - after quota -} - -start() { - ebegin "Starting svcgssd" - start-stop-daemon --start --exec /usr/sbin/rpc.svcgssd -- ${OPTS_RPC_SVCGSSD} - eend $? -} - -stop() { - ebegin "Stopping svcgssd" - start-stop-daemon --stop --exec /usr/sbin/rpc.svcgssd - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/metadata.xml b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/metadata.xml deleted file mode 100644 index 91d9c189da..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/metadata.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - -net-fs - NFS client and server daemons - - Enable support for NFSv3 - Enable support for NFSv4 - Disable support for NFSv4 - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/nfs-utils-1.2.3.ebuild b/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/nfs-utils-1.2.3.ebuild deleted file mode 100644 index e097cd162c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-fs/nfs-utils/nfs-utils-1.2.3.ebuild +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/nfs-utils-1.2.3.ebuild,v 1.1 2010/10/08 19:48:08 vapier Exp $ - -EAPI="2" - -inherit eutils flag-o-matic multilib - -DESCRIPTION="NFS client and server daemons" -HOMEPAGE="http://linux-nfs.org/" -SRC_URI="mirror://sourceforge/nfs/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86" -IUSE="caps ipv6 kerberos +nfsv3 +nfsv4 tcpd elibc_glibc" -RESTRICT="test" #315573 - -# kth-krb doesn't provide the right include -# files, and nfs-utils doesn't build against heimdal either, -# so don't depend on virtual/krb. -# (04 Feb 2005 agriffis) -DEPEND_COMMON="tcpd? ( sys-apps/tcp-wrappers ) - caps? ( sys-libs/libcap ) - sys-libs/e2fsprogs-libs - net-nds/rpcbind - net-libs/libtirpc - nfsv4? ( - >=dev-libs/libevent-1.0b - >=net-libs/libnfsidmap-0.21-r1 - kerberos? ( - net-libs/librpcsecgss - net-libs/libgssglue - net-libs/libtirpc[kerberos] - app-crypt/mit-krb5 - ) - )" -RDEPEND="${DEPEND_COMMON} !net-nds/portmap" -# util-linux dep is to prevent man-page collision -DEPEND="${DEPEND_COMMON} - >=sys-apps/util-linux-2.12r-r7" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-1.2.3-cross-compile.patch -} - -src_configure() { - econf \ - --with-statedir=/var/lib/nfs \ - --with-tirpcinclude=${ROOT}/usr/include/tirpc \ - --enable-tirpc \ - $(use_with tcpd tcp-wrappers) \ - $(use_enable nfsv3) \ - $(use_enable nfsv4) \ - $(use_enable ipv6) \ - $(use_enable caps) \ - $(use nfsv4 && use_enable kerberos gss || echo "--disable-gss") -} - -src_compile() { - if tc-is-cross-compiler; then - emake CC=$(tc-getCC) || die "Failed to compile" - else - emake || die "Failed to compile" - fi -} - -src_install() { - emake DESTDIR="${D}" install || die - - # Don't overwrite existing xtab/etab, install the original - # versions somewhere safe... more info in pkg_postinst - keepdir /var/lib/nfs/{,sm,sm.bak} - mv "${D}"/var/lib "${D}"/usr/$(get_libdir) || die - - # Install some client-side binaries in /sbin - dodir /sbin - mv "${D}"/usr/sbin/rpc.statd "${D}"/sbin/ || die - - dodoc ChangeLog README - docinto linux-nfs ; dodoc linux-nfs/* - - insinto /etc - doins "${FILESDIR}"/exports - - local f list="" opt_need="" - if use nfsv4 ; then - opt_need="rpc.idmapd" - list="${list} rpc.idmapd rpc.pipefs" - use kerberos && list="${list} rpc.gssd rpc.svcgssd" - fi - for f in nfs nfsmount rpc.statd ${list} ; do - newinitd "${FILESDIR}"/${f}.initd ${f} || die "doinitd ${f}" - done - newconfd "${FILESDIR}"/nfs.confd nfs - dosed "/^NFS_NEEDED_SERVICES=/s:=.*:=\"${opt_need}\":" /etc/conf.d/nfs #234132 - - # uClibc doesn't provide rpcgen like glibc, so lets steal it from nfs-utils - if ! use elibc_glibc ; then - dobin tools/rpcgen/rpcgen || die "rpcgen" - newdoc tools/rpcgen/README README.rpcgen - fi -} - -pkg_postinst() { - # Install default xtab and friends if there's none existing. In - # src_install we put them in /usr/lib/nfs for safe-keeping, but - # the daemons actually use the files in /var/lib/nfs. #30486 - local f - for f in "${ROOT}"/usr/$(get_libdir)/nfs/*; do - [[ -e ${ROOT}/var/lib/nfs/${f##*/} ]] && continue - einfo "Copying default ${f##*/} from /usr/$(get_libdir)/nfs to /var/lib/nfs" - cp -pPR "${f}" "${ROOT}"/var/lib/nfs/ - done -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-libs/libqmi/libqmi-0.0.1-r7.ebuild b/sdk_container/src/third_party/coreos-overlay/net-libs/libqmi/libqmi-0.0.1-r7.ebuild deleted file mode 100644 index 65cb7dbea2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-libs/libqmi/libqmi-0.0.1-r7.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# Based on gentoo's modemmanager ebuild - -EAPI="4" -CROS_WORKON_COMMIT="40cdaccf673aec850816cdd1b535c5ab3a1f3bf7" -CROS_WORKON_TREE="860a508ab8dba4e63abecc47b2d67b3b906f6301" -CROS_WORKON_PROJECT="chromiumos/third_party/libqmi" - -inherit eutils autotools cros-workon - -DESCRIPTION="QMI modem protocol helper library" -HOMEPAGE="http://cgit.freedesktop.org/libqmi/" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="doc static-libs test" - -RDEPEND=">=dev-libs/glib-2.32" -DEPEND="${RDEPEND} - doc? ( dev-util/gtk-doc ) - virtual/pkgconfig" - -src_prepare() { - gtkdocize - eautoreconf -} - -src_configure() { - econf \ - $(use_enable static{-libs,}) \ - $(use_with doc{,s}) \ - $(use_with test{,s}) -} - -src_install() { - default - use static-libs || rm -f "${ED}"/usr/$(get_libdir)/libqmi-glib.la -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-libs/libqmi/libqmi-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/net-libs/libqmi/libqmi-9999.ebuild deleted file mode 100644 index 34ec9c6ddd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-libs/libqmi/libqmi-9999.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# Based on gentoo's modemmanager ebuild - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/third_party/libqmi" - -inherit eutils autotools cros-workon - -DESCRIPTION="QMI modem protocol helper library" -HOMEPAGE="http://cgit.freedesktop.org/libqmi/" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="doc static-libs test" - -RDEPEND=">=dev-libs/glib-2.32" -DEPEND="${RDEPEND} - doc? ( dev-util/gtk-doc ) - virtual/pkgconfig" - -src_prepare() { - gtkdocize - eautoreconf -} - -src_configure() { - econf \ - $(use_enable static{-libs,}) \ - $(use_with doc{,s}) \ - $(use_with test{,s}) -} - -src_install() { - default - use static-libs || rm -f "${ED}"/usr/$(get_libdir)/libqmi-glib.la -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/ChangeLog b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/ChangeLog deleted file mode 100644 index e4d2cfb46f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/ChangeLog +++ /dev/null @@ -1,177 +0,0 @@ -# ChangeLog for net-misc/htpdate -# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/htpdate/ChangeLog,v 1.41 2009/06/19 22:08:34 ranger Exp $ - - 19 Jun 2009; Brent Baude htpdate-1.0.4.ebuild: - keyworded ~arch for ppc64, bug 272590 - - 16 Jun 2009; Tobias Klausmann htpdate-1.0.4.ebuild: - Keyworded on alpha, bug #272769 - - 07 Mar 2009; Jeremy Olexa htpdate-1.0.4.ebuild: - amd64 stable, bug 254417 - - 21 Feb 2009; Jeroen Roovers htpdate-1.0.4.ebuild: - Stable for HPPA (bug #254417). - - 20 Feb 2009; Raúl Porcel htpdate-1.0.4.ebuild: - arm/s390/sh/x86 stable wrt #254417 - - 10 Jan 2009; Tobias Scherbaum - -htpdate-0.9.2.ebuild, -htpdate-0.9.3.ebuild, htpdate-1.0.4.ebuild: - ppc stable, bug #254417 - -*htpdate-1.0.4 (23 Oct 2008) - - 23 Oct 2008; Tobias Scherbaum - +htpdate-1.0.4.ebuild: - Version bump, #243294 - - 28 Mar 2008; Jeroen Roovers htpdate-1.0.0.ebuild: - Stable for HPPA (bug #214724). - - 13 Mar 2008; Santiago M. Mola htpdate-1.0.0.ebuild: - amd64 stable - - 02 Aug 2007; Raúl Porcel htpdate-1.0.0.ebuild: - x86 stable - - 10 Jun 2007; Tobias Scherbaum - htpdate-1.0.0.ebuild: - ppc stable - - 06 Apr 2007; Tobias Scherbaum - htpdate-0.9.3.ebuild: - ppc stable - -*htpdate-1.0.0 (25 Mar 2007) - - 25 Mar 2007; Tobias Scherbaum - -htpdate-0.9.0.ebuild, +htpdate-1.0.0.ebuild: - version bump - - 17 Mar 2007; Steve Dibb htpdate-0.9.2.ebuild, - htpdate-0.9.3.ebuild: - amd64 stable - - 13 Mar 2007; Raúl Porcel htpdate-0.9.3.ebuild: - x86 stable - - 22 Feb 2007; Piotr Jaroszyński ChangeLog: - Transition to Manifest2. - -*htpdate-0.9.3 (26 Dec 2006) - - 26 Dec 2006; Tobias Scherbaum - -htpdate-0.9.1-r1.ebuild, +htpdate-0.9.3.ebuild: - Version bump, Cleanup - - 15 Jul 2006; Tobias Scherbaum - htpdate-0.9.2.ebuild: - ppc and hppa stable - -*htpdate-0.9.2 (08 Jun 2006) - - 08 Jun 2006; Tobias Scherbaum - +htpdate-0.9.2.ebuild: - Version bump - - 08 Jun 2006; Tobias Scherbaum - htpdate-0.9.1-r1.ebuild: - ppc and hppa stable - - 10 Apr 2006; Tobias Scherbaum -files/ppc.patch, - -htpdate-0.8.2.ebuild, -htpdate-0.8.7.ebuild, -htpdate-0.8.8.ebuild, - -htpdate-0.9.1.ebuild: - Remove old ebuilds. - - 10 Apr 2006; Andrej Kacian htpdate-0.9.0.ebuild: - Stable on x86, bug #129317. - - 09 Apr 2006; Tobias Scherbaum - htpdate-0.9.0.ebuild: - hppa stable, bug #129317 - - 09 Apr 2006; Tobias Scherbaum - htpdate-0.9.0.ebuild: - ppc stable - -*htpdate-0.9.1-r1 (09 Apr 2006) - - 09 Apr 2006; Tobias Scherbaum +files/htpdate.conf, - +files/htpdate.init, +htpdate-0.9.1-r1.ebuild: - Added Initscript to run htpdate as a daemon - - 25 Mar 2006; Danny van Dyk htpdate-0.9.0.ebuild: - Marked stable on amd64. - -*htpdate-0.9.1 (25 Mar 2006) - - 25 Mar 2006; Tobias Scherbaum - +htpdate-0.9.1.ebuild: - Version bump, thanks to Christian Hartmann for notifying me - - 07 Jan 2006; Tobias Scherbaum - htpdate-0.9.0.ebuild: - Reintroduce Changes now know as Changelog, fixes bug #117413 - - 02 Jan 2006; Tobias Scherbaum - htpdate-0.9.0.ebuild: - Remove CHANGES file, thanks Danny ! - -*htpdate-0.9.0 (22 Dec 2005) - - 22 Dec 2005; Tobias Scherbaum - +htpdate-0.9.0.ebuild: - Version bump - -*htpdate-0.8.8 (03 Dec 2005) - - 03 Dec 2005; Tobias Scherbaum - +htpdate-0.8.8.ebuild: - Version bump - - 03 Dec 2005; Tobias Scherbaum - htpdate-0.8.7.ebuild: - Marked 0.8.7 as ppc stable. - - 17 Sep 2005; Tobias Scherbaum - htpdate-0.8.7.ebuild: - Added ~hppa Keyword - - 15 Sep 2005; Tobias Scherbaum - htpdate-0.8.2.ebuild, htpdate-0.8.7.ebuild: - Re-added ~ppc keyword for 0.8.7, marked 0.8.2 stable on all archs. - -*htpdate-0.8.7 (07 Sep 2005) - - 07 Sep 2005; Markus Nigbur +htpdate-0.8.7.ebuild: - Version bump. - - 30 Jul 2005; Sven Wegener htpdate-0.8.2.ebuild: - Modified to apply patches in src_unpack() - - 02 Jul 2005; Tobias Scherbaum - htpdate-0.8.2.ebuild: - Added to ~amd64. - - 01 Jul 2005; Tobias Scherbaum +files/ppc.patch, - htpdate-0.8.2.ebuild: - Fixed endianess problem. Thanks to Danny van Dyk - . - Marked ~ppc. - - 23 Jun 2005; Sven Wegener htpdate-0.8.2.ebuild: - Added cross-compile support. Trim whitespace. Pass CFLAGS in a better way. - - 22 Jun 2005; Tobias Scherbaum - htpdate-0.8.2.ebuild: - Was keyworded ppc by a mistake. Removed the keyword. - It is currently known to be broken on ppc machines. - -*htpdate-0.8.2 (22 Jun 2005) - - 22 Jun 2005; Tobias Scherbaum +metadata.xml, - +htpdate-0.8.2.ebuild: - Initial ebuild thanks to Christian Hartmann in #96364. - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/Manifest b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/Manifest deleted file mode 100644 index 7f22045b39..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST htpdate-1.0.0.tar.gz 13856 RMD160 e9f8072525345e703283f7f72a1d4e0f0fe1ab71 SHA1 063f6d36b16fb4e2b7255590d2c6c78bc8907333 SHA256 7bc3ab8a3437c90af2b8ac7b72fcf61101045e71bf83f354f0e091b93616c8a5 -DIST htpdate-1.0.4.tar.gz 16474 RMD160 037f84db34ccc2ad66d2cde68ece60d68db7ec04 SHA1 e86d383e25452ef88695526c1d4851e89fa84bb5 SHA256 8c59b3f66a429eb3be038f66eb9f942398fca9002fe2c3f027010c815f91dedd diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-64bit_limits.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-64bit_limits.patch deleted file mode 100644 index 32d53476e4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-64bit_limits.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff --git a/htpdate.c b/htpdate.c -index 7524ce2..aa66e9f 100644 ---- a/htpdate.c -+++ b/htpdate.c -@@ -67,7 +67,7 @@ - #define URLSIZE 128 - #define BUFFERSIZE 1024 - --#define ERR_TIMESTAMP 0x7FFFFFFF /* Err fetching date in getHTTPdate */ -+#define ERR_TIMESTAMP LONG_MAX /* Err fetching date in getHTTPdate */ - - #define sign(x) (x < 0 ? (-1) : 1) - -@@ -82,8 +82,8 @@ static int waitfornw = 0; - static int recvdvalidresp = 0; - - /* Insertion sort is more efficient (and smaller) than qsort for small lists */ --static void insertsort( int a[], int length ) { -- int i, j, value; -+static void insertsort( long a[], int length ) { -+ long i, j, value; - - for ( i = 1; i < length; i++ ) { - value = a[i]; -@@ -535,14 +535,14 @@ int main( int argc, char *argv[] ) { - char *user = NULL, *userstr = NULL, *group = NULL; - long long sumtimes; - double timeavg, drift = 0; -- int timedelta[MAX_HTTP_HOSTS], timestamp; -- int numservers, validtimes, goodtimes, mean; -+ long timedelta[MAX_HTTP_HOSTS], timestamp; -+ long numservers, validtimes, goodtimes, mean; - int nap = 0, when = 500000, precision = 0; - int setmode = 0, burstmode = 0, try, offsetdetect; - int i, burst, param; - int daemonize = 0; - int ipversion = DEFAULT_IP_VERSION; -- int timelimit = DEFAULT_TIME_LIMIT; -+ long timelimit = DEFAULT_TIME_LIMIT; - int minsleep = DEFAULT_MIN_SLEEP; - int maxsleep = DEFAULT_MAX_SLEEP; - int sleeptime = minsleep; -@@ -608,7 +608,7 @@ int main( int argc, char *argv[] ) { - setmode = 2; - break; - case 't': /* disable "sanity" time check */ -- timelimit = 2100000000; -+ timelimit = LONG_MAX - 1; - break; - case 'u': /* drop root privileges and run as user */ - user = (char *)optarg; diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-all_headers.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-all_headers.patch deleted file mode 100644 index 1e95bdd58a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-all_headers.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/htpdate.c b/htpdate.c -index d0e7fbb..adf351f 100644 ---- a/htpdate.c -+++ b/htpdate.c -@@ -65,7 +65,7 @@ - #define MAX_ATTEMPT 2 /* Poll attempts */ - #define DEFAULT_PID_FILE "/var/run/htpdate.pid" - #define URLSIZE 128 --#define BUFFERSIZE 1024 -+#define BUFFERSIZE 8192 - - #define ERR_TIMESTAMP LONG_MAX /* Err fetching date in getHTTPdate */ - -@@ -246,7 +246,7 @@ static long getHTTPdate( char *host, char *port, char *proxy, char *proxyport, c - /* Receive data from the web server - The return code from recv() is the number of bytes received - */ -- buffer_size = recv(server_s, buffer, BUFFERSIZE - 1, 0); -+ buffer_size = recv(server_s, buffer, BUFFERSIZE - 1, MSG_WAITALL); - if ( buffer_size >= 0 ) { - /* NUL terminate the string data. */ - buffer[buffer_size] = '\0'; diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-checkagainstbuildtime.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-checkagainstbuildtime.patch deleted file mode 100644 index 06013b8f0e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-checkagainstbuildtime.patch +++ /dev/null @@ -1,78 +0,0 @@ -diff -ruN htpdate/htpdate.c htpdate.new/htpdate.c ---- htpdate/htpdate.c 2010-10-13 17:19:57.000000000 -0700 -+++ new/htpdate.c 2010-10-13 17:16:06.000000000 -0700 -@@ -301,9 +301,23 @@ static long getHTTPdate( char *host, cha - return 0; - } - -+static int is_before_build_time(time_t time) -+{ -+ time_t build_time; -+ /* Is the given time before the build time? */ -+ /* If no build date given, default to 0 (01 Jan 1970) */ -+#ifdef BUILD_TIME_UTC -+ build_time = BUILD_TIME_UTC; -+#else -+ build_time = 0; -+#endif -+ return time < build_time; -+} - - static int setclock( double timedelta, int setmode ) { -- struct timeval timeofday; -+ struct timeval timediff; /* Change in time (case 1 */ -+ struct timeval timeofday; /* Actual time of day (case 2) */ -+ double target_time; /* Time to adjust clock to, in sec */ - - if ( timedelta == 0 ) { - printlog( 0, "No time correction needed" ); -@@ -317,8 +331,20 @@ static int setclock( double timedelta, i - return(0); - - case 1: /* Adjust time smoothly */ -- timeofday.tv_sec = (long)timedelta; -- timeofday.tv_usec = (long)((timedelta - timeofday.tv_sec) * 1000000); -+ timediff.tv_sec = (long)timedelta; -+ timediff.tv_usec = (long)((timedelta - timediff.tv_sec) * 1000000); -+ -+ /* Check against build time */ -+ gettimeofday( &timeofday, NULL ); -+ target_time = timedelta + (double)timeofday.tv_sec + 1e-6 * timeofday.tv_usec; -+ -+ timeofday.tv_sec = (long)target_time; -+ timeofday.tv_usec = (long)((target_time - timeofday.tv_sec) * 1000000); -+ -+ if (is_before_build_time(timeofday.tv_sec)) { -+ printlog(1, "Cannot set time to be before build time."); -+ return (-1); -+ } - - printlog( 0, "Adjusting %.3f seconds", timedelta ); - -@@ -327,17 +353,22 @@ static int setclock( double timedelta, i - printlog( 1, "seteuid()" ); - exit(1); - } else { -- return( adjtime(&timeofday, NULL) ); -+ return( adjtime(&timediff, NULL) ); - } - - case 2: /* Set time */ - printlog( 0, "Setting %.3f seconds", timedelta ); - - gettimeofday( &timeofday, NULL ); -- timedelta += ( timeofday.tv_sec + timeofday.tv_usec*1e-6 ); -+ target_time = timedelta + (double)timeofday.tv_sec + 1e-6 * timeofday.tv_usec; - -- timeofday.tv_sec = (long)timedelta; -- timeofday.tv_usec = (long)(timedelta - timeofday.tv_sec) * 1000000; -+ timeofday.tv_sec = (long)target_time; -+ timeofday.tv_usec = (long)((target_time - timeofday.tv_sec) * 1000000); -+ -+ if (is_before_build_time(timeofday.tv_sec)) { -+ printlog(1, "Cannot set time to be before build time."); -+ return (-1); -+ } - - printlog( 0, "Set: %s", asctime(localtime(&timeofday.tv_sec)) ); - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-errorcheckhttpresp.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-errorcheckhttpresp.patch deleted file mode 100644 index 53b42846f1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-errorcheckhttpresp.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- htpdate/htpdate.c 2010-07-23 13:26:43.052392000 -0700 -+++ new_htpdate/htpdate.c 2010-07-23 13:23:28.687877000 -0700 -@@ -157,7 +157,8 @@ - char remote_time[25] = { '\0' }; - char url[URLSIZE] = { '\0' }; - char *pdate = NULL; -- -+ int error = -1; /* used when returning non-zero return values */ -+ - - /* Connect to web server via proxy server or directly */ - memset( &hints, 0, sizeof(hints) ); -@@ -272,6 +273,7 @@ - /* Web server timestamps are without daylight saving */ - tm.tm_isdst = 0; - timevalue.tv_sec = mktime(&tm); -+ error = 0; - } else { - printlog( 1, "%s unknown time format", host ); - } -@@ -293,8 +295,10 @@ - /* Return the time delta between web server time (timevalue) - and system time (timeofday) - */ -- return( timevalue.tv_sec - timeofday.tv_sec + gmtoffset ); -- -+ if (!error) -+ return( timevalue.tv_sec - timeofday.tv_sec + gmtoffset ); -+ else -+ return 0; - } - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-errorsarentsuccess.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-errorsarentsuccess.patch deleted file mode 100644 index 3d642f6383..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-errorsarentsuccess.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- htpdate-1.0.4-cros/htpdate.c 2011-04-07 15:58:17.000000000 -0700 -+++ htpdate-1.0.4/htpdate.c 2011-04-07 21:51:53.000000000 -0700 -@@ -67,6 +67,8 @@ - #define URLSIZE 128 - #define BUFFERSIZE 1024 - -+#define ERR_TIMESTAMP 0x7FFFFFFF /* Err fetching date in getHTTPdate */ -+ - #define sign(x) (x < 0 ? (-1) : 1) - - -@@ -185,7 +187,7 @@ - /* Was the hostname and service resolvable? */ - if ( rc ) { - printlog( 1, "%s host or service unavailable", host ); -- return(0); /* Assume correct time */ -+ return(ERR_TIMESTAMP); - } - - /* Build a combined HTTP/1.0 and 1.1 HEAD request -@@ -218,7 +220,7 @@ - - if ( rc ) { - printlog( 1, "%s connection failed", host ); -- return(0); /* Assume correct time */ -+ return(ERR_TIMESTAMP); - } - - /* Initialize timer */ -@@ -303,7 +305,7 @@ - if (!error) - return( timevalue.tv_sec - timeofday.tv_sec + gmtoffset ); - else -- return 0; -+ return ERR_TIMESTAMP; - } - - static int is_before_build_time(time_t time) -@@ -746,7 +748,9 @@ - try--; - } while ( timestamp && try ); - -- /* Only include valid responses in timedelta[] */ -+ /* Only include valid responses in timedelta[] -+ Note that ERR_TIMESTAMP explicitly can't be valid here. -+ */ - if ( timestamp < timelimit && timestamp > -timelimit ) { - timedelta[validtimes] = timestamp; - validtimes++; diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-oob_date_read.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-oob_date_read.patch deleted file mode 100644 index 6a3e91a5e6..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-oob_date_read.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -ruN htpdate/htpdate.c htpdate.new/htpdate.c ---- htpdate/htpdate.c 2010-11-30 14:53:31.637209639 -0600 -+++ htpdate.new/htpdate.c 2010-11-30 15:48:25.647523022 -0600 -@@ -158,7 +158,7 @@ - char url[URLSIZE] = { '\0' }; - char *pdate = NULL; - int error = -1; /* used when returning non-zero return values */ -- -+ ssize_t buffer_size = 0; - - /* Connect to web server via proxy server or directly */ - memset( &hints, 0, sizeof(hints) ); -@@ -244,8 +244,10 @@ - /* Receive data from the web server - The return code from recv() is the number of bytes received - */ -- if ( recv(server_s, buffer, BUFFERSIZE, 0) != -1 ) { -- -+ buffer_size = recv(server_s, buffer, BUFFERSIZE - 1, 0); -+ if ( buffer_size >= 0 ) { -+ /* NUL terminate the string data. */ -+ buffer[buffer_size] = '\0'; - /* Assuming that network delay (server->htpdate) is neglectable, - the received web server time "should" match the local time. - -@@ -264,9 +266,12 @@ - rtt = ( timeofday.tv_sec - rtt ) * 1000000 + \ - timeofday.tv_usec - when; - -- /* Look for the line that contains Date: */ -- if ( (pdate = strstr(buffer, "Date: ")) != NULL ) { -+ /* Look for the line that contains Date: and has enough data. */ -+ pdate = strstr(buffer, "Date: "); -+ /* strlen("Date: ...") must be >= 11. */ -+ if ( pdate != NULL && strlen(pdate) >= 11 ) { - strncpy(remote_time, pdate + 11, 24); -+ remote_time[24] = '\0'; - recvdvalidresp = 1; - - if ( strptime( remote_time, "%d %b %Y %T", &tm) != NULL) { diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-relative_path.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-relative_path.patch deleted file mode 100644 index 09b1949c97..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-relative_path.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff --git a/htpdate.c b/htpdate.c -index aa66e9f..d0e7fbb 100644 ---- a/htpdate.c -+++ b/htpdate.c -@@ -146,7 +146,7 @@ static void printlog( int is_error, char *format, ... ) { - } - - --static long getHTTPdate( char *host, char *port, char *proxy, char *proxyport, char *httpversion, int ipversion, int when ) { -+static long getHTTPdate( char *host, char *port, char *proxy, char *proxyport, char *relpath, char *httpversion, int ipversion, int when ) { - int server_s; - int rc; - struct addrinfo hints, *res, *res0; -@@ -196,7 +196,7 @@ static long getHTTPdate( char *host, char *port, char *proxy, char *proxyport, c - Connection: close, allows the server the immediately close the - connection after sending the response. - */ -- snprintf(buffer, BUFFERSIZE, "HEAD %s/ HTTP/1.%s\r\nHost: %s\r\nUser-Agent: htpdate/"VERSION"\r\nPragma: no-cache\r\nCache-Control: no-cache\r\nConnection: close\r\n\r\n", url, httpversion, host); -+ snprintf(buffer, BUFFERSIZE, "HEAD %s/%s HTTP/1.%s\r\nHost: %s\r\nUser-Agent: htpdate/"VERSION"\r\nPragma: no-cache\r\nCache-Control: no-cache\r\nConnection: close\r\n\r\n", url, relpath, httpversion, host); - - /* Loop through the available canonical names */ - res = res0; -@@ -433,7 +433,7 @@ static void showhelp() { - puts("htpdate version "VERSION"\n\ - Usage: htpdate [-046abdhlqstxD] [-i pid file] [-m minpoll] [-M maxpoll]\n\ - [-p precision] [-P [:port]] [-u user[:group]]\n\ -- ...\n\n\ -+ [-r relative/path] ...\n\n\ - -0 HTTP/1.0 request\n\ - -4 Force IPv4 name resolution only\n\ - -6 Force IPv6 name resolution only\n\ -@@ -449,6 +449,7 @@ Usage: htpdate [-046abdhlqstxD] [-i pid file] [-m minpoll] [-M maxpoll]\n\ - -p precision (ms)\n\ - -P proxy server\n\ - -q query only, don't make time changes (default)\n\ -+ -r relative path to add the URL for the HTTP request\n\ - -s set time\n\ - -t turn off sanity time check\n\ - -u run daemon as user\n\ -@@ -530,6 +531,7 @@ static void runasdaemon( char *pidfile ) { - int main( int argc, char *argv[] ) { - char *host = NULL, *proxy = NULL, *proxyport = NULL; - char *port; -+ char *relpath = ""; - char *httpversion = DEFAULT_HTTP_VERSION; - char *pidfile = DEFAULT_PID_FILE; - char *user = NULL, *userstr = NULL, *group = NULL; -@@ -557,7 +559,7 @@ int main( int argc, char *argv[] ) { - - - /* Parse the command line switches and arguments */ -- while ( (param = getopt(argc, argv, "046abdhi:lm:p:qstu:wxDM:P:") ) != -1) -+ while ( (param = getopt(argc, argv, "046abdhi:lm:p:qr:stu:wxDM:P:") ) != -1) - switch( param ) { - - case '0': /* HTTP/1.0 */ -@@ -604,6 +606,9 @@ int main( int argc, char *argv[] ) { - break; - case 'q': /* query only */ - break; -+ case 'r': /* relative path for the URL */ -+ relpath = (char *)optarg; -+ break; - case 's': /* set time */ - setmode = 2; - break; -@@ -744,7 +749,7 @@ int main( int argc, char *argv[] ) { - if ( debug ) printlog( 0, "burst: %d try: %d when: %d", \ - burst + 1, MAX_ATTEMPT - try + 1, when ); - timestamp = getHTTPdate( host, port, proxy, proxyport,\ -- httpversion, ipversion, when ); -+ relpath, httpversion, ipversion, when ); - try--; - } while ( timestamp && try ); - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-waitforvalidhttpresp.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-waitforvalidhttpresp.patch deleted file mode 100644 index b98d6da530..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate-1.0.4-waitforvalidhttpresp.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -ruN htpdate/htpdate.c htpdate.new/htpdate.c ---- htpdate/htpdate.c 2010-05-19 11:27:53.000000000 -0700 -+++ htpdate.new/htpdate.c 2010-05-19 11:32:51.000000000 -0700 -@@ -75,6 +75,9 @@ - static int logmode = 0; - static time_t gmtoffset; - -+/* By default do not wait for valid http response to turn off settime */ -+static int waitfornw = 0; -+static int recvdvalidresp = 0; - - /* Insertion sort is more efficient (and smaller) than qsort for small lists */ - static void insertsort( int a[], int length ) { -@@ -263,6 +266,7 @@ - /* Look for the line that contains Date: */ - if ( (pdate = strstr(buffer, "Date: ")) != NULL ) { - strncpy(remote_time, pdate + 11, 24); -+ recvdvalidresp = 1; - - if ( strptime( remote_time, "%d %b %Y %T", &tm) != NULL) { - /* Web server timestamps are without daylight saving */ -@@ -406,6 +410,7 @@ - -s set time\n\ - -t turn off sanity time check\n\ - -u run daemon as user\n\ -+ -w wait for at least one valid http response before turning off set time\n\ - -x adjust kernel clock\n\ - host web server hostname or ip address (maximum of 16)\n\ - port port number (default 80 and 8080 for proxy server)\n"); -@@ -510,7 +515,7 @@ - - - /* Parse the command line switches and arguments */ -- while ( (param = getopt(argc, argv, "046abdhi:lm:p:qstu:xDM:P:") ) != -1) -+ while ( (param = getopt(argc, argv, "046abdhi:lm:p:qstu:wxDM:P:") ) != -1) - switch( param ) { - - case '0': /* HTTP/1.0 */ -@@ -586,6 +591,9 @@ - } - } - break; -+ case 'w': -+ waitfornw = 1; -+ break; - case 'x': /* adjust time and "kernel" */ - setmode = 3; - break; -@@ -815,7 +823,7 @@ - } - - /* After first poll cycle do not step through time, only adjust */ -- if ( setmode != 3 ) { -+ if ( setmode != 3 && (!waitfornw || ( waitfornw && recvdvalidresp ))) { - setmode = 1; - } - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate.conf b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate.conf deleted file mode 100644 index 32d8809162..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate.conf +++ /dev/null @@ -1,12 +0,0 @@ -# config file for /etc/init.d/htpdate - -# Add at least one http server to use: -SERVERS="www.google.com" - -# If you are using a proxy server to connect to the -# internet comment out the following line and insert the -# address and port of your proxy server. -#PROXY="-P :" - -# Set additional options, see 'man htpdate' for refernce -HTPDATE_OPTS="-D -u ntp:ntp -m 5 -s -t -r generate_204 -w" diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate.init b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate.init deleted file mode 100644 index 8d40d93ed3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/files/htpdate.init +++ /dev/null @@ -1,29 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/htpdate/files/htpdate.init,v 1.3 2006/08/24 02:23:18 vapier Exp $ - -depend() { - need net - use dns logger -} - -checkconfig() { - if [[ -z ${SERVERS} ]] ; then - eerror "You need to set at least one http server to use in /etc/conf.d/htpdate" - return 1 - fi -} - -start() { - checkconfig || return 1 - ebegin "Starting htpdate" - htpdate ${HTPDATE_OPTS} ${PROXY} ${SERVERS} - eend $? -} - -stop() { - ebegin "Stopping htpdate" - start-stop-daemon --stop --quiet --pidfile /var/run/htpdate.pid - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.0.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.0.ebuild deleted file mode 100644 index 3b4380bac2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.0.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/htpdate/htpdate-1.0.0.ebuild,v 1.7 2008/12/07 11:06:55 vapier Exp $ - -inherit toolchain-funcs - -DESCRIPTION="Synchronize local workstation with time offered by remote webservers" -HOMEPAGE="http://www.clevervest.com/htp/" -SRC_URI="http://www.clevervest.com/htp/archive/c/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm hppa ~mips ppc s390 sh x86" -IUSE="" - -DEPEND="" -RDEPEND="" - -src_unpack() { - unpack ${A} - cd "${S}" - gunzip htpdate.8.gz || die -} - -src_compile() { - emake CFLAGS="-Wall ${CFLAGS} ${LDFLAGS}" CC="$(tc-getCC)" || die -} - -src_install() { - dosbin htpdate || die - doman htpdate.8 - dodoc README Changelog - - newconfd "${FILESDIR}"/htpdate.conf htpdate - newinitd "${FILESDIR}"/htpdate.init htpdate -} - -pkg_postinst() { - einfo "If you would like to run htpdate as a daemon set" - einfo "appropriate http servers in /etc/conf.d/htpdate!" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.4-r6.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.4-r6.ebuild deleted file mode 120000 index 6ce3480a68..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.4-r6.ebuild +++ /dev/null @@ -1 +0,0 @@ -htpdate-1.0.4.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.4.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.4.ebuild deleted file mode 100644 index a744caf35c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/htpdate-1.0.4.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/htpdate/htpdate-1.0.4.ebuild,v 1.7 2009/06/19 22:08:34 ranger Exp $ - -inherit toolchain-funcs eutils - -DESCRIPTION="Synchronize local workstation with time offered by remote webservers" -HOMEPAGE="http://www.clevervest.com/htp/" -SRC_URI="http://www.clevervest.com/htp/archive/c/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm hppa ~mips ppc ~ppc64 s390 sh x86" -IUSE="" - -DEPEND="" -RDEPEND="" - - -src_unpack() { - unpack ${A} - cd "${S}" - epatch "${FILESDIR}/${P}-waitforvalidhttpresp.patch" - epatch "${FILESDIR}/${P}-errorcheckhttpresp.patch" - epatch "${FILESDIR}/${P}-checkagainstbuildtime.patch" - epatch "${FILESDIR}/${P}-oob_date_read.patch" - epatch "${FILESDIR}/${P}-errorsarentsuccess.patch" - epatch "${FILESDIR}/${P}-64bit_limits.patch" - epatch "${FILESDIR}/${P}-relative_path.patch" - epatch "${FILESDIR}/${P}-all_headers.patch" - gunzip htpdate.8.gz || die -} - -src_compile() { - # Provide timestamp of when this was built, in number of seconds since - # 01 Jan 1970 in UTC time. - DATE=`date -u +%s` - # Set it back one day to avoid dealing with time zones. - DATE_OPT="-DBUILD_TIME_UTC=`expr $DATE - 86400`" - emake CFLAGS="-Wall $DATE_OPT ${CFLAGS} ${LDFLAGS}" CC="$(tc-getCC)" || die -} - -src_install() { - dosbin htpdate || die - doman htpdate.8 - dodoc README Changelog - - newconfd "${FILESDIR}"/htpdate.conf htpdate - newinitd "${FILESDIR}"/htpdate.init htpdate -} - -pkg_postinst() { - einfo "If you would like to run htpdate as a daemon set" - einfo "appropriate http servers in /etc/conf.d/htpdate!" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/metadata.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/metadata.xml deleted file mode 100644 index d593759d8e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/htpdate/metadata.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - -no-herd - - dertobi123@gentoo.org - Tobias Scherbaum - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/ChangeLog b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/ChangeLog deleted file mode 100644 index 56a3e51ccd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/ChangeLog +++ /dev/null @@ -1,36 +0,0 @@ -# ChangeLog for net-misc/mobile-broadband-provider-info -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/ChangeLog,v 1.7 2010/10/19 19:09:09 ranger Exp $ - - 19 Oct 2010; Brent Baude - mobile-broadband-provider-info-20100510.ebuild: - Marking mobile-broadband-provider-info-20100510 ppc for bug 321593 - - 20 Aug 2010; Markos Chandras - mobile-broadband-provider-info-20100510.ebuild: - Stable on amd64 wrt bug #321593 - - 13 Aug 2010; Christian Faulhammer - mobile-broadband-provider-info-20100510.ebuild: - stable x86, bug 321593 - -*mobile-broadband-provider-info-20100510 (07 Jul 2010) - - 07 Jul 2010; Nirbheek Chauhan - +mobile-broadband-provider-info-20100510.ebuild: - Bump to 20100510, adds new broadband providers - - 10 Mar 2010; Joseph Jezak - mobile-broadband-provider-info-20100122.ebuild: - Marked ~ppc. - -*mobile-broadband-provider-info-20100122 (25 Jan 2010) - - 25 Jan 2010; Nirbheek Chauhan - +mobile-broadband-provider-info-20100122.ebuild, metadata.xml: - Bump to 20100122, use gnome.org for SRC_URI, add myself to metadata.xml - - 02 Jul 2009; Robert Piasek - mobile-broadband-provider-info-20090602.ebuild, +metadata.xml: - New ebuild for mobole mroadband providers info - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/Manifest b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/Manifest deleted file mode 100644 index 79f8e5f8d7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/Manifest +++ /dev/null @@ -1,4 +0,0 @@ -DIST mobile-broadband-provider-info-20090602.tar.bz2 59018 RMD160 b55e42de07ce9f20103e5fda63a8ac4434ee2076 SHA1 eae262e37cd95a029e33cb9f312c1c0b829cc358 SHA256 e2065e338d4057786c6697d9a0d745ba60d12fbe8f4fc13a418616890113310a -DIST mobile-broadband-provider-info-20100122.tar.bz2 63811 RMD160 96d82f86415ef6b483c9afe8c0b8dc0e74ccfc35 SHA1 b16b2e635c25bbd2ed150d9328a5e1521dbfa7ca SHA256 4aed0c48306b10ab5a5758c5e547fc9bee2c9857f854b442cb6dc49874f3d620 -DIST mobile-broadband-provider-info-20100510.tar.bz2 65091 RMD160 b7f03d4530338fbce63672076aa64ef133047cbf SHA1 0741b248fb96d170271ade13cb72d43f02ff2af3 SHA256 2effc6bab2214620400e1252a1dfc9d13d00bf446e4cfd50e9d9e31542053b51 -DIST mobile-broadband-provider-info-20110218.tar.bz2 68955 RMD160 0234502011c6a1dae63b856877e38ded6e5ccf3c SHA1 39ea2361485bb7cd61ce8b8972bcb2e3c30b08bc SHA256 5a5224801291ecd34652597ac4d80db1b87682e8c8cf4b291bc42233711e8370 diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch deleted file mode 100644 index 38be686c5c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 269c066abec763012fcabaff667b1a264c17e0bc Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Fri, 1 Apr 2011 10:01:05 -0400 -Subject: [PATCH] Add gsm APN information for KTF and SKTelecom - ---- - serviceproviders.xml | 8 ++++++++ - 1 files changed, 8 insertions(+), 0 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index 3673d31..0b7bd56 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -3763,6 +3763,10 @@ conceived. - ktf - ktf - -+ -+ -+ -+ - - - LGTelecom -@@ -3782,6 +3786,10 @@ conceived. - - sktelecom - -+ -+ -+ -+ - - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-KPN-Rename-KPN-Mobile-to-KPN-NL.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-KPN-Rename-KPN-Mobile-to-KPN-NL.patch deleted file mode 100644 index 701dd40790..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-KPN-Rename-KPN-Mobile-to-KPN-NL.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 65b1df64716e4cdac1cf481d3ca646c7240a65ac Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Wed, 1 Jun 2011 09:24:29 -0400 -Subject: [PATCH] KPN: Rename KPN Mobile to KPN NL - ---- - serviceproviders.xml | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index f81292c..1562227 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -4784,7 +4784,7 @@ conceived. - - - -- KPN Mobile -+ KPN NL - - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-KPN-remove-old-APNs.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-KPN-remove-old-APNs.patch deleted file mode 100644 index 71d69d6ad8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-KPN-remove-old-APNs.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 315cbd5572a808a0bd07ea12fcfe8532b191d945 Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Thu, 26 May 2011 17:42:15 -0400 -Subject: [PATCH] KPN: remove old APNs - ---- - serviceproviders.xml | 10 ---------- - 1 files changed, 0 insertions(+), 10 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index e431696..f81292c 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -4789,16 +4789,6 @@ conceived. - - - -- -- KPN -- gprs -- 62.133.126.28 -- 62.133.126.29 -- -- -- 62.133.126.28 -- 62.133.126.29 -- - - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Mark-providers-as-primary-to-disambiguate-providers-.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Mark-providers-as-primary-to-disambiguate-providers-.patch deleted file mode 100644 index 366e25e99a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Mark-providers-as-primary-to-disambiguate-providers-.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 5c38643109c0ab404dfb3d14f530485f1600222a Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Wed, 25 May 2011 17:19:12 -0400 -Subject: [PATCH] Mark providers as primary to disambiguate providers with same MPLN - ---- - serviceproviders.xml | 8 ++++---- - 1 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index e431696..d4d9eac 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -1467,7 +1467,7 @@ conceived. - - - -- -+ - E-Plus - - -@@ -1793,7 +1793,7 @@ conceived. - - - -- -+ - 3 - - -@@ -3697,7 +3697,7 @@ conceived. - - - -- -+ - 3 - - -@@ -5896,7 +5896,7 @@ conceived. - - - -- -+ - 3 - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch deleted file mode 100644 index db3a345a78..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch +++ /dev/null @@ -1,33 +0,0 @@ -From bda53b737ee0e954c8738a3a89e25b126a3b0595 Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Fri, 20 May 2011 13:34:56 -0400 -Subject: [PATCH] Remove NetColgne - 26203, it interferes with eplus. - ---- - serviceproviders.xml | 10 ---------- - 1 files changed, 0 insertions(+), 10 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index f975a9e..9c54797 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -1739,16 +1739,6 @@ conceived. - - - -- NetCologne -- -- -- -- web -- password -- -- -- -- - Alice - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Vodafone-Update-with-data-from-mbb-apn-settings-2011.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Vodafone-Update-with-data-from-mbb-apn-settings-2011.patch deleted file mode 100644 index b24ee961be..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-Vodafone-Update-with-data-from-mbb-apn-settings-2011.patch +++ /dev/null @@ -1,234 +0,0 @@ -From 16600c557279128ccd56e61568a741452457bcb2 Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Thu, 19 May 2011 20:10:04 -0400 -Subject: [PATCH] Vodafone: Update with data from mbb apn settings 20110519 - ---- - serviceproviders.xml | 87 +++++++++++++++++++++++++++---------------------- - 1 files changed, 48 insertions(+), 39 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index f975a9e..4f2b489 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -646,12 +646,9 @@ conceived. - M-Tel - - -- -+ - -- -- mtel -- mtel -- -+ - - - -@@ -1588,8 +1585,6 @@ conceived. - *100*CODE# - - -- vodafone -- vodafone - 139.7.30.125 - 139.7.30.126 - -@@ -1597,8 +1592,6 @@ conceived. - WebSessions - vodafone - vodafone -- 139.7.30.125 -- 139.7.30.126 - - - -@@ -1853,11 +1846,11 @@ conceived. - TDC - - -- -- 194.239.134.83 -- 193.162.153.164 -- -+ -+ - -+ -+ - - - -@@ -2185,18 +2178,16 @@ conceived. - - - -- -- Airtel (old) -+ -+ Vodafone - vodafone - vodafone -- 212.73.32.3 -- 212.73.32.67 - -- -- Vodafone -+ -+ Airtel (old) - vodafone - vodafone -- 212.166.132.96 -+ 212.73.32.3 - 212.73.32.67 - - -@@ -2308,6 +2299,7 @@ conceived. - - - -+ - - - -@@ -2549,8 +2541,6 @@ conceived. - Contract - web - web -- 10.206.65.68 -- 10.203.65.68 - - - Prepaid -@@ -2564,6 +2554,14 @@ conceived. - web - web - -+ -+ web -+ web -+ -+ -+ web -+ web -+ - - - -@@ -2945,8 +2943,6 @@ conceived. - - - Előf. töm. -- vodawap -- vodawap - - - Felt. norm. -@@ -3316,10 +3312,11 @@ conceived. - - - -+ -+ - - - -- - - - -@@ -3655,8 +3652,6 @@ conceived. - - - Internet Facile (old) -- 83.224.70.62 -- 83.224.70.78 - - - -@@ -4200,17 +4195,25 @@ conceived. - - - -+ -+ -+ -+ Vodacom Lesotho -+ -+ -+ -+ -+ -+ -+ -+ - - - - Bite - - -- -- bite -- 213.226.131.131 -- 193.219.88.36 -- -+ - - - -@@ -4523,9 +4526,11 @@ conceived. - Vodafone - - -- -- Internet -- Internet -+ -+ internet -+ internet -+ 80.85.96.131 -+ 80.85.97.70 - - - -@@ -5405,12 +5410,12 @@ conceived. - Vodafone - - -- -- Web (old) -- - - Web - -+ -+ Web (old) -+ - - - -@@ -5539,6 +5544,7 @@ conceived. - VIP Mobile - - -+ - - vipmobile - vipmobile -@@ -6402,7 +6408,10 @@ conceived. - - - -- -+ -+ web -+ web -+ - - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-netherlands-add-fastinternet-and-prepaidinternet-to-KPN.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-netherlands-add-fastinternet-and-prepaidinternet-to-KPN.patch deleted file mode 100644 index c90d0feaa2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/0001-netherlands-add-fastinternet-and-prepaidinternet-to-KPN.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 1b96ed455e0a6902b4836f62131faba6ea8c5cdf Mon Sep 17 00:00:00 2001 -From: Jason Glasgow -Date: Mon, 2 May 2011 11:05:15 -0400 -Subject: [PATCH] netherlands: add fastinternet and prepaidinternet to KPN - ---- - serviceproviders.xml | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/serviceproviders.xml b/serviceproviders.xml -index ef4d6e5..0b79527 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -4729,6 +4729,10 @@ conceived. - 62.133.126.28 - 62.133.126.29 - -+ -+ -+ -+ - - - --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/android-apns.py b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/android-apns.py deleted file mode 100644 index 958e630bf8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/android-apns.py +++ /dev/null @@ -1,327 +0,0 @@ -#!/usr/bin/env python -# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - - -from xml.dom.minidom import parse -from collections import defaultdict -import codecs -import sys - -def groupby(func, items): - result = defaultdict(list) - for x in items: - result[func(x)].append(x) - return result - -class APNDB: - """Represents a set of APNs. - - Allows adding and some primitive kinds of searching. Subclasses are expected - to override add() to enforce their own constraints as necessary. Also - supports loading contents from a data file. - - """ - ANDROID = 0 - MBPI = 1 - def __init__(self): - self._apns = [] - - def add(self, apn): - if type(apn) == list: - self._apns += apn - else: - self._apns.append(apn) - - def apns(self): - return self._apns - - def carriers(self): - return set([x['nwid'] for x in self._apns]) - - def find(self, name, pred): - return [x for x in self._apns if name in x and pred(x[name])] - - def groupby(self, func): - return groupby(func, self._apns) - - def filter(self, func): - return [x for x in self._apns if func(x)] - - def parse(self): - pass - -class AndroidAPNDB(APNDB): - """Android APN database. - - Supports loading its contents from an android-format XML file. - - """ - - def __init__(self): - APNDB.__init__(self) - - def _parse_android_apn(self, element): - # The android APN database isn't as rich as the public one; in - # particular, it doesn't know whether APNs are CDMA or GSM. Assume they - # are all GSM :\ - apn = {'technology': 'gsm'} - for k,v in element.attributes.items(): - apn[k] = v - apn['nwid'] = '%s:%s' % (apn['mcc'], apn['mnc']) - apn['source'] = APNDB.ANDROID - - if apn['type'] == 'mms': # XXX: ignore MMS APNs - return None - return apn - - def parse(self, xmlfile): - dom = parse(xmlfile) - apn_lists = dom.getElementsByTagName('apns') - for apn_list in apn_lists: - dom_apns = apn_list.getElementsByTagName('apn') - for dom_apn in dom_apns: - r = self._parse_android_apn(dom_apn) - if r: - self._apns.append(r) - -class MBPIDB(APNDB): - """Mobile broadband provider info APN database. - - Supports loading its contents from an MBPI-format XML file. - - """ - - def __init__(self): - APNDB.__init__(self) - - def _add_child_key(self, apn, element, name, rename=None): - if not rename: - rename = name - children = element.getElementsByTagName(name) - # If we have multiple keys, we construct a list... - values = [x.data for x in children if 'data' in dir(x)] - if len(values) > 1: - apn[rename] = values - elif len(values) == 1: - apn[rename] = values[0] - - def _parse_mbpi_apn(self, apn, element): - apn['apn'] = element.getAttribute('value') - self._add_child_key(apn, element, 'name') - self._add_child_key(apn, element, 'username', 'user') - self._add_child_key(apn, element, 'password') - self._add_child_key(apn, element, 'dns') - - def _parse_mbpi_apns(self, carrier, tech, element, country): - apns = [] - nwids = element.getElementsByTagName('network-id') - dom_apns = element.getElementsByTagName('apn') - for nwid in nwids: - mcc = nwid.getAttribute('mcc') - mnc = nwid.getAttribute('mnc') - for dom_apn in dom_apns: - apn = { - 'carrier': carrier, - 'technology': tech, - 'mcc': mcc, - 'mnc': mnc, - 'nwid': '%s:%s' % (mcc, mnc), - 'source': APNDB.MBPI - } - self._parse_mbpi_apn(apn, dom_apn) - apns.append(apn) - return apns - - def _parse_mbpi_provider(self, country, element): - apns = [] - names = [x for x in element.getElementsByTagName('name') if x.parentNode == element] - # XXX: if there's more than one name, we just take the first one. The - # DTD allows one or more names in the provider block. I have no idea - # what the semantics of this are. - carrier = names[0].childNodes[0].data - if not carrier: - print 'Entry with no carrier code?' - gsms = element.getElementsByTagName('gsm') - cdmas = element.getElementsByTagName('cdma') - for gsm in gsms: - apns += self._parse_mbpi_apns(carrier, 'gsm', gsm, country) - for cdma in cdmas: - apns += self._parse_mbpi_apns(carrier, 'cdma', cdma, country) - return apns - - def parse(self, xmlfile): - """Loads contents from a supplied filehandle. - - The dtd for mobile-broadband-provider-info's xml files is really hairy, - so these parsing functions are too. Oh well. See serviceproviders.2.dtd - in the mbpi distribution for the gory details. - - """ - dom = parse(xmlfile) - countries = dom.getElementsByTagName('country') - for country in countries: - providers = country.getElementsByTagName('provider') - for provider in providers: - self._apns += self._parse_mbpi_provider( - country.getAttribute('code'), - provider) - -class MergedAPNDB(APNDB): - """A merged APN database. - - This class overrides the add method to support incremental merging of the - android database into the mbpi database. There are several major caveats to - this: - - 1) The logic here is extraordinarily brittle, and changes in the MBPIDB and - AndroidAPNDB classes are likely to break it - 2) Whichever database is added first will get to decide the names of many - common carriers, so adding the android DB before the MBPI DB may have - catastrophic results in terms of the generated delta being very large. - 3) The merging is still imperfect and might produce duplicate carriers. - - """ - - def __init__(self): - APNDB.__init__(self) - self._carriers = defaultdict(lambda: {'apns': [], - 'aliases': [], - 'mcc': 'none'}) - self._conflicts = 0 - self._apnmismatch = 0 - - def _should_add(self, apn): - def validapn(a): - if 'apn' not in a: - return False - if 'carrier' not in a: - return False - if 'mcc' not in a or 'mnc' not in a: - return False - return True - - def matchprop(a,b,p): - if p not in a and p not in b: - return True - if p in a and p not in b: - return True # XXX: fuzzy match. - if p not in a and p in b: - return True - return a[p] == b[p] - - def matchapn(a, b): - if a['mcc'] != b['mcc']: - return False - if a['mnc'] != b['mnc']: - return False - if a['apn'] != b['apn']: - return False - if not matchprop(a, b, 'user'): - return False - if not matchprop(a, b, 'password'): - return False - return True - - if not validapn(apn): - return False - - matches = [x for x in self.apns() if matchapn(apn, x)] - if matches: - self._conflicts += 1 - return False - return True - - def carriers(self): - return self._carriers - - def find_carriers(self, pred): - return [x for x in self._carriers.values() if pred(x)] - - def _learn_carrier(self, apn): - # When we get a new APN, we might a new carrier, or a new mcc:mnc for an - # existing carrier. - nwid = apn['nwid'] - carrier = apn['mcc'] + ":" + apn['carrier'] - mcc = apn['mcc'] - key = carrier - - # Let's see if we can merge carriers. We're looking for another carrier - # with whom our set of nwids overlaps. Note that there can be at most - # one carrier that we overlap with, nwid-wise, since if there existed - # carriers a and b that both had our nwid, they would have been merged - # previously. - ournwids = [x['nwid'] for x in self._carriers[key]['apns']] - ournwids.append(nwid) - othercarrier = None - for c in self._carriers: - if key == c or mcc != self._carriers[c]['mcc']: - continue - theirnwids = [x['nwid'] for x in self._carriers[c]['apns']] - if set(theirnwids) & set(ournwids): - key = c - break - - # Do we intersect another carrier by nwid? If so, add ourselves to their - # list; otherwise, create a new list for just us. After this step, this - # APN has been added to some carrier named after either: - # 1) its own name, or - # 2) the carrier whose nwid set already contains us. - self._carriers[key]['apns'].append(apn) - self._carriers[key]['mcc'] = mcc - if carrier not in self._carriers[key]['aliases']: - self._carriers[key]['aliases'].append(carrier) - - def _add_one(self, apn): - # This function is responsible for actually merging new APNs into the - # database. We want to keep all existing APNs for a particular carrier, - # so we basically just need to avoid adding duplicate APNs. - if self._should_add(apn): - self._apns.append(apn) - self._learn_carrier(apn) - - def add(self, apn): - if type(apn) == list: - for a in apn: - self.add(a) - else: - self._add_one(apn) - - def stats(self): - return {'conflicts': self._conflicts} - -def print_carriers(db): - carriers = db.carriers() - res = [] - for name,c in carriers.items(): - droidapns = [x for x in c['apns'] if x['source'] == APNDB.ANDROID] - mbpiapns = [x for x in c['apns'] if x['source'] == APNDB.MBPI] - newapns = [x['nwid'] for x in droidapns] - newapns = filter(lambda x: x not in [y['nwid'] for y in mbpiapns], - newapns) - if newapns: - res.append('Carrier %s: add nwids %s' % (name.encode('utf-8'), - newapns)) - newapns = [x['apn'] for x in droidapns] - newapns = filter(lambda x: x not in [y['apn'] for y in mbpiapns], - newapns) - if newapns: - res.append('Carrier %s: add apns %s' % (name.encode('utf-8'), - newapns)) - res.sort() - for r in res: - print r - -if len(sys.argv) < 3: - print 'Usage: %s ' % sys.argv[0] - sys.exit(0) - -mbpi_db = MBPIDB() -mbpi_db.parse(file(sys.argv[2])) -android_db = AndroidAPNDB() -android_db.parse(file(sys.argv[1])) - -result = MergedAPNDB() -result.add(mbpi_db.apns()) -result.add(android_db.apns()) diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/mobile-broadband-provider-info-20110218-r1.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/mobile-broadband-provider-info-20110218-r1.patch deleted file mode 100644 index 295980b45f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/files/mobile-broadband-provider-info-20110218-r1.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/serviceproviders.xml b/serviceproviders.xml -index 3673d31..e3b8264 100644 ---- a/serviceproviders.xml -+++ b/serviceproviders.xml -@@ -6306,15 +6306,12 @@ conceived. - - - -- -+ -+ - MEdia Net -- WAP@CINGULARGPRS.COM -- CINGULAR1 - -- -+ - Data Connect -- ISP@CINGULARGPRS.COM -- CINGULAR1 - - - Data Connect (Accelerated) diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/metadata.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/metadata.xml deleted file mode 100644 index 8ea105f4ba..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/metadata.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - no-herd - - dagger@gentoo.org - Robert Piasek - - - nirbheek@gentoo.org - Nirbheek Chauhan - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20090602.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20090602.ebuild deleted file mode 100644 index 8ee85870c5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20090602.ebuild +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20090602.ebuild,v 1.1 2009/08/24 13:21:52 dagger Exp $ - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -SRC_URI="http://dev.gentoo.org/~dagger/files/${P}.tar.bz2" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="~arm ~amd64 ~x86" -IUSE="" -RDEPEND="" - -DEPEND="" - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100122.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100122.ebuild deleted file mode 100644 index 3fe258f8fe..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100122.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100122.ebuild,v 1.2 2010/03/10 09:00:52 josejx Exp $ - -inherit gnome.org - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~ppc ~x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild deleted file mode 100644 index fb8b85df4d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -inherit gnome.org - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 ~arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218-r1.ebuild deleted file mode 100644 index df20b2d71b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218-r1.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit eutils gnome.org - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 ~arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patch" - epatch "${FILESDIR}"/${PF}.patch -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218-r2.ebuild deleted file mode 100644 index c8b0158d7e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218-r2.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit eutils gnome.org - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 ~arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patch" - epatch "${FILESDIR}"/mobile-broadband-provider-info-20110218-r1.patch - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218.ebuild deleted file mode 100644 index fb8b85df4d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110218.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -inherit gnome.org - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 ~arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110503-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110503-r1.ebuild deleted file mode 100644 index fc557acb94..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110503-r1.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="f29d31e0ce94866c3339f44cdbb2695cc2e9ba87" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patches" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch - epatch "${FILESDIR}"/0001-netherlands-add-fastinternet-and-prepaidinternet-to-KPN.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110503.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110503.ebuild deleted file mode 100644 index 81653ad75e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110503.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="f29d31e0ce94866c3339f44cdbb2695cc2e9ba87" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patch" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r1.ebuild deleted file mode 100644 index 39a6491bc4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r1.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="d9995ef693cb1ea7237f928df18e03cccba96f16" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patches" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch - epatch "${FILESDIR}"/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r2.ebuild deleted file mode 100644 index 6712139c6e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r2.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="d9995ef693cb1ea7237f928df18e03cccba96f16" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patches" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch - epatch "${FILESDIR}"/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch - epatch "${FILESDIR}"/0001-Vodafone-Update-with-data-from-mbb-apn-settings-2011.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r3.ebuild deleted file mode 100644 index f838aafecb..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r3.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="d9995ef693cb1ea7237f928df18e03cccba96f16" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patches" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch - epatch "${FILESDIR}"/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch - epatch "${FILESDIR}"/0001-Vodafone-Update-with-data-from-mbb-apn-settings-2011.patch - epatch "${FILESDIR}"/0001-Mark-providers-as-primary-to-disambiguate-providers-.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r5.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r5.ebuild deleted file mode 100644 index 9554d851e3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511-r5.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="d9995ef693cb1ea7237f928df18e03cccba96f16" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patches" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch - epatch "${FILESDIR}"/0001-Remove-NetColgne-26203-it-interferes-with-eplus.patch - epatch "${FILESDIR}"/0001-Vodafone-Update-with-data-from-mbb-apn-settings-2011.patch - epatch "${FILESDIR}"/0001-Mark-providers-as-primary-to-disambiguate-providers-.patch - epatch "${FILESDIR}"/0001-KPN-remove-old-APNs.patch - epatch "${FILESDIR}"/0001-KPN-Rename-KPN-Mobile-to-KPN-NL.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511.ebuild deleted file mode 100644 index eb08513ec2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20110511.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mobile-broadband-provider-info/mobile-broadband-provider-info-20100510.ebuild,v 1.4 2010/10/19 19:09:09 ranger Exp $ - -EAPI="2" - -inherit autotools eutils git - -DESCRIPTION="Database of mobile broadband service providers" -HOMEPAGE="http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders" -EGIT_REPO_URI="git://git.gnome.org/mobile-broadband-provider-info" -EGIT_COMMIT="d9995ef693cb1ea7237f928df18e03cccba96f16" - -LICENSE="CC-PD" -SLOT="0" -KEYWORDS="amd64 arm ppc x86" -IUSE="" - -RDEPEND="" -DEPEND="" - -src_prepare() { - # update to latest version of the database - elog "Applying patch" - epatch "${FILESDIR}"/0001-Add-gsm-APN-information-for-KTF-and-SKTelecom.patch -} - -src_compile() { - eautoreconf || die "eautoreconf failed" - econf || die "econf failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc NEWS README || die "dodoc failed" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-mobile-error.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-mobile-error.xml deleted file mode 100644 index d639a6620c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-mobile-error.xml +++ /dev/null @@ -1,318 +0,0 @@ - - - Copyright (C) 2008 Novell, Inc. - - - - A phone failure. - - - - - - No connection to phone. - - - - - - Phone-adaptor link reserved. - - - - - - Operation not allowed. - - - - - - Operation not supported. - - - - - - PH-SIM PIN required. - - - - - - PH-FSIM PIN required. - - - - - - PH-FSIM PUK required. - - - - - - SIM not inserted. - - - - - - SIM PIN required. - - - - - - SIM PUK required. - - - - - - SIM failure. - - - - - - SIM busy. - - - - - - SIM wrong. - - - - - - Incorrect password. - - - - - - SIM PIN2 required. - - - - - - SIM PUK2 required. - - - - - - Memory full. - - - - - - Invalid index. - - - - - - Not found. - - - - - - Memory failure. - - - - - - Text string too long. - - - - - - Invalid characters in text string. - - - - - - Dial string too long. - - - - - - Invalid characters in dial string. - - - - - - No network service. - - - - - - Network timeout. - - - - - - Network not allowed - emergency calls only. - - - - - - Network personalization PIN required. - - - - - - Network personalization PUK required. - - - - - - Network subset personalization PIN required. - - - - - - Network subset personalization PUK required. - - - - - - Service provider personalization PIN required. - - - - - - Service provider personalization PUK required. - - - - - - Corporate personalization PIN required. - - - - - - Corporate personalization PUK required. - - - - - - Hidden key required. This key is required when accessing hidden phonebook entries. - - - - - - EAP method not supported. - - - - - - Incorrect parameters. - - - - - - An unknown error. - - - - - - Illegal MS. - - - - - - Illegal ME. - - - - - - GPRS services not allowed. - - - - - - PLMN not allowed. - - - - - - Location area not allowed. - - - - - - Roaming not allowed in this location area. - - - - - - Service option not supported. - - - - - - Requested service option not subscribed. - - - - - - Service option temporarily out of order. - - - - - - PDP authentication failure. - - - - - - Unspecified GPRS error - - - - - - Invalid mobile class. - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem-connect-error.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem-connect-error.xml deleted file mode 100644 index 78c33b4607..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem-connect-error.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - Copyright (C) 2008 Novell, Inc. - - - - No carrier. - - - - - - No dialtone. - - - - - - Busy. - - - - - - No answer. - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem-error.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem-error.xml deleted file mode 100644 index 004173849c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem-error.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - Copyright (C) 2008 Novell, Inc. - - - - A generic error. An example of a generic error is ModemManager not being able to parse the response from modem. - - - - - - Operation not implemented by modem. - - - - - - Operation could not be performed while the modem is connected. - - - - - - Operation could not be performed while the modem is disconnected. - - - - - - Operation could not be performed because it is already in progress. - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem.h b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem.h deleted file mode 100644 index 83a4163e36..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-modem.h +++ /dev/null @@ -1,404 +0,0 @@ - -/* Generated Header file do not edit */ -/* ModemManager D-Bus Interface Specification */ - -/* - * version 0.5 - */ - -#define MM_MODEMMANAGER_PATH "/org/freedesktop/ModemManager" -#define MM_MODEMMANAGER_SERVICE "org.freedesktop.ModemManager" - -/************** - * Interfaces * - **************/ - -#define MM_MODEMMANAGER_INTERFACE "org.freedesktop.ModemManager" -#define MM_MODEM_INTERFACE "org.freedesktop.ModemManager.Modem" -#define MM_MODEM_SIMPLE_INTERFACE "org.freedesktop.ModemManager.Modem.Simple" -#define MM_MODEM_CDMA_INTERFACE "org.freedesktop.ModemManager.Modem.Cdma" -#define MM_MODEM_GSM_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm" -#define MM_MODEM_GSM_CARD_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm.Card" -#define MM_MODEM_GSM_CONTACTS_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm.Contacts" -#define MM_MODEM_GSM_HSO_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm.Hso" -#define MM_MODEM_GSM_NETWORK_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm.Network" -#define MM_MODEM_GSM_SMS_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm.SMS" -#define MM_MODEM_GSM_USSD_INTERFACE "org.freedesktop.ModemManager.Modem.Gsm.Ussd" -#define MM_MODEM_FIRMWARE_INTERFACE "org.freedesktop.ModemManager.Modem.Firmware" -#define MM_MODEM_LOCATION_INTERFACE "org.freedesktop.ModemManager.Modem.Location" -#define MM_MODEM_TIME_INTERFACE "org.freedesktop.ModemManager.Modem.Time" -#define MM_DBUS_PROPERTIES_INTERFACE "org.freedesktop.DBus.Properties" - -/*********************** - * Methods/Enums/Flags * - ***********************/ - -/* - * Interface org.freedesktop.ModemManager - */ - -#define MM_MANAGER_METHOD_ENUMERATEDEVICES "EnumerateDevices" -#define MM_MANAGER_METHOD_SCANDEVICES "ScanDevices" -#define MM_MANAGER_METHOD_SETLOGGING "SetLogging" - -#define MM_MANAGER_SIGNAL_DEVICEADDED "DeviceAdded" -#define MM_MANAGER_SIGNAL_DEVICEREMOVED "DeviceRemoved" - -/* - * Interface org.freedesktop.ModemManager.Modem - */ - -#define MM_MODEM_METHOD_ENABLE "Enable" -#define MM_MODEM_METHOD_CONNECT "Connect" -#define MM_MODEM_METHOD_DISCONNECT "Disconnect" -#define MM_MODEM_METHOD_GETIP4CONFIG "GetIP4Config" -#define MM_MODEM_METHOD_GETINFO "GetInfo" -#define MM_MODEM_METHOD_RESET "Reset" -#define MM_MODEM_METHOD_FACTORYRESET "FactoryReset" - -#define MM_MODEM_SIGNAL_STATECHANGED "StateChanged" - -/* MM_MODEM_TYPE enum values */ - -#define MM_MODEM_TYPE_GSM 1 -#define MM_MODEM_TYPE_CDMA 2 - -/* MM_MODEM_IP_METHOD enum values */ - -#define MM_MODEM_IP_METHOD_PPP 0 -#define MM_MODEM_IP_METHOD_STATIC 1 -#define MM_MODEM_IP_METHOD_DHCP 2 - -/* MM_MODEM_STATE_CHANGED_REASON enum values */ - -#define MM_MODEM_STATE_CHANGED_REASON_UNKNOWN 0 -#define MM_MODEM_STATE_CHANGED_REASON_USER_REQUESTED 1 -#define MM_MODEM_STATE_CHANGED_REASON_SUSPEND 2 - -/* - * Interface org.freedesktop.ModemManager.Modem.Simple - */ - -#define MM_MODEM_SIMPLE_METHOD_CONNECT "Connect" -#define MM_MODEM_SIMPLE_METHOD_GETSTATUS "GetStatus" - -/* - * Interface org.freedesktop.ModemManager.Modem.Cdma - */ - -#define MM_MODEM_CDMA_METHOD_ACTIVATE "Activate" -#define MM_MODEM_CDMA_METHOD_ACTIVATEMANUAL "ActivateManual" -#define MM_MODEM_CDMA_METHOD_ACTIVATEMANUALDEBUG "ActivateManualDebug" -#define MM_MODEM_CDMA_METHOD_GETSIGNALQUALITY "GetSignalQuality" -#define MM_MODEM_CDMA_METHOD_GETESN "GetEsn" -#define MM_MODEM_CDMA_METHOD_GETSERVINGSYSTEM "GetServingSystem" -#define MM_MODEM_CDMA_METHOD_GETREGISTRATIONSTATE "GetRegistrationState" - -#define MM_MODEM_CDMA_SIGNAL_ACTIVATIONSTATECHANGED "ActivationStateChanged" -#define MM_MODEM_CDMA_SIGNAL_SIGNALQUALITY "SignalQuality" -#define MM_MODEM_CDMA_SIGNAL_REGISTRATIONSTATECHANGED "RegistrationStateChanged" - -/* MM_MODEM_CDMA_REGISTRATION_STATE enum values */ - -#define MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN 0 -#define MM_MODEM_CDMA_REGISTRATION_STATE_REGISTERED 1 -#define MM_MODEM_CDMA_REGISTRATION_STATE_HOME 2 -#define MM_MODEM_CDMA_REGISTRATION_STATE_ROAMING 3 - -/* MM_MODEM_CDMA_ACTIVATION_STATE enum values */ - -#define MM_MODEM_CDMA_ACTIVATION_STATE_NOT_ACTIVATED 0 -#define MM_MODEM_CDMA_ACTIVATION_STATE_ACTIVATING 1 -#define MM_MODEM_CDMA_ACTIVATION_STATE_PARTIALLY_ACTIVATED 2 -#define MM_MODEM_CDMA_ACTIVATION_STATE_ACTIVATED 3 - -/* MM_MODEM_CDMA_ACTIVATION_ERROR enum values */ - -#define MM_MODEM_CDMA_ACTIVATION_ERROR_NO_ERROR 0 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_ROAMING 1 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_WRONG_RADIO_INTERFACE 2 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_COULD_NOT_CONNECT 3 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_SECURITY_AUTHENTICATION_FAILED 4 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_PROVISIONING_FAILED 5 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_NO_SIGNAL 6 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_UNKNOWN 7 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_TIMED_OUT 8 -#define MM_MODEM_CDMA_ACTIVATION_ERROR_START_FAILED 9 - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm - */ - -/* MM_MODEM_GSM_ALLOWED_MODE enum values */ - -#define MM_MODEM_GSM_ALLOWED_MODE_ANY 0 -#define MM_MODEM_GSM_ALLOWED_MODE_2G_PREFERRED 1 -#define MM_MODEM_GSM_ALLOWED_MODE_3G_PREFERRED 2 -#define MM_MODEM_GSM_ALLOWED_MODE_2G_ONLY 3 -#define MM_MODEM_GSM_ALLOWED_MODE_3G_ONLY 4 - -/* MM_MODEM_GSM_ACCESS_TECH enum values */ - -#define MM_MODEM_GSM_ACCESS_TECH_UNKNOWN 0 -#define MM_MODEM_GSM_ACCESS_TECH_GSM 1 -#define MM_MODEM_GSM_ACCESS_TECH_GSM_COMPACT 2 -#define MM_MODEM_GSM_ACCESS_TECH_GPRS 3 -#define MM_MODEM_GSM_ACCESS_TECH_EDGE 4 -#define MM_MODEM_GSM_ACCESS_TECH_UMTS 5 -#define MM_MODEM_GSM_ACCESS_TECH_HSDPA 6 -#define MM_MODEM_GSM_ACCESS_TECH_HSUPA 7 -#define MM_MODEM_GSM_ACCESS_TECH_HSPA 8 -#define MM_MODEM_GSM_ACCESS_TECH_HSPA_PLUS 9 - -/* MM_MODEM_GSM_MODE flag values */ - -#define MM_MODEM_GSM_MODE_UNKNOWN 0x0 -#define MM_MODEM_GSM_MODE_ANY 0x1 -#define MM_MODEM_GSM_MODE_GPRS 0x2 -#define MM_MODEM_GSM_MODE_EDGE 0x4 -#define MM_MODEM_GSM_MODE_UMTS 0x8 -#define MM_MODEM_GSM_MODE_HSDPA 0x10 -#define MM_MODEM_GSM_MODE_2G_PREFERRED 0x20 -#define MM_MODEM_GSM_MODE_3G_PREFERRED 0x40 -#define MM_MODEM_GSM_MODE_2G_ONLY 0x80 -#define MM_MODEM_GSM_MODE_3G_ONLY 0x100 -#define MM_MODEM_GSM_MODE_HSUPA 0x200 -#define MM_MODEM_GSM_MODE_HSPA 0x400 -#define MM_MODEM_GSM_MODE_GSM 0x800 -#define MM_MODEM_GSM_MODE_GSM_COMPACT 0x1000 - -/* MM_MODEM_GSM_BAND flag values */ - -#define MM_MODEM_GSM_BAND_UNKNOWN 0x0 -#define MM_MODEM_GSM_BAND_ANY 0x1 -#define MM_MODEM_GSM_BAND_EGSM 0x2 -#define MM_MODEM_GSM_BAND_DCS 0x4 -#define MM_MODEM_GSM_BAND_PCS 0x8 -#define MM_MODEM_GSM_BAND_G850 0x10 -#define MM_MODEM_GSM_BAND_U2100 0x20 -#define MM_MODEM_GSM_BAND_U1800 0x40 -#define MM_MODEM_GSM_BAND_U17IV 0x80 -#define MM_MODEM_GSM_BAND_U800 0x100 -#define MM_MODEM_GSM_BAND_U850 0x200 -#define MM_MODEM_GSM_BAND_U900 0x400 -#define MM_MODEM_GSM_BAND_U17IX 0x800 -#define MM_MODEM_GSM_BAND_U1900 0x1000 -#define MM_MODEM_GSM_BAND_U2600 0x2000 - -/* MM_MODEM_GSM_FACILITY flag values */ - -#define MM_MODEM_GSM_FACILITY_NONE 0x0 -#define MM_MODEM_GSM_FACILITY_SIM 0x1 -#define MM_MODEM_GSM_FACILITY_FIXED_DIALING 0x2 -#define MM_MODEM_GSM_FACILITY_PH_SIM 0x4 -#define MM_MODEM_GSM_FACILITY_PH_FSIM 0x8 -#define MM_MODEM_GSM_FACILITY_NET_PERS 0x10 -#define MM_MODEM_GSM_FACILITY_NET_SUB_PERS 0x20 -#define MM_MODEM_GSM_FACILITY_PROVIDER_PERS 0x40 -#define MM_MODEM_GSM_FACILITY_CORP_PERS 0x80 - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm.Card - */ - -#define MM_MODEM_GSM_CARD_METHOD_GETIMEI "GetImei" -#define MM_MODEM_GSM_CARD_METHOD_GETIMSI "GetImsi" -#define MM_MODEM_GSM_CARD_METHOD_GETOPERATORID "GetOperatorId" -#define MM_MODEM_GSM_CARD_METHOD_GETSPN "GetSpn" -#define MM_MODEM_GSM_CARD_METHOD_GETMSISDN "GetMsIsdn" -#define MM_MODEM_GSM_CARD_METHOD_SENDPUK "SendPuk" -#define MM_MODEM_GSM_CARD_METHOD_SENDPIN "SendPin" -#define MM_MODEM_GSM_CARD_METHOD_ENABLEPIN "EnablePin" -#define MM_MODEM_GSM_CARD_METHOD_CHANGEPIN "ChangePin" - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm.Contacts - */ - -#define MM_MODEM_GSM_CONTACTS_METHOD_ADD "Add" -#define MM_MODEM_GSM_CONTACTS_METHOD_DELETE "Delete" -#define MM_MODEM_GSM_CONTACTS_METHOD_GET "Get" -#define MM_MODEM_GSM_CONTACTS_METHOD_LIST "List" -#define MM_MODEM_GSM_CONTACTS_METHOD_FIND "Find" -#define MM_MODEM_GSM_CONTACTS_METHOD_GETCOUNT "GetCount" - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm.Hso - */ - -#define MM_MODEM_GSM_HSO_METHOD_AUTHENTICATE "Authenticate" - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm.Network - */ - -#define MM_MODEM_GSM_NETWORK_METHOD_REGISTER "Register" -#define MM_MODEM_GSM_NETWORK_METHOD_SCAN "Scan" -#define MM_MODEM_GSM_NETWORK_METHOD_SETAPN "SetApn" -#define MM_MODEM_GSM_NETWORK_METHOD_GETSIGNALQUALITY "GetSignalQuality" -#define MM_MODEM_GSM_NETWORK_METHOD_SETBAND "SetBand" -#define MM_MODEM_GSM_NETWORK_METHOD_GETBAND "GetBand" -#define MM_MODEM_GSM_NETWORK_METHOD_SETNETWORKMODE "SetNetworkMode" -#define MM_MODEM_GSM_NETWORK_METHOD_GETNETWORKMODE "GetNetworkMode" -#define MM_MODEM_GSM_NETWORK_METHOD_GETREGISTRATIONINFO "GetRegistrationInfo" -#define MM_MODEM_GSM_NETWORK_METHOD_SETALLOWEDMODE "SetAllowedMode" - -#define MM_MODEM_GSM_NETWORK_SIGNAL_SIGNALQUALITY "SignalQuality" -#define MM_MODEM_GSM_NETWORK_SIGNAL_REGISTRATIONINFO "RegistrationInfo" -#define MM_MODEM_GSM_NETWORK_SIGNAL_NETWORKMODE "NetworkMode" - -/* MM_MODEM_GSM_NETWORK_REG_STATUS enum values */ - -#define MM_MODEM_GSM_NETWORK_REG_STATUS_IDLE 0 -#define MM_MODEM_GSM_NETWORK_REG_STATUS_HOME 1 -#define MM_MODEM_GSM_NETWORK_REG_STATUS_SEARCHING 2 -#define MM_MODEM_GSM_NETWORK_REG_STATUS_DENIED 3 -#define MM_MODEM_GSM_NETWORK_REG_STATUS_UNKNOWN 4 -#define MM_MODEM_GSM_NETWORK_REG_STATUS_ROAMING 5 - -/* MM_MODEM_GSM_NETWORK_DEPRECATED_MODE enum values */ - -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_ANY 0 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_GPRS 1 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_EDGE 2 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_UMTS 3 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_HSDPA 4 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_2G_PREFERRED 5 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_3G_PREFERRED 6 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_2G_ONLY 7 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_3G_ONLY 8 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_HSUPA 9 -#define MM_MODEM_GSM_NETWORK_DEPRECATED_MODE_HSPA 10 - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm.SMS - */ - -#define MM_MODEM_GSM_SMS_METHOD_DELETE "Delete" -#define MM_MODEM_GSM_SMS_METHOD_GET "Get" -#define MM_MODEM_GSM_SMS_METHOD_GETFORMAT "GetFormat" -#define MM_MODEM_GSM_SMS_METHOD_SETFORMAT "SetFormat" -#define MM_MODEM_GSM_SMS_METHOD_GETSMSC "GetSmsc" -#define MM_MODEM_GSM_SMS_METHOD_SETSMSC "SetSmsc" -#define MM_MODEM_GSM_SMS_METHOD_LIST "List" -#define MM_MODEM_GSM_SMS_METHOD_SAVE "Save" -#define MM_MODEM_GSM_SMS_METHOD_SEND "Send" -#define MM_MODEM_GSM_SMS_METHOD_SENDFROMSTORAGE "SendFromStorage" -#define MM_MODEM_GSM_SMS_METHOD_SETINDICATION "SetIndication" - -#define MM_MODEM_GSM_SMS_SIGNAL_SMSRECEIVED "SmsReceived" -#define MM_MODEM_GSM_SMS_SIGNAL_COMPLETED "Completed" - -/* - * Interface org.freedesktop.ModemManager.Modem.Gsm.Ussd - */ - -#define MM_MODEM_GSM_USSD_METHOD_INITIATE "Initiate" -#define MM_MODEM_GSM_USSD_METHOD_RESPOND "Respond" -#define MM_MODEM_GSM_USSD_METHOD_CANCEL "Cancel" - -/* - * Interface org.freedesktop.ModemManager.Modem.Firmware - */ - -#define MM_MODEM_FIRMWARE_METHOD_LIST "List" -#define MM_MODEM_FIRMWARE_METHOD_SELECT "Select" -#define MM_MODEM_FIRMWARE_METHOD_INSTALL "Install" - -/* - * Interface org.freedesktop.ModemManager.Modem.Location - */ - -#define MM_MODEM_LOCATION_METHOD_ENABLE "Enable" -#define MM_MODEM_LOCATION_METHOD_GETLOCATION "GetLocation" - -/* MM_MODEM_LOCATION_CAPABILITIES flag values */ - -#define MM_MODEM_LOCATION_CAPABILITY_UNKNOWN 0x0 -#define MM_MODEM_LOCATION_CAPABILITY_GPS_NMEA 0x1 -#define MM_MODEM_LOCATION_CAPABILITY_GSM_LAC_CI 0x2 -#define MM_MODEM_LOCATION_CAPABILITY_GPS_RAW 0x4 - -/* - * Interface org.freedesktop.ModemManager.Modem.Time - */ - -#define MM_MODEM_TIME_METHOD_GETNETWORKTIME "GetNetworkTime" - -#define MM_MODEM_TIME_SIGNAL_NETWORKTIMECHANGED "NetworkTimeChanged" - -/* - * Interface org.freedesktop.DBus.Properties - */ - -#define MM_MANAGER_SIGNAL_MMPROPERTIESCHANGED "MmPropertiesChanged" -#define MM_MANAGER_SIGNAL_PROPERTIESCHANGED "PropertiesChanged" - -/********** - * Errors * - **********/ - -#define MM_ERROR_MODEM_SERIALOPENFAILED "SerialOpenFailed" -#define MM_ERROR_MODEM_SERIALSENDFAILED "SerialSendFailed" -#define MM_ERROR_MODEM_SERIALRESPONSETIMEOUT "SerialResponseTimeout" -#define MM_ERROR_MODEM_GENERAL "General" -#define MM_ERROR_MODEM_OPERATIONNOTSUPPORTED "OperationNotSupported" -#define MM_ERROR_MODEM_CONNECTED "Connected" -#define MM_ERROR_MODEM_DISCONNECTED "Disconnected" -#define MM_ERROR_MODEM_OPERATIONINPROGRESS "OperationInProgress" -#define MM_ERROR_MODEM_NOCARRIER "NoCarrier" -#define MM_ERROR_MODEM_NODIALTONE "NoDialtone" -#define MM_ERROR_MODEM_BUSY "Busy" -#define MM_ERROR_MODEM_NOANSWER "NoAnswer" -#define MM_ERROR_MODEM_GSM_PHONEFAILURE "PhoneFailure" -#define MM_ERROR_MODEM_GSM_NOCONNECTION "NoConnection" -#define MM_ERROR_MODEM_GSM_LINKRESERVED "LinkReserved" -#define MM_ERROR_MODEM_GSM_OPERATIONNOTALLOWED "OperationNotAllowed" -#define MM_ERROR_MODEM_GSM_OPERATIONNOTSUPPORTED "OperationNotSupported" -#define MM_ERROR_MODEM_GSM_PHSIMPINREQUIRED "PhSimPinRequired" -#define MM_ERROR_MODEM_GSM_PHFSIMPINREQUIRED "PhFSimPinRequired" -#define MM_ERROR_MODEM_GSM_PHFSIMPUKREQUIRED "PhFSimPukRequired" -#define MM_ERROR_MODEM_GSM_SIMNOTINSERTED "SimNotInserted" -#define MM_ERROR_MODEM_GSM_SIMPINREQUIRED "SimPinRequired" -#define MM_ERROR_MODEM_GSM_SIMPUKREQUIRED "SimPukRequired" -#define MM_ERROR_MODEM_GSM_SIMFAILURE "SimFailure" -#define MM_ERROR_MODEM_GSM_SIMBUSY "SimBusy" -#define MM_ERROR_MODEM_GSM_SIMWRONG "SimWrong" -#define MM_ERROR_MODEM_GSM_INCORRECTPASSWORD "IncorrectPassword" -#define MM_ERROR_MODEM_GSM_SIMPIN2REQUIRED "SimPin2Required" -#define MM_ERROR_MODEM_GSM_SIMPUK2REQUIRED "SimPuk2Required" -#define MM_ERROR_MODEM_GSM_MEMORYFULL "MemoryFull" -#define MM_ERROR_MODEM_GSM_INVALIDINDEX "InvalidIndex" -#define MM_ERROR_MODEM_GSM_NOTFOUND "NotFound" -#define MM_ERROR_MODEM_GSM_MEMORYFAILURE "MemoryFailure" -#define MM_ERROR_MODEM_GSM_TEXTTOOLONG "TextTooLong" -#define MM_ERROR_MODEM_GSM_INVALIDCHARS "InvalidChars" -#define MM_ERROR_MODEM_GSM_DIALSTRINGTOOLONG "DialStringTooLong" -#define MM_ERROR_MODEM_GSM_INVALIDDIALSTRING "InvalidDialString" -#define MM_ERROR_MODEM_GSM_NONETWORK "NoNetwork" -#define MM_ERROR_MODEM_GSM_NETWORKTIMEOUT "NetworkTimeout" -#define MM_ERROR_MODEM_GSM_NETWORKNOTALLOWED "NetworkNotAllowed" -#define MM_ERROR_MODEM_GSM_NETWORKPINREQUIRED "NetworkPinRequired" -#define MM_ERROR_MODEM_GSM_NETWORKPUKREQUIRED "NetworkPukRequired" -#define MM_ERROR_MODEM_GSM_NETWORKSUBSETPINREQUIRED "NetworkSubsetPinRequired" -#define MM_ERROR_MODEM_GSM_NETWORKSUBSETPUKREQUIRED "NetworkSubsetPukRequired" -#define MM_ERROR_MODEM_GSM_SERVICEPINREQUIRED "ServicePinRequired" -#define MM_ERROR_MODEM_GSM_SERVICEPUKREQUIRED "ServicePukRequired" -#define MM_ERROR_MODEM_GSM_CORPORATEPINREQUIRED "CorporatePinRequired" -#define MM_ERROR_MODEM_GSM_CORPORATEPUKREQUIRED "CorporatePukRequired" -#define MM_ERROR_MODEM_GSM_HIDDENKEYREQUIRED "HiddenKeyRequired" -#define MM_ERROR_MODEM_GSM_EAPMETHODNOTSUPPORTED "EapMethodNotSupported" -#define MM_ERROR_MODEM_GSM_INCORRECTPARAMS "IncorrectParams" -#define MM_ERROR_MODEM_GSM_UNKNOWN "Unknown" -#define MM_ERROR_MODEM_GSM_GPRSILLEGALMS "GprsIllegalMs" -#define MM_ERROR_MODEM_GSM_GPRSILLEGALME "GprsIllegalMe" -#define MM_ERROR_MODEM_GSM_GPRSSERVICENOTALLOWED "GprsServiceNotAllowed" -#define MM_ERROR_MODEM_GSM_GPRSPLMNNOTALLOWED "GprsPlmnNotAllowed" -#define MM_ERROR_MODEM_GSM_GPRSLOCATIONNOTALLOWED "GprsLocationNotAllowed" -#define MM_ERROR_MODEM_GSM_GPRSROAMINGNOTALLOWED "GprsRoamingNotAllowed" -#define MM_ERROR_MODEM_GSM_GPRSOPTIONNOTSUPPORTED "GprsOptionNotSupported" -#define MM_ERROR_MODEM_GSM_GPRSNOTSUBSCRIBED "GprsNotSubscribed" -#define MM_ERROR_MODEM_GSM_GPRSOUTOFORDER "GprsOutOfOrder" -#define MM_ERROR_MODEM_GSM_GPRSPDPAUTHFAILURE "GprsPdpAuthFailure" -#define MM_ERROR_MODEM_GSM_GPRSUNSPECIFIED "GprsUnspecified" -#define MM_ERROR_MODEM_GSM_GPRSINVALIDCLASS "GprsInvalidClass" diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-serial-error.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-serial-error.xml deleted file mode 100644 index 8551b6ef03..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/mm-serial-error.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - Copyright (C) 2008 Novell, Inc. - - - - Could not open serial device. - - - - - - Could not write to the serial device. - - - - - - A response was not received in time. - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Cdma.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Cdma.xml deleted file mode 100644 index 4f7b00a5a4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Cdma.xml +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - - - Activates the modem for use with a given carrier. In the - event of immediate failure, returns an error value instead of - setting a DBus error. - - - - - - Name of carrier. - - - - - An enum from MM_MODEM_CDMA_ACTIVATION_ERROR. This is - returned for immediate errors. Delayed errors are returned - via an ActivationStateChanged signal - - - - - - - Sets modem configuration data. Unlike regular Activate(), - this does not contact the carrier. Some modems will reboot - after this call is made. - - - - - - A dictionary of properties to set on the modem. Keys include 'mdn', 'min' - - - - - - - Workaround for the fact that dbus-send cannot send - dictionaries of variants. Calls ActivateManual, with - system_id converted to int. - - - - - - Same as ActivateManual - - - - - - - The device activation state changed. - - - Current activation state - - - Carrier-specific error code - - - Selected Modem.Simple.GetStatus keys that have changed as a - result of this activation state change. Will include 'mdn' - and 'min'. - - - - - - - Get the current signal quality. - - - - - - Signal quality (percent). - - - - - - - Get the Electronic Serial Number of the card. - - - - - - The ESN. - - - - - - - Get the Service System details of the current network, if registered. - - - - - - A structure containing the Band Class (0 = unknown, 1 = 800 MHz, 2 = 1900 MHz), the Band ("A" - "F" as defined by IS707-A), and the System ID of the serving network. - - - - - - - The signal quality changed. - - - - The new quality in percent, 0..100. - - - - - - Get device registration state. - - - - CDMA 1x registration state. - - - EVDO registration state. - - - - - - The modem's Mobile Equipment Identifier. - - - - - - The device registration state changed. - - - CDMA 1x registration state. - - - EVDO registration state. - - - - - - Registration status is unknown or the device is not registered. - - - Registered, but roaming status is unknown or cannot be provided by the device. The device may or may not be roaming. - - - Currently registered on the home network. - - - Currently registered on a roaming network. - - - - - - Device is not activated - - - Device is activating - - - Device is partially activated; carrier-specific steps required to continue. - - - Device is ready for use. - - - - - - - - Device cannot activate while roaming. - - - - - Device cannot activate on this network type (eg EVDO vs 1xRTT). - - - - - Device could not connect to the network for activation. - - - - - Device could not authenticate to the network for activation. - - - - - Later stages of device provisioning failed. - - - - - No signal available. - - - - - An error occurred. - - - - - Activation timed out. - - - - - API call for initial activation failed. - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Firmware.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Firmware.xml deleted file mode 100644 index 42bcae1282..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Firmware.xml +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - This interface allows clients to select or install firmware images on - modems. - - Firmware slots and firmware images are identified by arbitrary opaque - strings. - - Firmware images are represented as dictionaries of properties. - Certain properties are pre-defined, and some are required: - - Name (string, required): A user-readable name for the firmware image. - Version (string, optional): The version of the firmware. The format is - unspecified; tools attempting to upgrade firmware automatically must - understand the versioning scheme used by the modem driver they are - interacting with. May be displayed to the user. - - - - - List installed and available firmware images. - - Depending on the type of modem, installed images may be stored on the - host or the modem. The distinction between "installed" and - "available" is not one of where the firmware is stored, but that - installed images can be selected non-destructively, while available - images must be installed into a slot, possibly overwriting another - installed image. - - - - - The identifier of the selected firmware slot, or the empty string if - no slot is selected (such as if all slots are empty, or no slots - exist). - - - - - A dictionary of slots into which firmware is and/or can be - installed. The key of each entry is the identifier of the slot, - and the value is either an empty dictionary if the slot is empty, - or a dictionary of properties of the firmware image installed in - that slot. - - The slot identifiers and the mapping between slots and firmware - images are guaranteed to remain stable only as long as the modem - remains present. - - - - - A dictionary of available firmware images. The key of each entry is - the identifier of the image, and the value is a dictionary of - properties of the image. - - The image identifiers are guaranteed to remain stable only as long - as the modem remains present. - - - - - - - Selects a different firmware image to use, and immediately resets the - modem so that it begins using the new firmware image. - - Select will fail if the identifier does not match any of the slot - identifiers returned by List, or if the slot could not be selected - for some reason. - - - - - - The identifier of the firmware slot to select. - - - - - - - Install an available firmware image into a slot. - - Install does not guarantee that the image will be installed into the - specified slot, but does guarantee that, if the slot is empty, no - image will be overwritten, and if the slot is not empty, no image - other than the one in that slot will be overwritten. - - Install will fail if either of the identifiers is invalid, or if the - image could not be installed into the slot for some reason. - - - - - - The identifier of the firmware image to install. - - - - - The identifier of the slot into which the firmware should be - installed. - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Card.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Card.xml deleted file mode 100644 index c84107d01d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Card.xml +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - - Get the IMEI of the card. - - - - - - The IMEI. - - - - - - - Get the IMSI of the SIM card. - - - - - - The IMSI. - - - - - - - Returns the ID of the network operator that issued the SIM card, - formatted as a 5 or 6-digit MCC/MNC code (ex "310410"). - - - - - - The operator ID formatted as an MCC/MNC code. - - - - - - - Returns the SPN (Service Provider Name) from the SIM card, - - - - - - The Service Provider Name. - - - - - - - Get the subscriber phone number. - - - - - - The MSISDN. - - - - - - - Send the PUK and a new PIN to unlock the SIM card. - - - - - - The PUK code. - - - - - The PIN code. - - - - - - - Send the PIN to unlock the SIM card. - - - - - - The PIN code. - - - - - - - Enable or disable the PIN checking. - - - - - - The PIN code. - - - - - True to enable PIN checking. - - - - - - - Change the PIN code. - - - - - - The current PIN code. - - - - - The new PIN code. - - - - - - - An obfuscated SIM identifier based on the IMSI or the ICCID. This may - be available before the PIN has been entered depending on the device - itself. - - - - - - Bands supported by the card. (Note for plugin writers: - returned value must not contain ANY) - - - - - - Network selection modes supported by the card. (Note for plugin writers: - returned value must not contain ANY) - - - - - - Facilities for which PIN locking is enabled. - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Contacts.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Contacts.xml deleted file mode 100644 index bef1de8236..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Contacts.xml +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - - Add a new contact to the SIM card. - - - - - - The name of the contact. - - - - - The phone number of the contact. - - - - - The index of the new contact. - - - - - - - Delete a contact from the SIM card. - - - - - - The index of the contact. - - - - - - - Retrieve a contact from the SIM card. - - - - - - The index of the contact. - - - - - The contact structure containing index, name, and number. - - - - - - - List all contacts on the SIM card. - - - - - - The list of contacts where each contact has an index, name, and number. - - - - - - - Find a contact from the SIM card. - - - - - - The pattern to search for. - - - - - The list of matching contacts where a contact has an index, name, and number. - - - - - - - Get the number of contacts stored on the SIM card. - - - - - - The number of contacts. - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Hso.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Hso.xml deleted file mode 100644 index 5f548d1207..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Hso.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - Authenticate using the passed user name and password. - - - - - The user name. - - - The password. - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Network.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Network.xml deleted file mode 100644 index 5ba6c59232..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Network.xml +++ /dev/null @@ -1,340 +0,0 @@ - - - - - - - Register the device to network. - - - - - - The network ID to register. An empty string can be used to register to the home network. - - - - - - - Scan for available networks. - - - - - -

Found networks. It's an array of dictionaries (strings for both - keys and values) with each array element describing a mobile network - found in the scan. Each dict may include one or more of the following - keys:

-
    -
  • - "status": a number representing network availability status as - defined in 3GPP TS 27.007 section 7.3. e.g. "0" (unknown), "1" - (available), "2" (current), or "3" (forbidden). This key will - always be present. -
  • -
  • - "operator-long": long-format name of operator. If the name is - unknown, this field should not be present. -
  • -
  • - "operator-short": short-format name of operator. If the name is - unknown, this field should not be present. -
  • -
  • - "operator-num": mobile code of the operator. Returned in the - format "MCCMNC", where MCC is the three-digit ITU E.212 Mobile - Country Code and MNC is the two- or three-digit GSM Mobile - Network Code. e.g. "31026" or "310260". -
  • -
  • - "access-tech": a number representing the access technology used by - this mobile network as described in 3GPP TS 27.007 section 7.3. - e.g. "0" (GSM), "1" (GSM Compact), "2" (UTRAN/UMTS), "3" (EDGE), - etc. -
  • -
-
-
-
- - - - Set the APN. - - - - - - The APN. - - - - - - - Get the current signal quality. - - - - - - Signal quality (percent). - - - - - - - Sets the bands the device is allowed to use when connecting to a mobile network. - - - - - - The desired bands, as a set of flags. - - - - - - - Returns the current bands the device is using. (Note for plugin writers: returned value must not be ANY) - - - - - - The current bands, as a set of flags. - - - - - - - Set the desired mode the device may use when connecting to a mobile - network (DEPRECATED; see SetAllowedMode instead). - - - - - - The desired network mode. Only one mode may be specified, and may not be UNKNOWN. - - - - - - - Returns the current network mode of the device (DEPRECATED; does not - allow returning both the saved mode preference *and* the current access - technology of the device at the same time. See the AllowedMode - property instead). - - - - - - Returns the general network mode (ex. 2G/3G preference) of the device. - - - - - - - Get the registration status and the current operator (if registered). - - - - - - The returned information is composed of the following items in the - following order: -
    -
  • - Mobile registration status as defined in 3GPP TS 27.007 section - 10.1.19. See the MM_MODEM_GSM_NETWORK_REG_STATUS enumeration for - possible values. -
  • -
  • - Current operator code of the operator to which the mobile is - currently registered. Returned in the format "MCCMNC", where MCC - is the three-digit ITU E.212 Mobile Country Code and MNC is the - two- or three-digit GSM Mobile Network Code. If the MCC and MNC - are not known or the mobile is not registered to a mobile network, - this value should be a zero-length (blank) string. e.g. "31026" - or "310260". -
  • -
  • - Current operator name of the operator to which the mobile is - currently registered. If the operator name is not knowon or the - mobile is not registered to a mobile network, this value should - be a zero-length (blank) string. -
  • -
-
-
-
- - - - Set the access technologies a device is allowed to use when connecting - to a mobile network. - - - - - - The allowed mode. The device may not support all modes; see - the org.freedesktop.ModemManager.Gsm.Card.SupportedModes property for - allowed modes for each device. All devices support the "ANY" flag. - - - - - - - The allowed access technologies (eg 2G/3G preference) the device is allowed - to use when connecting to a mobile network. - - - - - - The current network access technology used by the device to communicate - with the base station. (Note to plugin writers: if the device's access - technology cannot be determined, use UNKNOWN) - - - - - - The signal quality changed. - - - - The new quality in percent, 0..100. - - - - - - - The registration status changed. - - - - Mobile registration status as defined in 3GPP TS 27.007 section - 10.1.19. - - - - - Current operator code of the operator to which the mobile is - currently registered. Returned in the format "MCCMNC", where MCC - is the three-digit ITU E.212 Mobile Country Code and MNC is the - two- or three-digit GSM Mobile Network Code. If the MCC and MNC - are not known or the mobile is not registered to a mobile network, - this value should be a zero-length (blank) string. e.g. "31026" or - "310260". - - - - - Current operator name of the operator to which the mobile is - currently registered. If the operator name is not knowon or the - mobile is not registered to a mobile network, this value should - be a zero-length (blank) string. - - - - - - - The network mode preference changed. (DEPRECATED; see documentation - for GetNetworkMode/SetNetworkMode) - - - The new network mode. - - - - - - GSM registration code as defined in 3GPP TS 27.007 section 10.1.19. - - - - Not registered, not searching for new operator to register. - - - - - Registered on home network. - - - - - Not registered, searching for new operator to register with. - - - - - Registration denied. - - - - - Unknown registration status. - - - - - Registered on a roaming network. - - - - - - - DEPRECATED; should not be used in new applications. Use - AccessTechnology, AllowedMode, and SetAllowedMode() instead. - - - Any network mode can be used - - - GPRS - - - EDGE - - - UMTS (3G) - - - HSDPA - - - Prefer 2G (GPRS or EDGE) - - - Prefer 3G (UMTS/HSDPA/HSUPA/HSPA) - - - Use only 2G (GPRS or EDGE) - - - Use only 3G (UMTS/HSDPA/HSUPA/HSPA) - - - HSUPA - - - HSPA (HSDPA + HSUPA) - - - -
-
diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.SMS.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.SMS.xml deleted file mode 100644 index 5f231b02ad..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.SMS.xml +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - Delete an SMS message. - - - - - - The index of the SMS. - - - - - - - Retrieve an SMS from the SIM card. - - - - - - The index of the SMS. - - - - - A dictionary containing SMS properties of the SMS specified by the given index. This dictionary may contain the following key/value pairs: - - number : string - Phone number (mandatory) - text : string - SMS text (mandatory, empty if data cannot be decoded) - data : byte array - SMS user data (TP-UD) (mandatory) - data-coding-scheme: uint (0..255) - SMS user data coding scheme (TP-DCS) (mandatory) - smsc : string - SMS service center number (optional) - validity : uint (0..255) - Specifies when the SMS expires in SMSC (optional) - class : uint (0..3) - Message importance and location (optional) - completed: boolean - Whether all message parts have been received or not (optional) - index : uint - Index of message (for Get and Delete) (optional) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SMS properties to save with the following key values: - - number : string - Phone number (mandatory) - text : string - SMS text (mandatory) - smsc : string - SMS service center number (optional) - validity : uint (0..255) - Specifies when the SMS expires in SMSC (optional) - class : uint (0..3) - Message importance and location (optional) - - - - - - - - - - - SMS properties to save with the following key values: - - number : string - Phone number (mandatory) - text : string - SMS text (mandatory) - smsc : string - SMS service center number (optional) - validity : uint (0..255) - Specifies when the SMS expires in SMSC (optional) - class : uint (0..3) - Message importance and location (optional) - - - - - - - - - - - - - - - - - - - - - - - - Emitted when any part of a new SMS has been received (but not for subsequent parts, if any). Not all parts may have been received and the message may not be complete; if it is, the 'complete' argument will be TRUE. - - - - Index of the new SMS. - - - - - TRUE if all message parts have been received, otherwise FALSE. - - - - - - - Emitted when the complete-ness status of an SMS message changes. An SMS may not necessarily be complete when the first part is received; this signal will be emitted when all parts have been received, even for single-part messages. - - - - The index of the SMS. - - - - - TRUE if all message parts have been received, otherwise FALSE. - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Ussd.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Ussd.xml deleted file mode 100644 index 88dcdf7ee0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.Ussd.xml +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - - Sends a USSD command string to the network initiating a USSD session. - When the request is handled by the network, the method returns the - response or an appropriate error. The network may be awaiting further - response from the ME after returning from this method and no new command - can be initiated until this one is cancelled or ended. - - - - - - The command to start the USSD session with. - - - - - The network response to the command which started the USSD session. - - - - - - - Respond to a USSD request that is either initiated by the mobile network, - or that is awaiting further input after Initiate() was called. - - - - - - The response to network-initiated USSD command, or a response to a - request for further input. - - - - - The network reply to this response to the network-initiated USSD - command. The reply may require further responses. - - - - - - - Cancel an ongoing USSD session, either mobile or network initiated. - - - - - - - - Indicates the state of any ongoing USSD session. Values may be one of - the following: "idle" (no active session), "active" (a session is active - and the mobile is waiting for a response), "user-response" (the network - is waiting for the client's response, which must be sent using Respond()). - - - - - - Contains any network-initiated request to which no USSD response is - required. When no USSD session is active, or when there is no network- - initiated request, this property will be a zero-length string. - - - - - - Contains any pending network-initiated request for a response. Client - should call Respond() with the appropriate response to this request. - When no USSD session is active, or when there is no pending - network-initiated request, this property will be a zero-length string. - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.xml deleted file mode 100644 index 8ef62bfc6f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Gsm.xml +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - - A bitfield describing the specific access modes and technologies - supported by a device and the access technology in-use when connected to - a mobile network. - - - Unknown or invalid mode. - - - For certain operations, allow the modem to pick any available mode. - - - GPRS - - - EDGE - - - UMTS (3G) - - - HSDPA (3G) - - - Prefer 2G (GPRS or EDGE) - - - Prefer 3G (UMTS/HSDPA/HSUPA/HSPA) - - - Use only 2G (GPRS or EDGE) - - - Use only 3G (UMTS/HSDPA/HSUPA/HSPA) - - - HSUPA (3G) - - - HSPA (3G) - - - GSM - - - GSM Compact - - - - - - A bitfield describing the specific radio bands supported by the device - and the radio bands the device is allowed to use when connecting to a - mobile network. - - - Unknown or invalid band - - - For certain operations, allow the modem to select a band automatically. - - - GSM/GPRS/EDGE 900 MHz - - - GSM/GPRS/EDGE 1800 MHz - - - GSM/GPRS/EDGE 1900 MHz - - - GSM/GPRS/EDGE 850 MHz - - - WCDMA 2100 MHz (Class I) - - - WCDMA 3GPP 1800 MHz (Class III) - - - WCDMA 3GPP AWS 1700/2100 MHz (Class IV) - - - WCDMA 3GPP UMTS 800 MHz (Class VI) - - - WCDMA 3GPP UMTS 850 MHz (Class V) - - - WCDMA 3GPP UMTS 900 MHz (Class VIII) - - - WCDMA 3GPP UMTS 1700 MHz (Class IX) - - - WCDMA 3GPP UMTS 1900 MHz (Class II) - - - WCDMA 3GPP UMTS 2600 MHz (Class VII, internal) - - - - - - Describes the device's current access mode preference; ie the specific - technology preferences the device is allowed to use when connecting to - a mobile network. - - - Any mode can be used - - - Prefer 2G (GPRS or EDGE) - - - Prefer 3G (UMTS or HSxPA) - - - Use only 2G (GPRS or EDGE) - - - Use only 3G (UMTS or HSxPA) - - - - - - Describes various access technologies that a device uses when connected - to a mobile network. - - - The access technology used is unknown - - - GSM - - - Compact GSM - - - GPRS - - - EDGE (ETSI 27.007: "GSM w/EGPRS") - - - UMTS (ETSI 27.007: "UTRAN") - - - HSDPA (ETSI 27.007: "UTRAN w/HSDPA") - - - HSUPA (ETSI 27.007: "UTRAN w/HSUPA") - - - HSPA (ETSI 27.007: "UTRAN w/HSDPA and HSUPA") - - - HSPA+ (ETSI 27.007: "UTRAN w/HSPA+") - - - - - - A bitfield describing which facilities have a lock enabled, i.e., - requires a pin or unlock code. The facilities include the - personalizations (device locks) described in 3GPP spec TS 22.022, - and the PIN and PIN2 locks, which are SIM locks. - - - No facility - - - SIM lock - - - Fixed dialing (PIN2) SIM lock - - - Device is locked to a specific SIM - - - Device is locked to first SIM inserted - - - Network personalization - - - Network subset personalization - - - Service provider personalization - - - Corporate personalization - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Location.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Location.xml deleted file mode 100644 index 0abb361cd7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Location.xml +++ /dev/null @@ -1,253 +0,0 @@ - - - - - - This interface allows devices to provide location information to client - applications. Not all devices can provide this information, or even if - they do, they may not be able to provide it while a data session is - active. - - - - - Location capabilities of the device. - - - - - - TRUE if location information gathering is enabled for this device, FALSE - if it is disabled. When disabled, the device will not provide location - information. - - - - - - Enable or disable location information gathering. This method may - require the client to authenticate itself. This method may also cause - any necessary functionality of the mobile be be turned on, including - enabling the modem device itself. - - - - - - TRUE to enable location information gathering, FALSE to disable. - - - - - When enabling location information gathering, this argument controls - whether the device emits signals with new location information or not. - When signals are emitted, any client application (including malicious - ones!) can listen for location updates unless D-Bus permissions - restrict these signals from certain users. If further security is - desired, this argument can be set to FALSE to disable location - updates via D-Bus signals and require applications to call - authenticated APIs (like GetLocation) to get location information. - This argument is ignored when disabling location information - gathering. - - - - - - - Return current location information, if any. This method may require - the client to authenticate itself. - - - - - - Dict of available location information when location information - gathering is enabled. If the modem supports multiple location types - it may return more than one here. - - - - - - - TRUE if location updates will be emitted via D-Bus signals, FALSE - if location updates will not be emitted. See the Enable method for - more information. - - - - - - Dict of available location information when location information - gathering is enabled. If the modem supports multiple location types - it may return more than one here. Note that if the device was told - not to emit updated location information when location information - gathering was initially enabled, this property may not return - any location information for security reasons. - - - - - - A mapping from location type to type-specific location information. - - - - Identifies the type and format of the associated location information. - Contrary to the value description, this is not a bitfield but uses the - same values as the MM_MODEM_LOCATION_CAPABILITIES bitfield. - - - - - Contains type-specific location information. See the documentation for - each type for a description of its data format. - - - - - - -

Unknown or no capabilties.

-
- - -

For capability reporting, indicates the device is capable of - providing GPS NMEA-format location information.

- -

For location reporting, devices supporting this capability return - a string containing one or more NMEA sentences (D-Bus signature 's'). - The manager will cache the most recent NMEA sentence of each type for - a period of time not less than 30 seconds. When reporting multiple - NMEA sentences, sentences shall be separated by an ASCII Carriage - Return and Line Feed (<CR><LF>) sequence. -

-

- For example, if the device sends a $GPRMC sentence immediately - followed by a $GPGGA sentence, the reported location string would be - (where of course the <CR><LF> is replaced with the actual - ASCII CR (0x0D) and LF (0x0A) control characters): -

-              $GPRMC,134523.92,V,,,,,,,030136,,,N*73<CR><LF>$GPGGA,,,,,,0,00,0.5,,M,0.0001999,M,0.0000099,0000*45
-            
- If the device sends a new $GPRMC three seconds later, the new $GPRMC - replaces the previously received $GPRMC sentence, and the updated - string would be: -
-              $GPRMC,134526.92,V,,,,,,,030136,,,N*76<CR><LF>$GPGGA,,,,,,0,00,0.5,,M,0.0001999,M,0.0000099,0000*45
-            
- If the device then sends a $GPGSA sentence about 5 seconds later, the - $GPGSA sentence is added to the string (since no $GPGSA sentence was - previously received in this session), the updated string would be: -
-              $GPRMC,134526.92,V,,,,,,,030136,,,N*76<CR><LF>$GPGGA,,,,,,0,00,0.5,,M,0.0001999,M,0.0000099,0000*45<CR><LF>$GPGSA,A,1,,,,,,,,,,,,,1.1,0.5,1.0*34
-            
- The manager may discard any cached sentences older than 30 seconds. -

-

This allows clients to read the latest positioning data as soon as - possible after they start, even if the device is not providing - frequent location data updates. -

-
-
- - -

For capability reporting, indicates the device is capable of - providing GSM Location Area Code/Cell ID location information.

- -

For location reporting, devices supporting this - capability return a string in the format "MCC,MNC,LAC,CI" (without the - quotes of course) where the following applies:

-
    -
  • - MCC is the three-digit ITU E.212 Mobile Country Code of the - network provider to which the mobile is currently registered. - This value should be the same MCC as reported by the - org.freedesktop.Modem.Gsm.Network.GetRegistrationInfo() method's - returned "operator code" argument. - e.g. "310" -
  • -
  • - MNC is the two- or three-digit GSM Mobile Network Code of the - network provider to which the mobile is currently registered. - This value should be the same MCC as reported by the - org.freedesktop.Modem.Gsm.Network.GetRegistrationInfo() method's - returned "operator code" argument. - e.g. "26" or "260" -
  • -
  • - LAC is the two-byte Location Area Code of the base station with - which the mobile is registered, in upper-case hexadecimal format - without leading zeros, as specified in 3GPP TS 27.007 section - 10.1.19. e.g. "84CD". -
  • -
  • - CI is the two- or four-byte Cell Identifier with which the mobile - is registered, in upper-case hexadecimal format without leading - zeros, as specified in 3GPP TS 27.007. e.g. "2BAF" or "D30156". -
  • -
-

The entire string may only be composed of the ASCII digits [0-9], - the alphabetical characters [A-F], and the comma (,) character. No - other characters are allowed. For example: "310,260,8BE3,2BAF" or - "250,40,CE00,1CEAD8F0".

- -

If any of these four items (MCC,MNC,LAC,CI) is unknown or the - mobile is not registered with a network, then the GSM_LAC_CI location - information item should not be provided as a returned value from the - GetLocation() method or in the Location property.

-
-
- - -

For capability reporting, indicates the device is capable of - providing raw GPS information using a series of defined key/value - pairs.

- -

For location reporting, devices supporting this - capability return a D-Bus dict (signature a{sv}) mapping well-known - keys to values with defined formats. The allowed key/value pairs - and their formats are:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
KeyValue TypeValue contentsExample
latitudedLatitude in Decimal Degrees (positive numbers mean N quadrasphere, negative mean S quadrasphere)38.889722 (ie, 38d 53' 22" N)
longitudedLongitude in Decimal Degrees (positive numbers mean E quadrasphere, negative mean W quadrasphere)-77.008889 (ie, 77d 0' 32" W)
altitudedAltitude above sea level in meters33.5
horiz-velocitydHorizontal velocity in meters-per-second.5
vert-velocitydVertical velocity in meters-per-second.01
-

The 'latitude' and 'longitude' keys are required; other keys are - optional.

-
-
-
- -
-
- diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Simple.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Simple.xml deleted file mode 100644 index f17b6c90c7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Simple.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - Do everything needed to connect the modem. - - - - - - Dictionary of properties needed to get the modem connected. - Each implementation is free to add it's own specific key-value pairs. The predefined - common ones are: - - 'pin' : string - 'network_id' : string - 'band' : uint - 'network_mode' : uint - 'apn' : string - 'number' : string - - - - - - - Get the modem status. - - - - - - Dictionary of properties. - Each implementation is free to add it's own specific key-value pairs. The predefined - common ones are: - - 'state' : uint (always) - 'signal_quality' : uint (state >= registered) - 'operator_code' : string (state >= registered) - 'operator_name' : string (state >= registered) - 'band' : uint (state >= registered) - 'network_mode' : uint (state >= registered) - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Time.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Time.xml deleted file mode 100644 index cfdb9a381e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.Time.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - This interface allows clients to receive network time and timezone - updates broadcast by mobile networks. - - - - - The timezone data provided by the network. It may include one of more - of the following fields: - - 'offset': offset of the timezone from UTC, in minutes (including DST, - if applicable). - 'dst_offset': amount of 'offset' that is due to DST, in minutes. - 'leap_seconds': number of leap seconds included in the network time. - - - - - - Gets the current network time. - - This method will only work if the modem tracks, or can request, the - current network time; it will not attempt to use previously-received - network time updates on the host to guess the current network time. - - - - - If the network time is known, a string containing a date and time in - ISO 8601 format. - - If the network time is unknown, the empty string. - - - - - - - Sent when the network time is updated. - - - - If the network time is known, a string containing a date and time in - ISO 8601 format. - - If the network time is unknown, the empty string. - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.xml deleted file mode 100644 index c38ecd2a95..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.Modem.xml +++ /dev/null @@ -1,247 +0,0 @@ - - - - - - - - Enable the device. Initializes the modem. - - - - - - True to enable the device, False to disable. - - - - - - - Dial in. - - - - - - The number to use for dialing. - - - - - - - Disconnect modem. - - - - - - - - Request the IP4 configuration from the device. - Note that it'll only be supported for IPMethod MM_MODEM_IP_METHOD_STATIC. - - - - - Structure containing IP4 address, DNS1, DNS2, DNS3. - The DNS list is padded with 0's if there's less than 3 DNS servers. - - - - - - Get the card information (manufacturer, modem, version). - - - - - - Structure containing manufacturer, model, and version (revision) of the card. - - - - - - - Clear non-persistent configuration and state, and return the device to - a newly-powered-on state. This command may power-cycle the device. - - - - - - - - Clear the modem's configuration (including persistent configuration and - state), and return the device to a factory-default state. This command - may or may not power-cycle the device. - - - - - Carrier-supplied code required to reset the modem. Ignored if not required. - - - - - - The modem's state (see the State property) changed. - - - - Old state. - - - - - New state. - - - - - Reason for this state change. - - - - - - - The modem port to use for IP configuration and traffic. - - - - - - A best-effort device identifier based on various device information like - model name, firmware revision, USB/PCI/PCMCIA IDs, and other properties. - This ID is not guaranteed to be unique and may be shared between - identical devices with the same firmware, but is intended to be - "unique enough" for use as a casual device identifier for various - user experience operations. This is not the device's IMEI or ESN since - those may not be available before unlocking the device via a PIN. - - - - - - The physical modem device reference (ie, USB, PCI, PCMCIA device), which - may be dependent upon the operating system. In Linux for example, this - points to a sysfs path of the usb_device object. - - - - - - The driver handling the device. - - - - - - The modem type. - - - - - - TRUE if the modem is enabled (ie, powered and usable), FALSE if it is disabled. - - - - - - The identity of the device. This will be the IMEI number for - GSM devices and the hex-format ESN/MEID for CDMA devices. - - - - - - Empty if the device is usable without an unlock code or has already - been unlocked. If the device needs to be unlocked before becoming usable this - property contains the specific unlock code required.  Valid unlock code values - are "" (blank), "sim-pin", "sim-puk", "ph-sim-pin", "ph-fsim-pin", - "ph-fsim-puk", "sim-pin2", "sim-puk2", "ph-net-pin", "ph-net-puk", - "ph-netsub-pin", "ph-netsub-puk", "ph-sp-pin", "ph-sp-puk", "ph-corp-pin", and - "ph-corp-puk". - - - - - - The number of unlock retries remaining for the unlock code given by the - property UnlockRequired, or 999 if the device does not support reporting - unlock retries. If UnlockRequired is blank, this property gives the - number of tries allowed for changing or disabling sim-pin. - - - - - - The IP configuration method. - - - - - - - State of the modem. - - - - - - - A GSM device. - - - - - A CDMA device. - - - - - - - - Use PPP to get the address. - - - - - Static configuration, the modem will provide IP information. - - - - - Use DHCP - - - - - - - - Reason unknown or not reportable. - - - - - State change was requested by an interface user. - - - - - State change was caused by a system suspend. - - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.xml deleted file mode 100644 index 347aedf47a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/files/org.freedesktop.ModemManager.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - Get the list of modem devices. - - - - - List of object paths of modem devices known to the system. - - - - - - - Start a new scan for connected modem devices. - - - - - - - - - Set logging verbosity. - - - - One of [ERR, WARN, INFO, DEBUG]. - - - - - - - A device was added to the system. - - - - The object path of the newly added device. - - - - - - - A device was removed from the system, and is no longer available. - - - - The object path of the device that was just removed. - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/modemmanager-classic-interfaces-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/modemmanager-classic-interfaces-0.0.1.ebuild deleted file mode 100644 index 26612a2989..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/modemmanager-classic-interfaces/modemmanager-classic-interfaces-0.0.1.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -# Headers so we can build apps (like cromo) that depend on the old MM -# interface (org.freedesktop.ModemManager.*) even after we've switched -# to mm-next (org.freedesktop.ModemManager1.*) - -EAPI=4 - -DESCRIPTION="DBus interface descriptions and headers for ModemManager v0.5" -HOMEPAGE="http://www.chromium.org/" -#SRC_URI not defined because we get our source locally - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -DEPEND="! net-libs/neon migration finishes. - -SLOT="0" -KEYWORDS="amd64 arm x86" diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/Manifest b/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/Manifest deleted file mode 100644 index 9647fe6798..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST openvpn-2.1.12.tar.gz 881645 SHA256 b8b620416e3a50bfa362fb3308e85eea6acd241a59604bb44ff2ee32b6fde6d5 SHA512 f9c2348f0e727ccac9ff979a70bbad47aab59b75f7a10336f3ef73b7957ba5a8a5882bd928ee52621466958b3bee20c66e58efec7ab4d2763fd64b7e56063b3d WHIRLPOOL 233e09a41821ee9b5d3fb44ff516f69ad6f37f4d9f12e8c419e31761d3dbd2b79b1ccabe7ddd825f7a8eb5d1fb5394f7d3a7b6fc6b371e9de748a1373ac0910c diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/files/iv_plat.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/files/iv_plat.patch deleted file mode 100644 index 8f46f98dd4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/files/iv_plat.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- ssl.c.orig 2012-04-02 14:49:21.093698637 -0700 -+++ ssl.c 2012-04-02 14:48:50.663277244 -0700 -@@ -3912,11 +3912,14 @@ - struct env_set *es = session->opt->es; - struct env_item *e; - struct buffer out = alloc_buf_gc (512*3, &gc); -+ const char *iv_plat, *iv_plat_rel; - - /* push version */ - buf_printf (&out, "IV_VER=%s\n", PACKAGE_VERSION); - - /* push platform */ -+ iv_plat = getenv("IV_PLAT"); -+ if (iv_plat == NULL) { - #if defined(TARGET_LINUX) - buf_printf (&out, "IV_PLAT=linux\n"); - #elif defined(TARGET_SOLARIS) -@@ -3932,6 +3935,12 @@ - #elif defined(WIN32) - buf_printf (&out, "IV_PLAT=win\n"); - #endif -+ } else -+ buf_printf (&out, "IV_PLAT=%s\n", iv_plat); -+ -+ iv_plat_rel = getenv("IV_PLAT_REL"); -+ if (iv_plat_rel != NULL) -+ buf_printf (&out, "IV_PLAT_REL=%s\n", iv_plat_rel); - - /* push mac addr */ - { diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/files/pkcs11-slot.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/files/pkcs11-slot.patch deleted file mode 100644 index 5d6cb1aa1b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/files/pkcs11-slot.patch +++ /dev/null @@ -1,145 +0,0 @@ -diff -u openvpn-2.1.12.orig/pkcs11.c openvpn-2.1.12/pkcs11.c ---- openvpn-2.1.12.orig/pkcs11.c 2011-03-17 12:57:45.000000000 -0700 -+++ openvpn-2.1.12/pkcs11.c 2011-10-10 09:36:55.000000000 -0700 -@@ -602,6 +602,115 @@ - return success; - } - -+static CK_RV -+_hexToBinary( -+ unsigned char * const target, -+ const char * const source, -+ size_t * const p_target_size -+) { -+ size_t target_max_size = *p_target_size; -+ const char *p; -+ char buf[3] = { 0, 0, 0 }; -+ int i; -+ -+ i = 0; -+ *p_target_size = 0; -+ for (p = source; *p != '\0' && *p_target_size < target_max_size; p++) { -+ if (!isxdigit (*p)) -+ continue; -+ buf[i%2] = *p; -+ if ((i%2) == 1) { -+ unsigned v; -+ if (sscanf (buf, "%x", &v) != 1) -+ v = 0; -+ target[*p_target_size] = v & 0xff; -+ (*p_target_size)++; -+ } -+ i++; -+ } -+ return (*p == '\0' ? CKR_OK : CKR_ATTRIBUTE_VALUE_INVALID); -+} -+ -+static CK_RV -+get_certificate_id( -+ pkcs11h_certificate_id_t *p_certificate_id, -+ const char * const pkcs11_id -+) { -+ pkcs11h_certificate_id_list_t user_certificates = NULL; -+ pkcs11h_certificate_id_list_t current = NULL; -+ char *cka_id = NULL; -+ size_t cka_id_size; -+ CK_RV rv; -+ -+ rv = pkcs11h_certificate_deserializeCertificateId ( -+ p_certificate_id, -+ pkcs11_id -+ ); -+ if (rv == CKR_OK) -+ return rv; -+ if (rv != CKR_ATTRIBUTE_VALUE_INVALID) { -+ msg (M_WARN, "PKCS#11: Cannot deserialize id %ld-'%s'", rv, pkcs11h_getMessage (rv)); -+ return rv; -+ } -+ -+ /* -+ * The specified certificate id lacks the token id, search the -+ * cert list for first matching id. -+ */ -+ cka_id_size = strlen(pkcs11_id)/2; -+ if ( -+ (cka_id = (char *)malloc (cka_id_size)) == NULL || -+ (rv = _hexToBinary (cka_id, pkcs11_id, &cka_id_size)) != CKR_OK -+ ) { -+ msg (M_FATAL, "PKCS#11: get_certificate_id: Cannot convert id %ld-'%s'", rv, pkcs11h_getMessage (rv)); -+ goto cleanup; -+ } -+ -+ if ( -+ (rv = pkcs11h_certificate_enumCertificateIds ( -+ PKCS11H_ENUM_METHOD_CACHE_EXIST, -+ NULL, -+ PKCS11H_PROMPT_MASK_ALLOW_ALL, -+ NULL, -+ &user_certificates -+ )) != CKR_OK -+ ) { -+ msg (M_FATAL, "PKCS#11: get_certificate_id: Cannot enumerate certificates %ld-'%s'", rv, pkcs11h_getMessage (rv)); -+ goto cleanup; -+ } -+ -+ rv = CKR_ATTRIBUTE_VALUE_INVALID; -+ for (current = user_certificates;current != NULL; current = current->next) { -+ pkcs11h_certificate_id_t cid = current->certificate_id; -+ -+ if ( -+ cka_id_size == cid->attrCKA_ID_size && -+ memcmp( -+ cka_id, -+ cid->attrCKA_ID, -+ cid->attrCKA_ID_size -+ ) == 0 -+ ) { -+ rv = pkcs11h_certificate_duplicateCertificateId( -+ p_certificate_id, -+ cid -+ ); -+ break; -+ } -+ } -+ -+cleanup: -+ if (user_certificates != NULL) { -+ pkcs11h_certificate_freeCertificateIdList (user_certificates); -+ user_certificates = NULL; -+ } -+ if (cka_id != NULL) { -+ free (cka_id); -+ cka_id = NULL; -+ } -+ return rv; -+} -+ - int - SSL_CTX_use_pkcs11 ( - SSL_CTX * const ssl_ctx, -@@ -653,23 +762,21 @@ - } - - if ( -- (rv = pkcs11h_certificate_deserializeCertificateId ( -+ (rv = get_certificate_id ( - &certificate_id, - id_resp.password - )) != CKR_OK - ) { -- msg (M_WARN, "PKCS#11: Cannot deserialize id %ld-'%s'", rv, pkcs11h_getMessage (rv)); - goto cleanup; - } - } - else { - if ( -- (rv = pkcs11h_certificate_deserializeCertificateId ( -+ (rv = get_certificate_id ( - &certificate_id, - pkcs11_id - )) != CKR_OK - ) { -- msg (M_WARN, "PKCS#11: Cannot deserialize id %ld-'%s'", rv, pkcs11h_getMessage (rv)); - goto cleanup; - } - } diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/metadata.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/metadata.xml deleted file mode 100644 index 046745ad58..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/metadata.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - no-herd - - cedk@gentoo.org - Cédric Krier - - OpenVPN is an easy-to-use, robust and highly -configurable VPN daemon which can be used to securely link two or more -networks using an encrypted tunnel. - - Apply eurephia patch - Enabled iproute2 support instead of net-tools - Enables openvpn to save passwords - Enable PKCS#11 smartcard support - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/openvpn-2.1.12-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/openvpn-2.1.12-r2.ebuild deleted file mode 120000 index 27a2e81266..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/openvpn-2.1.12-r2.ebuild +++ /dev/null @@ -1 +0,0 @@ -openvpn-2.1.12.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/openvpn-2.1.12.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/openvpn-2.1.12.ebuild deleted file mode 100644 index e4fec1252c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/openvpn/openvpn-2.1.12.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/openvpn/openvpn-2.1.4.ebuild,v 1.8 2011/03/21 08:22:40 xarthisius Exp $ - -EAPI=2 - -inherit eutils multilib toolchain-funcs autotools flag-o-matic - -DESCRIPTION="OpenVPN is a robust and highly flexible tunneling application compatible with many OSes." -SRC_URI="http://swupdate.openvpn.org/as/as-openvpn-core/build/${P}.tar.gz" -HOMEPAGE="http://openvpn.net/" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" -IUSE="eurephia examples iproute2 ipv6 minimal pam passwordsave selinux ssl static pkcs11 userland_BSD" - -DEPEND=">=dev-libs/lzo-1.07 - kernel_linux? ( - iproute2? ( sys-apps/iproute2[-minimal] ) !iproute2? ( sys-apps/net-tools ) - ) - !minimal? ( pam? ( virtual/pam ) ) - selinux? ( sec-policy/selinux-openvpn ) - ssl? ( >=dev-libs/openssl-0.9.6 ) - pkcs11? ( >=dev-libs/pkcs11-helper-1.05 )" -RDEPEND="${DEPEND}" - -src_prepare() { - sed -i \ - -e "s/gcc \${CC_FLAGS}/\${CC} \${CFLAGS} -Wall/" \ - -e "s/-shared/-shared \${LDFLAGS}/" \ - plugin/*/Makefile || die "sed failed" - epatch "${FILESDIR}"/pkcs11-slot.patch - epatch "${FILESDIR}"/iv_plat.patch -} - -src_configure() { - # basic.h defines a type 'bool' that conflicts with the altivec - # keyword bool which has to be fixed upstream, see bugs #293840 - # and #297854. - # For now, filter out -maltivec on ppc and append -mno-altivec, as - # -maltivec is enabled implicitly by -mcpu and similar flags. - (use ppc || use ppc64) && filter-flags -maltivec && append-flags -mno-altivec - - econf \ - $(use_enable passwordsave password-save) \ - $(use_enable pkcs11) \ - $(use_enable ssl) \ - $(use_enable ssl crypto) \ - $(use_enable iproute2) -} - -src_compile() { - - if use static ; then - sed -i -e '/^LIBS/s/LIBS = /LIBS = -static /' Makefile || die "sed failed" - fi - - emake || die "make failed" -} - -src_install() { - emake DESTDIR="${D}" install || die "make install failed" -} - -pkg_postinst() { - # Add openvpn user so openvpn servers can drop privs - # Clients should run as root so they can change ip addresses, - # dns information and other such things. - enewgroup openvpn - enewuser openvpn "" "" "" openvpn -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/Manifest b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/Manifest deleted file mode 100644 index 3735d4d858..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST tlsdate-0.0.6.1.tar.gz 237594 SHA256 882ba80c61ca010862e2a8e1de45f2031a6861ddb4085e9d18754be50b369cd0 SHA512 d5739237e632d2039e311e632e68e8233bb274863473b43e772101f19679c0d3848f33261956a0fcacf990eea2256f031de32995cfabc105b8ebdf7d0c9f5b06 WHIRLPOOL 72419f166c0193e54761fdaead5403de56066fb465934e0afec601a0184a3f5b04891d99681deb9d003a9e4548234afe0dedafaffa4bc92d141cf64f2ba7ffdc diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/chromeos-version.sh b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/chromeos-version.sh deleted file mode 100755 index 86ac8dff69..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/chromeos-version.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec gawk -F, '{print gensub(/[[\]]/, "", "g", $2); exit}' "$1"/configure.ac diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/org.torproject.tlsdate.conf b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/org.torproject.tlsdate.conf deleted file mode 100644 index 0611af43ad..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/org.torproject.tlsdate.conf +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.confd b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.confd deleted file mode 100644 index 2d7ed030de..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.confd +++ /dev/null @@ -1,8 +0,0 @@ -# config file for /etc/init.d/tlsdate - -# Command to execute to set the time. -# This are some common tlsdate options: -# -l: leap (set time regardless of difference) -# -H: hostname to sync with -# -x: proxy URL -TLSDATE_OPTS="-l -H www.google.com" diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.rc b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.rc deleted file mode 100755 index b4d6f97ecc..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.rc +++ /dev/null @@ -1,17 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tlsdate/files/tlsdate.rc,v 1.1 2012/12/11 01:49:23 vapier Exp $ - -description="set time once when started" - -depend() { - use net -} - -start() { - : ${TLSDATE_CMD:=tlsdate} - ebegin "Setting clock via tlsdate '${TLSDATE_CMD}'" - "${TLSDATE_CMD}" ${TLSDATE_OPTS} - eend $? "Failed to set clock" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.service b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.service deleted file mode 100644 index 73f7af5b44..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdate.service +++ /dev/null @@ -1,9 +0,0 @@ -[Unit] -Description=Update local time over HTTPS - -[Service] -# TODO: use api.core-os.net. Unfortunatly, tlsdate doesn't like it for some reason. -ExecStart=/usr/bin/tlsdated -v - -[Install] -WantedBy=default.target diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.conf b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.conf deleted file mode 100644 index 800a315885..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.conf +++ /dev/null @@ -1,22 +0,0 @@ -base-path /var/cache/tlsdated -dry-run no -jitter 0 -max-tries 10 -min-steady-state-interval 86400 -should-load-disk yes -should-netlink yes -should-save-disk yes -should-sync-hwclock yes -steady-state-interval 86400 -subprocess-tries 10 -subprocess-wait-between-tries 3 -verbose yes -wait-between-tries 10 - -# Host configuration. -source - host clients3.google.com - port 443 - proxy none -end - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.confd b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.confd deleted file mode 100644 index d257289cc5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.confd +++ /dev/null @@ -1,15 +0,0 @@ -# config file for /etc/init.d/tlsdated - -# Command to execute to set the time. -# This are some common tlsdate options: -# -l: leap (set time regardless of difference) -# -H: hostname to sync with -# -x: proxy URL -TLSDATED_CMD="/usr/bin/tlsdate -l -H www.google.com" - -# Additional options; see `man tlsdated` for reference. -TLSDATED_OPTS="" - -# Cache dir. Probably don't need to change this. -# It matches the compiled-in default. -TLSDATED_CACHE_DIR="/var/cache/tlsdated" diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.rc b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.rc deleted file mode 100755 index e055a03a99..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/files/tlsdated.rc +++ /dev/null @@ -1,19 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tlsdate/files/tlsdated.rc,v 1.1 2012/12/11 01:49:23 vapier Exp $ - -description="start a daemon to continuously set time via a helper" - -command="tlsdated" -command_args="${TLSDATED_OPTS} -- ${TLSDATED_CMD}" -command_background="true" -pidfile="/var/run/${SVCNAME}.pid" - -depend() { - use net -} - -start_pre() { - checkpath -d -m 0700 "${TLSDATED_CACHE_DIR}" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/metadata.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/metadata.xml deleted file mode 100644 index 2be9152ce0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - vapier@gentoo.org - feel free to fix things - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-0.0.5-r26.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-0.0.5-r26.ebuild deleted file mode 120000 index a51fb8d634..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-0.0.5-r26.ebuild +++ /dev/null @@ -1 +0,0 @@ -tlsdate-0.0.5.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-0.0.5.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-0.0.5.ebuild deleted file mode 100644 index cc18432079..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-0.0.5.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 2012 The Chromium OS Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_COMMIT="8dbe89e0e08d5e5adeb4f414e8f284dbf0c17b80" -CROS_WORKON_TREE="3d6b0d529e066591245a40e40731b7e2b20d3b5c" -CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate" - -inherit autotools flag-o-matic toolchain-funcs cros-workon systemd - -DESCRIPTION="Update local time over HTTPS" -HOMEPAGE="https://github.com/ioerror/tlsdate" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="+dbus" - -DEPEND="dev-libs/openssl - dbus? ( sys-apps/dbus )" -RDEPEND="${DEPEND}" - -src_prepare() { - eautoreconf -} - -src_configure() { - # Our unprivileged group is called "tlsdate" - econf \ - $(use_enable dbus) \ - --sysconfdir=/usr/share \ - --with-unpriv-user=tlsdate \ - --with-unpriv-group=tlsdate \ - --with-dbus-user=tlsdate-dbus \ - --with-dbus-group=tlsdate-dbus -} - -src_compile() { - tc-export CC - emake CFLAGS="-Wall ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}" -} - -src_install() { - default - insinto /usr/share/tlsdate - doins "${FILESDIR}/tlsdated.conf" - insinto /usr/share/dbus-1/system.d - doins "${FILESDIR}/org.torproject.tlsdate.conf" - - systemd_dounit "${FILESDIR}/tlsdate.service" - systemd_enable_service default.target tlsdate.service -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-9999.ebuild deleted file mode 100644 index 8e585f43a0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tlsdate/tlsdate-9999.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2012 The Chromium OS Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate" - -inherit autotools flag-o-matic toolchain-funcs cros-workon systemd - -DESCRIPTION="Update local time over HTTPS" -HOMEPAGE="https://github.com/ioerror/tlsdate" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="+dbus" - -DEPEND="dev-libs/openssl - dbus? ( sys-apps/dbus )" -RDEPEND="${DEPEND}" - -src_prepare() { - eautoreconf -} - -src_configure() { - # Our unprivileged group is called "tlsdate" - econf \ - $(use_enable dbus) \ - --with-unpriv-user=tlsdate \ - --with-unpriv-group=tlsdate \ - --with-dbus-user=tlsdate-dbus \ - --with-dbus-group=tlsdate-dbus -} - -src_compile() { - tc-export CC - emake CFLAGS="-Wall ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}" -} - -src_install() { - default - insinto /etc/tlsdate - doins "${FILESDIR}/tlsdated.conf" - insinto /etc/dbus-1/system.d - doins "${FILESDIR}/org.torproject.tlsdate.conf" - - systemd_dounit "${FILESDIR}/tlsdate.service" - systemd_enable_service default.target tlsdate.service - -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/ChangeLog b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/ChangeLog deleted file mode 100644 index efed1f0823..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/ChangeLog +++ /dev/null @@ -1,842 +0,0 @@ -# ChangeLog for net-misc/tor -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/ChangeLog,v 1.196 2010/02/10 04:06:42 josejx Exp $ - - 10 Feb 2010; Joseph Jezak tor-0.2.1.22.ebuild: - Marked ppc stable for bug #301701. - - 01 Feb 2010; Markus Meier tor-0.2.1.22.ebuild: - amd64 stable, bug #301701 - - 30 Jan 2010; Raúl Porcel tor-0.2.1.22.ebuild: - sparc stable wrt #301701 - - 22 Jan 2010; Brent Baude tor-0.2.1.22.ebuild: - Marking tor-0.2.1.22 ppc64 for bug 301701 - - 22 Jan 2010; Christian Faulhammer tor-0.2.1.22.ebuild: - stable x86, bug 301701 - -*tor-0.2.1.22 (22 Jan 2010) - - 22 Jan 2010; Christian Faulhammer +tor-0.2.1.22.ebuild: - version bump for security bug 301701 - -*tor-0.2.1.21 (16 Jan 2010) - - 16 Jan 2010; Christian Faulhammer +tor-0.2.1.21.ebuild: - version bump, bug 301169 by Tim O'Kelly - - 27 Dec 2009; Christian Faulhammer - -files/tor-0.2.0.30-logrotate.patch, - -files/tor-0.2.0.33-no-internal-libevent.patch, -tor-0.2.0.35.ebuild, - -tor-0.2.1.19.ebuild, -tor-0.2.1.19-r1.ebuild: - clean up - - 26 Dec 2009; Raúl Porcel tor-0.2.1.19-r2.ebuild: - sparc stable wrt #294297 - - 08 Dec 2009; Brent Baude tor-0.2.1.19-r2.ebuild: - Marking tor-0.2.1.19-r2 ppc64 for bug 294297 - -*tor-0.2.1.20-r1 (06 Dec 2009) - - 06 Dec 2009; Christian Faulhammer -tor-0.2.1.20.ebuild, - +tor-0.2.1.20-r1.ebuild: - reintroduce OpenSSL patch for bug 292661 - -*tor-0.2.1.20 (02 Dec 2009) - - 02 Dec 2009; Christian Faulhammer +tor-0.2.1.20.ebuild: - version bump - - 25 Nov 2009; Markus Meier tor-0.2.1.19-r2.ebuild: - amd64 stable, bug #294297 - - 24 Nov 2009; Christian Faulhammer - tor-0.2.1.19-r2.ebuild: - stable x86, bug 294297 - - 21 Nov 2009; nixnut tor-0.2.1.19-r2.ebuild: - ppc stable #292022 - -*tor-0.2.1.19-r2 (12 Nov 2009) - - 12 Nov 2009; Christian Faulhammer - +tor-0.2.1.19-r2.ebuild, +files/tor-0.2.1.19-openssl.patch: - fix bug 2926611, patch discovered by Aidan Marks - - 07 Sep 2009; Christian Faulhammer files/tor.initd-r4: - respect CONFFILE variable in start calls, reported by Iome in bug 283524 - -*tor-0.2.1.19-r1 (17 Aug 2009) - - 17 Aug 2009; Christian Faulhammer - +tor-0.2.1.19-r1.ebuild, +files/tor-0.2.1.19-logrotate.patch: - fix logrotate support as provided by Martin von Gagern in bug 281439 - - 06 Aug 2009; Christian Faulhammer - -tor-0.2.1.16_rc.ebuild: - clean up release candidate - -*tor-0.2.1.19 (06 Aug 2009) - - 06 Aug 2009; Christian Faulhammer +tor-0.2.1.19.ebuild: - version bump - - 14 Jul 2009; Christian Faulhammer -tor-0.2.0.34.ebuild: - remove vulnerable version - - 12 Jul 2009; Joseph Jezak tor-0.2.0.35.ebuild: - Marked ppc stable for bug #275628. - - 30 Jun 2009; Brent Baude tor-0.2.0.35.ebuild: - Marking tor-0.2.0.35 ppc64 for bug 275628 - - 30 Jun 2009; Raúl Porcel tor-0.2.0.35.ebuild: - sparc stable wrt #275628 - - 29 Jun 2009; Christian Faulhammer tor-0.2.0.34.ebuild, - tor-0.2.0.35.ebuild, tor-0.2.1.16_rc.ebuild: - fix HOMEPAGE entries - - 29 Jun 2009; Markus Meier tor-0.2.0.35.ebuild: - amd64 stable, bug #275628 - -*tor-0.2.1.16_rc (29 Jun 2009) - - 29 Jun 2009; Christian Faulhammer - -tor-0.2.1.15_rc.ebuild, +tor-0.2.1.16_rc.ebuild: - extend version bump for security bug 275628 and remove one vulnerable - version - -*tor-0.2.0.35 (28 Jun 2009) - - 28 Jun 2009; Christian Faulhammer +tor-0.2.0.35.ebuild: - version bump for security bug 275628, directly stable for x86 - - 17 Jun 2009; Christian Faulhammer - tor-0.2.1.15_rc.ebuild: - remove all occurences of USE=bundledlibevent - -*tor-0.2.1.15_rc (17 Jun 2009) - - 17 Jun 2009; Christian Faulhammer - +tor-0.2.1.15_rc.ebuild: - add release candidate for 0.2.1 series - - 12 Jun 2009; Christian Faulhammer - files/torrc.sample-0.1.2.6.patch, +tor-0.2.0.34.ebuild, - -tor-0.2.0.34-r2.ebuild, +files/tor.initd-r4, -files/tor.initd-r6: - revert all my changes for bug 268396 as they will break badly with - Baselayout 1, see bug 272527 - -*tor-0.2.0.34-r2 (03 Jun 2009) - - 03 Jun 2009; Christian Faulhammer -files/tor.initd-r5, - +files/tor.initd-r6, -tor-0.2.0.34-r1.ebuild, +tor-0.2.0.34-r2.ebuild: - revision bump to make it compatible with Baselayout 1, as reported by - Stanislav Cymbalov in bug 272404 - -*tor-0.2.0.34-r1 (03 Jun 2009) - - 03 Jun 2009; Christian Faulhammer - files/torrc.sample-0.1.2.6.patch, -files/tor.initd-r4, - +files/tor.initd-r5, -tor-0.2.0.34.ebuild, +tor-0.2.0.34-r1.ebuild: - Really respect limits from /etc/limits.d/ by some tweaks: moving user - context switch from torrc to init script, including verification of config - file in the latter; fixes bug 268396 by W. Elschner - - 19 Feb 2009; nixnut tor-0.2.0.34.ebuild: - ppc stable - - 18 Feb 2009; Christian Faulhammer -tor-0.2.0.33.ebuild: - clean up vulnerable versions - - 15 Feb 2009; Markus Meier tor-0.2.0.34.ebuild: - amd64/x86 stable, bug #258833 - - 13 Feb 2009; Brent Baude tor-0.2.0.34.ebuild: - Marking tor-0.2.0.34 ppc64 for bug 258833 - - 13 Feb 2009; Ferris McCormick tor-0.2.0.34.ebuild: - Sparc stable --- Security Bug #258833 --- tests good. - -*tor-0.2.0.34 (13 Feb 2009) - - 13 Feb 2009; Christian Faulhammer +tor-0.2.0.34.ebuild: - version bump for security bug 258833, reported by Jesse Adelman - - 08 Feb 2009; Christian Faulhammer tor-0.2.0.33.ebuild: - kill logrotate USE flag as requested by bangert on bug 258188 - - 05 Feb 2009; Christian Faulhammer - +files/tor-0.2.0.33-no-internal-libevent.patch, metadata.xml, - tor-0.2.0.33.ebuild: - make use of bundled libevent async DNS part optional via USE=flag, this - should fix bug 206969 - - 26 Jan 2009; Christian Faulhammer -tor-0.2.0.32.ebuild, - -tor-0.2.0.32-r1.ebuild: - clean up - - 25 Jan 2009; Markus Meier tor-0.2.0.33.ebuild: - amd64/x86 stable, bug #256078 - - 24 Jan 2009; Tobias Scherbaum tor-0.2.0.33.ebuild: - ppc stable, bug #256078 - - 24 Jan 2009; Ferris McCormick tor-0.2.0.33.ebuild: - Sparc stable, Security Bug #256078. - - 24 Jan 2009; Brent Baude tor-0.2.0.33.ebuild: - Marking tor-0.2.0.33 ppc64 for bug 256078 - -*tor-0.2.0.33 (24 Jan 2009) - - 24 Jan 2009; Christian Faulhammer +tor-0.2.0.33.ebuild: - version bump for security bug 256078 - -*tor-0.2.0.32-r1 (21 Dec 2008) - - 21 Dec 2008; Christian Faulhammer +files/tor.conf, - +tor-0.2.0.32-r1.ebuild: - install limits file so tor can open more files on the system than normally - allowed, this fixes bug 251171 reported by candrews AT integralblue DOT - com - - 10 Dec 2008; Christian Faulhammer - -files/tor-0.2.0.31-sparc.patch, -tor-0.2.0.31-r1.ebuild: - clean up - - 09 Dec 2008; Friedrich Oslage tor-0.2.0.32.ebuild: - Stable on sparc, security bug #250018 - - 08 Dec 2008; Brent Baude tor-0.2.0.32.ebuild: - Marking tor-0.2.0.32 ppc64 for bug 250018 - - 08 Dec 2008; Markus Meier tor-0.2.0.32.ebuild: - x86 stable, bug #250018 - - 07 Dec 2008; Tobias Scherbaum tor-0.2.0.32.ebuild: - ppc stable, bug #250018 - - 07 Dec 2008; Richard Freeman tor-0.2.0.32.ebuild: - amd64 stable - 250018 - -*tor-0.2.0.32 (06 Dec 2008) - - 06 Dec 2008; Christian Faulhammer +tor-0.2.0.32.ebuild: - version bump for security bug 250018 - - 28 Nov 2008; Christian Faulhammer metadata.xml: - Change my email address - - 22 Nov 2008; Christian Faulhammer - -tor-0.2.0.30-r1.ebuild, -tor-0.2.0.31.ebuild, tor-0.2.0.31-r1.ebuild: - clean up and add stable KEYWORDS for -r1 - - 22 Nov 2008; Markus Meier tor-0.2.0.31.ebuild: - amd64 stable, bug #244679 - - 14 Nov 2008; Ferris McCormick tor-0.2.0.31.ebuild, - tor-0.2.0.31-r1.ebuild: - Address sparc alignment problems reported in Bug #246483 --- this fixes them - but is untested on anything else. - -*tor-0.2.0.31-r1 (14 Nov 2008) - - 14 Nov 2008; Ferris McCormick - +files/tor-0.2.0.31-sparc.patch, +tor-0.2.0.31-r1.ebuild: - Add new version to address sparc alignment problem, Bug #246483 which see - for details. - - 01 Nov 2008; nixnut tor-0.2.0.31.ebuild: - Stable on ppc wrt bug 244679 - - 30 Oct 2008; Raúl Porcel tor-0.2.0.31.ebuild: - x86 stable #244679 - - 28 Oct 2008; Ferris McCormick tor-0.2.0.31.ebuild: - Sparc stable, Bug #244679. - - 27 Oct 2008; Brent Baude tor-0.2.0.31.ebuild: - stable ppc64, bug 244679 - -*tor-0.2.0.31 (26 Sep 2008) - - 26 Sep 2008; Christian Faulhammer +tor-0.2.0.31.ebuild: - version bump for bug 238787 - - 06 Sep 2008; Christian Faulhammer files/tor.initd-r4: - remove bashisms from init file, as reported in bug 236857 by Martin Väth - - - 06 Sep 2008; Christian Faulhammer -files/tor.initd-r3, - -files/tor.logrotate.patch, -tor-0.1.2.19-r2.ebuild, -tor-0.2.0.30.ebuild: - clean up - - 06 Sep 2008; Raúl Porcel tor-0.2.0.30-r1.ebuild: - x86 stable wrt #236536 - - 06 Sep 2008; Brent Baude tor-0.2.0.30-r1.ebuild: - stable ppc64, bug 236536 - - 06 Sep 2008; Richard Freeman tor-0.2.0.30-r1.ebuild: - amd64 stable - 236536 - - 04 Sep 2008; Brent Baude tor-0.2.0.30-r1.ebuild: - stable ppc, bug 236536 - - 03 Sep 2008; Ferris McCormick tor-0.2.0.30-r1.ebuild: - Sparc stable --- Bug #236536 --- test suite passes. - -*tor-0.2.0.30-r1 (03 Sep 2008) - - 03 Sep 2008; Christian Faulhammer +files/tor.initd-r4, - +tor-0.2.0.30-r1.ebuild: - update init script to prevent runtime failures as reported in bug 235208 - -*tor-0.2.0.30 (03 Aug 2008) - - 03 Aug 2008; Christian Faulhammer - +files/tor-0.2.0.30-logrotate.patch, +tor-0.2.0.30.ebuild: - version bump for bug 233612 by puchu - - 29 May 2008; Christian Faulhammer -tor-0.1.2.19.ebuild: - clean up - - 29 May 2008; Raúl Porcel tor-0.1.2.19-r2.ebuild: - sparc stable wrt #223705, thanks to Friedrich Oslage for testing - - 28 May 2008; Peter Volkov tor-0.1.2.19-r2.ebuild: - amd64 stable, bug #223705. - - 27 May 2008; Markus Rothe tor-0.1.2.19-r2.ebuild: - Stable on ppc64; bug #223705 - - 26 May 2008; nixnut tor-0.1.2.19-r2.ebuild: - Stable on ppc wrt bug 223705 - - 26 May 2008; Christian Faulhammer - tor-0.1.2.19-r2.ebuild: - stable x86, bug 223705 - -*tor-0.1.2.19-r2 (29 Apr 2008) - - 29 Apr 2008; Christian Faulhammer - -tor-0.1.2.19-r1.ebuild, +tor-0.1.2.19-r2.ebuild: - logrotate should now really work again - -*tor-0.1.2.19-r1 (25 Apr 2008) - - 25 Apr 2008; Christian Faulhammer - +tor-0.1.2.19-r1.ebuild: - create the logrotate file with the correct permissions as pointed out on bug - 216298 by Serge Koksharov - - 05 Mar 2008; Christian Faulhammer -tor-0.1.2.18.ebuild: - clean up - - 04 Mar 2008; Richard Freeman tor-0.1.2.19.ebuild: - amd64 stable - 211021 - - 04 Mar 2008; Brent Baude tor-0.1.2.19.ebuild: - stable ppc64, bug 211021 - - 03 Mar 2008; Raúl Porcel tor-0.1.2.19.ebuild: - sparc stable wrt #211021 - - 02 Mar 2008; nixnut tor-0.1.2.19.ebuild: - Stable on ppc wrt bug 211021 - - 01 Mar 2008; Christian Faulhammer metadata.xml: - adding myself to metadata.xml - - 01 Mar 2008; Christian Faulhammer tor-0.1.2.19.ebuild: - stable x86, bug 211021 - - 07 Feb 2008; Christian Faulhammer -files/tor.initd-r2, - -tor-0.1.2.17.ebuild: - clean up - - 07 Feb 2008; Raúl Porcel tor-0.1.2.18.ebuild: - sparc stable wrt #208336 - - 06 Feb 2008; nixnut tor-0.1.2.18.ebuild: - stable on ppc wrt bug #208336 - - 02 Feb 2008; Richard Freeman tor-0.1.2.18.ebuild: - amd64 stable - #208336 - - 31 Jan 2008; Brent Baude tor-0.1.2.18.ebuild: - Marking tor-0.1.2.18 ppc64 stable for bug 208336 - - 31 Jan 2008; Christian Faulhammer tor-0.1.2.18.ebuild: - stable x86, bug 208336 - -*tor-0.1.2.19 (31 Jan 2008) - - 31 Jan 2008; Christian Faulhammer +tor-0.1.2.19.ebuild: - version bump - -*tor-0.1.2.18 (03 Jan 2008) - - 03 Jan 2008; Christian Faulhammer -tor-0.1.2.16.ebuild, - -tor-0.1.2.16-r1.ebuild, +tor-0.1.2.18.ebuild: - version bump (bug 199818) and clean up - - 03 Sep 2007; Tobias Scherbaum tor-0.1.2.17.ebuild: - ppc stable, bug #190968 - - 02 Sep 2007; Jose Luis Rivero tor-0.1.2.17.ebuild: - Stable on sparc wrt security bug #190968 - - 02 Sep 2007; Markus Rothe tor-0.1.2.17.ebuild: - Stable on ppc64; bug #190968 - - 02 Sep 2007; Christoph Mende tor-0.1.2.17.ebuild: - Stable on amd64 wrt security bug #190968 - -*tor-0.1.2.17 (02 Sep 2007) - - 02 Sep 2007; Christian Faulhammer +tor-0.1.2.17.ebuild: - version bump and stable x86, security bug 190968 - - 29 Aug 2007; Gustavo Felisberto files/tor.initd-r3: - Adding correct init script. - -*tor-0.1.2.16-r1 (28 Aug 2007) - - 28 Aug 2007; Gustavo Felisberto - -files/torrc.sample-0.1.0.16.patch, -files/torrc.sample-0.1.1.23.patch, - -files/tor.confd, -files/tor.initd, -files/tor.initd-r1, - +files/tor.initd-r3, -tor-0.1.1.23.ebuild, -tor-0.1.1.26.ebuild, - -tor-0.1.2.14.ebuild, +tor-0.1.2.16-r1.ebuild: - Removed older versions and dangled files. Fixed bug with init with - baselayout-2 closes 189724. Thanks to Christian Faulhammer (opfer) for the - fix. - - 09 Aug 2007; Robert Buchholz tor-0.1.2.16.ebuild: - Stable on amd64 (bug #186644) - - 06 Aug 2007; Gustavo Zacarias tor-0.1.2.16.ebuild: - Stable on sparc wrt security #186644 - - 04 Aug 2007; Markus Rothe tor-0.1.2.16.ebuild: - Stable on ppc64; bug #186644 - - 04 Aug 2007; Tobias Scherbaum tor-0.1.2.16.ebuild: - ppc stable, bug #186644 - - 03 Aug 2007; Christian Faulhammer tor-0.1.2.16.ebuild: - stable x86, security bug 186644 - -*tor-0.1.2.16 (03 Aug 2007) - - 03 Aug 2007; Christian Faulhammer +tor-0.1.2.16.ebuild: - version bump, for security bug 186644 - - 02 Jun 2007; René Nussbaumer tor-0.1.2.14.ebuild: - Stable on ppc. See bug #180139. - - 31 May 2007; Christoph Mende tor-0.1.2.14.ebuild: - Stable on amd64 wrt security bug 180139 - - 31 May 2007; Brent Baude tor-0.1.2.14.ebuild: - Marking tor-0.1.2.14 ppc64 stable for bug#180139 - - 31 May 2007; Gustavo Zacarias tor-0.1.2.14.ebuild: - Stable on sparc wrt security #180139 - - 31 May 2007; Christian Faulhammer tor-0.1.2.14.ebuild: - stable x86, security bug 180139 - -*tor-0.1.2.14 (31 May 2007) - - 31 May 2007; -tor-0.1.0.18.ebuild, - -tor-0.1.0.18-r1.ebuild, -tor-0.1.2.13.ebuild, +tor-0.1.2.14.ebuild: - Bumped 0.1.2.13 to 0.1.2.14, removed older versions. Fixed #178975 with idea - from Remy Blank - - 15 May 2007; tor-0.1.0.18.ebuild, - tor-0.1.0.18-r1.ebuild, tor-0.1.1.23.ebuild, tor-0.1.1.26.ebuild, - tor-0.1.2.13.ebuild: - Added keepdir. Close Bug #177590. - - 15 May 2007; tor-0.1.1.23.ebuild, - tor-0.1.1.26.ebuild: - Fixed missing RDEP's. Close Bug #174185. - -*tor-0.1.2.13 (15 May 2007) - - 15 May 2007; +files/tor.initd-r2, - -tor-0.1.2.6_alpha.ebuild, +tor-0.1.2.13.ebuild: - Removed alpha 1.2 release and added a bump. Help from all in bug #176018, - specially jakub, was very much apretiated. - - 29 Apr 2007; Torsten Veller tor-0.1.1.23.ebuild, - tor-0.1.1.26.ebuild, tor-0.1.2.6_alpha.ebuild: - Fix *initd, *confd and *envd calls (#173884, #174266) - -*tor-0.1.2.6_alpha (27 Jan 2007) - - 27 Jan 2007; Gustavo Felisberto ; - +files/torrc.sample-0.1.2.6.patch, +tor-0.1.2.6_alpha.ebuild: - Added alpha release of tor at request from Flameeyes. It seems tork needs - it. As always, if it is masked and you install and destroy your system dont - come complain alot. - -*tor-0.1.1.26 (18 Dec 2006) - - 18 Dec 2006; Gustavo Felisberto ; - -tor-0.1.1.24.ebuild, +tor-0.1.1.26.ebuild: - Bumped to 0.1.1.26 and removed older version. - -*tor-0.1.0.18-r1 (22 Oct 2006) - - 22 Oct 2006; Gustavo Felisberto ; - tor-0.1.0.18.ebuild, +tor-0.1.0.18-r1.ebuild: - Small configuration issue in the chroot. Fixes bug #139354. - - 21 Oct 2006; Gustavo Felisberto ; - tor-0.1.0.18.ebuild, tor-0.1.1.23.ebuild, tor-0.1.1.24.ebuild: - Added ewarn about the needed dot in the privoxy integration. Closes bug - #152137. - -*tor-0.1.1.24 (09 Oct 2006) - - 09 Oct 2006; Gustavo Felisberto ; - +tor-0.1.1.24.ebuild: - Bump from 0.1.1.23 - - 11 Sep 2006; Gustavo Felisberto ; - tor-0.1.0.18.ebuild: - Changed einfo about configuration of chroot. Removes tor from bug #140371 - - 05 Sep 2006; Gustavo Felisberto ; - -files/torrc.sample-0.1.0.14.patch, -tor-0.1.0.14-r1.ebuild, - -tor-0.1.0.16.ebuild, -tor-0.1.0.17.ebuild, -tor-0.1.1.20.ebuild, - -tor-0.1.1.22.ebuild: - Removed older version that had sec issues. - - 30 Aug 2006; Gustavo Zacarias tor-0.1.0.18.ebuild, - tor-0.1.1.23.ebuild: - Stable on sparc wrt security #145458 - - 30 Aug 2006; tor-0.1.0.18.ebuild, tor-0.1.1.23.ebuild: - stable on amd64 wrt bug 145458 - - 30 Aug 2006; Joshua Jackson tor-0.1.0.18.ebuild, - tor-0.1.1.23.ebuild: - Stable x86; security bug #145458 - - 29 Aug 2006; Markus Rothe tor-0.1.0.18.ebuild, - tor-0.1.1.23.ebuild: - Stable on ppc64; bug #145458 - - 29 Aug 2006; Tobias Scherbaum tor-0.1.0.18.ebuild, - tor-0.1.1.23.ebuild: - ppc stable, bug #145458 - -*tor-0.1.0.18 (29 Aug 2006) - - 29 Aug 2006; Gustavo Felisberto ; - +tor-0.1.0.18.ebuild: - Adding 0.1.0.18 that fixes sec issue in the 0.1.0.* series. The 0.1.1.23 is - not affected. - -*tor-0.1.1.23 (24 Aug 2006) - - 24 Aug 2006; Gustavo Felisberto ; - +files/torrc.sample-0.1.1.23.patch, +tor-0.1.1.23.ebuild: - Updated version, bump and small cosmetics. Thanks to Olivier Mondolini in - bug #144417. - - 16 Jul 2006; Diego Pettenò tor-0.1.1.22.ebuild: - Add ~x86-fbsd keyword. - -*tor-0.1.1.22 (08 Jul 2006) - - 08 Jul 2006; Gustavo Felisberto ; - +tor-0.1.1.22.ebuild: - Bump to 0.1.1.22. Closes bug # 138073. - - 05 Jun 2006; Simon Stelling tor-0.1.1.20.ebuild: - stable on amd64 wrt bug 134329 - - 01 Jun 2006; Gustavo Zacarias tor-0.1.1.20.ebuild: - Stable on sparc wrt security #134329 - - 01 Jun 2006; Tobias Scherbaum tor-0.1.1.20.ebuild: - ppc stable, bug #134329 - - 01 Jun 2006; Markus Rothe tor-0.1.1.20.ebuild: - Stable on ppc64; bug #134329 - - 01 Jun 2006; Joshua Jackson tor-0.1.1.20.ebuild: - Stable on x86; security bug #134329 - -*tor-0.1.1.20 (01 Jun 2006) - - 01 Jun 2006; Stefan Cornelius +tor-0.1.1.20.ebuild: - Bumping to version 0.1.1.20 for security bugs #134329 and #118918 - - 23 Apr 2006; Emanuele Giaquinta tor-0.1.0.14-r1.ebuild, - tor-0.1.0.16.ebuild, tor-0.1.0.17.ebuild: - Move enew{group,user} in pkg_setup. - -*tor-0.1.0.17 (28 Feb 2006) - - 28 Feb 2006; Gustavo Felisberto ; - +tor-0.1.0.17.ebuild: - Bump to 0.1.017. Credits go to Christian Mandery in bug #123530 for - reporting this. - -*tor-0.1.0.16 (04 Jan 2006) - - 04 Jan 2006; Gustavo Felisberto ; - +files/torrc.sample-0.1.0.16.patch, +files/tor.confd, +files/tor.initd-r1, - +tor-0.1.0.16.ebuild: - Adding tor 1.0.16 to portage. Arch teams please dont mark stable as the new - chroot stuff needs serious testing. - -*tor-0.1.0.14-r1 (11 Sep 2005) - - 11 Sep 2005; Gustavo Felisberto ; files/tor.initd, - -tor-0.1.0.14.ebuild, +tor-0.1.0.14-r1.ebuild: - I was having some strange issues with sending signal 2 to tor. And we do not - need a SIGINT, a SIGTERM is fine. - - 06 Sep 2005; Gustavo Felisberto ; - -files/torrc.sample.patch-00, -tor-0.0.9.10.ebuild: - Removing older version. - - 16 Aug 2005; Jason Wever tor-0.1.0.14.ebuild: - Stable on SPARC wrt security bug #102245. - - 15 Aug 2005; Michael Hanselmann tor-0.1.0.14.ebuild: - Stable on ppc. - - 15 Aug 2005; Markus Rothe tor-0.1.0.14.ebuild: - Stable on ppc64 (bug #102245) - -*tor-0.1.0.14 (14 Aug 2005) - - 14 Aug 2005; Gustavo Felisberto ; - +files/torrc.sample-0.1.0.14.patch, +tor-0.1.0.14.ebuild: - Adding new version as amd64 and x86 due to sec bug. See #102245 - - 20 Jul 2005; Herbie Hopkins tor-0.0.9.10.ebuild: - Stable on amd64. - - 22 Jun 2005; Gustavo Zacarias tor-0.0.9.10.ebuild: - Stable on sparc - - 21 Jun 2005; Michael Hanselmann tor-0.0.9.10.ebuild: - Stable on ppc (#96320). - - 21 Jun 2005; Markus Rothe tor-0.0.9.10.ebuild: - Stable on ppc64 - -*tor-0.0.9.10 (16 Jun 2005) - - 16 Jun 2005; Gustavo Felisberto ; - -tor-0.0.9.5.ebuild, -tor-0.0.9.6.ebuild, -tor-0.0.9.7.ebuild, - -tor-0.0.9.9.ebuild, +tor-0.0.9.10.ebuild: - Added version 0.9.0.10 that fixes a security bug, removed older versions - that were affected. - - 12 Jun 2005; Gustavo Felisberto ; tor-0.0.9.5.ebuild, - tor-0.0.9.6.ebuild, tor-0.0.9.7.ebuild, tor-0.0.9.9.ebuild: - New HOMEPAGE, thanks to Matteo in bug #95754. - - 18 May 2005; Markus Rothe tor-0.0.9.6.ebuild: - Stable on ppc64 - - 01 May 2005; Michael Hanselmann tor-0.0.9.5.ebuild: - Stable on ppc. - -*tor-0.0.9.9 (25 Apr 2005) - - 25 Apr 2005; Gustavo Felisberto ; tor-0.0.9.5.ebuild, - tor-0.0.9.6.ebuild, +tor-0.0.9.9.ebuild: - Removing older versions and bumping to 0.9.9 . - - 22 Apr 2005; Alin Nastac tor-0.0.9.5.ebuild, - tor-0.0.9.6.ebuild, tor-0.0.9.7.ebuild: - net-misc/tsocks -> net-proxy/tsocks - - 08 Apr 2005; Gustavo Zacarias tor-0.0.9.7.ebuild: - Keyworded ~sparc wrt #88305 - -*tor-0.0.9.7 (01 Apr 2005) - - 01 Apr 2005; Gustavo Felisberto ; +tor-0.0.9.7.ebuild: - Bumped - - 29 Mar 2005; Markus Rothe tor-0.0.9.6.ebuild: - Added ~ppc64 to KEYWORDS; bug #86993 - -*tor-0.0.9.6 (25 Mar 2005) - - 25 Mar 2005; Gustavo Felisberto ; +tor-0.0.9.6.ebuild: - Bumped to 0.0.9.6 - - 23 Mar 2005; Gustavo Felisberto ; files/tor.initd: - Changed init script to send SIGINT at shutdown. May increase the shutdown time - of servers, but will close in a more clean way. - - 25 Feb 2005; Gustavo Felisberto ; - -tor-0.0.9.4-r1.ebuild, -tor-0.0.9.4-r2.ebuild, tor-0.0.9.5.ebuild: - Marking latest as x86 and removing older versions. - -*tor-0.0.9.5 (23 Feb 2005) - - 23 Feb 2005; Gustavo Felisberto ; - tor-0.0.9.4-r2.ebuild, +tor-0.0.9.5.ebuild: - Adding version 0.0.9.5 and marking 0.0.9.4-r2 as x86. - -*tor-0.0.9.4-r2 (13 Feb 2005) - - 13 Feb 2005; Gustavo Felisberto ; files/tor.initd, - +files/torrc.sample.patch-00, -tor-0.0.8.1.ebuild, -tor-0.0.9.1.ebuild, - -tor-0.0.9.2.ebuild, +tor-0.0.9.4-r2.ebuild, -tor-0.0.9.4.ebuild: - Adding new version that properly patches the sample config and deleting older - versions. Lost the stable ppc-macos but that arch is lagging way to much. - -*tor-0.0.9.4-r1 (10 Feb 2005) - - 10 Feb 2005; Gustavo Felisberto ; +files/tor.initd, - +tor-0.0.9.4-r1.ebuild: - Using ideas in bug #75381 from Faustus and after talking - to latexer i'm commiting this version that can use a init.d script for easier - usage. - -*tor-0.0.9.4 (04 Feb 2005) - - 04 Feb 2005; Peter Johanson +tor-0.0.9.4.ebuild: - Bump. - - 09 Jan 2005; Marcus Hanwell tor-0.0.9.2.ebuild: - Marked ~amd64, closes bug 76780. - -*tor-0.0.9.2 (04 Jan 2005) - - 04 Jan 2005; Peter Johanson +tor-0.0.9.2.ebuild: - Bump. - -*tor-0.0.9.1 (16 Dec 2004) - - 16 Dec 2004; Peter Johanson +tor-0.0.9.1.ebuild: - Bump. Add tsocks dependancy, see bug #70879 - - 20 Oct 2004; Peter Johanson -tor-0.0.6.1.ebuild, - -tor-0.0.6.ebuild, -tor-0.0.7.2.ebuild, -tor-0.0.7.3.ebuild, - -tor-0.0.7.ebuild: - Remove old vulnerable versions. See bug #67756 - - 21 Oct 2004; Joseph Jezak tor-0.0.8.1.ebuild: - Keyworded ppc-macos and macos due to vulnerability in previous versions. - Removed tsocks RDEPEND at the request of latexer. See bug #67756 - -*tor-0.0.8.1 (17 Oct 2004) - - 17 Oct 2004; +tor-0.0.8.1.ebuild, -tor-0.0.8.ebuild: - Bump and remove 0.0.8 which is vulnerable to a remote DoS. See bug #67756. - -*tor-0.0.8 (06 Oct 2004) - - 06 Oct 2004; tor-0.0.6.1.ebuild, tor-0.0.6.ebuild, - tor-0.0.7.2.ebuild, tor-0.0.7.3.ebuild, tor-0.0.7.ebuild, +tor-0.0.8.ebuild: - Bump. Also fix the license as this is really under 3-clause BSD. - -*tor-0.0.7.3 (15 Aug 2004) - - 15 Aug 2004; Peter Johanson +tor-0.0.7.3.ebuild: - Bump. Only needed for servers. - - 25 Jul 2004; Lina Pezzella - Fixed Manifest. - - 24 Jul 2004; Erik Swanson tor-0.0.7.2.ebuild: - Added macos to KEYWORDS - -*tor-0.0.7.2 (15 Jul 2004) - - 15 Jul 2004; Peter Johanson +tor-0.0.7.2.ebuild: - Bump to latest version. tsocks is now a depend for everything but macos, since - tsocks no worky there. - -*tor-0.0.7 (07 Jun 2004) - - 07 Jun 2004; Peter Johanson,,, tor-0.0.2_pre27.ebuild, - tor-0.0.5.ebuild, tor-0.0.6_rc1.ebuild, tor-0.0.7.ebuild: - Bump to lates release, and remove older versions. - -*tor-0.0.6.1 (06 May 2004) - - 06 May 2004; Peter Johanson tor-0.0.6.1.ebuild: - Bump. - - 02 May 2004; Peter Johanson tor-0.0.6.ebuild: - Adding back ~ppc, as dholm wants me to keep it around for future updates. - -*tor-0.0.6 (02 May 2004) - - 02 May 2004; Peter Johanson tor-0.0.6.ebuild: - Bump to latest release. - - 30 Apr 2004; David Holm tor-0.0.6_rc1.ebuild: - Added to ~ppc. - -*tor-0.0.6_rc1 (29 Apr 2004) - - 29 Apr 2004; Peter Johanson tor-0.0.6_rc1.ebuild: - Bump to latest. Beware, this version is not backwards compatible with older - versions. - -*tor-0.0.5 (30 Mar 2004) - - 30 Mar 2004; Peter Johanson tor-0.0.2_pre21.ebuild, - tor-0.0.2_pre22.ebuild, tor-0.0.2_pre23.ebuild, tor-0.0.2_pre24.ebuild, - tor-0.0.2_pre25.ebuild, tor-0.0.5.ebuild: - Bump to latest release. Removed a bunch of the old stuff. Initscript coming - soon, i swear. - -*tor-0.0.2_pre27 (15 Mar 2004) - - 15 Mar 2004; Peter Johanson tor-0.0.2_pre27.ebuild: - Bump. - -*tor-0.0.2_pre25 (04 Mar 2004) - - 04 Mar 2004; Peter Johanson tor-0.0.2_pre25.ebuild: - Bump. Fixes a crash due to DNS stuff. - -*tor-0.0.2_pre24 (03 Mar 2004) - - 03 Mar 2004; Peter Johanson tor-0.0.2_pre24.ebuild: - Bump - -*tor-0.0.2_pre23 (29 Feb 2004) - - 29 Feb 2004; Peter Johanson tor-0.0.2_pre23.ebuild: - Bump - -*tor-0.0.2_pre22 (28 Feb 2004) - - 28 Feb 2004; Peter Johanson tor-0.0.2_pre22.ebuild: - Bump - -*tor-0.0.2_pre21 (22 Feb 2004) - - 22 Feb 2004; Peter Johanson metadata.xml, - tor-0.0.2_pre21.ebuild: - Initial Commit. Ebuild by yours truly. - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/Manifest b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/Manifest deleted file mode 100644 index b5431c4837..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/Manifest +++ /dev/null @@ -1,5 +0,0 @@ -DIST tor-0.2.1.19.tar.gz 2409484 SHA256 cb4f88ad30d6ba4c015734f3058a6e35151cff586f7708691d52d289ee78d183 -DIST tor-0.2.1.20.tar.gz 2412059 SHA256 0fa268ef7904dd4e4456525285d49ed3d3ac6fd6df4686de20d9077c05ae0f60 -DIST tor-0.2.1.21.tar.gz 2408983 SHA256 7e05ccebb91cbf1fa226a6e77d21901d32dd3c0f59eb9eea5a87e559962a940d -DIST tor-0.2.1.22.tar.gz 2408280 SHA256 c6f9340bcbae3a033bfac215ad9e6df80e4ee814a880b9755bddfa3a266f3e18 -DIST tor-0.2.1.30.tar.gz 2447447 SHA256 f352a1a8ffa469ae251324f89386074074bcffef1a7c6a72caa7e4c2d12ce109 SHA512 4e6fc813fadd8a9cb1c229a96c4fd30f01e76bb285999233b9f8fdc850a3aabe988ed92bb74876925ed881a08a9c83d27060303cfbd1a3e02ac728cffad6fbf7 WHIRLPOOL 7a5c7e9d4de3da36dae9b93bc8962be5aa03a66e04eea9ea245d251cd699c90eb2a1774e324e8c0e7b9895b682ef18e6ef9f2b68b065d3c69e4c66aebbddc621 diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-0.2.1.19-logrotate.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-0.2.1.19-logrotate.patch deleted file mode 100644 index 3eadcaa8f1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-0.2.1.19-logrotate.patch +++ /dev/null @@ -1,28 +0,0 @@ -* Change log dir from /var/lib/log to /var/log (#281439, Martin von Gagern) -* Change user and group name from _tor to tor (#281439, Martin von Gagern) -* Avoid error if tor is not running (#178975, Gustavo Felisberto) - -References: -http://bugs.gentoo.org/281439 -http://bugs.gentoo.org/178975 - ---- tor-0.2.1.19/contrib/tor.logrotate.in -+++ tor-0.2.1.19/contrib/tor.logrotate.in -@@ -1,4 +1,4 @@ --@LOCALSTATEDIR@/log/tor/*log { -+/var/log/tor/*.log { - daily - rotate 5 - compress -@@ -6,9 +6,9 @@ - missingok - notifempty - # you may need to change the username/groupname below -- create 0640 _tor _tor -+ create 0640 tor tor - sharedscripts - postrotate -- /etc/init.d/tor reload > /dev/null -+ /etc/init.d/tor reload > /dev/null || true - endscript - } diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-0.2.1.19-openssl.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-0.2.1.19-openssl.patch deleted file mode 100644 index 73ac476329..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-0.2.1.19-openssl.patch +++ /dev/null @@ -1,93 +0,0 @@ -diff --git a/src/common/tortls.c b/src/common/tortls.c -index c6b11e9..bcc6780 100644 ---- a/src/common/tortls.c -+++ b/src/common/tortls.c -@@ -154,6 +154,7 @@ static X509* tor_tls_create_certificate(crypto_pk_env_t *rsa, - const char *cname, - const char *cname_sign, - unsigned int lifetime); -+static void tor_tls_unblock_renegotiation(tor_tls_t *tls); - - /** Global tls context. We keep it here because nobody else needs to - * touch it. */ -@@ -904,6 +905,36 @@ tor_tls_set_renegotiate_callback(tor_tls_t *tls, - #endif - } - -+/** If this version of openssl requires it, turn on renegotiation on -+ * tls. (Our protocol never requires this for security, but it's nice -+ * to use belt-and-suspenders here.) -+ */ -+static void -+tor_tls_unblock_renegotiation(tor_tls_t *tls) -+{ -+#ifdef SSL3_FLAGS_ALLOW_UNSAFE_LEGACY_RENEGOTIATION -+ /* Yes, we know what we are doing here. No, we do not treat a renegotiation -+ * as authenticating any earlier-received data. */ -+ tls->ssl->s3->flags |= SSL3_FLAGS_ALLOW_UNSAFE_LEGACY_RENEGOTIATION; -+#else -+ (void)tls; -+#endif -+} -+ -+/** If this version of openssl supports it, turn off renegotiation on -+ * tls. (Our protocol never requires this for security, but it's nice -+ * to use belt-and-suspenders here.) -+ */ -+void -+tor_tls_block_renegotiation(tor_tls_t *tls) -+{ -+#ifdef SSL3_FLAGS_ALLOW_UNSAFE_LEGACY_RENEGOTIATION -+ tls->ssl->s3->flags &= ~SSL3_FLAGS_ALLOW_UNSAFE_LEGACY_RENEGOTIATION; -+#else -+ (void)tls; -+#endif -+} -+ - /** Return whether this tls initiated the connect (client) or - * received it (server). */ - int -@@ -1026,6 +1057,9 @@ tor_tls_handshake(tor_tls_t *tls) - } else { - r = SSL_connect(tls->ssl); - } -+ /* We need to call this here and not earlier, since OpenSSL has a penchant -+ * for clearing its flags when you say accept or connect. */ -+ tor_tls_unblock_renegotiation(tls); - r = tor_tls_get_error(tls,r,0, "handshaking", LOG_INFO); - if (ERR_peek_error() != 0) { - tls_log_errors(tls, tls->isServer ? LOG_INFO : LOG_WARN, -diff --git a/src/common/tortls.h b/src/common/tortls.h -index d006909..871fec3 100644 ---- a/src/common/tortls.h -+++ b/src/common/tortls.h -@@ -65,6 +65,7 @@ int tor_tls_read(tor_tls_t *tls, char *cp, size_t len); - int tor_tls_write(tor_tls_t *tls, const char *cp, size_t n); - int tor_tls_handshake(tor_tls_t *tls); - int tor_tls_renegotiate(tor_tls_t *tls); -+void tor_tls_block_renegotiation(tor_tls_t *tls); - int tor_tls_shutdown(tor_tls_t *tls); - int tor_tls_get_pending_bytes(tor_tls_t *tls); - size_t tor_tls_get_forced_write_size(tor_tls_t *tls); -diff --git a/src/or/connection_or.c b/src/or/connection_or.c -index b4e8092..2a52b3f 100644 ---- a/src/or/connection_or.c -+++ b/src/or/connection_or.c -@@ -844,6 +844,7 @@ connection_or_tls_renegotiated_cb(tor_tls_t *tls, void *_conn) - - /* Don't invoke this again. */ - tor_tls_set_renegotiate_callback(tls, NULL, NULL); -+ tor_tls_block_renegotiation(tls); - - if (connection_tls_finish_handshake(conn) < 0) { - /* XXXX_TLS double-check that it's ok to do this from inside read. */ -@@ -1087,6 +1088,7 @@ connection_tls_finish_handshake(or_connection_t *conn) - connection_or_init_conn_from_address(conn, &conn->_base.addr, - conn->_base.port, digest_rcvd, 0); - } -+ tor_tls_block_renegotiation(conn->tls); - return connection_or_set_state_open(conn); - } else { - conn->_base.state = OR_CONN_STATE_OR_HANDSHAKING; --- -1.5.6.5 diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-upstart.conf b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-upstart.conf deleted file mode 100644 index d2d99ff2b5..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor-upstart.conf +++ /dev/null @@ -1 +0,0 @@ -exec /usr/bin/tor diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor.conf b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor.conf deleted file mode 100644 index 4e4c639603..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor.conf +++ /dev/null @@ -1,3 +0,0 @@ -tor hard nofile 30000 -tor soft nofile 30000 - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor.initd-r4 b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor.initd-r4 deleted file mode 100644 index 24d8a9a610..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/tor.initd-r4 +++ /dev/null @@ -1,57 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/files/tor.initd-r4,v 1.5 2009/09/07 11:23:31 fauli Exp $ - -opts="${opts} checkconfig reload" -PIDFILE=/var/run/tor/tor.pid -CONFFILE=/etc/tor/torrc - -depend() { - need net -} - -checkconfig() { - # first check that it exists - if [ ! -f ${CONFFILE} ] ; then - eerror "You need to setup ${CONFFILE} first" - eerror "Example is in ${CONFFILE}.sample" - return 1 - fi - - # now verify whether the configuration is valid - /usr/bin/tor --verify-config -f ${CONFFILE} > /dev/null 2>&1 - if [ $? -eq 0 ] ; then - einfo "Tor configuration (${CONFFILE}) is valid." - return 0 - else - eerror "Tor configuration (${CONFFILE}) not valid." - /usr/bin/tor --verify-config -f ${CONFFILE} - return 1 - fi -} - -start() { - checkconfig || return 1 - ebegin "Starting Tor" - HOME=/var/lib/tor - start-stop-daemon --start --pidfile "${PIDFILE}" --quiet --exec /usr/bin/tor -- -f "${CONFFILE}" --runasdaemon 1 --PidFile "${PIDFILE}" > /dev/null 2>&1 - eend $? -} - -stop() { - ebegin "Stopping Tor" - start-stop-daemon --stop --pidfile "${PIDFILE}" --exec /usr/bin/tor -- --PidFile "${PIDFILE}" - eend $? -} - -reload() { - if [ ! -f ${PIDFILE} ]; then - eerror "${SVCNAME} isn't running" - return 1 - fi - checkconfig || return 1 - ebegin "Reloading Tor configuration" - start-stop-daemon --stop --oknodo --signal HUP --pidfile ${PIDFILE} - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/torrc b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/torrc deleted file mode 100644 index dc2dea3a63..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/torrc +++ /dev/null @@ -1,8 +0,0 @@ -# -# Minimal torrc so tor will work out of the box -# -User tor -Group tor -PIDFile /var/run/tor/tor.pid -Log notice file /var/log/tor/tor.log -DataDirectory /var/lib/tor/data diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/torrc.sample-0.1.2.6.patch b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/torrc.sample-0.1.2.6.patch deleted file mode 100644 index 7317552c23..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/files/torrc.sample-0.1.2.6.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- src/config/torrc.sample.in.orig 2007-01-27 23:41:23.000000000 +0000 -+++ src/config/torrc.sample.in 2007-01-27 23:43:47.000000000 +0000 -@@ -18,6 +18,11 @@ - ## With the default Mac OS X installer, Tor will look in ~/.tor/torrc or - ## /Library/Tor/torrc - -+## Default username and group the server will run as -+User tor -+Group tor -+ -+PIDFile /var/run/tor/tor.pid - - ## Replace this with "SocksPort 0" if you plan to run Tor only as a - ## server, and not make any local application connections yourself. -@@ -46,6 +51,7 @@ - #Log notice syslog - ## To send all messages to stderr: - #Log debug stderr -+Log notice file /var/log/tor/tor.log - - ## Uncomment this to start the process in the background... or use - ## --runasdaemon 1 on the command line. This is ignored on Windows; -@@ -55,6 +61,7 @@ - ## The directory for keeping all the keys/etc. By default, we store - ## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. - #DataDirectory @LOCALSTATEDIR@/lib/tor -+DataDirectory /var/lib/tor/data - - ## The port on which Tor will listen for local connections from Tor - ## controller applications, as documented in control-spec.txt. diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/metadata.xml b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/metadata.xml deleted file mode 100644 index ca7d7960c9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/metadata.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - no-herd - - humpback@gentoo.org - - - fauli@gentoo.org - Christian Faulhammer - - diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.19-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.19-r2.ebuild deleted file mode 100644 index 165207afff..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.19-r2.ebuild +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/tor-0.2.1.19-r2.ebuild,v 1.6 2009/12/26 20:32:04 armin76 Exp $ - -EAPI=2 - -inherit eutils - -DESCRIPTION="Anonymizing overlay network for TCP" -HOMEPAGE="http://www.torproject.org/" -MY_PV=${PV/_/-} -SRC_URI="http://www.torproject.org/dist/${PN}-${MY_PV}.tar.gz" -S="${WORKDIR}/${PN}-${MY_PV}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ppc ppc64 sparc x86 ~x86-fbsd" -IUSE="debug" - -DEPEND="dev-libs/openssl - >=dev-libs/libevent-1.2" -RDEPEND="${DEPEND} - net-proxy/tsocks" - -pkg_setup() { - enewgroup tor - enewuser tor -1 -1 /var/lib/tor tor -} - -src_prepare() { - epatch "${FILESDIR}"/torrc.sample-0.1.2.6.patch - epatch "${FILESDIR}"/${P}-logrotate.patch - epatch "${FILESDIR}"/${P}-openssl.patch - # Normally tor uses a bundled libevent fragment to provide - # asynchronous DNS requests. This is generally a bad idea, but at - # the moment the official libevent does not have the 0x20 hack, so - # anonymity is higher with the bundled variant. Remove patch as - # soon as upstream has installed the autoconf option to use - # system's libevent. This hasn't happened, so we - # have to live with the bundled libevent for this release, as the - # current version in tree won't suffice for tor to build - # See http://bugs.noreply.org/flyspray/index.php?do=details&id=920 - # for upstream's report - # Let's revisit this when libevent-2* is unmasked - # use bundledlibevent || epatch "${FILESDIR}"/${PN}-0.2.1.5-no-internal-libevent.patch -} - -src_configure() { - econf $(use_enable debug) -} - -src_install() { - newinitd "${FILESDIR}"/tor.initd-r4 tor - emake DESTDIR="${D}" install || die - keepdir /var/{lib,log,run}/tor - - dodoc README ChangeLog AUTHORS ReleaseNotes \ - doc/{HACKING,TODO} \ - doc/spec/*.txt - - fperms 750 /var/lib/tor /var/log/tor - fperms 755 /var/run/tor - fowners tor:tor /var/lib/tor /var/log/tor /var/run/tor - - insinto /etc/logrotate.d - newins contrib/tor.logrotate tor - - # allow the tor user more open files to avoid errors, see bug 251171 - insinto /etc/security/limits.d/ - doins "${FILESDIR}"/tor.conf -} - -pkg_postinst() { - elog "You must create /etc/tor/torrc, you can use the sample that is in that directory" - elog "To have privoxy and tor working together you must add:" - elog "forward-socks4a / localhost:9050 ." - elog "(notice the . at the end of the line)" - elog "to /etc/privoxy/config" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.20-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.20-r1.ebuild deleted file mode 100644 index cc9ebde653..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.20-r1.ebuild +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/tor-0.2.1.20-r1.ebuild,v 1.1 2009/12/06 14:36:45 fauli Exp $ - -EAPI=2 - -inherit eutils - -DESCRIPTION="Anonymizing overlay network for TCP" -HOMEPAGE="http://www.torproject.org/" -MY_PV=${PV/_/-} -SRC_URI="http://www.torproject.org/dist/${PN}-${MY_PV}.tar.gz" -S="${WORKDIR}/${PN}-${MY_PV}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" -IUSE="debug" - -DEPEND="dev-libs/openssl - >=dev-libs/libevent-1.2" -RDEPEND="${DEPEND} - net-proxy/tsocks" - -pkg_setup() { - enewgroup tor - enewuser tor -1 -1 /var/lib/tor tor -} - -src_prepare() { - epatch "${FILESDIR}"/torrc.sample-0.1.2.6.patch - epatch "${FILESDIR}"/${PN}-0.2.1.19-logrotate.patch - epatch "${FILESDIR}"/${PN}-0.2.1.19-openssl.patch - # Normally tor uses a bundled libevent fragment to provide - # asynchronous DNS requests. This is generally a bad idea, but at - # the moment the official libevent does not have the 0x20 hack, so - # anonymity is higher with the bundled variant. Remove patch as - # soon as upstream has installed the autoconf option to use - # system's libevent. This hasn't happened, so we - # have to live with the bundled libevent for this release, as the - # current version in tree won't suffice for tor to build - # See http://bugs.noreply.org/flyspray/index.php?do=details&id=920 - # for upstream's report - # Let's revisit this when libevent-2* is unmasked - # use bundledlibevent || epatch "${FILESDIR}"/${PN}-0.2.1.5-no-internal-libevent.patch -} - -src_configure() { - econf $(use_enable debug) -} - -src_install() { - newinitd "${FILESDIR}"/tor.initd-r4 tor - emake DESTDIR="${D}" install || die - keepdir /var/{lib,log,run}/tor - - dodoc README ChangeLog AUTHORS ReleaseNotes \ - doc/{HACKING,TODO} \ - doc/spec/*.txt - - fperms 750 /var/lib/tor /var/log/tor - fperms 755 /var/run/tor - fowners tor:tor /var/lib/tor /var/log/tor /var/run/tor - - insinto /etc/logrotate.d - newins contrib/tor.logrotate tor - - # allow the tor user more open files to avoid errors, see bug 251171 - insinto /etc/security/limits.d/ - doins "${FILESDIR}"/tor.conf -} - -pkg_postinst() { - elog "You must create /etc/tor/torrc, you can use the sample that is in that directory" - elog "To have privoxy and tor working together you must add:" - elog "forward-socks4a / localhost:9050 ." - elog "(notice the . at the end of the line)" - elog "to /etc/privoxy/config" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.21.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.21.ebuild deleted file mode 100644 index 9522568df9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.21.ebuild +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/tor-0.2.1.21.ebuild,v 1.1 2010/01/16 11:14:46 fauli Exp $ - -EAPI=2 - -inherit eutils - -DESCRIPTION="Anonymizing overlay network for TCP" -HOMEPAGE="http://www.torproject.org/" -MY_PV=${PV/_/-} -SRC_URI="http://www.torproject.org/dist/${PN}-${MY_PV}.tar.gz" -S="${WORKDIR}/${PN}-${MY_PV}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" -IUSE="debug" - -DEPEND="dev-libs/openssl - >=dev-libs/libevent-1.2" -RDEPEND="${DEPEND} - net-proxy/tsocks" - -pkg_setup() { - enewgroup tor - enewuser tor -1 -1 /var/lib/tor tor -} - -src_prepare() { - epatch "${FILESDIR}"/torrc.sample-0.1.2.6.patch - epatch "${FILESDIR}"/${PN}-0.2.1.19-logrotate.patch - # Normally tor uses a bundled libevent fragment to provide - # asynchronous DNS requests. This is generally a bad idea, but at - # the moment the official libevent does not have the 0x20 hack, so - # anonymity is higher with the bundled variant. Remove patch as - # soon as upstream has installed the autoconf option to use - # system's libevent. This hasn't happened, so we - # have to live with the bundled libevent for this release, as the - # current version in tree won't suffice for tor to build - # See http://bugs.noreply.org/flyspray/index.php?do=details&id=920 - # for upstream's report - # Let's revisit this when libevent-2* is unmasked - # use bundledlibevent || epatch "${FILESDIR}"/${PN}-0.2.1.5-no-internal-libevent.patch -} - -src_configure() { - econf $(use_enable debug) -} - -src_install() { - newinitd "${FILESDIR}"/tor.initd-r4 tor - emake DESTDIR="${D}" install || die - keepdir /var/{lib,log,run}/tor - - dodoc README ChangeLog AUTHORS ReleaseNotes \ - doc/{HACKING,TODO} \ - doc/spec/*.txt - - fperms 750 /var/lib/tor /var/log/tor - fperms 755 /var/run/tor - fowners tor:tor /var/lib/tor /var/log/tor /var/run/tor - - insinto /etc/logrotate.d - newins contrib/tor.logrotate tor - - # allow the tor user more open files to avoid errors, see bug 251171 - insinto /etc/security/limits.d/ - doins "${FILESDIR}"/tor.conf -} - -pkg_postinst() { - elog "You must create /etc/tor/torrc, you can use the sample that is in that directory" - elog "To have privoxy and tor working together you must add:" - elog "forward-socks4a / localhost:9050 ." - elog "(notice the . at the end of the line)" - elog "to /etc/privoxy/config" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.22.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.22.ebuild deleted file mode 100644 index 65d2648868..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.22.ebuild +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/tor-0.2.1.22.ebuild,v 1.6 2010/02/10 04:06:42 josejx Exp $ - -EAPI=2 - -inherit eutils - -DESCRIPTION="Anonymizing overlay network for TCP" -HOMEPAGE="http://www.torproject.org/" -MY_PV=${PV/_/-} -SRC_URI="http://www.torproject.org/dist/${PN}-${MY_PV}.tar.gz" -S="${WORKDIR}/${PN}-${MY_PV}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ppc ppc64 sparc x86 ~x86-fbsd" -IUSE="debug" - -DEPEND="dev-libs/openssl - >=dev-libs/libevent-1.2" -RDEPEND="${DEPEND} - net-proxy/tsocks" - -pkg_setup() { - enewgroup tor - enewuser tor -1 -1 /var/lib/tor tor -} - -src_prepare() { - epatch "${FILESDIR}"/torrc.sample-0.1.2.6.patch - epatch "${FILESDIR}"/${PN}-0.2.1.19-logrotate.patch - # Normally tor uses a bundled libevent fragment to provide - # asynchronous DNS requests. This is generally a bad idea, but at - # the moment the official libevent does not have the 0x20 hack, so - # anonymity is higher with the bundled variant. Remove patch as - # soon as upstream has installed the autoconf option to use - # system's libevent. This hasn't happened, so we - # have to live with the bundled libevent for this release, as the - # current version in tree won't suffice for tor to build - # See http://bugs.noreply.org/flyspray/index.php?do=details&id=920 - # for upstream's report - # Let's revisit this when libevent-2* is unmasked - # use bundledlibevent || epatch "${FILESDIR}"/${PN}-0.2.1.5-no-internal-libevent.patch -} - -src_configure() { - econf $(use_enable debug) -} - -src_install() { - newinitd "${FILESDIR}"/tor.initd-r4 tor - emake DESTDIR="${D}" install || die - keepdir /var/{lib,log,run}/tor - - dodoc README ChangeLog AUTHORS ReleaseNotes \ - doc/{HACKING,TODO} \ - doc/spec/*.txt - - fperms 750 /var/lib/tor /var/log/tor - fperms 755 /var/run/tor - fowners tor:tor /var/lib/tor /var/log/tor /var/run/tor - - insinto /etc/logrotate.d - newins contrib/tor.logrotate tor - - # allow the tor user more open files to avoid errors, see bug 251171 - insinto /etc/security/limits.d/ - doins "${FILESDIR}"/tor.conf -} - -pkg_postinst() { - elog "You must create /etc/tor/torrc, you can use the sample that is in that directory" - elog "To have privoxy and tor working together you must add:" - elog "forward-socks4a / localhost:9050 ." - elog "(notice the . at the end of the line)" - elog "to /etc/privoxy/config" -} diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.30.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.30.ebuild deleted file mode 100644 index b1b17c4e3a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/net-misc/tor/tor-0.2.1.30.ebuild +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/tor-0.2.1.30.ebuild,v 1.5 2011/04/02 15:42:33 armin76 Exp $ - -EAPI=2 - -inherit eutils - -DESCRIPTION="Anonymizing overlay network for TCP" -HOMEPAGE="http://www.torproject.org/" -MY_PV=${PV/_/-} -SRC_URI="http://www.torproject.org/dist/${PN}-${MY_PV}.tar.gz" -S="${WORKDIR}/${PN}-${MY_PV}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm ppc ppc64 sparc x86 ~x86-fbsd" -IUSE="debug" - -DEPEND="dev-libs/openssl - >=dev-libs/libevent-1.2" -# The tordns patch for tsocks avoids some leakage of information thus raising anonymity -RDEPEND="${DEPEND} - net-proxy/tsocks[tordns]" - -src_prepare() { - epatch "${FILESDIR}"/torrc.sample-0.1.2.6.patch - epatch "${FILESDIR}"/${PN}-0.2.1.19-logrotate.patch - # Normally tor uses a bundled libevent fragment to provide - # asynchronous DNS requests. This is generally a bad idea, but at - # the moment the official libevent does not have the 0x20 hack, so - # anonymity is higher with the bundled variant. Remove patch as - # soon as upstream has installed the autoconf option to use - # system's libevent. This hasn't happened, so we - # have to live with the bundled libevent for this release, as the - # current version in tree won't suffice for tor to build - # See http://bugs.noreply.org/flyspray/index.php?do=details&id=920 - # for upstream's report - # Let's revisit this when libevent-2* is unmasked - # use bundledlibevent || epatch "${FILESDIR}"/${PN}-0.2.1.5-no-internal-libevent.patch -} - -src_configure() { - econf $(use_enable debug) -} - -src_install() { - emake DESTDIR="${D}" install || die - keepdir /var/{lib,log,run}/tor - - dodoc README ChangeLog AUTHORS ReleaseNotes \ - doc/{HACKING,TODO} - - fperms 750 /var/lib/tor /var/log/tor - fperms 755 /var/run/tor - fowners tor:tor /var/lib/tor /var/log/tor /var/run/tor - - insinto /etc/tor/ - doins "${FILESDIR}"/torrc - - insinto /etc/logrotate.d - newins contrib/tor.logrotate tor - - # allow the tor user more open files to avoid errors, see bug 251171 - insinto /etc/security/limits.d/ - doins "${FILESDIR}"/tor.conf - - install -D -m 644 "${FILESDIR}"/tor-upstart.conf ${D}/etc/init/tor.conf -} - -pkg_postinst() { - elog - elog "We created a configuration file for tor, /etc/tor/torrc, but you can" - elog "change it according to your needs. Use the torrc.sample that is in" - elog "that directory as a guide. Also, to have privoxy work with tor" - elog "just add the following line" - elog - elog "forward-socks4a / localhost:9050 ." - elog - elog "to /etc/privoxy/config. Notice the . at the end!" - elog -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/Manifest deleted file mode 100644 index e3b0f0e3b1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST busybox-1.21.0.tar.bz2 2200841 RMD160 9c6dd020d2d4c79fc9fe9dfb4869db45263356f8 SHA1 1e22c35fd5d93db1046c87c141b19026a38e81a2 SHA256 eb9d268627783297f5f459cb9bd61a94e395dc7cb3647e10ec186e0159aa36ed diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/busybox-1.21.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/busybox-1.21.0.ebuild deleted file mode 100644 index f8b772eab3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/busybox-1.21.0.ebuild +++ /dev/null @@ -1,255 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/busybox-1.21.0.ebuild,v 1.1 2013/01/22 01:48:41 vapier Exp $ - -# See `man savedconfig.eclass` for info on how to use USE=savedconfig. - -EAPI="4" -inherit eutils flag-o-matic savedconfig toolchain-funcs multilib - -DESCRIPTION="Utilities for rescue and embedded systems" -HOMEPAGE="http://www.busybox.net/" -if [[ ${PV} == "9999" ]] ; then - MY_P=${PN} - EGIT_REPO_URI="git://busybox.net/busybox.git" - inherit git-2 -else - MY_P=${PN}-${PV/_/-} - SRC_URI="http://www.busybox.net/downloads/${MY_P}.tar.bz2" - KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-linux ~x86-linux" -fi - -LICENSE="GPL-2" -SLOT="0" -IUSE="ipv6 livecd make-symlinks math mdev -pam selinux sep-usr +static systemd" -RESTRICT="test" - -RDEPEND="!static? ( selinux? ( sys-libs/libselinux ) ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - savedconfig? ( chromeos-base/busybox-config ) - static? ( selinux? ( sys-libs/libselinux[static-libs(+)] ) ) - >=sys-kernel/linux-headers-2.6.39" - -S=${WORKDIR}/${MY_P} - -busybox_config_option() { - case $1 in - y) sed -i -e "s:.*\.*set:CONFIG_$2=y:g" .config;; - n) sed -i -e "s:CONFIG_$2=y:# CONFIG_$2 is not set:g" .config;; - *) use $1 \ - && busybox_config_option y $2 \ - || busybox_config_option n $2 - return 0 - ;; - esac - einfo $(grep "CONFIG_$2[= ]" .config || echo Could not find CONFIG_$2 ...) -} - -src_prepare() { - unset KBUILD_OUTPUT #88088 - append-flags -fno-strict-aliasing #310413 - use ppc64 && append-flags -mminimal-toc #130943 - - # patches go here! - epatch "${FILESDIR}"/${PN}-1.19.0-bb.patch - #epatch "${FILESDIR}"/${P}-*.patch - #cp "${FILESDIR}"/ginit.c init/ || die - - # flag cleanup - sed -i -r \ - -e 's:[[:space:]]?-(Werror|Os|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \ - Makefile.flags || die - #sed -i '/bbsh/s:^//::' include/applets.h - sed -i '/^#error Aborting compilation./d' applets/applets.c || die - use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile - sed -i \ - -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \ - -e "/^AR\>/s:=.*:= $(tc-getAR):" \ - -e "/^CC\>/s:=.*:= $(tc-getCC):" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \ - Makefile || die - sed -i \ - -e 's:-static-libgcc::' \ - Makefile.flags || die -} - -src_configure() { - # check for a busybox config before making one of our own. - # if one exist lets return and use it. - - restore_config .config - if [ -f .config ]; then - yes "" | emake -j1 oldconfig > /dev/null - return 0 - else - ewarn "Could not locate user configfile, so we will save a default one" - fi - - # setup the config file - emake -j1 allyesconfig > /dev/null - # nommu forces a bunch of things off which we want on #387555 - busybox_config_option n NOMMU - sed -i '/^#/d' .config - yes "" | emake -j1 oldconfig >/dev/null - - # now turn off stuff we really don't want - busybox_config_option n DMALLOC - busybox_config_option n FEATURE_SUID_CONFIG - busybox_config_option n BUILD_AT_ONCE - busybox_config_option n BUILD_LIBBUSYBOX - busybox_config_option n FEATURE_CLEAN_UP - busybox_config_option n MONOTONIC_SYSCALL - busybox_config_option n USE_PORTABLE_CODE - busybox_config_option n WERROR - - # If these are not set and we are using a uclibc/busybox setup - # all calls to system() will fail. - busybox_config_option y ASH - busybox_config_option n HUSH - - # disable ipv6 applets - if ! use ipv6; then - busybox_config_option n FEATURE_IPV6 - busybox_config_option n TRACEROUTE6 - busybox_config_option n PING6 - fi - - if use static && use pam ; then - ewarn "You cannot have USE='static pam'. Assuming static is more important." - fi - busybox_config_option $(usex static n pam) PAM - busybox_config_option static STATIC - busybox_config_option systemd FEATURE_SYSTEMD - busybox_config_option math FEATURE_AWK_LIBM - - # all the debug options are compiler related, so punt them - busybox_config_option n DEBUG - busybox_config_option y NO_DEBUG_LIB - busybox_config_option n DMALLOC - busybox_config_option n EFENCE - - busybox_config_option selinux SELINUX - - # this opt only controls mounting with /dev/null -} - -src_compile() { - unset KBUILD_OUTPUT #88088 - export SKIP_STRIP=y - - emake V=1 busybox -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - dodir /bin - if use sep-usr ; then - # install /ginit to take care of mounting stuff - exeinto / - newexe busybox_unstripped ginit - dosym /ginit /bin/bb - dosym bb /bin/busybox - else - newbin busybox_unstripped busybox - dosym busybox /bin/bb - fi - if use mdev ; then - dodir /$(get_libdir)/mdev/ - use make-symlinks || dosym /bin/bb /sbin/mdev - cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf - - exeinto /$(get_libdir)/mdev/ - doexe "${FILESDIR}"/mdev/* - - newinitd "${FILESDIR}"/mdev.rc.1 mdev - fi - if use livecd ; then - dosym busybox /bin/vi - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" install - rm _install/bin/busybox - tar cf busybox-links.tar -C _install . || : #;die - insinto /usr/share/${PN} - use make-symlinks && doins busybox-links.tar - - dodoc AUTHORS README TODO - - cd docs - docinto txt - dodoc *.txt - docinto pod - dodoc *.pod - dohtml *.html - - cd ../examples - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm -} - -pkg_preinst() { - if use make-symlinks && [[ ! ${VERY_BRAVE_OR_VERY_DUMB} == "yes" ]] && [[ ${ROOT} == "/" ]] ; then - ewarn "setting USE=make-symlinks and emerging to / is very dangerous." - ewarn "it WILL overwrite lots of system programs like: ls bash awk grep (bug 60805 for full list)." - ewarn "If you are creating a binary only and not merging this is probably ok." - ewarn "set env VERY_BRAVE_OR_VERY_DUMB=yes if this is really what you want." - die "silly options will destroy your system" - fi - - if use make-symlinks ; then - mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die - fi -} - -pkg_postinst() { - savedconfig_pkg_postinst - - if use make-symlinks ; then - cd "${T}" || die - mkdir _install - tar xf busybox-links.tar -C _install || die - cp -vpPR _install/* "${ROOT}"/ || die "copying links for ${x} failed" - fi - - if use sep-usr ; then - elog "In order to use the sep-usr support, you have to update your" - elog "kernel command line. Add the option:" - elog " init=/ginit" - elog "To launch a different init than /sbin/init, use:" - elog " init=/ginit /sbin/yourinit" - elog "To get a rescue shell, you may boot with:" - elog " init=/ginit bb" - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/files/busybox-1.19.0-bb.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/files/busybox-1.19.0-bb.patch deleted file mode 100644 index a66b45a5e2..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/busybox/files/busybox-1.19.0-bb.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/shell/ash.c -+++ b/shell/ash.c -@@ -75,6 +75,8 @@ - //applet:IF_ASH(APPLET(ash, BB_DIR_BIN, BB_SUID_DROP)) - //applet:IF_FEATURE_SH_IS_ASH(APPLET_ODDNAME(sh, ash, BB_DIR_BIN, BB_SUID_DROP, sh)) - //applet:IF_FEATURE_BASH_IS_ASH(APPLET_ODDNAME(bash, ash, BB_DIR_BIN, BB_SUID_DROP, bash)) -+//applet:IF_ASH(APPLET_ODDNAME(bb, ash, BB_DIR_BIN, BB_SUID_DROP, ash)) -+//applet:IF_ASH(APPLET_ODDNAME(bbsh, ash, BB_DIR_BIN, BB_SUID_DROP, ash)) - - //kbuild:lib-$(CONFIG_ASH) += ash.o ash_ptr_hack.o shell_common.o - //kbuild:lib-$(CONFIG_ASH_RANDOM_SUPPORT) += random.o ---- a/shell/ash.c -+++ b/shell/ash.c -@@ -7255,6 +7255,8 @@ - } - /* re-exec ourselves with the new arguments */ - execve(bb_busybox_exec_path, argv, envp); -+ execve("/bin/busybox.static", argv, envp); -+ execve("/bin/busybox", argv, envp); - /* If they called chroot or otherwise made the binary no longer - * executable, fall through */ - } diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/chvt/chvt-0.0.1-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/chvt/chvt-0.0.1-r1.ebuild deleted file mode 100644 index 9640904e9f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/chvt/chvt-0.0.1-r1.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" - -# A stub to install "chvt" utility from sys-apps/kbd into sbin. - -DESCRIPTION="chvt: Change virtual terminal console" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" - -DEPEND="sys-apps/kbd" -RDEPEND="" - -# There's no source (required for EAPI=4) -S="${WORKDIR}" - -src_install() { - dosbin ${ROOT}/usr/bin/chvt -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/daisydog/daisydog-0.0.1-r4.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/daisydog/daisydog-0.0.1-r4.ebuild deleted file mode 100644 index 7832fa7375..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/daisydog/daisydog-0.0.1-r4.ebuild +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_COMMIT="2f357f7af0bebed339173bfad1a2e6e3a5191930" -CROS_WORKON_TREE="70399b45e7d690039110a3cd25d04b3648d79fe5" -CROS_WORKON_PROJECT="chromiumos/third_party/daisydog" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Simple HW watchdog daemon" -HOMEPAGE="http://git.chromium.org/gitweb/?p=chromiumos/third_party/daisydog.git" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -src_configure() { - tc-export CC -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/daisydog/daisydog-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/daisydog/daisydog-9999.ebuild deleted file mode 100644 index 9057099dd1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/daisydog/daisydog-9999.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -CROS_WORKON_PROJECT="chromiumos/third_party/daisydog" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Simple HW watchdog daemon" -HOMEPAGE="http://git.chromium.org/gitweb/?p=chromiumos/third_party/daisydog.git" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -src_configure() { - tc-export CC -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/Manifest deleted file mode 100644 index 1f7bfefabd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST dmidecode-2.10.tar.bz2 51904 RMD160 f2cf8155f60d76aa7ff9b2ce9ab28a357bf79704 SHA1 5366792a6df3266c9ecf7955f123027443370593 SHA256 4d74a3e93353320317a424816f9a045df06d9ed4b5b80881e16fdfcc74c9e2c0 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/dmidecode-2.10.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/dmidecode-2.10.ebuild deleted file mode 100644 index 21c8538613..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/dmidecode-2.10.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/dmidecode/dmidecode-2.10.ebuild,v 1.8 2011/03/23 17:28:30 vapier Exp $ - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="DMI (Desktop Management Interface) table related utilities" -HOMEPAGE="http://www.nongnu.org/dmidecode/" -SRC_URI="http://savannah.nongnu.org/download/dmidecode/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="-* amd64 arm ia64 ppc sparc x86" -IUSE="" - -DEPEND="" -RDEPEND="" - -src_unpack() { - unpack ${A} - cd "${S}" - epatch "${FILESDIR}"/${PN}-2.10-smbios_base.patch - - sed -i \ - -e '/^prefix/s:/usr/local:/usr:' \ - -e "/^docdir/s:dmidecode:${PF}:" \ - -e '/^PROGRAMS !=/d' \ - Makefile || die -} - -src_compile() { - emake \ - CFLAGS="${CFLAGS} ${CPPFLAGS}" \ - LDFLAGS="${LDFLAGS}" \ - CC="$(tc-getCC)" \ - || die -} - -src_install() { - emake install DESTDIR="${D}" || die - prepalldocs -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/files/dmidecode-2.10-smbios_base.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/files/dmidecode-2.10-smbios_base.patch deleted file mode 100644 index b118c74ceb..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/dmidecode/files/dmidecode-2.10-smbios_base.patch +++ /dev/null @@ -1,74 +0,0 @@ ---- dmidecode.c.orig 2011-05-25 21:35:54.000000000 -0700 -+++ dmidecode.c 2011-05-25 22:19:11.000000000 -0700 -@@ -4204,6 +4204,43 @@ - return 1; - } - -+ -+/* -+ * Probe for EFI interface -+ */ -+#define DEBUGFS_NO_SMBIOS (-1) -+static int address_from_debugfs(size_t *address) -+{ -+ FILE *efi_smbios_base; -+ const char *filename; -+ char linebuf[64]; -+ int ret; -+ -+ *address = 0; /* Prevent compiler warning */ -+ -+ /* ChromeOS contains /sys/kernel/debug/efi_smbios_base */ -+ if ((efi_smbios_base = fopen(filename = "/sys/kernel/debug/efi_smbios_base", "r")) == NULL) -+ { -+ /* Try another interface */ -+ return DEBUGFS_NO_SMBIOS; -+ } -+ ret = DEBUGFS_NO_SMBIOS; -+ if ((fgets(linebuf, sizeof(linebuf) - 1, efi_smbios_base)) != NULL) -+ { -+ *address = strtoul(linebuf, NULL, 0); -+ if (!(opt.flags & FLAG_QUIET)) -+ printf("# SMBIOS entry point at 0x%08lx\n", -+ (unsigned long)*address); -+ ret = 0; -+ } -+ if (fclose(efi_smbios_base) != 0) -+ perror(filename); -+ -+ if (ret == DEBUGFS_NO_SMBIOS) -+ fprintf(stderr, "%s: SMBIOS entry point missing\n", filename); -+ return ret; -+} -+ - /* - * Probe for EFI interface - */ -@@ -4257,6 +4294,7 @@ - int found = 0; - size_t fp; - int efi; -+ int debugfs; - u8 *buf; - - if (sizeof(u8) != 1 || sizeof(u16) != 2 || sizeof(u32) != 4 || '\0' != 0) -@@ -4315,6 +4353,11 @@ - goto done; - } - -+ /* Try debugfs: /sys/kernel/debug/efi_smbios_base */ -+ debugfs = address_from_debugfs(&fp); -+ if (debugfs == 0) -+ goto address_check; -+ - /* First try EFI (ia64, Intel-based Mac) */ - efi = address_from_efi(&fp); - switch (efi) -@@ -4326,6 +4369,7 @@ - goto exit_free; - } - -+address_check: - if ((buf = mem_chunk(fp, 0x20, opt.devmem)) == NULL) - { - ret = 1; diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashbench/files/flashbench-20121121-Makefile-install.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashbench/files/flashbench-20121121-Makefile-install.patch deleted file mode 100644 index 62340f9cba..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashbench/files/flashbench-20121121-Makefile-install.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/Makefile b/Makefile -index 9398f72..a9b7716 100644 ---- a/Makefile -+++ b/Makefile -@@ -1,6 +1,7 @@ --CC := gcc --CFLAGS := -O2 -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -g2 --LDFLAGS := -lrt -+CFLAGS ?= -O2 -g2 -+CFLAGS += -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -+ -+LDLIBS += -lrt - - all: flashbench erase - -@@ -9,10 +10,15 @@ vm.o: vm.c vm.h dev.h - flashbench.o: flashbench.c vm.h dev.h - - flashbench: flashbench.o dev.o vm.o -- $(CC) -o $@ flashbench.o dev.o vm.o $(LDFLAGS) -- -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) - - erase: erase.o - -+install: all -+ mkdir -p $(DESTDIR)/usr/bin -+ install -m 755 -D flashbench erase $(DESTDIR)/usr/bin/ -+ - clean: - rm -f flashbench flashbench.o erase erase.o dev.o vm.o -+ -+.PHONY: all clean diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashbench/flashbench-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashbench/flashbench-9999.ebuild deleted file mode 100644 index fe33054247..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashbench/flashbench-9999.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -# build with -# ACCEPT=~arm emerge-$BOARD flashbench -EAPI="4" - -inherit eutils - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://github.com/bradfa/flashbench.git" - EGIT_MASTER="dev" - inherit git-2 - SRC_URI="" -else - # This is a snapshot of "dev" branch - VER="dev-20121121" - SRC_URI="https://storage.cloud.google.com/chromeos-localmirror/distfiles/flashbench-${VER}.tar.gz" - S=${WORKDIR}/${PN}-${VER} -fi - -DESCRIPTION="Flash Storage Benchmark" -HOMEPAGE="https://github.com/bradfa/flashbench" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -src_prepare() { - epatch "${FILESDIR}"/flashbench-20121121-Makefile-install.patch -} - -src_configure() { - tc-export CC -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashmap/flashmap-0.3-r10.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashmap/flashmap-0.3-r10.ebuild deleted file mode 100644 index 3d7d43bb54..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashmap/flashmap-0.3-r10.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 2011 The Chromium OS Authors -# Distributed under the terms of the GNU General Public License v2 -# $Header: - -EAPI="4" -CROS_WORKON_COMMIT="fa5c49ea40c44f6322ee9860c0a06df73a8562e1" -CROS_WORKON_TREE="e581823802f8d3adafbbe03ff0f17cc1476697fa" -CROS_WORKON_PROJECT="chromiumos/third_party/flashmap" - -inherit cros-workon toolchain-funcs multilib - -DESCRIPTION="Utility for manipulating firmware ROM mapping data structure" -HOMEPAGE="http://flashmap.googlecode.com" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" - -# Disable unit testing for now because one of the test cases for detecting -# buffer overflow causes emake to fail when fmap_test is run. -# RESTRICT="test" will override FEATURES="test" and will also cause -# src_test() to be ignored by relevant scripts. -RESTRICT="test" -FEATURES="test" - -src_compile() { - tc-export AR CC LD NM STRIP OBJCOPY - emake || die -} - -src_test() { - tc-export AR CC LD NM STRIP OBJCOPY - # default "test" target uses lcov, so "test_only" was added to only - # build and run the test without generating coverage statistics - emake test_only || die -} - -src_install() { - emake LIBDIR=$(get_libdir) DESTDIR="${D}" USE_PKG_CONFIG=1 install || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashmap/flashmap-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashmap/flashmap-9999.ebuild deleted file mode 100644 index 02b7806c7a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashmap/flashmap-9999.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 2011 The Chromium OS Authors -# Distributed under the terms of the GNU General Public License v2 -# $Header: - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/third_party/flashmap" - -inherit cros-workon toolchain-funcs multilib - -DESCRIPTION="Utility for manipulating firmware ROM mapping data structure" -HOMEPAGE="http://flashmap.googlecode.com" -SRC_URI="" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" - -# Disable unit testing for now because one of the test cases for detecting -# buffer overflow causes emake to fail when fmap_test is run. -# RESTRICT="test" will override FEATURES="test" and will also cause -# src_test() to be ignored by relevant scripts. -RESTRICT="test" -FEATURES="test" - -src_compile() { - tc-export AR CC LD NM STRIP OBJCOPY - emake || die -} - -src_test() { - tc-export AR CC LD NM STRIP OBJCOPY - # default "test" target uses lcov, so "test_only" was added to only - # build and run the test without generating coverage statistics - emake test_only || die -} - -src_install() { - emake LIBDIR=$(get_libdir) DESTDIR="${D}" USE_PKG_CONFIG=1 install || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/ChangeLog b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/ChangeLog deleted file mode 100644 index 5707418a74..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/ChangeLog +++ /dev/null @@ -1,24 +0,0 @@ -# ChangeLog for sys-apps/flashrom -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/flashrom/ChangeLog,v 1.3 2010/01/28 20:04:28 idl0r Exp $ - -*flashrom-0.9.1 (28 Jan 2010) - - 28 Jan 2010; Christian Ruppert -flashrom-0.9.0.ebuild, - +flashrom-0.9.1.ebuild, metadata.xml: - Version bump, bug 284543. - Add ftdi and serprog useflag. - Update longdesc in metadata.xml. - - 08 May 2009; Mart Raudsepp flashrom-0.9.0.ebuild: - Fix homepage, pointed out by Anton Bolshakov - -*flashrom-0.9.0 (05 May 2009) - - 05 May 2009; Mart Raudsepp +metadata.xml, - +flashrom-0.9.0.ebuild: - Initial import of flashrom - a utility for reading, writing, verifying and - erasing flash ROM chips. It's used to flash BIOS/coreboot/firmware images. - Roughly based on ebuilds from Peter Stuge and Christian Ruppert. Closes bug - 196945 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/flashrom-0.9.4-r234.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/flashrom-0.9.4-r234.ebuild deleted file mode 100644 index 2f61a8f0be..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/flashrom-0.9.4-r234.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/flashrom/flashrom-0.9.4.ebuild,v 1.5 2011/09/20 16:03:21 nativemad Exp $ - -EAPI="4" -CROS_WORKON_COMMIT="6a1618ff25817ef7125a1d17b2a48ec04989adc0" -CROS_WORKON_TREE="846bf83a0323d8d44bc25c0c93f82b1121eb2766" -CROS_WORKON_PROJECT="chromiumos/third_party/flashrom" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips" -HOMEPAGE="http://flashrom.org/" -#SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 x86 arm" -IUSE="+atahpt +bitbang_spi +buspirate_spi dediprog +drkaiser -+dummy ft2232_spi +gfxnvidia +internal +linux_i2c +linux_spi +nic3com +nicintel -+nicintel_spi +nicnatsemi +nicrealtek +ogp_spi +rayer_spi -+satasii +satamv +serprog +wiki static -use_os_timer" - -COMMON_DEPEND="atahpt? ( sys-apps/pciutils ) - dediprog? ( virtual/libusb:0 ) - drkaiser? ( sys-apps/pciutils ) - ft2232_spi? ( dev-embedded/libftdi ) - gfxnvidia? ( sys-apps/pciutils ) - internal? ( sys-apps/pciutils ) - nic3com? ( sys-apps/pciutils ) - nicintel? ( sys-apps/pciutils ) - nicintel_spi? ( sys-apps/pciutils ) - nicnatsemi? ( sys-apps/pciutils ) - nicrealtek? ( sys-apps/pciutils ) - rayer_spi? ( sys-apps/pciutils ) - satasii? ( sys-apps/pciutils ) - satamv? ( sys-apps/pciutils ) - ogp_spi? ( sys-apps/pciutils )" -# Force pciutils to rebuild as USE=static-libs in chroot. -COMMON_DEPEND="${COMMON_DEPEND} - sys-apps/pciutils[static-libs]" -RDEPEND="${COMMON_DEPEND} - internal? ( sys-apps/dmidecode )" -DEPEND="${COMMON_DEPEND} - sys-apps/diffutils" - -_flashrom_enable() { - local c="CONFIG_${2:-$(echo $1 | tr [:lower:] [:upper:])}" - args+=" $c=`use $1 && echo yes || echo no`" -} -flashrom_enable() { - local u - for u in "$@" ; do _flashrom_enable $u ; done -} - -src_compile() { - local progs=0 - local args="" - - # Programmer - flashrom_enable \ - atahpt bitbang_spi buspirate_spi dediprog drkaiser \ - ft2232_spi gfxnvidia linux_i2c linux_spi nic3com nicintel \ - nicintel_spi nicnatsemi nicrealtek ogp_spi rayer_spi \ - satasii satamv serprog \ - internal dummy - _flashrom_enable wiki PRINT_WIKI - - # You have to specify at least one programmer, and if you specify more than - # one programmer you have to include either dummy or internal in the list. - for prog in ${IUSE//[+-]} ; do - case ${prog} in - internal|dummy|wiki|use_os_timer) continue ;; - esac - - use ${prog} && : $(( progs++ )) - done - if [ $progs -ne 1 ] ; then - if ! use internal && ! use dummy ; then - ewarn "You have to specify at least one programmer, and if you specify" - ewarn "more than one programmer, you have to enable either dummy or" - ewarn "internal as well. 'internal' will be the default now." - args+=" CONFIG_INTERNAL=yes" - fi - fi - - tc-export AR CC RANLIB - - # Configure Flashrom to use OS timer instead of calibrated delay loop - # if USE flag is specified or if a certain board requires it. - if use use_os_timer ; then - einfo "Configuring Flashrom to use OS timer" - args="$args CONFIG_USE_OS_TIMER=yes" - else - einfo "Configuring Flashrom to use delay loop" - args="$args CONFIG_USE_OS_TIMER=no" - fi - - # WARNERROR=no, bug 347879 - # TODO(hungte) Workaround for crosbug.com/32967: always provide - # dynamic and static version binaries if 'static' is not - # specified in USE flag. We should deprecate this behavior once - # we find a better way to fix flashrom execution dependency. - - local dynamic_args="$args CONFIG_STATIC=no" - local static_args="$args CONFIG_STATIC=yes" - emake WARNERROR=no ${static_args} || die - if ! use static; then - # Provide the static one as flashrom_s. - cp flashrom flashrom_s - emake clean - emake WARNERROR=no ${dynamic_args} || die - fi -} - -src_install() { - dosbin flashrom || die - if ! use static;then - # crosbug.com/32967: Default target is not static. Provide the - # auxiliary static version as flashrom_s. - dosbin flashrom_s || die - fi - doman flashrom.8 - dodoc README -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/flashrom-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/flashrom-9999.ebuild deleted file mode 100644 index bc769c3440..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/flashrom-9999.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/flashrom/flashrom-0.9.4.ebuild,v 1.5 2011/09/20 16:03:21 nativemad Exp $ - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/third_party/flashrom" - -inherit cros-workon toolchain-funcs - -DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips" -HOMEPAGE="http://flashrom.org/" -#SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~arm" -IUSE="+atahpt +bitbang_spi +buspirate_spi dediprog +drkaiser -+dummy ft2232_spi +gfxnvidia +internal +linux_i2c +linux_spi +nic3com +nicintel -+nicintel_spi +nicnatsemi +nicrealtek +ogp_spi +rayer_spi -+satasii +satamv +serprog +wiki static -use_os_timer" - -COMMON_DEPEND="atahpt? ( sys-apps/pciutils ) - dediprog? ( virtual/libusb:0 ) - drkaiser? ( sys-apps/pciutils ) - ft2232_spi? ( dev-embedded/libftdi ) - gfxnvidia? ( sys-apps/pciutils ) - internal? ( sys-apps/pciutils ) - nic3com? ( sys-apps/pciutils ) - nicintel? ( sys-apps/pciutils ) - nicintel_spi? ( sys-apps/pciutils ) - nicnatsemi? ( sys-apps/pciutils ) - nicrealtek? ( sys-apps/pciutils ) - rayer_spi? ( sys-apps/pciutils ) - satasii? ( sys-apps/pciutils ) - satamv? ( sys-apps/pciutils ) - ogp_spi? ( sys-apps/pciutils )" -# Force pciutils to rebuild as USE=static-libs in chroot. -COMMON_DEPEND="${COMMON_DEPEND} - sys-apps/pciutils[static-libs]" -RDEPEND="${COMMON_DEPEND} - internal? ( sys-apps/dmidecode )" -DEPEND="${COMMON_DEPEND} - sys-apps/diffutils" - -_flashrom_enable() { - local c="CONFIG_${2:-$(echo $1 | tr [:lower:] [:upper:])}" - args+=" $c=`use $1 && echo yes || echo no`" -} -flashrom_enable() { - local u - for u in "$@" ; do _flashrom_enable $u ; done -} - -src_compile() { - local progs=0 - local args="" - - # Programmer - flashrom_enable \ - atahpt bitbang_spi buspirate_spi dediprog drkaiser \ - ft2232_spi gfxnvidia linux_i2c linux_spi nic3com nicintel \ - nicintel_spi nicnatsemi nicrealtek ogp_spi rayer_spi \ - satasii satamv serprog \ - internal dummy - _flashrom_enable wiki PRINT_WIKI - - # You have to specify at least one programmer, and if you specify more than - # one programmer you have to include either dummy or internal in the list. - for prog in ${IUSE//[+-]} ; do - case ${prog} in - internal|dummy|wiki|use_os_timer) continue ;; - esac - - use ${prog} && : $(( progs++ )) - done - if [ $progs -ne 1 ] ; then - if ! use internal && ! use dummy ; then - ewarn "You have to specify at least one programmer, and if you specify" - ewarn "more than one programmer, you have to enable either dummy or" - ewarn "internal as well. 'internal' will be the default now." - args+=" CONFIG_INTERNAL=yes" - fi - fi - - tc-export AR CC RANLIB - - # Configure Flashrom to use OS timer instead of calibrated delay loop - # if USE flag is specified or if a certain board requires it. - if use use_os_timer ; then - einfo "Configuring Flashrom to use OS timer" - args="$args CONFIG_USE_OS_TIMER=yes" - else - einfo "Configuring Flashrom to use delay loop" - args="$args CONFIG_USE_OS_TIMER=no" - fi - - # WARNERROR=no, bug 347879 - # TODO(hungte) Workaround for crosbug.com/32967: always provide - # dynamic and static version binaries if 'static' is not - # specified in USE flag. We should deprecate this behavior once - # we find a better way to fix flashrom execution dependency. - - local dynamic_args="$args CONFIG_STATIC=no" - local static_args="$args CONFIG_STATIC=yes" - emake WARNERROR=no ${static_args} || die - if ! use static; then - # Provide the static one as flashrom_s. - cp flashrom flashrom_s - emake clean - emake WARNERROR=no ${dynamic_args} || die - fi -} - -src_install() { - dosbin flashrom || die - if ! use static;then - # crosbug.com/32967: Default target is not static. Provide the - # auxiliary static version as flashrom_s. - dosbin flashrom_s || die - fi - doman flashrom.8 - dodoc README -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/metadata.xml b/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/metadata.xml deleted file mode 100644 index e94021f7f8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/flashrom/metadata.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - -no-herd - - leio@gentoo.org - - - peter@stuge.se - Please CC on all bugs - - - Enable flashing through FTDI/SPI USB interface - Enable Serial Flasher support - - -flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It's often used to flash BIOS/EFI/coreboot/firmware images. - - * Supports more than 195 flash chips, 75 chipsets, 130 mainboards, and 17 devices (PCI or USB) which can be used as external programmers. - * Supports parallel, LPC, FWH and SPI flash interfaces and various chip packages (DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, TSOP40, TSOP48, and more) - * No physical access needed, root access is sufficient. - * No bootable floppy disk, bootable CD-ROM or other media needed. - * No keyboard or monitor needed. Simply reflash remotely via SSH. - * No instant reboot needed. Reflash your chip in a running system, verify it, be happy. The new firmware will be present next time you boot. - * Crossflashing and hotflashing is possible as long as the flash chips are electrically and logically compatible (same protocol). Great for recovery. - * Scriptability. Reflash a whole pool of identical machines at the same time from the command line. It is recommended to check flashrom output and error codes. - * Speed. flashrom is often much faster than most vendor flash tools. - * Portability. Supports Linux, FreeBSD, DragonFly BSD, Solaris, Mac OS X, and other Unix-like OSes. - - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/ChangeLog b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/ChangeLog deleted file mode 100644 index c3e63ec240..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/ChangeLog +++ /dev/null @@ -1,1077 +0,0 @@ -# ChangeLog for sys-apps/iproute2 -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/ChangeLog,v 1.224 2013/05/04 05:09:02 vapier Exp $ - - 04 May 2013; Mike Frysinger - +files/iproute2-3.8.0-old-mount-libc.patch, iproute2-3.8.0.ebuild: - Fix build with older C libs and missing defines in mount.h #468120 by Agostino - Sarubbo. - -*iproute2-3.9.0 (01 May 2013) - - 01 May 2013; Tim Harder +iproute2-3.9.0.ebuild: - Version bump. - - 29 Apr 2013; Mike Frysinger iproute2-3.8.0.ebuild: - Mark s390/sh stable #458004. - - 28 Apr 2013; Mike Frysinger iproute2-3.8.0.ebuild: - Fix building w/older linux-headers #467716 by Didier Barvaux. - - 27 Apr 2013; Mike Frysinger iproute2-3.8.0.ebuild: - Do not bother installing sgml/tex source files as docs #455988 by C W Rose. - - 26 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for sparc, wrt bug #458004 - - 23 Apr 2013; Jeroen Roovers iproute2-3.8.0.ebuild: - Stable for HPPA (bug #458004). - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for alpha, wrt bug #458004 - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for arm, wrt bug #458004 - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for ia64, wrt bug #458004 - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for ppc, wrt bug #458004 - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for ppc64, wrt bug #458004 - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for x86, wrt bug #458004 - - 23 Apr 2013; Agostino Sarubbo iproute2-3.8.0.ebuild: - Stable for amd64, wrt bug #458004 - - 03 Mar 2013; Mike Frysinger metadata.xml: - Document USE=berkdb as disabling arpd only #459008 by Luis Ressel. - -*iproute2-3.8.0 (28 Feb 2013) - - 28 Feb 2013; Tim Harder +iproute2-3.8.0.ebuild: - Version bump. - - 10 Feb 2013; Mike Frysinger iproute2-3.7.0.ebuild: - Also respect BUILD_CC #401907 by Andrey Hippo. - - 10 Feb 2013; Mike Frysinger iproute2-3.7.0.ebuild, - +files/iproute2-3.7.0-clang.patch: - Add fix from upstream for building w/clang. - - 11 Jan 2013; Mike Frysinger - +files/iproute2-3.7.0-man7.patch, iproute2-3.7.0.ebuild: - Install man7 pages #451166 by Marcin Mirosław. - - 16 Dec 2012; Mike Frysinger iproute2-3.7.0.ebuild: - Update iproute2 tarball since upstream fixed the packaging and re-released it. - -*iproute2-3.7.0 (14 Dec 2012) - - 14 Dec 2012; Mike Frysinger +iproute2-3.7.0.ebuild, - iproute2-9999.ebuild: - Version bump. - - 08 Nov 2012; Mike Frysinger - +files/iproute2-3.6.0-pkg-config.patch, iproute2-3.6.0.ebuild: - Use the correct pkg-config when cross-compiling #442354 by Bertrand Jacquin. - -*iproute2-3.6.0 (09 Oct 2012) - - 09 Oct 2012; Mike Frysinger +iproute2-3.6.0.ebuild: - Version bump. - -*iproute2-3.5.1 (13 Aug 2012) - - 13 Aug 2012; Mike Frysinger +iproute2-3.5.1.ebuild, - -files/iproute2-3.5.0-ip-a-s.patch, -iproute2-3.5.0-r1.ebuild, - -iproute2-3.5.0.ebuild: - Add official 3.5.1 release which fixes regressions in 3.5.0. - -*iproute2-3.5.0-r1 (13 Aug 2012) - - 13 Aug 2012; Mike Frysinger - +files/iproute2-3.5.0-ip-a-s.patch, +iproute2-3.5.0-r1.ebuild: - Fix `ip a s` so it shows addresses #430320 by Graham Murray. Move ip into - /bin #330115 by Thilo Bangert. - -*iproute2-3.5.0 (02 Aug 2012) - - 02 Aug 2012; Tim Harder +iproute2-3.5.0.ebuild: - Version bump. - -*iproute2-3.4.0 (16 Jul 2012) - - 16 Jul 2012; Tim Harder +iproute2-3.4.0.ebuild: - Version bump. - - 01 Jun 2012; Zac Medico iproute2-2.6.29.1-r1.ebuild, - iproute2-2.6.35-r2.ebuild, iproute2-2.6.35-r3.ebuild, iproute2-2.6.38.ebuild, - iproute2-3.1.0.ebuild, iproute2-9999.ebuild: - inherit multilib for get_libdir - - 22 May 2012; Michael Weber iproute2-3.3.0.ebuild: - Finally fix prefix support (bug 414465) - - 15 May 2012; Jeroen Roovers iproute2-3.3.0.ebuild: - Stable for HPPA (bug #414669). - - 12 May 2012; Markus Meier iproute2-3.3.0.ebuild: - arm stable, bug #414669 - - 09 May 2012; Agostino Sarubbo iproute2-3.3.0.ebuild: - Stable for amd64, wrt bug #414669 - - 09 May 2012; Agostino Sarubbo iproute2-3.3.0.ebuild: - Stable for amd64, wrt bug #414669 - - 09 May 2012; Jeff Horelick iproute2-3.3.0.ebuild: - marked x86 per bug 414669 - - 08 May 2012; Brent Baude iproute2-3.3.0.ebuild: - Marking iproute2-3.3.0 ppc64 for bug 414669 - - 05 May 2012; Brent Baude iproute2-3.3.0.ebuild: - Marking iproute2-3.3.0 ppc for bug 414669 - - 05 May 2012; Mike Frysinger - +files/iproute2-3.1.0-no-ipv6.patch, iproute2-3.1.0.ebuild, - iproute2-3.3.0.ebuild, iproute2-9999.ebuild: - Forward port USE=iptables and USE=ipv6 support to newer verisons #414661 by - Mike Gilbert. - - 04 May 2012; Jeff Horelick iproute2-2.6.35-r3.ebuild: - dev-util/pkgconfig -> virtual/pkgconfig - -*iproute2-3.3.0 (30 Mar 2012) - - 30 Mar 2012; Mike Frysinger +iproute2-3.3.0.ebuild, - iproute2-9999.ebuild: - Version bump #409995 by jrut. - - 16 Feb 2012; Mike Frysinger iproute2-3.1.0.ebuild: - Respect CC from build env #401907 by Andrey Hippo. - - 02 Feb 2012; Samuli Suominen iproute2-2.6.38.ebuild: - ppc64 stable wrt #393319 - - 04 Jan 2012; Brent Baude iproute2-2.6.38.ebuild: - Marking iproute2-2.6.38 ppc for bug 393319 - - 17 Dec 2011; Raúl Porcel iproute2-2.6.38.ebuild: - alpha/ia64/m68k/s390/sh/sparc stable wrt #393319 - - 11 Dec 2011; Jeroen Roovers iproute2-2.6.38.ebuild: - Stable for HPPA (bug #393319). - - 11 Dec 2011; Markus Meier iproute2-2.6.38.ebuild: - arm stable, bug #393319 - - 11 Dec 2011; Pawel Hajdan jr iproute2-2.6.38.ebuild: - x86 stable wrt bug #393319 - - 09 Dec 2011; Markos Chandras iproute2-2.6.38.ebuild: - Stable on amd64 wrt bug #393319 - - 05 Dec 2011; Mike Frysinger iproute2-2.6.38.ebuild, - iproute2-3.1.0.ebuild, iproute2-9999.ebuild: - Clean up code a bit and drop MY_P handling which hopefully should no longer - be needed. - - 03 Dec 2011; Mike Frysinger iproute2-3.1.0.ebuild, - iproute2-9999.ebuild: - Update SRC_URI #392987 by Azamat H. Hackimov. - -*iproute2-3.1.0 (02 Dec 2011) - - 02 Dec 2011; Mike Frysinger +iproute2-3.1.0.ebuild, - +files/iproute2-3.1.0-mtu.patch, iproute2-9999.ebuild: - Version bump. - - 18 Oct 2011; Mike Frysinger iproute2-2.6.38.ebuild, - +files/iproute2-2.6.38-parallel-build.patch: - Fix parallel builds in the tc subdir. - - 31 Jul 2011; Matt Turner iproute2-2.6.29.1-r1.ebuild, - iproute2-2.6.35-r2.ebuild, iproute2-2.6.35-r3.ebuild, iproute2-2.6.38.ebuild, - iproute2-9999.ebuild: - Add missing bison and flex dependencies, bug 376343. - -*iproute2-2.6.38 (11 Jun 2011) - - 11 Jun 2011; Tomáš Chvátal - -files/iproute2-2.6.26-linux-2.6.27-API.patch, -iproute2-2.6.31.ebuild, - -iproute2-2.6.33.ebuild, -iproute2-2.6.34.ebuild, - -files/iproute2-2.6.34-dnet-fix-strict-aliasing-warnings.patch, - -files/iproute2-2.6.34-netem-fix-installs-of-dist-files.patch, - -files/iproute2-2.6.34-tc-revert-echo-in-install-target.patch, - -iproute2-2.6.35-r1.ebuild, -iproute2-2.6.37.ebuild, +iproute2-2.6.38.ebuild, - iproute2-9999.ebuild: - Cleanup live version to use git-2 and base eclasses, EAPI=4, remove wrong - prepalldocs call. Version bump to 2.6.38 (copy from live) which works with - latest iptables. Punt all overshadowed versions keeping 2 in testing and 2 in - stable. This also fixes bug #370793. - - 14 Apr 2011; Diego E. Pettenò - iproute2-2.6.29.1-r1.ebuild, iproute2-2.6.31.ebuild, iproute2-2.6.33.ebuild, - iproute2-2.6.34.ebuild, iproute2-2.6.35-r1.ebuild, iproute2-2.6.35-r2.ebuild, - iproute2-2.6.35-r3.ebuild, iproute2-2.6.37.ebuild, iproute2-9999.ebuild: - Replace dependency on virtual/os-headers with one on linux-headers, to - unbreak ebuild with new-style virtual. Thanks to Marien Zwart in bug #363569 - for reporting. - -*iproute2-2.6.37 (07 Jan 2011) - - 07 Jan 2011; Mike Frysinger +iproute2-2.6.37.ebuild: - Version bump. - - 05 Dec 2010; Raúl Porcel iproute2-2.6.35-r2.ebuild: - alpha/ia64/m68k/s390/sh stable wrt #346385 - - 29 Nov 2010; Brent Baude iproute2-2.6.35-r2.ebuild: - stable ppc64, bug 346385 - - 28 Nov 2010; Markus Meier iproute2-2.6.35-r2.ebuild: - x86 stable, bug #346385 - - 27 Nov 2010; nixnut iproute2-2.6.35-r2.ebuild: - ppc stable #346385 - - 27 Nov 2010; Michael Weber iproute2-2.6.35-r2.ebuild: - arm stable (bug 346385) - - 26 Nov 2010; Jeroen Roovers iproute2-2.6.35-r2.ebuild: - Stable for HPPA SPARC (bug #346385). - - 26 Nov 2010; Markos Chandras iproute2-2.6.35-r2.ebuild: - Stable on amd64 wrt bug #346385 - -*iproute2-2.6.35-r3 (21 Nov 2010) - - 21 Nov 2010; Mike Frysinger - +iproute2-2.6.35-r3.ebuild, +files/iproute2-2.6.35-no-iptables.patch, - +files/iproute2-2.6.35-xtables.patch, metadata.xml: - Add USE=iptables to control support for it, and fix up iptables handling - in the process to use the newer x_xt module. Pull in pkg-config when - necessary #346137 by Mike Gilbert. - -*iproute2-2.6.35-r2 (18 Sep 2010) - - 18 Sep 2010; Mike Frysinger +iproute2-2.6.35-r2.ebuild, - +files/iproute2-2.6.35-cached-routes.patch: - Add fix from upstream for cached route misbehavior #331447 by ByrneG. - - 23 Aug 2010; Mike Frysinger iproute2-2.6.35-r1.ebuild, - +files/iproute2-2.6.35-no-ipv6.patch: - Allow people to disable ipv6 support #326849 by Pinkbyte. - - 14 Aug 2010; Harald van Dijk - iproute2-2.6.35-r1.ebuild: - Use BUILD_CC instead of hardcoded gcc for build-only programs - - 09 Aug 2010; Mike Frysinger -iproute2-2.6.35.ebuild, - iproute2-2.6.35-r1.ebuild, iproute2-9999.ebuild: - Drop symlinks #330115. - -*iproute2-2.6.35-r1 (07 Aug 2010) - - 07 Aug 2010; Diego E. Pettenò - +iproute2-2.6.35-r1.ebuild, iproute2-9999.ebuild: - Just symlink ip to /bin; this way it won't break if any software (wrongly) - use the full path. Add missing flex dependency. - -*iproute2-2.6.35 (04 Aug 2010) - - 04 Aug 2010; Mike Frysinger +iproute2-2.6.35.ebuild, - iproute2-9999.ebuild: - Sync live ebuild version and move `ip` into /bin #330115 by Thilo Bangert. - -*iproute2-2.6.34 (10 Jun 2010) - - 10 Jun 2010; Mike Frysinger +iproute2-2.6.34.ebuild, - +files/iproute2-2.6.34-dnet-fix-strict-aliasing-warnings.patch, - +files/iproute2-2.6.34-netem-fix-installs-of-dist-files.patch, - +files/iproute2-2.6.34-tc-revert-echo-in-install-target.patch: - Version bump. Install libnetlink files #314967 by Daniel Deptula. Fix dist - lookup with tc #320333 by Ryan Twitchell. - - 08 May 2010; Raúl Porcel iproute2-2.6.31.ebuild: - alpha/ia64/m68k/s390/sh/sparc stable wrt #308137 - - 26 Apr 2010; Markus Meier iproute2-2.6.31.ebuild: - amd64/arm stable, bug #308137 - - 04 Apr 2010; Guy Martin iproute2-2.6.31.ebuild: - Stable on hppa, #308137. - - 21 Mar 2010; Pawel Hajdan jr - iproute2-2.6.31.ebuild: - x86 stable, arch-tested by Andreas Schurch, bug #308137 - - 15 Mar 2010; nixnut iproute2-2.6.31.ebuild: - ppc stable #308137 - - 13 Mar 2010; Brent Baude iproute2-2.6.31.ebuild: - stable ppc64, bug 308137 - -*iproute2-2.6.33 (07 Mar 2010) - - 07 Mar 2010; Mike Frysinger +iproute2-2.6.33.ebuild: - Version bump #307115 by Krzysztof Olędzki. - - 29 Dec 2009; Mike Frysinger iproute2-2.6.31.ebuild, - iproute2-9999.ebuild: - Drop flush patch as it should be fixed now #274973#5. - -*iproute2-2.6.31 (26 Dec 2009) - - 26 Dec 2009; Mike Frysinger +iproute2-2.6.31.ebuild, - iproute2-9999.ebuild: - Version bump. - - 26 Dec 2009; Mike Frysinger - iproute2-2.6.29.1-r1.ebuild: - Mark ppc64 stable. - - 26 Dec 2009; Raúl Porcel - iproute2-2.6.29.1-r1.ebuild: - sparc stable wrt #291833 - -*iproute2-2.6.29.1-r3 (06 Dec 2009) - - 06 Dec 2009; Mike Frysinger - +iproute2-2.6.29.1-r3.ebuild, +files/iproute2-2.6.29.1-hfsc.patch: - Improve HFSC documentation and usage #291907 by Arthur Demchenkov. - -*iproute2-2.6.29.1-r2 (27 Nov 2009) - - 27 Nov 2009; Mike Frysinger - +iproute2-2.6.29.1-r2.ebuild: - Fix path to iptables dir again #293709 by Vitaliy V. Osypenko. - - 22 Nov 2009; Mike Frysinger - iproute2-2.6.29.1-r1.ebuild: - Mark ia64 stable #291833. - - 22 Nov 2009; Mike Frysinger iproute2-2.6.26-r2.ebuild, - iproute2-2.6.28.ebuild, iproute2-2.6.29.1-r1.ebuild, iproute2-9999.ebuild: - Update HOMEPAGE #294049 by Dennis Schridde. - - 11 Nov 2009; Jeroen Roovers iproute2-2.6.29.1-r1.ebuild: - Stable for HPPA (bug #291833). Remove KEYWORDS where appropriate. - - 09 Nov 2009; Markus Meier iproute2-2.6.29.1-r1.ebuild: - amd64/arm/x86 stable, bug #291833 - - 08 Nov 2009; nixnut iproute2-2.6.29.1-r1.ebuild: - ppc stable #291833 - - 08 Nov 2009; Tobias Klausmann - iproute2-2.6.29.1-r1.ebuild: - Stable on alpha, bug #291833 - - 31 Oct 2009; Raúl Porcel iproute2-2.6.28.ebuild: - sparc stable wrt #269184 - - 02 Oct 2009; Raúl Porcel iproute2-2.6.28.ebuild: - ia64/m68k/s390/sh stable wrt #269184 and re-add ~sparc - - 13 Sep 2009; Markus Meier iproute2-2.6.28.ebuild: - arm stable, bug #269184 - - 31 Aug 2009; Brent Baude ChangeLog: - Marking iproute2-2.6.28 ppc64 for bug 269184 - - 26 Aug 2009; Mike Frysinger iproute2-2.6.26-r2.ebuild, - iproute2-2.6.28.ebuild, iproute2-2.6.29.1.ebuild, - iproute2-2.6.29.1-r1.ebuild, iproute2-9999.ebuild: - Use common epatch_user code now. - -*iproute2-2.6.29.1-r1 (11 Jul 2009) - - 11 Jul 2009; Alin Năstac - +files/iproute2-2.6.29.1-flush.patch, +iproute2-2.6.29.1-r1.ebuild, - iproute2-9999.ebuild: - Migrate to EAPI 2. Fix flush commands (#274973). - - 09 Jun 2009; Jeroen Roovers iproute2-2.6.28.ebuild: - Stable for HPPA (bug #269184). - - 31 May 2009; Markus Meier iproute2-2.6.28.ebuild: - x86 stable, bug #269184 - - 30 May 2009; nixnut iproute2-2.6.28.ebuild: - ppc stable #269184 - - 30 May 2009; Dawid Węgliński iproute2-2.6.28.ebuild: - Stable on amd64 (bug #269184) - - 29 May 2009; Mike Frysinger iproute2-2.6.28.ebuild, - iproute2-2.6.29.1.ebuild, iproute2-9999.ebuild: - Relax linux-headers dependency slightly for stabilization #269184. - -*iproute2-2.6.29.1 (09 May 2009) - - 09 May 2009; Mike Frysinger +iproute2-2.6.29.1.ebuild: - Version bump. - - 19 Mar 2009; Joseph Jezak iproute2-2.6.26-r2.ebuild: - Marked ppc stable for bug #259927. - - 14 Mar 2009; Raúl Porcel iproute2-2.6.26-r2.ebuild: - arm/ia64/s390/sh/sparc stable wrt #259927 - - 11 Mar 2009; Markus Meier iproute2-2.6.26-r2.ebuild: - x86 stable, bug #259927 - - 09 Mar 2009; Jeremy Olexa iproute2-2.6.26-r2.ebuild: - amd64 stable, bug 259927 - - 06 Mar 2009; Jeroen Roovers iproute2-2.6.26-r2.ebuild: - Stable for HPPA (bug #259927). - - 27 Feb 2009; Brent Baude iproute2-2.6.26-r2.ebuild: - stable ppc64, bug 259927 - - 23 Feb 2009; Tobias Klausmann - iproute2-2.6.26-r2.ebuild: - Stable on alpha, bug #259927 - - 18 Jan 2009; Mike Frysinger iproute2-2.6.28.ebuild: - Force linux-headers-2.6.28 #255383. - -*iproute2-2.6.28 (17 Jan 2009) - - 17 Jan 2009; Mike Frysinger +iproute2-2.6.28.ebuild, - iproute2-9999.ebuild: - Merge ebuild versions and version bump #255095 by Krzysztof Oledzki. - - 27 Nov 2008; Mike Frysinger iproute2-2.6.26-r2.ebuild: - Add a blocker on iproute2 #248092 by Diego E. Pettenò. - - 27 Oct 2008; Mike Frysinger - +files/iproute2-2.6.26-linux-2.6.27-API.patch, iproute2-2.6.26-r2.ebuild: - Fix building with linux-2.6.27 headers. - -*iproute2-2.6.26-r2 (09 Sep 2008) - - 09 Sep 2008; Doug Goldstein - +files/iproute2-2.6.26-ldflags.patch, +iproute2-2.6.26-r2.ebuild: - multilib and ldflags respecting changes from Olivier Huber - bug #236861 - -*iproute2-2.6.26-r1 (20 Aug 2008) - - 20 Aug 2008; Mike Frysinger - +iproute2-2.6.26-r1.ebuild: - Fix by cyrillic for manpage install #235237. - -*iproute2-2.6.26 (17 Aug 2008) - - 17 Aug 2008; Mike Frysinger +iproute2-2.6.26.ebuild: - Version bump #232971 by Krzysztof Oledzki. - - 29 Jun 2008; Zac Medico - iproute2-2.6.25.20080417.ebuild: - Change invalid >=sys-libs/glibc-2.7* atom to >=sys-libs/glibc-2.7. There - is a bug in repoman that allowed this atom to slip through. The repoman - bug is fixed in svn. - - 28 Jun 2008; Mike Frysinger - iproute2-2.6.25.20080417.ebuild: - Force newer glibc #229357. - - 28 Jun 2008; Mike Frysinger - iproute2-2.6.25.20080417.ebuild: - Force linux-headers-2.6.25+ #229351. - - 21 Jun 2008; Mike Frysinger - +files/iproute2-2.6.25.20080417-build.patch, - iproute2-2.6.25.20080417.ebuild: - Respect env CPPFLAGS, add fix by Bertrand Jacquin for cross-compiling - #226035, and build against system headers rather than local copies #226359 - by Derk W te Bokkel. - -*iproute2-2.6.25.20080417 (09 Jun 2008) - - 09 Jun 2008; Mike Frysinger - +iproute2-2.6.25.20080417.ebuild: - Version bump #225455 by teidakankan. - -*iproute2-2.6.24.20080108 (29 Mar 2008) - - 29 Mar 2008; Mike Frysinger - +iproute2-2.6.24.20080108.ebuild: - Version bump. - -*iproute2-2.6.23.20071016 (16 Mar 2008) - - 16 Mar 2008; Mike Frysinger - +iproute2-2.6.23.20071016.ebuild: - Version bump #203386 by RB and drop linux-2.4.x warning #209370 by Chris - Gianelloni. - - 11 Mar 2008; iproute2-2.6.15.20060110.ebuild, - iproute2-2.6.16.20060323.ebuild, iproute2-2.6.18.20061002.ebuild, - iproute2-2.6.19.20061214.ebuild, iproute2-2.6.22.20070710.ebuild: - Drop to ~mips due to unstable deps - - 06 Oct 2007; Tom Gall - iproute2-2.6.22.20070710.ebuild: - stable on ppc64 bug #193818 - - 30 Sep 2007; Christoph Mende - iproute2-2.6.22.20070710.ebuild: - Stable on amd64 wrt bug #193818 - - 28 Sep 2007; nixnut iproute2-2.6.22.20070710.ebuild: - Stable on ppc wrt bug 193818 - - 28 Sep 2007; Joshua Kinard - iproute2-2.6.22.20070710.ebuild: - Stable on mips, per #193818. - - 27 Sep 2007; Raúl Porcel - iproute2-2.6.22.20070710.ebuild: - alpha/ia64/sparc stable wrt #193818 - - 27 Sep 2007; Christian Faulhammer - iproute2-2.6.22.20070710.ebuild: - stable x86, bug #193818 - - 27 Sep 2007; Jeroen Roovers - iproute2-2.6.22.20070710.ebuild: - Stable for HPPA (bug #193818). - - 29 Sep 2007; Mike Frysinger - iproute2-2.6.22.20070710.ebuild: - Add user patch support so we dont need to maintain ESFQ cruft anymore #194204. - - 30 Aug 2007; Jeroen Roovers - iproute2-2.6.20.20070313.ebuild: - Stable for HPPA (bug #190200). - - 28 Aug 2007; nixnut iproute2-2.6.20.20070313.ebuild: - Stable on ppc wrt bug 190200 - - 28 Aug 2007; Raúl Porcel - iproute2-2.6.20.20070313.ebuild: - alpha/ia64 stable wrt #190200 - - 27 Aug 2007; Gustavo Zacarias - iproute2-2.6.20.20070313.ebuild: - Stable on sparc wrt #190200 - - 26 Aug 2007; Jurek Bartuszek - iproute2-2.6.20.20070313.ebuild: - x86 stable (bug #190200) - - 26 Aug 2007; Wulf C. Krueger - iproute2-2.6.20.20070313.ebuild: - Marked stable on amd64 as per bug 190200. - -*iproute2-9999 (25 Aug 2007) - - 25 Aug 2007; Mike Frysinger +iproute2-9999.ebuild: - Live git ebuild! - -*iproute2-2.6.22.20070710 (25 Aug 2007) - - 25 Aug 2007; Mike Frysinger - +iproute2-2.6.22.20070710.ebuild: - Version bump #187152 by Davide Pesavento. - - 15 May 2007; Jeroen Roovers - iproute2-2.6.19.20061214.ebuild: - Stable for HPPA (bug #158271). - - 11 May 2007; Joshua Kinard - iproute2-2.6.19.20061214.ebuild: - Stable on mips. - - 17 Apr 2007; Gustavo Zacarias - iproute2-2.6.19.20061214.ebuild: - Stable on sparc - -*iproute2-2.6.20.20070313 (04 Apr 2007) - - 04 Apr 2007; Mike Frysinger - +iproute2-2.6.20.20070313.ebuild: - Version bump #173229 by Farid. - - 07 Mar 2007; Jeroen Roovers - iproute2-2.6.19.20061214.ebuild: - Reverting to ~hppa until we get recent linux-headers keyworded. - - 03 Mar 2007; Guy Martin - iproute2-2.6.19.20061214.ebuild: - Stable on hppa - - 03 Mar 2007; Steve Dibb - iproute2-2.6.19.20061214.ebuild: - amd64 stable, security bug 166801 - - 27 Feb 2007; Tobias Scherbaum - iproute2-2.6.19.20061214.ebuild: - ppc stable - - 13 Feb 2007; Markus Rothe - iproute2-2.6.19.20061214.ebuild: - Stable on ppc64; bug #158271 - - 12 Feb 2007; Christian Faulhammer - iproute2-2.6.19.20061214.ebuild: - stable x86; bug 158271 - - 06 Feb 2007; Simon Stelling - iproute2-2.6.18.20061002.ebuild: - stable on amd64; bug 159271 - - 22 Dec 2006; Markus Rothe - iproute2-2.6.18.20061002.ebuild: - Stable on ppc64; bug #158271 - - 20 Dec 2006; Gustavo Zacarias - iproute2-2.6.18.20061002.ebuild: - Stable on sparc wrt #158271 - - 18 Dec 2006; Jeroen Roovers - iproute2-2.6.18.20061002.ebuild: - Stable for HPPA (bug #158271). - - 16 Dec 2006; Alexander H. Færøy - iproute2-2.6.18.20061002.ebuild: - Stable on Alpha and MIPS; bug #158271 - - 16 Dec 2006; nixnut iproute2-2.6.18.20061002.ebuild: - Stable on ppc wrt bug 158271 - -*iproute2-2.6.19.20061214 (16 Dec 2006) - - 16 Dec 2006; Mike Frysinger - +files/iproute2-2.6.19.20061214-build.patch, - +iproute2-2.6.19.20061214.ebuild: - Version bump #158253 by ArYiX. - - 03 Dec 2006; Alexander H. Færøy - iproute2-2.6.16.20060323.ebuild: - Stable on MIPS; bug #151249 - - 05 Nov 2006; iproute2-2.6.16.20060323.ebuild: - stable on amd64 - - 26 Oct 2006; Joshua Jackson - iproute2-2.6.16.20060323.ebuild: - Stable x86; bug #151249 - - 21 Oct 2006; Bryan Østergaard - iproute2-2.6.16.20060323.ebuild: - Stable on Alpha, bug 151249. - - 15 Oct 2006; Tobias Scherbaum - iproute2-2.6.16.20060323.ebuild: - hppa stable, bug #151249 - - 15 Oct 2006; Jason Wever - iproute2-2.6.16.20060323.ebuild: - Stable on SPARC wrt bug #151249. - - 14 Oct 2006; Mike Frysinger - +files/iproute2-2.6.18.20061002-genl.patch, - iproute2-2.6.18.20061002.ebuild: - Fixup genl subdir #151307 by Maarten Maathuis. - - 14 Oct 2006; iproute2-2.6.16.20060323.ebuild: - Stable on ppc wrt bug 151249 - - 14 Oct 2006; Markus Rothe - iproute2-2.6.16.20060323.ebuild: - Stable on ppc64; bug #151249 - -*iproute2-2.6.18.20061002 (14 Oct 2006) - - 14 Oct 2006; Mike Frysinger - +iproute2-2.6.18.20061002.ebuild: - Version bump. - - 06 Sep 2006; Roy Marples - iproute2-2.6.16.20060323.ebuild: - Warn about needing NETLINK for kernels prior to 2.4.17 - - 18 Aug 2006; Roy Marples - iproute2-2.6.16.20060323.ebuild: - Use correct iptables location for tc, #144265 thanks to Malte Starostik. - - 15 Jul 2006; Mike Frysinger - +files/iproute2-2.6.16.20060323-routef-safe.patch, - iproute2-2.6.16.20060323.ebuild: - Make routef a little saner #139853 by Lars Strojny. - - 24 Jun 2006; Mike Frysinger - +files/iproute2-2.6.16.20060323-build.patch, - iproute2-2.6.16.20060323.ebuild: - Let portage strip binaries #137574 by Tristan Heaven. - - 19 Apr 2006; Mike Frysinger - +files/iproute2-2.6.16.20060323-ifcfg-catch-missing-argument.patch, - iproute2-2.6.16.20060323.ebuild: - Add check for invalid usage #130243 by F. Steinel. - -*iproute2-2.6.16.20060323 (18 Apr 2006) - - 18 Apr 2006; Mike Frysinger - +iproute2-2.6.16.20060323.ebuild: - Version bump. - - 10 Mar 2006; Torsten Veller - iproute2-2.6.15.20060110.ebuild: - Stable on x86 (bug #125111) - - 10 Mar 2006; Fernando J. Pereda - iproute2-2.6.15.20060110.ebuild: - Stable on alpha wrt bug #125111 - - 09 Mar 2006; Patrick McLean - iproute2-2.6.15.20060110.ebuild: - Stable on amd64 (bug #125111). - - 08 Mar 2006; Markus Rothe - iproute2-2.6.15.20060110.ebuild: - Stable on ppc64; bug #125111 - - 06 Mar 2006; Gustavo Zacarias - iproute2-2.6.15.20060110.ebuild: - Stable on sparc wrt #125111 - - 06 Mar 2006; Luca Barbato - iproute2-2.6.15.20060110.ebuild: - Marked ppc - - 19 Feb 2006; Joshua Kinard - iproute2-2.6.11.20050310-r1.ebuild: - Marked stable on mips. - -*iproute2-2.6.15.20060110 (30 Jan 2006) - - 30 Jan 2006; Mike Frysinger - +iproute2-2.6.15.20060110.ebuild: - Version bump to fix ip option handling #120874 by Jan Minar. - -*iproute2-2.6.13.051007 (30 Jan 2006) - - 30 Jan 2006; Mike Frysinger - +iproute2-2.6.13.051007.ebuild, -iproute2-051007.ebuild: - Rename version to fit with newer version schema. - - 31 Oct 2005; Herbie Hopkins iproute2-051007.ebuild: - Update multilib fixes - -*iproute2-051007 (29 Oct 2005) - - 29 Oct 2005; Jeremy Huddleston - +files/iproute2-051007-esfq-2.6.13.patch, - iproute2-2.6.7.20040608-r1.ebuild, iproute2-2.6.10.20050112-r1.ebuild, - iproute2-2.6.10.20050124.ebuild, iproute2-2.6.11.20050310-r1.ebuild, - iproute2-2.6.11.20050310-r2.ebuild, iproute2-2.6.11.20050330.ebuild, - iproute2-2.6.11.20050330-r1.ebuild, +iproute2-051007.ebuild: - Fixed HOMEPAGE. Version bump. Updated esfq patch. Closes bug #110777. - -*iproute2-2.6.11.20050330-r1 (07 Oct 2005) - - 07 Oct 2005; Mike Frysinger - +files/iproute2-2.6.11.20050330-tc-check-qdisc-features.patch, - +iproute2-2.6.11.20050330-r1.ebuild: - Fix segfault when trying to use qdisc_fast #108307 by jens zettelmeyer. - - 09 Aug 2005; Mike Frysinger - +files/iproute2-2.6.11.20050330-stack.patch, - iproute2-2.6.11.20050330.ebuild: - Fix by solar to prevent stack overflow in build util #99487. - -*iproute2-2.6.11.20050330 (19 Jul 2005) - - 19 Jul 2005; Mike Frysinger - +files/iproute2-2.6.11.20050330-wrr.patch, - +iproute2-2.6.11.20050330.ebuild: - Version bump #99441 by Maciek Ligenza. - - 17 Jul 2005; Tobias Scherbaum - iproute2-2.6.11.20050310-r1.ebuild: - ppc stable - - 07 Jul 2005; Markus Rothe - iproute2-2.6.11.20050310-r1.ebuild: - Stable on ppc64 - - 05 Jul 2005; Rene Nussbaumer - iproute2-2.6.11.20050310-r1.ebuild: - Stable on hppa. - -*iproute2-2.6.11.20050310-r2 (05 Jul 2005) - - 05 Jul 2005; Jeremy Huddleston - +files/2.6.12-rc1-esfq.patch, +iproute2-2.6.11.20050310-r2.ebuild: - Updated esfq patch to latest upstream. - - 28 Jun 2005; Gustavo Zacarias - iproute2-2.6.11.20050310-r1.ebuild: - Stable on sparc - - 28 Jun 2005; Aron Griffis - iproute2-2.6.11.20050310-r1.ebuild: - stable on alpha amd64 ia64 x86 - -*iproute2-2.6.11.20050310-r1 (29 Mar 2005) - - 29 Mar 2005; Mike Frysinger - +files/iproute2-2.6.11.20050310-dsmark-qdisc.patch, - +iproute2-2.6.11.20050310-r1.ebuild: - Add patch from upstream to fix dsmark qdiscs adding #86729. - -*iproute2-2.6.11.20050310 (12 Mar 2005) - - 12 Mar 2005; Mike Frysinger - +iproute2-2.6.11.20050310.ebuild: - Version bump. - - 13 Feb 2005; Robin H. Johnson - iproute2-2.6.10.20050124.ebuild: - Bug #47482, arpd doesn't need to be in /sbin. - - 11 Feb 2005; Mike Frysinger - iproute2-2.6.10.20050112-r1.ebuild, iproute2-2.6.10.20050124.ebuild: - Do not build the arpd binary if USE=-berkdb #81660 by Roy Marples. - -*iproute2-2.6.10.20050124 (09 Feb 2005) - - 09 Feb 2005; Mike Frysinger - +iproute2-2.6.10.20050124.ebuild: - Version bump. - - 06 Feb 2005; Joshua Kinard - iproute2-2.6.10.20050112-r1.ebuild: - Marked stable on mips. - - 31 Jan 2005; Gustavo Zacarias - iproute2-2.6.10.20050112-r1.ebuild: - Stable on sparc - -*iproute2-2.6.10.20050112-r1 (27 Jan 2005) - - 27 Jan 2005; Jeremy Huddleston - +files/2.6.9.20041019-wrr.patch-r1, +files/2.6.9.20041106-esfq.patch, - +iproute2-2.6.10.20050112-r1.ebuild: - Revbump to fix esfq and wrr patches to work with the new version. This - closes bug #79387. - - 21 Jan 2005; Jeremy Huddleston - iproute2-2.6.10.20050112.ebuild: - Multilib fixes. - - 13 Jan 2005; Gustavo Zacarias - iproute2-2.6.9.20041019-r1.ebuild: - Stable on sparc - -*iproute2-2.6.10.20050112 (12 Jan 2005) - - 12 Jan 2005; Mike Frysinger - +iproute2-2.6.10.20050112.ebuild: - Version bump. - - 02 Jan 2005; Ciaran McCreesh : - Change encoding to UTF-8 for GLEP 31 compliance - - 20 Dec 2004; Dylan Carlson - iproute2-2.6.9.20040831.ebuild: - Stable on amd64. - -*iproute2-2.6.9.20041019-r1 (05 Dec 2004) - - 05 Dec 2004; Mike Frysinger - files/2.6.9.20041019-esqf.patch, files/2.6.9.20041019-wrr.patch, - +iproute2-2.6.9.20041019-r1.ebuild, -iproute2-2.6.9.20041019.ebuild: - Version bump to fix esfq/wrr registering with tc #73104 by David Pufer. - - 01 Dec 2004; Gustavo Zacarias - iproute2-2.6.9.20040831.ebuild: - Stable on sparc - -*iproute2-2.6.9.20041019 (30 Nov 2004) - - 30 Nov 2004; Mike Frysinger - +files/2.6.9.20041019-esqf.patch, +files/2.6.9.20041019-wrr.patch, - +iproute2-2.6.9.20041019.ebuild: - Version bump #72961 and include esqf/wrr algorithms #68948. - -*iproute2-2.6.9.20040831 (25 Sep 2004) - - 25 Sep 2004; Mike Frysinger - +files/2.6.9.20040831-make-install.patch, +iproute2-2.6.9.20040831.ebuild: - Version bump #64957 by David Holm. - -*iproute2-2.6.7.20040608-r1 (13 Sep 2004) - - 13 Sep 2004; +iproute2-2.6.7.20040608-r1.ebuild: - added minimal USE flag so we can yeild a build of tc. fixes compile failures - in uclibc envionments where we might not have/want a dep of db for the arpd - which can be provided elsewhere - -*iproute2-2.4.7.20020116-r1 (09 Aug 2004) - - 09 Aug 2004; Mike Frysinger - +iproute2-2.4.7.20020116-r1.ebuild, -iproute2-2.4.7.20020116.ebuild: - Version bump to install correctly more files #59460 by Daniel Black. - - 04 Aug 2004; Daniel Black : - digest fix - files/digest-iproute2-2.4.7.20020116 - - 09 Jul 2004; Bryan Østergaard - iproute2-2.4.7.20020116.ebuild: - Stable on alpha. - - 22 Jun 2004; Mike Frysinger - +files/2.6.7.20040608-misc-deb-fixes.patch, - +files/2.6.7.20040608-misc-gentoo-fixes.patch, - iproute2-2.6.7.20040608.ebuild: - Add some patches to resolve issues with different kernel header versions - #54708. - -*iproute2-2.6.7.20040608 (21 Jun 2004) - - 21 Jun 2004; Mike Frysinger - iproute2-2.4.7.20020116.ebuild, +iproute2-2.6.7.20040608.ebuild: - Version bump for new upstream #54648 by Ed Wildgoose. - -*iproute2-2.4.7.20020116 (20 Apr 2004) - - 20 Apr 2004; Mike Frysinger : - Version bump #40589 by tempone@isg.si. - Also rename / reversion to fit the way upstream has it. - -*iproute2-2.4.7-20010824-r5 (06 Apr 2004) - - 06 Apr 2004; Mike Frysinger : - Version bump to clean up bugs and all that fun stuff. - #33831 by Miguel Sousa Filipe - We use /usr/include instead of /usr/src/linux. - #34294 by Andrea Barisani - Fix local DoS exploit. - #37432 by Radek Podgorny - Update the debian patch that we pull. - #40230 by Sebastian Werner - Use system pkt_sched.h instead of bundled. - #40510 by valli - Use system glibc headers instead of bundled. - #45274 by David Pufer - Add HFSC support. - #46978 by Seemant Kulleen - Add a little hack to handle 2.4 linux-headers. - - 25 Mar 2004; Joshua Kinard iproute-20010824-r4.ebuild: - Marked stable on mips. - - 02 Feb 2004; Mamoru KOMACHI iproute-20010824-r1.ebuild, - iproute-20010824-r2.ebuild, iproute-20010824-r3.ebuild, - iproute-20010824-r4.ebuild: - Changed app-text/tetex to virtual/tetex and tetex IUSE flag to doc - IUSE flag. Closing bug #35849 - - 09 Jan 2004; Aron Griffis iproute-20010824-r4.ebuild: - stable on alpha - - 09 Jan 2004; root iproute-20010824-r4.ebuild: - Marked stable on hppa. - - 19 Nov 2003; Luca Barbato iproute-20010824-r4.ebuild: - Marked stable on ppc - - 18 Nov 2003; iproute-20010824-r4.ebuild: - Used tetex without any dependency. Added DEPEND="" statement - - 25 Sep 2003; Christian Birchinger - iproute-20010824-r4.ebuild: - Added sparc stable keyword - - 23 Sep 2003; Robin H. Johnson - iproute-20010824-r4.ebuild: - bump to stable on x86 - - 28 Aug 2003; Robin H. Johnson - iproute-20010824-r4.ebuild: - fix trivial ebuild warning - - 24 Aug 2003; Martin Holzer iproute-20010824-r4.ebuild: - Now uses -11 debian diff. - -*iproute-20010824-r4 (16 Aug 2003) - - 16 Aug 2003; Robin H. Johnson - iproute-20010824-r4.ebuild: - update to latest debian patch, adds more manpages, also change to depend on - kernel headers and not kernel sources - -*iproute-20010824-r3 (04 May 2003) - - 06 Jul 2003; Guy Martin iproute-20010824-r3.ebuild : - Marked stable on hppa. - - 22 Jun 2003; Joshua Kinard iproute-20010824-r3.ebuild: - Changed ~sparc to sparc, added ~mips - - 27 May 2003; iproute-20010824-r3.ebuild: - Added tetex to IUSE since it's `use`d; use sed-4's -i; spell check - - 04 May 2003; Daniel Ahlberg iproute-20010824-r3.ebuild : - Updated to latest Debian patch which includes htb3. - - 27 Feb 2003; Daniel Ahlberg iproute-20010824-r2.ebuild : - Move binaries to / instead of /usr. Closes #15430. - -*iproute-20010824-r2 (30 Aug 2002) - - 17 Apr 2003; Guy Martin iproute-20010824-r2.ebuild : - Added hppa to KEYWORDS. - - 30 Mar 2003; Christian Birchinger - iproute-20010824-r2.ebuild: - Added sparc stable keyword - - 07 Mar 2003; Aron Griffis iproute-20010824-r2.ebuild: - Mark stable on alpha - - 10 Feb 2003; Seemant Kulleen *.ebuild : - - Changed sed expression delimiters from / to :, closing bug #15006 by Blu3 - . Also, moved the patches from files/ to - the mirrors. - - 06 Dec 2002; Rodney Rees : changed sparc ~sparc keywords - - 22 Oct 2002; Brandon Low iproute-20010824-r2.ebuild : - - This should fix the issues people are having with htb3, just resyncs - with the latest patch from debian, which is known to work, briefly - in the unstable profile (bug 9329). - -*iproute-20010824-r1 (30 Aug 2002) - - 05 Oct 2002; Jack Morgan : - Added sparc/sparc64 to keywords. - - 30 Aug 2002; Sascha Schwabbauer : - Added ppc to keywords. - -*iproute-20010824-r1 (04 Aug 2002) - - 04 Aug 2002; Daniel Robbins New ebuild with htb3 - support, which is now always enabled. We include a "pkt_sched.h" Linux - kernel header in our patch that has been htb3-enabled. This allows us to - always be able to compile-in htb3 support, even if the local kernel sources - don't include such support; this closes bugs #5780, #6018. - - 04 Aug 2002; Daniel Robbins We now install Debian's man - pages which are strangely absent from Debian's binary package. - -*iproute-20010824 (09 Jul 2002) - - 14 Jul 2002; phoen][x iproute-20010824.ebuild : Added - KEYWORDS, SLOT. - - 09 Jul 2002; Daniel Ahlberg ChangeLog : Added ChangeLog. diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.26-ldflags.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.26-ldflags.patch deleted file mode 100644 index 39e07995da..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.26-ldflags.patch +++ /dev/null @@ -1,15 +0,0 @@ -respect env LDFLAGS - -http://bugs.gentoo.org/236861 - ---- tc/Makefile -+++ tc/Makefile -@@ -83,7 +83,7 @@ - rm -f emp_ematch.yacc.output - - q_atm.so: q_atm.c -- $(CC) $(CFLAGS) -shared -fpic -o q_atm.so q_atm.c -latm -+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o q_atm.so q_atm.c -latm - - %.yacc.c: %.y - $(YACC) $(YACCFLAGS) -o $@ $< diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.29.1-flush.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.29.1-flush.patch deleted file mode 100644 index 8eb3228098..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.29.1-flush.patch +++ /dev/null @@ -1,224 +0,0 @@ -https://bugs.gentoo.org/274973 - -If the routing table that I wanna flush has 60 entries or more, "ip route flush -table foo" fails with the following error: - Failed to send flush request: Success - Flush terminated - -Patch by Alin Năstac - ---- iproute2-2.6.29-1/ip/ipaddress.c -+++ iproute2-2.6.29-1/ip/ipaddress.c -@@ -37,6 +37,8 @@ - - #define MAX_ROUNDS 10 - -+static struct rtnl_handle rth_flush = { .fd = -1 }; -+ - static struct - { - int ifindex; -@@ -339,7 +341,7 @@ - - static int flush_update(void) - { -- if (rtnl_send_check(&rth, filter.flushb, filter.flushp) < 0) { -+ if (rtnl_send_check(&rth_flush, filter.flushb, filter.flushp) < 0) { - perror("Failed to send flush request"); - return -1; - } -@@ -697,6 +699,9 @@ - filter.flushp = 0; - filter.flushe = sizeof(flushb); - -+ if (rtnl_open(&rth_flush, 0) < 0) -+ return 1; -+ - while (round < MAX_ROUNDS) { - if (rtnl_wilddump_request(&rth, filter.family, RTM_GETADDR) < 0) { - perror("Cannot send dump request"); -@@ -715,18 +720,20 @@ - printf("*** Flush is complete after %d round%s ***\n", round, round>1?"s":""); - } - fflush(stdout); -+ rtnl_close(&rth_flush); - return 0; - } - round++; - if (flush_update() < 0) -- return 1; -+ break; - - if (show_stats) { - printf("\n*** Round %d, deleting %d addresses ***\n", round, filter.flushed); - fflush(stdout); - } - } -- fprintf(stderr, "*** Flush remains incomplete after %d rounds. ***\n", MAX_ROUNDS); fflush(stderr); -+ fprintf(stderr, "*** Flush remains incomplete after %d rounds. ***\n", round); fflush(stderr); -+ rtnl_close(&rth_flush); - return 1; - } - ---- iproute2-2.6.29-1/ip/ipneigh.c -+++ iproute2-2.6.29-1/ip/ipneigh.c -@@ -32,6 +32,8 @@ - #define NUD_VALID (NUD_PERMANENT|NUD_NOARP|NUD_REACHABLE|NUD_PROBE|NUD_STALE|NUD_DELAY) - #define MAX_ROUNDS 10 - -+static struct rtnl_handle rth_flush = { .fd = -1 }; -+ - static struct - { - int family; -@@ -87,7 +89,7 @@ - - static int flush_update(void) - { -- if (rtnl_send_check(&rth, filter.flushb, filter.flushp) < 0) { -+ if (rtnl_send_check(&rth_flush, filter.flushb, filter.flushp) < 0) { - perror("Failed to send flush request"); - return -1; - } -@@ -391,6 +393,9 @@ - filter.flushe = sizeof(flushb); - filter.state &= ~NUD_FAILED; - -+ if (rtnl_open(&rth_flush, 0) < 0) -+ return 1; -+ - while (round < MAX_ROUNDS) { - if (rtnl_wilddump_request(&rth, filter.family, RTM_GETNEIGH) < 0) { - perror("Cannot send dump request"); -@@ -409,18 +414,20 @@ - printf("*** Flush is complete after %d round%s ***\n", round, round>1?"s":""); - } - fflush(stdout); -+ rtnl_close(&rth_flush); - return 0; - } - round++; - if (flush_update() < 0) -- exit(1); -+ break; -+ - if (show_stats) { - printf("\n*** Round %d, deleting %d entries ***\n", round, filter.flushed); - fflush(stdout); - } - } -- printf("*** Flush not complete bailing out after %d rounds\n", -- MAX_ROUNDS); -+ fprintf(stderr, "*** Flush remains incomplete after %d rounds. ***\n", round); fflush(stderr); -+ rtnl_close(&rth_flush); - return 1; - } - ---- iproute2-2.6.29-1/ip/iproute.c -+++ iproute2-2.6.29-1/ip/iproute.c -@@ -37,6 +37,7 @@ - #define RTAX_RTTVAR RTAX_HOPS - #endif - -+static struct rtnl_handle rth_flush = { .fd = -1 }; - - static const char *mx_names[RTAX_MAX+1] = { - [RTAX_MTU] = "mtu", -@@ -112,7 +113,7 @@ - - static int flush_update(void) - { -- if (rtnl_send_check(&rth, filter.flushb, filter.flushp) < 0) { -+ if (rtnl_send_check(&rth_flush, filter.flushb, filter.flushp) < 0) { - perror("Failed to send flush request"); - return -1; - } -@@ -1210,6 +1211,9 @@ - filter.flushp = 0; - filter.flushe = sizeof(flushb); - -+ if (rtnl_open(&rth_flush, 0) < 0) -+ return 1; -+ - for (;;) { - if (rtnl_wilddump_request(&rth, do_ipv6, RTM_GETROUTE) < 0) { - perror("Cannot send dump request"); -@@ -1228,6 +1232,7 @@ - printf("*** Flush is complete after %d round%s ***\n", round, round>1?"s":""); - } - fflush(stdout); -+ rtnl_close(&rth_flush); - return 0; - } - round++; ---- iproute2-2.6.29-1/ip/xfrm_policy.c -+++ iproute2-2.6.29-1/ip/xfrm_policy.c -@@ -756,11 +756,15 @@ - struct xfrm_buffer xb; - char buf[NLMSG_DELETEALL_BUF_SIZE]; - int i; -+ struct rtnl_handle rth2; - - xb.buf = buf; - xb.size = sizeof(buf); - xb.rth = &rth; - -+ if (rtnl_open(&rth2, 0) < 0) -+ exit(1); -+ - for (i = 0; ; i++) { - xb.offset = 0; - xb.nlmsg_count = 0; -@@ -783,7 +787,7 @@ - break; - } - -- if (rtnl_send_check(&rth, xb.buf, xb.offset) < 0) { -+ if (rtnl_send_check(&rth2, xb.buf, xb.offset) < 0) { - perror("Failed to send delete-all request"); - exit(1); - } -@@ -793,6 +797,8 @@ - xb.offset = 0; - xb.nlmsg_count = 0; - } -+ -+ rtnl_close(&rth2); - } else { - if (rtnl_wilddump_request(&rth, preferred_family, XFRM_MSG_GETPOLICY) < 0) { - perror("Cannot send dump request"); ---- iproute2-2.6.29-1/ip/xfrm_state.c -+++ iproute2-2.6.29-1/ip/xfrm_state.c -@@ -924,11 +924,15 @@ - struct xfrm_buffer xb; - char buf[NLMSG_DELETEALL_BUF_SIZE]; - int i; -+ struct rtnl_handle rth2; - - xb.buf = buf; - xb.size = sizeof(buf); - xb.rth = &rth; - -+ if (rtnl_open(&rth2, 0) < 0) -+ exit(1); -+ - for (i = 0; ; i++) { - xb.offset = 0; - xb.nlmsg_count = 0; -@@ -951,7 +955,7 @@ - break; - } - -- if (rtnl_send_check(&rth, xb.buf, xb.offset) < 0) { -+ if (rtnl_send_check(&rth2, xb.buf, xb.offset) < 0) { - perror("Failed to send delete-all request\n"); - exit(1); - } -@@ -962,6 +966,7 @@ - xb.nlmsg_count = 0; - } - -+ rtnl_close(&rth2); - } else { - if (rtnl_wilddump_request(&rth, preferred_family, XFRM_MSG_GETSA) < 0) { - perror("Cannot send dump request"); diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.29.1-hfsc.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.29.1-hfsc.patch deleted file mode 100644 index 4f39ded905..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.29.1-hfsc.patch +++ /dev/null @@ -1,885 +0,0 @@ -http://bugs.gentoo.org/291907 - -This patch was merged from two patches extracted from this thread: -http://markmail.org/thread/qkd76gpdgefpjlfn - -Patch #1. -This patch adds detailed documentation for HFSC scheduler. It roughly -follows HFSC paper, but tries to not rely too much on math side of things. -Post-paper/Linux specific subjects (timer resolution, ul service curve, etc.) -are also discussed. - - -I've read it many times over, but it's a lengthy chunk of text - so try -to be understanding in case I made some mistakes. - - -tc-hfsc(7): explains algorithm in detail (very long) -tc-hfsc(8): explains command line options briefly -tc(8): adds references to new man pages -Makefile: adds man7 directory to install target -q_hfsc.c: minimal help text changes, consistency with tc-hfsc(8) - - -Patch #2. -This adds generic explanation about size tables. - - -tc-stab(8): Commandline + details -One thing I'm not sure, is whenever any layer2 data is included in case -of shaping directly on ppp interface (see the bottom of the man page). - - -tc_stab.c: small fixes to commandline help - - -tc_core.c: -As kernel part of things relies on cell align which is always set to -1, -I also added it to userspace computation stage. This way if someone -specified e.g. 2048 and 512 for mtu and tsize respectively, one wouldn't -end with tsize supporting mtu 4096 suddenly, New default mtu is also set -to 2048 (disregarding weirdness of setting mtu to such values). - - -Unless I missed something, this is harmless and feels cleaner, but if it's -not allowed, documentation will have to be changed back to 2047 + extra -explanation as well. - ---- iproute2/Makefile -+++ iproute2-new/Makefile -@@ -56,6 +56,8 @@ - install -m 0644 $(shell find etc/iproute2 -maxdepth 1 -type f) $(DESTDIR)$(CONFDIR) - install -m 0755 -d $(DESTDIR)$(MANDIR)/man8 - install -m 0644 $(shell find man/man8 -maxdepth 1 -type f) $(DESTDIR)$(MANDIR)/man8 -+ install -m 0755 -d $(DESTDIR)$(MANDIR)/man7 -+ install -m 0644 $(shell find man/man7 -maxdepth 1 -type f) $(DESTDIR)$(MANDIR)/man7 - ln -sf tc-bfifo.8 $(DESTDIR)$(MANDIR)/man8/tc-pfifo.8 - ln -sf lnstat.8 $(DESTDIR)$(MANDIR)/man8/rtstat.8 - ln -sf lnstat.8 $(DESTDIR)$(MANDIR)/man8/ctstat.8 ---- iproute2/man/man7/tc-hfsc.7 -+++ iproute2-new/man/man7/tc-hfsc.7 -@@ -0,0 +1,525 @@ -+.TH HFSC 7 "25 February 2009" iproute2 Linux -+.ce 1 -+\fBHIERARCHICAL FAIR SERVICE CURVE\fR -+. -+.SH "HISTORY & INTRODUCTION" -+. -+HFSC \- \fBHierarchical Fair Service Curve\fR was first presented at -+SIGCOMM'97. Developed as a part of ALTQ (ALTernative Queuing) on NetBSD, found -+its way quickly to other BSD systems, and then a few years ago became part of -+the linux kernel. Still, it's not the most popular scheduling algorithm \- -+especially if compared to HTB \- and it's not well documented from enduser's -+perspective. This introduction aims to explain how HFSC works without -+going to deep into math side of things (although some if it will be -+inevitable). -+ -+In short HFSC aims to: -+. -+.RS 4 -+.IP \fB1)\fR 4 -+guarantee precise bandwidth and delay allocation for all leaf classes (realtime -+criterion) -+.IP \fB2)\fR -+allocate excess bandwidth fairly as specified by class hierarchy (linkshare & -+upperlimit criterion) -+.IP \fB3)\fR -+minimize any discrepancy between the service curve and the actual amount of -+service provided during linksharing -+.RE -+.PP -+. -+The main "selling" point of HFSC is feature \fB(1)\fR, which is achieved by -+using nonlinear service curves (more about what it actually is later). This is -+particularly useful in VoIP or games, where not only guarantee of consistent -+bandwidth is important, but initial delay of a data stream as well. Note that -+it matters only for leaf classes (where the actual queues are) \- thus class -+hierarchy is ignored in realtime case. -+ -+Feature \fB(2)\fR is well, obvious \- any algorithm featuring class hierarchy -+(such as HTB or CBQ) strives to achieve that. HFSC does that well, although -+you might end with unusual situations, if you define service curves carelessly -+\- see section CORNER CASES for examples. -+ -+Feature \fB(3)\fR is mentioned due to the nature of the problem. There may be -+situations where it's either not possible to guarantee service of all curves at -+the same time, and/or it's impossible to do so fairly. Both will be explained -+later. Note that this is mainly related to interior (aka aggregate) classes, as -+the leafs are already handled by \fB(1)\fR. Still \- it's perfectly possible to -+create a leaf class w/o realtime service, and in such case \- the caveats will -+naturally extend to leaf classes as well. -+ -+.SH ABBREVIATIONS -+For the remaining part of the document, we'll use following shortcuts: -+.nf -+.RS 4 -+ -+RT \- realtime -+LS \- linkshare -+UL \- upperlimit -+SC \- service curve -+.fi -+. -+.SH "BASICS OF HFSC" -+. -+To understand how HFSC works, we must first introduce a service curve. -+Overall, it's a nondecreasing function of some time unit, returning amount of -+service (allowed or allocated amount of bandwidth) by some specific point in -+time. The purpose of it should be subconsciously obvious \- if a class was -+allowed to transfer not less than the amount specified by its service curve \- -+then service curve is not violated. -+ -+Still \- we need more elaborate criterion than just the above (although in -+most generic case it can be reduced to it). The criterion has to take two -+things into account: -+. -+.RS 4 -+.IP \(bu 4 -+idling periods -+.IP \(bu -+ability to "look back", so if during current active period service curve is violated, maybe it -+isn't if we count excess bandwidth received during earlier active period(s) -+.RE -+.PP -+Let's define the criterion as follows: -+.RS 4 -+.nf -+.IP "\fB(1)\fR" 4 -+For each t1, there must exist t0 in set B, so S(t1\-t0)\~<=\~w(t0,t1) -+.fi -+.RE -+. -+.PP -+Here 'w' denotes the amount of service received during some time period between t0 -+and t1. B is a set of all times, where a session becomes active after idling -+period (further denoted as 'becoming backlogged'). For a clearer picture, -+imagine two situations: -+. -+.RS 4 -+.IP \fBa)\fR 4 -+our session was active during two periods, with a small time gap between them -+.IP \fBb)\fR -+as in (a), but with a larger gap -+.RE -+. -+.PP -+Consider \fB(a)\fR \- if the service received during both periods meets -+\fB(1)\fR, then all is good. But what if it doesn't do so during the 2nd -+period ? If the amount of service received during the 1st period is bigger -+than the service curve, then it might compensate for smaller service during -+the 2nd period \fIand\fR the gap \- if the gap is small enough. -+ -+If the gap is larger \fB(b)\fR \- then it's less likely to happen (unless the -+excess bandwidth allocated during the 1st part was really large). Still, the -+larger the gap \- the less interesting is what happened in the past (e.g. 10 -+minutes ago) \- what matters is the current traffic that just started. -+ -+From HFSC's perspective, more interesting is answering the following question: -+when should we start transferring packets, so a service curve of a class is not -+violated. Or rephrasing it: How much X() amount of service should a session -+receive by time t, so the service curve is not violated. Function X() defined -+as below is the basic building block of HFSC, used in: eligible, deadline, -+virtual\-time and fit\-time curves. Of course, X() is based on equation -+\fB(1)\fR and is defined recursively: -+ -+.RS 4 -+.IP \(bu 4 -+At the 1st backlogged period beginning function X is initialized to generic -+service curve assigned to a class -+.IP \(bu -+At any subsequent backlogged period, X() is: -+.nf -+\fBmin(X() from previous period ; w(t0)+S(t\-t0) for t>=t0),\fR -+.fi -+\&... where t0 denotes the beginning of the current backlogged period. -+.RE -+. -+.PP -+HFSC uses either linear, or two\-piece linear service curves. In case of -+linear or two\-piece linear convex functions (first slope < second slope), -+min() in X's definition reduces to the 2nd argument. But in case of two\-piece -+concave functions, the 1st argument might quickly become lesser for some -+t>=t0. Note, that for some backlogged period, X() is defined only from that -+period's beginning. We also define X^(\-1)(w) as smallest t>=t0, for which -+X(t)\~=\~w. We have to define it this way, as X() is usually not an injection. -+ -+The above generic X() can be one of the following: -+. -+.RS 4 -+.IP "E()" 4 -+In realtime criterion, selects packets eligible for sending. If none are -+eligible, HFSC will use linkshare criterion. Eligible time \&'et' is calculated -+with reference to packets' heads ( et\~=\~E^(\-1)(w) ). It's based on RT -+service curve, \fIbut in case of a convex curve, uses its 2nd slope only.\fR -+.IP "D()" -+In realtime criterion, selects the most suitable packet from the ones chosen -+by E(). Deadline time \&'dt' corresponds to packets' tails -+(dt\~=\~D^(\-1)(w+l), where \&'l' is packet's length). Based on RT service -+curve. -+.IP "V()" -+In linkshare criterion, arbitrates which packet to send next. Note that V() is -+function of a virtual time \- see \fBLINKSHARE CRITERION\fR section for -+details. Virtual time \&'vt' corresponds to packets' heads -+(vt\~=\~V^(\-1)(w)). Based on LS service curve. -+.IP "F()" -+An extension to linkshare criterion, used to limit at which speed linkshare -+criterion is allowed to dequeue. Fit\-time 'ft' corresponds to packets' heads -+as well (ft\~=\~F^(\-1)(w)). Based on UL service curve. -+.RE -+ -+Be sure to make clean distinction between session's RT, LS and UL service -+curves and the above "utility" functions. -+. -+.SH "REALTIME CRITERION" -+. -+RT criterion \fIignores class hierarchy\fR and guarantees precise bandwidth and -+delay allocation. We say that packet is eligible for sending, when current real -+time is bigger than eligible time. From all packets eligible, the one most -+suited for sending, is the one with the smallest deadline time. Sounds simply, -+but consider following example: -+ -+Interface 10mbit, two classes, both with two\-piece linear service curves: -+.RS 4 -+.IP \(bu 4 -+1st class \- 2mbit for 100ms, then 7mbit (convex \- 1st slope < 2nd slope) -+.IP \(bu -+2nd class \- 7mbit for 100ms, then 2mbit (concave \- 1st slope > 2nd slope) -+.RE -+.PP -+Assume for a moment, that we only use D() for both finding eligible packets, -+and choosing the most fitting one, thus eligible time would be computed as -+D^(\-1)(w) and deadline time would be computed as D^(\-1)(w+l). If the 2nd -+class starts sending packets 1 second after the 1st class, it's of course -+impossible to guarantee 14mbit, as the interface capability is only 10mbit. -+The only workaround in this scenario is to allow the 1st class to send the -+packets earlier that would normally be allowed. That's where separate E() comes -+to help. Putting all the math aside (see HFSC paper for details), E() for RT -+concave service curve is just like D(), but for the RT convex service curve \- -+it's constructed using \fIonly\fR RT service curve's 2nd slope (in our example -+\- 7mbit). -+ -+The effect of such E() \- packets will be sent earlier, and at the same time -+D() \fIwill\fR be updated \- so current deadline time calculated from it will -+be bigger. Thus, when the 2nd class starts sending packets later, both the 1st -+and the 2nd class will be eligible, but the 2nd session's deadline time will be -+smaller and its packets will be sent first. When the 1st class becomes idle at -+some later point, the 2nd class will be able to "buffer" up again for later -+active period of the 1st class. -+ -+A short remark \- in a situation, where the total amount of bandwidth -+available on the interface is bigger than the allocated total realtime parts -+(imagine interface 10 mbit, but 1mbit/2mbit and 2mbit/1mbit classes), the sole -+speed of the interface could suffice to guarantee the times. -+ -+Important part of RT criterion is that apart from updating its D() and E(), -+also V() used by LS criterion is updated. Generally the RT criterion is -+secondary to LS one, and used \fIonly\fR if there's a risk of violating precise -+realtime requirements. Still, the "participation" in bandwidth distributed by -+LS criterion is there, so V() has to be updated along the way. LS criterion can -+than properly compensate for non\-ideal fair sharing situation, caused by RT -+scheduling. If you use UL service curve its F() will be updated as well (UL -+service curve is an extension to LS one \- see \fBUPPERLIMIT CRITERION\fR -+section). -+ -+Anyway \- careless specification of LS and RT service curves can lead to -+potentially undesired situations (see CORNER CASES for examples). This wasn't -+the case in HFSC paper where LS and RT service curves couldn't be specified -+separately. -+ -+.SH "LINKSHARING CRITERION" -+. -+LS criterion's task is to distribute bandwidth according to specified class -+hierarchy. Contrary to RT criterion, there're no comparisons between current -+real time and virtual time \- the decision is based solely on direct comparison -+of virtual times of all active subclasses \- the one with the smallest vt wins -+and gets scheduled. One immediate conclusion from this fact is that absolute -+values don't matter \- only ratios between them (so for example, two children -+classes with simple linear 1mbit service curves will get the same treatment -+from LS criterion's perspective, as if they were 5mbit). The other conclusion -+is, that in perfectly fluid system with linear curves, all virtual times across -+whole class hierarchy would be equal. -+ -+Why is VC defined in term of virtual time (and what is it) ? -+ -+Imagine an example: class A with two children \- A1 and A2, both with let's say -+10mbit SCs. If A2 is idle, A1 receives all the bandwidth of A (and update its -+V() in the process). When A2 becomes active, A1's virtual time is already -+\fIfar\fR bigger than A2's one. Considering the type of decision made by LS -+criterion, A1 would become idle for a lot of time. We can workaround this -+situation by adjusting virtual time of the class becoming active \- we do that -+by getting such time "up to date". HFSC uses a mean of the smallest and the -+biggest virtual time of currently active children fit for sending. As it's not -+real time anymore (excluding trivial case of situation where all classes become -+active at the same time, and never become idle), it's called virtual time. -+ -+Such approach has its price though. The problem is analogous to what was -+presented in previous section and is caused by non\-linearity of service -+curves: -+.IP 1) 4 -+either it's impossible to guarantee both service curves and satisfy fairness -+during certain time periods: -+ -+.RS 4 -+Recall the example from RT section, slightly modified (with 3mbit slopes -+instead of 2mbit ones): -+ -+.IP \(bu 4 -+1st class \- 3mbit for 100ms, then 7mbit (convex \- 1st slope < 2nd slope) -+.IP \(bu -+2nd class \- 7mbit for 100ms, then 3mbit (concave \- 1st slope > 2nd slope) -+ -+.PP -+They sum up nicely to 10mbit \- interface's capacity. But if we wanted to only -+use LS for guarantees and fairness \- it simply won't work. In LS context, -+only V() is used for making decision which class to schedule. If the 2nd class -+becomes active when the 1st one is in its second slope, the fairness will be -+preserved \- ratio will be 1:1 (7mbit:7mbit), but LS itself is of course -+unable to guarantee the absolute values themselves \- as it would have to go -+beyond of what the interface is capable of. -+.RE -+ -+.IP 2) 4 -+and/or it's impossible to guarantee service curves of all classes at all -+ -+.RS 4 -+Even if we didn't use virtual time and allowed a session to be "punished", -+there's a possibility that service curves of all classes couldn't be -+guaranteed for a brief period. Consider following, a bit more complicated -+example: -+ -+Root interface, classes A and B with concave and convex curve (summing up to -+root), A1 & A2 (children of A), \fIboth\fR with concave curves summing up to A, -+B1 & B2 (children of B), \fIboth\fR with convex curves summing up to B. -+ -+Assume that A2, B1 and B2 are constantly backlogged, and at some later point -+A1 becomes backlogged. We can easily choose slopes, so that even if we -+"punish" A2 for earlier excess bandwidth received, A1 will have no chance of -+getting bandwidth corresponding to its first slope. Following from the above -+example: -+ -+.nf -+A \- 7mbit, then 3mbit -+A1 \- 5mbit, then 2mbit -+A2 \- 2mbit, then 1mbit -+ -+B \- 3mbit, then 7mbit -+B1 \- 2mbit, then 5mbit -+B2 \- 1mbit, then 2mbit -+.fi -+ -+At the point when A1 starts sending, it should get 5mbit to not violate its -+service curve. A2 gets punished and doesn't send at all, B1 and B2 both keep -+sending at their 5mbit and 2mbit. But as you can see, we already are beyond -+interface's capacity \- at 12mbit. A1 could get 3mbit at most. If we used -+virtual times and kept fairness property, A1 and A2 would send at 3mbit -+together with 5:2 ratio (so respectively at ~2.14mbit and ~0.86mbit). -+.RE -+. -+.SH "UPPERLIMIT CRITERION" -+. -+UL criterion is an extensions to LS one, that permits sending packets only -+if current real time is bigger than fit\-time ('ft'). So the modified LS -+criterion becomes: choose the smallest virtual time from all active children, -+such that fit\-time < current real time also holds. Fit\-time is calculated -+from F(), which is based on UL service curve. As you can see, it's role is -+kinda similar to E() used in RT criterion. Also, for obvious reasons \- you -+can't specify UL service curve without LS one. -+ -+Main purpose of UL service curve is to limit HFSC to bandwidth available on the -+upstream router (think adsl home modem/router, and linux server as -+nat/firewall/etc. with 100mbit+ connection to mentioned modem/router). -+Typically, it's used to create a single class directly under root, setting -+linear UL service curve to available bandwidth \- and then creating your class -+structure from that class downwards. Of course, you're free to add UL service -+(linear or not) curve to any class with LS criterion. -+ -+Important part about UL service curve is, that whenever at some point in time -+a class doesn't qualify for linksharing due to its fit\-time, the next time it -+does qualify, it will update its virtual time to the smallest virtual time of -+all active children fit for linksharing. This way, one of the main things LS -+criterion tries to achieve \- equality of all virtual times across whole -+hierarchy \- is preserved (in perfectly fluid system with only linear curves, -+all virtual times would be equal). -+ -+Without that, 'vt' would lag behind other virtual times, and could cause -+problems. Consider interface with capacity 10mbit, and following leaf classes -+(just in case you're skipping this text quickly \- this example shows behavior -+that \f(BIdoesn't happen\fR): -+ -+.nf -+A \- ls 5.0mbit -+B \- ls 2.5mbit -+C \- ls 2.5mbit, ul 2.5mbit -+.fi -+ -+If B was idle, while A and C were constantly backlogged, they would normally -+(as far as LS criterion is concerned) divide bandwidth in 2:1 ratio. But due -+to UL service curve in place, C would get at most 2.5mbit, and A would get the -+remaining 7.5mbit. The longer the backlogged period, the more virtual times of -+A and C would drift apart. If B became backlogged at some later point in time, -+its virtual time would be set to (A's\~vt\~+\~C's\~vt)/2, thus blocking A from -+sending any traffic, until B's virtual time catches up with A. -+. -+.SH "SEPARATE LS / RT SCs" -+. -+Another difference from original HFSC paper, is that RT and LS SCs can be -+specified separately. Moreover \- leaf classes are allowed to have only either -+RT SC or LS SC. For interior classes, only LS SCs make sense \- Any RT SC will -+be ignored. -+. -+.SH "CORNER CASES" -+. -+Separate service curves for LS and RT criteria can lead to certain traps, -+that come from "fighting" between ideal linksharing and enforced realtime -+guarantees. Those situations didn't exist in original HFSC paper, where -+specifying separate LS / RT service curves was not discussed. -+ -+Consider interface with capacity 10mbit, with following leaf classes: -+ -+.nf -+A \- ls 5.0mbit, rt 8mbit -+B \- ls 2.5mbit -+C \- ls 2.5mbit -+.fi -+ -+Imagine A and C are constantly backlogged. As B is idle, A and C would divide -+bandwidth in 2:1 ratio, considering LS service curve (so in theory \- 6.66 and -+3.33). Alas RT criterion takes priority, so A will get 8mbit and LS will be -+able to compensate class C for only 2 mbit \- this will cause discrepancy -+between virtual times of A and C. -+ -+Assume this situation lasts for a lot of time with no idle periods, and -+suddenly B becomes active. B's virtual time will be updated to -+(A's\~vt\~+\~C's\~vt)/2, effectively landing in the middle between A's and C's -+virtual time. The effect \- B, having no RT guarantees, will be punished and -+will not be allowed to transfer until C's virtual time catches up. -+ -+If the interface had higher capacity \- for example 100mbit, this example -+would behave perfectly fine though. -+ -+Let's look a bit closer at the above example \- it "cleverly" invalidates one -+of the basic things LS criterion tries to achieve \- equality of all virtual -+times across class hierarchy. Leaf classes without RT service curves are -+literally left to their own fate (governed by messed up virtual times). -+ -+Also - it doesn't make much sense. Class A will always be guaranteed up to -+8mbit, and this is more than any absolute bandwidth that could happen from its -+LS criterion (excluding trivial case of only A being active). If the bandwidth -+taken by A is smaller than absolute value from LS criterion, the unused part -+will be automatically assigned to other active classes (as A has idling periods -+in such case). The only "advantage" is, that even in case of low bandwidth on -+average, bursts would be handled at the speed defined by RT criterion. Still, -+if extra speed is needed (e.g. due to latency), non linear service curves -+should be used in such case. -+ -+In the other words - LS criterion is meaningless in the above example. -+ -+You can quickly "workaround" it by making sure each leaf class has RT service -+curve assigned (thus guaranteeing all of them will get some bandwidth), but it -+doesn't make it any more valid. -+. -+.SH "LINUX AND TIMER RESOLUTION" -+. -+In certain situations, the scheduler can throttle itself and setup so -+called watchdog to wakeup dequeue function at some time later. In case of HFSC -+it happens when for example no packet is eligible for scheduling, and UL -+service curve is used to limit the speed at which LS criterion is allowed to -+dequeue packets. It's called throttling, and accuracy of it is dependent on -+how the kernel is compiled. -+ -+There're 3 important options in modern kernels, as far as timers' resolution -+goes: \&'tickless system', \&'high resolution timer support' and \&'timer -+frequency'. -+ -+If you have \&'tickless system' enabled, then the timer interrupt will trigger -+as slowly as possible, but each time a scheduler throttles itself (or any -+other part of the kernel needs better accuracy), the rate will be increased as -+needed / possible. The ceiling is either \&'timer frequency' if \&'high -+resolution timer support' is not available or not compiled in. Otherwise it's -+hardware dependent and can go \fIfar\fR beyond the highest \&'timer frequency' -+setting available. -+ -+If \&'tickless system' is not enabled, the timer will trigger at a fixed rate -+specified by \&'timer frequency' \- regardless if high resolution timers are -+or aren't available. -+ -+This is important to keep those settings in mind, as in scenario like: no -+tickless, no HR timers, frequency set to 100hz \- throttling accuracy would be -+at 10ms. It doesn't automatically mean you would be limited to ~0.8mbit/s -+(assuming packets at ~1KB) \- as long as your queues are prepared to cover for -+timer inaccuracy. Of course, in case of e.g. locally generated udp traffic \- -+appropriate socket size is needed as well. Short example to make it more -+understandable (assume hardcore anti\-schedule settings \- HZ=100, no HR -+timers, no tickless): -+ -+.nf -+tc qdisc add dev eth0 root handle 1:0 hfsc default 1 -+tc class add dev eth0 parent 1:0 classid 1:1 hfsc rt m2 10mbit -+.fi -+ -+Assuming packet of ~1KB size and HZ=100, that averages to ~0.8mbit \- anything -+beyond it (e.g. the above example with specified rate over 10x bigger) will -+require appropriate queuing and cause bursts every ~10 ms. As you can -+imagine, any HFSC's RT guarantees will be seriously invalidated by that. -+Aforementioned example is mainly important if you deal with old hardware \- as -+it's particularly popular for home server chores. Even then, you can easily -+set HZ=1000 and have very accurate scheduling for typical adsl speeds. -+ -+Anything modern (apic or even hpet msi based timers + \&'tickless system') -+will provide enough accuracy for superb 1gbit scheduling. For example, on one -+of basically cheap dual core AMD boards I have with following settings: -+ -+.nf -+tc qdisc add dev eth0 parent root handle 1:0 hfsc default 1 -+tc class add dev eth0 paretn 1:0 classid 1:1 hfsc rt m2 300mbit -+.fi -+ -+And simple: -+ -+.nf -+nc \-u dst.host.com 54321 /dev/null -+.fi -+ -+\&...will yield following effects over period of ~10 seconds (taken from -+/proc/interrupts): -+ -+.nf -+319: 42124229 0 HPET_MSI\-edge hpet2 (before) -+319: 42436214 0 HPET_MSI\-edge hpet2 (after 10s.) -+.fi -+ -+That's roughly 31000/s. Now compare it with HZ=1000 setting. The obvious -+drawback of it is that cpu load can be rather extensive with servicing that -+many timer interrupts. Example with 300mbit RT service curve on 1gbit link is -+particularly ugly, as it requires a lot of throttling with minuscule delays. -+ -+Also note that it's just an example showing capability of current hardware. -+The above example (essentially 300mbit TBF emulator) is pointless on internal -+interface to begin with \- you will pretty much always want regular LS service -+curve there, and in such scenario HFSC simply doesn't throttle at all. -+ -+300mbit RT service curve (selected columns from mpstat \-P ALL 1): -+ -+.nf -+10:56:43 PM CPU %sys %irq %soft %idle -+10:56:44 PM all 20.10 6.53 34.67 37.19 -+10:56:44 PM 0 35.00 0.00 63.00 0.00 -+10:56:44 PM 1 4.95 12.87 6.93 73.27 -+.fi -+ -+So, in rare case you need those speeds with only RT service curve, or with UL -+service curve \- remember about drawbacks. -+. -+.SH "LAYER2 ADAPTATION" -+. -+Please refer to \fBtc\-stab\fR(8) -+. -+.SH "SEE ALSO" -+. -+\fBtc\fR(8), \fBtc\-hfsc\fR(8), \fBtc\-stab\fR(8) -+ -+Please direct bugreports and patches to: -+. -+.SH "AUTHOR" -+. -+Manpage created by Michal Soltys (sol...@ziu.info) ---- iproute2/man/man8/tc.8 -+++ iproute2-new/man/man8/tc.8 -@@ -368,12 +368,15 @@ - .SH SEE ALSO - .BR tc-cbq (8), - .BR tc-htb (8), -+.BR tc-hfsc (8), -+.BR tc-hfsc (7), - .BR tc-sfq (8), - .BR tc-red (8), - .BR tc-tbf (8), - .BR tc-pfifo (8), - .BR tc-bfifo (8), - .BR tc-pfifo_fast (8), -+.BR tc-stab (8), - .br - .RB "User documentation at " http://lartc.org/ ", but please direct bugreports and patches to: " - ---- iproute2/man/man8/tc-hfsc.8 -+++ iproute2-new/man/man8/tc-hfsc.8 -@@ -0,0 +1,61 @@ -+.TH HFSC 8 "25 February 2009" iproute2 Linux -+. -+.SH NAME -+HFSC \- Hierarchical Fair Service Curve's control under linux -+. -+.SH SYNOPSIS -+.nf -+tc qdisc add ... hfsc [ \fBdefault\fR CLASSID ] -+ -+tc class add ... hfsc [ [ \fBrt\fR SC ] [ \fBls\fR SC ] | [ \fBsc\fR SC ] ] [ \fBul\fR SC ] -+ -+\fBrt\fR : realtime service curve -+\fBls\fR : linkshare service curve -+\fBsc\fR : rt+ls service curve -+\fBul\fR : upperlimit service curve -+ -+\(bu at least one of \fBrt\fR, \fBls\fR or \fBsc\fR must be specified -+\(bu \fBul\fR can only be specified with \fBls\fR or \fBsc\fR -+. -+.IP "SC := [ [ \fBm1\fR BPS ] \fBd\fR SEC ] \fBm2\fR BPS" -+\fBm1\fR : slope of the first segment -+\fBd\fR : x\-coordinate of intersection -+\fBm2\fR : slope of the second segment -+.PP -+.IP "SC := [ [ \fBumax\fR BYTE ] \fBdmax\fR SEC ] \fBrate\fR BPS" -+\fBumax\fR : maximum unit of work -+\fBdmax\fR : maximum delay -+\fBrate\fR : rate -+.PP -+.fi -+For description of BYTE, BPS and SEC \- please see \fBUNITS\fR -+section of \fBtc\fR(8). -+. -+.SH DESCRIPTION (qdisc) -+HFSC qdisc has only one optional parameter \- \fBdefault\fR. CLASSID specifies -+the minor part of the default classid, where packets not classified by other -+means (e.g. u32 filter, CLASSIFY target of iptables) will be enqueued. If -+\fBdefault\fR is not specified, unclassified packets will be dropped. -+. -+.SH DESCRIPTION (class) -+HFSC class is used to create a class hierarchy for HFSC scheduler. For -+explanation of the algorithm, and the meaning behind \fBrt\fR, \fBls\fR, -+\fBsc\fR and \fBul\fR service curves \- please refer to \fBtc\-hfsc\fR(7). -+ -+As you can see in \fBSYNOPSIS\fR, service curve (SC) can be specified in two -+ways. Either as maximum delay for certain amount of work, or as a bandwidth -+assigned for certain amount of time. Obviously, \fBm1\fR is simply -+\fBumax\fR/\fBdmax\fR. -+ -+Both \fBm2\fR and \fBrate\fR are mandatory. If you omit other -+parameters, you will specify linear service curve. -+. -+.SH "SEE ALSO" -+. -+\fBtc\fR(8), \fBtc\-hfsc\fR(7), \fBtc\-stab\fR(8) -+ -+Please direct bugreports and patches to: -+. -+.SH "AUTHOR" -+. -+Manpage created by Michal Soltys (sol...@ziu.info) ---- iproute2/man/man8/tc-stab.8 -+++ iproute2-new/man/man8/tc-stab.8 -@@ -0,0 +1,156 @@ -+.TH STAB 8 "25 February 2009" iproute2 Linux -+. -+.SH NAME -+tc\-stab \- Generic size table manipulations -+. -+.SH SYNOPSIS -+.nf -+tc qdisc add ... stab \\ -+.RS 4 -+[ \fBmtu\fR BYTES ] [ \fBtsize\fR SLOTS ] \\ -+[ \fBmpu\fR BYTES ] [ \fBoverhead\fR BYTES ] [ \fBlinklayer\fR TYPE ] ... -+.RE -+ -+TYPE := adsl | atm | ethernet -+.fi -+ -+For the description of BYTES \- please refer to the \fBUNITS\fR -+section of \fBtc\fR(8). -+ -+.IP \fBmtu\fR 4 -+.br -+maximum packet size we create size table for, assumed 2048 if not specified explicitly -+.IP \fBtsize\fR -+.br -+required table size, assumed 512 if not specified explicitly -+.IP \fBmpu\fR -+.br -+minimum packet size used in computations -+.IP \fBoverhead\fR -+.br -+per\-packet size overhead (can be negative) used in computations -+.IP \fBlinklayer\fR -+.br -+required linklayer adaptation. -+.PP -+. -+.SH DESCRIPTION -+. -+Size tables allow manipulation of packet size, as seen by whole scheduler -+framework (of course, the actual packet size remains the same). Adjusted packet -+size is calculated only once \- when a qdisc enqueues the packet. Initial root -+enqueue initializes it to the real packet's size. -+ -+Each qdisc can use different size table, but the adjusted size is stored in -+area shared by whole qdisc hierarchy attached to the interface (technically, -+it's stored in skb). The effect is, that if you have such setup, the last qdisc -+with a stab in a chain "wins". For example, consider HFSC with simple pfifo -+attached to one of its leaf classes. If that pfifo qdisc has stab defined, it -+will override lengths calculated during HFSC's enqueue, and in turn, whenever -+HFSC tries to dequeue a packet, it will use potentially invalid size in its -+calculations. Normal setups will usually include stab defined only on root -+qdisc, but further overriding gives extra flexibility for less usual setups. -+ -+Initial size table is calculated by \fBtc\fR tool using \fBmtu\fR and -+\fBtsize\fR parameters. The algorithm sets each slot's size to the smallest -+power of 2 value, so the whole \fBmtu\fR is covered by the size table. Neither -+\fBtsize\fR, nor \fBmtu\fR have to be power of 2 value, so the size -+table will usually support more than is required by \fBmtu\fR. -+ -+For example, with \fBmtu\fR\~=\~1500 and \fBtsize\fR\~=\~128, a table with 128 -+slots will be created, where slot 0 will correspond to sizes 0\-16, slot 1 to -+17\~\-\~32, \&..., slot 127 to 2033\~\-\~2048. Note, that the sizes -+are shifted 1 byte (normally you would expect 0\~\-\~15, 16\~\-\~31, \&..., -+2032\~\-\~2047). Sizes assigned to each slot depend on \fBlinklayer\fR parameter. -+ -+Stab calculation is also safe for an unusual case, when a size assigned to a -+slot would be larger than 2^16\-1 (you will lose the accuracy though). -+ -+During kernel part of packet size adjustment, \fBoverhead\fR will be added to -+original size, and after subtracting 1 (to land in the proper slot \- see above -+about shifting by 1 byte) slot will be calculated. If the size would cause -+overflow, more than 1 slot will be used to get the final size. It of course will -+affect accuracy, but it's only a guard against unusual situations. -+ -+Currently there're two methods of creating values stored in the size table \- -+ethernet and atm (adsl): -+ -+.IP ethernet 4 -+.br -+This is basically 1\-1 mapping, so following our example from above -+(disregarding \fBmpu\fR for a moment) slot 0 would have 8, slot 1 would have 16 -+and so on, up to slot 127 with 2048. Note, that \fBmpu\fR\~>\~0 must be -+specified, and slots that would get less than specified by \fBmpu\fR, will get -+\fBmpu\fR instead. If you don't specify \fBmpu\fR, the size table will not be -+created at all, although any \fBoverhead\fR value will be respected during -+calculations. -+.IP "atm, adsl" -+.br -+ATM linklayer consists of 53 byte cells, where each of them provides 48 bytes -+for payload. Also all the cells must be fully utilized, thus the last one is -+padded if/as necessary. -+ -+When size table is calculated, adjusted size that fits properly into lowest -+amount of cells is assigned to a slot. For example, a 100 byte long packet -+requires three 48\-byte payloads, so the final size would require 3 ATM cells -+\- 159 bytes. -+ -+For ATM size tables, 16\~bytes sized slots are perfectly enough. The default -+values of \fBmtu\fR and \fBtsize\fR create 4\~bytes sized slots. -+.PP -+. -+.SH "TYPICAL OVERHEADS" -+The following values are typical for different adsl scenarios (based on -+\fB[1]\fR and \fB[2]\fR): -+ -+.nf -+LLC based: -+.RS 4 -+PPPoA \- 14 (PPP \- 2, ATM \- 12) -+PPPoE \- 40+ (PPPoE \- 8, ATM \- 18, ethernet 14, possibly FCS \- 4+padding) -+Bridged \- 32 (ATM \- 18, ethernet 14, possibly FCS \- 4+padding) -+IPoA \- 16 (ATM \- 16) -+.RE -+ -+VC Mux based: -+.RS 4 -+PPPoA \- 10 (PPP \- 2, ATM \- 8) -+PPPoE \- 32+ (PPPoE \- 8, ATM \- 10, ethernet 14, possibly FCS \- 4+padding) -+Bridged \- 24+ (ATM \- 10, ethernet 14, possibly FCS \- 4+padding) -+IPoA \- 8 (ATM \- 8) -+.RE -+.fi -+\p There're few important things regarding the above overheads: -+. -+.IP \(bu 4 -+IPoA in LLC case requires SNAP, instead of LLC\-NLPID (see rfc2684) \- this is -+the reason, why it actually takes more space than PPPoA. -+.IP \(bu -+In rare cases, FCS might be preserved on protocols that include ethernet frame -+(Bridged and PPPoE). In such situation, any ethernet specific padding -+guaranteeing 64 bytes long frame size has to be included as well (see rfc2684). -+In the other words, it also guarantees that any packet you send will take -+minimum 2 atm cells. You should set \fBmpu\fR accordingly for that. -+.IP \(bu -+When size table is consulted, and you're shaping traffic for the sake of -+another modem/router, ethernet header (without padding) will already be added -+to initial packet's length. You should compensate for that by subtracting 14 -+from the above overheads in such case. If you're shaping directly on the router -+(for example, with speedtouch usb modem) using ppp daemon, layer2 header will -+not be added yet. -+ -+For more thorough explanations, please see \fB[1]\fR and \fB[2]\fR. -+. -+.SH "SEE ALSO" -+. -+\fBtc\fR(8), \fBtc\-hfsc\fR(7), \fBtc\-hfsc\fR(8), -+.br -+\fB[1]\fR http://ace\-host.stuart.id.au/russell/files/tc/tc\-atm/ -+.br -+\fB[2]\fR http://www.faqs.org/rfcs/rfc2684.html -+ -+Please direct bugreports and patches to: -+. -+.SH "AUTHOR" -+. -+Manpage created by Michal Soltys (sol...@ziu.info) ---- iproute2/tc/q_hfsc.c -+++ iproute2-new/tc/q_hfsc.c -@@ -43,7 +43,7 @@ - fprintf(stderr, - "Usage: ... hfsc [ [ rt SC ] [ ls SC ] | [ sc SC ] ] [ ul SC ]\n" - "\n" -- "SC := [ [ m1 BPS ] [ d SEC ] m2 BPS\n" -+ "SC := [ [ m1 BPS ] d SEC ] m2 BPS\n" - "\n" - " m1 : slope of first segment\n" - " d : x-coordinate of intersection\n" -@@ -57,6 +57,10 @@ - " dmax : maximum delay\n" - " rate : rate\n" - "\n" -+ "Remarks:\n" -+ " - at least one of 'rt', 'ls' or 'sc' must be specified\n" -+ " - 'ul' can only be specified with 'ls' or 'sc'\n" -+ "\n" - ); - } - ---- iproute2/tc/tc_core.c -+++ iproute2-new/tc/tc_core.c -@@ -155,12 +155,12 @@ - } - - if (s->mtu == 0) -- s->mtu = 2047; -+ s->mtu = 2048; - if (s->tsize == 0) - s->tsize = 512; - - s->cell_log = 0; -- while ((s->mtu >> s->cell_log) > s->tsize - 1) -+ while ((s->mtu - 1 >> s->cell_log) > s->tsize - 1) - s->cell_log++; - - *stab = malloc(s->tsize * sizeof(__u16)); ---- iproute2/tc/tc_stab.c -+++ iproute2-new/tc/tc_stab.c -@@ -32,11 +32,15 @@ - fprintf(stderr, - "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ] \n" - " [ overhead BYTES ] [ linklayer TYPE ] ...\n" -- " mtu : max packet size we create rate map for {2047}\n" -+ "TYPE := adsl | atm | ethernet\n" -+ " mtu : max packet size we create size table for {2048}\n" - " tsize : how many slots should size table have {512}\n" - " mpu : minimum packet size used in rate computations\n" - " overhead : per-packet size overhead used in rate computations\n" - " linklayer : adapting to a linklayer e.g. atm\n" -+ " mpu : minimum packet size used in size table computations\n" -+ " overhead : per-packet size overhead used in size table computations\n" -+ " linklayer : required linklayer adaptation, (adsl and atm are synonyms)\n" - "Example: ... stab overhead 20 linklayer atm\n"); - - return; diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-cached-routes.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-cached-routes.patch deleted file mode 100644 index 821d8c3fae..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-cached-routes.patch +++ /dev/null @@ -1,34 +0,0 @@ -http://bugs.gentoo.org/331447 - -From c73f3e02f8ae25e5daad0367690a3069895dd8a3 Mon Sep 17 00:00:00 2001 -From: Ulrich Weber -Date: Thu, 12 Aug 2010 11:05:19 +0200 -Subject: [PATCH] iproute2: dont filter cached routes on iproute_get - -iproute_get will return cloned routes for IPv4 -and cloned as well non-cloned routes for IPv6. - -Therefore RTM_F_CLONED flag should not be checked -for iproute_get routes. Check in print_route will -always fail because valid values are 0 and 1. - -Signed-off-by: Ulrich Weber ---- - ip/iproute.c | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/ip/iproute.c b/ip/iproute.c -index 711576e..b43933c 100644 ---- a/ip/iproute.c -+++ b/ip/iproute.c -@@ -1286,6 +1286,7 @@ int iproute_get(int argc, char **argv) - memset(&req, 0, sizeof(req)); - - iproute_reset_filter(); -+ filter.cloned = 2; - - req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct rtmsg)); - req.n.nlmsg_flags = NLM_F_REQUEST; --- -1.7.2 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-no-iptables.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-no-iptables.patch deleted file mode 100644 index a51cf78ac8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-no-iptables.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/tc/Makefile b/tc/Makefile -index 3aa9f26..0a827da 100644 ---- a/tc/Makefile -+++ b/tc/Makefile -@@ -58,7 +58,9 @@ else - CFLAGS += -DTC_CONFIG_XT_H - TCSO += m_xt_old.so - else -- TCMODULES += m_ipt.o -+ ifneq ($(TC_CONFIG_XT),n) -+ TCMODULES += m_ipt.o -+ endif - endif - endif - endif diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-no-ipv6.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-no-ipv6.patch deleted file mode 100644 index d82c887334..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-no-ipv6.patch +++ /dev/null @@ -1,27 +0,0 @@ -https://bugs.gentoo.org/326849 - -allow ipv6 to be disabled - ---- iproute2-2.6.31/ip/iptunnel.c -+++ iproute2-2.6.31/ip/iptunnel.c -@@ -456,13 +456,6 @@ int do_iptunnel(int argc, char **argv) - break; - case AF_INET: - break; -- /* -- * This is silly enough but we have no easy way to make it -- * protocol-independent because of unarranged structure between -- * IPv4 and IPv6. -- */ -- case AF_INET6: -- return do_ip6tunnel(argc, argv); - default: - fprintf(stderr, "Unsupported family:%d\n", preferred_family); - exit(-1); ---- iproute2-2.6.31/ip/Makefile -+++ iproute2-2.6.31/ip/Makefile -@@ -1,4 +1,4 @@ - IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o \ -- rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -+ rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ - ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o \ diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-xtables.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-xtables.patch deleted file mode 100644 index 748c77bde8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.35-xtables.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 035ea3a8a1c9f67721fa0b53540620c7c49bc8ab Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Sun, 21 Nov 2010 16:07:26 -0500 -Subject: [PATCH] m_xt: stop using xtables_set_revision() - -iptables dropped the xtables_set_revision() function around version 1.4.9, -so set the rev directly ourselves. This should be compatible back to the -original version m_xt itself is designed for. - -Signed-off-by: Mike Frysinger ---- - tc/m_xt.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/tc/m_xt.c b/tc/m_xt.c -index bfc4937..ede9913 100644 ---- a/tc/m_xt.c -+++ b/tc/m_xt.c -@@ -88,7 +88,7 @@ build_st(struct xtables_target *target, struct xt_entry_target *t) - target->t = xtables_calloc(1, size); - target->t->u.target_size = size; - strcpy(target->t->u.user.name, target->name); -- xtables_set_revision(target->t->u.user.name, target->revision); -+ target->t->u.user.revision = target->revision; - - if (target->init != NULL) - target->init(target->t); --- -1.7.3.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.38-parallel-build.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.38-parallel-build.patch deleted file mode 100644 index 7966cfce50..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-2.6.38-parallel-build.patch +++ /dev/null @@ -1,40 +0,0 @@ -sent upstream already - -From f8a783bbe98b0fe5aaedbf623bc70471b88c9187 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Tue, 18 Oct 2011 17:36:55 -0400 -Subject: [PATCH] tc: fix parallel build file with lex/yacc - -Building iproute2 in parallel might hit the race failure: - emp_ematch.l:2:30: fatal error: emp_ematch.yacc.h: - No such file or directory - make[1]: *** [emp_ematch.lex.o] Error 1 - -This is because we currently allow the yacc/lex files to generate and -compile in parallel. So add a simple dependency to make sure yacc has -finished before we attempt to compile the lex output. - -Signed-off-by: Mike Frysinger ---- - tc/Makefile | 5 +++++ - 1 files changed, 5 insertions(+), 0 deletions(-) - -diff --git a/tc/Makefile b/tc/Makefile -index 08aa4ce..b2ca165 100644 ---- a/tc/Makefile -+++ b/tc/Makefile -@@ -136,6 +136,11 @@ m_xt_old.so: m_xt_old.c - %.lex.c: %.l - $(LEX) $(LEXFLAGS) -o$@ $< - -+# our lexer includes the header from yacc, so make sure -+# we don't attempt to compile it before the header has -+# been generated as part of the yacc step. -+emp_ematch.lex.o: emp_ematch.yacc.c -+ - ifneq ($(SHARED_LIBS),y) - - tc: static-syms.o --- -1.7.6.1 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch deleted file mode 100644 index fa12dad2d7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch +++ /dev/null @@ -1,48 +0,0 @@ -http://bugs.gentoo.org/291907 - -This patch was merged from two patches extracted from this thread: -http://markmail.org/thread/qkd76gpdgefpjlfn - -tc_stab.c: small fixes to commandline help - - -tc_core.c: -As kernel part of things relies on cell align which is always set to -1, -I also added it to userspace computation stage. This way if someone -specified e.g. 2048 and 512 for mtu and tsize respectively, one wouldn't -end with tsize supporting mtu 4096 suddenly, New default mtu is also set -to 2048 (disregarding weirdness of setting mtu to such values). - - -Unless I missed something, this is harmless and feels cleaner, but if it's -not allowed, documentation will have to be changed back to 2047 + extra -explanation as well. - ---- iproute2/tc/tc_core.c -+++ iproute2/tc/tc_core.c -@@ -155,12 +155,12 @@ - } - - if (s->mtu == 0) -- s->mtu = 2047; -+ s->mtu = 2048; - if (s->tsize == 0) - s->tsize = 512; - - s->cell_log = 0; -- while ((s->mtu >> s->cell_log) > s->tsize - 1) -+ while ((s->mtu - 1 >> s->cell_log) > s->tsize - 1) - s->cell_log++; - - *stab = malloc(s->tsize * sizeof(__u16)); ---- iproute2/tc/tc_stab.c -+++ iproute2/tc/tc_stab.c -@@ -32,7 +32,7 @@ - fprintf(stderr, - "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ] \n" - " [ overhead BYTES ] [ linklayer TYPE ] ...\n" -- " mtu : max packet size we create rate map for {2047}\n" -+ " mtu : max packet size we create size table for {2048}\n" - " tsize : how many slots should size table have {512}\n" - " mpu : minimum packet size used in rate computations\n" - " overhead : per-packet size overhead used in rate computations\n" diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.1.0-no-ipv6.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.1.0-no-ipv6.patch deleted file mode 100644 index 1282a1b59f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.1.0-no-ipv6.patch +++ /dev/null @@ -1,41 +0,0 @@ -https://bugs.gentoo.org/326849 - -allow ipv6 to be disabled - ---- a/ip/iptunnel.c -+++ b/ip/iptunnel.c -@@ -456,13 +456,6 @@ int do_iptunnel(int argc, char **argv) - break; - case AF_INET: - break; -- /* -- * This is silly enough but we have no easy way to make it -- * protocol-independent because of unarranged structure between -- * IPv4 and IPv6. -- */ -- case AF_INET6: -- return do_ip6tunnel(argc, argv); - default: - fprintf(stderr, "Unsupported family:%d\n", preferred_family); - exit(-1); ---- a/ip/Makefile -+++ b/ip/Makefile -@@ -1,6 +1,6 @@ - IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \ -- rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -- ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o iptuntap.o \ -+ rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -+ ipmaddr.o ipmonitor.o ipmroute.o iptuntap.o \ - ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o \ - iplink_vlan.o link_veth.o link_gre.o iplink_can.o \ - iplink_macvlan.o iplink_macvtap.o ipl2tp.o ---- a/ip/ipmonitor.c -+++ b/ip/ipmonitor.c -@@ -76,7 +76,6 @@ int accept_msg(const struct sockaddr_nl *who, - if (n->nlmsg_type == RTM_NEWPREFIX) { - if (prefix_banner) - fprintf(fp, "[PREFIX]"); -- print_prefix(who, n, arg); - return 0; - } - if (n->nlmsg_type == RTM_NEWRULE || n->nlmsg_type == RTM_DELRULE) { diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.6.0-pkg-config.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.6.0-pkg-config.patch deleted file mode 100644 index fcfee29299..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.6.0-pkg-config.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 99762cbc216bb818e9fcbe37e1abf9b313968615 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Thu, 8 Nov 2012 11:31:26 -0500 -Subject: [PATCH] allow pkg-config to be customized - -Rather than hard coding `pkg-config`, use ${PKG_CONFIG} so people can -override it to their specific version (like when cross-compiling). - -This is the same way the upstream pkg-config code works. - -Signed-off-by: Mike Frysinger ---- - configure | 6 ++++-- - tc/Makefile | 4 ++-- - 2 files changed, 6 insertions(+), 4 deletions(-) - -diff --git a/configure b/configure -index 2c2d1c4..0bfedf9 100755 ---- a/configure -+++ b/configure -@@ -2,6 +2,8 @@ - # This is not an autconf generated configure - # - INCLUDE=${1:-"$PWD/include"} -+: ${PKG_CONFIG:=pkg-config} -+echo "PKG_CONFIG:=${PKG_CONFIG}" >>Config - - # Make a temp directory in build tree. - TMPDIR=$(mktemp -d config.XXXXXX) -@@ -51,7 +53,7 @@ int main(int argc, char **argv) - - EOF - --if gcc -I$INCLUDE $IPTC -o $TMPDIR/ipttest $TMPDIR/ipttest.c $IPTL $(pkg-config xtables --cflags --libs) -ldl >/dev/null 2>&1 -+if gcc -I$INCLUDE $IPTC -o $TMPDIR/ipttest $TMPDIR/ipttest.c $IPTL $(${PKG_CONFIG} xtables --cflags --libs) -ldl >/dev/null 2>&1 - then - echo "TC_CONFIG_XT:=y" >>Config - echo "using xtables" -@@ -148,7 +150,7 @@ check_ipt() - - check_ipt_lib_dir() - { -- IPT_LIB_DIR=$(pkg-config --variable=xtlibdir xtables) -+ IPT_LIB_DIR=$(${PKG_CONFIG} --variable=xtlibdir xtables) - if [ -n "$IPT_LIB_DIR" ]; then - echo $IPT_LIB_DIR - echo "IPT_LIB_DIR:=$IPT_LIB_DIR" >> Config -diff --git a/tc/Makefile b/tc/Makefile -index 389029d..696f891 100644 ---- a/tc/Makefile -+++ b/tc/Makefile -@@ -135,10 +135,10 @@ q_atm.so: q_atm.c - $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o q_atm.so q_atm.c -latm - - m_xt.so: m_xt.c -- $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt.so m_xt.c $$(pkg-config xtables --cflags --libs) -+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt.so m_xt.c $$($(PKG_CONFIG) xtables --cflags --libs) - - m_xt_old.so: m_xt_old.c -- $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt_old.so m_xt_old.c $$(pkg-config xtables --cflags --libs) -+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic -o m_xt_old.so m_xt_old.c $$($(PKG_CONFIG) xtables --cflags --libs) - - %.yacc.c: %.y - $(YACC) $(YACCFLAGS) -o $@ $< --- -1.7.12.4 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.7.0-clang.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.7.0-clang.patch deleted file mode 100644 index 17bb6ac856..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.7.0-clang.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 048bff6e0206bca33ee70516521f3048e7714752 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Thu, 17 Jan 2013 18:00:50 +0000 -Subject: [PATCH] ipxfrm: use alloca to allocate stack space - -Clang doesn't support the gcc extension for embeddeding flexible arrays -inside of structures. Use the slightly more portable alloca(). - -Signed-off-by: Mike Frysinger ---- - ip/ipxfrm.c | 27 +++++++++++---------------- - 1 file changed, 11 insertions(+), 16 deletions(-) - -diff --git a/ip/ipxfrm.c b/ip/ipxfrm.c -index c7b3420..dda4a7a 100644 ---- a/ip/ipxfrm.c -+++ b/ip/ipxfrm.c -@@ -25,6 +25,7 @@ - * Masahide NAKAMURA @USAGI - */ - -+#include - #include - #include - #include -@@ -555,16 +556,13 @@ static inline void xfrm_algo_print(struct xfrm_algo *algo, int type, int len, - static void xfrm_aead_print(struct xfrm_algo_aead *algo, int len, - FILE *fp, const char *prefix) - { -- struct { -- struct xfrm_algo algo; -- char key[algo->alg_key_len / 8]; -- } base; -+ struct xfrm_algo *base_algo = alloca(sizeof(*base_algo) + algo->alg_key_len / 8); - -- memcpy(base.algo.alg_name, algo->alg_name, sizeof(base.algo.alg_name)); -- base.algo.alg_key_len = algo->alg_key_len; -- memcpy(base.algo.alg_key, algo->alg_key, algo->alg_key_len / 8); -+ memcpy(base_algo->alg_name, algo->alg_name, sizeof(base_algo->alg_name)); -+ base_algo->alg_key_len = algo->alg_key_len; -+ memcpy(base_algo->alg_key, algo->alg_key, algo->alg_key_len / 8); - -- __xfrm_algo_print(&base.algo, XFRMA_ALG_AEAD, len, fp, prefix, 0); -+ __xfrm_algo_print(base_algo, XFRMA_ALG_AEAD, len, fp, prefix, 0); - - fprintf(fp, " %d", algo->alg_icv_len); - -@@ -574,16 +572,13 @@ static void xfrm_aead_print(struct xfrm_algo_aead *algo, int len, - static void xfrm_auth_trunc_print(struct xfrm_algo_auth *algo, int len, - FILE *fp, const char *prefix) - { -- struct { -- struct xfrm_algo algo; -- char key[algo->alg_key_len / 8]; -- } base; -+ struct xfrm_algo *base_algo = alloca(sizeof(*base_algo) + algo->alg_key_len / 8); - -- memcpy(base.algo.alg_name, algo->alg_name, sizeof(base.algo.alg_name)); -- base.algo.alg_key_len = algo->alg_key_len; -- memcpy(base.algo.alg_key, algo->alg_key, algo->alg_key_len / 8); -+ memcpy(base_algo->alg_name, algo->alg_name, sizeof(base_algo->alg_name)); -+ base_algo->alg_key_len = algo->alg_key_len; -+ memcpy(base_algo->alg_key, algo->alg_key, algo->alg_key_len / 8); - -- __xfrm_algo_print(&base.algo, XFRMA_ALG_AUTH_TRUNC, len, fp, prefix, 0); -+ __xfrm_algo_print(base_algo, XFRMA_ALG_AUTH_TRUNC, len, fp, prefix, 0); - - fprintf(fp, " %d", algo->alg_trunc_len); - --- -1.8.0.2 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.7.0-man7.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.7.0-man7.patch deleted file mode 100644 index 947714adf8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/files/iproute2-3.7.0-man7.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 18c1de8d742792d43ff81ebff9af5389e5be7cae Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Fri, 11 Jan 2013 11:34:08 -0500 -Subject: [PATCH] [iproute2] add man7 to subdirs list -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The man dir misses the man7 as a subdir which means none of the pages -get installed. - -URL: https://bugs.gentoo.org/451166 -Reported-by: Marcin Mirosław -Signed-off-by: Mike Frysinger ---- - man/Makefile | 2 +- - man/man7/Makefile | 13 +++++++++++++ - 2 files changed, 14 insertions(+), 1 deletion(-) - create mode 100644 man/man7/Makefile - -diff --git a/man/Makefile b/man/Makefile -index 67fea05..9a60fa7 100644 ---- a/man/Makefile -+++ b/man/Makefile -@@ -2,7 +2,7 @@ INSTALL=install - INSTALLDIR=install -m 0755 -d - INSTALLMAN=install -m 0644 - --SUBDIRS = man3 man8 -+SUBDIRS = man3 man7 man8 - - all: - @for subdir in $(SUBDIRS); do $(MAKE) -C $$subdir; done -diff --git a/man/man7/Makefile b/man/man7/Makefile -new file mode 100644 -index 0000000..ccfd839 ---- /dev/null -+++ b/man/man7/Makefile -@@ -0,0 +1,13 @@ -+MAN7PAGES = tc-hfsc.7 -+ -+all: -+ -+distclean: clean -+ -+clean: -+ -+install: -+ $(INSTALLDIR) $(DESTDIR)$(MANDIR)/man7 -+ $(INSTALLMAN) $(MAN7PAGES) $(DESTDIR)$(MANDIR)/man7 -+ -+.PHONY: install clean distclean --- -1.8.0.2 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.29.1-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.29.1-r1.ebuild deleted file mode 100644 index 3d69a1ea69..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.29.1-r1.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-2.6.29.1-r1.ebuild,v 1.16 2012/06/01 04:26:02 zmedico Exp $ - -EAPI="2" - -inherit eutils multilib toolchain-funcs - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git - SRC_URI="" - #KEYWORDS="" -else - if [[ ${PV} == *.*.*.* ]] ; then - MY_PV=${PV%.*}-${PV##*.} - else - MY_PV=${PV} - fi - MY_P="${PN}-${MY_PV}" - SRC_URI="http://developer.osdl.org/dev/iproute2/download/${MY_P}.tar.bz2" - KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86" - S=${WORKDIR}/${MY_P} -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb minimal" - -RDEPEND="!net-misc/arpd - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - sys-devel/bison - sys-devel/flex - elibc_glibc? ( >=sys-libs/glibc-2.7 ) - >=sys-kernel/linux-headers-2.6.27" - -src_unpack() { - if [[ ${PV} == "9999" ]] ; then - git_src_unpack - else - unpack ${A} - fi -} - -src_prepare() { - sed -i "s:-O2:${CFLAGS} ${CPPFLAGS}:" Makefile || die "sed Makefile failed" - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - - epatch "${FILESDIR}"/${PN}-2.6.26-ldflags.patch #236861 - epatch "${FILESDIR}"/${PN}-2.6.29.1-flush.patch #274973 - - epatch_user - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - # Multilib fixes - sed -i 's:/usr/local:/usr:' tc/m_ipt.c include/iptables.h - sed -i "s:/usr/lib:/usr/$(get_libdir):g" \ - netem/Makefile tc/{Makefile,tc.c,q_netem.c,m_ipt.c} include/iptables.h || die - sed -i "s:/lib/tc:$(get_libdir)/tc:g" tc/Makefile || die - # Use correct iptables dir, #144265 - sed -i "s:/usr/local/lib/iptables:/$(get_libdir)/iptables:g" \ - include/iptables.h -} - -src_configure() { - echo -n 'TC_CONFIG_ATM:=' > Config - use atm \ - && echo 'y' >> Config \ - || echo 'n' >> Config - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_compile() { - emake \ - CC="$(tc-getCC)" \ - AR="$(tc-getAR)" \ - || die "make failed" -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc || die "minimal" - return 0 - fi - - emake \ - DESTDIR="${D}" \ - SBINDIR=/sbin \ - DOCDIR=/usr/share/doc/${PF} \ - MANDIR=/usr/share/man \ - install \ - || die "make install failed" - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${D}"/sbin/arpd "${D}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.35-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.35-r2.ebuild deleted file mode 100644 index 119eaa5c22..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.35-r2.ebuild +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-2.6.35-r2.ebuild,v 1.11 2012/06/01 04:26:02 zmedico Exp $ - -EAPI="2" - -inherit eutils multilib toolchain-funcs flag-o-matic - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git - SRC_URI="" - #KEYWORDS="" -else - if [[ ${PV} == *.*.*.* ]] ; then - MY_PV=${PV%.*}-${PV##*.} - else - MY_PV=${PV} - fi - MY_P="${PN}-${MY_PV}" - SRC_URI="http://developer.osdl.org/dev/iproute2/download/${MY_P}.tar.bz2" - KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86" - S=${WORKDIR}/${MY_P} -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb ipv6 minimal" - -RDEPEND="!net-misc/arpd - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - elibc_glibc? ( >=sys-libs/glibc-2.7 ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27" - -src_prepare() { - sed -i \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - - epatch "${FILESDIR}"/${PN}-2.6.29.1-hfsc.patch #291907 - epatch "${FILESDIR}"/${P}-cached-routes.patch #331447 - use ipv6 || epatch "${FILESDIR}"/${PN}-2.6.35-no-ipv6.patch #326849 - - epatch_user - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - echo -n 'TC_CONFIG_ATM:=' > Config - use atm \ - && echo 'y' >> Config \ - || echo 'n' >> Config - - # Use correct iptables dir, #144265 #293709 - append-cppflags -DIPT_LIB_DIR=\\\"`$(tc-getPKG_CONFIG) xtables --variable=xtlibdir`\\\" -} - -src_compile() { - emake \ - CC="$(tc-getCC)" \ - HOSTCC="$(tc-getBUILD_CC)" \ - AR="$(tc-getAR)" \ - || die -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc || die "minimal" - return 0 - fi - - emake \ - DESTDIR="${D}" \ - SBINDIR=/sbin \ - DOCDIR=/usr/share/doc/${PF} \ - MANDIR=/usr/share/man \ - install \ - || die - prepalldocs - - dolib.a lib/libnetlink.a || die - insinto /usr/include - doins include/libnetlink.h || die - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${D}"/sbin/arpd "${D}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.35-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.35-r3.ebuild deleted file mode 100644 index 51ce50728c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.35-r3.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-2.6.35-r3.ebuild,v 1.5 2012/06/01 04:26:02 zmedico Exp $ - -EAPI="2" - -inherit eutils multilib toolchain-funcs flag-o-matic - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git - SRC_URI="" - #KEYWORDS="" -else - if [[ ${PV} == *.*.*.* ]] ; then - MY_PV=${PV%.*}-${PV##*.} - else - MY_PV=${PV} - fi - MY_P="${PN}-${MY_PV}" - SRC_URI="http://developer.osdl.org/dev/iproute2/download/${MY_P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" - S=${WORKDIR}/${MY_P} -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - iptables? ( virtual/pkgconfig ) - elibc_glibc? ( >=sys-libs/glibc-2.7 ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27" - -src_prepare() { - sed -i \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - - epatch "${FILESDIR}"/${PN}-2.6.29.1-hfsc.patch #291907 - epatch "${FILESDIR}"/${P}-cached-routes.patch #331447 - use ipv6 || epatch "${FILESDIR}"/${PN}-2.6.35-no-ipv6.patch #326849 - epatch "${FILESDIR}"/${PN}-2.6.35-xtables.patch - epatch "${FILESDIR}"/${PN}-2.6.35-no-iptables.patch - - epatch_user - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -use_yn() { use $1 && echo y || echo n ; } -src_configure() { - cat <<-EOF > Config - TC_CONFIG_ATM := $(use_yn atm) - TC_CONFIG_XT := $(use_yn iptables) - EOF - if use iptables ; then - # Use correct iptables dir, #144265 #293709 - append-cppflags -DXT_LIB_DIR=\\\"`$(tc-getPKG_CONFIG) xtables --variable=xtlibdir`\\\" - fi -} - -src_compile() { - emake \ - CC="$(tc-getCC)" \ - HOSTCC="$(tc-getBUILD_CC)" \ - AR="$(tc-getAR)" \ - || die -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc || die "minimal" - return 0 - fi - - emake \ - DESTDIR="${D}" \ - SBINDIR=/sbin \ - DOCDIR=/usr/share/doc/${PF} \ - MANDIR=/usr/share/man \ - install \ - || die - prepalldocs - - dolib.a lib/libnetlink.a || die - insinto /usr/include - doins include/libnetlink.h || die - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${D}"/sbin/arpd "${D}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.38.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.38.ebuild deleted file mode 100644 index c677e7a55c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-2.6.38.ebuild +++ /dev/null @@ -1,90 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-2.6.38.ebuild,v 1.12 2012/06/01 04:26:02 zmedico Exp $ - -EAPI="4" - -inherit eutils multilib toolchain-funcs flag-o-matic - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.bz2" - KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb minimal" - -RDEPEND="!net-misc/arpd - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-2.6.29.1-hfsc.patch #291907 - epatch "${FILESDIR}"/${PN}-2.6.38-parallel-build.patch - - sed -i \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - echo "TC_CONFIG_ATM:=$(use atm && echo "y" || echo "n")" > Config - - # Use correct iptables dir, #144265 #293709 - append-cppflags -DIPT_LIB_DIR=\\\"`$(tc-getPKG_CONFIG) xtables --variable=xtlibdir`\\\" -} - -src_compile() { - emake \ - CC="$(tc-getCC)" \ - AR="$(tc-getAR)" -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - SBINDIR=/sbin \ - DOCDIR=/usr/share/doc/${PF} \ - MANDIR=/usr/share/man \ - install - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${ED}"/sbin/arpd "${ED}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.1.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.1.0.ebuild deleted file mode 100644 index a215c71dbf..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.1.0.ebuild +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.1.0.ebuild,v 1.6 2012/06/01 04:26:02 zmedico Exp $ - -EAPI="4" - -inherit eutils multilib toolchain-funcs flag-o-matic - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - SBINDIR=/sbin \ - DOCDIR=/usr/share/doc/${PF} \ - MANDIR=/usr/share/man \ - install - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${ED}"/sbin/arpd "${ED}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.3.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.3.0.ebuild deleted file mode 100644 index 19ef53d427..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.3.0.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.3.0.ebuild,v 1.9 2012/05/22 21:15:07 xmw Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.bz2" - KEYWORDS="~alpha amd64 arm hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${ED}"/sbin/arpd "${ED}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.4.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.4.0.ebuild deleted file mode 100644 index ef4d22227d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.4.0.ebuild +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.4.0.ebuild,v 1.1 2012/07/16 08:48:45 radhermit Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - app-arch/xz-utils - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/sbin - mv "${ED}"/sbin/arpd "${ED}"/usr/sbin/ - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.5.1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.5.1.ebuild deleted file mode 100644 index 1a0c6a654e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.5.1.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.5.1.ebuild,v 1.1 2012/08/13 18:08:52 vapier Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - app-arch/xz-utils - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.6.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.6.0.ebuild deleted file mode 100644 index ad8d6ff05a..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.6.0.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.6.0.ebuild,v 1.2 2012/11/08 16:40:45 vapier Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - app-arch/xz-utils - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - epatch "${FILESDIR}"/${PN}-3.6.0-pkg-config.patch #442354 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.7.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.7.0.ebuild deleted file mode 100644 index 0d83da3cae..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.7.0.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.7.0.ebuild,v 1.5 2013/02/10 08:38:29 vapier Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - app-arch/xz-utils - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - epatch "${FILESDIR}"/${PN}-3.7.0-man7.patch #451166 - epatch "${FILESDIR}"/${PN}-3.7.0-clang.patch - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.9.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.9.0.ebuild deleted file mode 100644 index 8dd235547b..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-3.9.0.ebuild +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.9.0.ebuild,v 1.1 2013/05/01 06:29:19 radhermit Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - app-arch/xz-utils - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - -e "/^WFLAGS/s:-Werror::" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988 - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - # This local header pulls in a lot of linux headers it - # doesn't directly need. Delete this header that requires - # linux-headers-3.8 until that goes stable. #467716 - sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-9999.ebuild deleted file mode 100644 index a25b8f225e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/iproute2-9999.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-9999.ebuild,v 1.23 2012/12/14 06:40:51 vapier Exp $ - -EAPI="4" - -inherit eutils toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-2 - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb +iptables ipv6 minimal" - -RDEPEND="!net-misc/arpd - iptables? ( >=net-firewall/iptables-1.4.5 ) - !minimal? ( berkdb? ( sys-libs/db ) ) - atm? ( net-dialup/linux-atm )" -DEPEND="${RDEPEND} - app-arch/xz-utils - iptables? ( virtual/pkgconfig ) - sys-devel/bison - sys-devel/flex - >=sys-kernel/linux-headers-2.6.27 - elibc_glibc? ( >=sys-libs/glibc-2.7 )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - use ipv6 || epatch "${FILESDIR}"/${PN}-3.1.0-no-ipv6.patch #326849 - - sed -i \ - -e '/^CC =/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - # don't build arpd if USE=-berkdb #81660 - use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile - - use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - echo 'main(){return setns();};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'main(){};' > test.c - ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - cat <<-EOF > Config - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - EOF -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - return 0 - fi - - emake \ - DESTDIR="${D}" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - - if use berkdb ; then - dodir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/metadata.xml b/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/metadata.xml deleted file mode 100644 index eab1d3a7c7..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/iproute2/metadata.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - -base-system - - build programs that use berkdb (just arpd) - include support for iptables filtering - - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/files/chromeos-version.sh b/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/files/chromeos-version.sh deleted file mode 100755 index 31caa7e48c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/files/chromeos-version.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -exec awk ' - $1 == "CORE" { core = $NF } - $1 == "MAJOR" { major = $NF } - $1 == "MINOR" { minor = $NF } - END { printf "%s.%s.%s\n", core, major, minor } -' "$1/Makefile" diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/mosys-1.2.03-r112.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/mosys-1.2.03-r112.ebuild deleted file mode 100644 index a64970b7fd..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/mosys-1.2.03-r112.ebuild +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_COMMIT="24288602238e3eb3e4d4f1938d02e181a746f408" -CROS_WORKON_TREE="3988fb67f7ea025b9fd98e32e81faf93ffb5fca3" -CROS_WORKON_PROJECT="chromiumos/platform/mosys" -CROS_WORKON_LOCALNAME="../platform/mosys" - -inherit flag-o-matic toolchain-funcs cros-workon - -DESCRIPTION="Utility for obtaining various bits of low-level system info" -HOMEPAGE="http://mosys.googlecode.com/" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="static" -RDEPEND="sys-apps/util-linux - >=sys-apps/flashmap-0.3-r4" -DEPEND="${RDEPEND}" - -src_compile() { - # Generate a default .config for our target architecture. This will - # likely become more sophisticated as we broaden board support. - einfo "using default configuration for $(tc-arch)" - ARCH=$(tc-arch) make defconfig || die - - tc-export AR AS CC CXX LD NM STRIP OBJCOPY PKG_CONFIG - export FMAP_LINKOPT="$(${PKG_CONFIG} --libs-only-l fmap)" - append-ldflags "$(${PKG_CONFIG} --libs-only-L fmap)" - export LDFLAGS="$(raw-ldflags)" - append-flags "$(${PKG_CONFIG} --cflags fmap)" - export CFLAGS - - if use static; then - # We can't use append-ldflags because the build system doesn't - # handle LDFLAGS correctly: - # http://code.google.com/p/mosys/issues/detail?id=3 - append-flags "-static" - fi - - emake || die -} - -src_install() { - dosbin mosys || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/mosys-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/mosys-9999.ebuild deleted file mode 100644 index c2cee6e69d..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/mosys/mosys-9999.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/platform/mosys" -CROS_WORKON_LOCALNAME="../platform/mosys" - -inherit flag-o-matic toolchain-funcs cros-workon - -DESCRIPTION="Utility for obtaining various bits of low-level system info" -HOMEPAGE="http://mosys.googlecode.com/" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="static" -RDEPEND="sys-apps/util-linux - >=sys-apps/flashmap-0.3-r4" -DEPEND="${RDEPEND}" - -src_compile() { - # Generate a default .config for our target architecture. This will - # likely become more sophisticated as we broaden board support. - einfo "using default configuration for $(tc-arch)" - ARCH=$(tc-arch) make defconfig || die - - tc-export AR AS CC CXX LD NM STRIP OBJCOPY PKG_CONFIG - export FMAP_LINKOPT="$(${PKG_CONFIG} --libs-only-l fmap)" - append-ldflags "$(${PKG_CONFIG} --libs-only-L fmap)" - export LDFLAGS="$(raw-ldflags)" - append-flags "$(${PKG_CONFIG} --cflags fmap)" - export CFLAGS - - if use static; then - # We can't use append-ldflags because the build system doesn't - # handle LDFLAGS correctly: - # http://code.google.com/p/mosys/issues/detail?id=3 - append-flags "-static" - fi - - emake || die -} - -src_install() { - dosbin mosys || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/rollog/rollog-0.0.1-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/rollog/rollog-0.0.1-r3.ebuild deleted file mode 100644 index edcdd3e05f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/rollog/rollog-0.0.1-r3.ebuild +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_COMMIT="2107f76d09ee7d41fd20367af4620b46a6443af4" -CROS_WORKON_TREE="f8747f25994455c144df5a4e24cedbbe09a16d7c" -CROS_WORKON_PROJECT="chromiumos/platform/rollog" -CROS_WORKON_LOCALNAME="../platform/rollog" -CROS_WORKON_OUTOFTREE_BUILD=1 - -inherit cros-workon - -DESCRIPTION="Utility for implementing rolling logs for bug regression" -HOMEPAGE="http://www.chromium.org/" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm x86" -IUSE="" - -src_prepare() { - cros-workon_src_prepare -} - -src_configure() { - cros-workon_src_configure -} - -src_compile() { - cros-workon_src_compile -} - -src_install() { - dobin "${OUT}"/rollog -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/rollog/rollog-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/rollog/rollog-9999.ebuild deleted file mode 100644 index f6c7caff04..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/rollog/rollog-9999.ebuild +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -CROS_WORKON_PROJECT="chromiumos/platform/rollog" -CROS_WORKON_LOCALNAME="../platform/rollog" -CROS_WORKON_OUTOFTREE_BUILD=1 - -inherit cros-workon - -DESCRIPTION="Utility for implementing rolling logs for bug regression" -HOMEPAGE="http://www.chromium.org/" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" - -src_prepare() { - cros-workon_src_prepare -} - -src_configure() { - cros-workon_src_configure -} - -src_compile() { - cros-workon_src_compile -} - -src_install() { - dobin "${OUT}"/rollog -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/Manifest deleted file mode 100644 index c331110ff3..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST superiotool-svn-5690.tar.bz2 25599 SHA256 3fec27b3e2553403f435be612e545ed71bad1eedd4d1a86ae8449587fcf2a3e8 SHA512 e7bf346e3c03be51cd942bc3a69e4b70fa4b742c136f06e4c64ee4df93c5880fa6439d2902604891de0e386a5aa4eddc62d28563664df4e034171827387e74da WHIRLPOOL 4fd53bf9b9b5c60039fe2e75785afa22dfebbf23bdb50e8d8a5245769130fa6b28b49f0d1a1d67c5b4c67b8a34332c0f2de2f86d5f186517a59439833822a678 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/files/remove_sch5317.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/files/remove_sch5317.patch deleted file mode 100644 index 0f63d96f82..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/files/remove_sch5317.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: smsc.c -=================================================================== ---- smsc.c (revision 5690) -+++ smsc.c (working copy) -@@ -655,9 +655,11 @@ - {EOT}}}, - {0x83, "SCH5514D", { /* From sensors-detect */ - {EOT}}}, -+#if 0 - {0x85, "SCH5317", { /* From sensors-detect */ - /* The SCH5317 can have either 0x85 or 0x8c as device ID. */ - {EOT}}}, -+#endif - {0x86, "SCH5127", { /* From sensors-detect */ - {EOT}}}, - {0x89, "SCH5027", { /* From sensors-detect (no public datasheet) */ diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/superiotool-5690-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/superiotool-5690-r1.ebuild deleted file mode 100644 index 369b240d19..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/superiotool-5690-r1.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2010 Chromium OS Authors -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -inherit eutils toolchain-funcs - -DESCRIPTION="Superiotool allows you to detect which Super I/O you have on your mainboard, and it can provide detailed information about the register contents of the Super I/O." -HOMEPAGE="http://www.coreboot.org/Superiotool" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${PN}-svn-${PV}.tar.bz2" - -S=${PN} - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="x86" - -RDEPEND="sys-apps/pciutils" -DEPEND="${RDEPEND}" - -src_compile() { - cd ${S} - emake CC="$(tc-getCC)" || die "emake failed" -} - -src_install() { - cd ${S} - emake DESTDIR="${D}" install || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/superiotool-5690-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/superiotool-5690-r2.ebuild deleted file mode 100644 index a517859ff4..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/superiotool/superiotool-5690-r2.ebuild +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright 2010 Chromium OS Authors -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=3 - -inherit eutils toolchain-funcs - -DESCRIPTION="Superiotool allows you to detect which Super I/O you have on your mainboard, and it can provide detailed information about the register contents of the Super I/O." -HOMEPAGE="http://www.coreboot.org/Superiotool" -SRC_URI="http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${PN}-svn-${PV}.tar.bz2" - -S=${PN} - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="x86" - -RDEPEND="sys-apps/pciutils" -DEPEND="${RDEPEND}" - -src_prepare() { - cd ${S} - epatch ${FILESDIR}/remove_sch5317.patch -} - -src_compile() { - cd ${S} - emake CC="$(tc-getCC)" || die "emake failed" -} - -src_install() { - cd ${S} - emake DESTDIR="${D}" install || die -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-auth/pam_pwdfile/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-auth/pam_pwdfile/Manifest deleted file mode 100644 index 1d43711d27..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-auth/pam_pwdfile/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST pam_pwdfile-0.99.tar.gz 16994 RMD160 e8e4d540cc7fcb391a72110312eb1e01ed5716ea SHA1 8f3e5f5de52c83c6535fe9c526880cdbb13fe59a SHA256 973420f203976ac98508bb253b33a23d189cfbaf72143670964470e84085688e diff --git a/sdk_container/src/third_party/coreos-overlay/sys-auth/pam_pwdfile/pam_pwdfile-0.99-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-auth/pam_pwdfile/pam_pwdfile-0.99-r1.ebuild deleted file mode 100644 index 92896506b0..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-auth/pam_pwdfile/pam_pwdfile-0.99-r1.ebuild +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-auth/pam_pwdfile/pam_pwdfile-0.99.ebuild,v 1.5 2007/11/04 15:38:35 flameeyes Exp $ - -inherit flag-o-matic pam - -DESCRIPTION="PAM module for authenticating against passwd-like files." -HOMEPAGE="http://cpbotha.net/pam_pwdfile.html" -SRC_URI="http://cpbotha.net/files/${PN}/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="" -DEPEND="sys-libs/pam" - -src_compile() { - append-flags -DNDEBUG - tc-export CC - # Make upstream Makefile respect the environment. - # In addition, it needs to use gcc for -shared not ld. - sed -i -e 's/CFLAGS =/CFLAGS +=/' \ - -e 's/LDFLAGS = .*$/LDFLAGS += -shared/' \ - -e 's/LD =/LD ?=/' \ - -e 's/CC =/CC ?=/' \ - -e 's/$(LD)/$(CC)/' \ - contrib/Makefile.standalone - emake -f contrib/Makefile.standalone || die "emake failed" -} - -src_install() { - dopammod ${PN}.so - dodoc INSTALL README changelog contrib/warwick_duncan-cyrus_without_system_accounts.txt -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/Manifest deleted file mode 100644 index 28e339a1cf..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST polkit-0.100.tar.gz 1050355 SHA256 afe63bec81b7f49e884ea4f2671ec76db121d84d05f36e75cde9b4ca4c828186 SHA512 a7cea5386571085793f0c2bd77a0a4ad03259c23311f019560ba1638a8f43ec2d31fbca07c5ab289cf879973f4175fcc33d908b722701c76af61ae692c299909 WHIRLPOOL b266a0cfbad56c82e16ab07e11f69695d258a1330434837476c59f6f562815fde8bda52f0f2a0e1524da69be802ee46290faf1b13dc6f8456ea512e428be0657 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/files/polkit-0.96-getcwd.patch b/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/files/polkit-0.96-getcwd.patch deleted file mode 100644 index 64e888a74c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/files/polkit-0.96-getcwd.patch +++ /dev/null @@ -1,22 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=309457 -https://bugs.freedesktop.org/show_bug.cgi?id=27081 - ---- src/programs/pkexec.c -+++ src/programs/pkexec.c -@@ -375,6 +375,7 @@ - gchar *path; - struct passwd pwstruct; - gchar pwbuf[8192]; -+ gchar cwdbuf[PATH_MAX]; - gchar *s; - const gchar *environment_variables_to_save[] = { - "SHELL", -@@ -438,7 +439,7 @@ - goto out; - } - -- original_cwd = g_strdup (get_current_dir_name ()); -+ original_cwd = g_strdup (getcwd(cwdbuf,PATH_MAX)); - if (original_cwd == NULL) - { - g_printerr ("Error getting cwd.\n"); diff --git a/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/polkit-0.100.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/polkit-0.100.ebuild deleted file mode 100644 index e1fe1c23e8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-auth/polkit/polkit-0.100.ebuild +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-auth/polkit/Attic/polkit-0.100.ebuild,v 1.3 2011/04/25 10:13:13 nirbheek dead $ - -EAPI="3" -inherit eutils pam - -DESCRIPTION="Policy framework for controlling privileges for system-wide services" -HOMEPAGE="http://hal.freedesktop.org/docs/polkit/" -SRC_URI="http://hal.freedesktop.org/releases/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" -IUSE="debug doc examples gtk +introspection kde nls pam" - -RDEPEND=">=dev-libs/glib-2.25.12 - dev-libs/expat - introspection? ( >=dev-libs/gobject-introspection-0.6.2 ) - pam? ( virtual/pam )" -DEPEND="${RDEPEND} - !!>=sys-auth/policykit-0.92 - !=dev-util/intltool-0.36 - doc? ( >=dev-util/gtk-doc-1.13 )" -PDEPEND=">=sys-auth/consolekit-0.4[policykit] - gtk? ( || ( >=gnome-extra/polkit-gnome-0.96-r1 lxde-base/lxpolkit ) ) - kde? ( || ( sys-auth/polkit-kde-agent sys-auth/polkit-kde ) )" - -src_prepare() { - epatch "${FILESDIR}"/${PN}-0.96-getcwd.patch -} - -src_configure() { - local myauth="--with-authfw=shadow" - use pam && myauth="--with-authfw=pam --with-pam-module-dir=$(getpam_mod_dir)" - - econf \ - --localstatedir="${EPREFIX}"/var \ - --disable-dependency-tracking \ - --disable-static \ - $(use_enable debug verbose-mode) \ - --enable-man-pages \ - $(use_enable doc gtk-doc) \ - $(use_enable introspection) \ - --disable-examples \ - $(use_enable nls) \ - --with-os-type=gentoo \ - ${myauth} -} - -src_install() { - emake DESTDIR="${D}" install || die - dodoc docs/TODO HACKING NEWS README - - find "${D}" -name '*.la' -exec rm -f '{}' + - - # We disable example compilation above, and handle it here - if use examples; then - insinto /usr/share/doc/${PF}/examples - doins src/examples/{*.c,*.policy*} - fi - - # Need to keep a few directories around... - diropts -m0700 -o root -g root - keepdir /var/run/polkit-1 - keepdir /var/lib/polkit-1 -} - -pkg_postinst() { - # Make sure that the user has consolekit sessions working so that the - # 'allow_active' directive in polkit action policies works - if has_version 'gnome-base/gdm' && ! has_version 'gnome-base/gdm[consolekit]'; then - # If user has GDM installed, but USE=-consolekit, warn them - ewarn "You have GDM installed, but it does not have USE=consolekit" - ewarn "If you login using GDM, polkit authorizations will not work" - ewarn "unless you enable USE=consolekit" - einfo - fi - if has_version 'kde-base/kdm' && ! has_version 'kde-base/kdm[consolekit]'; then - # If user has KDM installed, but USE=-consolekit, warn them - ewarn "You have KDM installed, but it does not have USE=consolekit" - ewarn "If you login using KDM, polkit authorizations will not work" - ewarn "unless you enable USE=consolekit" - einfo - fi - if ! has_version 'gnome-base/gdm[consolekit]' && \ - ! has_version 'kde-base/kdm[consolekit]'; then - # Inform user about the alternative method - ewarn "If you don't use GDM or KDM for logging in," - ewarn "you must start your desktop environment (DE) as follows:" - ewarn " ck-launch-session \$STARTGUI" - ewarn "Where \$STARTGUI is a DE-starting command such as 'gnome-session'." - ewarn "You should add this to your ~/.xinitrc if you use startx." - fi -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/Manifest deleted file mode 100644 index 61c7698389..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -AUX 99-ntfs3g.rules 51 RMD160 5c022fc946d0a695f8ef0dde7b8be42080bc8162 SHA1 01c821c46815c8bbe7560455fc22cc355c3844a2 SHA256 912165f71bbcae4753cd10a74c78bfd98e49bd9adbf80b96c39fc6738b12d463 -DIST ntfs-3g_ntfsprogs-2012.1.15.tgz 1149907 RMD160 4db6ea1025eedeee160a1cd4238d069a307b9b35 SHA1 8d55cf49afde172fefa369a0a85289e09c4d7bbb SHA256 6f1611c5000de7ca99141a9b853cba2c8dbd86c8e36d5efbe7ba918af773fb25 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/files/99-ntfs3g.rules b/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/files/99-ntfs3g.rules deleted file mode 100644 index 52dca40647..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/files/99-ntfs3g.rules +++ /dev/null @@ -1 +0,0 @@ -ENV{ID_FS_TYPE}=="ntfs", ENV{ID_FS_TYPE}="ntfs-3g" diff --git a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/ntfs3g-2012.1.15-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/ntfs3g-2012.1.15-r1.ebuild deleted file mode 100644 index 4ab7b3d9cb..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/ntfs3g-2012.1.15-r1.ebuild +++ /dev/null @@ -1,80 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/ntfs3g/ntfs3g-2012.1.15-r1.ebuild,v 1.11 2012/04/16 17:51:58 ssuominen Exp $ - -EAPI=4 -inherit linux-info - -MY_PN=${PN/3g/-3g} -MY_P=${MY_PN}_ntfsprogs-${PV} - -DESCRIPTION="Open source read-write NTFS driver that runs under FUSE" -HOMEPAGE="http://www.tuxera.com/community/ntfs-3g-download/" -SRC_URI="http://tuxera.com/opensource/${MY_P}.tgz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 ~arm ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="acl crypt debug +external-fuse extras +ntfsprogs static-libs suid +udev xattr" - -RDEPEND="!=dev-libs/libgcrypt-1.2.2 - >=net-libs/gnutls-1.4.4 - ) - external-fuse? ( >=sys-fs/fuse-2.8.0 )" -DEPEND="${RDEPEND} - dev-util/pkgconfig - sys-apps/attr" - -S=${WORKDIR}/${MY_P} - -DOCS="AUTHORS ChangeLog CREDITS README" - -pkg_setup() { - if use external-fuse && use kernel_linux; then - if kernel_is lt 2 6 9; then - die "Your kernel is too old." - fi - CONFIG_CHECK="~FUSE_FS" - FUSE_FS_WARNING="You need to have FUSE module built to use ntfs-3g" - linux-info_pkg_setup - fi -} - -src_configure() { - econf \ - --exec-prefix="${EPREFIX}/usr" \ - --docdir="${EPREFIX}/usr/share/doc/${PF}" \ - $(use_enable debug) \ - --enable-ldscript \ - --disable-ldconfig \ - $(use_enable acl posix-acls) \ - $(use_enable xattr xattr-mappings) \ - $(use_enable crypt crypto) \ - $(use_enable ntfsprogs) \ - $(use_enable extras) \ - $(use_enable static-libs static) \ - --with-fuse=$(use external-fuse && echo external || echo internal) -} - -src_install() { - default - - use suid && fperms u+s /usr/bin/${MY_PN} - - if use udev; then - insinto /lib/udev/rules.d - doins "${FILESDIR}"/99-ntfs3g.rules - fi - - find "${ED}" -name '*.la' -exec rm -f {} + - - # http://bugs.gentoo.org/398069 - dodir /usr/sbin - mv -vf "${D}"/sbin/* "${ED}"/usr/sbin || die - rm -rf "${D}"/sbin - - dosym mount.ntfs-3g /usr/sbin/mount.ntfs #374197 -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/ntfs3g-2012.1.15-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/ntfs3g-2012.1.15-r2.ebuild deleted file mode 100644 index 4a35f99907..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-fs/ntfs3g/ntfs3g-2012.1.15-r2.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/ntfs3g/ntfs3g-2012.1.15-r1.ebuild,v 1.11 2012/04/16 17:51:58 ssuominen Exp $ - -EAPI=4 -inherit linux-info - -MY_PN=${PN/3g/-3g} -MY_P=${MY_PN}_ntfsprogs-${PV} - -DESCRIPTION="Open source read-write NTFS driver that runs under FUSE" -HOMEPAGE="http://www.tuxera.com/community/ntfs-3g-download/" -SRC_URI="http://tuxera.com/opensource/${MY_P}.tgz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="acl crypt debug +external-fuse extras +ntfsprogs static-libs suid +udev xattr" - -RDEPEND="!=dev-libs/libgcrypt-1.2.2 - >=net-libs/gnutls-1.4.4 - ) - external-fuse? ( >=sys-fs/fuse-2.8.0 )" -DEPEND="${RDEPEND} - dev-util/pkgconfig - sys-apps/attr" - -S=${WORKDIR}/${MY_P} - -DOCS="AUTHORS ChangeLog CREDITS README" - -pkg_setup() { - if use external-fuse && use kernel_linux; then - if kernel_is lt 2 6 9; then - die "Your kernel is too old." - fi - CONFIG_CHECK="~FUSE_FS" - FUSE_FS_WARNING="You need to have FUSE module built to use ntfs-3g" - linux-info_pkg_setup - fi -} - -src_configure() { - econf \ - --exec-prefix="${EPREFIX}/usr" \ - --docdir="${EPREFIX}/usr/share/doc/${PF}" \ - $(use_enable debug) \ - --enable-ldscript \ - --disable-ldconfig \ - $(use_enable acl posix-acls) \ - $(use_enable xattr xattr-mappings) \ - $(use_enable crypt crypto) \ - $(use_enable ntfsprogs) \ - $(use_enable extras) \ - $(use_enable static-libs static) \ - --with-fuse=$(use external-fuse && echo external || echo internal) -} - -src_install() { - default - - # If suid is used, change the ntfs-3g binary to "root:ntfs-3g rws--x---" - # See crosbug.com/19887 for details. - if use suid; then - fowners root:ntfs-3g /usr/bin/${MY_PN} - fperms u=rwxs,g=x,o= /usr/bin/${MY_PN} - fi - - if use udev; then - insinto /lib/udev/rules.d - doins "${FILESDIR}"/99-ntfs3g.rules - fi - - find "${ED}" -name '*.la' -exec rm -f {} + - - # http://bugs.gentoo.org/398069 - dodir /usr/sbin - mv -vf "${D}"/sbin/* "${ED}"/usr/sbin || die - rm -rf "${D}"/sbin - - dosym mount.ntfs-3g /usr/sbin/mount.ntfs #374197 -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/Manifest deleted file mode 100644 index 53ae91a75c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST acpid-1.0.10-netlink3.tar.bz2 84647 RMD160 e677ce9a4c1a3bb3412c72b4afbfbf8336f0442e SHA1 fd01f9cb7856ab40c8f5ce6467944982e3202e59 SHA256 883a95e08c32fd7864de83ec3f5b51082bb16e7b200a40aa518be6de7d84d66e diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/acpid-1.0.10_p3-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/acpid-1.0.10_p3-r1.ebuild deleted file mode 100644 index 1dc67c29f1..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/acpid-1.0.10_p3-r1.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-power/acpid/acpid-1.0.10_p3.ebuild,v 1.3 2009/05/07 16:20:16 armin76 Exp $ - -inherit toolchain-funcs - -MY_P="${P%_p*}-netlink${PV#*_p}" -S="${WORKDIR}/${MY_P}" - -DESCRIPTION="Daemon for Advanced Configuration and Power Interface" -HOMEPAGE="http://acpid.sourceforge.net" -SRC_URI="http://tedfelix.com/linux/${MY_P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ia64 -ppc x86" -IUSE="" - -DEPEND="sys-apps/sed" -RDEPEND="" - -src_unpack() { - unpack ${A} - sed -i -e '/^CFLAGS /{s:=:+=:;s:-Werror::;s:-O2 -g::}' "${S}"/Makefile || die -} - -src_compile() { - emake CC="$(tc-getCC)" INSTPREFIX="${D}" || die "emake failed" -} - -src_install() { - emake INSTPREFIX="${D}" install || die "emake install failed" - - dodoc README Changelog TODO || die - - newinitd "${FILESDIR}"/${PN}-1.0.6-init.d acpid || die - newconfd "${FILESDIR}"/${PN}-1.0.6-conf.d acpid || die -} - -pkg_postinst() { - echo - einfo "You may wish to read the Gentoo Linux Power Management Guide," - einfo "which can be found online at:" - einfo " http://www.gentoo.org/doc/en/power-management-guide.xml" - echo -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/files/acpid-1.0.6-conf.d b/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/files/acpid-1.0.6-conf.d deleted file mode 100644 index 30329760fc..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/files/acpid-1.0.6-conf.d +++ /dev/null @@ -1,6 +0,0 @@ -# /etc/conf.d/acpid: config file for /etc/init.d/acpid - -# Options to pass to the acpid daemon. -# See the acpid(8) man page for more info. - -ACPID_OPTIONS="" diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/files/acpid-1.0.6-init.d b/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/files/acpid-1.0.6-init.d deleted file mode 100644 index aa169802c9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/acpid/files/acpid-1.0.6-init.d +++ /dev/null @@ -1,39 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-power/acpid/files/acpid-1.0.6-init.d,v 1.3 2009/01/19 04:48:49 vapier Exp $ - -opts="reload" - -depend() { - need localmount - use logger - before hald -} - -checkconfig() { - if [ ! -e /proc/acpi ] ; then - eerror "ACPI support has not been compiled into the kernel" - return 1 - fi -} - -start() { - checkconfig || return 1 - - ebegin "Starting acpid" - start-stop-daemon --start --quiet --exec /usr/sbin/acpid -- ${ACPID_OPTIONS} - eend $? -} - -stop() { - ebegin "Stopping acpid" - start-stop-daemon --stop --exec /usr/sbin/acpid - eend $? -} - -reload() { - ebegin "Reloading acpid configuration" - start-stop-daemon --stop --oknodo --exec /usr/sbin/acpid --signal HUP - eend $? -} diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/Manifest deleted file mode 100644 index 1fc4162ec8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST pm-utils-1.4.1.tar.gz 208687 RMD160 04798d6d3aa3bbbfbca6dc48037916b425714108 SHA1 9aacb9b4a5f11f751d94f5257c6c54460f106197 SHA256 8ed899032866d88b2933a1d34cc75e8ae42dcde20e1cc21836baaae3d4370c0b diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-bluetooth-sync.patch b/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-bluetooth-sync.patch deleted file mode 100644 index b41f32cf91..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-bluetooth-sync.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 640b53438c20818b3e344343b58b1f1765606a85 Mon Sep 17 00:00:00 2001 -From: Martin Pitt -Date: Mon, 31 Jan 2011 15:30:01 +0100 -Subject: [PATCH] 49bluetooth: Wait for btusb module to get unused - -The 49bluetooth hook disables /proc/acpi/ibm/bluetooth but this isn't -synchronous, i. e. it doesn't wait until the module usage count actually drops -to 0. Due to that, it's impossible to add btusb to SUSPEND_MODULES (on some -models/older kernels you need to do that to fix suspend problems), as at that -point the module is still in use. - -On my system (ThinkPad X201) the module takes between 0.3 and 0.5 seconds to -unload, so use 100 ms wait steps with a timeout of 2 seconds. - -Bug: https://bugs.freedesktop.org//show_bug.cgi?id=33759 -Bug-Ubuntu: https://launchpad.net/bugs/698331 ---- - pm/sleep.d/49bluetooth | 9 +++++++++ - 1 files changed, 9 insertions(+), 0 deletions(-) - -diff --git a/pm/sleep.d/49bluetooth b/pm/sleep.d/49bluetooth -index d46ba49..0dc1909 100755 ---- a/pm/sleep.d/49bluetooth -+++ b/pm/sleep.d/49bluetooth -@@ -12,6 +12,15 @@ suspend_bluetooth() - if grep -q enabled /proc/acpi/ibm/bluetooth; then - savestate ibm_bluetooth enable - echo disable > /proc/acpi/ibm/bluetooth -+ -+ # wait for up to 2 seconds for the module to actually get -+ # unused -+ TIMEOUT=20 -+ while [ $TIMEOUT -ge 0 ]; do -+ [ `cat /sys/module/btusb/refcnt` = 0 ] && break -+ TIMEOUT=$((TIMEOUT-1)) -+ sleep 0.1 -+ done - else - savestate ibm_bluetooth disable - fi --- -1.7.2.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-disable-sata-alpm.patch b/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-disable-sata-alpm.patch deleted file mode 100644 index 7b5494932c..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-disable-sata-alpm.patch +++ /dev/null @@ -1,26 +0,0 @@ -Description: Disable SATA link power management by default, as it still causes disk errors and corruptions on many hardware. -Author: Martin Pitt -Bug-Ubuntu: https://launchpad.net/bugs/539467 - -Index: pm-utils/pm/power.d/sata_alpm -=================================================================== ---- pm-utils.orig/pm/power.d/sata_alpm 2011-02-01 15:53:09.164867778 +0100 -+++ pm-utils/pm/power.d/sata_alpm 2011-02-01 15:53:28.954867786 +0100 -@@ -2,7 +2,7 @@ - - . "${PM_FUNCTIONS}" - --SATA_ALPM_ENABLE=${SATA_ALPM_ENABLE:-true} -+SATA_ALPM_ENABLE=${SATA_ALPM_ENABLE:-false} - - help() { - cat < -To: submit@bugs.debian.org -Subject: [pm-utils] wrong path in intel-audio-powersave (and a small bug) -Date: Sat, 25 Sep 2010 11:27:30 +0200 - -In the script intel-audio-powersave is this loop - -for dev in /sys/module/snd_*/parameters/power_save; do - [ -w "$dev/parameters/power_save" ] || continue - printf "Setting power savings for $s to %d..." "$dev##*/" "$1" - echo $1 > "$dev/parameters/power_save" && echo Done. || echo Failed. -done - -I think it should be - -for dev in /sys/module/snd_*; do - [ -w "$dev/parameters/power_save" ] || continue - printf "Setting power savings for %s to %d..." "${dev##*/}" "$1" - echo $1 > "$dev/parameters/power_save" && echo Done. || echo Failed. -done - - -This fixes the two bugs. - -diff --git a/pm/power.d/intel-audio-powersave b/pm/power.d/intel-audio-powersave -index 36675a8..da63e40 100644 ---- a/pm/power.d/intel-audio-powersave -+++ b/pm/power.d/intel-audio-powersave -@@ -20,9 +20,9 @@ EOF - - audio_powersave() { - [ "$INTEL_AUDIO_POWERSAVE" = "true" ] || exit $NA -- for dev in /sys/module/snd_*/parameters/power_save; do -+ for dev in /sys/module/snd_*; do - [ -w "$dev/parameters/power_save" ] || continue -- printf "Setting power savings for $s to %d..." "$dev##*/" "$1" -+ printf "Setting power savings for %s to %d..." "${dev##*/}" "$1" - echo $1 > "$dev/parameters/power_save" && echo Done. || echo Failed. - done - } diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-logging-append.patch b/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-logging-append.patch deleted file mode 100644 index 987e0570a9..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/files/1.4.1-logging-append.patch +++ /dev/null @@ -1,19 +0,0 @@ -Author: James Westby -Description: Do not clear the log file on each operation, but instead append to it. - This makes debugging of several suspends much easier. -Bug: https://bugs.freedesktop.org/show_bug.cgi?id=25255 -Bug-Ubuntu: https://launchpad.net/bugs/410352 - -Index: pm-utils/pm/pm-functions.in -=================================================================== ---- pm-utils.orig/pm/pm-functions.in 2010-07-05 18:41:21.118322244 +0200 -+++ pm-utils/pm/pm-functions.in 2010-07-05 18:41:24.126325221 +0200 -@@ -271,7 +271,7 @@ - return 1 - fi - export LOGGING=true -- exec > "$1" 2>&1 -+ exec >> "$1" 2>&1 - } - - check_suspend() { [ -n "$SUSPEND_MODULE" ]; } diff --git a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/pm-utils-1.4.1-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/pm-utils-1.4.1-r2.ebuild deleted file mode 100644 index 105030cfaf..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-power/pm-utils/pm-utils-1.4.1-r2.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-power/pm-utils/pm-utils-1.4.1.ebuild,v 1.10 2010/12/12 16:50:12 armin76 Exp $ - -EAPI=2 -inherit multilib - -DESCRIPTION="Suspend and hibernation utilities" -HOMEPAGE="http://pm-utils.freedesktop.org/" -SRC_URI="http://pm-utils.freedesktop.org/releases/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86" -IUSE="alsa debug networkmanager ntp video_cards_intel video_cards_radeon" - -vbetool="!video_cards_intel? ( sys-apps/vbetool )" -DEPEND="!=sys-power/powermgmt-base-1.31[-pm-utils]" -RDEPEND="${DEPEND} - sys-apps/dbus - >=sys-apps/util-linux-2.13 - sys-power/pm-quirks - alsa? ( media-sound/alsa-utils ) - networkmanager? ( net-misc/networkmanager ) - ntp? ( || ( net-misc/ntp net-misc/openntpd ) ) - amd64? ( ${vbetool} ) - x86? ( ${vbetool} ) - video_cards_radeon? ( app-laptop/radeontool )" - -src_prepare() { - local ignore="01grub" - use networkmanager || ignore+=" 55NetworkManager" - use ntp || ignore+=" 90clock" - - # this kills our usb ethernet devices - ignore+=" disable_wol" - - # don't touch vm settings - ignore+=" laptop-mode" - - use debug && echo 'PM_DEBUG="true"' > "${T}"/gentoo - echo "HOOK_BLACKLIST=\"${ignore}\"" >> "${T}"/gentoo -} - -src_configure() { - econf \ - --docdir=/usr/share/doc/${PF} \ - --disable-dependency-tracking \ - --disable-doc -} - -src_install() { - emake DESTDIR="${D}" install || die - dodoc AUTHORS ChangeLog NEWS pm/HOWTO* README* TODO ||die - doman man/*.{1,8} || die - - insinto /etc/pm/config.d - doins "${T}"/gentoo || die -}