From ce0424b2e68538f0e0c1b882300541ceed0d27e3 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Wed, 1 Jan 2014 03:24:22 +0000 Subject: Wed Jan 1 03:20:52 UTC 2014 --- community/cuetools/PKGBUILD | 8 ++++-- community/cuetools/cuetag-fix_spaces.diff | 46 +++++++++++++++++++++++++++++++ community/dos2unix/PKGBUILD | 6 ++-- community/gdc/PKGBUILD | 6 ++-- community/gdc/folders.diff | 27 ++++-------------- community/lxappearance/PKGBUILD | 12 ++++---- 6 files changed, 68 insertions(+), 37 deletions(-) create mode 100644 community/cuetools/cuetag-fix_spaces.diff (limited to 'community') diff --git a/community/cuetools/PKGBUILD b/community/cuetools/PKGBUILD index 1bb3325e1..c320597fc 100644 --- a/community/cuetools/PKGBUILD +++ b/community/cuetools/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 98850 2013-10-20 09:41:43Z stativ $ +# $Id: PKGBUILD 103244 2013-12-31 11:13:25Z stativ $ # Maintainer: Lukas Jirkovsky pkgname=cuetools pkgver=1.4.0 -pkgrel=1 +pkgrel=2 pkgdesc="Cue and toc file parsers and utilities" arch=('i686' 'x86_64') url="https://github.com/svend/cuetools" @@ -10,14 +10,16 @@ url="https://github.com/svend/cuetools" license=('GPL') depends=('glibc') source=("https://github.com/svend/cuetools/archive/${pkgver}.tar.gz" - "fix_build_with_automake-1.12.diff") + "cuetag-fix_spaces.diff" "fix_build_with_automake-1.12.diff") md5sums=('4492dae2b3f9e077f6455a1f1cddef3b' + '60f4aba26e529e48dbedd2adef917117' '67a3b32711d1a1f508be6ed0f1bdadf3') prepare() { cd "$srcdir/$pkgname-$pkgver" patch -Np1 < "$srcdir/fix_build_with_automake-1.12.diff" || true + patch -Np1 < "$srcdir/cuetag-fix_spaces.diff" || true aclocal autoheader diff --git a/community/cuetools/cuetag-fix_spaces.diff b/community/cuetools/cuetag-fix_spaces.diff new file mode 100644 index 000000000..f240e9d37 --- /dev/null +++ b/community/cuetools/cuetag-fix_spaces.diff @@ -0,0 +1,46 @@ +From 21ee6cc40f02693928efbc4f3beeb681950c16b5 Mon Sep 17 00:00:00 2001 +From: Svend Sorensen +Date: Sat, 23 Nov 2013 17:23:01 -0800 +Subject: [PATCH] cuetag: Fix handling of spaces in file names + +Fixes #14 +--- + src/tools/cuetag.sh | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/src/tools/cuetag.sh b/src/tools/cuetag.sh +index f26fa20..448920f 100755 +--- a/src/tools/cuetag.sh ++++ b/src/tools/cuetag.sh +@@ -182,16 +182,15 @@ main() + ntrack=$(cueprint -d '%N' "$cue_file") + trackno=1 + +- FILES= FIELDS= ++ NUM_FILES=0 FIELDS= + for arg in "$@"; do + case "$arg" in +- *.*) FILES="$FILES $arg";; ++ *.*) NUM_FILES=$(expr $NUM_FILES + 1);; + *) FIELDS="$FIELDS $arg";; + esac + done + +- set -- $FILES +- if [ $# -ne $ntrack ]; then ++ if [ $NUM_FILES -ne $ntrack ]; then + echo "warning: number of files does not match number of tracks" + fi + +@@ -209,7 +208,7 @@ main() + *.[Tt][Xx][Tt]) + vorbis $trackno "$file" + ;; +- *) ++ *.*) + echo "$file: uknown file type" + ;; + esac +-- +1.8.5.1 + diff --git a/community/dos2unix/PKGBUILD b/community/dos2unix/PKGBUILD index 47107ad65..a5c9ff60d 100644 --- a/community/dos2unix/PKGBUILD +++ b/community/dos2unix/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 83060 2013-01-27 09:35:12Z bpiotrowski $ +# $Id: PKGBUILD 103260 2013-12-31 20:20:56Z jelle $ # Maintainer: Bartłomiej Piotrowski # Contributor: Renato Garcia # Contributor: Gerson E. Ruotolo pkgname=dos2unix -pkgver=6.0.3 +pkgver=6.0.4 pkgrel=1 pkgdesc='Text file format converter' arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ depends=('glibc') makedepends=('perl') conflicts=('hd2u') source=("http://waterlan.home.xs4all.nl/${pkgname}/${pkgname}-${pkgver}.tar.gz") -sha256sums=('f5268c5b28a1983537210c72b3fd43f4aad17a8dacb6727b615b56dca2ef9a04') +sha256sums=('66bd224d4a7fbe13a3b61aa7083b5ef74cf6448a3670606c669f46a84bb9b37a') build() { cd $srcdir/$pkgname-$pkgver diff --git a/community/gdc/PKGBUILD b/community/gdc/PKGBUILD index 3ed37cf9a..9d3fbad0a 100644 --- a/community/gdc/PKGBUILD +++ b/community/gdc/PKGBUILD @@ -5,7 +5,7 @@ pkgname=('gdc' 'libgphobos-devel') pkgver=4.8.2 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') url="https://github.com/D-Programming-GDC/GDC" license=('GPL') @@ -17,7 +17,7 @@ source=(ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz folders.diff) sha256sums=('e4e2202b15f8ba323f88c65de0e4190b0630a4b2e70b0653526b31e946877ead' 'SKIP' - '88a1f1315633e9dde18637ff5239898abd94dca9a39fdb211a66555dd84c2fec') + '805d1130394e3ff18ae7043e111fe2ea045a7da6f290d298a670f9e2c35ba533') groups=('dlang' 'dlang-gdc') conflicts=('gdc1-bin' 'gdc1-hg' 'gdc-git') @@ -72,7 +72,7 @@ package_gdc() depends=('gcc' 'binutils') optdepends=('libgphobos-devel: D standard library, GDC version') provides=("d-compiler") - pkgdesc="Compiler for D programming language wich uses gcc backend" + pkgdesc="Compiler for D programming language which uses gcc backend (2.064.2 frontend version)" install -D -m755 $srcdir/gcc-build/gcc/gdc $pkgdir/usr/bin/gdc install -D -m755 $srcdir/gcc-build/gcc/cc1d $pkgdir/usr/lib/gcc/$CHOST/$pkgver/cc1d diff --git a/community/gdc/folders.diff b/community/gdc/folders.diff index 05fc9991a..cf89e5d3d 100644 --- a/community/gdc/folders.diff +++ b/community/gdc/folders.diff @@ -1,33 +1,16 @@ -diff --git a/gcc/d/Make-lang.in b/gcc/d/Make-lang.in -index 9570bf3..52addc0 100644 ---- a/gcc/d/Make-lang.in -+++ b/gcc/d/Make-lang.in -@@ -25,10 +25,10 @@ D_TARGET_INSTALL_NAME = $(target_alias)-$(shell echo gdc|sed '$(program_transfor - - # This should be configured - ifeq ($(host), $(target)) -- D_include_dir = `echo $(exec_prefix) | sed -e 's|^$(prefix)||' -e 's|/[^/]*|/..|g'`/include/d/$(version) -+ D_include_dir = `echo $(exec_prefix) | sed -e 's|^$(prefix)||' -e 's|/[^/]*|/..|g'`/include/dlang/gdc/$(version) - gcc_d_include_dir = $(libsubdir)/$(unlibsubdir)/..$(D_include_dir) - else -- gcc_d_include_dir = $(libsubdir)/include/d -+ gcc_d_include_dir = $(libsubdir)/include/dlang/gdc - endif - - diff --git a/libphobos/configure.ac b/libphobos/configure.ac -index dfb8fec..0b88ff4 100644 +index 69dfc35..89b8136 100644 --- a/libphobos/configure.ac +++ b/libphobos/configure.ac -@@ -220,9 +220,9 @@ dnl (# Default case for install directory for include files.) and on +@@ -215,9 +215,9 @@ dnl (# Default case for install directory for include files.) and on # will have to modify gcc/configure.ac .. # For now, basic workaround for cross compilers .. - if test "${host}" != "${build}"; then + if test "${host}" != "${target}"; then - gdc_include_dir='${libdir}/gcc/${host_alias}'/${d_gcc_ver}/include/d -+ gdc_include_dir='${libdir}/gcc/${host_alias}'/${d_gcc_ver}/include/dlang/ ++ gdc_include_dir='${libdir}/gcc/${host_alias}'/${d_gcc_ver}/include/dlang else - gdc_include_dir='${prefix}'/include/d/${d_gcc_ver} -+ gdc_include_dir='${prefix}'/include/dlang/gdc/${d_gcc_ver} ++ gdc_include_dir='${prefix}'/include/dlang/gcc fi AC_SUBST(gdc_include_dir) AC_ARG_WITH([cross-host], diff --git a/community/lxappearance/PKGBUILD b/community/lxappearance/PKGBUILD index 731b016b9..120f419df 100644 --- a/community/lxappearance/PKGBUILD +++ b/community/lxappearance/PKGBUILD @@ -1,11 +1,11 @@ -#$Id: PKGBUILD 101232 2013-11-20 09:52:30Z bpiotrowski $ -# Maintainer: Bartłomiej Piotrowski +#$Id: PKGBUILD 103242 2013-12-31 06:53:57Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski # Contributor: Angel Velasquez # Contributor: Geoffroy Carrier pkgname=lxappearance -pkgver=0.5.3 -pkgrel=2 +pkgver=0.5.4 +pkgrel=1 pkgdesc='Feature-rich GTK+ theme switcher of the LXDE Desktop' arch=('i686' 'x86_64') license=('GPL2') @@ -13,8 +13,8 @@ url='http://lxde.org/' groups=('lxde') depends=('gtk2' 'dbus-glib') makedepends=('intltool') -source=(http://downloads.sourceforge.net/sourceforge/lxde/${pkgname}-${pkgver}.tar.gz) -md5sums=('9dfdc9bd45519d51b9df2ad6650c36f5') +source=(http://downloads.sourceforge.net/sourceforge/lxde/$pkgname-$pkgver.tar.xz) +md5sums=('c7b8c18368f757a8a60f21cb46d7d9b3') build() { cd $pkgname-$pkgver -- cgit v1.2.3-54-g00ecf From 3cbc40e327b77b23d48f55c76c0efde35a5dad16 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Thu, 2 Jan 2014 03:39:37 +0000 Subject: Thu Jan 2 03:36:39 UTC 2014 --- community/mpv/PKGBUILD | 6 +++--- core/kmod/PKGBUILD | 7 ++++--- extra/gnucash/PKGBUILD | 14 +++++++------- extra/gnucash/gnucash.install | 2 ++ extra/qsynth/PKGBUILD | 6 +++--- libre/soundkonverter-libre/PKGBUILD | 6 +++--- libre/xbmc-libre/PKGBUILD | 9 +++++---- 7 files changed, 27 insertions(+), 23 deletions(-) (limited to 'community') diff --git a/community/mpv/PKGBUILD b/community/mpv/PKGBUILD index ba55e1e7a..39e1bd0c1 100644 --- a/community/mpv/PKGBUILD +++ b/community/mpv/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 103194 2013-12-29 19:04:18Z bpiotrowski $ +# $Id: PKGBUILD 103267 2014-01-01 22:33:16Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Eivind Uggedal pkgname=mpv -pkgver=0.3.0 +pkgver=0.3.1 pkgrel=1 pkgdesc='Video player based on MPlayer/mplayer2' arch=('i686' 'x86_64') @@ -18,7 +18,7 @@ makedepends=('mesa' 'python-docutils' 'waf') options=('!emptydirs' '!buildflags') install=mpv.install source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz) -md5sums=('47c9ea5fc8cf0c15cc6a15631bfbc770') +md5sums=('f7e4091eb9ce058ce35b4bc1b6c4f3a2') build() { cd $pkgname-$pkgver diff --git a/core/kmod/PKGBUILD b/core/kmod/PKGBUILD index a3aa17840..9856163cc 100644 --- a/core/kmod/PKGBUILD +++ b/core/kmod/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 197816 2013-10-30 11:04:03Z allan $ +# $Id: PKGBUILD 203021 2014-01-01 17:44:12Z dreisner $ # Maintainer: Dave Reisner pkgname=kmod -pkgver=15 +pkgver=16 pkgrel=1 pkgdesc="Linux kernel module handling" arch=('i686' 'x86_64') @@ -10,12 +10,13 @@ url='http://git.kernel.org/?p=utils/kernel/kmod/kmod.git;a=summary' license=('GPL2') depends=('glibc' 'zlib') makedepends=('gtk-doc') +options=('strip' 'debug') provides=('module-init-tools=3.16' 'libkmod.so') conflicts=('module-init-tools') replaces=('module-init-tools') source=("ftp://ftp.kernel.org/pub/linux/utils/kernel/$pkgname/$pkgname-$pkgver.tar.xz" "depmod-search.conf") -md5sums=('d03372179ed2cfa0c52b6672cf438901' +md5sums=('3006a0287211212501cdfe1211b29f09' 'dd62cbf62bd8f212f51ef8c43bec9a77') build() { diff --git a/extra/gnucash/PKGBUILD b/extra/gnucash/PKGBUILD index ed4d7e3f7..360db097e 100644 --- a/extra/gnucash/PKGBUILD +++ b/extra/gnucash/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 198654 2013-11-01 13:54:39Z eric $ -# Maintainer: Aaron Griffin +# $Id: PKGBUILD 203018 2014-01-01 13:31:09Z juergen $ +# Maintainer: Juergen Hoetzel # Contributor: Mark Schneider pkgname=gnucash -pkgver=2.4.13 -pkgrel=2 +pkgver=2.6.0 +pkgrel=1 pkgdesc="A personal and small-business financial-accounting application" arch=('i686' 'x86_64') url="http://www.gnucash.org" license=("GPL") -depends=('gtkhtml' 'slib' 'goffice0.8' 'libgnomeui' 'libdbi-drivers' 'aqbanking' 'desktop-file-utils') +depends=('slib' 'goffice0.8' 'libgnomeui' 'libdbi-drivers' 'aqbanking' 'desktop-file-utils' 'webkitgtk2') makedepends=('intltool') optdepends=('evince: for print preview' 'perl-finance-quote: for stock information lookups' @@ -17,7 +17,7 @@ optdepends=('evince: for print preview' options=('!makeflags' '!emptydirs') install=gnucash.install source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('cd28d4e7d84d71ade56173734d634ccadc59ed81') +sha1sums=('9715468bbe9e4cef6559bfa9825d51ac10d6ff84') prepare() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -28,7 +28,7 @@ build() { cd "${srcdir}/${pkgname}-${pkgver}" export GUILE=/usr/bin/guile1.8 ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc \ - --libexecdir=/usr/lib --disable-schemas-install --enable-ofx --enable-aqbanking + --libexecdir=/usr/lib --disable-schemas-compile --enable-ofx --enable-aqbanking make } diff --git a/extra/gnucash/gnucash.install b/extra/gnucash/gnucash.install index d6a48c31b..d9de2f545 100644 --- a/extra/gnucash/gnucash.install +++ b/extra/gnucash/gnucash.install @@ -10,6 +10,7 @@ post_install() { for f in ${info_files[@]}; do usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null done + glib-compile-schemas usr/share/glib-2.0/schemas } pre_upgrade() { @@ -31,4 +32,5 @@ pre_remove() { post_remove() { update-desktop-database -q gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + glib-compile-schemas usr/share/glib-2.0/schemas } diff --git a/extra/qsynth/PKGBUILD b/extra/qsynth/PKGBUILD index 1af07faba..5cf2230ff 100644 --- a/extra/qsynth/PKGBUILD +++ b/extra/qsynth/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 183182 2013-04-18 15:40:20Z schiv $ +# $Id: PKGBUILD 203027 2014-01-01 20:51:27Z schiv $ # Maintainer: Ray Rashif # Contributor: damir pkgname=qsynth -pkgver=0.3.7 +pkgver=0.3.8 pkgrel=1 pkgdesc="Qt GUI for FluidSynth" arch=('i686' 'x86_64') @@ -11,7 +11,7 @@ url="http://qsynth.sourceforge.net/" license=('GPL') depends=('fluidsynth' 'qt4') source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=('a101a50a7ecfb7319482a5022df1d58b') +md5sums=('affdd9ddff4798b1d3dae3c99b57bc5a') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/libre/soundkonverter-libre/PKGBUILD b/libre/soundkonverter-libre/PKGBUILD index 80b19719e..aba64f230 100644 --- a/libre/soundkonverter-libre/PKGBUILD +++ b/libre/soundkonverter-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 94548 2013-07-26 17:20:11Z stativ $ +# $Id: PKGBUILD 103245 2013-12-31 11:33:47Z stativ $ # Maintainer: Lukas Jirkovsky # Contributor: Mateusz Herych # Contributor: Eric Belanger @@ -7,7 +7,7 @@ _pkgname=soundkonverter pkgname=soundkonverter-libre -pkgver=2.0.4 +pkgver=2.0.5 pkgrel=1 pkgdesc="Front-end to various audio converters, without nonfree faac and mac recommendation" arch=('i686' 'x86_64') @@ -36,7 +36,7 @@ conflicts=$_pkgname provides=$_pkgname=$pkgver install=$_pkgname.install source=("http://kde-apps.org/CONTENT/content-files/29024-${_pkgname}-${pkgver}.tar.gz") -md5sums=('8b6684e693bf1af604dec8fab837447b') +md5sums=('42f7dd8fe5f4d8d18d41c2b1302322ee') build() { cd "$srcdir"/$_pkgname-$pkgver diff --git a/libre/xbmc-libre/PKGBUILD b/libre/xbmc-libre/PKGBUILD index 2809f8248..947c48e8a 100644 --- a/libre/xbmc-libre/PKGBUILD +++ b/libre/xbmc-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 103051 2013-12-25 20:34:37Z idevolder $ +# $Id: PKGBUILD 103255 2013-12-31 14:34:57Z bpiotrowski $ # Maintainer: Sergej Pupykin # Contributor: Brad Fanella # Contributor: [vEX] @@ -11,7 +11,7 @@ _pkgname=xbmc pkgname=xbmc-libre pkgver=12.3 _codename=Frodo -pkgrel=1 +pkgrel=4 pkgdesc="A software media player and entertainment hub for digital media, with libarchive recommendation" arch=('i686' 'x86_64') url="http://xbmc.org" @@ -21,7 +21,7 @@ depends=('hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva' 'glew' 'libssh' 'libmicrohttpd' 'libxrandr' 'sdl_mixer' 'sdl_image' 'python2' 'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'mesa-demos' 'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez-libs' 'glu' - 'tinyxml' 'taglib') + 'tinyxml' 'taglib' 'ffmpeg-compat') makedepends=('boost' 'cmake' 'gperf' 'nasm' 'libxinerama' 'zip' 'libvdpau' 'libcec' 'udisks' 'upower' 'mesa' 'doxygen' 'swig' 'java-environment') optdepends=('libcec: support for Pulse-Eight USB-CEC adapter' @@ -61,6 +61,7 @@ build() { # Configuring XBMC export PYTHON_VERSION=2 # external python v2 + export PKG_CONFIG_PATH=/usr/lib/ffmpeg-compat/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=$_prefix --exec-prefix=$_prefix \ --disable-debug \ --enable-optimizations \ @@ -92,7 +93,7 @@ build() { --enable-libusb \ --enable-libcec \ --enable-external-libraries \ - --disable-external-ffmpeg + --enable-external-ffmpeg # Now (finally) build make } -- cgit v1.2.3-54-g00ecf From f72cb0ced39aca827b5269eba5455dbf846410e2 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Fri, 3 Jan 2014 03:19:39 +0000 Subject: Fri Jan 3 03:17:00 UTC 2014 --- community/acpi/PKGBUILD | 25 +- community/busybox/PKGBUILD | 10 +- community/busybox/config | 64 +- community/flickcurl/PKGBUILD | 8 +- community/glibc-static/PKGBUILD | 122 +++ .../glibc-2.18-getaddrinfo-CVE-2013-4458.patch | 41 + .../glibc-2.18-getaddrinfo-assertion.patch | 39 + community/glibc-static/glibc-2.18-make-4.patch | 45 + .../glibc-2.18-malloc-corrupt-CVE-2013-4332.patch | 54 ++ .../glibc-2.18-ptr-mangle-CVE-2013-4788.patch | 485 ++++++++++ .../glibc-2.18-readdir_r-CVE-2013-4237.patch | 281 ++++++ .../glibc-2.18-strcoll-CVE-2012-4412+4424.patch | 1004 ++++++++++++++++++++ .../glibc-static/glibc-2.18-strstr-hackfix.patch | 13 + community/hedgewars/PKGBUILD | 6 +- community/hwinfo/PKGBUILD | 24 +- community/kbibtex/PKGBUILD | 17 +- community/kbibtex/kbibtex.install | 6 +- community/lilypond/PKGBUILD | 18 +- community/minitube/PKGBUILD | 16 +- community/minitube/minitube-missing-locale.patch | 12 + community/mpv/PKGBUILD | 15 +- .../mpv/mpv-0.3.1-always_respect_sector_size.patch | 34 + community/pymol/PKGBUILD | 18 +- community/python-pmw/PKGBUILD | 18 +- community/qtractor/PKGBUILD | 6 +- community/virtualgl/PKGBUILD | 6 +- ...-all-addresses-in-first-connection-attemp.patch | 47 + core/curl/PKGBUILD | 12 +- core/s-nail/PKGBUILD | 6 +- extra/graphicsmagick/PKGBUILD | 18 +- extra/graphicsmagick/benign.patch | 43 - extra/libsidplayfp/PKGBUILD | 9 +- extra/opencv/PKGBUILD | 10 +- extra/qjackctl/PKGBUILD | 6 +- extra/qsynth/PKGBUILD | 2 +- extra/snd/PKGBUILD | 22 +- extra/snd/type_error.patch | 12 - extra/whois/PKGBUILD | 8 +- libre/icecat-noscript/PKGBUILD | 6 +- libre/iceweasel-noscript/PKGBUILD | 6 +- libre/pacman/PKGBUILD | 7 +- libre/qupzilla-libre/PKGBUILD | 14 +- 42 files changed, 2372 insertions(+), 243 deletions(-) create mode 100644 community/glibc-static/PKGBUILD create mode 100644 community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch create mode 100644 community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch create mode 100644 community/glibc-static/glibc-2.18-make-4.patch create mode 100644 community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch create mode 100644 community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch create mode 100644 community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch create mode 100644 community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch create mode 100644 community/glibc-static/glibc-2.18-strstr-hackfix.patch create mode 100644 community/minitube/minitube-missing-locale.patch create mode 100644 community/mpv/mpv-0.3.1-always_respect_sector_size.patch create mode 100644 core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch delete mode 100644 extra/graphicsmagick/benign.patch delete mode 100644 extra/snd/type_error.patch (limited to 'community') diff --git a/community/acpi/PKGBUILD b/community/acpi/PKGBUILD index 634c26b0f..564505917 100644 --- a/community/acpi/PKGBUILD +++ b/community/acpi/PKGBUILD @@ -1,24 +1,27 @@ -# $Id: PKGBUILD 148027 2012-01-30 03:41:28Z dan $ +# $Id: PKGBUILD 103278 2014-01-02 12:22:39Z arodseth $ +# Maintainer: Alexander Rødseth # Contributor: Judd Vinet pkgname=acpi -pkgver=1.6 +pkgver=1.7 pkgrel=1 -pkgdesc="Linux ACPI client providing battery, AC power, and thermal readings" -arch=('i686' 'x86_64') -url="http://sourceforge.net/projects/acpiclient" -depends=('glibc') -source=(http://downloads.sourceforge.net/acpiclient/$pkgname-$pkgver.tar.gz) +pkgdesc='Client for battery, power, and thermal readings' +arch=('x86_64' 'i686') +url='http://sourceforge.net/projects/acpiclient/' license=('GPL2') -sha256sums=('ed61d20400c4fd3965dde9b49ab3ac74da02f8eca1a55454f7a1ac3fa1fd5c31') +depends=('glibc') +source=("http://downloads.sourceforge.net/acpiclient/$pkgname-$pkgver.tar.gz") +sha256sums=('d7a504b61c716ae5b7e81a0c67a50a51f06c7326f197b66a4b823de076a35005') build() { - cd $srcdir/$pkgname-$pkgver + cd "$pkgname-$pkgver" + ./configure --prefix=/usr make } package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install + make -C "$pkgname-$pkgver" DESTDIR"=$pkgdir" install } + +# vim:set ts=2 sw=2 et: diff --git a/community/busybox/PKGBUILD b/community/busybox/PKGBUILD index 99a1f8681..1e565d1f8 100644 --- a/community/busybox/PKGBUILD +++ b/community/busybox/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 93409 2013-07-03 10:50:24Z spupykin $ +# $Id: PKGBUILD 103299 2014-01-02 22:41:35Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Jens Pranaitis pkgname=busybox -pkgver=1.21.1 +pkgver=1.22.0 pkgrel=1 pkgdesc="Utilities for rescue and embedded systems" arch=("i686" "x86_64") url="http://www.busybox.net" license=('GPL') -makedepends=("make" "gcc" "sed" "ncurses") +makedepends=("make" "gcc" "sed" "ncurses" "glibc-static") source=($url/downloads/$pkgname-$pkgver.tar.bz2 config) install=busybox.install -md5sums=('795394f83903b5eec6567d51eebb417e' - '3fbd88dc6327ff0455c17409efdbab79') +md5sums=('ac1881d1cdeb0729b22c663feaf1c663' + 'e7c697e37b2120f0e0a354c48180cde4') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/busybox/config b/community/busybox/config index b89c59b12..276cf9f63 100644 --- a/community/busybox/config +++ b/community/busybox/config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.21.1 -# Wed Jul 3 14:35:32 2013 +# Busybox version: 1.22.0 +# Fri Jan 3 01:07:04 2014 # CONFIG_HAVE_DOT_CONFIG=y @@ -135,7 +135,14 @@ CONFIG_FEATURE_SEAMLESS_Z=y CONFIG_AR=y CONFIG_FEATURE_AR_LONG_FILENAMES=y CONFIG_FEATURE_AR_CREATE=y +CONFIG_UNCOMPRESS=y +CONFIG_GUNZIP=y CONFIG_BUNZIP2=y +CONFIG_UNLZMA=y +CONFIG_FEATURE_LZMA_FAST=y +CONFIG_LZMA=y +CONFIG_UNXZ=y +CONFIG_XZ=y CONFIG_BZIP2=y CONFIG_CPIO=y CONFIG_FEATURE_CPIO_O=y @@ -143,7 +150,6 @@ CONFIG_FEATURE_CPIO_O=y # CONFIG_DPKG is not set # CONFIG_DPKG_DEB is not set # CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set -CONFIG_GUNZIP=y CONFIG_GZIP=y # CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set CONFIG_GZIP_FAST=0 @@ -163,12 +169,6 @@ CONFIG_FEATURE_TAR_TO_COMMAND=y CONFIG_FEATURE_TAR_UNAME_GNAME=y # CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set # CONFIG_FEATURE_TAR_SELINUX is not set -CONFIG_UNCOMPRESS=y -CONFIG_UNLZMA=y -CONFIG_FEATURE_LZMA_FAST=y -CONFIG_LZMA=y -CONFIG_UNXZ=y -CONFIG_XZ=y CONFIG_UNZIP=y # @@ -186,6 +186,7 @@ CONFIG_GROUPS=y CONFIG_TEST=y CONFIG_FEATURE_TEST_64=y CONFIG_TOUCH=y +CONFIG_FEATURE_TOUCH_NODEREF=y CONFIG_FEATURE_TOUCH_SUSV3=y CONFIG_TR=y CONFIG_FEATURE_TR_CLASSES=y @@ -363,7 +364,16 @@ CONFIG_WHICH=y # # Editors # +CONFIG_AWK=y +# CONFIG_FEATURE_AWK_LIBM is not set +CONFIG_FEATURE_AWK_GNU_EXTENSIONS=y +CONFIG_CMP=y +CONFIG_DIFF=y +# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set +CONFIG_FEATURE_DIFF_DIR=y +CONFIG_ED=y CONFIG_PATCH=y +CONFIG_SED=y CONFIG_VI=y CONFIG_FEATURE_VI_MAX_LEN=4096 # CONFIG_FEATURE_VI_8BIT is not set @@ -378,14 +388,6 @@ CONFIG_FEATURE_VI_SETOPTS=y CONFIG_FEATURE_VI_SET=y CONFIG_FEATURE_VI_WIN_RESIZE=y CONFIG_FEATURE_VI_ASK_TERMINAL=y -CONFIG_AWK=y -# CONFIG_FEATURE_AWK_LIBM is not set -CONFIG_CMP=y -CONFIG_DIFF=y -# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set -CONFIG_FEATURE_DIFF_DIR=y -CONFIG_ED=y -CONFIG_SED=y CONFIG_FEATURE_ALLOW_EXEC=y # @@ -528,6 +530,7 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep" # Linux System Utilities # CONFIG_BLOCKDEV=y +CONFIG_FSTRIM=y CONFIG_MDEV=y CONFIG_FEATURE_MDEV_CONF=y CONFIG_FEATURE_MDEV_RENAME=y @@ -614,26 +617,27 @@ CONFIG_VOLUMEID=y # # Filesystem/Volume identification # -CONFIG_FEATURE_VOLUMEID_EXT=y CONFIG_FEATURE_VOLUMEID_BTRFS=y -CONFIG_FEATURE_VOLUMEID_REISERFS=y -CONFIG_FEATURE_VOLUMEID_FAT=y +CONFIG_FEATURE_VOLUMEID_CRAMFS=y CONFIG_FEATURE_VOLUMEID_EXFAT=y +CONFIG_FEATURE_VOLUMEID_EXT=y +CONFIG_FEATURE_VOLUMEID_F2FS=y +CONFIG_FEATURE_VOLUMEID_FAT=y CONFIG_FEATURE_VOLUMEID_HFS=y +CONFIG_FEATURE_VOLUMEID_ISO9660=y CONFIG_FEATURE_VOLUMEID_JFS=y -CONFIG_FEATURE_VOLUMEID_XFS=y +CONFIG_FEATURE_VOLUMEID_LINUXRAID=y +CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y +CONFIG_FEATURE_VOLUMEID_LUKS=y CONFIG_FEATURE_VOLUMEID_NILFS=y CONFIG_FEATURE_VOLUMEID_NTFS=y -CONFIG_FEATURE_VOLUMEID_ISO9660=y -CONFIG_FEATURE_VOLUMEID_UDF=y -CONFIG_FEATURE_VOLUMEID_LUKS=y -CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y -CONFIG_FEATURE_VOLUMEID_CRAMFS=y +CONFIG_FEATURE_VOLUMEID_OCFS2=y +CONFIG_FEATURE_VOLUMEID_REISERFS=y CONFIG_FEATURE_VOLUMEID_ROMFS=y CONFIG_FEATURE_VOLUMEID_SQUASHFS=y CONFIG_FEATURE_VOLUMEID_SYSV=y -CONFIG_FEATURE_VOLUMEID_OCFS2=y -CONFIG_FEATURE_VOLUMEID_LINUXRAID=y +CONFIG_FEATURE_VOLUMEID_UDF=y +CONFIG_FEATURE_VOLUMEID_XFS=y # # Miscellaneous Utilities @@ -651,6 +655,7 @@ CONFIG_FEATURE_LESS_REGEXP=y # CONFIG_FEATURE_LESS_LINENUMS is not set # CONFIG_NANDWRITE is not set # CONFIG_NANDDUMP is not set +CONFIG_RFKILL=y CONFIG_SETSERIAL=y # CONFIG_UBIATTACH is not set # CONFIG_UBIDETACH is not set @@ -658,6 +663,7 @@ CONFIG_UBIMKVOL=y CONFIG_UBIRMVOL=y CONFIG_UBIRSVOL=y CONFIG_UBIUPDATEVOL=y +CONFIG_WALL=y CONFIG_ADJTIMEX=y # CONFIG_BBCONFIG is not set # CONFIG_FEATURE_COMPRESS_BBCONFIG is not set @@ -714,7 +720,6 @@ CONFIG_MOUNTPOINT=y CONFIG_MT=y CONFIG_RAIDAUTORUN=y CONFIG_READAHEAD=y -CONFIG_RFKILL=y CONFIG_RUNLEVEL=y CONFIG_RX=y CONFIG_SETSID=y @@ -725,7 +730,6 @@ CONFIG_TIME=y CONFIG_TIMEOUT=y CONFIG_TTYSIZE=y CONFIG_VOLNAME=y -CONFIG_WALL=y CONFIG_WATCHDOG=y # diff --git a/community/flickcurl/PKGBUILD b/community/flickcurl/PKGBUILD index 6c0cd5ab6..25b1ae489 100644 --- a/community/flickcurl/PKGBUILD +++ b/community/flickcurl/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 100106 2013-11-01 17:15:29Z spupykin $ +# $Id: PKGBUILD 103303 2014-01-02 22:42:11Z spupykin $ # Maintainer: Sergej Pupykin pkgname=flickcurl -pkgver=1.24 -pkgrel=2 +pkgver=1.25 +pkgrel=1 pkgdesc="C library for the Flickr API" arch=(i686 x86_64) url="http://librdf.org/flickcurl/" license=('GPL') depends=('raptor' 'curl') source=(http://download.dajobe.org/flickcurl/flickcurl-$pkgver.tar.gz) -md5sums=('7cf6a627465471d76a5f4dc31099d9cf') +md5sums=('9598526f2b9a0a4619d1f1563300e72a') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/glibc-static/PKGBUILD b/community/glibc-static/PKGBUILD new file mode 100644 index 000000000..cff060a60 --- /dev/null +++ b/community/glibc-static/PKGBUILD @@ -0,0 +1,122 @@ +# $Id: PKGBUILD 197798 2013-10-30 10:37:54Z allan $ +# Maintainer: Allan McRae + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc +# NOTE: valgrind requires rebuilt with each major glibc version + +# NOTE: adjust version in install script when locale files are updated + +pkgname=glibc-static +pkgver=2.18 +pkgrel=1 +pkgdesc="GNU C Library" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/libc" +license=('GPL' 'LGPL') +groups=('base') +depends=('linux-api-headers>=3.7' 'tzdata' 'filesystem>=2013.01') +makedepends=('gcc>=4.7') +options=('!strip' 'staticlibs') +source=(http://ftp.gnu.org/gnu/libc/glibc-${pkgver}.tar.xz{,.sig} + glibc-2.18-make-4.patch + glibc-2.18-readdir_r-CVE-2013-4237.patch + glibc-2.18-malloc-corrupt-CVE-2013-4332.patch + glibc-2.18-strcoll-CVE-2012-4412+4424.patch + glibc-2.18-ptr-mangle-CVE-2013-4788.patch + glibc-2.18-getaddrinfo-CVE-2013-4458.patch + glibc-2.18-getaddrinfo-assertion.patch + glibc-2.18-strstr-hackfix.patch) +md5sums=('88fbbceafee809e82efd52efa1e3c58f' + 'SKIP' + 'e1883c2d1b01ff73650db5f5bb5a5a52' + '154da6bf5a5248f42a7bf5bf08e01a47' + 'b79561ab9dce900e9bbeaf0d49927c2b' + 'c7264b99d0f7e51922a4d3126182c40a' + '9749ba386b08a8fe53e7ecede9bf2dfb' + '71329fccb8eb583fb0d67b55f1e8df68' + 'd4d86add33f22125777e0ecff06bc9bb' + '4441f6dfe7d75ced1fa75e54dd21d36e') + +prepare() { + cd ${srcdir}/glibc-${pkgver} + + # compatibility with make-4.0 (submitted upstream) + patch -p1 -i $srcdir/glibc-2.18-make-4.patch + + # upstream commit 91ce4085 + patch -p1 -i $srcdir/glibc-2.18-readdir_r-CVE-2013-4237.patch + + # upstream commits 1159a193, 55e17aad and b73ed247 + patch -p1 -i $srcdir/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch + + # upstream commits 1326ba1a, 141f3a77 and 303e567a + patch -p1 -i $srcdir/glibc-2.18-strcoll-CVE-2012-4412+4424.patch + + # upstream commits c61b4d41 and 0b1f8e35 + patch -p1 -i $srcdir/glibc-2.18-ptr-mangle-CVE-2013-4788.patch + + # upstream commit 7cbcdb36 + patch -p1 -i $srcdir/glibc-2.18-getaddrinfo-CVE-2013-4458.patch + + # upstream commit 894f3f10 + patch -p1 -i $srcdir/glibc-2.18-getaddrinfo-assertion.patch + + # hack fix for strstr issues on x86 + patch -p1 -i $srcdir/glibc-2.18-strstr-hackfix.patch + + mkdir ${srcdir}/glibc-build +} + +build() { + cd ${srcdir}/glibc-build + + if [[ ${CARCH} = "i686" ]]; then + # Hack to fix NPTL issues with Xen, only required on 32bit platforms + # TODO: make separate glibc-xen package for i686 + export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs" + fi + + echo "slibdir=/usr/lib" >> configparms + echo "sbindir=/usr/bin" >> configparms + echo "rootsbindir=/usr/bin" >> configparms + + # remove hardening options for building libraries + CFLAGS=${CFLAGS/-fstack-protector/} + CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} + + ${srcdir}/glibc-${pkgver}/configure --prefix=/usr \ + --libdir=/usr/lib --libexecdir=/usr/lib \ + --with-headers=/usr/include \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-add-ons=nptl,libidn \ + --enable-obsolete-rpc \ + --enable-kernel=2.6.32 \ + --enable-bind-now --disable-profile \ + --enable-stackguard-randomization \ + --enable-lock-elision \ + --enable-multi-arch + + # build libraries with hardening disabled + echo "build-programs=no" >> configparms + make + + # re-enable hardening for programs + sed -i "/build-programs=/s#no#yes#" configparms + echo "CC += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms + echo "CXX += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms + make + + # remove harding in preparation to run test-suite + sed -i '4,6d' configparms +} + +package() { + cd ${srcdir}/glibc-build + make install_root=${pkgdir} install + rm -rf $pkgdir/usr/{bin,include,share,lib/{pkgconfig,audit,gconv,getconf}} + rm -rf $pkgdir/{etc,var} + rm -f $pkgdir/usr/lib/*.so* + rm -f $pkgdir/usr/lib/*.o + rm -f $pkgdir/usr/lib/lib{bsd-compat,c,c_nonshared,dl,g,ieee,m,mcheck,pthread,pthread_nonshared,rpcsvc}.a + strip $STRIP_STATIC $pkgdir/usr/lib/*.a +} diff --git a/community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch b/community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch new file mode 100644 index 000000000..a7bc67c6f --- /dev/null +++ b/community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch @@ -0,0 +1,41 @@ +diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c +index e6ce4cf..8ff74b4 100644 +--- a/sysdeps/posix/getaddrinfo.c ++++ b/sysdeps/posix/getaddrinfo.c +@@ -197,7 +197,22 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, + &rc, &herrno, NULL, &localcanon)); \ + if (rc != ERANGE || herrno != NETDB_INTERNAL) \ + break; \ +- tmpbuf = extend_alloca (tmpbuf, tmpbuflen, 2 * tmpbuflen); \ ++ if (!malloc_tmpbuf && __libc_use_alloca (alloca_used + 2 * tmpbuflen)) \ ++ tmpbuf = extend_alloca_account (tmpbuf, tmpbuflen, 2 * tmpbuflen, \ ++ alloca_used); \ ++ else \ ++ { \ ++ char *newp = realloc (malloc_tmpbuf ? tmpbuf : NULL, \ ++ 2 * tmpbuflen); \ ++ if (newp == NULL) \ ++ { \ ++ result = -EAI_MEMORY; \ ++ goto free_and_return; \ ++ } \ ++ tmpbuf = newp; \ ++ malloc_tmpbuf = true; \ ++ tmpbuflen = 2 * tmpbuflen; \ ++ } \ + } \ + if (status == NSS_STATUS_SUCCESS && rc == 0) \ + h = &th; \ +@@ -209,7 +224,8 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, + { \ + __set_h_errno (herrno); \ + _res.options |= old_res_options & RES_USE_INET6; \ +- return -EAI_SYSTEM; \ ++ result = -EAI_SYSTEM; \ ++ goto free_and_return; \ + } \ + if (herrno == TRY_AGAIN) \ + no_data = EAI_AGAIN; \ +-- +1.8.4.1 + diff --git a/community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch b/community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch new file mode 100644 index 000000000..2f1f7c694 --- /dev/null +++ b/community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch @@ -0,0 +1,39 @@ +diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c +index 0f4b885..e6ce4cf 100644 +--- a/sysdeps/posix/getaddrinfo.c ++++ b/sysdeps/posix/getaddrinfo.c +@@ -1666,13 +1666,13 @@ rfc3484_sort (const void *p1, const void *p2, void *arg) + + /* Fill in the results in all the records. */ + for (int i = 0; i < src->nresults; ++i) +- if (src->results[i].index == a1_index) ++ if (a1_index != -1 && src->results[i].index == a1_index) + { + assert (src->results[i].native == -1 + || src->results[i].native == a1_native); + src->results[i].native = a1_native; + } +- else if (src->results[i].index == a2_index) ++ else if (a2_index != -1 && src->results[i].index == a2_index) + { + assert (src->results[i].native == -1 + || src->results[i].native == a2_native); +@@ -2532,7 +2532,14 @@ getaddrinfo (const char *name, const char *service, + tmp.addr[0] = 0; + tmp.addr[1] = 0; + tmp.addr[2] = htonl (0xffff); +- tmp.addr[3] = sinp->sin_addr.s_addr; ++ /* Special case for lo interface, the source address ++ being possibly different than the interface ++ address. */ ++ if ((ntohl(sinp->sin_addr.s_addr) & 0xff000000) ++ == 0x7f000000) ++ tmp.addr[3] = htonl(0x7f000001); ++ else ++ tmp.addr[3] = sinp->sin_addr.s_addr; + } + else + { +-- +1.8.4.1 + diff --git a/community/glibc-static/glibc-2.18-make-4.patch b/community/glibc-static/glibc-2.18-make-4.patch new file mode 100644 index 000000000..374933464 --- /dev/null +++ b/community/glibc-static/glibc-2.18-make-4.patch @@ -0,0 +1,45 @@ +From dc76f0c32dae689a08aa21a1d206d4cd62adb278 Mon Sep 17 00:00:00 2001 +From: Marc-Antoine Perennou +Date: Thu, 10 Oct 2013 14:26:12 +0900 +Subject: [PATCH] configure: allow building with GNU Make 4 + +Currently, configure errors telling make 4 is too old +since it does not match our regexp. + +configure.in: allow GNU Make 4.* + +Signed-off-by: Marc-Antoine Perennou +--- + configure | 2 +- + configure.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 5e2f4d0..e139bf0 100755 +--- a/configure ++++ b/configure +@@ -4761,7 +4761,7 @@ $as_echo_n "checking version of $MAKE... " >&6; } + ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` + case $ac_prog_version in + '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; +- 3.79* | 3.[89]*) ++ 3.79* | 3.[89]* | 4.*) + ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; + *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; + +diff --git a/configure.in b/configure.in +index a7f9881..95c36b6 100644 +--- a/configure.in ++++ b/configure.in +@@ -984,7 +984,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, + critic_missing="$critic_missing gcc") + AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, + [GNU Make[^0-9]*\([0-9][0-9.]*\)], +- [3.79* | 3.[89]*], critic_missing="$critic_missing make") ++ [3.79* | 3.[89]* | 4.*], critic_missing="$critic_missing make") + + AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, + [GNU gettext.* \([0-9]*\.[0-9.]*\)], +-- +1.8.4.1 + diff --git a/community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch b/community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch new file mode 100644 index 000000000..093db86c9 --- /dev/null +++ b/community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch @@ -0,0 +1,54 @@ +diff --git a/malloc/malloc.c b/malloc/malloc.c +index dd295f5..7f43ba3 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -3082,6 +3082,13 @@ __libc_pvalloc(size_t bytes) + size_t page_mask = GLRO(dl_pagesize) - 1; + size_t rounded_bytes = (bytes + page_mask) & ~(page_mask); + ++ /* Check for overflow. */ ++ if (bytes > SIZE_MAX - 2*pagesz - MINSIZE) ++ { ++ __set_errno (ENOMEM); ++ return 0; ++ } ++ + void *(*hook) (size_t, size_t, const void *) = + force_reg (__memalign_hook); + if (__builtin_expect (hook != NULL, 0)) +diff --git a/malloc/malloc.c b/malloc/malloc.c +index 7f43ba3..3148c5f 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -3046,6 +3046,13 @@ __libc_valloc(size_t bytes) + + size_t pagesz = GLRO(dl_pagesize); + ++ /* Check for overflow. */ ++ if (bytes > SIZE_MAX - pagesz - MINSIZE) ++ { ++ __set_errno (ENOMEM); ++ return 0; ++ } ++ + void *(*hook) (size_t, size_t, const void *) = + force_reg (__memalign_hook); + if (__builtin_expect (hook != NULL, 0)) +diff --git a/malloc/malloc.c b/malloc/malloc.c +index 3148c5f..f7718a9 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -3015,6 +3015,13 @@ __libc_memalign(size_t alignment, size_t bytes) + /* Otherwise, ensure that it is at least a minimum chunk size */ + if (alignment < MINSIZE) alignment = MINSIZE; + ++ /* Check for overflow. */ ++ if (bytes > SIZE_MAX - alignment - MINSIZE) ++ { ++ __set_errno (ENOMEM); ++ return 0; ++ } ++ + arena_get(ar_ptr, bytes + alignment + MINSIZE); + if(!ar_ptr) + return 0; diff --git a/community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch b/community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch new file mode 100644 index 000000000..09a439440 --- /dev/null +++ b/community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch @@ -0,0 +1,485 @@ +diff --git a/csu/libc-start.c b/csu/libc-start.c +index e5da3ef..c898d06 100644 +--- a/csu/libc-start.c ++++ b/csu/libc-start.c +@@ -37,6 +37,12 @@ extern void __pthread_initialize_minimal (void); + in thread local area. */ + uintptr_t __stack_chk_guard attribute_relro; + # endif ++# ifndef THREAD_SET_POINTER_GUARD ++/* Only exported for architectures that don't store the pointer guard ++ value in thread local area. */ ++uintptr_t __pointer_chk_guard_local ++ attribute_relro attribute_hidden __attribute__ ((nocommon)); ++# endif + #endif + + #ifdef HAVE_PTR_NTHREADS +@@ -195,6 +201,16 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), + # else + __stack_chk_guard = stack_chk_guard; + # endif ++ ++ /* Set up the pointer guard value. */ ++ uintptr_t pointer_chk_guard = _dl_setup_pointer_guard (_dl_random, ++ stack_chk_guard); ++# ifdef THREAD_SET_POINTER_GUARD ++ THREAD_SET_POINTER_GUARD (pointer_chk_guard); ++# else ++ __pointer_chk_guard_local = pointer_chk_guard; ++# endif ++ + #endif + + /* Register the destructor of the dynamic linker if there is any. */ +diff --git a/elf/Makefile b/elf/Makefile +index aaa9534..cb8da93 100644 +--- a/elf/Makefile ++++ b/elf/Makefile +@@ -121,7 +121,8 @@ endif + tests = tst-tls1 tst-tls2 tst-tls9 tst-leaks1 \ + tst-array1 tst-array2 tst-array3 tst-array4 tst-array5 + tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static \ +- tst-leaks1-static tst-array1-static tst-array5-static ++ tst-leaks1-static tst-array1-static tst-array5-static \ ++ tst-ptrguard1-static + ifeq (yes,$(build-shared)) + tests-static += tst-tls9-static + tst-tls9-static-ENV = \ +@@ -145,7 +146,8 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \ + tst-audit1 tst-audit2 tst-audit8 \ + tst-stackguard1 tst-addr1 tst-thrlock \ + tst-unique1 tst-unique2 tst-unique3 tst-unique4 \ +- tst-initorder tst-initorder2 tst-relsort1 tst-null-argv ++ tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \ ++ tst-ptrguard1 + # reldep9 + test-srcs = tst-pathopt + selinux-enabled := $(shell cat /selinux/enforce 2> /dev/null) +@@ -1016,6 +1018,9 @@ LDFLAGS-order2mod2.so = $(no-as-needed) + tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" + tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" + ++tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child" ++tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child" ++ + $(objpfx)tst-leaks1: $(libdl) + $(objpfx)tst-leaks1-mem: $(objpfx)tst-leaks1.out + $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1.mtrace > $@ +diff --git a/elf/tst-ptrguard1-static.c b/elf/tst-ptrguard1-static.c +new file mode 100644 +index 0000000..7aff3b7 +--- /dev/null ++++ b/elf/tst-ptrguard1-static.c +@@ -0,0 +1 @@ ++#include "tst-ptrguard1.c" +diff --git a/elf/tst-ptrguard1.c b/elf/tst-ptrguard1.c +new file mode 100644 +index 0000000..c344a04 +--- /dev/null ++++ b/elf/tst-ptrguard1.c +@@ -0,0 +1,202 @@ ++/* Copyright (C) 2013 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#ifndef POINTER_CHK_GUARD ++extern uintptr_t __pointer_chk_guard; ++# define POINTER_CHK_GUARD __pointer_chk_guard ++#endif ++ ++static const char *command; ++static bool child; ++static uintptr_t ptr_chk_guard_copy; ++static bool ptr_chk_guard_copy_set; ++static int fds[2]; ++ ++static void __attribute__ ((constructor)) ++con (void) ++{ ++ ptr_chk_guard_copy = POINTER_CHK_GUARD; ++ ptr_chk_guard_copy_set = true; ++} ++ ++static int ++uintptr_t_cmp (const void *a, const void *b) ++{ ++ if (*(uintptr_t *) a < *(uintptr_t *) b) ++ return 1; ++ if (*(uintptr_t *) a > *(uintptr_t *) b) ++ return -1; ++ return 0; ++} ++ ++static int ++do_test (void) ++{ ++ if (!ptr_chk_guard_copy_set) ++ { ++ puts ("constructor has not been run"); ++ return 1; ++ } ++ ++ if (ptr_chk_guard_copy != POINTER_CHK_GUARD) ++ { ++ puts ("POINTER_CHK_GUARD changed between constructor and do_test"); ++ return 1; ++ } ++ ++ if (child) ++ { ++ write (2, &ptr_chk_guard_copy, sizeof (ptr_chk_guard_copy)); ++ return 0; ++ } ++ ++ if (command == NULL) ++ { ++ puts ("missing --command or --child argument"); ++ return 1; ++ } ++ ++#define N 16 ++ uintptr_t child_ptr_chk_guards[N + 1]; ++ child_ptr_chk_guards[N] = ptr_chk_guard_copy; ++ int i; ++ for (i = 0; i < N; ++i) ++ { ++ if (pipe (fds) < 0) ++ { ++ printf ("couldn't create pipe: %m\n"); ++ return 1; ++ } ++ ++ pid_t pid = fork (); ++ if (pid < 0) ++ { ++ printf ("fork failed: %m\n"); ++ return 1; ++ } ++ ++ if (!pid) ++ { ++ if (ptr_chk_guard_copy != POINTER_CHK_GUARD) ++ { ++ puts ("POINTER_CHK_GUARD changed after fork"); ++ exit (1); ++ } ++ ++ close (fds[0]); ++ close (2); ++ dup2 (fds[1], 2); ++ close (fds[1]); ++ ++ system (command); ++ exit (0); ++ } ++ ++ close (fds[1]); ++ ++ if (TEMP_FAILURE_RETRY (read (fds[0], &child_ptr_chk_guards[i], ++ sizeof (uintptr_t))) != sizeof (uintptr_t)) ++ { ++ puts ("could not read ptr_chk_guard value from child"); ++ return 1; ++ } ++ ++ close (fds[0]); ++ ++ pid_t termpid; ++ int status; ++ termpid = TEMP_FAILURE_RETRY (waitpid (pid, &status, 0)); ++ if (termpid == -1) ++ { ++ printf ("waitpid failed: %m\n"); ++ return 1; ++ } ++ else if (termpid != pid) ++ { ++ printf ("waitpid returned %ld != %ld\n", ++ (long int) termpid, (long int) pid); ++ return 1; ++ } ++ else if (!WIFEXITED (status) || WEXITSTATUS (status)) ++ { ++ puts ("child hasn't exited with exit status 0"); ++ return 1; ++ } ++ } ++ ++ qsort (child_ptr_chk_guards, N + 1, sizeof (uintptr_t), uintptr_t_cmp); ++ ++ /* The default pointer guard is the same as the default stack guard. ++ They are only set to default if dl_random is NULL. */ ++ uintptr_t default_guard = 0; ++ unsigned char *p = (unsigned char *) &default_guard; ++ p[sizeof (uintptr_t) - 1] = 255; ++ p[sizeof (uintptr_t) - 2] = '\n'; ++ p[0] = 0; ++ ++ /* Test if the pointer guard canaries are either randomized, ++ or equal to the default pointer guard value. ++ Even with randomized pointer guards it might happen ++ that the random number generator generates the same ++ values, but if that happens in more than half from ++ the 16 runs, something is very wrong. */ ++ int ndifferences = 0; ++ int ndefaults = 0; ++ for (i = 0; i < N; ++i) ++ { ++ if (child_ptr_chk_guards[i] != child_ptr_chk_guards[i+1]) ++ ndifferences++; ++ else if (child_ptr_chk_guards[i] == default_guard) ++ ndefaults++; ++ } ++ ++ printf ("differences %d defaults %d\n", ndifferences, ndefaults); ++ ++ if (ndifferences < N / 2 && ndefaults < N / 2) ++ { ++ puts ("pointer guard values are not randomized enough"); ++ puts ("nor equal to the default value"); ++ return 1; ++ } ++ ++ return 0; ++} ++ ++#define OPT_COMMAND 10000 ++#define OPT_CHILD 10001 ++#define CMDLINE_OPTIONS \ ++ { "command", required_argument, NULL, OPT_COMMAND }, \ ++ { "child", no_argument, NULL, OPT_CHILD }, ++#define CMDLINE_PROCESS \ ++ case OPT_COMMAND: \ ++ command = optarg; \ ++ break; \ ++ case OPT_CHILD: \ ++ child = true; \ ++ break; ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" +diff --git a/ports/sysdeps/ia64/stackguard-macros.h b/ports/sysdeps/ia64/stackguard-macros.h +index dc683c2..3907293 100644 +--- a/ports/sysdeps/ia64/stackguard-macros.h ++++ b/ports/sysdeps/ia64/stackguard-macros.h +@@ -2,3 +2,6 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("adds %0 = -8, r13;; ld8 %0 = [%0]" : "=r" (x)); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; asm ("adds %0 = -16, r13;; ld8 %0 = [%0]" : "=r" (x)); x; }) +diff --git a/ports/sysdeps/tile/stackguard-macros.h b/ports/sysdeps/tile/stackguard-macros.h +index 589ea2b..f2e041b 100644 +--- a/ports/sysdeps/tile/stackguard-macros.h ++++ b/ports/sysdeps/tile/stackguard-macros.h +@@ -4,11 +4,17 @@ + # if __WORDSIZE == 64 + # define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("addi %0, tp, -16; ld %0, %0" : "=r" (x)); x; }) ++# define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; asm ("addi %0, tp, -24; ld %0, %0" : "=r" (x)); x; }) + # else + # define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("addi %0, tp, -8; ld4s %0, %0" : "=r" (x)); x; }) ++# define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; asm ("addi %0, tp, -12; ld4s %0, %0" : "=r" (x)); x; }) + # endif + #else + # define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("addi %0, tp, -8; lw %0, %0" : "=r" (x)); x; }) ++# define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; asm ("addi %0, tp, -12; lw %0, %0" : "=r" (x)); x; }) + #endif +diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h +index ababf65..4fa3d96 100644 +--- a/sysdeps/generic/stackguard-macros.h ++++ b/sysdeps/generic/stackguard-macros.h +@@ -2,3 +2,6 @@ + + extern uintptr_t __stack_chk_guard; + #define STACK_CHK_GUARD __stack_chk_guard ++ ++extern uintptr_t __pointer_chk_guard_local; ++#define POINTER_CHK_GUARD __pointer_chk_guard_local +diff --git a/sysdeps/i386/stackguard-macros.h b/sysdeps/i386/stackguard-macros.h +index 8c31e19..0397629 100644 +--- a/sysdeps/i386/stackguard-macros.h ++++ b/sysdeps/i386/stackguard-macros.h +@@ -2,3 +2,11 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("movl %%gs:0x14, %0" : "=r" (x)); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ \ ++ uintptr_t x; \ ++ asm ("movl %%gs:%c1, %0" : "=r" (x) \ ++ : "i" (offsetof (tcbhead_t, pointer_guard))); \ ++ x; \ ++ }) +diff --git a/sysdeps/powerpc/powerpc32/stackguard-macros.h b/sysdeps/powerpc/powerpc32/stackguard-macros.h +index 839f6a4..b3d0af8 100644 +--- a/sysdeps/powerpc/powerpc32/stackguard-macros.h ++++ b/sysdeps/powerpc/powerpc32/stackguard-macros.h +@@ -2,3 +2,13 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("lwz %0,-28680(2)" : "=r" (x)); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ \ ++ uintptr_t x; \ ++ asm ("lwz %0,%1(2)" \ ++ : "=r" (x) \ ++ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \ ++ ); \ ++ x; \ ++ }) +diff --git a/sysdeps/powerpc/powerpc64/stackguard-macros.h b/sysdeps/powerpc/powerpc64/stackguard-macros.h +index 9da879c..4620f96 100644 +--- a/sysdeps/powerpc/powerpc64/stackguard-macros.h ++++ b/sysdeps/powerpc/powerpc64/stackguard-macros.h +@@ -2,3 +2,13 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("ld %0,-28688(13)" : "=r" (x)); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ \ ++ uintptr_t x; \ ++ asm ("ld %0,%1(2)" \ ++ : "=r" (x) \ ++ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \ ++ ); \ ++ x; \ ++ }) +diff --git a/sysdeps/s390/s390-32/stackguard-macros.h b/sysdeps/s390/s390-32/stackguard-macros.h +index b74c579..449e8d4 100644 +--- a/sysdeps/s390/s390-32/stackguard-macros.h ++++ b/sysdeps/s390/s390-32/stackguard-macros.h +@@ -2,3 +2,14 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("ear %0,%%a0; l %0,0x14(%0)" : "=a" (x)); x; }) ++ ++/* On s390/s390x there is no unique pointer guard, instead we use the ++ same value as the stack guard. */ ++#define POINTER_CHK_GUARD \ ++ ({ \ ++ uintptr_t x; \ ++ asm ("ear %0,%%a0; l %0,%1(%0)" \ ++ : "=a" (x) \ ++ : "i" (offsetof (tcbhead_t, stack_guard))); \ ++ x; \ ++ }) +diff --git a/sysdeps/s390/s390-64/stackguard-macros.h b/sysdeps/s390/s390-64/stackguard-macros.h +index 0cebb5f..c8270fb 100644 +--- a/sysdeps/s390/s390-64/stackguard-macros.h ++++ b/sysdeps/s390/s390-64/stackguard-macros.h +@@ -2,3 +2,17 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("ear %0,%%a0; sllg %0,%0,32; ear %0,%%a1; lg %0,0x28(%0)" : "=a" (x)); x; }) ++ ++/* On s390/s390x there is no unique pointer guard, instead we use the ++ same value as the stack guard. */ ++#define POINTER_CHK_GUARD \ ++ ({ \ ++ uintptr_t x; \ ++ asm ("ear %0,%%a0;" \ ++ "sllg %0,%0,32;" \ ++ "ear %0,%%a1;" \ ++ "lg %0,%1(%0)" \ ++ : "=a" (x) \ ++ : "i" (offsetof (tcbhead_t, stack_guard))); \ ++ x; \ ++ }) +diff --git a/sysdeps/sparc/sparc32/stackguard-macros.h b/sysdeps/sparc/sparc32/stackguard-macros.h +index c0b02b0..1eef0f1 100644 +--- a/sysdeps/sparc/sparc32/stackguard-macros.h ++++ b/sysdeps/sparc/sparc32/stackguard-macros.h +@@ -2,3 +2,6 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("ld [%%g7+0x14], %0" : "=r" (x)); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; asm ("ld [%%g7+0x18], %0" : "=r" (x)); x; }) +diff --git a/sysdeps/sparc/sparc64/stackguard-macros.h b/sysdeps/sparc/sparc64/stackguard-macros.h +index 80f0635..cc0c12c 100644 +--- a/sysdeps/sparc/sparc64/stackguard-macros.h ++++ b/sysdeps/sparc/sparc64/stackguard-macros.h +@@ -2,3 +2,6 @@ + + #define STACK_CHK_GUARD \ + ({ uintptr_t x; asm ("ldx [%%g7+0x28], %0" : "=r" (x)); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; asm ("ldx [%%g7+0x30], %0" : "=r" (x)); x; }) +diff --git a/sysdeps/x86_64/stackguard-macros.h b/sysdeps/x86_64/stackguard-macros.h +index d7fedb3..1948800 100644 +--- a/sysdeps/x86_64/stackguard-macros.h ++++ b/sysdeps/x86_64/stackguard-macros.h +@@ -4,3 +4,8 @@ + ({ uintptr_t x; \ + asm ("mov %%fs:%c1, %0" : "=r" (x) \ + : "i" (offsetof (tcbhead_t, stack_guard))); x; }) ++ ++#define POINTER_CHK_GUARD \ ++ ({ uintptr_t x; \ ++ asm ("mov %%fs:%c1, %0" : "=r" (x) \ ++ : "i" (offsetof (tcbhead_t, pointer_guard))); x; }) +diff --git a/elf/Makefile b/elf/Makefile +index cb8da93..27d249b 100644 +--- a/elf/Makefile ++++ b/elf/Makefile +@@ -1019,6 +1019,9 @@ tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" + tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" + + tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child" ++# When built statically, the pointer guard interface uses ++# __pointer_chk_guard_local. ++CFLAGS-tst-ptrguard1-static.c = -DPTRGUARD_LOCAL + tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child" + + $(objpfx)tst-leaks1: $(libdl) +diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h +index 4fa3d96..b4a6b23 100644 +--- a/sysdeps/generic/stackguard-macros.h ++++ b/sysdeps/generic/stackguard-macros.h +@@ -3,5 +3,10 @@ + extern uintptr_t __stack_chk_guard; + #define STACK_CHK_GUARD __stack_chk_guard + ++#ifdef PTRGUARD_LOCAL + extern uintptr_t __pointer_chk_guard_local; +-#define POINTER_CHK_GUARD __pointer_chk_guard_local ++# define POINTER_CHK_GUARD __pointer_chk_guard_local ++#else ++extern uintptr_t __pointer_chk_guard; ++# define POINTER_CHK_GUARD __pointer_chk_guard ++#endif diff --git a/community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch b/community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch new file mode 100644 index 000000000..7277ca229 --- /dev/null +++ b/community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch @@ -0,0 +1,281 @@ +diff --git a/manual/conf.texi b/manual/conf.texi +index 7eb8b36..c720063 100644 +--- a/manual/conf.texi ++++ b/manual/conf.texi +@@ -1149,6 +1149,9 @@ typed ahead as input. @xref{I/O Queues}. + @deftypevr Macro int NAME_MAX + The uniform system limit (if any) for the length of a file name component, not + including the terminating null character. ++ ++@strong{Portability Note:} On some systems, @theglibc{} defines ++@code{NAME_MAX}, but does not actually enforce this limit. + @end deftypevr + + @comment limits.h +@@ -1157,6 +1160,9 @@ including the terminating null character. + The uniform system limit (if any) for the length of an entire file name (that + is, the argument given to system calls such as @code{open}), including the + terminating null character. ++ ++@strong{Portability Note:} @Theglibc{} does not enforce this limit ++even if @code{PATH_MAX} is defined. + @end deftypevr + + @cindex limits, pipe buffer size +@@ -1476,6 +1482,9 @@ Inquire about the value of @code{POSIX_REC_MIN_XFER_SIZE}. + Inquire about the value of @code{POSIX_REC_XFER_ALIGN}. + @end table + ++@strong{Portability Note:} On some systems, @theglibc{} does not ++enforce @code{_PC_NAME_MAX} or @code{_PC_PATH_MAX} limits. ++ + @node Utility Limits + @section Utility Program Capacity Limits + +diff --git a/manual/filesys.texi b/manual/filesys.texi +index 1df9cf2..814c210 100644 +--- a/manual/filesys.texi ++++ b/manual/filesys.texi +@@ -444,9 +444,9 @@ symbols are declared in the header file @file{dirent.h}. + @comment POSIX.1 + @deftypefun {struct dirent *} readdir (DIR *@var{dirstream}) + This function reads the next entry from the directory. It normally +-returns a pointer to a structure containing information about the file. +-This structure is statically allocated and can be rewritten by a +-subsequent call. ++returns a pointer to a structure containing information about the ++file. This structure is associated with the @var{dirstream} handle ++and can be rewritten by a subsequent call. + + @strong{Portability Note:} On some systems @code{readdir} may not + return entries for @file{.} and @file{..}, even though these are always +@@ -461,19 +461,61 @@ conditions are defined for this function: + The @var{dirstream} argument is not valid. + @end table + +-@code{readdir} is not thread safe. Multiple threads using +-@code{readdir} on the same @var{dirstream} may overwrite the return +-value. Use @code{readdir_r} when this is critical. ++To distinguish between an end-of-directory condition or an error, you ++must set @code{errno} to zero before calling @code{readdir}. To avoid ++entering an infinite loop, you should stop reading from the directory ++after the first error. ++ ++In POSIX.1-2008, @code{readdir} is not thread-safe. In @theglibc{} ++implementation, it is safe to call @code{readdir} concurrently on ++different @var{dirstream}s, but multiple threads accessing the same ++@var{dirstream} result in undefined behavior. @code{readdir_r} is a ++fully thread-safe alternative, but suffers from poor portability (see ++below). It is recommended that you use @code{readdir}, with external ++locking if multiple threads access the same @var{dirstream}. + @end deftypefun + + @comment dirent.h + @comment GNU + @deftypefun int readdir_r (DIR *@var{dirstream}, struct dirent *@var{entry}, struct dirent **@var{result}) +-This function is the reentrant version of @code{readdir}. Like +-@code{readdir} it returns the next entry from the directory. But to +-prevent conflicts between simultaneously running threads the result is +-not stored in statically allocated memory. Instead the argument +-@var{entry} points to a place to store the result. ++This function is a version of @code{readdir} which performs internal ++locking. Like @code{readdir} it returns the next entry from the ++directory. To prevent conflicts between simultaneously running ++threads the result is stored inside the @var{entry} object. ++ ++@strong{Portability Note:} It is recommended to use @code{readdir} ++instead of @code{readdir_r} for the following reasons: ++ ++@itemize @bullet ++@item ++On systems which do not define @code{NAME_MAX}, it may not be possible ++to use @code{readdir_r} safely because the caller does not specify the ++length of the buffer for the directory entry. ++ ++@item ++On some systems, @code{readdir_r} cannot read directory entries with ++very long names. If such a name is encountered, @theglibc{} ++implementation of @code{readdir_r} returns with an error code of ++@code{ENAMETOOLONG} after the final directory entry has been read. On ++other systems, @code{readdir_r} may return successfully, but the ++@code{d_name} member may not be NUL-terminated or may be truncated. ++ ++@item ++POSIX-1.2008 does not guarantee that @code{readdir} is thread-safe, ++even when access to the same @var{dirstream} is serialized. But in ++current implementations (including @theglibc{}), it is safe to call ++@code{readdir} concurrently on different @var{dirstream}s, so there is ++no need to use @code{readdir_r} in most multi-threaded programs. In ++the rare case that multiple threads need to read from the same ++@var{dirstream}, it is still better to use @code{readdir} and external ++synchronization. ++ ++@item ++It is expected that future versions of POSIX will obsolete ++@code{readdir_r} and mandate the level of thread safety for ++@code{readdir} which is provided by @theglibc{} and other ++implementations today. ++@end itemize + + Normally @code{readdir_r} returns zero and sets @code{*@var{result}} + to @var{entry}. If there are no more entries in the directory or an +@@ -481,15 +523,6 @@ error is detected, @code{readdir_r} sets @code{*@var{result}} to a + null pointer and returns a nonzero error code, also stored in + @code{errno}, as described for @code{readdir}. + +-@strong{Portability Note:} On some systems @code{readdir_r} may not +-return a NUL terminated string for the file name, even when there is no +-@code{d_reclen} field in @code{struct dirent} and the file +-name is the maximum allowed size. Modern systems all have the +-@code{d_reclen} field, and on old systems multi-threading is not +-critical. In any case there is no such problem with the @code{readdir} +-function, so that even on systems without the @code{d_reclen} member one +-could use multiple threads by using external locking. +- + It is also important to look at the definition of the @code{struct + dirent} type. Simply passing a pointer to an object of this type for + the second parameter of @code{readdir_r} might not be enough. Some +diff --git a/sysdeps/posix/dirstream.h b/sysdeps/posix/dirstream.h +index a7a074d..8e8570d 100644 +--- a/sysdeps/posix/dirstream.h ++++ b/sysdeps/posix/dirstream.h +@@ -39,6 +39,8 @@ struct __dirstream + + off_t filepos; /* Position of next entry to read. */ + ++ int errcode; /* Delayed error code. */ ++ + /* Directory block. */ + char data[0] __attribute__ ((aligned (__alignof__ (void*)))); + }; +diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c +index ddfc3a7..fc05b0f 100644 +--- a/sysdeps/posix/opendir.c ++++ b/sysdeps/posix/opendir.c +@@ -231,6 +231,7 @@ __alloc_dir (int fd, bool close_fd, int flags, const struct stat64 *statp) + dirp->size = 0; + dirp->offset = 0; + dirp->filepos = 0; ++ dirp->errcode = 0; + + return dirp; + } +diff --git a/sysdeps/posix/readdir_r.c b/sysdeps/posix/readdir_r.c +index b5a8e2e..8ed5c3f 100644 +--- a/sysdeps/posix/readdir_r.c ++++ b/sysdeps/posix/readdir_r.c +@@ -40,6 +40,7 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) + DIRENT_TYPE *dp; + size_t reclen; + const int saved_errno = errno; ++ int ret; + + __libc_lock_lock (dirp->lock); + +@@ -70,10 +71,10 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) + bytes = 0; + __set_errno (saved_errno); + } ++ if (bytes < 0) ++ dirp->errcode = errno; + + dp = NULL; +- /* Reclen != 0 signals that an error occurred. */ +- reclen = bytes != 0; + break; + } + dirp->size = (size_t) bytes; +@@ -106,29 +107,46 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) + dirp->filepos += reclen; + #endif + +- /* Skip deleted files. */ ++#ifdef NAME_MAX ++ if (reclen > offsetof (DIRENT_TYPE, d_name) + NAME_MAX + 1) ++ { ++ /* The record is very long. It could still fit into the ++ caller-supplied buffer if we can skip padding at the ++ end. */ ++ size_t namelen = _D_EXACT_NAMLEN (dp); ++ if (namelen <= NAME_MAX) ++ reclen = offsetof (DIRENT_TYPE, d_name) + namelen + 1; ++ else ++ { ++ /* The name is too long. Ignore this file. */ ++ dirp->errcode = ENAMETOOLONG; ++ dp->d_ino = 0; ++ continue; ++ } ++ } ++#endif ++ ++ /* Skip deleted and ignored files. */ + } + while (dp->d_ino == 0); + + if (dp != NULL) + { +-#ifdef GETDENTS_64BIT_ALIGNED +- /* The d_reclen value might include padding which is not part of +- the DIRENT_TYPE data structure. */ +- reclen = MIN (reclen, +- offsetof (DIRENT_TYPE, d_name) + sizeof (dp->d_name)); +-#endif + *result = memcpy (entry, dp, reclen); +-#ifdef GETDENTS_64BIT_ALIGNED ++#ifdef _DIRENT_HAVE_D_RECLEN + entry->d_reclen = reclen; + #endif ++ ret = 0; + } + else +- *result = NULL; ++ { ++ *result = NULL; ++ ret = dirp->errcode; ++ } + + __libc_lock_unlock (dirp->lock); + +- return dp != NULL ? 0 : reclen ? errno : 0; ++ return ret; + } + + #ifdef __READDIR_R_ALIAS +diff --git a/sysdeps/posix/rewinddir.c b/sysdeps/posix/rewinddir.c +index 2935a8e..d4991ad 100644 +--- a/sysdeps/posix/rewinddir.c ++++ b/sysdeps/posix/rewinddir.c +@@ -33,6 +33,7 @@ rewinddir (dirp) + dirp->filepos = 0; + dirp->offset = 0; + dirp->size = 0; ++ dirp->errcode = 0; + #ifndef NOT_IN_libc + __libc_lock_unlock (dirp->lock); + #endif +diff --git a/sysdeps/unix/sysv/linux/i386/readdir64_r.c b/sysdeps/unix/sysv/linux/i386/readdir64_r.c +index 8ebbcfd..a7d114e 100644 +--- a/sysdeps/unix/sysv/linux/i386/readdir64_r.c ++++ b/sysdeps/unix/sysv/linux/i386/readdir64_r.c +@@ -18,7 +18,6 @@ + #define __READDIR_R __readdir64_r + #define __GETDENTS __getdents64 + #define DIRENT_TYPE struct dirent64 +-#define GETDENTS_64BIT_ALIGNED 1 + + #include + +diff --git a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c +index 5ed8e95..290f2c8 100644 +--- a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c ++++ b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c +@@ -1,5 +1,4 @@ + #define readdir64_r __no_readdir64_r_decl +-#define GETDENTS_64BIT_ALIGNED 1 + #include + #undef readdir64_r + weak_alias (__readdir_r, readdir64_r) +-- +1.8.3.4 + diff --git a/community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch b/community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch new file mode 100644 index 000000000..5558c1fe9 --- /dev/null +++ b/community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch @@ -0,0 +1,1004 @@ +diff --git a/string/strcoll_l.c b/string/strcoll_l.c +index ecda08f..bb34a72 100644 +--- a/string/strcoll_l.c ++++ b/string/strcoll_l.c +@@ -41,11 +41,434 @@ + + #include "../locale/localeinfo.h" + ++/* Track status while looking for sequences in a string. */ ++typedef struct ++{ ++ int len; /* Length of the current sequence. */ ++ size_t val; /* Position of the sequence relative to the ++ previous non-ignored sequence. */ ++ size_t idxnow; /* Current index in sequences. */ ++ size_t idxmax; /* Maximum index in sequences. */ ++ size_t idxcnt; /* Current count of indices. */ ++ size_t backw; /* Current Backward sequence index. */ ++ size_t backw_stop; /* Index where the backward sequences stop. */ ++ const USTRING_TYPE *us; /* The string. */ ++ int32_t *idxarr; /* Array to cache weight indices. */ ++ unsigned char *rulearr; /* Array to cache rules. */ ++ unsigned char rule; /* Saved rule for the first sequence. */ ++ int32_t idx; /* Index to weight of the current sequence. */ ++ int32_t save_idx; /* Save looked up index of a forward ++ sequence after the last backward ++ sequence. */ ++ const USTRING_TYPE *back_us; /* Beginning of the backward sequence. */ ++} coll_seq; ++ ++/* Get next sequence. The weight indices are cached, so we don't need to ++ traverse the string. */ ++static void ++get_next_seq_cached (coll_seq *seq, int nrules, int pass, ++ const unsigned char *rulesets, ++ const USTRING_TYPE *weights) ++{ ++ size_t val = seq->val = 0; ++ int len = seq->len; ++ size_t backw_stop = seq->backw_stop; ++ size_t backw = seq->backw; ++ size_t idxcnt = seq->idxcnt; ++ size_t idxmax = seq->idxmax; ++ size_t idxnow = seq->idxnow; ++ unsigned char *rulearr = seq->rulearr; ++ int32_t *idxarr = seq->idxarr; ++ ++ while (len == 0) ++ { ++ ++val; ++ if (backw_stop != ~0ul) ++ { ++ /* There is something pushed. */ ++ if (backw == backw_stop) ++ { ++ /* The last pushed character was handled. Continue ++ with forward characters. */ ++ if (idxcnt < idxmax) ++ { ++ idxnow = idxcnt; ++ backw_stop = ~0ul; ++ } ++ else ++ { ++ /* Nothing any more. The backward sequence ++ ended with the last sequence in the string. */ ++ idxnow = ~0ul; ++ break; ++ } ++ } ++ else ++ idxnow = --backw; ++ } ++ else ++ { ++ backw_stop = idxcnt; ++ ++ while (idxcnt < idxmax) ++ { ++ if ((rulesets[rulearr[idxcnt] * nrules + pass] ++ & sort_backward) == 0) ++ /* No more backward characters to push. */ ++ break; ++ ++idxcnt; ++ } ++ ++ if (backw_stop == idxcnt) ++ { ++ /* No sequence at all or just one. */ ++ if (idxcnt == idxmax) ++ /* Note that LEN is still zero. */ ++ break; ++ ++ backw_stop = ~0ul; ++ idxnow = idxcnt++; ++ } ++ else ++ /* We pushed backward sequences. */ ++ idxnow = backw = idxcnt - 1; ++ } ++ len = weights[idxarr[idxnow]++]; ++ } ++ ++ /* Update the structure. */ ++ seq->val = val; ++ seq->len = len; ++ seq->backw_stop = backw_stop; ++ seq->backw = backw; ++ seq->idxcnt = idxcnt; ++ seq->idxnow = idxnow; ++} ++ ++/* Get next sequence. Traverse the string as required. */ ++static void ++get_next_seq (coll_seq *seq, int nrules, const unsigned char *rulesets, ++ const USTRING_TYPE *weights, const int32_t *table, ++ const USTRING_TYPE *extra, const int32_t *indirect) ++{ ++#include WEIGHT_H ++ size_t val = seq->val = 0; ++ int len = seq->len; ++ size_t backw_stop = seq->backw_stop; ++ size_t backw = seq->backw; ++ size_t idxcnt = seq->idxcnt; ++ size_t idxmax = seq->idxmax; ++ size_t idxnow = seq->idxnow; ++ unsigned char *rulearr = seq->rulearr; ++ int32_t *idxarr = seq->idxarr; ++ const USTRING_TYPE *us = seq->us; ++ ++ while (len == 0) ++ { ++ ++val; ++ if (backw_stop != ~0ul) ++ { ++ /* There is something pushed. */ ++ if (backw == backw_stop) ++ { ++ /* The last pushed character was handled. Continue ++ with forward characters. */ ++ if (idxcnt < idxmax) ++ { ++ idxnow = idxcnt; ++ backw_stop = ~0ul; ++ } ++ else ++ /* Nothing any more. The backward sequence ended with ++ the last sequence in the string. Note that LEN ++ is still zero. */ ++ break; ++ } ++ else ++ idxnow = --backw; ++ } ++ else ++ { ++ backw_stop = idxmax; ++ ++ while (*us != L('\0')) ++ { ++ int32_t tmp = findidx (&us, -1); ++ rulearr[idxmax] = tmp >> 24; ++ idxarr[idxmax] = tmp & 0xffffff; ++ idxcnt = idxmax++; ++ ++ if ((rulesets[rulearr[idxcnt] * nrules] ++ & sort_backward) == 0) ++ /* No more backward characters to push. */ ++ break; ++ ++idxcnt; ++ } ++ ++ if (backw_stop >= idxcnt) ++ { ++ /* No sequence at all or just one. */ ++ if (idxcnt == idxmax || backw_stop > idxcnt) ++ /* Note that LEN is still zero. */ ++ break; ++ ++ backw_stop = ~0ul; ++ idxnow = idxcnt; ++ } ++ else ++ /* We pushed backward sequences. */ ++ idxnow = backw = idxcnt - 1; ++ } ++ len = weights[idxarr[idxnow]++]; ++ } ++ ++ /* Update the structure. */ ++ seq->val = val; ++ seq->len = len; ++ seq->backw_stop = backw_stop; ++ seq->backw = backw; ++ seq->idxcnt = idxcnt; ++ seq->idxmax = idxmax; ++ seq->idxnow = idxnow; ++ seq->us = us; ++} ++ ++/* Get next sequence. Traverse the string as required. This function does not ++ set or use any index or rule cache. */ ++static void ++get_next_seq_nocache (coll_seq *seq, int nrules, const unsigned char *rulesets, ++ const USTRING_TYPE *weights, const int32_t *table, ++ const USTRING_TYPE *extra, const int32_t *indirect, ++ int pass) ++{ ++#include WEIGHT_H ++ size_t val = seq->val = 0; ++ int len = seq->len; ++ size_t backw_stop = seq->backw_stop; ++ size_t backw = seq->backw; ++ size_t idxcnt = seq->idxcnt; ++ size_t idxmax = seq->idxmax; ++ int32_t idx = seq->idx; ++ const USTRING_TYPE *us = seq->us; ++ ++ while (len == 0) ++ { ++ ++val; ++ if (backw_stop != ~0ul) ++ { ++ /* There is something pushed. */ ++ if (backw == backw_stop) ++ { ++ /* The last pushed character was handled. Continue ++ with forward characters. */ ++ if (idxcnt < idxmax) ++ { ++ idx = seq->save_idx; ++ backw_stop = ~0ul; ++ } ++ else ++ { ++ /* Nothing anymore. The backward sequence ended with ++ the last sequence in the string. Note that len is ++ still zero. */ ++ idx = 0; ++ break; ++ } ++ } ++ else ++ { ++ /* XXX Traverse BACKW sequences from the beginning of ++ BACKW_STOP to get the next sequence. Is ther a quicker way ++ to do this? */ ++ size_t i = backw_stop; ++ us = seq->back_us; ++ while (i < backw) ++ { ++ int32_t tmp = findidx (&us, -1); ++ idx = tmp & 0xffffff; ++ i++; ++ } ++ --backw; ++ us = seq->us; ++ } ++ } ++ else ++ { ++ backw_stop = idxmax; ++ int32_t prev_idx = idx; ++ ++ while (*us != L('\0')) ++ { ++ int32_t tmp = findidx (&us, -1); ++ unsigned char rule = tmp >> 24; ++ prev_idx = idx; ++ idx = tmp & 0xffffff; ++ idxcnt = idxmax++; ++ ++ /* Save the rule for the first sequence. */ ++ if (__glibc_unlikely (idxcnt == 0)) ++ seq->rule = rule; ++ ++ if ((rulesets[rule * nrules + pass] ++ & sort_backward) == 0) ++ /* No more backward characters to push. */ ++ break; ++ ++idxcnt; ++ } ++ ++ if (backw_stop >= idxcnt) ++ { ++ /* No sequence at all or just one. */ ++ if (idxcnt == idxmax || backw_stop > idxcnt) ++ /* Note that len is still zero. */ ++ break; ++ ++ backw_stop = ~0ul; ++ } ++ else ++ { ++ /* We pushed backward sequences. If the stream ended with the ++ backward sequence, then we process the last sequence we ++ found. Otherwise we process the sequence before the last ++ one since the last one was a forward sequence. */ ++ seq->back_us = seq->us; ++ seq->us = us; ++ backw = idxcnt; ++ if (idxmax > idxcnt) ++ { ++ backw--; ++ seq->save_idx = idx; ++ idx = prev_idx; ++ } ++ if (backw > backw_stop) ++ backw--; ++ } ++ } ++ ++ len = weights[idx++]; ++ /* Skip over indices of previous levels. */ ++ for (int i = 0; i < pass; i++) ++ { ++ idx += len; ++ len = weights[idx]; ++ idx++; ++ } ++ } ++ ++ /* Update the structure. */ ++ seq->val = val; ++ seq->len = len; ++ seq->backw_stop = backw_stop; ++ seq->backw = backw; ++ seq->idxcnt = idxcnt; ++ seq->idxmax = idxmax; ++ seq->us = us; ++ seq->idx = idx; ++} ++ ++/* Compare two sequences. This version does not use the index and rules ++ cache. */ ++static int ++do_compare_nocache (coll_seq *seq1, coll_seq *seq2, int position, ++ const USTRING_TYPE *weights) ++{ ++ int seq1len = seq1->len; ++ int seq2len = seq2->len; ++ size_t val1 = seq1->val; ++ size_t val2 = seq2->val; ++ int idx1 = seq1->idx; ++ int idx2 = seq2->idx; ++ int result = 0; ++ ++ /* Test for position if necessary. */ ++ if (position && val1 != val2) ++ { ++ result = val1 > val2 ? 1 : -1; ++ goto out; ++ } ++ ++ /* Compare the two sequences. */ ++ do ++ { ++ if (weights[idx1] != weights[idx2]) ++ { ++ /* The sequences differ. */ ++ result = weights[idx1] - weights[idx2]; ++ goto out; ++ } ++ ++ /* Increment the offsets. */ ++ ++idx1; ++ ++idx2; ++ ++ --seq1len; ++ --seq2len; ++ } ++ while (seq1len > 0 && seq2len > 0); ++ ++ if (position && seq1len != seq2len) ++ result = seq1len - seq2len; ++ ++out: ++ seq1->len = seq1len; ++ seq2->len = seq2len; ++ seq1->idx = idx1; ++ seq2->idx = idx2; ++ return result; ++} ++ ++/* Compare two sequences using the index cache. */ ++static int ++do_compare (coll_seq *seq1, coll_seq *seq2, int position, ++ const USTRING_TYPE *weights) ++{ ++ int seq1len = seq1->len; ++ int seq2len = seq2->len; ++ size_t val1 = seq1->val; ++ size_t val2 = seq2->val; ++ int32_t *idx1arr = seq1->idxarr; ++ int32_t *idx2arr = seq2->idxarr; ++ int idx1now = seq1->idxnow; ++ int idx2now = seq2->idxnow; ++ int result = 0; ++ ++ /* Test for position if necessary. */ ++ if (position && val1 != val2) ++ { ++ result = val1 > val2 ? 1 : -1; ++ goto out; ++ } ++ ++ /* Compare the two sequences. */ ++ do ++ { ++ if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) ++ { ++ /* The sequences differ. */ ++ result = weights[idx1arr[idx1now]] - weights[idx2arr[idx2now]]; ++ goto out; ++ } ++ ++ /* Increment the offsets. */ ++ ++idx1arr[idx1now]; ++ ++idx2arr[idx2now]; ++ ++ --seq1len; ++ --seq2len; ++ } ++ while (seq1len > 0 && seq2len > 0); ++ ++ if (position && seq1len != seq2len) ++ result = seq1len - seq2len; ++ ++out: ++ seq1->len = seq1len; ++ seq2->len = seq2len; ++ return result; ++} ++ + int +-STRCOLL (s1, s2, l) +- const STRING_TYPE *s1; +- const STRING_TYPE *s2; +- __locale_t l; ++STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l) + { + struct __locale_data *current = l->__locales[LC_COLLATE]; + uint_fast32_t nrules = current->values[_NL_ITEM_INDEX (_NL_COLLATE_NRULES)].word; +@@ -56,34 +479,6 @@ STRCOLL (s1, s2, l) + const USTRING_TYPE *weights; + const USTRING_TYPE *extra; + const int32_t *indirect; +- uint_fast32_t pass; +- int result = 0; +- const USTRING_TYPE *us1; +- const USTRING_TYPE *us2; +- size_t s1len; +- size_t s2len; +- int32_t *idx1arr; +- int32_t *idx2arr; +- unsigned char *rule1arr; +- unsigned char *rule2arr; +- size_t idx1max; +- size_t idx2max; +- size_t idx1cnt; +- size_t idx2cnt; +- size_t idx1now; +- size_t idx2now; +- size_t backw1_stop; +- size_t backw2_stop; +- size_t backw1; +- size_t backw2; +- int val1; +- int val2; +- int position; +- int seq1len; +- int seq2len; +- int use_malloc; +- +-#include WEIGHT_H + + if (nrules == 0) + return STRCMP (s1, s2); +@@ -98,7 +493,6 @@ STRCOLL (s1, s2, l) + current->values[_NL_ITEM_INDEX (CONCAT(_NL_COLLATE_EXTRA,SUFFIX))].string; + indirect = (const int32_t *) + current->values[_NL_ITEM_INDEX (CONCAT(_NL_COLLATE_INDIRECT,SUFFIX))].string; +- use_malloc = 0; + + assert (((uintptr_t) table) % __alignof__ (table[0]) == 0); + assert (((uintptr_t) weights) % __alignof__ (weights[0]) == 0); +@@ -106,18 +500,13 @@ STRCOLL (s1, s2, l) + assert (((uintptr_t) indirect) % __alignof__ (indirect[0]) == 0); + + /* We need this a few times. */ +- s1len = STRLEN (s1); +- s2len = STRLEN (s2); ++ size_t s1len = STRLEN (s1); ++ size_t s2len = STRLEN (s2); + + /* Catch empty strings. */ +- if (__builtin_expect (s1len == 0, 0) || __builtin_expect (s2len == 0, 0)) ++ if (__glibc_unlikely (s1len == 0) || __glibc_unlikely (s2len == 0)) + return (s1len != 0) - (s2len != 0); + +- /* We need the elements of the strings as unsigned values since they +- are used as indeces. */ +- us1 = (const USTRING_TYPE *) s1; +- us2 = (const USTRING_TYPE *) s2; +- + /* Perform the first pass over the string and while doing this find + and store the weights for each character. Since we want this to + be as fast as possible we are using `alloca' to store the temporary +@@ -127,411 +516,124 @@ STRCOLL (s1, s2, l) + + Please note that the localedef programs makes sure that `position' + is not used at the first level. */ +- if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))) +- { +- idx1arr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1)); +- idx2arr = &idx1arr[s1len]; +- rule1arr = (unsigned char *) &idx2arr[s2len]; +- rule2arr = &rule1arr[s1len]; +- +- if (idx1arr == NULL) +- /* No memory. Well, go with the stack then. +- +- XXX Once this implementation is stable we will handle this +- differently. Instead of precomputing the indeces we will +- do this in time. This means, though, that this happens for +- every pass again. */ +- goto try_stack; +- use_malloc = 1; +- } +- else +- { +- try_stack: +- idx1arr = (int32_t *) alloca (s1len * sizeof (int32_t)); +- idx2arr = (int32_t *) alloca (s2len * sizeof (int32_t)); +- rule1arr = (unsigned char *) alloca (s1len); +- rule2arr = (unsigned char *) alloca (s2len); +- } + +- idx1cnt = 0; +- idx2cnt = 0; +- idx1max = 0; +- idx2max = 0; +- idx1now = 0; +- idx2now = 0; +- backw1_stop = ~0ul; +- backw2_stop = ~0ul; +- backw1 = ~0ul; +- backw2 = ~0ul; +- seq1len = 0; +- seq2len = 0; +- position = rulesets[0] & sort_position; +- while (1) +- { +- val1 = 0; +- val2 = 0; +- +- /* Get the next non-IGNOREd element for string `s1'. */ +- if (seq1len == 0) +- do +- { +- ++val1; +- +- if (backw1_stop != ~0ul) +- { +- /* The is something pushed. */ +- if (backw1 == backw1_stop) +- { +- /* The last pushed character was handled. Continue +- with forward characters. */ +- if (idx1cnt < idx1max) +- { +- idx1now = idx1cnt; +- backw1_stop = ~0ul; +- } +- else +- /* Nothing anymore. The backward sequence ended with +- the last sequence in the string. Note that seq1len +- is still zero. */ +- break; +- } +- else +- idx1now = --backw1; +- } +- else +- { +- backw1_stop = idx1max; +- +- while (*us1 != L('\0')) +- { +- int32_t tmp = findidx (&us1, -1); +- rule1arr[idx1max] = tmp >> 24; +- idx1arr[idx1max] = tmp & 0xffffff; +- idx1cnt = idx1max++; +- +- if ((rulesets[rule1arr[idx1cnt] * nrules] +- & sort_backward) == 0) +- /* No more backward characters to push. */ +- break; +- ++idx1cnt; +- } +- +- if (backw1_stop >= idx1cnt) +- { +- /* No sequence at all or just one. */ +- if (idx1cnt == idx1max || backw1_stop > idx1cnt) +- /* Note that seq1len is still zero. */ +- break; +- +- backw1_stop = ~0ul; +- idx1now = idx1cnt; +- } +- else +- /* We pushed backward sequences. */ +- idx1now = backw1 = idx1cnt - 1; +- } +- } +- while ((seq1len = weights[idx1arr[idx1now]++]) == 0); +- +- /* And the same for string `s2'. */ +- if (seq2len == 0) +- do +- { +- ++val2; +- +- if (backw2_stop != ~0ul) +- { +- /* The is something pushed. */ +- if (backw2 == backw2_stop) +- { +- /* The last pushed character was handled. Continue +- with forward characters. */ +- if (idx2cnt < idx2max) +- { +- idx2now = idx2cnt; +- backw2_stop = ~0ul; +- } +- else +- /* Nothing anymore. The backward sequence ended with +- the last sequence in the string. Note that seq2len +- is still zero. */ +- break; +- } +- else +- idx2now = --backw2; +- } +- else +- { +- backw2_stop = idx2max; +- +- while (*us2 != L('\0')) +- { +- int32_t tmp = findidx (&us2, -1); +- rule2arr[idx2max] = tmp >> 24; +- idx2arr[idx2max] = tmp & 0xffffff; +- idx2cnt = idx2max++; +- +- if ((rulesets[rule2arr[idx2cnt] * nrules] +- & sort_backward) == 0) +- /* No more backward characters to push. */ +- break; +- ++idx2cnt; +- } +- +- if (backw2_stop >= idx2cnt) +- { +- /* No sequence at all or just one. */ +- if (idx2cnt == idx2max || backw2_stop > idx2cnt) +- /* Note that seq1len is still zero. */ +- break; +- +- backw2_stop = ~0ul; +- idx2now = idx2cnt; +- } +- else +- /* We pushed backward sequences. */ +- idx2now = backw2 = idx2cnt - 1; +- } +- } +- while ((seq2len = weights[idx2arr[idx2now]++]) == 0); +- +- /* See whether any or both strings are empty. */ +- if (seq1len == 0 || seq2len == 0) +- { +- if (seq1len == seq2len) +- /* Both ended. So far so good, both strings are equal at the +- first level. */ +- break; +- +- /* This means one string is shorter than the other. Find out +- which one and return an appropriate value. */ +- result = seq1len == 0 ? -1 : 1; +- goto free_and_return; +- } ++ coll_seq seq1, seq2; ++ bool use_malloc = false; ++ int result = 0; + +- /* Test for position if necessary. */ +- if (position && val1 != val2) +- { +- result = val1 - val2; +- goto free_and_return; +- } ++ memset (&seq1, 0, sizeof (seq1)); ++ seq2 = seq1; + +- /* Compare the two sequences. */ +- do +- { +- if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) +- { +- /* The sequences differ. */ +- result = weights[idx1arr[idx1now]] - weights[idx2arr[idx2now]]; +- goto free_and_return; +- } ++ size_t size_max = SIZE_MAX / (sizeof (int32_t) + 1); + +- /* Increment the offsets. */ +- ++idx1arr[idx1now]; +- ++idx2arr[idx2now]; ++ /* If the strings are long enough to cause overflow in the size request, then ++ skip the allocation and proceed with the non-cached routines. */ ++ if (MIN (s1len, s2len) > size_max ++ || MAX (s1len, s2len) > size_max - MIN (s1len, s2len)) ++ goto begin_collate; + +- --seq1len; +- --seq2len; +- } +- while (seq1len > 0 && seq2len > 0); ++ if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))) ++ { ++ seq1.idxarr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1)); + +- if (position && seq1len != seq2len) ++ /* If we failed to allocate memory, we leave everything as NULL so that ++ we use the nocache version of traversal and comparison functions. */ ++ if (seq1.idxarr != NULL) + { +- result = seq1len - seq2len; +- goto free_and_return; ++ seq2.idxarr = &seq1.idxarr[s1len]; ++ seq1.rulearr = (unsigned char *) &seq2.idxarr[s2len]; ++ seq2.rulearr = &seq1.rulearr[s1len]; ++ use_malloc = true; + } + } ++ else ++ { ++ seq1.idxarr = (int32_t *) alloca (s1len * sizeof (int32_t)); ++ seq2.idxarr = (int32_t *) alloca (s2len * sizeof (int32_t)); ++ seq1.rulearr = (unsigned char *) alloca (s1len); ++ seq2.rulearr = (unsigned char *) alloca (s2len); ++ } + +- /* Now the remaining passes over the weights. We now use the +- indeces we found before. */ +- for (pass = 1; pass < nrules; ++pass) ++ int rule; ++ ++ begin_collate: ++ rule = 0; ++ /* Cache values in the first pass and if needed, use them in subsequent ++ passes. */ ++ for (int pass = 0; pass < nrules; ++pass) + { ++ seq1.idxcnt = 0; ++ seq1.idx = 0; ++ seq2.idx = 0; ++ seq1.backw_stop = ~0ul; ++ seq1.backw = ~0ul; ++ seq2.idxcnt = 0; ++ seq2.backw_stop = ~0ul; ++ seq2.backw = ~0ul; ++ ++ /* We need the elements of the strings as unsigned values since they ++ are used as indices. */ ++ seq1.us = (const USTRING_TYPE *) s1; ++ seq2.us = (const USTRING_TYPE *) s2; ++ + /* We assume that if a rule has defined `position' in one section + this is true for all of them. */ +- idx1cnt = 0; +- idx2cnt = 0; +- backw1_stop = ~0ul; +- backw2_stop = ~0ul; +- backw1 = ~0ul; +- backw2 = ~0ul; +- position = rulesets[rule1arr[0] * nrules + pass] & sort_position; ++ int position = rulesets[rule * nrules + pass] & sort_position; + + while (1) + { +- val1 = 0; +- val2 = 0; +- +- /* Get the next non-IGNOREd element for string `s1'. */ +- if (seq1len == 0) +- do +- { +- ++val1; +- +- if (backw1_stop != ~0ul) +- { +- /* The is something pushed. */ +- if (backw1 == backw1_stop) +- { +- /* The last pushed character was handled. Continue +- with forward characters. */ +- if (idx1cnt < idx1max) +- { +- idx1now = idx1cnt; +- backw1_stop = ~0ul; +- } +- else +- { +- /* Nothing anymore. The backward sequence +- ended with the last sequence in the string. */ +- idx1now = ~0ul; +- break; +- } +- } +- else +- idx1now = --backw1; +- } +- else +- { +- backw1_stop = idx1cnt; +- +- while (idx1cnt < idx1max) +- { +- if ((rulesets[rule1arr[idx1cnt] * nrules + pass] +- & sort_backward) == 0) +- /* No more backward characters to push. */ +- break; +- ++idx1cnt; +- } +- +- if (backw1_stop == idx1cnt) +- { +- /* No sequence at all or just one. */ +- if (idx1cnt == idx1max) +- /* Note that seq1len is still zero. */ +- break; +- +- backw1_stop = ~0ul; +- idx1now = idx1cnt++; +- } +- else +- /* We pushed backward sequences. */ +- idx1now = backw1 = idx1cnt - 1; +- } +- } +- while ((seq1len = weights[idx1arr[idx1now]++]) == 0); +- +- /* And the same for string `s2'. */ +- if (seq2len == 0) +- do +- { +- ++val2; +- +- if (backw2_stop != ~0ul) +- { +- /* The is something pushed. */ +- if (backw2 == backw2_stop) +- { +- /* The last pushed character was handled. Continue +- with forward characters. */ +- if (idx2cnt < idx2max) +- { +- idx2now = idx2cnt; +- backw2_stop = ~0ul; +- } +- else +- { +- /* Nothing anymore. The backward sequence +- ended with the last sequence in the string. */ +- idx2now = ~0ul; +- break; +- } +- } +- else +- idx2now = --backw2; +- } +- else +- { +- backw2_stop = idx2cnt; +- +- while (idx2cnt < idx2max) +- { +- if ((rulesets[rule2arr[idx2cnt] * nrules + pass] +- & sort_backward) == 0) +- /* No more backward characters to push. */ +- break; +- ++idx2cnt; +- } +- +- if (backw2_stop == idx2cnt) +- { +- /* No sequence at all or just one. */ +- if (idx2cnt == idx2max) +- /* Note that seq2len is still zero. */ +- break; +- +- backw2_stop = ~0ul; +- idx2now = idx2cnt++; +- } +- else +- /* We pushed backward sequences. */ +- idx2now = backw2 = idx2cnt - 1; +- } +- } +- while ((seq2len = weights[idx2arr[idx2now]++]) == 0); ++ if (__glibc_unlikely (seq1.idxarr == NULL)) ++ { ++ get_next_seq_nocache (&seq1, nrules, rulesets, weights, table, ++ extra, indirect, pass); ++ get_next_seq_nocache (&seq2, nrules, rulesets, weights, table, ++ extra, indirect, pass); ++ } ++ else if (pass == 0) ++ { ++ get_next_seq (&seq1, nrules, rulesets, weights, table, extra, ++ indirect); ++ get_next_seq (&seq2, nrules, rulesets, weights, table, extra, ++ indirect); ++ } ++ else ++ { ++ get_next_seq_cached (&seq1, nrules, pass, rulesets, weights); ++ get_next_seq_cached (&seq2, nrules, pass, rulesets, weights); ++ } + + /* See whether any or both strings are empty. */ +- if (seq1len == 0 || seq2len == 0) ++ if (seq1.len == 0 || seq2.len == 0) + { +- if (seq1len == seq2len) ++ if (seq1.len == seq2.len) + /* Both ended. So far so good, both strings are equal + at this level. */ + break; + + /* This means one string is shorter than the other. Find out + which one and return an appropriate value. */ +- result = seq1len == 0 ? -1 : 1; ++ result = seq1.len == 0 ? -1 : 1; + goto free_and_return; + } + +- /* Test for position if necessary. */ +- if (position && val1 != val2) +- { +- result = val1 - val2; +- goto free_and_return; +- } +- +- /* Compare the two sequences. */ +- do +- { +- if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) +- { +- /* The sequences differ. */ +- result = (weights[idx1arr[idx1now]] +- - weights[idx2arr[idx2now]]); +- goto free_and_return; +- } +- +- /* Increment the offsets. */ +- ++idx1arr[idx1now]; +- ++idx2arr[idx2now]; +- +- --seq1len; +- --seq2len; +- } +- while (seq1len > 0 && seq2len > 0); +- +- if (position && seq1len != seq2len) +- { +- result = seq1len - seq2len; +- goto free_and_return; +- } ++ if (__glibc_unlikely (seq1.idxarr == NULL)) ++ result = do_compare_nocache (&seq1, &seq2, position, weights); ++ else ++ result = do_compare (&seq1, &seq2, position, weights); ++ if (result != 0) ++ goto free_and_return; + } ++ ++ if (__glibc_likely (seq1.rulearr != NULL)) ++ rule = seq1.rulearr[0]; ++ else ++ rule = seq1.rule; + } + + /* Free the memory if needed. */ + free_and_return: + if (use_malloc) +- free (idx1arr); ++ free (seq1.idxarr); + + return result; + } diff --git a/community/glibc-static/glibc-2.18-strstr-hackfix.patch b/community/glibc-static/glibc-2.18-strstr-hackfix.patch new file mode 100644 index 000000000..6149f88bc --- /dev/null +++ b/community/glibc-static/glibc-2.18-strstr-hackfix.patch @@ -0,0 +1,13 @@ +diff --git a/sysdeps/x86_64/multiarch/strstr.c b/sysdeps/x86_64/multiarch/strstr.c +index cd63b68..03d8b9a 100644 +--- a/sysdeps/x86_64/multiarch/strstr.c ++++ b/sysdeps/x86_64/multiarch/strstr.c +@@ -86,7 +86,7 @@ + /* Simple replacement of movdqu to address 4KB boundary cross issue. + If EOS occurs within less than 16B before 4KB boundary, we don't + cross to next page. */ +-static __m128i ++static inline __m128i + __m128i_strloadu (const unsigned char * p, __m128i zero) + { + if (__builtin_expect ((int) ((size_t) p & 0xfff) > 0xff0, 0)) diff --git a/community/hedgewars/PKGBUILD b/community/hedgewars/PKGBUILD index 0c1b5318d..70ecc64ff 100644 --- a/community/hedgewars/PKGBUILD +++ b/community/hedgewars/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 103142 2013-12-27 12:15:28Z spupykin $ +# $Id: PKGBUILD 103306 2014-01-02 22:43:13Z spupykin $ # Maintainer: Sergej Pupykin pkgname=hedgewars -pkgver=0.9.20 +pkgver=0.9.20.3 pkgrel=1 pkgdesc="turn based strategy, artillery, action and comedy game, featuring the antics of pink hedgehogs with attitude as they battle from the depths of hell @@ -23,7 +23,7 @@ makedepends=('fpc' 'cmake' 'haskell-random') source=(http://download.gna.org/hedgewars/hedgewars-src-$pkgver.tar.bz2 hedgewars.png) -md5sums=('7ee1b23e51053d34feb84464184f60fa' +md5sums=('cea4def4e212905026ef29e00447b966' 'eeb14d50df39063549ac5eca9dbc65d1') build() { diff --git a/community/hwinfo/PKGBUILD b/community/hwinfo/PKGBUILD index 11bd4bb06..0b790dbae 100644 --- a/community/hwinfo/PKGBUILD +++ b/community/hwinfo/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 90497 2013-05-12 23:11:39Z arodseth $ +# $Id: PKGBUILD 103280 2014-01-02 12:43:36Z arodseth $ # Maintainer: Alexander Rødseth # Contributor: Kaiting Chen # Contributor: Gergely Imreh @@ -8,23 +8,22 @@ # Contributor: ninja_pt pkgname=hwinfo -pkgver=20.1 -_subver=3.10 -pkgrel=2 +pkgver=21.0 +_subver=1.2 +pkgrel=1 pkgdesc='Hardware detection tool from openSUSE' arch=('x86_64' 'i686') url='http://download.opensuse.org/source/factory/repo/oss/suse/src/' license=('GPL2') depends=('perl' 'libx86emu') makedepends=('sysfsutils' 'rpmextract' 'flex') +options=('!emptydirs') source=("http://download.opensuse.org/source/factory/repo/oss/suse/src/$pkgname-$pkgver-$_subver.src.rpm" 'custom_ioctl.patch') -sha256sums=('b0e2e51b4dd754071fb40843deaaafb0755388de5335b1d2c4c081d0f6393841' +sha256sums=('4126875621a935a450cf616b69a1f922047f241cedc3ac02ece54cd78b23a9fb' '6e83b50aa34f31db5fe6de938402e7c4dda6ffa9ffe1346c076e4779018fcf1d') prepare() { - cd "$srcdir" - rpmextract.sh "$pkgname-$pkgver-$_subver.src.rpm" tar jxf $pkgname-$pkgver.tar.bz2 cd "$pkgname-$pkgver" @@ -32,17 +31,14 @@ prepare() { } build() { - cd "$srcdir/$pkgname-$pkgver" - - make -j1 CFLAGS+="-fPIC -I$srcdir/$pkgname-$pkgver/src/hd" LIBDIR=/usr/lib + make -C "$pkgname-$pkgver" -j1 \ + CFLAGS+="-fPIC -I$srcdir/$pkgname-$pkgver/src/hd" \ + LIBDIR=/usr/lib } package() { - cd "$srcdir/$pkgname-$pkgver" - - make LIBDIR=/usr/lib DESTDIR="$pkgdir" install + make -C "$pkgname-$pkgver" LIBDIR=/usr/lib DESTDIR="$pkgdir" install mv "$pkgdir/usr/sbin" "$pkgdir/usr/bin" - rmdir "$pkgdir/sbin" } # vim:set ts=2 sw=2 et: diff --git a/community/kbibtex/PKGBUILD b/community/kbibtex/PKGBUILD index abcd8d8b8..0520ba976 100644 --- a/community/kbibtex/PKGBUILD +++ b/community/kbibtex/PKGBUILD @@ -1,26 +1,27 @@ -# $Id: PKGBUILD 87529 2013-04-02 15:44:34Z schiv $ +# $Id: PKGBUILD 103296 2014-01-02 21:08:34Z schiv $ # Maintainer: Ray Rashif # Contributor: Antonio Rojas # Contributor: cmorlok pkgname=kbibtex -pkgver=0.4.1 -_branch=0.4 -pkgrel=2 +pkgver=0.5 +_branch=0.5 +pkgrel=1 pkgdesc="A BibTeX editor for KDE" arch=('i686' 'x86_64') url='http://home.gna.org/kbibtex/' license=('GPL') -depends=('kdebase-runtime' 'kdegraphics-okular') +depends=('kdebase-runtime') +optdepends=('kdegraphics-okular: Document preview') makedepends=('cmake' 'automoc4') install=$pkgname.install -source=("http://download.gna.org/$pkgname/$_branch/$pkgname-$pkgver.tar.bz2") -md5sums=('657eda1da48198a3c336ff268ce46d6f') +source=("http://download.gna.org/$pkgname/$_branch/$pkgname-$pkgver.tar.xz") +md5sums=('bbd2affd1edfb8f02a077c2c7cfc2038') build() { cd "$pkgname-$pkgver" - cmake -DCMAKE_INSTALL_PREFIX=/usr + cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release make } diff --git a/community/kbibtex/kbibtex.install b/community/kbibtex/kbibtex.install index 139cb5694..3f22aadfb 100644 --- a/community/kbibtex/kbibtex.install +++ b/community/kbibtex/kbibtex.install @@ -1,15 +1,15 @@ post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null + xdg-icon-resource forceupdate --theme hicolor &> /dev/null update-mime-database usr/share/mime &> /dev/null update-desktop-database -q } post_upgrade() { - post_install + post_install } post_remove() { - post_install + post_install } # vim:set ts=2 sw=2 et: diff --git a/community/lilypond/PKGBUILD b/community/lilypond/PKGBUILD index ce971f550..473c7e418 100644 --- a/community/lilypond/PKGBUILD +++ b/community/lilypond/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 103224 2013-12-30 15:18:05Z bgyorgy $ +# $Id: PKGBUILD 103308 2014-01-02 22:45:42Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer: Geoffroy Carrier # Contributor: William Rea # Contributor: Robert Emil Berge pkgname=lilypond -pkgver=2.16.2 -pkgrel=5 +pkgver=2.18.0 +pkgrel=1 pkgdesc="An automated music engraving system" arch=('i686' 'x86_64') url="http://lilypond.org" @@ -16,12 +16,8 @@ makedepends=('flex' 'bison' 'gettext' 'mftrace' 'texinfo' 'fontforge' 't1utils' 'gsfonts' 'texi2html') options=('emptydirs') #install=lilypond.install -source=(http://download.linuxaudio.org/lilypond/sources/v2.16/$pkgname-$pkgver.tar.gz - lilypond.git-1ca9814191d16fd3c571d93035247db039254fc1.patch - lilypond.git-7705e46966bfa05015fb9fb20c68da844ab88028.patch) -md5sums=('6db27f17d47e4f66a3b0716c65db3041' - '121ac86f1004338ae20ad55a5690c0ad' - 'fa5073506f0e4dd96fb1858e3a75e08e') +source=(http://download.linuxaudio.org/lilypond/sources/v2.18/$pkgname-$pkgver.tar.gz) +md5sums=('5696fec935c616fb437693bed477cc27') prepare() { cd "$srcdir/$pkgname-$pkgver" @@ -38,8 +34,8 @@ prepare() { rm -rf lily/out/ python/out/ # Fix build - patch -Np1 -i "$srcdir/lilypond.git-1ca9814191d16fd3c571d93035247db039254fc1.patch" - patch -Np1 -i "$srcdir/lilypond.git-7705e46966bfa05015fb9fb20c68da844ab88028.patch" +# patch -Np1 -i "$srcdir/lilypond.git-1ca9814191d16fd3c571d93035247db039254fc1.patch" +# patch -Np1 -i "$srcdir/lilypond.git-7705e46966bfa05015fb9fb20c68da844ab88028.patch" } build() { diff --git a/community/minitube/PKGBUILD b/community/minitube/PKGBUILD index 029cf3b1b..890373335 100644 --- a/community/minitube/PKGBUILD +++ b/community/minitube/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 97545 2013-09-23 20:44:05Z speps $ +# $Id: PKGBUILD 103290 2014-01-02 16:08:02Z speps $ # Maintainer : speps # Contributor: Andrea Scarpino pkgname=minitube -pkgver=2.1.3 +pkgver=2.1.5 pkgrel=1 pkgdesc="A native YouTube client in Qt. Watch YouTube videos without Flash Player" arch=('i686' 'x86_64') @@ -11,8 +11,16 @@ url='http://flavio.tordini.org/minitube' license=('GPL3') depends=('phonon') install="$pkgname.install" -source=("http://flavio.tordini.org/files/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=('b43df4358de2e170d7e22370b39bd1ec') +source=("http://flavio.tordini.org/files/$pkgname/$pkgname-$pkgver.tar.gz" + "$pkgname-missing-locale.patch") +md5sums=('e52933f3ae5200f83aa39ac71ac13bfb' + '70cdaa1d3df700cf90243be5a0d55443') + +prepare() { + cd $pkgname + # remove missing translations + patch -p1 -i ../${source[1]} +} build() { cd $pkgname diff --git a/community/minitube/minitube-missing-locale.patch b/community/minitube/minitube-missing-locale.patch new file mode 100644 index 000000000..5288120e4 --- /dev/null +++ b/community/minitube/minitube-missing-locale.patch @@ -0,0 +1,12 @@ +diff -aur minitube/locale/locale.pri minitube.patched/locale/locale.pri +--- minitube/locale/locale.pri 2013-12-19 00:37:27.000000000 +0100 ++++ minitube.patched/locale/locale.pri 2013-12-25 00:03:56.783943888 +0100 +@@ -4,7 +4,7 @@ + DEPENDPATH += $$PWD + + # ls -1 *.ts | tr '\n' ' ' +-TRANSLATIONS += ar.ts ast.ts be.ts bg_BG.ts ca.ts ca_ES.ts cs_CZ.ts da.ts de_DE.ts el.ts en.ts es.ts es_AR.ts es_ES.ts es_MX.ts fi.ts fi_FI.ts fr.ts gl.ts he_IL.ts hr.ts hu.ts ia.ts it.ts ja_JP.ts ky.ts ms_MY.ts nb.ts nl.ts pl.ts pl_PL.ts pt.ts pt_BR.ts ro.ts ru.ts sk.ts sl.ts sq.ts sv_SE.ts tr.ts uk.ts uk_UA.ts vi.ts zh_CN.ts zh_TW.ts ++TRANSLATIONS += ar.ts ast.ts bg_BG.ts ca.ts cs_CZ.ts da.ts de_DE.ts el.ts en.ts es.ts es_AR.ts es_ES.ts fi.ts fi_FI.ts fr.ts gl.ts he_IL.ts hu.ts ia.ts it.ts ja_JP.ts ky.ts ms_MY.ts nb.ts nl.ts pl.ts pl_PL.ts pt_BR.ts ro.ts ru.ts sk.ts sl.ts sq.ts sv_SE.ts tr.ts uk.ts uk_UA.ts zh_CN.ts zh_TW.ts + isEmpty(QMAKE_LRELEASE) { + win32:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\lrelease.exe + else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease diff --git a/community/mpv/PKGBUILD b/community/mpv/PKGBUILD index 39e1bd0c1..8f1703791 100644 --- a/community/mpv/PKGBUILD +++ b/community/mpv/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 103267 2014-01-01 22:33:16Z bpiotrowski $ +# $Id: PKGBUILD 103275 2014-01-02 08:50:55Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Eivind Uggedal pkgname=mpv pkgver=0.3.1 -pkgrel=1 +pkgrel=2 pkgdesc='Video player based on MPlayer/mplayer2' arch=('i686' 'x86_64') license=('GPL') @@ -17,8 +17,15 @@ depends=( makedepends=('mesa' 'python-docutils' 'waf') options=('!emptydirs' '!buildflags') install=mpv.install -source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz) -md5sums=('f7e4091eb9ce058ce35b4bc1b6c4f3a2') +source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz + mpv-0.3.1-always_respect_sector_size.patch) +md5sums=('f7e4091eb9ce058ce35b4bc1b6c4f3a2' + 'afe01937e9bff1f241d37774eda39b7a') + +prepare() { + cd $pkgname-$pkgver + patch -p1 -i ../mpv-0.3.1-always_respect_sector_size.patch +} build() { cd $pkgname-$pkgver diff --git a/community/mpv/mpv-0.3.1-always_respect_sector_size.patch b/community/mpv/mpv-0.3.1-always_respect_sector_size.patch new file mode 100644 index 000000000..82c474081 --- /dev/null +++ b/community/mpv/mpv-0.3.1-always_respect_sector_size.patch @@ -0,0 +1,34 @@ +From b04b48fc10dabb1d1b26ff519f55dcafb320985e Mon Sep 17 00:00:00 2001 +From: wm4 +Date: Thu, 2 Jan 2014 00:39:14 +0100 +Subject: [PATCH] stream: always respect sector_size, fixes cdda:// + +Streams like CDDA have special requirements in what quantities data can +be read: you can only read a sector at once, not more and not less. The +stream_peek() function didn't respect that and set less (used internal +buffer size of 2048 bytes, instead of CD sector size of 2352 bytes), so +no data was read and EOF was accidentally set, making playback with +cdda:// fail. + +This is a regression since commit 9a723f, but that commit merely exposed +the issue (the redundant seek would clear the EOF flag). +--- + stream/stream.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/stream/stream.c b/stream/stream.c +index 3332e66..b48de57 100644 +--- a/stream/stream.c ++++ b/stream/stream.c +@@ -562,7 +562,7 @@ struct bstr stream_peek(stream_t *s, int len) + while (buf_valid < len) { + int chunk = MPMAX(len - buf_valid, STREAM_BUFFER_SIZE); + if (s->sector_size) +- chunk = STREAM_BUFFER_SIZE; ++ chunk = s->sector_size; + assert(buf_valid + chunk <= TOTAL_BUFFER_SIZE); + int read = stream_read_unbuffered(s, &s->buffer[buf_valid], chunk); + if (read == 0) +-- +1.8.5.1 + diff --git a/community/pymol/PKGBUILD b/community/pymol/PKGBUILD index 352ea5f1c..aa1d7a270 100644 --- a/community/pymol/PKGBUILD +++ b/community/pymol/PKGBUILD @@ -1,10 +1,11 @@ +# $Id: PKGBUILD 103273 2014-01-02 00:34:19Z arcanis $ # Maintainer: Evgeniy Alekseev # Contributor: graysky # Contributor: Tomasz Żok pkgname=pymol pkgver=1.6.0.0 -pkgrel=2 +pkgrel=3 pkgdesc="A USER-SPONSORED molecular visualization system on an OPEN-SOURCE foundation" arch=('i686' 'x86_64') url="http://pymol.org/" @@ -15,7 +16,12 @@ md5sums=('6f5db5beea7497f5a414c8e0cf1ae53d') prepare() { # suppress non-zero exit code that breaks makepkg - sed -i '/sys.exit/ s,2,0,' "${srcdir}/${pkgname}/setup.py" + sed -i '/sys.exit/ s,2,0,' "${srcdir}/pymol/setup.py" + # change python to python2 + sed -i "s|python|python2|g" "${srcdir}/pymol/test/cyg" + sed -i "s|python|python2|g" "${srcdir}/pymol/test/run" + sed -i "s|python|python2|g" "${srcdir}/pymol/test/show" + sed -i "s|python|python2|g" "${srcdir}/pymol/modules/pmg_tk/startup/apbs_tools.py" } build() { @@ -26,16 +32,8 @@ build() { package() { cd "${srcdir}/${pkgname}" python2 setup.py install --prefix="usr/" --root="${pkgdir}" - sed -i "s|${pkgdir}||g" pymol install -D -m755 "pymol" "${pkgdir}/usr/bin/pymol" - - # change python to python2 - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/pymol/pymol_path/test/run" - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/pymol/pymol_path/test/cyg" - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/pmg_tk/startup/apbs_tools.py" - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/pymol/pymol_path/test/show" - install -D -m644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/community/python-pmw/PKGBUILD b/community/python-pmw/PKGBUILD index dd43ef0b5..1e19d7f2b 100644 --- a/community/python-pmw/PKGBUILD +++ b/community/python-pmw/PKGBUILD @@ -1,3 +1,4 @@ +# $Id: PKGBUILD 103272 2014-01-02 00:34:07Z arcanis $ # Maintainer: Evgeniy Alekseev # Contributor: kfgz # Contributor: Michael Krauss @@ -5,7 +6,7 @@ pkgname=python-pmw pkgver=1.3.3b -pkgrel=2 +pkgrel=3 pkgdesc="A toolkit for high-level compound widgets in Python using the Tkinter module" arch=('i686' 'x86_64') url="http://pmw.sourceforge.net/doc/index.html" @@ -16,16 +17,17 @@ source=(${pkgname}-${pkgver}.tar.gz::http://sourceforge.net/projects/pmw/files/P md5sums=('d8b998b921584db32a5eeeddc6bc606c' '28b047a148c1780eddcf4bed6b150123') +prepare() { + # change python to python2 + sed -i "s|python|python2|g" "${srcdir}/Pmw/Pmw/Pmw_1_3_3/tests/ManualTests.py" + sed -i "s|python|python2|g" "${srcdir}/Pmw/Pmw/Pmw_1_3_3/demos/All.py" + sed -i "s|python|python2|g" "${srcdir}/Pmw/Pmw/Pmw_1_3_3/tests/All.py" + sed -i "s|python|python2|g" "${srcdir}/Pmw/Pmw/Pmw_1_3_3/bin/bundlepmw.py" +} + package() { cd "Pmw" python2 setup.py build python2 setup.py install --prefix=/usr --root="${pkgdir}" - - # change python to python2 - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/Pmw/Pmw_1_3_3/tests/ManualTests.py" - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/Pmw/Pmw_1_3_3/demos/All.py" - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/Pmw/Pmw_1_3_3/tests/All.py" - sed -i "s|python|python2|g" "${pkgdir}/usr/lib/python2.7/site-packages/Pmw/Pmw_1_3_3/bin/bundlepmw.py" - install -D -m644 "${srcdir}/LICENSE.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/community/qtractor/PKGBUILD b/community/qtractor/PKGBUILD index ccd1df61a..3ef2d1fa2 100644 --- a/community/qtractor/PKGBUILD +++ b/community/qtractor/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 98346 2013-10-08 20:19:08Z schiv $ +# $Id: PKGBUILD 103286 2014-01-02 13:32:26Z schiv $ # Maintainer: Ray Rashif # Contributor: Philipp Überbacher pkgname=qtractor -pkgver=0.5.11 +pkgver=0.5.12 pkgrel=1 pkgdesc="Audio/MIDI multitrack sequencer" arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ makedepends=('ladspa' 'dssi') [ "$CARCH" = "i686" ] && optdepends=('dssi-vst: win32 VST support') install=qtractor.install source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=('97a07f55ea61747859b1fd6c284a0806') +md5sums=('f26691f70c4cd4b89bc4369a579f291f') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/virtualgl/PKGBUILD b/community/virtualgl/PKGBUILD index b8995d563..e4e750f51 100644 --- a/community/virtualgl/PKGBUILD +++ b/community/virtualgl/PKGBUILD @@ -3,8 +3,8 @@ # Contributor: Andres Jimenez pkgname=virtualgl -pkgver=2.3.2 -pkgrel=4 +pkgver=2.3.3 +pkgrel=1 pkgdesc="Redirects 3D commands from an OpenGL application onto a server-side 3D graphics card" arch=('i686' 'x86_64') url="http://virtualgl.org" @@ -12,7 +12,7 @@ license=('LGPL') depends=('libxv' 'glu' 'libjpeg-turbo') makedepends=('cmake' 'mesa') source=("http://downloads.sourceforge.net/project/virtualgl/VirtualGL/$pkgver/VirtualGL-$pkgver.tar.gz") -sha1sums=('f042862c21ceaba57c6e1f0ec72adb4f838725e9') +sha1sums=('7128fc546f0bc65a74296e19d474e52d41acbf47') build() { cd "$srcdir/VirtualGL-$pkgver" diff --git a/core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch b/core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch new file mode 100644 index 000000000..f3428c7d5 --- /dev/null +++ b/core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch @@ -0,0 +1,47 @@ +From 4e1ece2e44f432c2614f2090155c0aaf2226ea80 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Stenberg?= +Date: Sat, 28 Dec 2013 13:42:57 +0100 +Subject: [PATCH] connect: Try all addresses in first connection attempt +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes a bug when all addresses in the first family fail immediately, due +to "Network unreachable" for example, curl would hang and never try the +next address family. + +Iterate through all address families when to trying establish the first +connection attempt. + +Bug: http://curl.haxx.se/bug/view.cgi?id=1315 +Reported-by: Michal Górny and Anthony G. Basile +--- + lib/connect.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/lib/connect.c b/lib/connect.c +index 4b6ee00..588ac28 100644 +--- a/lib/connect.c ++++ b/lib/connect.c +@@ -1104,12 +1104,12 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */ + conn->tempaddr[0]->ai_next == NULL ? timeout_ms : timeout_ms / 2; + + /* start connecting to first IP */ +- res = singleipconnect(conn, conn->tempaddr[0], &(conn->tempsock[0])); +- while(res != CURLE_OK && +- conn->tempaddr[0] && +- conn->tempaddr[0]->ai_next && +- conn->tempsock[0] == CURL_SOCKET_BAD) +- res = trynextip(conn, FIRSTSOCKET, 0); ++ while(conn->tempaddr[0]) { ++ res = singleipconnect(conn, conn->tempaddr[0], &(conn->tempsock[0])); ++ if(res == CURLE_OK) ++ break; ++ conn->tempaddr[0] = conn->tempaddr[0]->ai_next; ++ } + + if(conn->tempsock[0] == CURL_SOCKET_BAD) + return res; +-- +1.8.5.2 + diff --git a/core/curl/PKGBUILD b/core/curl/PKGBUILD index 06a7b278f..3ea9f4915 100644 --- a/core/curl/PKGBUILD +++ b/core/curl/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 202635 2013-12-23 02:04:37Z dreisner $ +# $Id: PKGBUILD 203041 2014-01-02 14:43:46Z dreisner $ # Maintainer: Dave Reisner # Contributor: Angel Velasquez # Contributor: Eric Belanger @@ -7,7 +7,7 @@ pkgname=curl pkgver=7.34.0 -pkgrel=1 +pkgrel=2 pkgdesc="An URL retrieval utility and library" arch=('i686' 'x86_64') url="http://curl.haxx.se" @@ -16,11 +16,19 @@ depends=('ca-certificates' 'libssh2' 'openssl' 'zlib') provides=('libcurl.so') options=('strip' 'debug') source=("http://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc} + 0001-connect-Try-all-addresses-in-first-connection-attemp.patch curlbuild.h) md5sums=('d5b7edccbd1793e3549842e01331da20' 'SKIP' + 'ee755b0e886207fc1e8154e426c46ca7' '751bd433ede935c8fae727377625a8ae') +prepare() { + cd "$pkgname-$pkgver" + + patch -Np1 <"$srcdir"/0001-connect-Try-all-addresses-in-first-connection-attemp.patch +} + build() { cd "$pkgname-$pkgver" diff --git a/core/s-nail/PKGBUILD b/core/s-nail/PKGBUILD index bf726ac6b..cb41a1e7e 100644 --- a/core/s-nail/PKGBUILD +++ b/core/s-nail/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 202657 2013-12-23 17:15:07Z bisson $ +# $Id: PKGBUILD 203051 2014-01-02 20:19:55Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Stéphane Gaudreault # Contributor: Sergej Pupykin # Contributor: Andreas Wagner pkgname=s-nail -pkgver=14.5 +pkgver=14.5.1 pkgrel=1 pkgdesc='Mail processing system with a command syntax reminiscent of ed' url='http://sourceforge.net/projects/s-nail/' @@ -14,7 +14,7 @@ arch=('i686' 'x86_64') depends=('openssl') optdepends=('smtp-forwarder: for sending mail') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}-${pkgver//./_}.tar.gz") -sha1sums=('0c7341f7404f7113a3c4ed915adfed720379e8e7') +sha1sums=('022e09b9873ce3fdc745a5894374ff918befec2c') groups=('base') backup=('etc/mail.rc') diff --git a/extra/graphicsmagick/PKGBUILD b/extra/graphicsmagick/PKGBUILD index dca38908c..09b123e8e 100644 --- a/extra/graphicsmagick/PKGBUILD +++ b/extra/graphicsmagick/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 202659 2013-12-23 18:00:07Z ronald $ +# $Id: PKGBUILD 203038 2014-01-02 10:14:56Z bisson $ # Maintainer: Ronald van Haren # Maintainer: Gaetan Bisson # Contributor: Jaroslav Lichtblau # Contributor: Anton Leontiev pkgname=graphicsmagick -pkgver=1.3.18 -pkgrel=6 +pkgver=1.3.19 +pkgrel=1 pkgdesc='Image processing system' url='http://www.graphicsmagick.org/' arch=('i686' 'x86_64') @@ -19,21 +19,13 @@ optdepends=('jasper: jp2 module' 'ghostscript: pdf, ps modules') makedepends=('perl' 'jasper' 'libpng' 'libwmf' 'libxml2' 'libtiff') depends=('freetype2' 'libxext' 'libsm' 'lcms2' 'libltdl' 'bzip2' 'xz') -source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/GraphicsMagick-${pkgver}.tar.xz" - 'benign.patch') -sha1sums=('085c23666adcf88585119cb6aea7efe5c58481d4' - '04e16b9fe255e87cf16d4c61e313e8cdf7b2e24e') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/GraphicsMagick-${pkgver}.tar.xz") +sha1sums=('621c3e9a3b12e38dad225ee3466fd55a24c62066') options=('!emptydirs' 'libtool') -prepare() { - cd "${srcdir}/GraphicsMagick-${pkgver}" - patch -p1 -i ../benign.patch -} - build() { cd "${srcdir}/GraphicsMagick-${pkgver}" - ./configure \ --prefix=/usr \ --enable-shared \ diff --git a/extra/graphicsmagick/benign.patch b/extra/graphicsmagick/benign.patch deleted file mode 100644 index f9fe6a642..000000000 --- a/extra/graphicsmagick/benign.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -Naur old/ChangeLog new/ChangeLog ---- old/ChangeLog 2013-03-09 13:19:31.000000000 -1000 -+++ new/ChangeLog 2013-11-22 06:33:59.189976814 -1000 -@@ -1,3 +1,10 @@ -+2013-10-16 Glenn Randers-Pehrson -+ -+ * Added calls to png_set_benign_errors() to allow benign errors -+ to be handled as warnings. In particular, GM builds with libpng-1.6.x -+ will not crash while copying a PNG with a "known incorrect ICC -+ profile". -+ - 2013-03-09 Bob Friesenhahn - - * version.sh, www/index.rst: Prepare for 1.3.18 release. -diff -Naur old/coders/png.c new/coders/png.c ---- old/coders/png.c 2013-03-09 13:19:31.000000000 -1000 -+++ new/coders/png.c 2013-11-22 06:33:25.423156308 -1000 -@@ -1689,6 +1689,12 @@ - } - return(image); - } -+ -+#ifdef PNG_BENIGN_ERRORS_SUPPORTED -+ /* Allow benign errors */ -+ png_set_benign_errors(ping, 1); -+#endif -+ - /* - Prepare PNG for reading. - */ -@@ -6453,6 +6459,12 @@ - #endif - return(MagickFail); - } -+ -+#ifdef PNG_BENIGN_ERRORS_SUPPORTED -+ /* Allow benign errors */ -+ png_set_benign_errors(ping, 1); -+#endif -+ - /* - Prepare PNG for writing. - */ diff --git a/extra/libsidplayfp/PKGBUILD b/extra/libsidplayfp/PKGBUILD index fa275e7e2..2d48654fe 100644 --- a/extra/libsidplayfp/PKGBUILD +++ b/extra/libsidplayfp/PKGBUILD @@ -1,21 +1,20 @@ -# $Id: PKGBUILD 198234 2013-10-30 13:37:47Z allan $ +# $Id: PKGBUILD 203036 2014-01-02 09:41:35Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Simon Perry # Contributor: Jonas Nyrén pkgname=libsidplayfp -pkgver=1.1.0 +pkgver=1.2.0 pkgrel=1 pkgdesc='Library to play Commodore 64 music derived from libsidplay2' url='http://sourceforge.net/projects/sidplay-residfp/' arch=('i686' 'x86_64') license=('GPL') +depends=('gcc-libs') makedepends=('vice') optdepends=('vice: better SID support') source=("http://downloads.sourceforge.net/project/sidplay-residfp/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.gz") -sha1sums=('6c3617fcbd94fd364f3305a1c4d88485911110c7') - -options=('!staticlibs') +sha1sums=('ebe114d75e9d9fd1e22dc1db27f48d248b0be628') build() { cd "${pkgname}-${pkgver}" diff --git a/extra/opencv/PKGBUILD b/extra/opencv/PKGBUILD index a80077d40..a90d5b73d 100644 --- a/extra/opencv/PKGBUILD +++ b/extra/opencv/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 199540 2013-11-15 08:46:07Z schiv $ +# $Id: PKGBUILD 203053 2014-01-02 22:35:26Z schiv $ # Maintainer: Ray Rashif # Contributor: Tobias Powalowski pkgbase=opencv pkgname=('opencv' 'opencv-samples') _realname=OpenCV -pkgver=2.4.7 -pkgrel=2 +pkgver=2.4.8 +pkgrel=1 pkgdesc="Open Source Computer Vision Library" arch=('i686' 'x86_64') license=('BSD') @@ -18,10 +18,10 @@ optdepends=('opencv-samples' 'eigen2' 'libcl: For coding with OpenCL' 'python2-numpy: Python 2.x interface') -source=("http://downloads.sourceforge.net/opencvlibrary/$pkgname-$pkgver.tar.gz" +source=("http://downloads.sourceforge.net/opencvlibrary/$pkgname-$pkgver.zip" 'pkgconfig.patch' 'fsh.patch') -md5sums=('33a12a8bba6e6dc32c97298c99b083b2' +md5sums=('50cc1433b3654074206f5b3dbfd49848' 'c7cea48ed7d4f729ebdb9673bac41bd3' 'c597598d142dd34d0eb4af7d6e9779d8') diff --git a/extra/qjackctl/PKGBUILD b/extra/qjackctl/PKGBUILD index 3242ec5c9..fc5d69ad1 100644 --- a/extra/qjackctl/PKGBUILD +++ b/extra/qjackctl/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 181260 2013-04-02 20:48:27Z schiv $ +# $Id: PKGBUILD 203040 2014-01-02 12:16:31Z schiv $ # Maintainer: Ray Rashif # Contributor: Tobias Kieslich pkgname=qjackctl -pkgver=0.3.10 +pkgver=0.3.11 pkgrel=1 pkgdesc="A Qt front-end for the JACK low-latency audio server" url="http://qjackctl.sourceforge.net/" @@ -11,7 +11,7 @@ arch=('i686' 'x86_64') license=('GPL') depends=('jack' 'qt4') # qjackctl may soon support qt5 source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=('cc01522902105ca65e327e657e51ca5e') +md5sums=('93eabb66334ffb770ab4e270621ab2a4') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/extra/qsynth/PKGBUILD b/extra/qsynth/PKGBUILD index 5cf2230ff..29d6a989b 100644 --- a/extra/qsynth/PKGBUILD +++ b/extra/qsynth/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 203027 2014-01-01 20:51:27Z schiv $ +# $Id: PKGBUILD 203028 2014-01-02 06:23:00Z schiv $ # Maintainer: Ray Rashif # Contributor: damir diff --git a/extra/snd/PKGBUILD b/extra/snd/PKGBUILD index aa68286a9..a08c7a03b 100644 --- a/extra/snd/PKGBUILD +++ b/extra/snd/PKGBUILD @@ -1,32 +1,22 @@ -# $Id: PKGBUILD 199037 2013-11-07 17:11:41Z schiv $ +# $Id: PKGBUILD 203030 2014-01-02 06:24:42Z schiv $ # Maintainer: Ray Rashif # Contributor: Juergen Hoetzel # Contributor: see .contrib pkgname=snd -pkgver=14.1 -pkgrel=2 +pkgver=14.2 +pkgrel=1 pkgdesc="An advanced sound editor" arch=('i686' 'x86_64') url="http://ccrma.stanford.edu/software/snd/" -license=('custom') +license=('custom:free') depends=('jack' 'gamin' 'gsl' 'fftw' 'gtk2' 'libmpc') makedepends=('ladspa' 'wavpack' 'flac' 'speex' 'gmp' 'timidity++' 'mpg123' 'vorbis-tools') optdepends=('wavpack' 'flac' 'speex' 'mpg123' 'timidity++' 'vorbis-tools') -source=("ftp://ccrma-ftp.stanford.edu/pub/Lisp/$pkgname-$pkgver.tar.gz" - 'type_error.patch') -md5sums=('955ca19ca70ac0e4d03cd710516c0174' - '9bfea0dccdfb5da1ba81e721672b11cc') - -prepare() { - cd "$srcdir/$pkgname-$pkgver" - - # fix incomplete type error - # see http://www.mail-archive.com/cmdist@ccrma.stanford.edu/msg04241.html - patch -Np1 -i "$srcdir/type_error.patch" -} + source=("ftp://ccrma-ftp.stanford.edu/pub/Lisp/$pkgname-$pkgver.tar.gz") +md5sums=('a442b98c75043bc8a4b9b50ba0c2b5b7') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/extra/snd/type_error.patch b/extra/snd/type_error.patch deleted file mode 100644 index 1232c6e36..000000000 --- a/extra/snd/type_error.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -bur snd-14.1.orig/snd-ladspa.c snd-14.1/snd-ladspa.c ---- snd-14.1.orig/snd-ladspa.c 2013-10-28 16:07:53.260612114 +0800 -+++ snd-14.1/snd-ladspa.c 2013-10-28 16:11:18.792831983 +0800 -@@ -1191,7 +1191,7 @@ - if (descriptor->connect_port) - descriptor->connect_port(XEN_TO_C_Ladspa_Handle(ptr), - XEN_TO_C_ULONG(port), -- double_to_float(samples->data, samples->length) -+ double_to_float(mus_vct_data(samples), mus_vct_length(samples)) - ); - return(XEN_FALSE); - } diff --git a/extra/whois/PKGBUILD b/extra/whois/PKGBUILD index 419e915bc..7ccd5f456 100644 --- a/extra/whois/PKGBUILD +++ b/extra/whois/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 199908 2013-11-18 18:15:18Z giovanni $ +# $Id: PKGBUILD 203047 2014-01-02 17:53:12Z giovanni $ # Maintainer: Giovanni Scafora # Contributor: Tom Newsom pkgname=whois -pkgver=5.0.26 -pkgrel=2 +pkgver=5.1.0 +pkgrel=1 pkgdesc="The whois client by Marco d'Itri" arch=('i686' 'x86_64') url="http://www.linux.it/~md/software/" @@ -13,7 +13,7 @@ depends=('libidn') makedepends=('perl') backup=('etc/whois.conf') source=("http://ftp.debian.org/debian/pool/main/w/whois/${pkgname}_${pkgver}.tar.xz") -md5sums=('236829eea77e85df2443a54815a1b41d') +md5sums=('e16cc6ca56a6834ab60ace26215d6b0c') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/libre/icecat-noscript/PKGBUILD b/libre/icecat-noscript/PKGBUILD index 8e8908ce6..301ecb4a1 100644 --- a/libre/icecat-noscript/PKGBUILD +++ b/libre/icecat-noscript/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 102928 2013-12-24 09:48:04Z spupykin $ +# $Id: PKGBUILD 103300 2014-01-02 22:41:39Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer (Parabola): André Silva _pkgname=firefox-noscript pkgname=icecat-noscript -pkgver=2.6.8.8 +pkgver=2.6.8.10 pkgrel=1 pkgdesc="plugin for icecat which disables script" arch=('any') @@ -14,7 +14,7 @@ depends=() provides=$_pkgname=$pkgver makedepends=('unzip') source=(https://secure.informaction.com/download/releases/noscript-$pkgver.xpi) -md5sums=('55c2fe321a121b9708afb147d655adeb') +md5sums=('0029627acf4d8e838b24e04eb01c948e') package() { # _ffver=`pacman -Q icecat | cut -f2 -d\ | cut -f1 -d-` diff --git a/libre/iceweasel-noscript/PKGBUILD b/libre/iceweasel-noscript/PKGBUILD index 9cd3b1a43..f6d46a656 100644 --- a/libre/iceweasel-noscript/PKGBUILD +++ b/libre/iceweasel-noscript/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 102928 2013-12-24 09:48:04Z spupykin $ +# $Id: PKGBUILD 103300 2014-01-02 22:41:39Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer (Parabola): André Silva _pkgname=firefox-noscript pkgname=iceweasel-noscript -pkgver=2.6.8.8 +pkgver=2.6.8.10 pkgrel=1 pkgdesc="plugin for iceweasel which disables script" arch=('any') @@ -14,7 +14,7 @@ depends=() provides=$_pkgname=$pkgver makedepends=('unzip') source=(https://secure.informaction.com/download/releases/noscript-$pkgver.xpi) -md5sums=('55c2fe321a121b9708afb147d655adeb') +md5sums=('0029627acf4d8e838b24e04eb01c948e') package() { # _ffver=`pacman -Q iceweasel-libre | cut -f2 -d\ | cut -f1 -d-` diff --git a/libre/pacman/PKGBUILD b/libre/pacman/PKGBUILD index ab0f3fb57..19ffa5992 100644 --- a/libre/pacman/PKGBUILD +++ b/libre/pacman/PKGBUILD @@ -1,11 +1,11 @@ # vim: set ts=2 sw=2 et: -# $Id: PKGBUILD 197027 2013-10-21 14:05:24Z allan $ +# $Id: PKGBUILD 202690 2013-12-24 21:35:48Z dreisner $ # Maintainer: Dan McGee # Maintainer: Dave Reisner pkgname=pacman pkgver=4.1.2 -pkgrel=4 +pkgrel=5 pkgdesc="A library-based package manager with dependency support" arch=('i686' 'x86_64' 'mips64el') url="http://www.archlinux.org/pacman/" @@ -19,6 +19,7 @@ provides=('pacman-contrib') conflicts=('pacman-contrib') replaces=('pacman-contrib') backup=(etc/pacman.conf etc/makepkg.conf) +options=('strip' 'debug') source=(ftp://ftp.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig} pacman.conf.i686 pacman.conf.x86_64 @@ -92,4 +93,6 @@ package() { for f in makepkg pacman-key; do ln -s pacman "$pkgdir/usr/share/bash-completion/completions/$f" done + + install -Dm644 contrib/PKGBUILD.vim "$pkgdir/usr/share/vim/vimfiles/syntax/PKGBUILD.vim" } diff --git a/libre/qupzilla-libre/PKGBUILD b/libre/qupzilla-libre/PKGBUILD index bf945b53f..15446d91b 100644 --- a/libre/qupzilla-libre/PKGBUILD +++ b/libre/qupzilla-libre/PKGBUILD @@ -1,24 +1,24 @@ -# $Id: PKGBUILD 102853 2013-12-22 11:43:13Z speps $ +# $Id: PKGBUILD 103292 2014-01-02 18:15:35Z speps $ # Maintainer: speps # Maintainer (Parabola): André Silva _pkgbase=qupzilla pkgbase=qupzilla-libre pkgname=(qupzilla-libre qupzilla-libre-qt5) -pkgver=1.4.4 -pkgrel=2 +pkgver=1.6.0 +pkgrel=1 arch=(i686 x86_64 mips64el) url="http://www.qupzilla.com/" license=('GPL3') makedepends=('qtwebkit' 'qt5-webkit' 'qt5-script' 'hunspell') optdepends=('bash-completion: bash completion support') -source=("$_pkgbase-$pkgver.tar.gz::https://github.com/QupZilla/$_pkgbase/tarball/v$pkgver" +source=("$_pkgbase-$pkgver.tar.gz::https://github.com/QupZilla/qupzilla/archive/v$pkgver.tar.gz" 'searchenginesmanager.cpp.sed' 'speeddial.cpp.sed' 'start.html.sed') noextract=("$_pkgbase-$pkgver.tar.gz") install="$_pkgbase.install" -md5sums=('cfbf5cd23d184275c389c79a39a28631' +md5sums=('2988c3afbef2612fd4acdb78ebb1fc35' '1d926e97a5b287d40fb695f6516f2a06' '0f166fa102af975b3b8ac030d477e9b8' '77120a0c39ba8254e5b2c273910f029a') @@ -66,7 +66,7 @@ package_qupzilla-libre() { make INSTALL_ROOT="$pkgdir/" install # zsh completion - install -Dm644 linux/completion/zsh_completion.sh \ + install -Dm644 linux/completion/_$_pkgbase \ "$pkgdir/usr/share/zsh/site-functions/_$_pkgbase" } @@ -81,7 +81,7 @@ package_qupzilla-libre-qt5() { make INSTALL_ROOT="$pkgdir/" install # zsh completion - install -Dm644 linux/completion/zsh_completion.sh \ + install -Dm644 linux/completion/_$_pkgbase \ "$pkgdir/usr/share/zsh/site-functions/_$_pkgbase" } -- cgit v1.2.3-54-g00ecf From 94ed6c971085d22c2a544227879b672266b4af90 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sat, 4 Jan 2014 03:38:30 +0000 Subject: Sat Jan 4 03:36:23 UTC 2014 --- community/alure/PKGBUILD | 13 +- community/alure/build.patch | 12 + community/devil/PKGBUILD | 4 +- community/erlang/PKGBUILD | 6 +- community/geos/PKGBUILD | 4 +- community/glibc-static/PKGBUILD | 122 --- .../glibc-2.18-getaddrinfo-CVE-2013-4458.patch | 41 - .../glibc-2.18-getaddrinfo-assertion.patch | 39 - community/glibc-static/glibc-2.18-make-4.patch | 45 - .../glibc-2.18-malloc-corrupt-CVE-2013-4332.patch | 54 -- .../glibc-2.18-ptr-mangle-CVE-2013-4788.patch | 485 ---------- .../glibc-2.18-readdir_r-CVE-2013-4237.patch | 281 ------ .../glibc-2.18-strcoll-CVE-2012-4412+4424.patch | 1004 -------------------- .../glibc-static/glibc-2.18-strstr-hackfix.patch | 13 - community/haskell-dataenc/PKGBUILD | 5 +- community/haskell-haskeline/PKGBUILD | 5 +- community/haskell-terminfo/PKGBUILD | 3 +- community/keepalived/PKGBUILD | 6 +- community/libesmtp/PKGBUILD | 4 +- community/libev/PKGBUILD | 4 +- community/libgeotiff/PKGBUILD | 4 +- community/libxdg-basedir/PKGBUILD | 14 +- community/plib/PKGBUILD | 3 +- community/quesoglc/PKGBUILD | 4 +- community/sqlite2/PKGBUILD | 4 +- community/xulrunner/PKGBUILD | 4 +- core/dbus/PKGBUILD | 37 +- core/grep/PKGBUILD | 6 +- core/libcap/PKGBUILD | 18 +- core/libcap/libcap-2.23-header.patch | 350 +++++++ extra/brltty/PKGBUILD | 4 +- extra/chmlib/PKGBUILD | 4 +- extra/clisp/PKGBUILD | 4 +- extra/crypto++/PKGBUILD | 9 +- extra/dhcp/PKGBUILD | 4 +- extra/ecl/PKGBUILD | 4 +- extra/ffcall/PKGBUILD | 6 +- extra/gmetadom/PKGBUILD | 4 +- extra/poppler/PKGBUILD | 44 +- extra/poppler/poppler-0.24.2-mocversiongrep.patch | 28 + extra/qt5/PKGBUILD | 9 +- libre/calibre-libre/PKGBUILD | 6 +- 42 files changed, 529 insertions(+), 2191 deletions(-) create mode 100644 community/alure/build.patch delete mode 100644 community/glibc-static/PKGBUILD delete mode 100644 community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch delete mode 100644 community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch delete mode 100644 community/glibc-static/glibc-2.18-make-4.patch delete mode 100644 community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch delete mode 100644 community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch delete mode 100644 community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch delete mode 100644 community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch delete mode 100644 community/glibc-static/glibc-2.18-strstr-hackfix.patch create mode 100644 core/libcap/libcap-2.23-header.patch create mode 100644 extra/poppler/poppler-0.24.2-mocversiongrep.patch (limited to 'community') diff --git a/community/alure/PKGBUILD b/community/alure/PKGBUILD index 0db666fa2..009fb566b 100644 --- a/community/alure/PKGBUILD +++ b/community/alure/PKGBUILD @@ -3,7 +3,7 @@ pkgname=alure pkgver=1.2 -pkgrel=2 +pkgrel=3 pkgdesc='Utility library to help manage common tasks with OpenAL applications.' arch=('i686' 'x86_64') url='http://kcat.strangesoft.net/alure.html' @@ -16,8 +16,15 @@ optdepends=('libsndfile: for uncompressed audio support' 'mpg123: for MPEG support' 'dumb: for IT, XM, S3M and MOD support' 'fluidsynth: for SoundFont 2 support') -source=("http://kcat.strangesoft.net/alure-releases/${pkgname}-${pkgver}.tar.bz2") -md5sums=('3088aba074ad02d95ea51e705053b9f5') +source=("http://kcat.strangesoft.net/alure-releases/${pkgname}-${pkgver}.tar.bz2" + build.patch) +md5sums=('3088aba074ad02d95ea51e705053b9f5' + '6a8dfd62ccae920d393b4202736aba46') + +prepare() { + cd $pkgname-$pkgver + patch -p1 -i ../build.patch +} build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/alure/build.patch b/community/alure/build.patch new file mode 100644 index 000000000..6da41c0dd --- /dev/null +++ b/community/alure/build.patch @@ -0,0 +1,12 @@ +diff -rupN a/src/codec_fluidsynth.cpp b/src/codec_fluidsynth.cpp +--- a/src/codec_fluidsynth.cpp 2011-07-29 08:37:48.000000000 +0000 ++++ b/src/codec_fluidsynth.cpp 2014-01-03 10:42:13.280792235 +0000 +@@ -32,7 +32,7 @@ + #endif + + #include +- ++#include + #include + + diff --git a/community/devil/PKGBUILD b/community/devil/PKGBUILD index 30e2754f6..d515db1cb 100644 --- a/community/devil/PKGBUILD +++ b/community/devil/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 99728 2013-10-30 23:21:11Z allan $ +# $Id: PKGBUILD 103318 2014-01-03 10:52:34Z bpiotrowski $ # Maintainer: Laurent Carlier # Contributor: damir # Contributor: TheHoff pkgname=devil pkgver=1.7.8 -pkgrel=17 +pkgrel=18 pkgdesc="Library for reading several different image formats" arch=('i686' 'x86_64') url="http://openil.sourceforge.net/" diff --git a/community/erlang/PKGBUILD b/community/erlang/PKGBUILD index 88229282d..33dbdbb72 100644 --- a/community/erlang/PKGBUILD +++ b/community/erlang/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 102626 2013-12-16 21:55:05Z arodseth $ +# $Id: PKGBUILD 103349 2014-01-03 20:02:33Z arodseth $ # Maintainer: Lukas Fleischer # Maintainer: Alexander Rødseth # Contributor: Vesa Kaihlavirta @@ -9,11 +9,11 @@ pkgbase=erlang pkgname=('erlang' 'erlang-unixodbc') pkgver=R16B03 -pkgrel=2 +pkgrel=3 arch=('x86_64' 'i686') url='http://www.erlang.org/' license=('custom') -makedepends=('perl' 'mesa' 'lksctp-tools' 'unixodbc' 'wxgtk' 'wxgtk2.9') +makedepends=('perl' 'mesa' 'lksctp-tools' 'unixodbc' 'wxgtk' 'wxgtk2.9' 'glu') options=('staticlibs') source=("http://www.erlang.org/download/otp_src_${pkgver/_/-}.tar.gz" "http://www.erlang.org/download/otp_doc_man_${pkgver/_/-}.tar.gz" diff --git a/community/geos/PKGBUILD b/community/geos/PKGBUILD index 62a579c35..ed6b89f9e 100644 --- a/community/geos/PKGBUILD +++ b/community/geos/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 99758 2013-10-30 23:32:00Z allan $ +# $Id: PKGBUILD 103320 2014-01-03 10:52:48Z bpiotrowski $ # Maintainer: Jaroslav Lichtblau # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: William Rea @@ -6,7 +6,7 @@ pkgname=geos pkgver=3.4.2 -pkgrel=1 +pkgrel=2 pkgdesc="C++ port of the Java Topology Suite" arch=('x86_64' 'i686') url="http://trac.osgeo.org/geos/" diff --git a/community/glibc-static/PKGBUILD b/community/glibc-static/PKGBUILD deleted file mode 100644 index cff060a60..000000000 --- a/community/glibc-static/PKGBUILD +++ /dev/null @@ -1,122 +0,0 @@ -# $Id: PKGBUILD 197798 2013-10-30 10:37:54Z allan $ -# Maintainer: Allan McRae - -# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc -# NOTE: valgrind requires rebuilt with each major glibc version - -# NOTE: adjust version in install script when locale files are updated - -pkgname=glibc-static -pkgver=2.18 -pkgrel=1 -pkgdesc="GNU C Library" -arch=('i686' 'x86_64') -url="http://www.gnu.org/software/libc" -license=('GPL' 'LGPL') -groups=('base') -depends=('linux-api-headers>=3.7' 'tzdata' 'filesystem>=2013.01') -makedepends=('gcc>=4.7') -options=('!strip' 'staticlibs') -source=(http://ftp.gnu.org/gnu/libc/glibc-${pkgver}.tar.xz{,.sig} - glibc-2.18-make-4.patch - glibc-2.18-readdir_r-CVE-2013-4237.patch - glibc-2.18-malloc-corrupt-CVE-2013-4332.patch - glibc-2.18-strcoll-CVE-2012-4412+4424.patch - glibc-2.18-ptr-mangle-CVE-2013-4788.patch - glibc-2.18-getaddrinfo-CVE-2013-4458.patch - glibc-2.18-getaddrinfo-assertion.patch - glibc-2.18-strstr-hackfix.patch) -md5sums=('88fbbceafee809e82efd52efa1e3c58f' - 'SKIP' - 'e1883c2d1b01ff73650db5f5bb5a5a52' - '154da6bf5a5248f42a7bf5bf08e01a47' - 'b79561ab9dce900e9bbeaf0d49927c2b' - 'c7264b99d0f7e51922a4d3126182c40a' - '9749ba386b08a8fe53e7ecede9bf2dfb' - '71329fccb8eb583fb0d67b55f1e8df68' - 'd4d86add33f22125777e0ecff06bc9bb' - '4441f6dfe7d75ced1fa75e54dd21d36e') - -prepare() { - cd ${srcdir}/glibc-${pkgver} - - # compatibility with make-4.0 (submitted upstream) - patch -p1 -i $srcdir/glibc-2.18-make-4.patch - - # upstream commit 91ce4085 - patch -p1 -i $srcdir/glibc-2.18-readdir_r-CVE-2013-4237.patch - - # upstream commits 1159a193, 55e17aad and b73ed247 - patch -p1 -i $srcdir/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch - - # upstream commits 1326ba1a, 141f3a77 and 303e567a - patch -p1 -i $srcdir/glibc-2.18-strcoll-CVE-2012-4412+4424.patch - - # upstream commits c61b4d41 and 0b1f8e35 - patch -p1 -i $srcdir/glibc-2.18-ptr-mangle-CVE-2013-4788.patch - - # upstream commit 7cbcdb36 - patch -p1 -i $srcdir/glibc-2.18-getaddrinfo-CVE-2013-4458.patch - - # upstream commit 894f3f10 - patch -p1 -i $srcdir/glibc-2.18-getaddrinfo-assertion.patch - - # hack fix for strstr issues on x86 - patch -p1 -i $srcdir/glibc-2.18-strstr-hackfix.patch - - mkdir ${srcdir}/glibc-build -} - -build() { - cd ${srcdir}/glibc-build - - if [[ ${CARCH} = "i686" ]]; then - # Hack to fix NPTL issues with Xen, only required on 32bit platforms - # TODO: make separate glibc-xen package for i686 - export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs" - fi - - echo "slibdir=/usr/lib" >> configparms - echo "sbindir=/usr/bin" >> configparms - echo "rootsbindir=/usr/bin" >> configparms - - # remove hardening options for building libraries - CFLAGS=${CFLAGS/-fstack-protector/} - CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} - - ${srcdir}/glibc-${pkgver}/configure --prefix=/usr \ - --libdir=/usr/lib --libexecdir=/usr/lib \ - --with-headers=/usr/include \ - --with-bugurl=https://bugs.archlinux.org/ \ - --enable-add-ons=nptl,libidn \ - --enable-obsolete-rpc \ - --enable-kernel=2.6.32 \ - --enable-bind-now --disable-profile \ - --enable-stackguard-randomization \ - --enable-lock-elision \ - --enable-multi-arch - - # build libraries with hardening disabled - echo "build-programs=no" >> configparms - make - - # re-enable hardening for programs - sed -i "/build-programs=/s#no#yes#" configparms - echo "CC += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms - echo "CXX += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms - make - - # remove harding in preparation to run test-suite - sed -i '4,6d' configparms -} - -package() { - cd ${srcdir}/glibc-build - make install_root=${pkgdir} install - rm -rf $pkgdir/usr/{bin,include,share,lib/{pkgconfig,audit,gconv,getconf}} - rm -rf $pkgdir/{etc,var} - rm -f $pkgdir/usr/lib/*.so* - rm -f $pkgdir/usr/lib/*.o - rm -f $pkgdir/usr/lib/lib{bsd-compat,c,c_nonshared,dl,g,ieee,m,mcheck,pthread,pthread_nonshared,rpcsvc}.a - strip $STRIP_STATIC $pkgdir/usr/lib/*.a -} diff --git a/community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch b/community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch deleted file mode 100644 index a7bc67c6f..000000000 --- a/community/glibc-static/glibc-2.18-getaddrinfo-CVE-2013-4458.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c -index e6ce4cf..8ff74b4 100644 ---- a/sysdeps/posix/getaddrinfo.c -+++ b/sysdeps/posix/getaddrinfo.c -@@ -197,7 +197,22 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, - &rc, &herrno, NULL, &localcanon)); \ - if (rc != ERANGE || herrno != NETDB_INTERNAL) \ - break; \ -- tmpbuf = extend_alloca (tmpbuf, tmpbuflen, 2 * tmpbuflen); \ -+ if (!malloc_tmpbuf && __libc_use_alloca (alloca_used + 2 * tmpbuflen)) \ -+ tmpbuf = extend_alloca_account (tmpbuf, tmpbuflen, 2 * tmpbuflen, \ -+ alloca_used); \ -+ else \ -+ { \ -+ char *newp = realloc (malloc_tmpbuf ? tmpbuf : NULL, \ -+ 2 * tmpbuflen); \ -+ if (newp == NULL) \ -+ { \ -+ result = -EAI_MEMORY; \ -+ goto free_and_return; \ -+ } \ -+ tmpbuf = newp; \ -+ malloc_tmpbuf = true; \ -+ tmpbuflen = 2 * tmpbuflen; \ -+ } \ - } \ - if (status == NSS_STATUS_SUCCESS && rc == 0) \ - h = &th; \ -@@ -209,7 +224,8 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, - { \ - __set_h_errno (herrno); \ - _res.options |= old_res_options & RES_USE_INET6; \ -- return -EAI_SYSTEM; \ -+ result = -EAI_SYSTEM; \ -+ goto free_and_return; \ - } \ - if (herrno == TRY_AGAIN) \ - no_data = EAI_AGAIN; \ --- -1.8.4.1 - diff --git a/community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch b/community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch deleted file mode 100644 index 2f1f7c694..000000000 --- a/community/glibc-static/glibc-2.18-getaddrinfo-assertion.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c -index 0f4b885..e6ce4cf 100644 ---- a/sysdeps/posix/getaddrinfo.c -+++ b/sysdeps/posix/getaddrinfo.c -@@ -1666,13 +1666,13 @@ rfc3484_sort (const void *p1, const void *p2, void *arg) - - /* Fill in the results in all the records. */ - for (int i = 0; i < src->nresults; ++i) -- if (src->results[i].index == a1_index) -+ if (a1_index != -1 && src->results[i].index == a1_index) - { - assert (src->results[i].native == -1 - || src->results[i].native == a1_native); - src->results[i].native = a1_native; - } -- else if (src->results[i].index == a2_index) -+ else if (a2_index != -1 && src->results[i].index == a2_index) - { - assert (src->results[i].native == -1 - || src->results[i].native == a2_native); -@@ -2532,7 +2532,14 @@ getaddrinfo (const char *name, const char *service, - tmp.addr[0] = 0; - tmp.addr[1] = 0; - tmp.addr[2] = htonl (0xffff); -- tmp.addr[3] = sinp->sin_addr.s_addr; -+ /* Special case for lo interface, the source address -+ being possibly different than the interface -+ address. */ -+ if ((ntohl(sinp->sin_addr.s_addr) & 0xff000000) -+ == 0x7f000000) -+ tmp.addr[3] = htonl(0x7f000001); -+ else -+ tmp.addr[3] = sinp->sin_addr.s_addr; - } - else - { --- -1.8.4.1 - diff --git a/community/glibc-static/glibc-2.18-make-4.patch b/community/glibc-static/glibc-2.18-make-4.patch deleted file mode 100644 index 374933464..000000000 --- a/community/glibc-static/glibc-2.18-make-4.patch +++ /dev/null @@ -1,45 +0,0 @@ -From dc76f0c32dae689a08aa21a1d206d4cd62adb278 Mon Sep 17 00:00:00 2001 -From: Marc-Antoine Perennou -Date: Thu, 10 Oct 2013 14:26:12 +0900 -Subject: [PATCH] configure: allow building with GNU Make 4 - -Currently, configure errors telling make 4 is too old -since it does not match our regexp. - -configure.in: allow GNU Make 4.* - -Signed-off-by: Marc-Antoine Perennou ---- - configure | 2 +- - configure.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index 5e2f4d0..e139bf0 100755 ---- a/configure -+++ b/configure -@@ -4761,7 +4761,7 @@ $as_echo_n "checking version of $MAKE... " >&6; } - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | 4.*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -diff --git a/configure.in b/configure.in -index a7f9881..95c36b6 100644 ---- a/configure.in -+++ b/configure.in -@@ -984,7 +984,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v, - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | 4.*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], --- -1.8.4.1 - diff --git a/community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch b/community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch deleted file mode 100644 index 093db86c9..000000000 --- a/community/glibc-static/glibc-2.18-malloc-corrupt-CVE-2013-4332.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff --git a/malloc/malloc.c b/malloc/malloc.c -index dd295f5..7f43ba3 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3082,6 +3082,13 @@ __libc_pvalloc(size_t bytes) - size_t page_mask = GLRO(dl_pagesize) - 1; - size_t rounded_bytes = (bytes + page_mask) & ~(page_mask); - -+ /* Check for overflow. */ -+ if (bytes > SIZE_MAX - 2*pagesz - MINSIZE) -+ { -+ __set_errno (ENOMEM); -+ return 0; -+ } -+ - void *(*hook) (size_t, size_t, const void *) = - force_reg (__memalign_hook); - if (__builtin_expect (hook != NULL, 0)) -diff --git a/malloc/malloc.c b/malloc/malloc.c -index 7f43ba3..3148c5f 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3046,6 +3046,13 @@ __libc_valloc(size_t bytes) - - size_t pagesz = GLRO(dl_pagesize); - -+ /* Check for overflow. */ -+ if (bytes > SIZE_MAX - pagesz - MINSIZE) -+ { -+ __set_errno (ENOMEM); -+ return 0; -+ } -+ - void *(*hook) (size_t, size_t, const void *) = - force_reg (__memalign_hook); - if (__builtin_expect (hook != NULL, 0)) -diff --git a/malloc/malloc.c b/malloc/malloc.c -index 3148c5f..f7718a9 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3015,6 +3015,13 @@ __libc_memalign(size_t alignment, size_t bytes) - /* Otherwise, ensure that it is at least a minimum chunk size */ - if (alignment < MINSIZE) alignment = MINSIZE; - -+ /* Check for overflow. */ -+ if (bytes > SIZE_MAX - alignment - MINSIZE) -+ { -+ __set_errno (ENOMEM); -+ return 0; -+ } -+ - arena_get(ar_ptr, bytes + alignment + MINSIZE); - if(!ar_ptr) - return 0; diff --git a/community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch b/community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch deleted file mode 100644 index 09a439440..000000000 --- a/community/glibc-static/glibc-2.18-ptr-mangle-CVE-2013-4788.patch +++ /dev/null @@ -1,485 +0,0 @@ -diff --git a/csu/libc-start.c b/csu/libc-start.c -index e5da3ef..c898d06 100644 ---- a/csu/libc-start.c -+++ b/csu/libc-start.c -@@ -37,6 +37,12 @@ extern void __pthread_initialize_minimal (void); - in thread local area. */ - uintptr_t __stack_chk_guard attribute_relro; - # endif -+# ifndef THREAD_SET_POINTER_GUARD -+/* Only exported for architectures that don't store the pointer guard -+ value in thread local area. */ -+uintptr_t __pointer_chk_guard_local -+ attribute_relro attribute_hidden __attribute__ ((nocommon)); -+# endif - #endif - - #ifdef HAVE_PTR_NTHREADS -@@ -195,6 +201,16 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), - # else - __stack_chk_guard = stack_chk_guard; - # endif -+ -+ /* Set up the pointer guard value. */ -+ uintptr_t pointer_chk_guard = _dl_setup_pointer_guard (_dl_random, -+ stack_chk_guard); -+# ifdef THREAD_SET_POINTER_GUARD -+ THREAD_SET_POINTER_GUARD (pointer_chk_guard); -+# else -+ __pointer_chk_guard_local = pointer_chk_guard; -+# endif -+ - #endif - - /* Register the destructor of the dynamic linker if there is any. */ -diff --git a/elf/Makefile b/elf/Makefile -index aaa9534..cb8da93 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -121,7 +121,8 @@ endif - tests = tst-tls1 tst-tls2 tst-tls9 tst-leaks1 \ - tst-array1 tst-array2 tst-array3 tst-array4 tst-array5 - tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static \ -- tst-leaks1-static tst-array1-static tst-array5-static -+ tst-leaks1-static tst-array1-static tst-array5-static \ -+ tst-ptrguard1-static - ifeq (yes,$(build-shared)) - tests-static += tst-tls9-static - tst-tls9-static-ENV = \ -@@ -145,7 +146,8 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \ - tst-audit1 tst-audit2 tst-audit8 \ - tst-stackguard1 tst-addr1 tst-thrlock \ - tst-unique1 tst-unique2 tst-unique3 tst-unique4 \ -- tst-initorder tst-initorder2 tst-relsort1 tst-null-argv -+ tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \ -+ tst-ptrguard1 - # reldep9 - test-srcs = tst-pathopt - selinux-enabled := $(shell cat /selinux/enforce 2> /dev/null) -@@ -1016,6 +1018,9 @@ LDFLAGS-order2mod2.so = $(no-as-needed) - tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" - tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" - -+tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child" -+tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child" -+ - $(objpfx)tst-leaks1: $(libdl) - $(objpfx)tst-leaks1-mem: $(objpfx)tst-leaks1.out - $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1.mtrace > $@ -diff --git a/elf/tst-ptrguard1-static.c b/elf/tst-ptrguard1-static.c -new file mode 100644 -index 0000000..7aff3b7 ---- /dev/null -+++ b/elf/tst-ptrguard1-static.c -@@ -0,0 +1 @@ -+#include "tst-ptrguard1.c" -diff --git a/elf/tst-ptrguard1.c b/elf/tst-ptrguard1.c -new file mode 100644 -index 0000000..c344a04 ---- /dev/null -+++ b/elf/tst-ptrguard1.c -@@ -0,0 +1,202 @@ -+/* Copyright (C) 2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#ifndef POINTER_CHK_GUARD -+extern uintptr_t __pointer_chk_guard; -+# define POINTER_CHK_GUARD __pointer_chk_guard -+#endif -+ -+static const char *command; -+static bool child; -+static uintptr_t ptr_chk_guard_copy; -+static bool ptr_chk_guard_copy_set; -+static int fds[2]; -+ -+static void __attribute__ ((constructor)) -+con (void) -+{ -+ ptr_chk_guard_copy = POINTER_CHK_GUARD; -+ ptr_chk_guard_copy_set = true; -+} -+ -+static int -+uintptr_t_cmp (const void *a, const void *b) -+{ -+ if (*(uintptr_t *) a < *(uintptr_t *) b) -+ return 1; -+ if (*(uintptr_t *) a > *(uintptr_t *) b) -+ return -1; -+ return 0; -+} -+ -+static int -+do_test (void) -+{ -+ if (!ptr_chk_guard_copy_set) -+ { -+ puts ("constructor has not been run"); -+ return 1; -+ } -+ -+ if (ptr_chk_guard_copy != POINTER_CHK_GUARD) -+ { -+ puts ("POINTER_CHK_GUARD changed between constructor and do_test"); -+ return 1; -+ } -+ -+ if (child) -+ { -+ write (2, &ptr_chk_guard_copy, sizeof (ptr_chk_guard_copy)); -+ return 0; -+ } -+ -+ if (command == NULL) -+ { -+ puts ("missing --command or --child argument"); -+ return 1; -+ } -+ -+#define N 16 -+ uintptr_t child_ptr_chk_guards[N + 1]; -+ child_ptr_chk_guards[N] = ptr_chk_guard_copy; -+ int i; -+ for (i = 0; i < N; ++i) -+ { -+ if (pipe (fds) < 0) -+ { -+ printf ("couldn't create pipe: %m\n"); -+ return 1; -+ } -+ -+ pid_t pid = fork (); -+ if (pid < 0) -+ { -+ printf ("fork failed: %m\n"); -+ return 1; -+ } -+ -+ if (!pid) -+ { -+ if (ptr_chk_guard_copy != POINTER_CHK_GUARD) -+ { -+ puts ("POINTER_CHK_GUARD changed after fork"); -+ exit (1); -+ } -+ -+ close (fds[0]); -+ close (2); -+ dup2 (fds[1], 2); -+ close (fds[1]); -+ -+ system (command); -+ exit (0); -+ } -+ -+ close (fds[1]); -+ -+ if (TEMP_FAILURE_RETRY (read (fds[0], &child_ptr_chk_guards[i], -+ sizeof (uintptr_t))) != sizeof (uintptr_t)) -+ { -+ puts ("could not read ptr_chk_guard value from child"); -+ return 1; -+ } -+ -+ close (fds[0]); -+ -+ pid_t termpid; -+ int status; -+ termpid = TEMP_FAILURE_RETRY (waitpid (pid, &status, 0)); -+ if (termpid == -1) -+ { -+ printf ("waitpid failed: %m\n"); -+ return 1; -+ } -+ else if (termpid != pid) -+ { -+ printf ("waitpid returned %ld != %ld\n", -+ (long int) termpid, (long int) pid); -+ return 1; -+ } -+ else if (!WIFEXITED (status) || WEXITSTATUS (status)) -+ { -+ puts ("child hasn't exited with exit status 0"); -+ return 1; -+ } -+ } -+ -+ qsort (child_ptr_chk_guards, N + 1, sizeof (uintptr_t), uintptr_t_cmp); -+ -+ /* The default pointer guard is the same as the default stack guard. -+ They are only set to default if dl_random is NULL. */ -+ uintptr_t default_guard = 0; -+ unsigned char *p = (unsigned char *) &default_guard; -+ p[sizeof (uintptr_t) - 1] = 255; -+ p[sizeof (uintptr_t) - 2] = '\n'; -+ p[0] = 0; -+ -+ /* Test if the pointer guard canaries are either randomized, -+ or equal to the default pointer guard value. -+ Even with randomized pointer guards it might happen -+ that the random number generator generates the same -+ values, but if that happens in more than half from -+ the 16 runs, something is very wrong. */ -+ int ndifferences = 0; -+ int ndefaults = 0; -+ for (i = 0; i < N; ++i) -+ { -+ if (child_ptr_chk_guards[i] != child_ptr_chk_guards[i+1]) -+ ndifferences++; -+ else if (child_ptr_chk_guards[i] == default_guard) -+ ndefaults++; -+ } -+ -+ printf ("differences %d defaults %d\n", ndifferences, ndefaults); -+ -+ if (ndifferences < N / 2 && ndefaults < N / 2) -+ { -+ puts ("pointer guard values are not randomized enough"); -+ puts ("nor equal to the default value"); -+ return 1; -+ } -+ -+ return 0; -+} -+ -+#define OPT_COMMAND 10000 -+#define OPT_CHILD 10001 -+#define CMDLINE_OPTIONS \ -+ { "command", required_argument, NULL, OPT_COMMAND }, \ -+ { "child", no_argument, NULL, OPT_CHILD }, -+#define CMDLINE_PROCESS \ -+ case OPT_COMMAND: \ -+ command = optarg; \ -+ break; \ -+ case OPT_CHILD: \ -+ child = true; \ -+ break; -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" -diff --git a/ports/sysdeps/ia64/stackguard-macros.h b/ports/sysdeps/ia64/stackguard-macros.h -index dc683c2..3907293 100644 ---- a/ports/sysdeps/ia64/stackguard-macros.h -+++ b/ports/sysdeps/ia64/stackguard-macros.h -@@ -2,3 +2,6 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("adds %0 = -8, r13;; ld8 %0 = [%0]" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("adds %0 = -16, r13;; ld8 %0 = [%0]" : "=r" (x)); x; }) -diff --git a/ports/sysdeps/tile/stackguard-macros.h b/ports/sysdeps/tile/stackguard-macros.h -index 589ea2b..f2e041b 100644 ---- a/ports/sysdeps/tile/stackguard-macros.h -+++ b/ports/sysdeps/tile/stackguard-macros.h -@@ -4,11 +4,17 @@ - # if __WORDSIZE == 64 - # define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("addi %0, tp, -16; ld %0, %0" : "=r" (x)); x; }) -+# define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("addi %0, tp, -24; ld %0, %0" : "=r" (x)); x; }) - # else - # define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("addi %0, tp, -8; ld4s %0, %0" : "=r" (x)); x; }) -+# define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("addi %0, tp, -12; ld4s %0, %0" : "=r" (x)); x; }) - # endif - #else - # define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("addi %0, tp, -8; lw %0, %0" : "=r" (x)); x; }) -+# define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("addi %0, tp, -12; lw %0, %0" : "=r" (x)); x; }) - #endif -diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h -index ababf65..4fa3d96 100644 ---- a/sysdeps/generic/stackguard-macros.h -+++ b/sysdeps/generic/stackguard-macros.h -@@ -2,3 +2,6 @@ - - extern uintptr_t __stack_chk_guard; - #define STACK_CHK_GUARD __stack_chk_guard -+ -+extern uintptr_t __pointer_chk_guard_local; -+#define POINTER_CHK_GUARD __pointer_chk_guard_local -diff --git a/sysdeps/i386/stackguard-macros.h b/sysdeps/i386/stackguard-macros.h -index 8c31e19..0397629 100644 ---- a/sysdeps/i386/stackguard-macros.h -+++ b/sysdeps/i386/stackguard-macros.h -@@ -2,3 +2,11 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("movl %%gs:0x14, %0" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("movl %%gs:%c1, %0" : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard))); \ -+ x; \ -+ }) -diff --git a/sysdeps/powerpc/powerpc32/stackguard-macros.h b/sysdeps/powerpc/powerpc32/stackguard-macros.h -index 839f6a4..b3d0af8 100644 ---- a/sysdeps/powerpc/powerpc32/stackguard-macros.h -+++ b/sysdeps/powerpc/powerpc32/stackguard-macros.h -@@ -2,3 +2,13 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("lwz %0,-28680(2)" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("lwz %0,%1(2)" \ -+ : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \ -+ ); \ -+ x; \ -+ }) -diff --git a/sysdeps/powerpc/powerpc64/stackguard-macros.h b/sysdeps/powerpc/powerpc64/stackguard-macros.h -index 9da879c..4620f96 100644 ---- a/sysdeps/powerpc/powerpc64/stackguard-macros.h -+++ b/sysdeps/powerpc/powerpc64/stackguard-macros.h -@@ -2,3 +2,13 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ld %0,-28688(13)" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("ld %0,%1(2)" \ -+ : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \ -+ ); \ -+ x; \ -+ }) -diff --git a/sysdeps/s390/s390-32/stackguard-macros.h b/sysdeps/s390/s390-32/stackguard-macros.h -index b74c579..449e8d4 100644 ---- a/sysdeps/s390/s390-32/stackguard-macros.h -+++ b/sysdeps/s390/s390-32/stackguard-macros.h -@@ -2,3 +2,14 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ear %0,%%a0; l %0,0x14(%0)" : "=a" (x)); x; }) -+ -+/* On s390/s390x there is no unique pointer guard, instead we use the -+ same value as the stack guard. */ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("ear %0,%%a0; l %0,%1(%0)" \ -+ : "=a" (x) \ -+ : "i" (offsetof (tcbhead_t, stack_guard))); \ -+ x; \ -+ }) -diff --git a/sysdeps/s390/s390-64/stackguard-macros.h b/sysdeps/s390/s390-64/stackguard-macros.h -index 0cebb5f..c8270fb 100644 ---- a/sysdeps/s390/s390-64/stackguard-macros.h -+++ b/sysdeps/s390/s390-64/stackguard-macros.h -@@ -2,3 +2,17 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ear %0,%%a0; sllg %0,%0,32; ear %0,%%a1; lg %0,0x28(%0)" : "=a" (x)); x; }) -+ -+/* On s390/s390x there is no unique pointer guard, instead we use the -+ same value as the stack guard. */ -+#define POINTER_CHK_GUARD \ -+ ({ \ -+ uintptr_t x; \ -+ asm ("ear %0,%%a0;" \ -+ "sllg %0,%0,32;" \ -+ "ear %0,%%a1;" \ -+ "lg %0,%1(%0)" \ -+ : "=a" (x) \ -+ : "i" (offsetof (tcbhead_t, stack_guard))); \ -+ x; \ -+ }) -diff --git a/sysdeps/sparc/sparc32/stackguard-macros.h b/sysdeps/sparc/sparc32/stackguard-macros.h -index c0b02b0..1eef0f1 100644 ---- a/sysdeps/sparc/sparc32/stackguard-macros.h -+++ b/sysdeps/sparc/sparc32/stackguard-macros.h -@@ -2,3 +2,6 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ld [%%g7+0x14], %0" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("ld [%%g7+0x18], %0" : "=r" (x)); x; }) -diff --git a/sysdeps/sparc/sparc64/stackguard-macros.h b/sysdeps/sparc/sparc64/stackguard-macros.h -index 80f0635..cc0c12c 100644 ---- a/sysdeps/sparc/sparc64/stackguard-macros.h -+++ b/sysdeps/sparc/sparc64/stackguard-macros.h -@@ -2,3 +2,6 @@ - - #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("ldx [%%g7+0x28], %0" : "=r" (x)); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; asm ("ldx [%%g7+0x30], %0" : "=r" (x)); x; }) -diff --git a/sysdeps/x86_64/stackguard-macros.h b/sysdeps/x86_64/stackguard-macros.h -index d7fedb3..1948800 100644 ---- a/sysdeps/x86_64/stackguard-macros.h -+++ b/sysdeps/x86_64/stackguard-macros.h -@@ -4,3 +4,8 @@ - ({ uintptr_t x; \ - asm ("mov %%fs:%c1, %0" : "=r" (x) \ - : "i" (offsetof (tcbhead_t, stack_guard))); x; }) -+ -+#define POINTER_CHK_GUARD \ -+ ({ uintptr_t x; \ -+ asm ("mov %%fs:%c1, %0" : "=r" (x) \ -+ : "i" (offsetof (tcbhead_t, pointer_guard))); x; }) -diff --git a/elf/Makefile b/elf/Makefile -index cb8da93..27d249b 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -1019,6 +1019,9 @@ tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" - tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" - - tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child" -+# When built statically, the pointer guard interface uses -+# __pointer_chk_guard_local. -+CFLAGS-tst-ptrguard1-static.c = -DPTRGUARD_LOCAL - tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child" - - $(objpfx)tst-leaks1: $(libdl) -diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h -index 4fa3d96..b4a6b23 100644 ---- a/sysdeps/generic/stackguard-macros.h -+++ b/sysdeps/generic/stackguard-macros.h -@@ -3,5 +3,10 @@ - extern uintptr_t __stack_chk_guard; - #define STACK_CHK_GUARD __stack_chk_guard - -+#ifdef PTRGUARD_LOCAL - extern uintptr_t __pointer_chk_guard_local; --#define POINTER_CHK_GUARD __pointer_chk_guard_local -+# define POINTER_CHK_GUARD __pointer_chk_guard_local -+#else -+extern uintptr_t __pointer_chk_guard; -+# define POINTER_CHK_GUARD __pointer_chk_guard -+#endif diff --git a/community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch b/community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch deleted file mode 100644 index 7277ca229..000000000 --- a/community/glibc-static/glibc-2.18-readdir_r-CVE-2013-4237.patch +++ /dev/null @@ -1,281 +0,0 @@ -diff --git a/manual/conf.texi b/manual/conf.texi -index 7eb8b36..c720063 100644 ---- a/manual/conf.texi -+++ b/manual/conf.texi -@@ -1149,6 +1149,9 @@ typed ahead as input. @xref{I/O Queues}. - @deftypevr Macro int NAME_MAX - The uniform system limit (if any) for the length of a file name component, not - including the terminating null character. -+ -+@strong{Portability Note:} On some systems, @theglibc{} defines -+@code{NAME_MAX}, but does not actually enforce this limit. - @end deftypevr - - @comment limits.h -@@ -1157,6 +1160,9 @@ including the terminating null character. - The uniform system limit (if any) for the length of an entire file name (that - is, the argument given to system calls such as @code{open}), including the - terminating null character. -+ -+@strong{Portability Note:} @Theglibc{} does not enforce this limit -+even if @code{PATH_MAX} is defined. - @end deftypevr - - @cindex limits, pipe buffer size -@@ -1476,6 +1482,9 @@ Inquire about the value of @code{POSIX_REC_MIN_XFER_SIZE}. - Inquire about the value of @code{POSIX_REC_XFER_ALIGN}. - @end table - -+@strong{Portability Note:} On some systems, @theglibc{} does not -+enforce @code{_PC_NAME_MAX} or @code{_PC_PATH_MAX} limits. -+ - @node Utility Limits - @section Utility Program Capacity Limits - -diff --git a/manual/filesys.texi b/manual/filesys.texi -index 1df9cf2..814c210 100644 ---- a/manual/filesys.texi -+++ b/manual/filesys.texi -@@ -444,9 +444,9 @@ symbols are declared in the header file @file{dirent.h}. - @comment POSIX.1 - @deftypefun {struct dirent *} readdir (DIR *@var{dirstream}) - This function reads the next entry from the directory. It normally --returns a pointer to a structure containing information about the file. --This structure is statically allocated and can be rewritten by a --subsequent call. -+returns a pointer to a structure containing information about the -+file. This structure is associated with the @var{dirstream} handle -+and can be rewritten by a subsequent call. - - @strong{Portability Note:} On some systems @code{readdir} may not - return entries for @file{.} and @file{..}, even though these are always -@@ -461,19 +461,61 @@ conditions are defined for this function: - The @var{dirstream} argument is not valid. - @end table - --@code{readdir} is not thread safe. Multiple threads using --@code{readdir} on the same @var{dirstream} may overwrite the return --value. Use @code{readdir_r} when this is critical. -+To distinguish between an end-of-directory condition or an error, you -+must set @code{errno} to zero before calling @code{readdir}. To avoid -+entering an infinite loop, you should stop reading from the directory -+after the first error. -+ -+In POSIX.1-2008, @code{readdir} is not thread-safe. In @theglibc{} -+implementation, it is safe to call @code{readdir} concurrently on -+different @var{dirstream}s, but multiple threads accessing the same -+@var{dirstream} result in undefined behavior. @code{readdir_r} is a -+fully thread-safe alternative, but suffers from poor portability (see -+below). It is recommended that you use @code{readdir}, with external -+locking if multiple threads access the same @var{dirstream}. - @end deftypefun - - @comment dirent.h - @comment GNU - @deftypefun int readdir_r (DIR *@var{dirstream}, struct dirent *@var{entry}, struct dirent **@var{result}) --This function is the reentrant version of @code{readdir}. Like --@code{readdir} it returns the next entry from the directory. But to --prevent conflicts between simultaneously running threads the result is --not stored in statically allocated memory. Instead the argument --@var{entry} points to a place to store the result. -+This function is a version of @code{readdir} which performs internal -+locking. Like @code{readdir} it returns the next entry from the -+directory. To prevent conflicts between simultaneously running -+threads the result is stored inside the @var{entry} object. -+ -+@strong{Portability Note:} It is recommended to use @code{readdir} -+instead of @code{readdir_r} for the following reasons: -+ -+@itemize @bullet -+@item -+On systems which do not define @code{NAME_MAX}, it may not be possible -+to use @code{readdir_r} safely because the caller does not specify the -+length of the buffer for the directory entry. -+ -+@item -+On some systems, @code{readdir_r} cannot read directory entries with -+very long names. If such a name is encountered, @theglibc{} -+implementation of @code{readdir_r} returns with an error code of -+@code{ENAMETOOLONG} after the final directory entry has been read. On -+other systems, @code{readdir_r} may return successfully, but the -+@code{d_name} member may not be NUL-terminated or may be truncated. -+ -+@item -+POSIX-1.2008 does not guarantee that @code{readdir} is thread-safe, -+even when access to the same @var{dirstream} is serialized. But in -+current implementations (including @theglibc{}), it is safe to call -+@code{readdir} concurrently on different @var{dirstream}s, so there is -+no need to use @code{readdir_r} in most multi-threaded programs. In -+the rare case that multiple threads need to read from the same -+@var{dirstream}, it is still better to use @code{readdir} and external -+synchronization. -+ -+@item -+It is expected that future versions of POSIX will obsolete -+@code{readdir_r} and mandate the level of thread safety for -+@code{readdir} which is provided by @theglibc{} and other -+implementations today. -+@end itemize - - Normally @code{readdir_r} returns zero and sets @code{*@var{result}} - to @var{entry}. If there are no more entries in the directory or an -@@ -481,15 +523,6 @@ error is detected, @code{readdir_r} sets @code{*@var{result}} to a - null pointer and returns a nonzero error code, also stored in - @code{errno}, as described for @code{readdir}. - --@strong{Portability Note:} On some systems @code{readdir_r} may not --return a NUL terminated string for the file name, even when there is no --@code{d_reclen} field in @code{struct dirent} and the file --name is the maximum allowed size. Modern systems all have the --@code{d_reclen} field, and on old systems multi-threading is not --critical. In any case there is no such problem with the @code{readdir} --function, so that even on systems without the @code{d_reclen} member one --could use multiple threads by using external locking. -- - It is also important to look at the definition of the @code{struct - dirent} type. Simply passing a pointer to an object of this type for - the second parameter of @code{readdir_r} might not be enough. Some -diff --git a/sysdeps/posix/dirstream.h b/sysdeps/posix/dirstream.h -index a7a074d..8e8570d 100644 ---- a/sysdeps/posix/dirstream.h -+++ b/sysdeps/posix/dirstream.h -@@ -39,6 +39,8 @@ struct __dirstream - - off_t filepos; /* Position of next entry to read. */ - -+ int errcode; /* Delayed error code. */ -+ - /* Directory block. */ - char data[0] __attribute__ ((aligned (__alignof__ (void*)))); - }; -diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c -index ddfc3a7..fc05b0f 100644 ---- a/sysdeps/posix/opendir.c -+++ b/sysdeps/posix/opendir.c -@@ -231,6 +231,7 @@ __alloc_dir (int fd, bool close_fd, int flags, const struct stat64 *statp) - dirp->size = 0; - dirp->offset = 0; - dirp->filepos = 0; -+ dirp->errcode = 0; - - return dirp; - } -diff --git a/sysdeps/posix/readdir_r.c b/sysdeps/posix/readdir_r.c -index b5a8e2e..8ed5c3f 100644 ---- a/sysdeps/posix/readdir_r.c -+++ b/sysdeps/posix/readdir_r.c -@@ -40,6 +40,7 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) - DIRENT_TYPE *dp; - size_t reclen; - const int saved_errno = errno; -+ int ret; - - __libc_lock_lock (dirp->lock); - -@@ -70,10 +71,10 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) - bytes = 0; - __set_errno (saved_errno); - } -+ if (bytes < 0) -+ dirp->errcode = errno; - - dp = NULL; -- /* Reclen != 0 signals that an error occurred. */ -- reclen = bytes != 0; - break; - } - dirp->size = (size_t) bytes; -@@ -106,29 +107,46 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result) - dirp->filepos += reclen; - #endif - -- /* Skip deleted files. */ -+#ifdef NAME_MAX -+ if (reclen > offsetof (DIRENT_TYPE, d_name) + NAME_MAX + 1) -+ { -+ /* The record is very long. It could still fit into the -+ caller-supplied buffer if we can skip padding at the -+ end. */ -+ size_t namelen = _D_EXACT_NAMLEN (dp); -+ if (namelen <= NAME_MAX) -+ reclen = offsetof (DIRENT_TYPE, d_name) + namelen + 1; -+ else -+ { -+ /* The name is too long. Ignore this file. */ -+ dirp->errcode = ENAMETOOLONG; -+ dp->d_ino = 0; -+ continue; -+ } -+ } -+#endif -+ -+ /* Skip deleted and ignored files. */ - } - while (dp->d_ino == 0); - - if (dp != NULL) - { --#ifdef GETDENTS_64BIT_ALIGNED -- /* The d_reclen value might include padding which is not part of -- the DIRENT_TYPE data structure. */ -- reclen = MIN (reclen, -- offsetof (DIRENT_TYPE, d_name) + sizeof (dp->d_name)); --#endif - *result = memcpy (entry, dp, reclen); --#ifdef GETDENTS_64BIT_ALIGNED -+#ifdef _DIRENT_HAVE_D_RECLEN - entry->d_reclen = reclen; - #endif -+ ret = 0; - } - else -- *result = NULL; -+ { -+ *result = NULL; -+ ret = dirp->errcode; -+ } - - __libc_lock_unlock (dirp->lock); - -- return dp != NULL ? 0 : reclen ? errno : 0; -+ return ret; - } - - #ifdef __READDIR_R_ALIAS -diff --git a/sysdeps/posix/rewinddir.c b/sysdeps/posix/rewinddir.c -index 2935a8e..d4991ad 100644 ---- a/sysdeps/posix/rewinddir.c -+++ b/sysdeps/posix/rewinddir.c -@@ -33,6 +33,7 @@ rewinddir (dirp) - dirp->filepos = 0; - dirp->offset = 0; - dirp->size = 0; -+ dirp->errcode = 0; - #ifndef NOT_IN_libc - __libc_lock_unlock (dirp->lock); - #endif -diff --git a/sysdeps/unix/sysv/linux/i386/readdir64_r.c b/sysdeps/unix/sysv/linux/i386/readdir64_r.c -index 8ebbcfd..a7d114e 100644 ---- a/sysdeps/unix/sysv/linux/i386/readdir64_r.c -+++ b/sysdeps/unix/sysv/linux/i386/readdir64_r.c -@@ -18,7 +18,6 @@ - #define __READDIR_R __readdir64_r - #define __GETDENTS __getdents64 - #define DIRENT_TYPE struct dirent64 --#define GETDENTS_64BIT_ALIGNED 1 - - #include - -diff --git a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c -index 5ed8e95..290f2c8 100644 ---- a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c -+++ b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c -@@ -1,5 +1,4 @@ - #define readdir64_r __no_readdir64_r_decl --#define GETDENTS_64BIT_ALIGNED 1 - #include - #undef readdir64_r - weak_alias (__readdir_r, readdir64_r) --- -1.8.3.4 - diff --git a/community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch b/community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch deleted file mode 100644 index 5558c1fe9..000000000 --- a/community/glibc-static/glibc-2.18-strcoll-CVE-2012-4412+4424.patch +++ /dev/null @@ -1,1004 +0,0 @@ -diff --git a/string/strcoll_l.c b/string/strcoll_l.c -index ecda08f..bb34a72 100644 ---- a/string/strcoll_l.c -+++ b/string/strcoll_l.c -@@ -41,11 +41,434 @@ - - #include "../locale/localeinfo.h" - -+/* Track status while looking for sequences in a string. */ -+typedef struct -+{ -+ int len; /* Length of the current sequence. */ -+ size_t val; /* Position of the sequence relative to the -+ previous non-ignored sequence. */ -+ size_t idxnow; /* Current index in sequences. */ -+ size_t idxmax; /* Maximum index in sequences. */ -+ size_t idxcnt; /* Current count of indices. */ -+ size_t backw; /* Current Backward sequence index. */ -+ size_t backw_stop; /* Index where the backward sequences stop. */ -+ const USTRING_TYPE *us; /* The string. */ -+ int32_t *idxarr; /* Array to cache weight indices. */ -+ unsigned char *rulearr; /* Array to cache rules. */ -+ unsigned char rule; /* Saved rule for the first sequence. */ -+ int32_t idx; /* Index to weight of the current sequence. */ -+ int32_t save_idx; /* Save looked up index of a forward -+ sequence after the last backward -+ sequence. */ -+ const USTRING_TYPE *back_us; /* Beginning of the backward sequence. */ -+} coll_seq; -+ -+/* Get next sequence. The weight indices are cached, so we don't need to -+ traverse the string. */ -+static void -+get_next_seq_cached (coll_seq *seq, int nrules, int pass, -+ const unsigned char *rulesets, -+ const USTRING_TYPE *weights) -+{ -+ size_t val = seq->val = 0; -+ int len = seq->len; -+ size_t backw_stop = seq->backw_stop; -+ size_t backw = seq->backw; -+ size_t idxcnt = seq->idxcnt; -+ size_t idxmax = seq->idxmax; -+ size_t idxnow = seq->idxnow; -+ unsigned char *rulearr = seq->rulearr; -+ int32_t *idxarr = seq->idxarr; -+ -+ while (len == 0) -+ { -+ ++val; -+ if (backw_stop != ~0ul) -+ { -+ /* There is something pushed. */ -+ if (backw == backw_stop) -+ { -+ /* The last pushed character was handled. Continue -+ with forward characters. */ -+ if (idxcnt < idxmax) -+ { -+ idxnow = idxcnt; -+ backw_stop = ~0ul; -+ } -+ else -+ { -+ /* Nothing any more. The backward sequence -+ ended with the last sequence in the string. */ -+ idxnow = ~0ul; -+ break; -+ } -+ } -+ else -+ idxnow = --backw; -+ } -+ else -+ { -+ backw_stop = idxcnt; -+ -+ while (idxcnt < idxmax) -+ { -+ if ((rulesets[rulearr[idxcnt] * nrules + pass] -+ & sort_backward) == 0) -+ /* No more backward characters to push. */ -+ break; -+ ++idxcnt; -+ } -+ -+ if (backw_stop == idxcnt) -+ { -+ /* No sequence at all or just one. */ -+ if (idxcnt == idxmax) -+ /* Note that LEN is still zero. */ -+ break; -+ -+ backw_stop = ~0ul; -+ idxnow = idxcnt++; -+ } -+ else -+ /* We pushed backward sequences. */ -+ idxnow = backw = idxcnt - 1; -+ } -+ len = weights[idxarr[idxnow]++]; -+ } -+ -+ /* Update the structure. */ -+ seq->val = val; -+ seq->len = len; -+ seq->backw_stop = backw_stop; -+ seq->backw = backw; -+ seq->idxcnt = idxcnt; -+ seq->idxnow = idxnow; -+} -+ -+/* Get next sequence. Traverse the string as required. */ -+static void -+get_next_seq (coll_seq *seq, int nrules, const unsigned char *rulesets, -+ const USTRING_TYPE *weights, const int32_t *table, -+ const USTRING_TYPE *extra, const int32_t *indirect) -+{ -+#include WEIGHT_H -+ size_t val = seq->val = 0; -+ int len = seq->len; -+ size_t backw_stop = seq->backw_stop; -+ size_t backw = seq->backw; -+ size_t idxcnt = seq->idxcnt; -+ size_t idxmax = seq->idxmax; -+ size_t idxnow = seq->idxnow; -+ unsigned char *rulearr = seq->rulearr; -+ int32_t *idxarr = seq->idxarr; -+ const USTRING_TYPE *us = seq->us; -+ -+ while (len == 0) -+ { -+ ++val; -+ if (backw_stop != ~0ul) -+ { -+ /* There is something pushed. */ -+ if (backw == backw_stop) -+ { -+ /* The last pushed character was handled. Continue -+ with forward characters. */ -+ if (idxcnt < idxmax) -+ { -+ idxnow = idxcnt; -+ backw_stop = ~0ul; -+ } -+ else -+ /* Nothing any more. The backward sequence ended with -+ the last sequence in the string. Note that LEN -+ is still zero. */ -+ break; -+ } -+ else -+ idxnow = --backw; -+ } -+ else -+ { -+ backw_stop = idxmax; -+ -+ while (*us != L('\0')) -+ { -+ int32_t tmp = findidx (&us, -1); -+ rulearr[idxmax] = tmp >> 24; -+ idxarr[idxmax] = tmp & 0xffffff; -+ idxcnt = idxmax++; -+ -+ if ((rulesets[rulearr[idxcnt] * nrules] -+ & sort_backward) == 0) -+ /* No more backward characters to push. */ -+ break; -+ ++idxcnt; -+ } -+ -+ if (backw_stop >= idxcnt) -+ { -+ /* No sequence at all or just one. */ -+ if (idxcnt == idxmax || backw_stop > idxcnt) -+ /* Note that LEN is still zero. */ -+ break; -+ -+ backw_stop = ~0ul; -+ idxnow = idxcnt; -+ } -+ else -+ /* We pushed backward sequences. */ -+ idxnow = backw = idxcnt - 1; -+ } -+ len = weights[idxarr[idxnow]++]; -+ } -+ -+ /* Update the structure. */ -+ seq->val = val; -+ seq->len = len; -+ seq->backw_stop = backw_stop; -+ seq->backw = backw; -+ seq->idxcnt = idxcnt; -+ seq->idxmax = idxmax; -+ seq->idxnow = idxnow; -+ seq->us = us; -+} -+ -+/* Get next sequence. Traverse the string as required. This function does not -+ set or use any index or rule cache. */ -+static void -+get_next_seq_nocache (coll_seq *seq, int nrules, const unsigned char *rulesets, -+ const USTRING_TYPE *weights, const int32_t *table, -+ const USTRING_TYPE *extra, const int32_t *indirect, -+ int pass) -+{ -+#include WEIGHT_H -+ size_t val = seq->val = 0; -+ int len = seq->len; -+ size_t backw_stop = seq->backw_stop; -+ size_t backw = seq->backw; -+ size_t idxcnt = seq->idxcnt; -+ size_t idxmax = seq->idxmax; -+ int32_t idx = seq->idx; -+ const USTRING_TYPE *us = seq->us; -+ -+ while (len == 0) -+ { -+ ++val; -+ if (backw_stop != ~0ul) -+ { -+ /* There is something pushed. */ -+ if (backw == backw_stop) -+ { -+ /* The last pushed character was handled. Continue -+ with forward characters. */ -+ if (idxcnt < idxmax) -+ { -+ idx = seq->save_idx; -+ backw_stop = ~0ul; -+ } -+ else -+ { -+ /* Nothing anymore. The backward sequence ended with -+ the last sequence in the string. Note that len is -+ still zero. */ -+ idx = 0; -+ break; -+ } -+ } -+ else -+ { -+ /* XXX Traverse BACKW sequences from the beginning of -+ BACKW_STOP to get the next sequence. Is ther a quicker way -+ to do this? */ -+ size_t i = backw_stop; -+ us = seq->back_us; -+ while (i < backw) -+ { -+ int32_t tmp = findidx (&us, -1); -+ idx = tmp & 0xffffff; -+ i++; -+ } -+ --backw; -+ us = seq->us; -+ } -+ } -+ else -+ { -+ backw_stop = idxmax; -+ int32_t prev_idx = idx; -+ -+ while (*us != L('\0')) -+ { -+ int32_t tmp = findidx (&us, -1); -+ unsigned char rule = tmp >> 24; -+ prev_idx = idx; -+ idx = tmp & 0xffffff; -+ idxcnt = idxmax++; -+ -+ /* Save the rule for the first sequence. */ -+ if (__glibc_unlikely (idxcnt == 0)) -+ seq->rule = rule; -+ -+ if ((rulesets[rule * nrules + pass] -+ & sort_backward) == 0) -+ /* No more backward characters to push. */ -+ break; -+ ++idxcnt; -+ } -+ -+ if (backw_stop >= idxcnt) -+ { -+ /* No sequence at all or just one. */ -+ if (idxcnt == idxmax || backw_stop > idxcnt) -+ /* Note that len is still zero. */ -+ break; -+ -+ backw_stop = ~0ul; -+ } -+ else -+ { -+ /* We pushed backward sequences. If the stream ended with the -+ backward sequence, then we process the last sequence we -+ found. Otherwise we process the sequence before the last -+ one since the last one was a forward sequence. */ -+ seq->back_us = seq->us; -+ seq->us = us; -+ backw = idxcnt; -+ if (idxmax > idxcnt) -+ { -+ backw--; -+ seq->save_idx = idx; -+ idx = prev_idx; -+ } -+ if (backw > backw_stop) -+ backw--; -+ } -+ } -+ -+ len = weights[idx++]; -+ /* Skip over indices of previous levels. */ -+ for (int i = 0; i < pass; i++) -+ { -+ idx += len; -+ len = weights[idx]; -+ idx++; -+ } -+ } -+ -+ /* Update the structure. */ -+ seq->val = val; -+ seq->len = len; -+ seq->backw_stop = backw_stop; -+ seq->backw = backw; -+ seq->idxcnt = idxcnt; -+ seq->idxmax = idxmax; -+ seq->us = us; -+ seq->idx = idx; -+} -+ -+/* Compare two sequences. This version does not use the index and rules -+ cache. */ -+static int -+do_compare_nocache (coll_seq *seq1, coll_seq *seq2, int position, -+ const USTRING_TYPE *weights) -+{ -+ int seq1len = seq1->len; -+ int seq2len = seq2->len; -+ size_t val1 = seq1->val; -+ size_t val2 = seq2->val; -+ int idx1 = seq1->idx; -+ int idx2 = seq2->idx; -+ int result = 0; -+ -+ /* Test for position if necessary. */ -+ if (position && val1 != val2) -+ { -+ result = val1 > val2 ? 1 : -1; -+ goto out; -+ } -+ -+ /* Compare the two sequences. */ -+ do -+ { -+ if (weights[idx1] != weights[idx2]) -+ { -+ /* The sequences differ. */ -+ result = weights[idx1] - weights[idx2]; -+ goto out; -+ } -+ -+ /* Increment the offsets. */ -+ ++idx1; -+ ++idx2; -+ -+ --seq1len; -+ --seq2len; -+ } -+ while (seq1len > 0 && seq2len > 0); -+ -+ if (position && seq1len != seq2len) -+ result = seq1len - seq2len; -+ -+out: -+ seq1->len = seq1len; -+ seq2->len = seq2len; -+ seq1->idx = idx1; -+ seq2->idx = idx2; -+ return result; -+} -+ -+/* Compare two sequences using the index cache. */ -+static int -+do_compare (coll_seq *seq1, coll_seq *seq2, int position, -+ const USTRING_TYPE *weights) -+{ -+ int seq1len = seq1->len; -+ int seq2len = seq2->len; -+ size_t val1 = seq1->val; -+ size_t val2 = seq2->val; -+ int32_t *idx1arr = seq1->idxarr; -+ int32_t *idx2arr = seq2->idxarr; -+ int idx1now = seq1->idxnow; -+ int idx2now = seq2->idxnow; -+ int result = 0; -+ -+ /* Test for position if necessary. */ -+ if (position && val1 != val2) -+ { -+ result = val1 > val2 ? 1 : -1; -+ goto out; -+ } -+ -+ /* Compare the two sequences. */ -+ do -+ { -+ if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) -+ { -+ /* The sequences differ. */ -+ result = weights[idx1arr[idx1now]] - weights[idx2arr[idx2now]]; -+ goto out; -+ } -+ -+ /* Increment the offsets. */ -+ ++idx1arr[idx1now]; -+ ++idx2arr[idx2now]; -+ -+ --seq1len; -+ --seq2len; -+ } -+ while (seq1len > 0 && seq2len > 0); -+ -+ if (position && seq1len != seq2len) -+ result = seq1len - seq2len; -+ -+out: -+ seq1->len = seq1len; -+ seq2->len = seq2len; -+ return result; -+} -+ - int --STRCOLL (s1, s2, l) -- const STRING_TYPE *s1; -- const STRING_TYPE *s2; -- __locale_t l; -+STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l) - { - struct __locale_data *current = l->__locales[LC_COLLATE]; - uint_fast32_t nrules = current->values[_NL_ITEM_INDEX (_NL_COLLATE_NRULES)].word; -@@ -56,34 +479,6 @@ STRCOLL (s1, s2, l) - const USTRING_TYPE *weights; - const USTRING_TYPE *extra; - const int32_t *indirect; -- uint_fast32_t pass; -- int result = 0; -- const USTRING_TYPE *us1; -- const USTRING_TYPE *us2; -- size_t s1len; -- size_t s2len; -- int32_t *idx1arr; -- int32_t *idx2arr; -- unsigned char *rule1arr; -- unsigned char *rule2arr; -- size_t idx1max; -- size_t idx2max; -- size_t idx1cnt; -- size_t idx2cnt; -- size_t idx1now; -- size_t idx2now; -- size_t backw1_stop; -- size_t backw2_stop; -- size_t backw1; -- size_t backw2; -- int val1; -- int val2; -- int position; -- int seq1len; -- int seq2len; -- int use_malloc; -- --#include WEIGHT_H - - if (nrules == 0) - return STRCMP (s1, s2); -@@ -98,7 +493,6 @@ STRCOLL (s1, s2, l) - current->values[_NL_ITEM_INDEX (CONCAT(_NL_COLLATE_EXTRA,SUFFIX))].string; - indirect = (const int32_t *) - current->values[_NL_ITEM_INDEX (CONCAT(_NL_COLLATE_INDIRECT,SUFFIX))].string; -- use_malloc = 0; - - assert (((uintptr_t) table) % __alignof__ (table[0]) == 0); - assert (((uintptr_t) weights) % __alignof__ (weights[0]) == 0); -@@ -106,18 +500,13 @@ STRCOLL (s1, s2, l) - assert (((uintptr_t) indirect) % __alignof__ (indirect[0]) == 0); - - /* We need this a few times. */ -- s1len = STRLEN (s1); -- s2len = STRLEN (s2); -+ size_t s1len = STRLEN (s1); -+ size_t s2len = STRLEN (s2); - - /* Catch empty strings. */ -- if (__builtin_expect (s1len == 0, 0) || __builtin_expect (s2len == 0, 0)) -+ if (__glibc_unlikely (s1len == 0) || __glibc_unlikely (s2len == 0)) - return (s1len != 0) - (s2len != 0); - -- /* We need the elements of the strings as unsigned values since they -- are used as indeces. */ -- us1 = (const USTRING_TYPE *) s1; -- us2 = (const USTRING_TYPE *) s2; -- - /* Perform the first pass over the string and while doing this find - and store the weights for each character. Since we want this to - be as fast as possible we are using `alloca' to store the temporary -@@ -127,411 +516,124 @@ STRCOLL (s1, s2, l) - - Please note that the localedef programs makes sure that `position' - is not used at the first level. */ -- if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))) -- { -- idx1arr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1)); -- idx2arr = &idx1arr[s1len]; -- rule1arr = (unsigned char *) &idx2arr[s2len]; -- rule2arr = &rule1arr[s1len]; -- -- if (idx1arr == NULL) -- /* No memory. Well, go with the stack then. -- -- XXX Once this implementation is stable we will handle this -- differently. Instead of precomputing the indeces we will -- do this in time. This means, though, that this happens for -- every pass again. */ -- goto try_stack; -- use_malloc = 1; -- } -- else -- { -- try_stack: -- idx1arr = (int32_t *) alloca (s1len * sizeof (int32_t)); -- idx2arr = (int32_t *) alloca (s2len * sizeof (int32_t)); -- rule1arr = (unsigned char *) alloca (s1len); -- rule2arr = (unsigned char *) alloca (s2len); -- } - -- idx1cnt = 0; -- idx2cnt = 0; -- idx1max = 0; -- idx2max = 0; -- idx1now = 0; -- idx2now = 0; -- backw1_stop = ~0ul; -- backw2_stop = ~0ul; -- backw1 = ~0ul; -- backw2 = ~0ul; -- seq1len = 0; -- seq2len = 0; -- position = rulesets[0] & sort_position; -- while (1) -- { -- val1 = 0; -- val2 = 0; -- -- /* Get the next non-IGNOREd element for string `s1'. */ -- if (seq1len == 0) -- do -- { -- ++val1; -- -- if (backw1_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw1 == backw1_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx1cnt < idx1max) -- { -- idx1now = idx1cnt; -- backw1_stop = ~0ul; -- } -- else -- /* Nothing anymore. The backward sequence ended with -- the last sequence in the string. Note that seq1len -- is still zero. */ -- break; -- } -- else -- idx1now = --backw1; -- } -- else -- { -- backw1_stop = idx1max; -- -- while (*us1 != L('\0')) -- { -- int32_t tmp = findidx (&us1, -1); -- rule1arr[idx1max] = tmp >> 24; -- idx1arr[idx1max] = tmp & 0xffffff; -- idx1cnt = idx1max++; -- -- if ((rulesets[rule1arr[idx1cnt] * nrules] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx1cnt; -- } -- -- if (backw1_stop >= idx1cnt) -- { -- /* No sequence at all or just one. */ -- if (idx1cnt == idx1max || backw1_stop > idx1cnt) -- /* Note that seq1len is still zero. */ -- break; -- -- backw1_stop = ~0ul; -- idx1now = idx1cnt; -- } -- else -- /* We pushed backward sequences. */ -- idx1now = backw1 = idx1cnt - 1; -- } -- } -- while ((seq1len = weights[idx1arr[idx1now]++]) == 0); -- -- /* And the same for string `s2'. */ -- if (seq2len == 0) -- do -- { -- ++val2; -- -- if (backw2_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw2 == backw2_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx2cnt < idx2max) -- { -- idx2now = idx2cnt; -- backw2_stop = ~0ul; -- } -- else -- /* Nothing anymore. The backward sequence ended with -- the last sequence in the string. Note that seq2len -- is still zero. */ -- break; -- } -- else -- idx2now = --backw2; -- } -- else -- { -- backw2_stop = idx2max; -- -- while (*us2 != L('\0')) -- { -- int32_t tmp = findidx (&us2, -1); -- rule2arr[idx2max] = tmp >> 24; -- idx2arr[idx2max] = tmp & 0xffffff; -- idx2cnt = idx2max++; -- -- if ((rulesets[rule2arr[idx2cnt] * nrules] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx2cnt; -- } -- -- if (backw2_stop >= idx2cnt) -- { -- /* No sequence at all or just one. */ -- if (idx2cnt == idx2max || backw2_stop > idx2cnt) -- /* Note that seq1len is still zero. */ -- break; -- -- backw2_stop = ~0ul; -- idx2now = idx2cnt; -- } -- else -- /* We pushed backward sequences. */ -- idx2now = backw2 = idx2cnt - 1; -- } -- } -- while ((seq2len = weights[idx2arr[idx2now]++]) == 0); -- -- /* See whether any or both strings are empty. */ -- if (seq1len == 0 || seq2len == 0) -- { -- if (seq1len == seq2len) -- /* Both ended. So far so good, both strings are equal at the -- first level. */ -- break; -- -- /* This means one string is shorter than the other. Find out -- which one and return an appropriate value. */ -- result = seq1len == 0 ? -1 : 1; -- goto free_and_return; -- } -+ coll_seq seq1, seq2; -+ bool use_malloc = false; -+ int result = 0; - -- /* Test for position if necessary. */ -- if (position && val1 != val2) -- { -- result = val1 - val2; -- goto free_and_return; -- } -+ memset (&seq1, 0, sizeof (seq1)); -+ seq2 = seq1; - -- /* Compare the two sequences. */ -- do -- { -- if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) -- { -- /* The sequences differ. */ -- result = weights[idx1arr[idx1now]] - weights[idx2arr[idx2now]]; -- goto free_and_return; -- } -+ size_t size_max = SIZE_MAX / (sizeof (int32_t) + 1); - -- /* Increment the offsets. */ -- ++idx1arr[idx1now]; -- ++idx2arr[idx2now]; -+ /* If the strings are long enough to cause overflow in the size request, then -+ skip the allocation and proceed with the non-cached routines. */ -+ if (MIN (s1len, s2len) > size_max -+ || MAX (s1len, s2len) > size_max - MIN (s1len, s2len)) -+ goto begin_collate; - -- --seq1len; -- --seq2len; -- } -- while (seq1len > 0 && seq2len > 0); -+ if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))) -+ { -+ seq1.idxarr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1)); - -- if (position && seq1len != seq2len) -+ /* If we failed to allocate memory, we leave everything as NULL so that -+ we use the nocache version of traversal and comparison functions. */ -+ if (seq1.idxarr != NULL) - { -- result = seq1len - seq2len; -- goto free_and_return; -+ seq2.idxarr = &seq1.idxarr[s1len]; -+ seq1.rulearr = (unsigned char *) &seq2.idxarr[s2len]; -+ seq2.rulearr = &seq1.rulearr[s1len]; -+ use_malloc = true; - } - } -+ else -+ { -+ seq1.idxarr = (int32_t *) alloca (s1len * sizeof (int32_t)); -+ seq2.idxarr = (int32_t *) alloca (s2len * sizeof (int32_t)); -+ seq1.rulearr = (unsigned char *) alloca (s1len); -+ seq2.rulearr = (unsigned char *) alloca (s2len); -+ } - -- /* Now the remaining passes over the weights. We now use the -- indeces we found before. */ -- for (pass = 1; pass < nrules; ++pass) -+ int rule; -+ -+ begin_collate: -+ rule = 0; -+ /* Cache values in the first pass and if needed, use them in subsequent -+ passes. */ -+ for (int pass = 0; pass < nrules; ++pass) - { -+ seq1.idxcnt = 0; -+ seq1.idx = 0; -+ seq2.idx = 0; -+ seq1.backw_stop = ~0ul; -+ seq1.backw = ~0ul; -+ seq2.idxcnt = 0; -+ seq2.backw_stop = ~0ul; -+ seq2.backw = ~0ul; -+ -+ /* We need the elements of the strings as unsigned values since they -+ are used as indices. */ -+ seq1.us = (const USTRING_TYPE *) s1; -+ seq2.us = (const USTRING_TYPE *) s2; -+ - /* We assume that if a rule has defined `position' in one section - this is true for all of them. */ -- idx1cnt = 0; -- idx2cnt = 0; -- backw1_stop = ~0ul; -- backw2_stop = ~0ul; -- backw1 = ~0ul; -- backw2 = ~0ul; -- position = rulesets[rule1arr[0] * nrules + pass] & sort_position; -+ int position = rulesets[rule * nrules + pass] & sort_position; - - while (1) - { -- val1 = 0; -- val2 = 0; -- -- /* Get the next non-IGNOREd element for string `s1'. */ -- if (seq1len == 0) -- do -- { -- ++val1; -- -- if (backw1_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw1 == backw1_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx1cnt < idx1max) -- { -- idx1now = idx1cnt; -- backw1_stop = ~0ul; -- } -- else -- { -- /* Nothing anymore. The backward sequence -- ended with the last sequence in the string. */ -- idx1now = ~0ul; -- break; -- } -- } -- else -- idx1now = --backw1; -- } -- else -- { -- backw1_stop = idx1cnt; -- -- while (idx1cnt < idx1max) -- { -- if ((rulesets[rule1arr[idx1cnt] * nrules + pass] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx1cnt; -- } -- -- if (backw1_stop == idx1cnt) -- { -- /* No sequence at all or just one. */ -- if (idx1cnt == idx1max) -- /* Note that seq1len is still zero. */ -- break; -- -- backw1_stop = ~0ul; -- idx1now = idx1cnt++; -- } -- else -- /* We pushed backward sequences. */ -- idx1now = backw1 = idx1cnt - 1; -- } -- } -- while ((seq1len = weights[idx1arr[idx1now]++]) == 0); -- -- /* And the same for string `s2'. */ -- if (seq2len == 0) -- do -- { -- ++val2; -- -- if (backw2_stop != ~0ul) -- { -- /* The is something pushed. */ -- if (backw2 == backw2_stop) -- { -- /* The last pushed character was handled. Continue -- with forward characters. */ -- if (idx2cnt < idx2max) -- { -- idx2now = idx2cnt; -- backw2_stop = ~0ul; -- } -- else -- { -- /* Nothing anymore. The backward sequence -- ended with the last sequence in the string. */ -- idx2now = ~0ul; -- break; -- } -- } -- else -- idx2now = --backw2; -- } -- else -- { -- backw2_stop = idx2cnt; -- -- while (idx2cnt < idx2max) -- { -- if ((rulesets[rule2arr[idx2cnt] * nrules + pass] -- & sort_backward) == 0) -- /* No more backward characters to push. */ -- break; -- ++idx2cnt; -- } -- -- if (backw2_stop == idx2cnt) -- { -- /* No sequence at all or just one. */ -- if (idx2cnt == idx2max) -- /* Note that seq2len is still zero. */ -- break; -- -- backw2_stop = ~0ul; -- idx2now = idx2cnt++; -- } -- else -- /* We pushed backward sequences. */ -- idx2now = backw2 = idx2cnt - 1; -- } -- } -- while ((seq2len = weights[idx2arr[idx2now]++]) == 0); -+ if (__glibc_unlikely (seq1.idxarr == NULL)) -+ { -+ get_next_seq_nocache (&seq1, nrules, rulesets, weights, table, -+ extra, indirect, pass); -+ get_next_seq_nocache (&seq2, nrules, rulesets, weights, table, -+ extra, indirect, pass); -+ } -+ else if (pass == 0) -+ { -+ get_next_seq (&seq1, nrules, rulesets, weights, table, extra, -+ indirect); -+ get_next_seq (&seq2, nrules, rulesets, weights, table, extra, -+ indirect); -+ } -+ else -+ { -+ get_next_seq_cached (&seq1, nrules, pass, rulesets, weights); -+ get_next_seq_cached (&seq2, nrules, pass, rulesets, weights); -+ } - - /* See whether any or both strings are empty. */ -- if (seq1len == 0 || seq2len == 0) -+ if (seq1.len == 0 || seq2.len == 0) - { -- if (seq1len == seq2len) -+ if (seq1.len == seq2.len) - /* Both ended. So far so good, both strings are equal - at this level. */ - break; - - /* This means one string is shorter than the other. Find out - which one and return an appropriate value. */ -- result = seq1len == 0 ? -1 : 1; -+ result = seq1.len == 0 ? -1 : 1; - goto free_and_return; - } - -- /* Test for position if necessary. */ -- if (position && val1 != val2) -- { -- result = val1 - val2; -- goto free_and_return; -- } -- -- /* Compare the two sequences. */ -- do -- { -- if (weights[idx1arr[idx1now]] != weights[idx2arr[idx2now]]) -- { -- /* The sequences differ. */ -- result = (weights[idx1arr[idx1now]] -- - weights[idx2arr[idx2now]]); -- goto free_and_return; -- } -- -- /* Increment the offsets. */ -- ++idx1arr[idx1now]; -- ++idx2arr[idx2now]; -- -- --seq1len; -- --seq2len; -- } -- while (seq1len > 0 && seq2len > 0); -- -- if (position && seq1len != seq2len) -- { -- result = seq1len - seq2len; -- goto free_and_return; -- } -+ if (__glibc_unlikely (seq1.idxarr == NULL)) -+ result = do_compare_nocache (&seq1, &seq2, position, weights); -+ else -+ result = do_compare (&seq1, &seq2, position, weights); -+ if (result != 0) -+ goto free_and_return; - } -+ -+ if (__glibc_likely (seq1.rulearr != NULL)) -+ rule = seq1.rulearr[0]; -+ else -+ rule = seq1.rule; - } - - /* Free the memory if needed. */ - free_and_return: - if (use_malloc) -- free (idx1arr); -+ free (seq1.idxarr); - - return result; - } diff --git a/community/glibc-static/glibc-2.18-strstr-hackfix.patch b/community/glibc-static/glibc-2.18-strstr-hackfix.patch deleted file mode 100644 index 6149f88bc..000000000 --- a/community/glibc-static/glibc-2.18-strstr-hackfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/sysdeps/x86_64/multiarch/strstr.c b/sysdeps/x86_64/multiarch/strstr.c -index cd63b68..03d8b9a 100644 ---- a/sysdeps/x86_64/multiarch/strstr.c -+++ b/sysdeps/x86_64/multiarch/strstr.c -@@ -86,7 +86,7 @@ - /* Simple replacement of movdqu to address 4KB boundary cross issue. - If EOS occurs within less than 16B before 4KB boundary, we don't - cross to next page. */ --static __m128i -+static inline __m128i - __m128i_strloadu (const unsigned char * p, __m128i zero) - { - if (__builtin_expect ((int) ((size_t) p & 0xfff) > 0xff0, 0)) diff --git a/community/haskell-dataenc/PKGBUILD b/community/haskell-dataenc/PKGBUILD index 0232eb2c1..c1bd00b18 100644 --- a/community/haskell-dataenc/PKGBUILD +++ b/community/haskell-dataenc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 89297 2013-04-28 16:52:18Z td123 $ +# $Id: PKGBUILD 103336 2014-01-03 11:09:18Z bpiotrowski $ # Maintainer: Vesa Kaihlavirta # Contributor: Arch Haskell Team # Package generated by cabal2arch 0.7.5 @@ -12,9 +12,10 @@ url="http://hackage.haskell.org/package/dataenc" license=('custom:BSD3') arch=('i686' 'x86_64') depends=('ghc=7.6.3-1' sh) +install=${pkgname}.install +options=('staticlibs') source=(http://hackage.haskell.org/packages/archive/${_hkgname}/${pkgver}/${_hkgname}-${pkgver}.tar.gz '0001-update-build-deps-for-ghc-7.6.1.patch') -install=${pkgname}.install md5sums=('4da812ca7a1640a5fdcc676009ab160c' '662056adcb79efe8898298c271b49600') diff --git a/community/haskell-haskeline/PKGBUILD b/community/haskell-haskeline/PKGBUILD index 7cd9ccb27..e23e3426b 100644 --- a/community/haskell-haskeline/PKGBUILD +++ b/community/haskell-haskeline/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 89304 2013-04-28 16:52:25Z td123 $ +# $Id: PKGBUILD 103338 2014-01-03 11:10:00Z bpiotrowski $ # Maintainer: Vesa Kaihlavirta # Contributor: Arch Haskell Team # Package generated by cabal2arch 0.7.6 @@ -12,8 +12,9 @@ url="http://hackage.haskell.org/package/haskeline" license=('custom:BSD3') arch=('i686' 'x86_64') depends=('ghc=7.6.3-1' 'sh' 'haskell-utf8-string=0.3.7-5' 'haskell-mtl=2.1.2-3' 'haskell-terminfo=0.3.2.5-3') -source=(http://hackage.haskell.org/packages/archive/${_hkgname}/${pkgver}/${_hkgname}-${pkgver}.tar.gz) install=${pkgname}.install +options=('staticlibs') +source=(http://hackage.haskell.org/packages/archive/${_hkgname}/${pkgver}/${_hkgname}-${pkgver}.tar.gz) md5sums=('3a78043dc80b5510202e71e77c0a9923') build() { diff --git a/community/haskell-terminfo/PKGBUILD b/community/haskell-terminfo/PKGBUILD index e35f7da1a..bbd5e49f5 100644 --- a/community/haskell-terminfo/PKGBUILD +++ b/community/haskell-terminfo/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 89323 2013-04-28 16:52:45Z td123 $ +# $Id: PKGBUILD 103340 2014-01-03 11:10:44Z bpiotrowski $ # Maintainer: Vesa Kaihlavirta # Contributor: Arch Haskell Team @@ -11,6 +11,7 @@ url="http://hackage.haskell.org/package/${_hkgname}" license=('custom:BSD3') arch=('i686' 'x86_64') depends=('ghc=7.6.3-1' 'sh') +options=('staticlibs') source=("http://hackage.haskell.org/packages/archive/${_hkgname}/${pkgver}/${_hkgname}-${pkgver}.tar.gz") install=${pkgname}.install md5sums=('7ef09acfac9f6fc499ed3bb804ae2ab3') diff --git a/community/keepalived/PKGBUILD b/community/keepalived/PKGBUILD index 7b9cb9482..f915f62d4 100644 --- a/community/keepalived/PKGBUILD +++ b/community/keepalived/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 100797 2013-11-11 03:42:38Z seblu $ +# $Id: PKGBUILD 103345 2014-01-03 19:09:45Z seblu $ # Maintainer: Sébastien Luttringer # Contributor: Andrea Zucchelli pkgname=keepalived -pkgver=1.2.9 +pkgver=1.2.10 pkgrel=1 pkgdesc='Failover and monitoring daemon for LVS clusters' arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ backup=('etc/keepalived/keepalived.conf') depends=('openssl' 'popt' 'libnl1') source=("http://www.keepalived.org/software/$pkgname-$pkgver.tar.gz" 'keepalived.service') -md5sums=('adfad98a2cc34230867d794ebc633492' +md5sums=('d838c23d80682650315d1ae447dad48a' '0a5171f4298528315e8a8004b55befb7') build() { diff --git a/community/libesmtp/PKGBUILD b/community/libesmtp/PKGBUILD index 4b1c5ddc6..f46db177e 100644 --- a/community/libesmtp/PKGBUILD +++ b/community/libesmtp/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 99832 2013-10-31 01:58:40Z allan $ +# $Id: PKGBUILD 103322 2014-01-03 10:52:59Z bpiotrowski $ # Maintainer: Lukas Fleischer # Contributor: Roman Kyrylych # Contributor: Tom Newsom pkgname=libesmtp pkgver=1.0.6 -pkgrel=2 +pkgrel=3 pkgdesc='A library to manage posting mail to a preconfigured MTA.' arch=('i686' 'x86_64') url='http://www.stafford.uklinux.net/libesmtp/' diff --git a/community/libev/PKGBUILD b/community/libev/PKGBUILD index 6ced60be8..6563418bc 100644 --- a/community/libev/PKGBUILD +++ b/community/libev/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 99834 2013-10-31 01:59:20Z allan $ +# $Id: PKGBUILD 103324 2014-01-03 10:53:10Z bpiotrowski $ # Maintainer: Andrea Scarpino # Contributor: Allan McRae # Contributor: Thomas Haider pkgname=libev pkgver=4.15 -pkgrel=1 +pkgrel=2 pkgdesc="A full-featured and high-performance event loop" arch=('i686' 'x86_64') url="http://software.schmorp.de/pkg/libev.html" diff --git a/community/libgeotiff/PKGBUILD b/community/libgeotiff/PKGBUILD index 43e2dbdc9..b0164270f 100644 --- a/community/libgeotiff/PKGBUILD +++ b/community/libgeotiff/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 99840 2013-10-31 02:01:25Z allan $ +# $Id: PKGBUILD 103326 2014-01-03 10:53:25Z bpiotrowski $ # Maintainer: Jaroslav Lichtblau # Contributor: Brad Fanella # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org @@ -6,7 +6,7 @@ pkgname=libgeotiff pkgver=1.4.0 -pkgrel=1 +pkgrel=2 pkgdesc="A TIFF based interchange format for georeferenced raster imagery" arch=('i686' 'x86_64') url="http://www.remotesensing.org/geotiff" diff --git a/community/libxdg-basedir/PKGBUILD b/community/libxdg-basedir/PKGBUILD index 235454f07..98667df64 100644 --- a/community/libxdg-basedir/PKGBUILD +++ b/community/libxdg-basedir/PKGBUILD @@ -3,26 +3,26 @@ pkgname=libxdg-basedir pkgver=1.2.0 -pkgrel=1 +pkgrel=2 pkgdesc="An implementation of the XDG Base Directory specifications." arch=('i686' 'x86_64') url="http://n.ethz.ch/student/nevillm/download/libxdg-basedir" license=('MIT') depends=('glibc') -source=(http://n.ethz.ch/student/nevillm/download/${pkgname}/${pkgname}-${pkgver}.tar.gz - 'LICENSE') -sha1sums=('b924afe4e29c52358ad67476887e9ca0dcf90f7c' +source=(https://github.com/devnev/$pkgname/archive/$pkgname-$pkgver.tar.gz + 'LICENSE') +sha1sums=('e671b01b17c8cf785d95dd3aefa93e7cf31e56a5' 'c76efede60d0632d4241d718919d8b4ec62056b3') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/$pkgname-$pkgname-$pkgver" - ./configure --prefix=/usr + ./autogen.sh --prefix=/usr make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/$pkgname-$pkgname-$pkgver" make DESTDIR=${pkgdir} install # Install MIT license diff --git a/community/plib/PKGBUILD b/community/plib/PKGBUILD index daa847213..74d871b29 100644 --- a/community/plib/PKGBUILD +++ b/community/plib/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 70925 2012-05-19 18:43:17Z spupykin $ +# $Id: PKGBUILD 103334 2014-01-03 11:08:04Z bpiotrowski $ # Maintainer: Eric Belanger # Contributor: Tom Newsom @@ -11,6 +11,7 @@ url="http://plib.sourceforge.net/" license=('custom:LGPL') makedepends=('mesa' 'libxi' 'libxmu') source=(http://plib.sourceforge.net/dist/$pkgname-$pkgver.tar.gz) +options=('staticlibs') md5sums=('47a6fbf63668c1eed631024038b2ea90') sha1sums=('c2cf7e3e1e58f7b63dae4bb21e4fa82c3e4d4cfc') diff --git a/community/quesoglc/PKGBUILD b/community/quesoglc/PKGBUILD index 43e36227c..79511d801 100644 --- a/community/quesoglc/PKGBUILD +++ b/community/quesoglc/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 99975 2013-10-31 02:47:18Z allan $ +# $Id: PKGBUILD 103332 2014-01-03 11:06:25Z bpiotrowski $ # Maintainer: Vesa Kaihlavirta # Contributor: Markus Pargmann pkgname=quesoglc pkgver=0.7.2 -pkgrel=2 +pkgrel=3 pkgdesc="A free implementation of the OpenGL Character Renderer (GLC)" arch=('i686' 'x86_64') url="http://quesoglc.sourceforge.net/" diff --git a/community/sqlite2/PKGBUILD b/community/sqlite2/PKGBUILD index 14d7e9a8b..00dadaa52 100644 --- a/community/sqlite2/PKGBUILD +++ b/community/sqlite2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 99991 2013-10-31 02:52:44Z allan $ +# $Id: PKGBUILD 103328 2014-01-03 10:53:51Z bpiotrowski $ # Maintainer: Ronald van Haren # Contributor: Judd pkgname=sqlite2 pkgver=2.8.17 -pkgrel=5 +pkgrel=6 pkgdesc="A C library that implements an SQL database engine" arch=('i686' 'x86_64') url="http://www.sqlite.org/" diff --git a/community/xulrunner/PKGBUILD b/community/xulrunner/PKGBUILD index fe3c629d2..0ccad9e86 100644 --- a/community/xulrunner/PKGBUILD +++ b/community/xulrunner/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 103127 2013-12-26 20:12:06Z bpiotrowski $ +# $Id: PKGBUILD 103314 2014-01-03 04:07:43Z allan $ # Maintainer: Jan de Groot # Contributor: Alexander Baldeck @@ -15,7 +15,7 @@ source=(ftp://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/$pkgver/source/ mozconfig mozilla-pkgconfig.patch shared-libs.patch) -options=('!emptydirs') +options=('!emptydirs' 'staticlibs') replaces=('xulrunner-oss') sha256sums=('50d70813cee1c966a6037957206626bb62dc047b011d2e4fab11c559008f9336' '3fba82b327f8825ebe93ceaeaea4968d57cf7d700f40bf4457b06d263bcc2e8f' diff --git a/core/dbus/PKGBUILD b/core/dbus/PKGBUILD index f347e17d3..6b6282c1d 100644 --- a/core/dbus/PKGBUILD +++ b/core/dbus/PKGBUILD @@ -1,21 +1,17 @@ -# $Id: PKGBUILD 200253 2013-11-23 20:09:30Z tomegun $ +# $Id: PKGBUILD 203073 2014-01-03 11:02:50Z tomegun $ # Maintainer: Tom Gundersen # Maintainer: Jan de Groot # Contributor: Link Dupont # -pkgname=dbus +pkgbase=dbus +pkgname=('dbus' 'libdbus') pkgver=1.6.18 -pkgrel=1 +pkgrel=3 pkgdesc="Freedesktop.org message bus system" url="http://www.freedesktop.org/Software/dbus" arch=(i686 x86_64) license=('GPL' 'custom') -depends=('expat' 'coreutils' 'filesystem') makedepends=('libx11' 'systemd') -optdepends=('libx11: dbus-launch support') -provides=('dbus-core') -conflicts=('dbus-core') -replaces=('dbus-core') source=(http://dbus.freedesktop.org/releases/dbus/dbus-$pkgver.tar.gz 30-dbus systemd-user-session.patch memleak.patch) md5sums=('b02e9c95027a416987b81f9893831061' @@ -44,7 +40,13 @@ build() { make } -package(){ +package_dbus(){ + depends=('libdbus' 'expat') + optdepends=('libx11: dbus-launch support') + provides=('dbus-core') + conflicts=('dbus-core') + replaces=('dbus-core') + cd dbus-$pkgver make DESTDIR="$pkgdir" install @@ -53,4 +55,21 @@ package(){ install -Dm755 ../30-dbus "$pkgdir/etc/X11/xinit/xinitrc.d/30-dbus" install -Dm644 COPYING "$pkgdir/usr/share/licenses/dbus/COPYING" + + # split out libdbus-1 + rm -rf "$srcdir/_libdbus" + install -dm755 "$srcdir"/_libdbus/usr/lib/dbus-1.0 + mv "$pkgdir"/usr/include "$srcdir"/_libdbus/usr/ + mv "$pkgdir"/usr/lib/pkgconfig "$srcdir"/_libdbus/usr/lib/ + mv "$pkgdir"/usr/lib/libdbus* "$srcdir"/_libdbus/usr/lib/ + mv "$pkgdir"/usr/lib/dbus-1.0/include "$srcdir"/_libdbus/usr/lib/dbus-1.0/ + install -Dm644 COPYING "$srcdir"/_libdbus/usr/share/licenses/libdbus/COPYING +} + +package_libdbus(){ + pkgdesc="DBus library" + depends=('glibc') + + + mv "$srcdir"/_libdbus/* "$pkgdir" } diff --git a/core/grep/PKGBUILD b/core/grep/PKGBUILD index 888f83f1a..1823febb6 100644 --- a/core/grep/PKGBUILD +++ b/core/grep/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 197799 2013-10-30 10:37:55Z allan $ +# $Id: PKGBUILD 203054 2014-01-03 00:30:46Z allan $ # Maintainer: Allan McRae # Contributor: judd pkgname=grep -pkgver=2.15 +pkgver=2.16 pkgrel=1 pkgdesc="A string search utility" arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ depends=('glibc' 'pcre' 'sh') makedepends=('texinfo') install=${pkgname}.install source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}) -md5sums=('8cab8ca52bcae735af40278423c7c942' +md5sums=('502350a6c8f7c2b12ee58829e760b44d' 'SKIP') build() { diff --git a/core/libcap/PKGBUILD b/core/libcap/PKGBUILD index bf3e12c95..e12d59559 100644 --- a/core/libcap/PKGBUILD +++ b/core/libcap/PKGBUILD @@ -1,25 +1,31 @@ -#$Id: PKGBUILD 185557 2013-05-15 05:24:44Z allan $ +#$Id: PKGBUILD 203064 2014-01-03 09:18:41Z allan $ # Maintainer: Allan McRae # Contributor: Hugo Doria pkgname=libcap -pkgver=2.22 -pkgrel=5 +pkgver=2.23 +pkgrel=2 pkgdesc="POSIX 1003.1e capabilities" arch=('i686' 'x86_64') url="http://sites.google.com/site/fullycapable/" license=('GPL2') depends=('glibc' 'attr') options=('!staticlibs') -source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.asc}) -md5sums=('b4896816b626bea445f0b3849bdd4077' - '9d0983e25e5a251d098507f9561d2b27') +source=(https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.23.tar.xz + libcap-2.23-header.patch) +md5sums=('09a185e4b0aa8a81a51c1e4d0eba7db0' + '945984c4bf5e601c24a7c80f001fb2c6') prepare() { cd ${srcdir}/${pkgname}-${pkgver} # install into /usr/bin sed -i "/SBINDIR/s#sbin#bin#" Make.Rules + + # fix header path issues + patch -p1 -i $srcdir/libcap-2.23-header.patch + # and fix the build with that patch + sed -i "s#uapi/##" libcap/Makefile } build() { diff --git a/core/libcap/libcap-2.23-header.patch b/core/libcap/libcap-2.23-header.patch new file mode 100644 index 000000000..74c45e0a4 --- /dev/null +++ b/core/libcap/libcap-2.23-header.patch @@ -0,0 +1,350 @@ +From c3290668646b767058e55b29f7b8f4be4af2e660 Mon Sep 17 00:00:00 2001 +From: Andrew G Morgan +Date: Thu, 02 Jan 2014 01:56:31 +0000 +Subject: Fix up the uapi/linux include scheme. + +In adopting this uapi header file (without kernel internals), I previously +messed up on the apparent location of the files. Thanks to Tom Gundersen for +the clarification. Also, delete the non-uapi copies of things since they +are no longer needed to build the library and tools. + +Signed-off-by: Andrew G Morgan +--- +diff --git a/Make.Rules b/Make.Rules +index 9ca6c89..5b58c59 100644 +--- a/Make.Rules ++++ b/Make.Rules +@@ -45,8 +45,8 @@ MINOR=23 + + # Compilation specifics + +-KERNEL_HEADERS := $(topdir)/libcap/include +-IPATH += -fPIC -I$(topdir)/libcap/include -I$(KERNEL_HEADERS) ++KERNEL_HEADERS := $(topdir)/libcap/include/uapi ++IPATH += -fPIC -I$(KERNEL_HEADERS) -I$(topdir)/libcap/include + + CC := gcc + CFLAGS := -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 +diff --git a/libcap/include/linux/capability.h b/libcap/include/linux/capability.h +deleted file mode 100644 +index a6ee1f9..0000000 +--- a/libcap/include/linux/capability.h ++++ /dev/null +@@ -1,219 +0,0 @@ +-/* +- * This is +- * +- * Andrew G. Morgan +- * Alexander Kjeldaas +- * with help from Aleph1, Roland Buresund and Andrew Main. +- * +- * See here for the libcap library ("POSIX draft" compliance): +- * +- * ftp://www.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.6/ +- */ +-#ifndef _LINUX_CAPABILITY_H +-#define _LINUX_CAPABILITY_H +- +-#include +- +- +-#define _KERNEL_CAPABILITY_VERSION _LINUX_CAPABILITY_VERSION_3 +-#define _KERNEL_CAPABILITY_U32S _LINUX_CAPABILITY_U32S_3 +- +-extern int file_caps_enabled; +- +-typedef struct kernel_cap_struct { +- __u32 cap[_KERNEL_CAPABILITY_U32S]; +-} kernel_cap_t; +- +-/* exact same as vfs_cap_data but in cpu endian and always filled completely */ +-struct cpu_vfs_cap_data { +- __u32 magic_etc; +- kernel_cap_t permitted; +- kernel_cap_t inheritable; +-}; +- +-#define _USER_CAP_HEADER_SIZE (sizeof(struct __user_cap_header_struct)) +-#define _KERNEL_CAP_T_SIZE (sizeof(kernel_cap_t)) +- +- +-struct file; +-struct inode; +-struct dentry; +-struct user_namespace; +- +-struct user_namespace *current_user_ns(void); +- +-extern const kernel_cap_t __cap_empty_set; +-extern const kernel_cap_t __cap_init_eff_set; +- +-/* +- * Internal kernel functions only +- */ +- +-#define CAP_FOR_EACH_U32(__capi) \ +- for (__capi = 0; __capi < _KERNEL_CAPABILITY_U32S; ++__capi) +- +-/* +- * CAP_FS_MASK and CAP_NFSD_MASKS: +- * +- * The fs mask is all the privileges that fsuid==0 historically meant. +- * At one time in the past, that included CAP_MKNOD and CAP_LINUX_IMMUTABLE. +- * +- * It has never meant setting security.* and trusted.* xattrs. +- * +- * We could also define fsmask as follows: +- * 1. CAP_FS_MASK is the privilege to bypass all fs-related DAC permissions +- * 2. The security.* and trusted.* xattrs are fs-related MAC permissions +- */ +- +-# define CAP_FS_MASK_B0 (CAP_TO_MASK(CAP_CHOWN) \ +- | CAP_TO_MASK(CAP_MKNOD) \ +- | CAP_TO_MASK(CAP_DAC_OVERRIDE) \ +- | CAP_TO_MASK(CAP_DAC_READ_SEARCH) \ +- | CAP_TO_MASK(CAP_FOWNER) \ +- | CAP_TO_MASK(CAP_FSETID)) +- +-# define CAP_FS_MASK_B1 (CAP_TO_MASK(CAP_MAC_OVERRIDE)) +- +-#if _KERNEL_CAPABILITY_U32S != 2 +-# error Fix up hand-coded capability macro initializers +-#else /* HAND-CODED capability initializers */ +- +-# define CAP_EMPTY_SET ((kernel_cap_t){{ 0, 0 }}) +-# define CAP_FULL_SET ((kernel_cap_t){{ ~0, ~0 }}) +-# define CAP_FS_SET ((kernel_cap_t){{ CAP_FS_MASK_B0 \ +- | CAP_TO_MASK(CAP_LINUX_IMMUTABLE), \ +- CAP_FS_MASK_B1 } }) +-# define CAP_NFSD_SET ((kernel_cap_t){{ CAP_FS_MASK_B0 \ +- | CAP_TO_MASK(CAP_SYS_RESOURCE), \ +- CAP_FS_MASK_B1 } }) +- +-#endif /* _KERNEL_CAPABILITY_U32S != 2 */ +- +-# define cap_clear(c) do { (c) = __cap_empty_set; } while (0) +- +-#define cap_raise(c, flag) ((c).cap[CAP_TO_INDEX(flag)] |= CAP_TO_MASK(flag)) +-#define cap_lower(c, flag) ((c).cap[CAP_TO_INDEX(flag)] &= ~CAP_TO_MASK(flag)) +-#define cap_raised(c, flag) ((c).cap[CAP_TO_INDEX(flag)] & CAP_TO_MASK(flag)) +- +-#define CAP_BOP_ALL(c, a, b, OP) \ +-do { \ +- unsigned __capi; \ +- CAP_FOR_EACH_U32(__capi) { \ +- c.cap[__capi] = a.cap[__capi] OP b.cap[__capi]; \ +- } \ +-} while (0) +- +-#define CAP_UOP_ALL(c, a, OP) \ +-do { \ +- unsigned __capi; \ +- CAP_FOR_EACH_U32(__capi) { \ +- c.cap[__capi] = OP a.cap[__capi]; \ +- } \ +-} while (0) +- +-static inline kernel_cap_t cap_combine(const kernel_cap_t a, +- const kernel_cap_t b) +-{ +- kernel_cap_t dest; +- CAP_BOP_ALL(dest, a, b, |); +- return dest; +-} +- +-static inline kernel_cap_t cap_intersect(const kernel_cap_t a, +- const kernel_cap_t b) +-{ +- kernel_cap_t dest; +- CAP_BOP_ALL(dest, a, b, &); +- return dest; +-} +- +-static inline kernel_cap_t cap_drop(const kernel_cap_t a, +- const kernel_cap_t drop) +-{ +- kernel_cap_t dest; +- CAP_BOP_ALL(dest, a, drop, &~); +- return dest; +-} +- +-static inline kernel_cap_t cap_invert(const kernel_cap_t c) +-{ +- kernel_cap_t dest; +- CAP_UOP_ALL(dest, c, ~); +- return dest; +-} +- +-static inline int cap_isclear(const kernel_cap_t a) +-{ +- unsigned __capi; +- CAP_FOR_EACH_U32(__capi) { +- if (a.cap[__capi] != 0) +- return 0; +- } +- return 1; +-} +- +-/* +- * Check if "a" is a subset of "set". +- * return 1 if ALL of the capabilities in "a" are also in "set" +- * cap_issubset(0101, 1111) will return 1 +- * return 0 if ANY of the capabilities in "a" are not in "set" +- * cap_issubset(1111, 0101) will return 0 +- */ +-static inline int cap_issubset(const kernel_cap_t a, const kernel_cap_t set) +-{ +- kernel_cap_t dest; +- dest = cap_drop(a, set); +- return cap_isclear(dest); +-} +- +-/* Used to decide between falling back on the old suser() or fsuser(). */ +- +-static inline int cap_is_fs_cap(int cap) +-{ +- const kernel_cap_t __cap_fs_set = CAP_FS_SET; +- return !!(CAP_TO_MASK(cap) & __cap_fs_set.cap[CAP_TO_INDEX(cap)]); +-} +- +-static inline kernel_cap_t cap_drop_fs_set(const kernel_cap_t a) +-{ +- const kernel_cap_t __cap_fs_set = CAP_FS_SET; +- return cap_drop(a, __cap_fs_set); +-} +- +-static inline kernel_cap_t cap_raise_fs_set(const kernel_cap_t a, +- const kernel_cap_t permitted) +-{ +- const kernel_cap_t __cap_fs_set = CAP_FS_SET; +- return cap_combine(a, +- cap_intersect(permitted, __cap_fs_set)); +-} +- +-static inline kernel_cap_t cap_drop_nfsd_set(const kernel_cap_t a) +-{ +- const kernel_cap_t __cap_fs_set = CAP_NFSD_SET; +- return cap_drop(a, __cap_fs_set); +-} +- +-static inline kernel_cap_t cap_raise_nfsd_set(const kernel_cap_t a, +- const kernel_cap_t permitted) +-{ +- const kernel_cap_t __cap_nfsd_set = CAP_NFSD_SET; +- return cap_combine(a, +- cap_intersect(permitted, __cap_nfsd_set)); +-} +- +-extern bool has_capability(struct task_struct *t, int cap); +-extern bool has_ns_capability(struct task_struct *t, +- struct user_namespace *ns, int cap); +-extern bool has_capability_noaudit(struct task_struct *t, int cap); +-extern bool has_ns_capability_noaudit(struct task_struct *t, +- struct user_namespace *ns, int cap); +-extern bool capable(int cap); +-extern bool ns_capable(struct user_namespace *ns, int cap); +-extern bool inode_capable(const struct inode *inode, int cap); +-extern bool file_ns_capable(const struct file *file, struct user_namespace *ns, int cap); +- +-/* audit system wants to get cap info from files as well */ +-extern int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data *cpu_caps); +- +-#endif /* !_LINUX_CAPABILITY_H */ +diff --git a/libcap/include/sys/capability.h b/libcap/include/sys/capability.h +index 56fc7fd..64ac50e 100644 +--- a/libcap/include/sys/capability.h ++++ b/libcap/include/sys/capability.h +@@ -26,7 +26,7 @@ extern "C" { + #ifndef __user + #define __user + #endif +-#include ++#include + #include + + /* +diff --git a/libcap/include/linux/prctl.h b/libcap/include/uapi/linux/prctl.h +index a3baeb2..289760f 100644 +--- a/libcap/include/linux/prctl.h ++++ b/libcap/include/uapi/linux/prctl.h +@@ -102,4 +102,51 @@ + + #define PR_MCE_KILL_GET 34 + ++/* ++ * Tune up process memory map specifics. ++ */ ++#define PR_SET_MM 35 ++# define PR_SET_MM_START_CODE 1 ++# define PR_SET_MM_END_CODE 2 ++# define PR_SET_MM_START_DATA 3 ++# define PR_SET_MM_END_DATA 4 ++# define PR_SET_MM_START_STACK 5 ++# define PR_SET_MM_START_BRK 6 ++# define PR_SET_MM_BRK 7 ++# define PR_SET_MM_ARG_START 8 ++# define PR_SET_MM_ARG_END 9 ++# define PR_SET_MM_ENV_START 10 ++# define PR_SET_MM_ENV_END 11 ++# define PR_SET_MM_AUXV 12 ++# define PR_SET_MM_EXE_FILE 13 ++ ++/* ++ * Set specific pid that is allowed to ptrace the current task. ++ * A value of 0 mean "no process". ++ */ ++#define PR_SET_PTRACER 0x59616d61 ++# define PR_SET_PTRACER_ANY ((unsigned long)-1) ++ ++#define PR_SET_CHILD_SUBREAPER 36 ++#define PR_GET_CHILD_SUBREAPER 37 ++ ++/* ++ * If no_new_privs is set, then operations that grant new privileges (i.e. ++ * execve) will either fail or not grant them. This affects suid/sgid, ++ * file capabilities, and LSMs. ++ * ++ * Operations that merely manipulate or drop existing privileges (setresuid, ++ * capset, etc.) will still work. Drop those privileges if you want them gone. ++ * ++ * Changing LSM security domain is considered a new privilege. So, for example, ++ * asking selinux for a specific new context (e.g. with runcon) will result ++ * in execve returning -EPERM. ++ * ++ * See Documentation/prctl/no_new_privs.txt for more details. ++ */ ++#define PR_SET_NO_NEW_PRIVS 38 ++#define PR_GET_NO_NEW_PRIVS 39 ++ ++#define PR_GET_TID_ADDRESS 40 ++ + #endif /* _LINUX_PRCTL_H */ +diff --git a/libcap/include/linux/securebits.h b/libcap/include/uapi/linux/securebits.h +index 3340617..985aac9 100644 +--- a/libcap/include/linux/securebits.h ++++ b/libcap/include/uapi/linux/securebits.h +@@ -1,14 +1,11 @@ +-#ifndef _LINUX_SECUREBITS_H +-#define _LINUX_SECUREBITS_H 1 ++#ifndef _UAPI_LINUX_SECUREBITS_H ++#define _UAPI_LINUX_SECUREBITS_H + + /* Each securesetting is implemented using two bits. One bit specifies + whether the setting is on or off. The other bit specify whether the + setting is locked or not. A setting which is locked cannot be + changed from user-level. */ + #define issecure_mask(X) (1 << (X)) +-#ifdef __KERNEL__ +-#define issecure(X) (issecure_mask(X) & current_cred_xxx(securebits)) +-#endif + + #define SECUREBITS_DEFAULT 0x00000000 + +@@ -51,4 +48,4 @@ + issecure_mask(SECURE_KEEP_CAPS)) + #define SECURE_ALL_LOCKS (SECURE_ALL_BITS << 1) + +-#endif /* !_LINUX_SECUREBITS_H */ ++#endif /* _UAPI_LINUX_SECUREBITS_H */ +-- +cgit v0.9.2 diff --git a/extra/brltty/PKGBUILD b/extra/brltty/PKGBUILD index 1fbf355dd..e3e101a2e 100644 --- a/extra/brltty/PKGBUILD +++ b/extra/brltty/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 196739 2013-10-17 14:02:42Z andyrtr $ +# $Id: PKGBUILD 203074 2014-01-03 11:03:11Z tomegun $ # Maintainer: Tom Gundersen # Contributor: Jan de Groot # Contributor: Giovanni Scafora pkgname=brltty pkgver=4.5 -pkgrel=5 +pkgrel=6 pkgdesc="Braille display driver for Linux/Unix" arch=(i686 x86_64) url="http://mielke.cc/brltty" diff --git a/extra/chmlib/PKGBUILD b/extra/chmlib/PKGBUILD index 0925c336b..245fa59c5 100644 --- a/extra/chmlib/PKGBUILD +++ b/extra/chmlib/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 197891 2013-10-30 11:30:33Z allan $ +# $Id: PKGBUILD 203057 2014-01-03 08:38:57Z bpiotrowski $ # Maintainer: Giovanni Scafora # Contributor: Alexander 'dma147' Mieland # Contributor: Simon Morgan pkgname=chmlib pkgver=0.40 -pkgrel=3 +pkgrel=4 pkgdesc="Library for dealing with Microsoft ITSS/CHM format files" arch=('i686' 'x86_64') url="http://morte.jedrea.com/~jedwin/projects/chmlib/" diff --git a/extra/clisp/PKGBUILD b/extra/clisp/PKGBUILD index 6e371fce6..f27d387c6 100644 --- a/extra/clisp/PKGBUILD +++ b/extra/clisp/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 154935 2012-03-31 09:53:13Z ronald $ +# $Id: PKGBUILD 203061 2014-01-03 09:08:54Z bpiotrowski $ # Maintainer: Juergen Hoetzel pkgname=clisp pkgver=2.49 -pkgrel=3 +pkgrel=4 pkgdesc="ANSI Common Lisp interpreter, compiler and debugger" arch=('i686' 'x86_64') license=('GPL') diff --git a/extra/crypto++/PKGBUILD b/extra/crypto++/PKGBUILD index be0823a13..cdc6f311d 100644 --- a/extra/crypto++/PKGBUILD +++ b/extra/crypto++/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 179501 2013-03-05 17:32:57Z giovanni $ +# $Id: PKGBUILD 203063 2014-01-03 09:15:09Z bpiotrowski $ # Maintainer: Giovanni Scafora # Contributor: Alexander Rødseth # Contributor: Andrea Scarpino @@ -8,7 +8,7 @@ pkgname=crypto++ pkgver=5.6.2 _srcver=562 -pkgrel=1 +pkgrel=2 pkgdesc="A free C++ class library of cryptographic schemes" arch=('i686' 'x86_64') url="http://www.cryptopp.com/" @@ -21,8 +21,6 @@ md5sums=('7ed022585698df48e65ce9218f6c6a67' '46de3847c59ad16456fa863eb33e73b2') build() { - cd ${srcdir} - sed -i -e 's/^CXXFLAGS/#CXXFLAGS/' GNUmakefile export CXXFLAGS="${CXXFLAGS} -DNDEBUG -fPIC" make -f GNUmakefile @@ -30,11 +28,8 @@ build() { } package() { - cd ${srcdir} - install -d ${pkgdir}/usr/{lib/pkgconfig,include/cryptopp} install -m644 *.h ${pkgdir}/usr/include/cryptopp/ - install -m644 libcryptopp.a "${pkgdir}/usr/lib/libcryptopp.a" install -m644 libcryptopp.so "${pkgdir}/usr/lib/libcryptopp.so" install -m644 ${srcdir}/libcrypto++.pc "${pkgdir}/usr/lib/pkgconfig/libcrypto++.pc" install -D -m644 License.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" diff --git a/extra/dhcp/PKGBUILD b/extra/dhcp/PKGBUILD index 10a547001..acd817025 100644 --- a/extra/dhcp/PKGBUILD +++ b/extra/dhcp/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 187056 2013-06-03 11:16:27Z allan $ +# $Id: PKGBUILD 203066 2014-01-03 09:19:21Z bpiotrowski $ # Maintainer: Daniel Isenmann pkgbase=dhcp @@ -7,7 +7,7 @@ pkgname=('dhcp' 'dhclient') # separate patch levels with a period to maintain proper versioning. pkgver=4.2.5.p1 _pkgver=4.2.5-P1 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') license=('custom:isc-dhcp') url="https://www.isc.org/software/dhcp" diff --git a/extra/ecl/PKGBUILD b/extra/ecl/PKGBUILD index d892592b8..86c7b5a67 100644 --- a/extra/ecl/PKGBUILD +++ b/extra/ecl/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 192491 2013-08-13 08:44:20Z juergen $ +# $Id: PKGBUILD 203068 2014-01-03 09:30:10Z bpiotrowski $ # Contributor: John Proctor # Maintainer: juergen pkgname=ecl pkgver=13.5.1 -pkgrel=1 +pkgrel=2 pkgdesc="Embeddable Common Lisp" arch=('i686' 'x86_64') url="http://sourceforge.net/projects/ecls/" diff --git a/extra/ffcall/PKGBUILD b/extra/ffcall/PKGBUILD index 6652abce5..147e47af2 100644 --- a/extra/ffcall/PKGBUILD +++ b/extra/ffcall/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 197949 2013-10-30 11:51:49Z allan $ +# $Id: PKGBUILD 203079 2014-01-03 18:03:13Z bpiotrowski $ # Maintainer: Vesa Kaihlavirta # Contributor: Michael Baehr pkgname=ffcall pkgver=1.10 -pkgrel=4 +pkgrel=6 pkgdesc="C library for implementing foreign function calls in embedded interpreters" arch=('i686' 'x86_64') url="http://www.gnu.org/software/libffcall/" license=('GPL2') -options=('!makeflags') +options=('!makeflags' 'staticlibs') source=(http://www.haible.de/bruno/gnu/${pkgname}-${pkgver}.tar.gz) md5sums=('2db95007e901f3bc2ae7e5a9fe9ebea4') diff --git a/extra/gmetadom/PKGBUILD b/extra/gmetadom/PKGBUILD index 22cb3d794..f8185e918 100644 --- a/extra/gmetadom/PKGBUILD +++ b/extra/gmetadom/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 197998 2013-10-30 12:10:28Z allan $ +# $Id: PKGBUILD 203072 2014-01-03 09:38:06Z bpiotrowski $ # Maintainer: Giovanni Scafora # Contributor: Jan de Groot pkgname=gmetadom pkgver=0.2.6 -pkgrel=3 +pkgrel=4 pkgdesc="C++ bindings for GDome2 DOM implementation" arch=('i686' 'x86_64') url="http://gmetadom.sourceforge.net/" diff --git a/extra/poppler/PKGBUILD b/extra/poppler/PKGBUILD index c61cd1028..1c711adc0 100644 --- a/extra/poppler/PKGBUILD +++ b/extra/poppler/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 200652 2013-12-01 09:50:16Z andyrtr $ +# $Id: PKGBUILD 203081 2014-01-03 20:06:57Z andyrtr $ # Maintainer: Jan de Groot pkgbase=poppler pkgname=('poppler' 'poppler-glib' 'poppler-qt4' 'poppler-qt5') -pkgver=0.24.4 +pkgver=0.24.5 pkgrel=1 arch=(i686 x86_64) license=('GPL') @@ -12,21 +12,24 @@ options=('!emptydirs') url="http://poppler.freedesktop.org/" _testtag=0d2bfd4af4c76a3bac27ccaff793d9129df7b57a source=(http://poppler.freedesktop.org/${pkgbase}-${pkgver}.tar.xz - http://cgit.freedesktop.org/poppler/test/snapshot/test-${_testtag}.tar.bz2) -md5sums=('2da22b966cf7a2f8da5bf021e68188ce' - '9dc64c254a31e570507bdd4ad4ba629a') + http://cgit.freedesktop.org/poppler/test/snapshot/test-${_testtag}.tar.bz2 + poppler-0.24.2-mocversiongrep.patch) +md5sums=('334f2ac95cc8039f2a57fe63e4a81c69' + '9dc64c254a31e570507bdd4ad4ba629a' + 'd5280e4eb6d02660971bdaa45065933f') prepare() { ln -sf test-${_testtag} test cd ${pkgbase}-${pkgver} - + # fix build with recent qt versions, patch taken from FC + patch -Np1 -i ${srcdir}/poppler-0.24.2-mocversiongrep.patch sed -i -e '/AC_PATH_XTRA/d' configure.ac sed -i "s:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:" configure.ac + autoreconf -fi } build() { cd ${pkgbase}-${pkgver} - autoreconf -fi ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --enable-cairo-output \ @@ -62,12 +65,11 @@ package_poppler-glib() { pkgdesc="Poppler glib bindings" depends=("poppler=${pkgver}" 'glib2') - cd "${srcdir}/${pkgbase}-${pkgver}/poppler" - make DESTDIR="${pkgdir}" install-libLTLIBRARIES - cd "${srcdir}/${pkgbase}-${pkgver}/glib" - make DESTDIR="${pkgdir}" install + cd "${pkgbase}-${pkgver}" + make -C poppler DESTDIR="${pkgdir}" install-libLTLIBRARIES + make -C glib DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/lib/pkgconfig" - install -m644 ../poppler-glib.pc "${pkgdir}/usr/lib/pkgconfig/" + install -m644 poppler-glib.pc "${pkgdir}/usr/lib/pkgconfig/" rm -f "${pkgdir}"/usr/lib/libpoppler.* rm -f "${pkgdir}/usr/bin/poppler-glib-demo" } @@ -79,12 +81,11 @@ package_poppler-qt4() { conflicts=('poppler-qt') depends=("poppler=${pkgver}" 'qt4') - cd "${srcdir}/${pkgbase}-${pkgver}/poppler" - make DESTDIR="${pkgdir}" install-libLTLIBRARIES - cd "${srcdir}/${pkgbase}-${pkgver}/qt4" - make DESTDIR="${pkgdir}" install + cd "${pkgbase}-${pkgver}" + make -C poppler DESTDIR="${pkgdir}" install-libLTLIBRARIES + make -C qt4 DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/lib/pkgconfig" - install -m644 ../poppler-qt4.pc "${pkgdir}/usr/lib/pkgconfig/" + install -m644 poppler-qt4.pc "${pkgdir}/usr/lib/pkgconfig/" rm -f "${pkgdir}"/usr/lib/libpoppler.* } @@ -92,11 +93,10 @@ package_poppler-qt5() { pkgdesc="Poppler Qt5 bindings" depends=("poppler=${pkgver}" 'qt5-base') - cd "${srcdir}/${pkgbase}-${pkgver}/poppler" - make DESTDIR="${pkgdir}" install-libLTLIBRARIES - cd "${srcdir}/${pkgbase}-${pkgver}/qt5" - make DESTDIR="${pkgdir}" install + cd "${pkgbase}-${pkgver}" + make -C poppler DESTDIR="${pkgdir}" install-libLTLIBRARIES + make -C qt5 DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/lib/pkgconfig" - install -m644 ../poppler-qt5.pc "${pkgdir}/usr/lib/pkgconfig/" + install -m644 poppler-qt5.pc "${pkgdir}/usr/lib/pkgconfig/" rm -f "${pkgdir}"/usr/lib/libpoppler.* } diff --git a/extra/poppler/poppler-0.24.2-mocversiongrep.patch b/extra/poppler/poppler-0.24.2-mocversiongrep.patch new file mode 100644 index 000000000..1343f8f9c --- /dev/null +++ b/extra/poppler/poppler-0.24.2-mocversiongrep.patch @@ -0,0 +1,28 @@ +diff -up poppler-0.24.2/configure.ac.mocversiongrep poppler-0.24.2/configure.ac +--- poppler-0.24.2/configure.ac.mocversiongrep 2013-10-18 09:51:24.223114884 -0500 ++++ poppler-0.24.2/configure.ac 2013-10-18 09:54:33.408681067 -0500 +@@ -661,20 +661,20 @@ if test x$enable_poppler_qt5 = xyes; the + AC_CHECK_TOOL(MOCQT5, moc) + AC_MSG_CHECKING([for Qt5 moc]) + mocversion=`$MOCQT5 -v 2>&1` +- mocversiongrep=`echo $mocversion | grep "Qt 5"` ++ mocversiongrep=`echo $mocversion | grep " 5\."` + if test x"$mocversiongrep" != x"$mocversion"; then + AC_MSG_RESULT([no]) + # moc was not the qt5 one, try with moc-qt5 + AC_CHECK_TOOL(MOCQT52, moc-qt5) + AC_MSG_CHECKING([for Qt5 moc-qt5]) + mocversion=`$MOCQT52 -v 2>&1` +- mocversiongrep=`echo $mocversion | grep "Qt 5"` ++ mocversiongrep=`echo $mocversion | grep " 5\."` + if test x"$mocversiongrep" != x"$mocversion"; then + AC_CHECK_TOOL(QTCHOOSER, qtchooser) + AC_MSG_CHECKING([for qtchooser]) + qt5tooldir=`QT_SELECT=qt5 qtchooser -print-env | grep QTTOOLDIR | cut -d '=' -f 2 | cut -d \" -f 2` + mocversion=`$qt5tooldir/moc -v 2>&1` +- mocversiongrep=`echo $mocversion | grep "Qt 5"` ++ mocversiongrep=`echo $mocversion | grep " 5\."` + if test x"$mocversiongrep" != x"$mocversion"; then + # no valid moc found + enable_poppler_qt5=no; + diff --git a/extra/qt5/PKGBUILD b/extra/qt5/PKGBUILD index fdaff2177..497457f6d 100644 --- a/extra/qt5/PKGBUILD +++ b/extra/qt5/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 202711 2013-12-25 21:25:46Z andyrtr $ +# $Id: PKGBUILD 203076 2014-01-03 12:12:14Z andrea $ # Maintainer: Andrea Scarpino pkgbase=qt5 @@ -22,7 +22,7 @@ pkgname=('qt5-base' 'qt5-x11extras' 'qt5-xmlpatterns') pkgver=5.2.0 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') url='http://qt-project.org/' license=('GPL3' 'LGPL' 'FDL' 'custom') @@ -31,7 +31,7 @@ makedepends=('libxcb' 'xcb-proto' 'xcb-util' 'xcb-util-image' 'xcb-util-wm' 'xcb 'libjpeg-turbo' 'cups' 'libpulse' 'hicolor-icon-theme' 'desktop-file-utils' 'postgresql-libs' 'libmariadbclient' 'sqlite' 'unixodbc' 'libfbclient' 'python2' 'ruby' 'gperf' 'libxslt' 'libxcomposite' 'fontconfig' - 'openal' 'gtk2' 'libxkbcommon' 'python') + 'openal' 'gtk2' 'libxkbcommon' 'python' 'harfbuzz') groups=('qt' 'qt5') _pkgfqn="qt-everywhere-opensource-src-${pkgver}" source=("http://download.qt-project.org/official_releases/qt/5.2/${pkgver}/single/${_pkgfqn}.tar.xz" @@ -75,6 +75,7 @@ build() { -sysconfdir /etc/xdg \ -examplesdir /usr/share/doc/qt/examples \ -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \ + -system-harfbuzz \ -system-sqlite \ -openssl-linked \ -nomake examples \ @@ -99,7 +100,7 @@ package_qt5-base() { pkgdesc='A cross-platform application and UI framework' depends=('libjpeg-turbo' 'xcb-util-keysyms' 'libgl' 'dbus' 'fontconfig' 'systemd' 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'icu' - 'qtchooser' 'libxkbcommon') + 'qtchooser' 'libxkbcommon' 'harfbuzz') optdepends=('postgresql-libs: PostgreSQL driver' 'libmariadbclient: MariaDB driver' 'unixodbc: ODBC driver' diff --git a/libre/calibre-libre/PKGBUILD b/libre/calibre-libre/PKGBUILD index 7c4e50950..75d6d8b63 100644 --- a/libre/calibre-libre/PKGBUILD +++ b/libre/calibre-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 103187 2013-12-29 13:15:31Z jelle $ +# $Id: PKGBUILD 103342 2014-01-03 12:23:23Z jelle $ # Maintainer: jelle van der Waa # Maintainer: Daniel Wallace # Contributor: Giovanni Scafora @@ -9,7 +9,7 @@ _pkgname=calibre pkgname=calibre-libre -pkgver=1.17.0 +pkgver=1.18.0 pkgrel=1 pkgdesc="Ebook management application, with unar support" arch=('i686' 'x86_64' 'mips64el') @@ -30,7 +30,7 @@ install=calibre.install source=("http://download.calibre-ebook.com/${pkgver}/calibre-${pkgver}.tar.xz" 'desktop_integration.patch' 'calibre-mount-helper') -md5sums=('f154d941683e45c93c3f3b15570c0b30' +md5sums=('6a89229787a8ca63ece9c905df304222' '95ca4eb3afa7c737c8371708a23bdad9' '675cd87d41342119827ef706055491e7') -- cgit v1.2.3-54-g00ecf From f3c8ccda77966505f7c3f0817fd8c78384411a5a Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sun, 5 Jan 2014 03:29:28 +0000 Subject: Sun Jan 5 03:25:57 UTC 2014 --- community/chmsee/PKGBUILD | 47 +- community/docker/PKGBUILD | 4 +- community/docker/docker.service | 11 - community/mednafen/PKGBUILD | 6 +- community/nbd/PKGBUILD | 8 +- community/openobex/PKGBUILD | 41 + community/par2cmdline/PKGBUILD | 6 +- community/xbindkeys/PKGBUILD | 8 +- community/xulrunner/PKGBUILD | 27 +- community/xulrunner/freetype-headers.patch | 66 + community/xulrunner/mozconfig | 4 +- extra/cagibi/PKGBUILD | 30 - extra/enblend-enfuse/PKGBUILD | 4 +- extra/haveged/PKGBUILD | 23 +- extra/haveged/cleanexit.patch | 21 - ...the_default_value_for_contrast_saturation.patch | 27 + extra/libva-intel-driver/PKGBUILD | 22 +- extra/obex-data-server/PKGBUILD | 35 - .../obex-data-server-openobex17.patch | 12 - extra/openobex/PKGBUILD | 41 - extra/vigra/PKGBUILD | 18 +- kernels/gradm/PKGBUILD | 39 + kernels/gradm/learn_config | 169 + kernels/gradm/policy | 487 + kernels/gradm/usr.patch | 115 + kernels/linux-libre-grsec/Kbuild | 19 + kernels/linux-libre-grsec/Kbuild.platforms | 6 + kernels/linux-libre-grsec/PKGBUILD | 445 + kernels/linux-libre-grsec/boot-logo.patch | 22687 +++++++++++++++++++ .../change-default-console-loglevel.patch | 12 + kernels/linux-libre-grsec/config.i686 | 6638 ++++++ kernels/linux-libre-grsec/config.x86_64 | 6414 ++++++ kernels/linux-libre-grsec/criu-no-expert.patch | 13 + .../known-exploit-detection.patch | 350 + .../linux-libre-grsec/linux-libre-grsec.install | 115 + kernels/linux-libre-grsec/linux-libre-grsec.preset | 14 + kernels/linux-libre-grsec/module-blacklist.conf | 1 + kernels/linux-libre-grsec/sysctl.conf | 103 + kernels/pax-flags-libre/PKGBUILD | 51 + kernels/pax-flags-libre/clamav.conf | 6 + kernels/pax-flags-libre/games.conf | 15 + kernels/pax-flags-libre/java.conf | 13 + kernels/pax-flags-libre/kde.conf | 22 + kernels/pax-flags-libre/pax-flags-libre.8 | 112 + kernels/pax-flags-libre/pax-flags-libre.rb | 278 + kernels/pax-flags-libre/pax-flags-libre.sh | 13 + kernels/pax-flags-libre/polkit.conf | 5 + kernels/pax-flags-libre/qemu.conf | 51 + kernels/pax-flags-libre/replicant.conf | 8 + kernels/pax-flags-libre/ruby.conf | 7 + kernels/pax-flags-libre/simple.conf | 59 + kernels/pax-flags-libre/valgrind.conf | 25 + kernels/paxctl/PKGBUILD | 31 + pcr/pandoc/PKGBUILD | 10 +- pcr/pandoc/SRCBUILD | 4 +- pcr/youtube-dl-current/PKGBUILD | 4 +- 56 files changed, 38555 insertions(+), 247 deletions(-) delete mode 100644 community/docker/docker.service create mode 100644 community/openobex/PKGBUILD create mode 100644 community/xulrunner/freetype-headers.patch delete mode 100644 extra/cagibi/PKGBUILD delete mode 100644 extra/haveged/cleanexit.patch create mode 100644 extra/libva-intel-driver/Adjust_the_default_value_for_contrast_saturation.patch delete mode 100644 extra/obex-data-server/PKGBUILD delete mode 100644 extra/obex-data-server/obex-data-server-openobex17.patch delete mode 100644 extra/openobex/PKGBUILD create mode 100644 kernels/gradm/PKGBUILD create mode 100644 kernels/gradm/learn_config create mode 100644 kernels/gradm/policy create mode 100644 kernels/gradm/usr.patch create mode 100644 kernels/linux-libre-grsec/Kbuild create mode 100644 kernels/linux-libre-grsec/Kbuild.platforms create mode 100644 kernels/linux-libre-grsec/PKGBUILD create mode 100644 kernels/linux-libre-grsec/boot-logo.patch create mode 100644 kernels/linux-libre-grsec/change-default-console-loglevel.patch create mode 100644 kernels/linux-libre-grsec/config.i686 create mode 100644 kernels/linux-libre-grsec/config.x86_64 create mode 100644 kernels/linux-libre-grsec/criu-no-expert.patch create mode 100644 kernels/linux-libre-grsec/known-exploit-detection.patch create mode 100644 kernels/linux-libre-grsec/linux-libre-grsec.install create mode 100644 kernels/linux-libre-grsec/linux-libre-grsec.preset create mode 100644 kernels/linux-libre-grsec/module-blacklist.conf create mode 100644 kernels/linux-libre-grsec/sysctl.conf create mode 100644 kernels/pax-flags-libre/PKGBUILD create mode 100644 kernels/pax-flags-libre/clamav.conf create mode 100644 kernels/pax-flags-libre/games.conf create mode 100644 kernels/pax-flags-libre/java.conf create mode 100644 kernels/pax-flags-libre/kde.conf create mode 100644 kernels/pax-flags-libre/pax-flags-libre.8 create mode 100755 kernels/pax-flags-libre/pax-flags-libre.rb create mode 100755 kernels/pax-flags-libre/pax-flags-libre.sh create mode 100644 kernels/pax-flags-libre/polkit.conf create mode 100644 kernels/pax-flags-libre/qemu.conf create mode 100644 kernels/pax-flags-libre/replicant.conf create mode 100644 kernels/pax-flags-libre/ruby.conf create mode 100644 kernels/pax-flags-libre/simple.conf create mode 100644 kernels/pax-flags-libre/valgrind.conf create mode 100644 kernels/paxctl/PKGBUILD (limited to 'community') diff --git a/community/chmsee/PKGBUILD b/community/chmsee/PKGBUILD index d5030ee63..0dc231df3 100644 --- a/community/chmsee/PKGBUILD +++ b/community/chmsee/PKGBUILD @@ -1,52 +1,47 @@ -# $Id: PKGBUILD 96436 2013-08-28 21:03:26Z lcarlier $ +# $Id: PKGBUILD 103375 2014-01-04 11:27:06Z bpiotrowski $ # Maintainer : Laurent Carlier # Contributor: dionydonny # Contributor: Ermanno pkgname=chmsee pkgver=2.0.2 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') pkgdesc="A chm (MS HTML help file format) viewer based on xulrunner." url="http://chmsee.googlecode.com/" license=('GPL') -depends=('xulrunner>21.0' 'xulrunner<24.0' 'chmlib' 'desktop-file-utils') +depends=('xulrunner>21.0' 'xulrunner<27.0' 'chmlib' 'desktop-file-utils') makedepends=('python2') -#source=(chmsee-$pkgver.tar.gz::https://github.com/jungleji/chmsee/tarball/v$pkgver -#source=(https://github.com/jungleji/chmsee/archive/b2a3c2ad32bfe9db067665ea1928d7e130d1b5e7.zip -source=(https://chmsee.googlecode.com/files/${pkgname}-${pkgver}.tar.gz +source=(https://chmsee.googlecode.com/files/$pkgname-$pkgver.tar.gz chmsee) install=chmsee.install md5sums=('c6a6ce009395c72ecf0530500ecda37c' '1787edd1de8aa75bd9fa75a5ab319e85') -build() { - cd ${srcdir}/chmsee-*/src +prepare() { + cd $pkgname-$pkgver + sed -i -e 's/^\(MaxVersion=\).*/\126.*/' application.ini +} +build() { + cd $pkgname-$pkgver/src cp Makefile.arch Makefile - #sed -i -e 's/17.*/18.0/g' ../application.ini - #sed -i -e 's/21.*/22.*/g' ../application.ini - - # xpcom has been merged into xul in xulrunner 22.0 - # sed -i -e 's/-lxpcom/-lxul/' common.mk - make -j1 } package() { - cd ${srcdir}/chmsee-* + cd $pkgname-$pkgver - install -d ${pkgdir}/usr/share/chmsee - cp -a * ${pkgdir}/usr/share/chmsee - rm -r ${pkgdir}/usr/share/chmsee/src + install -d "$pkgdir"/usr/share/chmsee + cp -a * "$pkgdir"/usr/share/chmsee + rm -r "$pkgdir"/usr/share/chmsee/src install -Dm644 data/chmsee.desktop.in \ - ${pkgdir}/usr/share/applications/chmsee.desktop + "$pkgdir"/usr/share/applications/chmsee.desktop + # Fix FS#25152 - sed -i -e 's/_//g' ${pkgdir}/usr/share/applications/chmsee.desktop - # - install -d ${pkgdir}/usr/share/pixmaps - install -Dm644 data/chmsee-icon.png ${pkgdir}/usr/share/pixmaps - install -Dm755 ${srcdir}/chmsee ${pkgdir}/usr/bin/chmsee -# install -d ${pkgdir}/usr/share/icons -# cp -a data/icons/* ${pkgdir}/usr/share/icons/ + sed -i -e 's/_//g' "$pkgdir"/usr/share/applications/chmsee.desktop + + install -d "$pkgdir"/usr/share/pixmaps + install -Dm644 data/chmsee-icon.png "$pkgdir"/usr/share/pixmaps + install -Dm755 ${srcdir}/chmsee "$pkgdir"/usr/bin/chmsee } diff --git a/community/docker/PKGBUILD b/community/docker/PKGBUILD index 9215782e4..03fbb4c64 100644 --- a/community/docker/PKGBUILD +++ b/community/docker/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 102652 2013-12-17 09:06:19Z seblu $ +# $Id: PKGBUILD 103353 2014-01-04 01:37:48Z seblu $ # Maintainer: Sébastien "Seblu" Luttringer pkgname=docker -pkgver=0.7.2 +pkgver=0.7.3 pkgrel=1 epoch=1 pkgdesc='Pack, ship and run any application as a lightweight container' diff --git a/community/docker/docker.service b/community/docker/docker.service deleted file mode 100644 index b96d19ddb..000000000 --- a/community/docker/docker.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Docker Application Container Engine -Documentation=http://docs.docker.io -After=network.target - -[Service] -ExecStartPre=/usr/bin/mount --make-rprivate / -ExecStart=/usr/bin/docker -d - -[Install] -WantedBy=multi-user.target diff --git a/community/mednafen/PKGBUILD b/community/mednafen/PKGBUILD index e74dbcb09..149b2220c 100644 --- a/community/mednafen/PKGBUILD +++ b/community/mednafen/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 97157 2013-09-14 14:43:41Z jsteel $ +# $Id: PKGBUILD 103351 2014-01-04 00:02:18Z jsteel $ # Maintainer: Jonathan Steel # Contributor: megadriver # Contributor: Angel Velasquez @@ -7,7 +7,7 @@ # Contributor: Hans-Kristian Arntzen pkgname=mednafen -pkgver=0.9.32 +pkgver=0.9.32.1 _pkgver=$pkgver-wip pkgrel=1 pkgdesc="A command-line multi-system gaming emulator" @@ -19,7 +19,7 @@ makedepends=('mesa' 'glu') replaces=('mednafen-wip') install="$pkgname.install" source=(http://downloads.sourceforge.net/mednafen/$pkgname-$_pkgver.tar.bz2) -md5sums=('ffdf4f4bb4498df38e6aaaf316be40f5') +md5sums=('ee9edeece554755e762a6d140fad21e9') build() { cd "$srcdir"/$pkgname diff --git a/community/nbd/PKGBUILD b/community/nbd/PKGBUILD index dcd2cc694..bd47e3c39 100644 --- a/community/nbd/PKGBUILD +++ b/community/nbd/PKGBUILD @@ -1,22 +1,22 @@ -# $Id: PKGBUILD 101824 2013-12-02 01:03:13Z svenstaro $ +# $Id: PKGBUILD 103355 2014-01-04 02:43:25Z svenstaro $ # Maintainer: Sven-Hendrik Haase # Contributor: Christian Hesse # Contributor: Ionut Biru # Contributor: Gerhard Brauer pkgname=nbd -pkgver=3.5 +pkgver=3.6 pkgrel=1 pkgdesc="tools for network block devices, allowing you to use remote block devices over TCP/IP" arch=('i686' 'x86_64') url="http://nbd.sourceforge.net" license=('GPL') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.xz config nbd.service) backup=('etc/nbd-server/config') depends=('glib2') install=nbd.install -md5sums=('d89133bf9b681c17ed9d09a21b19f1ee' +md5sums=('717213c2c99b693321fe444e319336ba' '2d05d426b8c2708d5f8a0d028fcbae05' '5d1acc143018117174f79eff15afa038') diff --git a/community/openobex/PKGBUILD b/community/openobex/PKGBUILD new file mode 100644 index 000000000..ba821ed39 --- /dev/null +++ b/community/openobex/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 103373 2014-01-04 10:26:43Z andrea $ +# Maintainer: +# Contributor: Geoffroy Carrier +# Contributor: Andrea Scarpino +# Contributor: damir + +pkgname=openobex +pkgver=1.7.1 +pkgrel=1 +pkgdesc="Implementation of the OBject EXchange (OBEX) protocol" +url="http://dev.zuckschwerdt.org/openobex/" +arch=('i686' 'x86_64') +license=('GPL' 'LGPL') +depends=('libusbx' 'bluez-libs') +makedepends=('cmake' 'libxslt') +options=('staticlibs' '!makeflags') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}-Source.tar.gz) +md5sums=('3181bfed9cb7db591605391068cb0085') + +prepare() { + sed -i 's|MODE="660", GROUP="plugdev"|TAG+="uaccess"|' ${pkgname}-${pkgver}-Source/udev/openobex.rules.in +} + +build() { + mkdir build + cd build + cmake ../${pkgname}-${pkgver}-Source \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=/usr/lib \ + -DCMAKE_INSTALL_SBINDIR=/usr/bin + make all openobex-apps +} + +package() { + cd build + make DESTDIR="${pkgdir}" install + cp ../${pkgname}-${pkgver}-Source/apps/lib/*.h "${pkgdir}/usr/include/openobex/" + install -m644 apps/lib/libopenobex-apps-common.a "${pkgdir}/usr/lib/libopenobex-apps-common.a" +} diff --git a/community/par2cmdline/PKGBUILD b/community/par2cmdline/PKGBUILD index 5107178ed..112da7347 100644 --- a/community/par2cmdline/PKGBUILD +++ b/community/par2cmdline/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 102557 2013-12-14 14:03:38Z idevolder $ +# $Id: PKGBUILD 103377 2014-01-04 19:33:08Z idevolder $ # Maintainer: BlackEagle < ike DOT devolder AT gmail DOT com > # Maintainer: Sébastien Luttringer # Contributor: Daniel J Griffiths # Contributor: Thayer Williams pkgname=xbindkeys -pkgver=1.8.5 -pkgrel=4 +pkgver=1.8.6 +pkgrel=1 pkgdesc="Launch shell commands with your keyboard or your mouse under X" arch=('i686' 'x86_64') url="http://www.nongnu.org/xbindkeys/xbindkeys.html" @@ -13,7 +13,7 @@ license=('GPL') depends=('libx11' 'guile') optdepends=('tk: xbindkeys_show') source=(http://www.nongnu.org/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('4b66a05594dbc6888c0a6439351aa66d') +md5sums=('c6ea9db56e075dae0697497e2ed390cc') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/xulrunner/PKGBUILD b/community/xulrunner/PKGBUILD index 0ccad9e86..a636fe5cf 100644 --- a/community/xulrunner/PKGBUILD +++ b/community/xulrunner/PKGBUILD @@ -1,26 +1,29 @@ -# $Id: PKGBUILD 103314 2014-01-03 04:07:43Z allan $ -# Maintainer: Jan de Groot +# $Id: PKGBUILD 103367 2014-01-04 06:59:57Z cbehan $ +# Maintainer: Connor Behan +# Contributor: Jan de Groot # Contributor: Alexander Baldeck pkgname=xulrunner -pkgver=23.0.1 +pkgver=25.0 pkgrel=1 pkgdesc="Mozilla Runtime Environment" arch=('i686' 'x86_64') license=('MPL' 'GPL' 'LGPL') -depends=('gtk2' 'mozilla-common' 'nss>=3.14.1' 'libxt' 'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'sqlite>=3.7.4' 'libvpx' 'python2') -makedepends=('zip' 'unzip' 'pkg-config' 'diffutils' 'yasm' 'mesa' 'autoconf2.13') +depends=('gtk2' 'mozilla-common' 'nss>=3.15' 'libxt' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'libvpx' 'python2') +makedepends=('zip' 'unzip' 'pkg-config' 'diffutils' 'yasm' 'mesa' 'autoconf2.13' 'gstreamer0.10-base>=0.10.25') url="http://wiki.mozilla.org/XUL:Xul_Runner" source=(ftp://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/$pkgver/source/xulrunner-$pkgver.source.tar.bz2 mozconfig mozilla-pkgconfig.patch - shared-libs.patch) + shared-libs.patch + freetype-headers.patch) options=('!emptydirs' 'staticlibs') replaces=('xulrunner-oss') -sha256sums=('50d70813cee1c966a6037957206626bb62dc047b011d2e4fab11c559008f9336' - '3fba82b327f8825ebe93ceaeaea4968d57cf7d700f40bf4457b06d263bcc2e8f' +sha256sums=('796614f7a7a02ae4bceb5d1f2dce2de5096f9e390e91ec09fa5a40bcdff45cb1' + 'b5e66890e991b194d9a6d2179bccd5ac0015d4aab0a8411c55c6ecfd06576c24' '23485d937035648add27a7657f6934dc5b295e886cdb0506eebd02a43d07f269' - 'e2b4a00d14f4ba69c62b3f9ef9908263fbab179ba8004197cbc67edbd916fdf1') + 'e2b4a00d14f4ba69c62b3f9ef9908263fbab179ba8004197cbc67edbd916fdf1' + 'b62975b25fa3a0dc3e57e32c2b980daf2ee2497eff1d9661595b8e8bafbaa5f8') prepare() { cd "$srcdir/mozilla-release" @@ -29,6 +32,7 @@ prepare() { #fix libdir/sdkdir - fedora patch -Np1 -i ../mozilla-pkgconfig.patch patch -Np1 -i ../shared-libs.patch + patch -Np1 -i ../freetype-headers.patch # WebRTC build tries to execute "python" and expects Python 2 # Workaround taken from chromium PKGBUILD @@ -44,7 +48,7 @@ build() { cd "$srcdir/mozilla-release" export PATH="$srcdir/python2-path:$PATH" - export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/xulrunner-$pkgver" + export LDFLAGS="$LDFALGS -Wl,-rpath,/usr/lib/xulrunner-$pkgver" export PYTHON="/usr/bin/python2" make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" @@ -54,6 +58,7 @@ package() { cd "$srcdir/mozilla-release" make -j1 -f client.mk DESTDIR="$pkgdir" install + # Use system-provided dictionaries rm -rf "$pkgdir"/usr/lib/xulrunner-$pkgver/{dictionaries,hyphenation} ln -sf /usr/share/hunspell "$pkgdir/usr/lib/xulrunner-$pkgver/dictionaries" ln -sf /usr/share/hyphen "$pkgdir/usr/lib/xulrunner-$pkgver/hyphenation" @@ -63,6 +68,8 @@ package() { echo "/usr/lib/xulrunner-$pkgver" > $pkgdir/etc/ld.so.conf.d/xulrunner.conf chmod +x "${pkgdir}/usr/lib/xulrunner-devel-$pkgver/sdk/bin/xpt.py" + chmod +x "${pkgdir}/usr/lib/xulrunner-devel-$pkgver/sdk/bin/xpcshell" + ln -s /usr/lib/xulrunner-devel-$pkgver/sdk/bin/xpcshell "${pkgdir}/usr/lib/xulrunner-$pkgver/xpcshell" sed -i 's|!/usr/bin/env python$|!/usr/bin/env python2|' \ "$pkgdir"/usr/lib/xulrunner-devel-$pkgver/sdk/bin/{xpt,header,typelib,xpidl}.py } diff --git a/community/xulrunner/freetype-headers.patch b/community/xulrunner/freetype-headers.patch new file mode 100644 index 000000000..20a5b19ca --- /dev/null +++ b/community/xulrunner/freetype-headers.patch @@ -0,0 +1,66 @@ +diff -Nur mozilla-release.orig/config/system-headers mozilla-release/config/system-headers +--- mozilla-release.orig/config/system-headers ++++ mozilla-release/config/system-headers +@@ -408,16 +408,29 @@ freetype/ftoutln.h + freetype/ttnameid.h + freetype/tttables.h + freetype/t1tables.h + freetype/ftlcdfil.h + freetype/ftsizes.h + freetype/ftadvanc.h + freetype/ftbitmap.h + freetype/ftxf86.h ++freetype.h ++ftcache.h ++ftglyph.h ++ftsynth.h ++ftoutln.h ++ttnameid.h ++tttables.h ++t1tables.h ++ftlcdfil.h ++ftsizes.h ++ftadvanc.h ++ftbitmap.h ++ftxf86.h + fribidi/fribidi.h + FSp_fopen.h + fstream + fstream.h + ft2build.h + fts.h + gconf/gconf-client.h + Gdiplus.h +diff -Nur mozilla-release.orig/js/src/config/system-headers mozilla-release/js/src/config/system-headers +--- mozilla-release.orig/js/src/config/system-headers ++++ mozilla-release/js/src/config/system-headers +@@ -408,16 +408,29 @@ freetype/ftoutln.h + freetype/ttnameid.h + freetype/tttables.h + freetype/t1tables.h + freetype/ftlcdfil.h + freetype/ftsizes.h + freetype/ftadvanc.h + freetype/ftbitmap.h + freetype/ftxf86.h ++freetype.h ++ftcache.h ++ftglyph.h ++ftsynth.h ++ftoutln.h ++ttnameid.h ++tttables.h ++t1tables.h ++ftlcdfil.h ++ftsizes.h ++ftadvanc.h ++ftbitmap.h ++ftxf86.h + fribidi/fribidi.h + FSp_fopen.h + fstream + fstream.h + ft2build.h + fts.h + gconf/gconf-client.h + Gdiplus.h diff --git a/community/xulrunner/mozconfig b/community/xulrunner/mozconfig index 6679dac21..8fca560db 100644 --- a/community/xulrunner/mozconfig +++ b/community/xulrunner/mozconfig @@ -15,13 +15,13 @@ ac_add_options --with-system-libvpx ac_add_options --enable-system-hunspell ac_add_options --enable-system-sqlite ac_add_options --enable-system-ffi -#ac_add_options --enable-system-cairo +ac_add_options --enable-system-cairo ac_add_options --enable-system-pixman ac_add_options --with-pthreads # Features ac_add_options --enable-startup-notification -#ac_add_options --enable-gstreamer +ac_add_options --enable-gstreamer ac_add_options --disable-crashreporter ac_add_options --disable-updater diff --git a/extra/cagibi/PKGBUILD b/extra/cagibi/PKGBUILD deleted file mode 100644 index 46d593234..000000000 --- a/extra/cagibi/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 178952 2013-03-01 10:19:46Z andrea $ -# Maintainer: Andrea Scarpino - -pkgname=cagibi -pkgver=0.2.0 -pkgrel=3 -pkgdesc='A cache/proxy daemon for SSDP (the discovery part of UPnP)' -arch=('i686' 'x86_64') -url='https://projects.kde.org/projects/kdesupport/cagibi/' -license=('LGPL') -depends=('qt4') -makedepends=('cmake' 'automoc4') -source=("http://download.kde.org/stable/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -md5sums=('af66d89337ef80e8a868d3bb9dd92328') - -build() { - . /etc/profile.d/qt4.sh - - mkdir build - cd build - cmake ../${pkgname}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr - make -} - -package() { - cd build - make DESTDIR="${pkgdir}" install -} diff --git a/extra/enblend-enfuse/PKGBUILD b/extra/enblend-enfuse/PKGBUILD index c9a918b7c..1cbd45a8f 100644 --- a/extra/enblend-enfuse/PKGBUILD +++ b/extra/enblend-enfuse/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 201258 2013-12-07 10:34:58Z bpiotrowski $ +# $Id: PKGBUILD 203180 2014-01-04 22:17:16Z andyrtr $ # Maintainer: tobias # Contributor: Dominik Ryba pkgname=enblend-enfuse pkgver=4.1.1 -pkgrel=4 +pkgrel=5 pkgdesc="Intelligent blend tool for overlapping picture" arch=("i686" "x86_64") license=('GPL') diff --git a/extra/haveged/PKGBUILD b/extra/haveged/PKGBUILD index a404e9c06..be9c9dea8 100644 --- a/extra/haveged/PKGBUILD +++ b/extra/haveged/PKGBUILD @@ -1,27 +1,21 @@ -# $Id: PKGBUILD 199016 2013-11-06 11:28:54Z bpiotrowski $ -# Maintainer: Bartłomiej Piotrowski +# $Id: PKGBUILD 203089 2014-01-04 07:54:11Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski # Contributor: kfgz # Contributor: pootzko pkgname=haveged -pkgver=1.7.c +pkgver=1.8 _pkgver=${pkgver/.c/c} -pkgrel=3 +pkgrel=1 pkgdesc='Entropy harvesting daemon using CPU timings' arch=('i686' 'x86_64') url='http://www.issihosts.com/haveged' license=('GPL') depends=('glibc') source=($url/$pkgname-$_pkgver.tar.gz - service cleanexit.patch) -sha256sums=('40397eded96fc0d624a6a81c8e888ab023e46f3114f1ee699994e645531bf121' - 'badf8ceb5484d45888a089fabdfba5f44f6ec2930bca203c50200051a4d83e12' - 'be896659dd96cb85915ac5a9c2bd8d81d1ff348508362d1b71d64b207f69fa5c') - -prepare() { - cd $pkgname-$_pkgver - patch -Np1 -i ../cleanexit.patch -} + service) +md5sums=('e0034fd8a645b7499157a31a3e3b224d' + '777c7ac7fa145c03fca3ba9dcd4501de') build() { cd $pkgname-$_pkgver @@ -33,7 +27,6 @@ package() { cd $pkgname-$_pkgver make DESTDIR="$pkgdir" install - rm -rf "$pkgdir"/etc/init.d - install -D -m644 "$srcdir"/service \ + install -Dm644 "$srcdir"/service \ "$pkgdir"/usr/lib/systemd/system/haveged.service } diff --git a/extra/haveged/cleanexit.patch b/extra/haveged/cleanexit.patch deleted file mode 100644 index 01f8c7f94..000000000 --- a/extra/haveged/cleanexit.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -u -r haveged-1.7c/src/haveged.c haveged-1.7c-cleanexit/src/haveged.c ---- haveged-1.7c/src/haveged.c 2013-01-12 19:20:04.000000000 +0100 -+++ haveged-1.7c-cleanexit/src/haveged.c 2013-11-05 22:40:22.202935493 +0100 -@@ -642,7 +642,16 @@ - static void tidy_exit( /* OUT: nothing */ - int signum) /* IN: signal number */ - { -- error_exit("Stopping due to signal %d\n", signum); -+#ifndef NO_DAEMON -+ if (params->detached!=0) { -+ unlink(params->pid_file); -+ syslog(LOG_INFO, "%s Stopping due to signal %d", params->daemon, signum); -+ } -+ else -+#endif -+ fprintf(stderr, "%s Stopping due to signal %d\n", params->daemon, signum); -+ havege_destroy(handle); -+ exit(0); - } - /** - * send usage display to stderr diff --git a/extra/libva-intel-driver/Adjust_the_default_value_for_contrast_saturation.patch b/extra/libva-intel-driver/Adjust_the_default_value_for_contrast_saturation.patch new file mode 100644 index 000000000..ea3fc7c0a --- /dev/null +++ b/extra/libva-intel-driver/Adjust_the_default_value_for_contrast_saturation.patch @@ -0,0 +1,27 @@ +From 54cb60f3d973ce6a908ea57f5aa7481803fe653a Mon Sep 17 00:00:00 2001 +From: Xiang, Haihao +Date: Mon, 30 Dec 2013 05:15:40 +0000 +Subject: Render: Adjust the default value for contrast/saturation + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73016 +Signed-off-by: Xiang, Haihao +Tested-by: Mark Lee +--- +diff --git a/src/i965_drv_video.h b/src/i965_drv_video.h +index ccf9a59..773c8ca 100644 +--- a/src/i965_drv_video.h ++++ b/src/i965_drv_video.h +@@ -60,9 +60,9 @@ + #define I965_SURFACE_FLAG_BOTTOME_FIELD_FIRST 0x00000002 + + #define DEFAULT_BRIGHTNESS 0 +-#define DEFAULT_CONTRAST 10 ++#define DEFAULT_CONTRAST 50 + #define DEFAULT_HUE 0 +-#define DEFAULT_SATURATION 10 ++#define DEFAULT_SATURATION 50 + + struct i965_surface + { +-- +cgit v0.9.0.2-2-gbebe diff --git a/extra/libva-intel-driver/PKGBUILD b/extra/libva-intel-driver/PKGBUILD index e0766f72d..efbef8f37 100644 --- a/extra/libva-intel-driver/PKGBUILD +++ b/extra/libva-intel-driver/PKGBUILD @@ -1,17 +1,25 @@ -# $Id: PKGBUILD 202383 2013-12-21 14:15:26Z bpiotrowski $ -# Maintainer : Ionut Biru +# $Id: PKGBUILD 203091 2014-01-04 08:08:06Z bpiotrowski $ +# Maintainer: Ionut Biru +# Maintainer: Bartłomiej Piotrowski pkgname=libva-intel-driver pkgver=1.2.2 -pkgrel=1 +pkgrel=2 pkgdesc='VA-API implementation for Intel G45 and HD Graphics family' arch=('i686' 'x86_64') url='http://freedesktop.org/wiki/Software/vaapi' license=('MIT') depends=('libva') replaces=('libva-driver-intel') -source=(http://www.freedesktop.org/software/vaapi/releases/$pkgname/$pkgname-$pkgver.tar.bz2) -sha1sums=('ece479b51926764edd2be6599f9c067cae2a3942') +source=(http://freedesktop.org/software/vaapi/releases/$pkgname/$pkgname-$pkgver.tar.bz2 + Adjust_the_default_value_for_contrast_saturation.patch) +sha1sums=('ece479b51926764edd2be6599f9c067cae2a3942' + 'f2c2c40512b8c209dc7aefb8b20ad02bb9471a3f') + +prepare() { + cd $pkgname-$pkgver + patch -p1 -i ../Adjust_the_default_value_for_contrast_saturation.patch +} build() { cd $pkgname-$pkgver @@ -22,7 +30,5 @@ build() { package() { cd $pkgname-$pkgver make DESTDIR="$pkgdir" install - install -m644 -D COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING + install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } - -# vim:set ts=2 sw=2 et: diff --git a/extra/obex-data-server/PKGBUILD b/extra/obex-data-server/PKGBUILD deleted file mode 100644 index ae9838362..000000000 --- a/extra/obex-data-server/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 192478 2013-08-12 20:25:45Z eric $ -# Maintainer: Andrea Scarpino -# Contributor: Geoffroy Carrier -# Contributor: Roman Kyrylych -# Contributor: Keerthi - -pkgname=obex-data-server -pkgver=0.4.6 -pkgrel=8 -pkgdesc="A D-Bus service providing high-level OBEX client and server side functionality" -arch=('i686' 'x86_64') -url="http://wiki.muiline.com/obex-data-server" -license=('GPL') -depends=('dbus-glib' 'openobex' 'imagemagick' 'libusb-compat') -source=("http://tadas.dailyda.com/software/${pkgname}-${pkgver}.tar.gz" - "obex-data-server-openobex17.patch") -md5sums=('961ca5db6fe9c97024e133cc6203cc4d' - '4199b3f0178d2b58eb36ee36ed1d07d5') - -prepare() { - cd ${pkgname}-${pkgver} - patch -p1 -i "${srcdir}/obex-data-server-openobex17.patch" -} - -build() { - cd ${pkgname}-${pkgver} - ./configure --prefix=/usr \ - --sysconfdir=/etc - make -} - -package() { - cd ${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install -} diff --git a/extra/obex-data-server/obex-data-server-openobex17.patch b/extra/obex-data-server/obex-data-server-openobex17.patch deleted file mode 100644 index 047c46c50..000000000 --- a/extra/obex-data-server/obex-data-server-openobex17.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur obex-data-server-0.4.6-orig/src/ods-obex.c obex-data-server-0.4.6/src/ods-obex.c ---- obex-data-server-0.4.6-orig/src/ods-obex.c 2013-05-29 16:01:54.051692334 -0400 -+++ obex-data-server-0.4.6/src/ods-obex.c 2013-05-29 16:03:23.200697099 -0400 -@@ -412,7 +412,7 @@ - goto err; - } - -- interfaces_num = OBEX_FindInterfaces(obex_context->obex_handle, &obex_intf); -+ interfaces_num = OBEX_EnumerateInterfaces(obex_context->obex_handle); - if (intf_num >= interfaces_num) { - g_set_error (error, ODS_ERROR, ODS_ERROR_FAILED, "Invalid interface number"); - goto err; diff --git a/extra/openobex/PKGBUILD b/extra/openobex/PKGBUILD deleted file mode 100644 index 0b058e2e3..000000000 --- a/extra/openobex/PKGBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# $Id: PKGBUILD 199321 2013-11-10 20:21:49Z eric $ -# Maintainer: -# Contributor: Geoffroy Carrier -# Contributor: Andrea Scarpino -# Contributor: damir - -pkgname=openobex -pkgver=1.7.1 -pkgrel=1 -pkgdesc="Implementation of the OBject EXchange (OBEX) protocol" -url="http://dev.zuckschwerdt.org/openobex/" -arch=('i686' 'x86_64') -license=('GPL' 'LGPL') -depends=('libusbx' 'bluez-libs') -makedepends=('cmake' 'libxslt') -options=('staticlibs' '!makeflags') -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}-Source.tar.gz) -md5sums=('3181bfed9cb7db591605391068cb0085') - -prepare() { - sed -i 's|MODE="660", GROUP="plugdev"|TAG+="uaccess"|' ${pkgname}-${pkgver}-Source/udev/openobex.rules.in -} - -build() { - mkdir build - cd build - cmake ../${pkgname}-${pkgver}-Source \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=ON \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=/usr/lib \ - -DCMAKE_INSTALL_SBINDIR=/usr/bin - make all openobex-apps -} - -package() { - cd build - make DESTDIR="${pkgdir}" install - cp ../${pkgname}-${pkgver}-Source/apps/lib/*.h "${pkgdir}/usr/include/openobex/" - install -m644 apps/lib/libopenobex-apps-common.a "${pkgdir}/usr/lib/libopenobex-apps-common.a" -} diff --git a/extra/vigra/PKGBUILD b/extra/vigra/PKGBUILD index ed39fb777..98fbdfe50 100644 --- a/extra/vigra/PKGBUILD +++ b/extra/vigra/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 201267 2013-12-07 10:35:07Z bpiotrowski $ +# $Id: PKGBUILD 203179 2014-01-04 22:17:15Z andyrtr $ # Maintainer: AndyRTR # Contributor: Lukas Jirkovsky pkgbase=vigra pkgname=('vigra' 'vigra-doc') -pkgver=1.9.0 -pkgrel=8 +pkgver=1.10.0 +pkgrel=1 arch=('i686' 'x86_64') url="http://hci.iwr.uni-heidelberg.de/vigra/" license=('custom:MIT') @@ -13,8 +13,8 @@ makedepends=(# runtime deps 'libpng' 'libtiff' 'openexr' 'gcc-libs' 'sh' 'hdf5' 'fftw' # additional makedeps 'cmake' 'python2-nose' 'doxygen' 'python2-sphinx' 'boost' 'python2-numpy') -source=(http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/${pkgname}-${pkgver}-src.tar.gz) -md5sums=('b6155afe1ea967917d2be16d98a85404') +source=(https://github.com/ukoethe/vigra/releases/download/Version-${pkgver//./-}/${pkgname}-${pkgver}-src-with-docu.tar.gz) +md5sums=('85e2968e4ee5f9541b5dd8b3fb9cc433') build() { cd "${srcdir}"/${pkgbase}-${pkgver} @@ -26,10 +26,10 @@ build() { make } -check() { - cd "${srcdir}"/${pkgname}-${pkgver} - make -k check || /bin/true # i686 fails -} +#check() { +# cd "${srcdir}"/${pkgname}-${pkgver} +# make -j1 -k check #|| /bin/true # i686 fails +#} package_vigra() { pkgdesc="Computer vision library" diff --git a/kernels/gradm/PKGBUILD b/kernels/gradm/PKGBUILD new file mode 100644 index 000000000..52e0582b7 --- /dev/null +++ b/kernels/gradm/PKGBUILD @@ -0,0 +1,39 @@ +# Contributors: +# Jonathan Liu +# henning mueller +# s1gma, Ahmad24, maxrp + +pkgname=gradm +pkgver=3.0 +_timestamp=201311242038 +pkgrel=2 +pkgdesc='Administrative interface for the grsecurity Role Based Access Control system' +arch=(i686 x86_64 mips64el) +url=http://grsecurity.net/ +license=(GPL2) +depends=(pam) +source=( + http://grsecurity.net/stable/$pkgname-$pkgver-$_timestamp.tar.gz + usr.patch + learn_config + policy +) + +build() { + cd "$srcdir/$pkgname" + patch -Np1 < ../usr.patch + sed -i -e 's/^CFLAGS :=/CFLAGS +=/' -e 's:sbin:usr/bin:' Makefile + make +} + +package() { + cd "$srcdir/$pkgname" + make DESTDIR="$pkgdir" install + cp "$startdir"/{learn_config,policy} "$pkgdir/etc/grsec" + rm -rf "$pkgdir/dev" +} + +sha256sums=('9d9040ef2be90b6a4db5b68ba5b7bc658cbbcdb8c71c643b8f95373e4a892e55' + '7342323d2da3724afe745506690a1a5b194f3f0e959811ca320d820bf74c9ffa' + 'ec8e824e8a29a67be76bf853814ee85e80c4063009e5693d5db8cdb45bd45813' + '61c0e84098e8386e5496dafce559558adef32e2a4a1241a9fa3bd56eab192dcd') diff --git a/kernels/gradm/learn_config b/kernels/gradm/learn_config new file mode 100644 index 000000000..24c4cbc25 --- /dev/null +++ b/kernels/gradm/learn_config @@ -0,0 +1,169 @@ +#This configuration file aids the learning process by tweaking +#the learning algorithm for specific paths. +# +#It accepts lines in the form of +#Where can be inherit-learn, no-learn, inherit-no-learn, +#high-reduce-path, dont-reduce-path, protected-path, high-protected-path, +#read-protected-path, and always-reduce-path +# +#inherit-learn, no-learn, and inherit-no-learn operate only with +#full learning +# +#high-reduce-path, dont-reduce-path, always-reduce-path, protected-path, +#and high-protected-path operate on both full and and regular learning +#(subject and role learning) +# +#inherit-learn changes the learning process for the specified path +#by throwing all learned accesses for every binary executed by the +#processes contained in the pathname into the subject specified +#by the pathname. This is useful for cron in the case of full +#system learning, so that scripts that eventually end up executing +#mv or rm with privilege don't cause the root policy to grant +#that privilege to mv or rm in all cases. +# +#no-learn allows processes within the path to perform any operation +#that normal system usage would allow without restriction. If +#a process is generating a huge number of learning logs, it may be +#best to use this command on that process and configure its policy +#manually. +# +#inherit-no-learn combines the above two cases, such that processes +#within the specified path will be able to perform any normal system +#operation without restriction as will any binaries executed by +#these processes. +# +#high-reduce-path modifies the heuristics of the learning process +#to weight in favor of reducing accesses for this path +# +#dont-reduce-path modifies the heuristics of the learning process +#so that it will never reduce accesses for this path +# +#always-reduce-path modifies the heuristics of the learning process +#so that the path specified will always have all files and directories +#within it reduced to the path specified. +# +#protected-path specifies a path on your system that is considered an +#important resource. Any process that modifies one of these paths +#is given its own subject in the learning process, facilitating +#a secure policy. +# +#read-protected-path specifies a path on your system that contains +#sensitive information. Any process that reads one of these paths is +#given its own subject in the learning process, facilitating a secure +#policy. +# +#high-protected-path specifies a path that should be hidden from +#all processes but those that access it directly. It is recommended +#to use highly sensitive files for this command. +# +#regular expressions are not supported for pathnames in this config file +# +# +# uncomment this next line if you don't wish to generate a policy that +# restricts roles to specific IP ranges: +# dont-learn-allowed-ips +# +# to write out your generated policy such that roles are split into separate +# files by the name of the role (within user/group directories), uncomment +# the next line: +# split-roles + +always-reduce-path /dev/pts +always-reduce-path /var/spool/qmailscan/tmp +always-reduce-path /var/spool/exim4 +always-reduce-path /var/run/screen +always-reduce-path /usr/share/locale +always-reduce-path /usr/share/zoneinfo +always-reduce-path /usr/share/terminfo +always-reduce-path /tmp +always-reduce-path /var/tmp + +high-reduce-path /dev/.udev +high-reduce-path /dev/mapper +high-reduce-path /dev/snd +high-reduce-path /proc +high-reduce-path /usr/lib +high-reduce-path /usr/lib/tls +high-reduce-path /usr/lib/libreoffice +high-reduce-path /usr/lib32 +high-reduce-path /usr/lib32/tls +high-reduce-path /usr/lib64 +high-reduce-path /usr/lib64/tls +high-reduce-path /var/lib +high-reduce-path /usr/bin +high-reduce-path /usr/sbin +high-reduce-path /usr/local/share +high-reduce-path /usr/local/bin +high-reduce-path /usr/local/sbin +high-reduce-path /usr/local/etc +high-reduce-path /usr/local/lib +high-reduce-path /usr/share +high-reduce-path /usr/X11R6/lib +high-reduce-path /var/lib/openldap-data +high-reduce-path /var/lib/krb5kdc + +dont-reduce-path / +dont-reduce-path /home +dont-reduce-path /dev +dont-reduce-path /usr +dont-reduce-path /var +dont-reduce-path /opt + +protected-path /boot +protected-path /dev/log +protected-path /etc +protected-path /opt +protected-path /root +protected-path /run +protected-path /sys +protected-path /usr +protected-path /var + +read-protected-path /etc/ssh +read-protected-path /proc/kallsyms +read-protected-path /proc/kcore +read-protected-path /proc/slabinfo +read-protected-path /proc/modules +read-protected-path /usr/lib/modules +read-protected-path /usr/lib64/modules +read-protected-path /boot +read-protected-path /etc/shadow +read-protected-path /etc/shadow- +read-protected-path /etc/gshadow +read-protected-path /etc/gshadow- +read-protected-path /sys + +high-protected-path /etc/ssh +high-protected-path /proc/kcore +high-protected-path /proc/sys +high-protected-path /proc/bus +high-protected-path /proc/slabinfo +high-protected-path /proc/modules +high-protected-path /proc/kallsyms +high-protected-path /etc/passwd +high-protected-path /etc/shadow +high-protected-path /var/backups +high-protected-path /etc/shadow- +high-protected-path /etc/gshadow +high-protected-path /etc/gshadow- +high-protected-path /var/log +high-protected-path /dev/mem +high-protected-path /dev/kmem +high-protected-path /dev/port +high-protected-path /dev/log +high-protected-path /sys +high-protected-path /etc/ppp +high-protected-path /etc/samba/smbpasswd +#to protect kernel images +high-protected-path /boot +high-protected-path /usr/lib/modules +high-protected-path /usr/lib64/modules +high-protected-path /usr/src + +inherit-learn /etc/cron.d +inherit-learn /etc/cron.hourly +inherit-learn /etc/cron.daily +inherit-learn /etc/cron.weekly +inherit-learn /etc/cron.monthly +inherit-learn /etc/init.d +inherit-learn /etc/rc.d/init.d diff --git a/kernels/gradm/policy b/kernels/gradm/policy new file mode 100644 index 000000000..55a5811c8 --- /dev/null +++ b/kernels/gradm/policy @@ -0,0 +1,487 @@ +#sample default policy for grsecurity +# +# Role flags: +# A -> This role is an administrative role, thus it has special privilege normal +# roles do not have. In particular, this role bypasses the +# additional ptrace restrictions +# N -> Don't require authentication for this role. To access +# the role, use gradm -n +# s -> This role is a special role, meaning it does not belong to a +# user or group, and does not require an enforced secure policy +# base to be included in the ruleset +# u -> This role is a user role +# g -> This role is a group role +# G -> This role can use gradm to authenticate to the kernel +# A policy for gradm will automatically be added to the role +# T -> Enable TPE for this role +# l -> Enable learning for this role +# P -> Use PAM authentication for this role. +# R -> Enable persistence of special role. Normal special roles will +# be removed upon exit of the process that entered the role, or +# upon unauth (this is what changes the apache process' role back +# to its normal role after being restarted from the admin role, for +# instance). Role persistence allows a special role to be used for +# system shutdown, as the point at which the admin's shell/SSH +# session is terminated won't cause the rest of the shutdown +# sequence to execute with reduced privilege. Do *NOT* use this +# flag with any role that does anything but shut the system down. +# This role will also be transferred to the init process upon +# writing to /dev/initctl. This allows init to execute the rc +# scripts for shutdown with the necessary privilege. +# For usability reasons, we allow the removal of persistence through +# the normal unauth process (so persistence only survives exit). +# +# a role can only be one of user, group, or special +# +# role_allow_ip IP/optional netmask +# eg: role_allow_ip 192.168.1.0/24 +# You can have as many of these per role as you want +# They restrict the use of a role to a list of IPs. If a user +# is on the system that would normally get the role does not +# belong to those lists of IPs, the system falls back through +# its method of determining a role for the user +# +# Role hierarchy +# user -> group -> default +# First a user role attempts to match, if one is not found, +# a group role attempts to match, if one is not found, +# the default role is used. +# +# role_transitions ... +# eg: role_transitions www_admin dns_admin +# +# role transitions specify which special roles a given role is allowed +# to authenticate to. This applies to special roles that do not +# require password authentication as well. If a user tries to +# authenticate to a role that is not within his transition table, he +# will receive a permission denied error +# +# Nested subjects +# subject /bin/su:/bin/bash:/bin/cat +# / rwx +# +CAP_ALL +# grant privilege to specific processes if they are executed +# within a trusted path. In this case, privilege is +# granted if /bin/cat is executed from /bin/bash, which is +# executed from /bin/su. +# +# Configuration inheritance on nested subjects +# nested subjects inherit rules from their parents. In the +# example above, the nested subject would inherit rules +# from the nested subject for /bin/su:/bin/bash, +# and the subject /bin/su +# View the 1.9.x documentation for more information on +# configuration inheritance +# +# new object modes: +# m -> allow creation of setuid/setgid files/directories +# and modification of files/directories to be setuid/setgid +# M -> audit the setuid/setgid creation/modification +# c -> allow creation of the file/directory +# C -> audit the creation +# d -> allow deletion of the file/directory +# D -> audit the deletion +# p -> reject all ptraces to this object +# l -> allow a hardlink at this path +# (hardlinking requires at a minimum c and l modes, and the target +# link cannot have any greater permission than the source file) +# L -> audit link creation +# f -> needed to mark the pipe used for communication with init +# to transfer the privilege of the persistent role; only valid +# within a persistent role. Transfer only occurs when the file is +# opened for writing +# +# new subject modes: +# O -> disable "writable library" restrictions for this task +# t -> allow this process to ptrace any process (use with caution) +# r -> relax ptrace restrictions (allows process to ptrace processes +# other than its own descendants) +# i -> enable inheritance-based learning for this subject, causing +# all accesses of this subject and anything it executes to be placed +# in this subject, and inheritance flags added to executable objects +# in this subject +# a -> allow this process to talk to the /dev/grsec device +# s -> enable AT_SECURE when entering this subject +# (enables the same environment sanitization that occurs in glibc +# upon execution of a suid binary) +# x -> allows executable anonymous shared memory for this subject +# +# user/group transitions: +# You may now specify what users and groups a given subject can +# transition to. This can be done on an inclusive or exclusive basis. +# Omitting these rules allows a process with proper privilege granted by +# capabilities to transition to any user/group. +# +# Examples: +# subject /bin/su +# user_transition_allow root spender +# group_transition_allow root spender +# subject /bin/su +# user_transition_deny evilhacker +# subject /bin/su +# group_transition_deny evilhacker1 evilhacker2 +# +# Domains: +# With domains you can combine users that don't share a common +# GID as well as groups so that they share a single policy +# Domains work just like roles, with the only exception being that +# the line starting with "role" is replaced with one of the following: +# domain somedomainname u user1 user2 user3 user4 ... usern +# domain somedomainname g group1 group2 group3 group4 ... groupn +# +# Inverted socket policies: +# Rules such as +# connect ! www.google.com:80 stream tcp +# are now allowed, which allows you to specify that a process can connect to anything +# except to port 80 of www.google.com with a stream tcp socket +# the inverted socket matching also works on bind rules +# +# INADDR_ANY overriding +# You can now force a given subject to bind to a particular IP address on the machine +# This is useful for some chrooted environments, to ensure that the source IP they +# use is one of your choosing +# to use, add a line like: +# ip_override 192.168.0.1 +# +# Per-interface socket policies: +# Rules such as +# bind eth1:80 stream tcp +# bind eth0#1:22 stream tcp +# are now allowed, giving you the ability to tie specific socket rules +# to a single interface (or by using the inverted rules, all but one +# interface). Virtual interfaces are specified by the # +# syntax. If an interface is specified, no IP/netmask or host may be +# specified for the rule. +# +# Allowing additional socket families: +# Before v2.2.1 of the RBAC system, a subject that specified +# connect/bind rules limited only the socket usage of IPv4, allowing +# any other socket families to be used. Starting with v2.2.1 of the +# RBAC system, when connect/bind rules are used, additional rules +# will be required to unlock the use of additional socket families +# (outside of the common unix family). Multiple families can be +# specified per line. +# To enable use of IPv6, add the line: +# sock_allow_family ipv6 +# To enable use of netlink, add the line: +# sock_allow_family netlink +# To enable all other families, add the line: +# sock_allow_family all +# +# New learning system: +# To learn on a given subject: add l (the letter l, not the number 1) +# to the subject mode +# If you want to learn with the most restrictive policy, use the +# following: +# subject /path/to/bin lo +# / h +# -CAP_ALL +# connect disabled +# bind disabled +# Resource learning is also supported, so lines like +# RES_AS 0 0 +# can be used to learn a particular resource +# +# To learn on a given role, add l to the role mode +# For both of these, to enable learning, enable the system like: +# gradm -L /etc/grsec/learning.logs -E +# and then generate the rules after disabling the system after the +# learning phase with: +# gradm -L /etc/grsec/learning.logs -O /etc/grsec/policy +# To use full system learning, enable the system like: +# gradm -F -L /etc/grsec/learning.logs +# and then generate the rules after disabling the system after the +# learning phase with: +# gradm -F -L /etc/grsec/learning.logs -O /etc/grsec/policy +# +# New PaX flag format (replaces PaX subject flags): +# PaX flags can be forced on or off, regardless of the flags on the +# binary, by using + or - before the following PaX flag names: +# PAX_SEGMEXEC +# PAX_PAGEEXEC +# PAX_MPROTECT +# PAX_RANDMMAP +# PAX_EMUTRAMP +# +# New feature for easier policy maintenance: +# replace +# e.g.: +# replace CVSROOT /home/cvs +# now $(CVSROOT) can be used in any subject or object pathname, like: +# $(CVSROOT)/grsecurity r +# This will translate to /home/cvs/grsecurity r +# This feature makes it easier to update policies by naming specific +# paths by their function, then only having to update those paths once +# to have it affect a large number of subjects/objects. +# +# capability auditing / log suppression +# use of a capability can be audited by adding "audit" to the line, eg: +# +CAP_SYS_RAWIO audit +# log suppression for denial of a capbility can be done by adding "suppress": +# -CAP_SYS_RAWIO suppress +# +# Per-role umask enforcement: +# If you have a user that you want to be assured cannot accidentally +# create a file that others can read (a confidentiality issue) +# add the following under the role declaration: +# role_umask 077 +# any normal octal umask may be specified +# Note that unlike the normal umask, this umask will also apply +# to the permissions one can chmod/fchmod a file to +# +# Note that the omission of any feature of a role or subject +# results in a default-allow +# For instance, if no capability rules are added, an implicit +CAP_ALL is used +# +# Commonly-used objects can be defined and used in multiple subjects +# As an example, we'll create a variable out of a list of objects +# and their associated permissions that RBAC enforces +define grsec_denied { + /boot h + /dev/grsec h + /dev/kmem h + /dev/mem h + /dev/port h + /etc/grsec h + /proc/kcore h + /proc/slabinfo h + /proc/modules h + /proc/kallsyms h + # hide and suppress logs about accessing this path + /usr/lib/modules hs + /etc/ssh h +} +# usage: +# $grsec_denied + +role shutdown sARG +subject / rvka + / + /dev + /dev/urandom r + /dev/random r + /etc r + /usr rx + /proc r + $grsec_denied + -CAP_ALL + connect disabled + bind disabled + +subject /usr/lib/systemd/systemd rvkao + / rwcdmlxi +subject /usr/bin/systemctl rvkao + / rwcdmlxi + /dev/initctl rwf + /run/initctl rwf + +# Make sure to unauthenticate with gradm -u from +# the admin role after restarting a service +# The service started will run with admin +# privileges until you run gradm -u or your shell exits + +role admin sA +subject / rvka + / rwcdmlxi + +role default G +role_transitions admin shutdown +subject / + / r + /opt rx + /home rwxcd + /mnt rw + /dev + /dev/urandom r + /dev/random r + /dev/zero rw + /dev/input rw + /dev/psaux rw + /dev/null rw + /dev/tty? rw + /dev/console rw + /dev/tty rw + /dev/pts rw + /dev/ptmx rw + /dev/dsp rw + /dev/mixer rw + /dev/initctl rw + /dev/fd0 r + /dev/cdrom r + /usr rx +# compilation of kernel code should be done within the admin role + /usr/src h + /etc rx + /proc rwx + /proc/sys r + /sys h + /root r + /run r + /tmp rwcd + /var rwxcd + /var/tmp rwcd + /var/log r +# hide the kernel images and modules + $grsec_denied + +# if sshd needs to be restarted, it can be done through the admin role +# restarting sshd should be followed immediately by a gradm -u + /usr/sbin/sshd + + /home/*/.gem/ruby/2.0.0/bin rx + /home/*/.rbenv/shims rx + /home/*/.rbenv/versions*/bin rx + /home/*/.cabal/bin rx + /home/*/dev/env rx + + -CAP_KILL + -CAP_SYS_TTY_CONFIG + -CAP_LINUX_IMMUTABLE + -CAP_NET_RAW + -CAP_MKNOD + -CAP_SYS_ADMIN + -CAP_SYS_RAWIO + -CAP_SYS_MODULE + -CAP_SYS_PTRACE + -CAP_NET_ADMIN + -CAP_NET_BIND_SERVICE + -CAP_NET_RAW + -CAP_SYS_CHROOT + -CAP_SYS_BOOT + -CAP_SETFCAP + -CAP_SYSLOG + +# RES_AS 100M 100M + +# connect 192.168.1.0/24:22 stream tcp +# bind 0.0.0.0 stream dgram tcp udp + +# the d flag protects /proc fd and mem entries for sshd +# all daemons should have 'p' in their subject mode to prevent +# an attacker from killing the service (and restarting it with trojaned +# config file or taking the port it reserved to run a trojaned service) + +subject /usr/sbin/sshd dpo + / + /* h + /bin/bash x + /dev h + /dev/log rw + /dev/random r + /dev/urandom r + /dev/null rw + /dev/ptmx rw + /dev/pts rw + /dev/tty rw + /dev/tty? rw + /etc r + /etc/grsec h + /home + /home/*/.ssh/authorized_keys r + /root + /proc r + /proc/*/oom_adj rw + /proc/kcore h + /proc/sys h + /proc/sys/kernel/ngroups_max r + /selinux r + /usr/lib rx + /usr/share/zoneinfo r + /var/log + /var/mail + /var/log/lastlog rw + /var/log/wtmp w + /var/run + /run + /var/run/sshd + /var/run/utmp rw + /var/run/utmpx rw + /var/run/.nscd_socket rw + + -CAP_ALL + +CAP_CHOWN + +CAP_SETGID + +CAP_SETUID + +CAP_SYS_CHROOT + +CAP_SYS_RESOURCE + +CAP_SYS_TTY_CONFIG + +CAP_AUDIT_WRITE + # to access user keys + +CAP_DAC_OVERRIDE + +subject /usr/bin/Xorg + /dev/mem rw + + +CAP_SYS_ADMIN + +CAP_SYS_TTY_CONFIG + +CAP_SYS_RAWIO + +subject /usr/bin/ssh + /etc/ssh/ssh_config r + +subject /usr/bin/postgres + /dev/log rw + +subject /usr/bin/exim + /dev/log rw + +subject /usr/sbin/syslog-ng + +CAP_SYS_ADMIN + +subject /usr/sbin/rsyslogd + +CAP_SYS_ADMIN + +subject /usr/sbin/cron + /dev/log rw + +subject /usr/sbin/crond + /dev/log rw + +subject /bin/login + /dev/log rw + /var/log/wtmp w + /var/log/faillog rwcd + +subject /bin/su + /dev/log rw + +subject /usr/bin/sudo + /dev/log rw + +subject /sbin/agetty + /var/log/wtmp w + +subject /sbin/init + /var/log/wtmp w + +subject /usr/bin/xauth + /home r + /home/*/.Xauthority-* rwcdl + +# prevent ld.so breakouts of subjects with /lib rx + +# many distros clutter up /lib with shell scripts +# that can be easily hijacked for malicious purposes +subject /usr/lib o + / h + -CAP_ALL + connect disabled + bind disabled + +subject /usr/lib32 o + / h + -CAP_ALL + connect disabled + bind disabled + +subject /usr/lib/ld-linux.so.2 o + / h + -CAP_ALL + connect disabled + bind disabled + +subject /usr/lib/ld-linux-x86-64.so.2 o + / h + -CAP_ALL + connect disabled + bind disabled diff --git a/kernels/gradm/usr.patch b/kernels/gradm/usr.patch new file mode 100644 index 000000000..b3e5e77ab --- /dev/null +++ b/kernels/gradm/usr.patch @@ -0,0 +1,115 @@ +diff --git a/gradm_adm.c b/gradm_adm.c +index bdcfd7d..9681b3c 100644 +--- a/gradm_adm.c ++++ b/gradm_adm.c +@@ -72,12 +72,13 @@ add_gradm_acl(struct role_acl *role) + + gradm_name = gr_strdup(gradm_realpath); + if (gr_enable && strcmp(gradm_name, GRADM_PATH)) { +- printf("You are attempting to use a gradm binary other " +- "than the installed version. Depending on your " ++ printf("You are attempting to use a gradm binary (%s) other " ++ "than the installed version (%s). Depending on your " + "policy, you could be locking yourself out of " + "your machine by enabling the RBAC system with " + "this binary. Press \'y\' if you wish to ignore " +- "this warning, or any other key to cancel.\n>"); ++ "this warning, or any other key to cancel.\n>", ++ gradm_name, GRADM_PATH); + if (getchar() != 'y') + exit(EXIT_FAILURE); + } +@@ -259,11 +260,6 @@ static void add_fulllearn_shutdown_acl(void) + ADD_OBJ("/dev/urandom", "r"); + ADD_OBJ("/dev/random", "r"); + ADD_OBJ("/etc", "r"); +- ADD_OBJ("/bin", "rx"); +- ADD_OBJ("/sbin", "rx"); +- ADD_OBJ("/lib", "rx"); +- ADD_OBJ("/lib32", "rx"); +- ADD_OBJ("/lib64", "rx"); + ADD_OBJ("/usr", "rx"); + ADD_OBJ("/proc", "r"); + ADD_OBJ("/boot", "h"); +@@ -276,9 +272,9 @@ static void add_fulllearn_shutdown_acl(void) + ADD_OBJ("/proc/slabinfo", "h"); + ADD_OBJ("/proc/modules", "h"); + ADD_OBJ("/proc/kallsyms", "h"); +- ADD_OBJ("/lib/modules", "hs"); +- ADD_OBJ("/lib32/modules", "hs"); +- ADD_OBJ("/lib64/modules", "hs"); ++ ADD_OBJ("/usr/lib/modules", "hs"); ++ ADD_OBJ("/usr/lib32/modules", "hs"); ++ ADD_OBJ("/usr/lib64/modules", "hs"); + ADD_OBJ("/etc/ssh", "h"); + add_cap_acl(current_subject, "-CAP_ALL", NULL); + +diff --git a/gradm_analyze.c b/gradm_analyze.c +index 74ec86f..da365a4 100644 +--- a/gradm_analyze.c ++++ b/gradm_analyze.c +@@ -778,17 +778,17 @@ analyze_acls(void) + errs_found++; + } + +- if (!stat("/lib/modules", &fstat) && !check_permission(role, def_acl, "/lib/modules", &chk)) { ++ if (!stat("/usr/lib/modules", &fstat) && !check_permission(role, def_acl, "/usr/lib/modules", &chk)) { + fprintf(stderr, +- "Writing access is allowed by role %s to /lib/modules, the directory which " ++ "Writing access is allowed by role %s to /usr/lib/modules, the directory which " + "holds kernel modules.\n\n", + role->rolename); + errs_found++; + } + +- if (!stat("/lib64/modules", &fstat) && !check_permission(role, def_acl, "/lib64/modules", &chk)) { ++ if (!stat("/usr/lib64/modules", &fstat) && !check_permission(role, def_acl, "/usr/lib64/modules", &chk)) { + fprintf(stderr, +- "Writing access is allowed by role %s to /lib64/modules, the directory which " ++ "Writing access is allowed by role %s to /usr/lib64/modules, the directory which " + "holds kernel modules.\n\n", + role->rolename); + errs_found++; +diff --git a/gradm_defs.h b/gradm_defs.h +index 961a7b9..56d6378 100644 +--- a/gradm_defs.h ++++ b/gradm_defs.h +@@ -4,9 +4,9 @@ + #ifndef GRSEC_DIR + #define GRSEC_DIR "/etc/grsec" + #endif +-#define GRLEARN_PATH "/sbin/grlearn" +-#define GRADM_PATH "/sbin/gradm" +-#define GRPAM_PATH "/sbin/gradm_pam" ++#define GRLEARN_PATH "/usr/bin/grlearn" ++#define GRADM_PATH "/usr/bin/gradm" ++#define GRPAM_PATH "/usr/bin/gradm_pam" + #define GRDEV_PATH "/dev/grsec" + #define GR_POLICY_PATH GRSEC_DIR "/policy" + #define GR_PW_PATH GRSEC_DIR "/pw" +diff --git a/gradm_fulllearn.c b/gradm_fulllearn.c +index 4d10060..6ce744d 100644 +--- a/gradm_fulllearn.c ++++ b/gradm_fulllearn.c +@@ -449,8 +449,8 @@ static const char *initial_roles_str = + "\t/proc/slabinfo\th\n" + "\t/proc/modules\th\n" + "\t/proc/kallsyms\th\n" +-"\t/lib/modules\ths\n" +-"\t/lib64/modules\ths\n" ++"\t/usr/lib/modules\ths\n" ++"\t/usr/lib64/modules\ths\n" + "\t/etc/ssh\th\n" + "}\n\n" + "role admin sA\n" +@@ -463,10 +463,6 @@ static const char *initial_roles_str = + "\t/dev/urandom r\n" + "\t/dev/random r\n" + "\t/etc r\n" +-"\t/bin rx\n" +-"\t/sbin rx\n" +-"\t/lib rx\n" +-"\t/lib64 rx\n" + "\t/usr rx\n" + "\t/proc r\n" + "\t$grsec_denied\n" diff --git a/kernels/linux-libre-grsec/Kbuild b/kernels/linux-libre-grsec/Kbuild new file mode 100644 index 000000000..8a9d7dceb --- /dev/null +++ b/kernels/linux-libre-grsec/Kbuild @@ -0,0 +1,19 @@ +# Fail on warnings - also for files referenced in subdirs +# -Werror can be disabled for specific files using: +# CFLAGS_ := -Wno-error +subdir-ccflags-y := -Wno-error + +# platform specific definitions +include arch/mips/Kbuild.platforms +obj-y := $(platform-y) + +# make clean traverses $(obj-) without having included .config, so +# everything ends up here +obj- := $(platform-) + +# mips object files +# The object files are linked as core-y files would be linked + +obj-y += kernel/ +obj-y += mm/ +obj-y += math-emu/ diff --git a/kernels/linux-libre-grsec/Kbuild.platforms b/kernels/linux-libre-grsec/Kbuild.platforms new file mode 100644 index 000000000..90a226888 --- /dev/null +++ b/kernels/linux-libre-grsec/Kbuild.platforms @@ -0,0 +1,6 @@ +# All platforms listed in alphabetic order + +platforms += loongson + +# include the platform specific files +include $(patsubst %, $(srctree)/arch/mips/%/Platform, $(platforms)) diff --git a/kernels/linux-libre-grsec/PKGBUILD b/kernels/linux-libre-grsec/PKGBUILD new file mode 100644 index 000000000..1d7499fc2 --- /dev/null +++ b/kernels/linux-libre-grsec/PKGBUILD @@ -0,0 +1,445 @@ +# $Id: PKGBUILD 202239 2013-12-20 19:15:03Z tpowa $ +# Maintainer: Tobias Powalowski +# Maintainer: Thomas Baechler +# Maintainer (Parabola): André Silva +# Contributor (Parabola): Nicolás Reynolds +# Contributor (Parabola): Sorin-Mihai Vârgolici +# Contributor (Parabola): Michał Masłowski +# Contributor (Parabola): Márcio Silva + +pkgbase=linux-libre-grsec # Build stock -LIBRE-GRSEC kernel +#pkgbase=linux-libre-custom # Build kernel with a different name +_basekernel=3.12 +_sublevel=6 +_grsecver=3.0 +_timestamp=201401021726 +pkgver=${_basekernel}.${_sublevel} +pkgrel=1 +_lxopkgver=${_basekernel}.6 # nearly always the same as pkgver +arch=('i686' 'x86_64' 'mips64el') +url="http://linux-libre.fsfla.org/" +license=('GPL2') +makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc') +options=('!strip') +source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gnu/linux-libre-${_basekernel}-gnu.tar.xz" + "http://linux-libre.fsfla.org/pub/linux-libre/releases/${pkgver}-gnu/patch-${_basekernel}-gnu-${pkgver}-gnu.xz" + "http://grsecurity.net/test/grsecurity-${_grsecver}-${pkgver}-${_timestamp}.patch" + # the main kernel config files + 'config.i686' 'config.x86_64' + # standard config files for mkinitcpio ramdisk + "${pkgbase}.preset" + 'Kbuild' + 'Kbuild.platforms' + 'boot-logo.patch' + 'change-default-console-loglevel.patch' + 'criu-no-expert.patch' + 'module-blacklist.conf' + 'sysctl.conf' + 'known-exploit-detection.patch' + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") +md5sums=('254f59707b6676b59ce5ca5c3c698319' + '4b18ce60daff87504e6740670edf6b50' + 'c07003578d875828e730c5d3a903616b' + 'fbd34f6cbd091eff2701d84ab1c7d433' + '8fc653f7adbfcc6de676cbd5ba659517' + '5f66bed97a5c37e48eb2f71b2d354b9a' + '2967cecc3af9f954ccc822fd63dca6ff' + '8267264d9a8966e57fdacd1fa1fc65c4' + '14bb375a8a1d86d2875f72fcbaa03f3e' + '0892ce6045478bea4a005a6d82c0819e' + 'b5509f6c3889a1b32f2e1f90ee2508f1' + 'f93ef6157fbb23820bd5ae08fd3f451e' + '0db7629711f4ed76bd1f9da9f97bc4ea' + '34f7e421a25ebc3c1406e04db56accfa' + '71bbddd5f9799aa045660d92baa05845') +if [ "$CARCH" != "mips64el" ]; then + # don't use the Loongson-specific patches on non-mips64el arches. + unset source[${#source[@]}-1] + unset md5sums[${#md5sums[@]}-1] +fi + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-GRSEC + +prepare() { + cd "${srcdir}/linux-${_basekernel}" + + if [ "${_basekernel}" != "${pkgver}" ]; then + patch -Np1 -i "${srcdir}/patch-${_basekernel}-gnu-${pkgver}-gnu" + fi + + # add grsecurity patches + patch -Np1 -i "${srcdir}/grsecurity-${_grsecver}-${pkgver}-${_timestamp}.patch" + rm localversion-grsec + + # add freedo as boot logo + patch -Np1 -i "${srcdir}/boot-logo.patch" + + # fix issue on Hal8188EFWImg_CE.c deblobbed file + sed -i "\|DEBLOBBED| s|,||" drivers/staging/rtl8188eu/hal/Hal8188EFWImg_CE.c + + # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) + # remove this when a Kconfig knob is made available by upstream + # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) + patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch" + + # allow criu without expert option set + # patch from fedora + patch -Np1 -i "${srcdir}/criu-no-expert.patch" + + # add known exploit detection patch + # http://lkml.org/lkml/2013/12/12/358 + patch -Np1 -i "${srcdir}/known-exploit-detection.patch" + + if [ "$CARCH" == "mips64el" ]; then + sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre-grsec|" Makefile + sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \ + < "${srcdir}/lxo-config.patch" > lxo-config.patch + msg2 "Adding loongson-community patches" + patch -Np1 -i ${srcdir}/${_basekernel}*-*-loongson-community.patch + patch -Np0 -i lxo-config.patch + + # ensure N32, add localversion, remove uevent helper as per + # https://git.kernel.org/?p=linux/hotplug/udev.git;a=blob_plain;f=README + # and make USB storage support builtin (e.g. for booting from USB + # disks without slowly loading an initramfs) + sed -ri \ + -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ + -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \ + -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ + ./.config + else + cat "${srcdir}/config.${CARCH}" > ./.config # simpler + fi + + if [ "${_kernelname}" != "" ]; then + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config + fi + + # set extraversion to pkgrel + sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile + + # don't run depmod on 'make install'. We'll do this ourselves in packaging + sed -i '2iexit 0' scripts/depmod.sh +} + +build() { + cd "${srcdir}/linux-${_basekernel}" + + # get kernel version + make prepare + + # load configuration + # Configure the kernel. Replace the line below with one of your choice. + #make menuconfig # CLI menu for configuration + #make nconfig # new CLI menu for configuration + #make xconfig # X-based configuration + #make oldconfig # using old config from previous kernel version + # ... or manually edit .config + + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + if [ "${CARCH}" = "x86_64" ]; then + cat .config > "${startdir}/config.x86_64.last" + else + cat .config > "${startdir}/config.i686.last" + fi + + #################### + # stop here + # this is useful to configure the kernel + #msg "Stopping build"; return 1 + #################### + + # build! + if [ "$CARCH" == "mips64el" ]; then + # The build system passes it directly to linker, disable to avoid + # having unknown -Wl,... options. + export LDFLAGS="" + # bzImage is arch-specific and not supported on mips; vmlinux is + # useful for oprofile. + make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules + else + make ${MAKEFLAGS} LOCALVERSION= bzImage modules + fi +} + +_package() { + pkgdesc="The ${pkgbase^} kernel and modules with grsecurity/PaX support" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') + depends=('coreutils' 'linux-libre-firmware' 'kmod' 'gradm' 'pax-flags-libre') + optdepends=('crda: to set the correct wireless channels of your country') + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset" + "etc/modprobe.d/dma.conf" + "etc/sysctl.d/05-grsecurity.conf") + install=${pkgbase}.install + if [ "$CARCH" = "mips64el" ]; then + optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)') + conflicts+=('mkinitcpio<0.7') + else + depends+=('mkinitcpio>=0.7') + fi + + cd "${srcdir}/linux-${_basekernel}" + + KARCH=x86 + [ $CARCH = "mips64el" ] && KARCH=mips + + # get kernel version + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} + + mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install + + if [ "$CARCH" == "mips64el" ]; then + cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}" + cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}" + else + cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" + fi + + # add vmlinux + install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" + + # set correct depmod command for install + cp -f "${startdir}/${install}" "${startdir}/${install}.pkg" + true && install=${install}.pkg + sed \ + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${install}" + + # install mkinitcpio preset file for kernel + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" + + # mkinitcpio 0.7 relies on bzImage to find the kernel version + if [ "$CARCH" == "mips64el" ]; then + sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" + fi + + # remove build and source links + rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build} + # remove the firmware + rm -rf "${pkgdir}/lib/firmware" + # gzip -9 all modules to save 100MB of space + find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; + # make room for external modules + ln -s "../extramodules-${_basekernel}${_localversionname:--LIBRE-GRSEC}" "${pkgdir}/lib/modules/${_kernver}/extramodules" + # add real version for building modules and running depmod from post_install/upgrade + mkdir -p "${pkgdir}/lib/modules/extramodules-${_basekernel}${_localversionname:--LIBRE-GRSEC}" + echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_localversionname:--LIBRE-GRSEC}/version" + + # Now we call depmod... + depmod -b "$pkgdir" -F System.map "$_kernver" + + # move module tree /lib -> /usr/lib + mv "$pkgdir/lib" "$pkgdir/usr" + + # copy sysctl configuration + install -Dm600 "$srcdir/sysctl.conf" "$pkgdir/etc/sysctl.d/05-grsecurity.conf" + + # copy kernel module blacklist + install -Dm600 "$srcdir/module-blacklist.conf" "$pkgdir/etc/modprobe.d/dma.conf" +} + +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase^} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + + KARCH=x86 + [ $CARCH = "mips64el" ] && KARCH=mips + + # in case of repackaging this is empty + if [ -z "${_kernver}" ]; then + cd "${srcdir}/linux-${_basekernel}" + _kernver="$(make LOCALVERSION= kernelrelease)" + fi + + install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" + + cd "${pkgdir}/usr/lib/modules/${_kernver}" + ln -sf ../../../src/linux-${_kernver} build + + cd "${srcdir}/linux-${_basekernel}" + install -D -m644 Makefile \ + "${pkgdir}/usr/src/linux-${_kernver}/Makefile" + install -D -m644 kernel/Makefile \ + "${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile" + install -D -m644 .config \ + "${pkgdir}/usr/src/linux-${_kernver}/.config" + + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include" + + for i in acpi asm-generic config crypto drm generated keys linux math-emu \ + media net pcmcia scsi sound trace uapi video xen; do + cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/" + done + + # copy arch includes for external modules + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}" + cp -a "arch/${KARCH}/include" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + + # copy files necessary for later builds + cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}" + cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}" + + if [ "$CARCH" = "mips64el" ]; then + cp "arch/${KARCH}/Kbuild" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + cp -a "arch/${KARCH}/loongson" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + cp "${srcdir}/Kbuild.platforms" "${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/" + fi + + # fix permissions on scripts dir + chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts" + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions" + + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel" + + cp arch/${KARCH}/Makefile "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + + if [ "${CARCH}" = "i686" ]; then + cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + fi + + cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/" + + # add headers for lirc package + # pci + for i in bt8xx cx88 saa7134; do + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}" + cp -a drivers/media/pci/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}" + done + # usb + for i in cpia2 em28xx pwc sn9c102; do + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}" + cp -a drivers/media/usb/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}" + done + # i2c + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c" + cp drivers/media/i2c/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/" + for i in cx25840; do + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}" + cp -a drivers/media/i2c/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}" + done + + # add docbook makefile + install -D -m644 Documentation/DocBook/Makefile \ + "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" + + # add dm headers + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/md" + cp drivers/md/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/md" + + # add inotify.h + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/linux" + cp include/linux/inotify.h "${pkgdir}/usr/src/linux-${_kernver}/include/linux/" + + # add wireless headers + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/" + cp net/mac80211/*.h "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/" + + # add dvb headers for external modules + # in reference to: + # http://bugs.archlinux.org/task/9912 + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core" + cp drivers/media/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core/" + # and... + # http://bugs.archlinux.org/task/11194 + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/" + cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/" + + # add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new + # in reference to: + # http://bugs.archlinux.org/task/13146 + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/" + cp drivers/media/dvb-frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/" + cp drivers/media/i2c/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/" + + # add dvb headers + # in reference to: + # http://bugs.archlinux.org/task/20402 + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb" + cp drivers/media/usb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb/" + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends" + cp drivers/media/dvb-frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/" + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners" + cp drivers/media/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners/" + + # add xfs and shmem for aufs building + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs" + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/mm" + cp fs/xfs/xfs_sb.h "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h" + + # copy in Kconfig files + for i in `find . -name "Kconfig*"`; do + mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'` + cp ${i} "${pkgdir}/usr/src/linux-${_kernver}/${i}" + done + + chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}" + find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \; + + # strip scripts directory + find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do + case "$(file -bi "${binary}")" in + *application/x-sharedlib*) # Libraries (.so) + /usr/bin/strip ${STRIP_SHARED} "${binary}";; + *application/x-archive*) # Libraries (.a) + /usr/bin/strip ${STRIP_STATIC} "${binary}";; + *application/x-executable*) # Binaries + /usr/bin/strip ${STRIP_BINARIES} "${binary}";; + esac + done + + # remove unneeded architectures + rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arc,arm,arm26,arm64,avr32,blackfin,c6x,cris,frv,h8300,hexagon,ia64,m32r,m68k,m68knommu,metag,microblaze,mn10300,openrisc,parisc,powerpc,ppc,s390,score,sh,sh64,sparc,sparc64,tile,unicore32,um,v850,xtensa} + if [ "$CARCH" = "mips64el" ]; then + rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/x86 + else + rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/mips + fi +} + +_package-docs() { + pkgdesc="Kernel hackers manual - HTML documentation that comes with the ${pkgbase^} kernel" + provides=("kernel26${_kernelname}-docs=${pkgver}" "linux${_kernelname}-docs=${pkgver}") + conflicts=("kernel26${_kernelname}-docs" "kernel26-libre${_kernelname}-docs" "linux${_kernelname}-docs") + replaces=("kernel26${_kernelname}-docs" "kernel26-libre${_kernelname}-docs" "linux${_kernelname}-docs") + + cd "${srcdir}/linux-${_basekernel}" + + mkdir -p "${pkgdir}/usr/src/linux-${_kernver}" + cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}" + find "${pkgdir}" -type f -exec chmod 444 {} \; + find "${pkgdir}" -type d -exec chmod 755 {} \; + + # remove a file already in linux package + rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" +} + +pkgname=("${pkgbase}" "${pkgbase}-headers" "${pkgbase}-docs") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/kernels/linux-libre-grsec/boot-logo.patch b/kernels/linux-libre-grsec/boot-logo.patch new file mode 100644 index 000000000..2de761ff4 --- /dev/null +++ b/kernels/linux-libre-grsec/boot-logo.patch @@ -0,0 +1,22687 @@ +diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm +index 2630570..c9d8373 100644 +--- a/drivers/video/logo/logo_linux_clut224.ppm ++++ b/drivers/video/logo/logo_linux_clut224.ppm +@@ -1,1124 +1,861 @@ + P3 +-# Standard 224-color Linux logo +-80 80 ++80 78 + 255 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 3 3 3 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 +-0 0 0 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 2 1 0 2 1 0 3 2 2 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 2 2 2 0 0 0 3 4 3 26 28 28 +-37 38 37 37 38 37 14 17 19 2 2 2 0 0 0 2 2 2 +-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 3 3 3 0 0 0 1 1 1 6 6 6 +-2 2 2 0 0 0 3 3 3 4 4 4 4 4 4 4 4 4 +-4 4 5 3 3 3 1 0 0 0 0 0 1 0 0 0 0 0 +-1 1 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-2 2 2 0 0 0 0 0 0 14 17 19 60 74 84 137 136 137 +-153 152 153 137 136 137 125 124 125 60 73 81 6 6 6 3 1 0 +-0 0 0 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 0 0 0 4 4 4 41 54 63 125 124 125 +-60 73 81 6 6 6 4 0 0 3 3 3 4 4 4 4 4 4 +-4 4 4 0 0 0 6 9 11 41 54 63 41 65 82 22 30 35 +-2 2 2 2 1 0 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 5 5 5 5 5 5 2 2 2 0 0 0 +-4 0 0 6 6 6 41 54 63 137 136 137 174 174 174 167 166 167 +-165 164 165 165 164 165 163 162 163 163 162 163 125 124 125 41 54 63 +-1 1 1 0 0 0 0 0 0 3 3 3 5 5 5 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 +-3 3 3 2 0 0 4 0 0 60 73 81 156 155 156 167 166 167 +-163 162 163 85 115 134 5 7 8 0 0 0 4 4 4 5 5 5 +-0 0 0 2 5 5 55 98 126 90 154 193 90 154 193 72 125 159 +-37 51 59 2 0 0 1 1 1 4 5 5 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 4 4 4 1 1 1 0 0 0 3 3 3 +-37 38 37 125 124 125 163 162 163 174 174 174 158 157 158 158 157 158 +-156 155 156 156 155 156 158 157 158 165 164 165 174 174 174 166 165 166 +-125 124 125 16 19 21 1 0 0 0 0 0 0 0 0 4 4 4 +-5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 1 1 1 +-0 0 0 0 0 0 37 38 37 153 152 153 174 174 174 158 157 158 +-174 174 174 163 162 163 37 38 37 4 3 3 4 0 0 1 1 1 +-0 0 0 22 40 52 101 161 196 101 161 196 90 154 193 101 161 196 +-64 123 161 14 17 19 0 0 0 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 +-5 5 5 2 2 2 0 0 0 4 0 0 24 26 27 85 115 134 +-156 155 156 174 174 174 167 166 167 156 155 156 154 153 154 157 156 157 +-156 155 156 156 155 156 155 154 155 153 152 153 158 157 158 167 166 167 +-174 174 174 156 155 156 60 74 84 16 19 21 0 0 0 0 0 0 +-1 1 1 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 6 6 6 3 3 3 0 0 0 4 0 0 +-13 16 17 60 73 81 137 136 137 165 164 165 156 155 156 153 152 153 +-174 174 174 177 184 187 60 73 81 3 1 0 0 0 0 1 1 2 +-22 30 35 64 123 161 136 185 209 90 154 193 90 154 193 90 154 193 +-90 154 193 21 29 34 0 0 0 3 2 2 4 4 5 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 3 3 3 +-0 0 0 0 0 0 10 13 16 60 74 84 157 156 157 174 174 174 +-174 174 174 158 157 158 153 152 153 154 153 154 156 155 156 155 154 155 +-156 155 156 155 154 155 154 153 154 157 156 157 154 153 154 153 152 153 +-163 162 163 174 174 174 177 184 187 137 136 137 60 73 81 13 16 17 +-4 0 0 0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 +-5 5 5 4 4 4 1 1 1 0 0 0 3 3 3 41 54 63 +-131 129 131 174 174 174 174 174 174 174 174 174 167 166 167 174 174 174 +-190 197 201 137 136 137 24 26 27 4 0 0 16 21 25 50 82 103 +-90 154 193 136 185 209 90 154 193 101 161 196 101 161 196 101 161 196 +-31 91 132 3 6 7 0 0 0 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 2 2 2 0 0 0 4 0 0 +-4 0 0 43 57 68 137 136 137 177 184 187 174 174 174 163 162 163 +-155 154 155 155 154 155 156 155 156 155 154 155 158 157 158 165 164 165 +-167 166 167 166 165 166 163 162 163 157 156 157 155 154 155 155 154 155 +-153 152 153 156 155 156 167 166 167 174 174 174 174 174 174 131 129 131 +-41 54 63 5 5 5 0 0 0 0 0 0 3 3 3 4 4 4 +-1 1 1 0 0 0 1 0 0 26 28 28 125 124 125 174 174 174 +-177 184 187 174 174 174 174 174 174 156 155 156 131 129 131 137 136 137 +-125 124 125 24 26 27 4 0 0 41 65 82 90 154 193 136 185 209 +-136 185 209 101 161 196 53 118 160 37 112 160 90 154 193 34 86 122 +-7 12 15 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 3 3 3 0 0 0 0 0 0 5 5 5 37 38 37 +-125 124 125 167 166 167 174 174 174 167 166 167 158 157 158 155 154 155 +-156 155 156 156 155 156 156 155 156 163 162 163 167 166 167 155 154 155 +-137 136 137 153 152 153 156 155 156 165 164 165 163 162 163 156 155 156 +-156 155 156 156 155 156 155 154 155 158 157 158 166 165 166 174 174 174 +-167 166 167 125 124 125 37 38 37 1 0 0 0 0 0 0 0 0 +-0 0 0 24 26 27 60 74 84 158 157 158 174 174 174 174 174 174 +-166 165 166 158 157 158 125 124 125 41 54 63 13 16 17 6 6 6 +-6 6 6 37 38 37 80 127 157 136 185 209 101 161 196 101 161 196 +-90 154 193 28 67 93 6 10 14 13 20 25 13 20 25 6 10 14 +-1 1 2 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-1 1 1 1 0 0 4 3 3 37 38 37 60 74 84 153 152 153 +-167 166 167 167 166 167 158 157 158 154 153 154 155 154 155 156 155 156 +-157 156 157 158 157 158 167 166 167 167 166 167 131 129 131 43 57 68 +-26 28 28 37 38 37 60 73 81 131 129 131 165 164 165 166 165 166 +-158 157 158 155 154 155 156 155 156 156 155 156 156 155 156 158 157 158 +-165 164 165 174 174 174 163 162 163 60 74 84 16 19 21 13 16 17 +-60 73 81 131 129 131 174 174 174 174 174 174 167 166 167 165 164 165 +-137 136 137 60 73 81 24 26 27 4 0 0 4 0 0 16 19 21 +-52 104 138 101 161 196 136 185 209 136 185 209 90 154 193 27 99 146 +-13 20 25 4 5 7 2 5 5 4 5 7 1 1 2 0 0 0 +-4 4 4 4 4 4 3 3 3 2 2 2 2 2 2 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 0 0 0 +-0 0 0 13 16 17 60 73 81 137 136 137 174 174 174 166 165 166 +-158 157 158 156 155 156 157 156 157 156 155 156 155 154 155 158 157 158 +-167 166 167 174 174 174 153 152 153 60 73 81 16 19 21 4 0 0 +-4 0 0 4 0 0 6 6 6 26 28 28 60 74 84 158 157 158 +-174 174 174 166 165 166 157 156 157 155 154 155 156 155 156 156 155 156 +-155 154 155 158 157 158 167 166 167 167 166 167 131 129 131 125 124 125 +-137 136 137 167 166 167 167 166 167 174 174 174 158 157 158 125 124 125 +-16 19 21 4 0 0 4 0 0 10 13 16 49 76 92 107 159 188 +-136 185 209 136 185 209 90 154 193 26 108 161 22 40 52 6 10 14 +-2 3 3 1 1 2 1 1 2 4 4 5 4 4 5 4 4 5 +-4 4 5 2 2 1 0 0 0 0 0 0 0 0 0 2 2 2 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 3 3 3 0 0 0 1 0 0 4 0 0 +-37 51 59 131 129 131 167 166 167 167 166 167 163 162 163 157 156 157 +-157 156 157 155 154 155 153 152 153 157 156 157 167 166 167 174 174 174 +-153 152 153 125 124 125 37 38 37 4 0 0 4 0 0 4 0 0 +-4 3 3 4 3 3 4 0 0 6 6 6 4 0 0 37 38 37 +-125 124 125 174 174 174 174 174 174 165 164 165 156 155 156 154 153 154 +-156 155 156 156 155 156 155 154 155 163 162 163 158 157 158 163 162 163 +-174 174 174 174 174 174 174 174 174 125 124 125 37 38 37 0 0 0 +-4 0 0 6 9 11 41 54 63 90 154 193 136 185 209 146 190 211 +-136 185 209 37 112 160 22 40 52 6 10 14 3 6 7 1 1 2 +-1 1 2 3 3 3 1 1 2 3 3 3 4 4 4 4 4 4 +-2 2 2 2 0 0 16 19 21 37 38 37 24 26 27 0 0 0 +-0 0 0 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 +-4 4 4 0 0 0 0 0 0 0 0 0 26 28 28 120 125 127 +-158 157 158 174 174 174 165 164 165 157 156 157 155 154 155 156 155 156 +-153 152 153 153 152 153 167 166 167 174 174 174 174 174 174 125 124 125 +-37 38 37 4 0 0 0 0 0 4 0 0 4 3 3 4 4 4 +-4 4 4 4 4 4 5 5 5 4 0 0 4 0 0 4 0 0 +-4 3 3 43 57 68 137 136 137 174 174 174 174 174 174 165 164 165 +-154 153 154 153 152 153 153 152 153 153 152 153 163 162 163 174 174 174 +-174 174 174 153 152 153 60 73 81 6 6 6 4 0 0 4 3 3 +-32 43 50 80 127 157 136 185 209 146 190 211 146 190 211 90 154 193 +-28 67 93 28 67 93 40 71 93 3 6 7 1 1 2 2 5 5 +-50 82 103 79 117 143 26 37 45 0 0 0 3 3 3 1 1 1 +-0 0 0 41 54 63 137 136 137 174 174 174 153 152 153 60 73 81 +-2 0 0 0 0 0 +-4 4 4 4 4 4 4 4 4 4 4 4 6 6 6 2 2 2 +-0 0 0 2 0 0 24 26 27 60 74 84 153 152 153 174 174 174 +-174 174 174 157 156 157 154 153 154 156 155 156 154 153 154 153 152 153 +-165 164 165 174 174 174 177 184 187 137 136 137 43 57 68 6 6 6 +-4 0 0 2 0 0 3 3 3 5 5 5 5 5 5 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 6 6 6 4 3 3 +-4 0 0 4 0 0 24 26 27 60 73 81 153 152 153 174 174 174 +-174 174 174 158 157 158 158 157 158 174 174 174 174 174 174 158 157 158 +-60 74 84 24 26 27 4 0 0 4 0 0 17 23 27 59 113 148 +-136 185 209 191 222 234 146 190 211 136 185 209 31 91 132 7 11 13 +-22 40 52 101 161 196 90 154 193 6 9 11 3 4 4 43 95 132 +-136 185 209 172 205 220 55 98 126 0 0 0 0 0 0 2 0 0 +-26 28 28 153 152 153 177 184 187 167 166 167 177 184 187 165 164 165 +-37 38 37 0 0 0 +-4 4 4 4 4 4 5 5 5 5 5 5 1 1 1 0 0 0 +-13 16 17 60 73 81 137 136 137 174 174 174 174 174 174 165 164 165 +-153 152 153 153 152 153 155 154 155 154 153 154 158 157 158 174 174 174 +-177 184 187 163 162 163 60 73 81 16 19 21 4 0 0 4 0 0 +-4 3 3 4 4 4 5 5 5 5 5 5 4 4 4 5 5 5 +-5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 5 5 5 +-6 6 6 4 0 0 4 0 0 4 0 0 24 26 27 60 74 84 +-166 165 166 174 174 174 177 184 187 165 164 165 125 124 125 24 26 27 +-4 0 0 4 0 0 5 5 5 50 82 103 136 185 209 172 205 220 +-146 190 211 136 185 209 26 108 161 22 40 52 7 12 15 44 81 103 +-71 116 144 28 67 93 37 51 59 41 65 82 100 139 164 101 161 196 +-90 154 193 90 154 193 28 67 93 0 0 0 0 0 0 26 28 28 +-125 124 125 167 166 167 163 162 163 153 152 153 163 162 163 174 174 174 +-85 115 134 4 0 0 +-4 4 4 5 5 5 4 4 4 1 0 0 4 0 0 34 47 55 +-125 124 125 174 174 174 174 174 174 167 166 167 157 156 157 153 152 153 +-155 154 155 155 154 155 158 157 158 166 165 166 167 166 167 154 153 154 +-125 124 125 26 28 28 4 0 0 4 0 0 4 0 0 5 5 5 +-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 1 1 1 +-0 0 0 0 0 0 1 1 1 4 4 4 4 4 4 4 4 4 +-5 5 5 5 5 5 4 3 3 4 0 0 4 0 0 6 6 6 +-37 38 37 131 129 131 137 136 137 37 38 37 0 0 0 4 0 0 +-4 5 5 43 61 72 90 154 193 172 205 220 146 190 211 136 185 209 +-90 154 193 28 67 93 13 20 25 43 61 72 71 116 144 44 81 103 +-2 5 5 7 11 13 59 113 148 101 161 196 90 154 193 28 67 93 +-13 20 25 6 10 14 0 0 0 13 16 17 60 73 81 137 136 137 +-166 165 166 158 157 158 156 155 156 154 153 154 167 166 167 174 174 174 +-60 73 81 4 0 0 +-4 4 4 4 4 4 0 0 0 3 3 3 60 74 84 174 174 174 +-174 174 174 167 166 167 163 162 163 155 154 155 157 156 157 155 154 155 +-156 155 156 163 162 163 167 166 167 158 157 158 125 124 125 37 38 37 +-4 3 3 4 0 0 4 0 0 6 6 6 6 6 6 5 5 5 +-4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 2 3 3 +-10 13 16 7 11 13 1 0 0 0 0 0 2 2 1 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 4 0 0 +-4 0 0 7 11 13 13 16 17 4 0 0 3 3 3 34 47 55 +-80 127 157 146 190 211 172 205 220 136 185 209 136 185 209 136 185 209 +-28 67 93 22 40 52 55 98 126 55 98 126 21 29 34 7 11 13 +-50 82 103 101 161 196 101 161 196 35 83 115 13 20 25 2 2 1 +-1 1 2 1 1 2 37 51 59 131 129 131 174 174 174 174 174 174 +-167 166 167 163 162 163 163 162 163 167 166 167 174 174 174 125 124 125 +-16 19 21 4 0 0 +-4 4 4 4 0 0 4 0 0 60 74 84 174 174 174 174 174 174 +-158 157 158 155 154 155 155 154 155 156 155 156 155 154 155 158 157 158 +-167 166 167 165 164 165 131 129 131 60 73 81 13 16 17 4 0 0 +-4 0 0 4 3 3 6 6 6 4 3 3 5 5 5 4 4 4 +-4 4 4 3 2 2 0 0 0 0 0 0 7 11 13 45 69 86 +-80 127 157 71 116 144 43 61 72 7 11 13 0 0 0 1 1 1 +-4 3 3 4 4 4 4 4 4 4 4 4 6 6 6 5 5 5 +-3 2 2 4 0 0 1 0 0 21 29 34 59 113 148 136 185 209 +-146 190 211 136 185 209 136 185 209 136 185 209 136 185 209 136 185 209 +-68 124 159 44 81 103 22 40 52 13 16 17 43 61 72 90 154 193 +-136 185 209 59 113 148 21 29 34 3 4 3 1 1 1 0 0 0 +-24 26 27 125 124 125 163 162 163 174 174 174 166 165 166 165 164 165 +-163 162 163 125 124 125 125 124 125 125 124 125 125 124 125 26 28 28 +-4 0 0 4 3 3 +-3 3 3 0 0 0 24 26 27 153 152 153 177 184 187 158 157 158 +-156 155 156 156 155 156 155 154 155 155 154 155 165 164 165 174 174 174 +-155 154 155 60 74 84 26 28 28 4 0 0 4 0 0 3 1 0 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 +-2 0 0 0 0 0 0 0 0 32 43 50 72 125 159 101 161 196 +-136 185 209 101 161 196 101 161 196 79 117 143 32 43 50 0 0 0 +-0 0 0 2 2 2 4 4 4 4 4 4 3 3 3 1 0 0 +-0 0 0 4 5 5 49 76 92 101 161 196 146 190 211 146 190 211 +-136 185 209 136 185 209 136 185 209 136 185 209 136 185 209 90 154 193 +-28 67 93 13 16 17 37 51 59 80 127 157 136 185 209 90 154 193 +-22 40 52 6 9 11 3 4 3 2 2 1 16 19 21 60 73 81 +-137 136 137 163 162 163 158 157 158 166 165 166 167 166 167 153 152 153 +-60 74 84 37 38 37 6 6 6 13 16 17 4 0 0 1 0 0 +-3 2 2 4 4 4 +-3 2 2 4 0 0 37 38 37 137 136 137 167 166 167 158 157 158 +-157 156 157 154 153 154 157 156 157 167 166 167 174 174 174 125 124 125 +-37 38 37 4 0 0 4 0 0 4 0 0 4 3 3 4 4 4 +-4 4 4 4 4 4 5 5 5 5 5 5 1 1 1 0 0 0 +-0 0 0 16 21 25 55 98 126 90 154 193 136 185 209 101 161 196 +-101 161 196 101 161 196 136 185 209 136 185 209 101 161 196 55 98 126 +-14 17 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-22 40 52 90 154 193 146 190 211 146 190 211 136 185 209 136 185 209 +-136 185 209 136 185 209 136 185 209 101 161 196 35 83 115 7 11 13 +-17 23 27 59 113 148 136 185 209 101 161 196 34 86 122 7 12 15 +-2 5 5 3 4 3 6 6 6 60 73 81 131 129 131 163 162 163 +-166 165 166 174 174 174 174 174 174 163 162 163 125 124 125 41 54 63 +-13 16 17 4 0 0 4 0 0 4 0 0 1 0 0 2 2 2 +-4 4 4 4 4 4 +-1 1 1 2 1 0 43 57 68 137 136 137 153 152 153 153 152 153 +-163 162 163 156 155 156 165 164 165 167 166 167 60 74 84 6 6 6 +-4 0 0 4 0 0 5 5 5 4 4 4 4 4 4 4 4 4 +-4 5 5 6 6 6 4 3 3 0 0 0 0 0 0 11 15 18 +-40 71 93 100 139 164 101 161 196 101 161 196 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 136 185 209 136 185 209 +-101 161 196 45 69 86 6 6 6 0 0 0 17 23 27 55 98 126 +-136 185 209 146 190 211 136 185 209 136 185 209 136 185 209 136 185 209 +-136 185 209 136 185 209 90 154 193 22 40 52 7 11 13 50 82 103 +-136 185 209 136 185 209 53 118 160 22 40 52 7 11 13 2 5 5 +-3 4 3 37 38 37 125 124 125 157 156 157 166 165 166 167 166 167 +-174 174 174 174 174 174 137 136 137 60 73 81 4 0 0 4 0 0 +-4 0 0 4 0 0 5 5 5 3 3 3 3 3 3 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 41 54 63 137 136 137 125 124 125 131 129 131 +-155 154 155 167 166 167 174 174 174 60 74 84 6 6 6 4 0 0 +-4 3 3 6 6 6 4 4 4 4 4 4 4 4 4 5 5 5 +-4 4 4 1 1 1 0 0 0 3 6 7 41 65 82 72 125 159 +-101 161 196 101 161 196 101 161 196 90 154 193 90 154 193 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 136 185 209 +-136 185 209 136 185 209 80 127 157 55 98 126 101 161 196 146 190 211 +-136 185 209 136 185 209 136 185 209 101 161 196 136 185 209 101 161 196 +-136 185 209 101 161 196 35 83 115 22 30 35 101 161 196 172 205 220 +-90 154 193 28 67 93 7 11 13 2 5 5 3 4 3 13 16 17 +-85 115 134 167 166 167 174 174 174 174 174 174 174 174 174 174 174 174 +-167 166 167 60 74 84 13 16 17 4 0 0 4 0 0 4 3 3 +-6 6 6 5 5 5 4 4 4 5 5 5 4 4 4 5 5 5 +-5 5 5 5 5 5 +-1 1 1 4 0 0 41 54 63 137 136 137 137 136 137 125 124 125 +-131 129 131 167 166 167 157 156 157 37 38 37 6 6 6 4 0 0 +-6 6 6 5 5 5 4 4 4 4 4 4 4 5 5 2 2 1 +-0 0 0 0 0 0 26 37 45 58 111 146 101 161 196 101 161 196 +-101 161 196 90 154 193 90 154 193 90 154 193 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 +-101 161 196 136 185 209 136 185 209 136 185 209 146 190 211 136 185 209 +-136 185 209 101 161 196 136 185 209 136 185 209 101 161 196 136 185 209 +-101 161 196 136 185 209 136 185 209 136 185 209 136 185 209 16 89 141 +-7 11 13 2 5 5 2 5 5 13 16 17 60 73 81 154 154 154 +-174 174 174 174 174 174 174 174 174 174 174 174 163 162 163 125 124 125 +-24 26 27 4 0 0 4 0 0 4 0 0 5 5 5 5 5 5 +-4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 +-5 5 5 4 4 4 +-4 0 0 6 6 6 37 38 37 137 136 137 137 136 137 131 129 131 +-131 129 131 153 152 153 131 129 131 26 28 28 4 0 0 4 3 3 +-6 6 6 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 +-13 20 25 51 88 114 90 154 193 101 161 196 101 161 196 90 154 193 +-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 136 185 209 101 161 196 +-101 161 196 136 185 209 101 161 196 136 185 209 136 185 209 101 161 196 +-136 185 209 101 161 196 136 185 209 101 161 196 101 161 196 101 161 196 +-136 185 209 136 185 209 136 185 209 37 112 160 21 29 34 5 7 8 +-2 5 5 13 16 17 43 57 68 131 129 131 174 174 174 174 174 174 +-174 174 174 167 166 167 157 156 157 125 124 125 37 38 37 4 0 0 +-4 0 0 4 0 0 5 5 5 5 5 5 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-1 1 1 4 0 0 41 54 63 153 152 153 137 136 137 137 136 137 +-137 136 137 153 152 153 125 124 125 24 26 27 4 0 0 3 2 2 +-4 4 4 4 4 4 4 3 3 4 0 0 3 6 7 43 61 72 +-64 123 161 101 161 196 90 154 193 90 154 193 90 154 193 90 154 193 +-90 154 193 90 154 193 90 154 193 90 154 193 101 161 196 90 154 193 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 +-136 185 209 101 161 196 101 161 196 136 185 209 136 185 209 101 161 196 +-101 161 196 90 154 193 28 67 93 13 16 17 7 11 13 3 6 7 +-37 51 59 125 124 125 163 162 163 174 174 174 167 166 167 166 165 166 +-167 166 167 131 129 131 60 73 81 4 0 0 4 0 0 4 0 0 +-3 3 3 5 5 5 6 6 6 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 41 54 63 137 136 137 153 152 153 137 136 137 +-153 152 153 157 156 157 125 124 125 24 26 27 0 0 0 2 2 2 +-4 4 4 4 4 4 2 0 0 0 0 0 28 67 93 90 154 193 +-90 154 193 90 154 193 90 154 193 90 154 193 64 123 161 90 154 193 +-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 101 161 196 +-90 154 193 101 161 196 101 161 196 101 161 196 90 154 193 136 185 209 +-101 161 196 101 161 196 136 185 209 101 161 196 136 185 209 101 161 196 +-101 161 196 101 161 196 136 185 209 101 161 196 101 161 196 90 154 193 +-35 83 115 13 16 17 3 6 7 2 5 5 13 16 17 60 74 84 +-154 154 154 166 165 166 165 164 165 158 157 158 163 162 163 157 156 157 +-60 74 84 13 16 17 4 0 0 4 0 0 3 2 2 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-1 1 1 4 0 0 41 54 63 157 156 157 155 154 155 137 136 137 +-153 152 153 158 157 158 137 136 137 26 28 28 2 0 0 2 2 2 +-4 4 4 4 4 4 1 0 0 6 10 14 34 86 122 90 154 193 +-64 123 161 90 154 193 64 123 161 90 154 193 90 154 193 90 154 193 +-64 123 161 90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 +-136 185 209 101 161 196 136 185 209 90 154 193 26 108 161 22 40 52 +-13 16 17 5 7 8 2 5 5 2 5 5 37 38 37 165 164 165 +-174 174 174 163 162 163 154 154 154 165 164 165 167 166 167 60 73 81 +-6 6 6 4 0 0 4 0 0 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 41 54 63 156 155 156 158 157 158 153 152 153 +-156 155 156 165 164 165 137 136 137 26 28 28 0 0 0 2 2 2 +-4 4 5 4 4 4 2 0 0 7 12 15 31 96 139 64 123 161 +-90 154 193 64 123 161 90 154 193 90 154 193 64 123 161 90 154 193 +-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 +-90 154 193 90 154 193 90 154 193 101 161 196 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 136 185 209 +-101 161 196 136 185 209 26 108 161 22 40 52 7 11 13 5 7 8 +-2 5 5 2 5 5 2 5 5 2 2 1 37 38 37 158 157 158 +-174 174 174 154 154 154 156 155 156 167 166 167 165 164 165 37 38 37 +-4 0 0 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-3 1 0 4 0 0 60 73 81 157 156 157 163 162 163 153 152 153 +-158 157 158 167 166 167 137 136 137 26 28 28 2 0 0 2 2 2 +-4 5 5 4 4 4 4 0 0 7 12 15 24 86 132 26 108 161 +-37 112 160 64 123 161 90 154 193 64 123 161 90 154 193 90 154 193 +-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 +-90 154 193 101 161 196 90 154 193 101 161 196 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 136 185 209 101 161 196 136 185 209 +-90 154 193 35 83 115 13 16 17 13 16 17 7 11 13 3 6 7 +-5 7 8 6 6 6 3 4 3 2 2 1 30 32 34 154 154 154 +-167 166 167 154 154 154 154 154 154 174 174 174 165 164 165 37 38 37 +-6 6 6 4 0 0 6 6 6 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 41 54 63 163 162 163 166 165 166 154 154 154 +-163 162 163 174 174 174 137 136 137 26 28 28 0 0 0 2 2 2 +-4 5 5 4 4 5 1 1 2 6 10 14 28 67 93 18 97 151 +-18 97 151 18 97 151 26 108 161 37 112 160 37 112 160 90 154 193 +-64 123 161 90 154 193 90 154 193 90 154 193 90 154 193 101 161 196 +-90 154 193 101 161 196 101 161 196 90 154 193 101 161 196 101 161 196 +-101 161 196 101 161 196 101 161 196 136 185 209 90 154 193 16 89 141 +-13 20 25 7 11 13 5 7 8 5 7 8 2 5 5 4 5 5 +-3 4 3 4 5 5 3 4 3 0 0 0 37 38 37 158 157 158 +-174 174 174 158 157 158 158 157 158 167 166 167 174 174 174 41 54 63 +-4 0 0 3 2 2 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-1 1 1 4 0 0 60 73 81 165 164 165 174 174 174 158 157 158 +-167 166 167 174 174 174 153 152 153 26 28 28 2 0 0 2 2 2 +-4 5 5 4 4 4 4 0 0 7 12 15 10 87 144 10 87 144 +-18 97 151 18 97 151 18 97 151 26 108 161 26 108 161 26 108 161 +-26 108 161 37 112 160 53 118 160 90 154 193 90 154 193 90 154 193 +-90 154 193 90 154 193 101 161 196 101 161 196 101 161 196 101 161 196 +-101 161 196 136 185 209 90 154 193 26 108 161 22 40 52 13 16 17 +-7 11 13 3 6 7 5 7 8 5 7 8 2 5 5 4 5 5 +-4 5 5 6 6 6 3 4 3 0 0 0 30 32 34 158 157 158 +-174 174 174 156 155 156 155 154 155 165 164 165 154 153 154 37 38 37 +-4 0 0 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 167 166 167 174 174 174 163 162 163 +-174 174 174 174 174 174 153 152 153 26 28 28 0 0 0 3 3 3 +-5 5 5 4 4 4 1 1 2 7 12 15 28 67 93 18 97 151 +-18 97 151 18 97 151 18 97 151 18 97 151 18 97 151 26 108 161 +-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 +-90 154 193 26 108 161 90 154 193 90 154 193 90 154 193 101 161 196 +-101 161 196 26 108 161 22 40 52 13 16 17 7 11 13 2 5 5 +-2 5 5 6 6 6 2 5 5 4 5 5 4 5 5 4 5 5 +-3 4 3 5 5 5 3 4 3 2 0 0 30 32 34 137 136 137 +-153 152 153 137 136 137 131 129 131 137 136 137 131 129 131 37 38 37 +-4 0 0 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-1 1 1 4 0 0 60 73 81 167 166 167 174 174 174 166 165 166 +-174 174 174 177 184 187 153 152 153 30 32 34 1 0 0 3 3 3 +-5 5 5 4 3 3 4 0 0 7 12 15 10 87 144 10 87 144 +-18 97 151 18 97 151 18 97 151 26 108 161 26 108 161 26 108 161 +-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 +-26 108 161 26 108 161 26 108 161 90 154 193 90 154 193 26 108 161 +-35 83 115 13 16 17 7 11 13 5 7 8 3 6 7 5 7 8 +-2 5 5 6 6 6 4 5 5 4 5 5 3 4 3 4 5 5 +-3 4 3 6 6 6 3 4 3 0 0 0 26 28 28 125 124 125 +-131 129 131 125 124 125 125 124 125 131 129 131 131 129 131 37 38 37 +-4 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-3 1 0 4 0 0 60 73 81 174 174 174 177 184 187 167 166 167 +-174 174 174 177 184 187 153 152 153 30 32 34 0 0 0 3 3 3 +-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 18 97 151 +-18 97 151 18 97 151 18 97 151 18 97 151 18 97 151 26 108 161 +-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 +-26 108 161 90 154 193 26 108 161 26 108 161 24 86 132 13 20 25 +-7 11 13 13 20 25 22 40 52 5 7 8 3 4 3 3 4 3 +-4 5 5 3 4 3 4 5 5 3 4 3 4 5 5 3 4 3 +-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 125 124 125 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-1 1 1 4 0 0 60 73 81 174 174 174 177 184 187 174 174 174 +-174 174 174 190 197 201 157 156 157 30 32 34 1 0 0 3 3 3 +-5 5 5 4 3 3 4 0 0 7 12 15 10 87 144 10 87 144 +-18 97 151 19 95 150 19 95 150 18 97 151 18 97 151 26 108 161 +-18 97 151 26 108 161 26 108 161 26 108 161 26 108 161 90 154 193 +-26 108 161 26 108 161 26 108 161 22 40 52 2 5 5 3 4 3 +-28 67 93 37 112 160 34 86 122 2 5 5 3 4 3 3 4 3 +-3 4 3 3 4 3 3 4 3 2 2 1 3 4 3 4 4 4 +-4 5 5 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 174 174 174 177 184 187 174 174 174 +-174 174 174 190 197 201 158 157 158 30 32 34 0 0 0 2 2 2 +-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 18 97 151 +-10 87 144 19 95 150 19 95 150 18 97 151 18 97 151 18 97 151 +-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 +-18 97 151 22 40 52 2 5 5 2 2 1 22 40 52 26 108 161 +-90 154 193 37 112 160 22 40 52 3 4 3 13 20 25 22 30 35 +-3 6 7 1 1 1 2 2 2 6 9 11 5 5 5 4 3 3 +-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-1 1 1 4 0 0 60 73 81 177 184 187 193 200 203 174 174 174 +-177 184 187 193 200 203 163 162 163 30 32 34 4 0 0 2 2 2 +-5 5 5 4 3 3 4 0 0 6 10 14 24 86 132 10 87 144 +-10 87 144 10 87 144 19 95 150 19 95 150 19 95 150 18 97 151 +-26 108 161 26 108 161 26 108 161 90 154 193 26 108 161 28 67 93 +-6 10 14 2 5 5 13 20 25 24 86 132 37 112 160 90 154 193 +-10 87 144 7 12 15 2 5 5 28 67 93 37 112 160 28 67 93 +-2 2 1 7 12 15 35 83 115 28 67 93 3 6 7 1 0 0 +-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 174 174 174 190 197 201 174 174 174 +-177 184 187 193 200 203 163 162 163 30 32 34 0 0 0 2 2 2 +-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 10 87 144 +-10 87 144 16 89 141 19 95 150 10 87 144 26 108 161 26 108 161 +-26 108 161 26 108 161 26 108 161 28 67 93 6 10 14 1 1 2 +-7 12 15 28 67 93 26 108 161 16 89 141 24 86 132 21 29 34 +-3 4 3 21 29 34 37 112 160 37 112 160 27 99 146 21 29 34 +-21 29 34 26 108 161 90 154 193 35 83 115 1 1 2 2 0 0 +-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 125 124 125 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-3 1 0 4 0 0 60 73 81 193 200 203 193 200 203 174 174 174 +-190 197 201 193 200 203 165 164 165 37 38 37 4 0 0 2 2 2 +-5 5 5 4 3 3 4 0 0 6 10 14 24 86 132 10 87 144 +-10 87 144 10 87 144 16 89 141 18 97 151 18 97 151 10 87 144 +-24 86 132 24 86 132 13 20 25 4 5 7 4 5 7 22 40 52 +-18 97 151 37 112 160 26 108 161 7 12 15 1 1 1 0 0 0 +-28 67 93 37 112 160 26 108 161 28 67 93 22 40 52 28 67 93 +-26 108 161 90 154 193 26 108 161 10 87 144 0 0 0 2 0 0 +-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 60 73 81 174 174 174 193 200 203 174 174 174 +-190 197 201 193 200 203 165 164 165 30 32 34 0 0 0 2 2 2 +-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 10 87 144 +-10 87 144 10 87 144 10 87 144 18 97 151 28 67 93 6 10 14 +-0 0 0 1 1 2 4 5 7 13 20 25 16 89 141 26 108 161 +-26 108 161 26 108 161 24 86 132 6 9 11 2 3 3 22 40 52 +-37 112 160 16 89 141 22 40 52 28 67 93 26 108 161 26 108 161 +-90 154 193 26 108 161 26 108 161 28 67 93 1 1 1 4 0 0 +-4 4 4 5 5 5 3 3 3 4 0 0 26 28 28 124 126 130 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 193 200 203 193 200 203 174 174 174 +-193 200 203 193 200 203 167 166 167 37 38 37 4 0 0 2 2 2 +-5 5 5 4 4 4 4 0 0 6 10 14 28 67 93 10 87 144 +-10 87 144 10 87 144 18 97 151 10 87 144 13 20 25 4 5 7 +-1 1 2 1 1 1 22 40 52 26 108 161 26 108 161 26 108 161 +-26 108 161 26 108 161 26 108 161 24 86 132 22 40 52 22 40 52 +-22 40 52 22 40 52 10 87 144 26 108 161 26 108 161 26 108 161 +-26 108 161 26 108 161 90 154 193 10 87 144 0 0 0 4 0 0 +-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174 +-190 197 201 205 212 215 167 166 167 30 32 34 0 0 0 2 2 2 +-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 10 87 144 +-10 87 144 10 87 144 10 87 144 10 87 144 22 40 52 1 1 2 +-2 0 0 1 1 2 24 86 132 26 108 161 26 108 161 26 108 161 +-26 108 161 19 95 150 16 89 141 10 87 144 22 40 52 22 40 52 +-10 87 144 26 108 161 37 112 160 26 108 161 26 108 161 26 108 161 +-26 108 161 26 108 161 26 108 161 28 67 93 2 0 0 3 1 0 +-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 220 221 221 190 197 201 174 174 174 +-193 200 203 193 200 203 174 174 174 37 38 37 4 0 0 2 2 2 +-5 5 5 4 4 4 3 2 2 1 1 2 13 20 25 10 87 144 +-10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 13 20 25 +-13 20 25 22 40 52 10 87 144 18 97 151 18 97 151 26 108 161 +-10 87 144 13 20 25 6 10 14 21 29 34 24 86 132 18 97 151 +-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 +-26 108 161 90 154 193 18 97 151 13 20 25 0 0 0 4 3 3 +-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174 +-190 197 201 220 221 221 167 166 167 30 32 34 1 0 0 2 2 2 +-5 5 5 4 4 4 4 4 5 2 5 5 4 5 7 13 20 25 +-28 67 93 10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 +-10 87 144 10 87 144 18 97 151 10 87 144 18 97 151 18 97 151 +-28 67 93 2 3 3 0 0 0 28 67 93 26 108 161 26 108 161 +-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 +-26 108 161 10 87 144 13 20 25 1 1 2 3 2 2 4 4 4 +-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 220 221 221 190 197 201 174 174 174 +-193 200 203 193 200 203 174 174 174 26 28 28 4 0 0 4 3 3 +-5 5 5 4 4 4 4 4 4 4 4 5 1 1 2 2 5 5 +-4 5 7 22 40 52 10 87 144 10 87 144 18 97 151 10 87 144 +-10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 18 97 151 +-10 87 144 28 67 93 22 40 52 10 87 144 26 108 161 18 97 151 +-18 97 151 18 97 151 26 108 161 26 108 161 26 108 161 26 108 161 +-22 40 52 1 1 2 0 0 0 2 3 3 4 4 4 4 4 4 +-4 4 4 5 5 5 4 4 4 0 0 0 26 28 28 131 129 131 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174 +-190 197 201 220 221 221 190 197 201 41 54 63 4 0 0 2 2 2 +-6 6 6 4 4 4 4 4 4 4 4 5 4 4 5 3 3 3 +-1 1 2 1 1 2 6 10 14 22 40 52 10 87 144 18 97 151 +-18 97 151 10 87 144 10 87 144 10 87 144 18 97 151 10 87 144 +-10 87 144 18 97 151 26 108 161 18 97 151 18 97 151 10 87 144 +-26 108 161 26 108 161 26 108 161 10 87 144 28 67 93 6 10 14 +-1 1 2 1 1 2 4 3 3 4 4 5 4 4 4 4 4 4 +-5 5 5 5 5 5 1 1 1 4 0 0 37 51 59 137 136 137 +-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 4 0 0 60 73 81 220 221 221 193 200 203 174 174 174 +-193 200 203 193 200 203 220 221 221 137 136 137 13 16 17 4 0 0 +-2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 +-4 4 5 4 3 3 1 1 2 4 5 7 13 20 25 28 67 93 +-10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 +-10 87 144 18 97 151 18 97 151 10 87 144 18 97 151 26 108 161 +-26 108 161 18 97 151 28 67 93 6 10 14 0 0 0 0 0 0 +-2 3 3 4 5 5 4 4 5 4 4 4 4 4 4 5 5 5 +-3 3 3 1 1 1 0 0 0 16 19 21 125 124 125 137 136 137 +-131 129 131 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174 +-193 200 203 190 197 201 220 221 221 220 221 221 153 152 153 30 32 34 +-0 0 0 0 0 0 2 2 2 4 4 4 4 4 4 4 4 4 +-4 4 4 4 5 5 4 5 7 1 1 2 1 1 2 4 5 7 +-13 20 25 28 67 93 10 87 144 18 97 151 10 87 144 10 87 144 +-10 87 144 10 87 144 10 87 144 18 97 151 26 108 161 18 97 151 +-28 67 93 7 12 15 0 0 0 0 0 0 2 2 1 4 4 4 +-4 5 5 4 5 5 4 4 4 4 4 4 3 3 3 0 0 0 +-0 0 0 0 0 0 37 38 37 125 124 125 158 157 158 131 129 131 +-125 124 125 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 3 3 4 0 0 41 54 63 193 200 203 220 221 221 174 174 174 +-193 200 203 193 200 203 193 200 203 220 221 221 244 246 246 193 200 203 +-120 125 127 5 5 5 1 0 0 0 0 0 1 1 1 4 4 4 +-4 4 4 4 4 4 4 5 5 4 5 5 4 4 5 1 1 2 +-4 5 7 4 5 7 22 40 52 10 87 144 10 87 144 10 87 144 +-10 87 144 10 87 144 18 97 151 10 87 144 10 87 144 13 20 25 +-4 5 7 2 3 3 1 1 2 4 4 4 4 5 5 4 4 4 +-4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 1 1 2 +-24 26 27 60 74 84 153 152 153 163 162 163 137 136 137 125 124 125 +-125 124 125 125 124 125 125 124 125 137 136 137 125 124 125 26 28 28 +-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 0 0 6 6 6 26 28 28 156 155 156 220 221 221 220 221 221 +-174 174 174 193 200 203 193 200 203 193 200 203 205 212 215 220 221 221 +-220 221 221 167 166 167 60 73 81 7 11 13 0 0 0 0 0 0 +-3 3 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 +-4 4 5 1 1 2 1 1 2 4 5 7 22 40 52 10 87 144 +-10 87 144 10 87 144 10 87 144 22 40 52 4 5 7 1 1 2 +-1 1 2 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 +-5 5 5 2 2 2 0 0 0 4 0 0 16 19 21 60 73 81 +-137 136 137 167 166 167 158 157 158 137 136 137 131 129 131 131 129 131 +-125 124 125 125 124 125 131 129 131 155 154 155 60 74 84 5 7 8 +-0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-5 5 5 4 0 0 4 0 0 60 73 81 193 200 203 220 221 221 +-193 200 203 193 200 203 193 200 203 193 200 203 205 212 215 220 221 221 +-220 221 221 220 221 221 220 221 221 137 136 137 43 57 68 6 6 6 +-4 0 0 1 1 1 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 5 4 4 5 3 2 2 1 1 2 2 5 5 13 20 25 +-22 40 52 22 40 52 13 20 25 2 3 3 1 1 2 3 3 3 +-4 5 7 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-1 1 1 0 0 0 2 3 3 41 54 63 131 129 131 166 165 166 +-166 165 166 155 154 155 153 152 153 137 136 137 137 136 137 125 124 125 +-125 124 125 137 136 137 137 136 137 125 124 125 37 38 37 4 3 3 +-4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 3 3 6 6 6 6 6 6 13 16 17 60 73 81 167 166 167 +-220 221 221 220 221 221 220 221 221 193 200 203 193 200 203 193 200 203 +-205 212 215 220 221 221 220 221 221 244 246 246 205 212 215 125 124 125 +-24 26 27 0 0 0 0 0 0 2 2 2 5 5 5 5 5 5 +-4 4 4 4 4 4 4 4 4 4 4 5 1 1 2 4 5 7 +-4 5 7 4 5 7 1 1 2 3 2 2 4 4 5 4 4 4 +-4 4 4 4 4 4 5 5 5 4 4 4 0 0 0 0 0 0 +-2 0 0 26 28 28 125 124 125 174 174 174 174 174 174 166 165 166 +-156 155 156 153 152 153 137 136 137 137 136 137 131 129 131 137 136 137 +-137 136 137 137 136 137 60 74 84 30 32 34 4 0 0 4 0 0 +-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-5 5 5 6 6 6 4 0 0 4 0 0 6 6 6 26 28 28 +-125 124 125 174 174 174 220 221 221 220 221 221 220 221 221 193 200 203 +-205 212 215 220 221 221 205 212 215 220 221 221 220 221 221 244 246 246 +-193 200 203 60 74 84 13 16 17 4 0 0 0 0 0 3 3 3 +-5 5 5 5 5 5 4 4 4 4 4 4 4 4 5 3 3 3 +-1 1 2 3 3 3 4 4 5 4 4 5 4 4 4 4 4 4 +-5 5 5 5 5 5 2 2 2 0 0 0 0 0 0 13 16 17 +-60 74 84 174 174 174 193 200 203 174 174 174 167 166 167 163 162 163 +-153 152 153 153 152 153 137 136 137 137 136 137 153 152 153 137 136 137 +-125 124 125 41 54 63 24 26 27 4 0 0 4 0 0 5 5 5 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 3 3 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 +-6 6 6 37 38 37 131 129 131 220 221 221 220 221 221 220 221 221 +-193 200 203 193 200 203 220 221 221 205 212 215 220 221 221 244 246 246 +-244 246 246 244 246 246 174 174 174 41 54 63 0 0 0 0 0 0 +-0 0 0 4 4 4 5 5 5 5 5 5 4 4 4 4 4 5 +-4 4 5 4 4 5 4 4 4 4 4 4 6 6 6 6 6 6 +-3 3 3 0 0 0 2 0 0 13 16 17 60 73 81 156 155 156 +-220 221 221 193 200 203 174 174 174 165 164 165 163 162 163 154 153 154 +-153 152 153 153 152 153 158 157 158 163 162 163 137 136 137 60 73 81 +-13 16 17 4 0 0 4 0 0 4 3 3 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-5 5 5 4 3 3 4 3 3 6 6 6 6 6 6 6 6 6 +-6 6 6 6 6 6 6 6 6 37 38 37 167 166 167 244 246 246 +-244 246 246 220 221 221 205 212 215 205 212 215 220 221 221 193 200 203 +-220 221 221 244 246 246 244 246 246 244 246 246 137 136 137 37 38 37 +-3 2 2 0 0 0 1 1 1 5 5 5 5 5 5 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 1 1 1 +-0 0 0 5 5 5 43 57 68 153 152 153 193 200 203 220 221 221 +-177 184 187 174 174 174 167 166 167 166 165 166 158 157 158 157 156 157 +-158 157 158 166 165 166 156 155 156 85 115 134 13 16 17 4 0 0 +-4 0 0 4 0 0 5 5 5 5 5 5 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-5 5 5 4 3 3 6 6 6 6 6 6 4 0 0 6 6 6 +-6 6 6 6 6 6 6 6 6 6 6 6 13 16 17 60 73 81 +-177 184 187 220 221 221 220 221 221 220 221 221 205 212 215 220 221 221 +-220 221 221 205 212 215 220 221 221 244 246 246 244 246 246 205 212 215 +-125 124 125 30 32 34 0 0 0 0 0 0 2 2 2 5 5 5 +-4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 1 0 0 +-37 38 37 131 129 131 205 212 215 220 221 221 193 200 203 174 174 174 +-174 174 174 174 174 174 167 166 167 165 164 165 166 165 166 167 166 167 +-158 157 158 125 124 125 37 38 37 4 0 0 4 0 0 4 0 0 +-4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 5 5 5 4 3 3 4 3 3 6 6 6 6 6 6 +-4 0 0 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 +-26 28 28 125 124 125 205 212 215 220 221 221 220 221 221 220 221 221 +-205 212 215 220 221 221 205 212 215 220 221 221 220 221 221 244 246 246 +-244 246 246 190 197 201 60 74 84 16 19 21 4 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 16 19 21 120 125 127 +-177 184 187 220 221 221 205 212 215 177 184 187 174 174 174 177 184 187 +-174 174 174 174 174 174 167 166 167 174 174 174 166 165 166 137 136 137 +-60 73 81 13 16 17 4 0 0 4 0 0 4 3 3 6 6 6 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-5 5 5 4 3 3 5 5 5 4 3 3 6 6 6 4 0 0 +-6 6 6 6 6 6 4 0 0 6 6 6 4 0 0 6 6 6 +-6 6 6 6 6 6 37 38 37 137 136 137 193 200 203 220 221 221 +-220 221 221 205 212 215 220 221 221 205 212 215 205 212 215 220 221 221 +-220 221 221 220 221 221 244 246 246 166 165 166 43 57 68 2 2 2 +-0 0 0 4 0 0 16 19 21 60 73 81 157 156 157 202 210 214 +-220 221 221 193 200 203 177 184 187 177 184 187 177 184 187 174 174 174 +-174 174 174 174 174 174 174 174 174 157 156 157 60 74 84 24 26 27 +-4 0 0 4 0 0 4 0 0 6 6 6 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 5 5 5 4 3 3 5 5 5 6 6 6 +-6 6 6 4 0 0 6 6 6 6 6 6 6 6 6 4 0 0 +-4 0 0 4 0 0 6 6 6 24 26 27 60 73 81 167 166 167 +-220 221 221 220 221 221 220 221 221 205 212 215 205 212 215 205 212 215 +-205 212 215 220 221 221 220 221 221 220 221 221 205 212 215 137 136 137 +-60 74 84 125 124 125 137 136 137 190 197 201 220 221 221 193 200 203 +-177 184 187 177 184 187 177 184 187 174 174 174 174 174 174 177 184 187 +-190 197 201 174 174 174 125 124 125 37 38 37 6 6 6 4 0 0 +-4 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 5 5 5 5 5 5 4 3 3 6 6 6 +-4 0 0 6 6 6 6 6 6 6 6 6 4 0 0 6 6 6 +-6 6 6 6 6 6 4 0 0 4 0 0 6 6 6 6 6 6 +-125 124 125 193 200 203 244 246 246 220 221 221 205 212 215 205 212 215 +-205 212 215 193 200 203 205 212 215 205 212 215 220 221 221 220 221 221 +-193 200 203 193 200 203 205 212 215 193 200 203 193 200 203 177 184 187 +-190 197 201 190 197 201 174 174 174 190 197 201 193 200 203 190 197 201 +-153 152 153 60 73 81 4 0 0 4 0 0 4 0 0 3 2 2 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 +-6 6 6 4 3 3 4 3 3 4 3 3 6 6 6 6 6 6 +-4 0 0 6 6 6 6 6 6 6 6 6 4 0 0 4 0 0 +-4 0 0 26 28 28 131 129 131 220 221 221 244 246 246 220 221 221 +-205 212 215 193 200 203 205 212 215 193 200 203 193 200 203 205 212 215 +-220 221 221 193 200 203 193 200 203 193 200 203 190 197 201 174 174 174 +-174 174 174 190 197 201 193 200 203 193 200 203 167 166 167 125 124 125 +-6 6 6 4 0 0 4 0 0 4 3 3 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 +-5 5 5 4 3 3 5 5 5 6 6 6 4 3 3 5 5 5 +-6 6 6 6 6 6 4 0 0 6 6 6 6 6 6 6 6 6 +-4 0 0 4 0 0 6 6 6 41 54 63 158 157 158 220 221 221 +-220 221 221 220 221 221 193 200 203 193 200 203 193 200 203 190 197 201 +-190 197 201 190 197 201 190 197 201 190 197 201 174 174 174 193 200 203 +-193 200 203 220 221 221 174 174 174 125 124 125 37 38 37 4 0 0 +-4 0 0 4 3 3 6 6 6 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 4 3 3 4 3 3 4 3 3 5 5 5 +-4 3 3 6 6 6 5 5 5 4 3 3 6 6 6 6 6 6 +-6 6 6 6 6 6 4 0 0 4 0 0 13 16 17 60 73 81 +-174 174 174 220 221 221 220 221 221 205 212 215 190 197 201 174 174 174 +-193 200 203 174 174 174 190 197 201 174 174 174 193 200 203 220 221 221 +-193 200 203 131 129 131 37 38 37 6 6 6 4 0 0 4 0 0 +-6 6 6 6 6 6 4 3 3 5 5 5 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 +-5 5 5 4 3 3 4 3 3 5 5 5 4 3 3 4 3 3 +-5 5 5 6 6 6 6 6 6 4 0 0 6 6 6 6 6 6 +-6 6 6 125 124 125 174 174 174 220 221 221 220 221 221 193 200 203 +-193 200 203 193 200 203 193 200 203 193 200 203 220 221 221 158 157 158 +-60 73 81 6 6 6 4 0 0 4 0 0 5 5 5 6 6 6 +-5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 5 5 5 4 3 3 5 5 5 4 3 3 +-5 5 5 5 5 5 6 6 6 6 6 6 4 0 0 4 0 0 +-4 0 0 4 0 0 26 28 28 125 124 125 174 174 174 193 200 203 +-193 200 203 174 174 174 193 200 203 167 166 167 125 124 125 6 6 6 +-6 6 6 6 6 6 4 0 0 6 6 6 6 6 6 5 5 5 +-4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 +-4 3 3 6 6 6 4 0 0 6 6 6 6 6 6 6 6 6 +-6 6 6 4 0 0 4 0 0 6 6 6 37 38 37 125 124 125 +-153 152 153 131 129 131 125 124 125 37 38 37 6 6 6 6 6 6 +-6 6 6 4 0 0 6 6 6 6 6 6 4 3 3 5 5 5 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 5 5 5 4 3 3 5 5 5 4 3 3 +-6 6 6 6 6 6 4 0 0 4 0 0 6 6 6 6 6 6 +-24 26 27 24 26 27 6 6 6 6 6 6 6 6 6 4 0 0 +-6 6 6 6 6 6 4 0 0 6 6 6 5 5 5 4 3 3 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 5 5 5 4 3 3 5 5 5 6 6 6 +-4 0 0 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 +-6 6 6 6 6 6 6 6 6 4 0 0 6 6 6 6 6 6 +-4 0 0 6 6 6 6 6 6 4 3 3 5 5 5 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 5 5 5 +-5 5 5 5 5 5 4 0 0 6 6 6 4 0 0 6 6 6 +-6 6 6 6 6 6 6 6 6 4 0 0 6 6 6 4 0 0 +-6 6 6 4 3 3 5 5 5 4 3 3 5 5 5 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 +-4 3 3 6 6 6 4 3 3 6 6 6 6 6 6 6 6 6 +-4 0 0 6 6 6 4 0 0 6 6 6 6 6 6 6 6 6 +-6 6 6 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 4 3 3 5 5 5 4 0 0 6 6 6 +-6 6 6 4 0 0 6 6 6 6 6 6 4 0 0 6 6 6 +-4 3 3 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 5 5 5 4 3 3 5 5 5 6 6 6 4 3 3 +-4 3 3 6 6 6 6 6 6 4 3 3 6 6 6 4 3 3 +-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 6 6 6 +-5 5 5 4 3 3 4 3 3 4 3 3 5 5 5 5 5 5 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 +-5 5 5 4 3 3 5 5 5 5 5 5 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 +-4 4 4 4 4 4 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 6 9 23 30 36 44 54 65 57 72 88 44 54 65 6 12 15 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 31 41 52 ++103 134 161 163 205 246 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 143 185 225 ++82 108 129 8 14 16 0 2 0 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 17 24 30 126 162 196 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 161 203 243 92 119 140 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 44 54 65 154 195 235 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 138 174 208 21 27 33 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 70 96 117 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 157 198 239 49 59 70 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 3 6 52 62 74 170 212 252 170 212 252 170 212 252 170 212 252 129 165 199 ++82 108 129 149 191 231 170 212 252 170 212 252 170 212 252 129 165 199 82 108 129 149 191 231 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 166 207 248 37 48 59 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 21 13 4 31 23 12 0 2 0 0 2 0 105 75 32 155 111 43 23 15 7 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 6 9 3 10 13 146 188 228 170 212 252 170 212 252 170 212 252 157 198 239 0 6 9 ++0 2 0 52 62 74 170 212 252 170 212 252 154 195 235 0 6 9 0 2 0 55 66 77 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 151 193 233 17 24 30 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++10 12 8 23 15 7 139 99 44 206 148 61 67 49 21 0 2 0 125 92 35 206 148 61 ++15 9 7 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 96 127 154 170 212 252 170 212 252 170 212 252 170 212 252 92 119 140 21 22 20 ++10 12 8 53 68 84 170 212 252 170 212 252 92 119 140 10 12 8 7 10 5 53 68 84 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 134 170 204 ++0 6 9 0 3 6 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 21 22 20 ++62 64 61 38 40 37 0 2 0 34 26 8 212 153 66 64 46 18 0 2 0 170 124 49 ++180 132 57 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++18 22 24 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 65 87 102 115 117 114 ++43 44 42 88 115 136 170 212 252 170 212 252 68 83 99 108 110 107 60 62 59 88 115 136 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++80 98 121 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 10 12 8 56 58 55 95 96 94 178 180 177 215 217 214 198 200 197 ++158 160 156 138 140 137 82 83 81 0 2 0 64 46 18 228 167 73 23 15 7 41 31 10 ++250 179 73 55 39 17 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++75 94 116 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 63 78 94 0 2 0 ++0 2 0 126 162 196 170 212 252 170 212 252 57 72 88 0 2 0 0 2 0 126 162 196 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++157 198 239 8 14 16 0 6 9 0 2 0 45 47 44 195 197 194 192 194 191 38 40 37 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 192 194 191 234 236 233 176 178 175 118 120 117 143 145 142 176 178 175 ++215 217 214 234 236 233 234 236 233 104 106 103 0 2 0 142 101 40 134 100 43 0 2 0 ++164 119 51 170 124 49 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 115 152 185 8 14 16 ++49 59 70 166 207 248 170 212 252 170 212 252 119 150 178 8 14 16 55 66 77 166 207 248 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 92 119 140 0 2 0 0 2 0 200 202 199 254 255 252 254 255 252 244 246 243 ++40 41 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 38 40 37 234 236 233 234 236 233 234 236 233 135 137 134 215 217 214 171 173 170 ++141 142 139 138 140 137 138 140 137 135 137 134 31 32 30 3 6 2 212 153 66 15 9 7 ++78 58 25 248 178 79 41 31 10 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 3 6 21 27 33 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 163 205 246 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 154 195 235 0 6 9 82 83 81 254 255 252 254 255 252 254 255 252 254 255 252 ++188 190 187 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 62 64 61 234 236 233 234 236 233 234 236 233 198 200 197 131 133 130 198 200 197 ++232 234 231 234 236 233 234 236 233 234 236 233 152 154 151 0 2 0 147 105 44 67 49 21 ++23 15 7 250 179 73 158 114 46 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 6 9 61 76 92 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 154 195 235 103 134 161 80 98 121 ++52 62 74 18 22 24 0 2 0 3 10 13 38 45 51 80 98 121 151 193 233 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 109 141 168 0 2 0 169 171 168 254 255 252 254 255 252 254 255 252 254 255 252 ++226 228 225 65 66 64 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 43 44 42 234 236 233 234 236 233 234 236 233 234 236 233 131 133 130 192 194 191 ++152 154 151 141 142 139 141 142 139 141 142 139 158 160 156 3 6 2 82 62 28 129 95 39 ++0 2 0 206 148 61 248 178 79 21 13 4 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 96 115 138 ++170 212 252 170 212 252 170 212 252 170 212 252 129 165 199 18 22 24 0 2 0 0 2 0 ++34 26 8 75 55 22 114 83 33 95 68 30 55 39 17 7 0 0 0 6 9 84 103 125 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 84 103 125 0 2 0 229 231 228 254 255 252 254 255 252 254 255 252 171 173 170 ++0 2 0 0 2 0 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 18 20 17 234 236 233 234 236 233 234 236 233 234 236 233 138 140 137 178 180 177 ++226 228 225 234 236 233 234 236 233 234 236 233 231 233 230 45 47 44 23 15 7 190 136 56 ++0 2 0 147 105 44 250 179 73 64 46 18 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 122 159 192 ++170 212 252 170 212 252 170 212 252 126 162 196 0 2 0 26 20 13 190 136 56 245 175 76 ++250 179 73 161 117 49 164 119 51 245 175 76 250 179 73 206 148 61 75 55 22 0 2 0 ++126 162 196 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 68 83 99 0 2 0 252 254 250 254 255 252 254 255 252 254 255 252 71 73 70 ++8 14 16 88 115 136 17 24 30 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 232 234 231 234 236 233 234 236 233 234 236 233 215 217 214 148 150 147 ++183 185 181 141 142 139 135 137 134 135 137 134 141 142 139 87 89 86 0 2 0 202 145 58 ++3 6 2 88 66 26 250 179 73 109 79 35 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 157 198 239 ++170 212 252 170 212 252 166 207 248 26 33 39 26 20 13 224 163 69 250 179 73 250 179 73 ++250 179 73 197 142 62 202 145 58 250 179 73 250 179 73 250 179 73 234 172 70 21 13 4 ++38 45 51 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 52 62 74 21 22 20 254 255 252 254 255 252 254 255 252 254 255 252 21 22 20 ++49 59 70 170 212 252 166 207 248 91 123 149 8 14 16 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 215 217 214 234 236 233 234 236 233 234 236 233 234 236 233 123 125 122 ++188 190 187 229 231 228 234 236 233 234 236 233 222 224 221 118 120 117 0 2 0 168 123 54 ++34 26 8 67 49 21 250 179 73 134 100 43 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 34 41 47 170 212 252 ++170 212 252 170 212 252 85 112 133 0 2 0 164 119 51 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 129 95 39 ++0 2 0 138 174 208 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 34 44 55 45 47 44 254 255 252 254 255 252 254 255 252 254 255 252 24 22 25 ++52 62 74 170 212 252 170 212 252 170 212 252 138 174 208 10 16 18 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 178 180 177 234 236 233 234 236 233 234 236 233 234 236 233 141 142 139 ++198 200 197 148 150 147 135 137 134 135 137 134 148 150 147 123 125 122 0 2 0 190 136 56 ++21 13 4 78 58 25 250 179 73 129 95 39 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 82 108 129 170 212 252 ++170 212 252 170 212 252 23 30 36 58 42 19 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 147 105 44 ++0 2 0 139 181 221 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 34 41 47 45 47 44 254 255 252 254 255 252 254 255 252 254 255 252 56 58 55 ++25 32 38 170 212 252 170 212 252 170 212 252 170 212 252 138 174 208 10 16 18 0 6 9 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 91 93 90 234 236 233 234 236 233 234 236 233 234 236 233 126 127 125 ++169 171 168 222 224 221 234 236 233 229 231 228 178 180 177 71 73 70 0 2 0 212 153 66 ++0 2 0 95 68 30 250 179 73 119 87 37 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 138 174 208 170 212 252 ++170 212 252 154 195 235 0 2 0 125 92 35 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 119 87 37 ++0 2 0 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 57 72 88 7 10 5 252 254 250 254 255 252 254 255 252 254 255 252 95 96 94 ++0 6 9 166 207 248 170 212 252 170 212 252 170 212 252 170 212 252 138 174 208 8 14 16 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 7 10 5 222 224 221 234 236 233 234 236 233 234 236 233 141 142 139 ++183 185 181 138 140 137 131 133 130 141 142 139 192 194 191 102 104 101 0 2 0 224 163 69 ++0 2 0 105 75 32 250 179 73 55 39 17 7 0 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 21 27 33 170 212 252 170 212 252 ++170 212 252 115 152 185 0 2 0 180 132 57 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 228 167 73 10 12 8 ++38 45 51 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 82 108 129 0 2 0 222 224 221 254 255 252 254 255 252 254 255 252 158 160 156 ++0 2 0 92 119 140 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 122 159 192 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 141 142 139 234 236 233 234 236 233 234 236 233 131 133 130 ++185 187 183 231 233 230 222 224 221 158 160 156 138 140 137 48 50 48 3 6 2 250 179 73 ++134 100 43 206 148 61 218 158 64 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 75 94 116 170 212 252 170 212 252 ++170 212 252 92 119 140 0 2 0 224 163 69 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 87 61 23 7 0 0 ++134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 109 141 168 0 2 0 178 180 177 254 255 252 254 255 252 254 255 252 252 254 250 ++39 43 45 10 16 18 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++88 115 136 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 45 47 44 234 236 233 234 236 233 234 236 233 131 133 130 ++148 150 147 138 140 137 148 150 147 210 212 209 152 154 151 26 27 25 29 21 8 250 179 73 ++250 179 73 234 172 70 55 39 17 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 126 162 196 170 212 252 170 212 252 ++170 212 252 103 134 161 0 2 0 202 145 58 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 238 175 73 75 55 22 0 2 0 75 102 123 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 140 177 211 0 2 0 135 137 134 254 255 252 254 255 252 254 255 252 254 255 252 ++183 185 181 0 2 0 75 94 116 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 57 72 88 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 162 164 161 234 236 233 234 236 233 135 137 134 ++226 228 225 198 200 197 104 106 103 15 17 14 0 2 0 15 9 7 147 105 44 250 179 73 ++248 178 79 55 39 17 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 6 9 21 27 33 170 212 252 170 212 252 170 212 252 ++170 212 252 122 159 192 0 2 0 175 129 54 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 250 179 73 202 145 58 55 39 17 0 2 0 82 108 129 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 12 17 20 60 62 59 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 69 71 68 0 6 9 143 185 225 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 159 201 241 26 33 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 7 10 5 162 164 161 215 217 214 95 96 94 ++56 58 55 0 2 0 0 2 0 0 2 0 61 44 16 238 175 73 250 179 73 250 179 73 ++218 158 64 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 88 115 136 170 212 252 170 212 252 170 212 252 ++170 212 252 143 185 225 0 2 0 147 105 44 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 212 153 66 95 68 30 0 2 0 8 14 16 103 134 161 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 68 83 99 0 2 0 231 233 230 254 255 252 254 255 252 254 255 252 ++254 255 252 210 212 209 0 6 9 53 68 84 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 126 162 196 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 7 0 0 23 15 7 250 179 73 250 179 73 250 179 73 ++250 179 73 29 21 8 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 6 9 154 195 235 170 212 252 170 212 252 170 212 252 ++170 212 252 166 207 248 0 2 0 52 36 13 158 114 46 180 132 57 161 117 49 119 87 37 ++41 31 10 0 2 0 0 2 0 72 87 103 154 195 235 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 115 152 185 0 2 0 152 154 151 254 255 252 238 241 237 85 87 84 ++229 231 228 254 255 252 99 101 98 0 2 0 126 162 196 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 63 78 94 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 202 145 58 250 179 73 250 179 73 ++250 179 73 105 75 32 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 32 39 45 0 2 0 57 72 88 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 85 112 133 12 17 20 0 2 0 0 2 0 0 2 0 0 2 0 ++34 41 47 92 110 133 143 185 225 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 166 207 248 6 12 15 71 73 70 254 255 252 229 231 228 0 2 0 ++141 142 139 254 255 252 231 233 230 10 12 8 34 44 55 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 154 195 235 6 12 15 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 125 92 35 250 179 73 250 179 73 ++250 179 73 180 132 57 0 2 0 0 2 0 0 2 0 0 2 0 3 10 13 68 83 99 ++129 165 199 85 112 133 0 2 0 122 159 192 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 126 162 196 119 156 189 134 170 204 149 191 231 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 57 72 88 3 6 2 242 244 240 254 255 252 35 37 34 ++78 80 77 254 255 252 254 255 252 128 130 127 0 2 0 105 137 164 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 91 123 149 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 55 39 17 250 179 73 250 179 73 ++250 179 73 245 175 76 7 10 5 0 2 0 44 54 65 103 134 161 161 203 243 170 212 252 ++170 212 252 21 27 33 25 32 38 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 61 76 92 0 2 0 242 244 240 254 255 252 102 104 101 ++10 12 8 231 233 230 254 255 252 244 246 243 26 27 25 21 27 33 159 201 241 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 32 39 45 0 6 9 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 218 158 64 250 179 73 ++250 179 73 250 179 73 75 55 22 0 2 0 161 203 243 170 212 252 170 212 252 170 212 252 ++115 147 174 0 2 0 91 123 149 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 159 201 241 146 188 228 ++140 177 211 134 170 204 146 188 228 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 17 24 30 62 64 61 254 255 252 254 255 252 215 217 214 ++0 2 0 102 104 101 254 255 252 254 255 252 166 168 165 0 2 0 72 87 103 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 129 165 199 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 105 75 32 250 179 73 ++250 179 73 250 179 73 150 108 46 0 2 0 113 145 172 170 212 252 170 212 252 170 212 252 ++49 59 70 3 10 13 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 166 207 248 109 141 168 65 87 102 28 35 41 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 6 9 28 35 41 70 96 117 138 174 208 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 0 2 0 102 104 101 254 255 252 254 255 252 254 255 252 ++102 104 101 0 2 0 192 194 191 254 255 252 254 255 252 78 80 77 0 2 0 122 159 192 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 34 44 55 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 61 76 92 154 195 235 0 6 9 29 21 8 250 179 73 ++250 179 73 250 179 73 224 163 69 0 2 0 68 83 99 170 212 252 170 212 252 143 179 213 ++0 2 0 72 87 103 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++161 203 243 96 115 138 17 24 30 0 2 0 0 2 0 45 47 44 102 104 101 123 125 122 ++138 140 137 143 145 142 115 117 114 82 83 81 43 44 42 0 2 0 0 2 0 32 39 45 ++126 162 196 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 0 2 0 85 87 84 254 255 252 254 255 252 254 255 252 ++242 244 240 27 29 27 35 37 34 254 255 252 254 255 252 231 233 230 10 12 8 21 27 33 ++159 201 241 170 212 252 170 212 252 170 212 252 170 212 252 163 205 246 0 6 9 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 6 9 44 54 65 170 212 252 170 212 252 34 44 55 0 2 0 82 62 28 ++109 79 35 224 163 69 250 179 73 52 36 13 15 20 22 170 212 252 170 212 252 75 89 106 ++0 2 0 143 179 213 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 134 170 204 ++25 32 38 0 2 0 40 41 39 155 157 153 238 241 237 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 210 212 209 115 117 114 18 20 17 ++0 2 0 68 83 99 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 52 62 74 7 10 5 234 236 233 254 255 252 254 255 252 ++254 255 252 195 197 194 102 104 101 254 255 252 254 255 252 254 255 252 162 164 161 0 2 0 ++72 87 103 170 212 252 170 212 252 170 212 252 170 212 252 119 156 189 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 115 147 174 170 212 252 91 123 149 0 2 0 0 2 0 6 12 15 ++0 2 0 15 9 7 197 142 62 125 92 35 0 2 0 115 152 185 113 145 172 3 6 2 ++41 51 62 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 113 145 172 0 6 9 ++10 12 8 155 157 153 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 232 234 231 ++87 89 86 0 2 0 32 39 45 154 195 235 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 115 152 185 0 2 0 138 140 137 254 255 252 254 255 252 ++254 255 252 254 255 252 249 251 248 254 255 252 254 255 252 254 255 252 254 255 252 65 66 64 ++0 2 0 122 159 192 170 212 252 170 212 252 170 212 252 66 80 97 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 154 195 235 170 212 252 143 179 213 88 115 136 149 191 231 170 212 252 ++126 162 196 3 6 2 64 46 18 202 145 58 0 2 0 0 2 0 0 2 0 0 2 0 ++92 119 140 170 212 252 170 212 252 170 212 252 170 212 252 143 179 213 3 10 13 27 29 27 ++215 217 214 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 155 157 153 0 2 0 32 39 45 154 195 235 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 23 30 36 27 29 27 249 251 248 254 255 252 ++254 255 252 188 190 187 7 10 5 226 228 225 254 255 252 254 255 252 254 255 252 231 233 230 ++7 10 5 21 27 33 159 201 241 170 212 252 103 134 161 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 119 156 189 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 55 66 77 11 4 3 250 179 73 24 17 10 0 2 0 0 2 0 0 2 0 ++143 185 225 170 212 252 170 212 252 170 212 252 159 201 241 28 35 41 7 10 5 200 202 199 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 155 157 153 0 2 0 55 66 77 170 212 252 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 96 127 154 0 2 0 158 160 156 254 255 252 ++254 255 252 192 194 191 0 2 0 176 178 175 254 255 252 254 255 252 254 255 252 254 255 252 ++141 142 139 0 2 0 72 87 103 129 165 199 0 6 9 0 6 9 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 6 9 12 17 20 143 185 225 170 212 252 170 212 252 170 212 252 170 212 252 ++138 174 208 17 24 30 29 21 8 250 179 73 101 72 28 0 2 0 0 2 0 32 39 45 ++170 212 252 170 212 252 170 212 252 170 212 252 57 72 88 0 2 0 152 154 151 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 108 110 107 0 2 0 115 152 185 170 212 252 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 166 207 248 18 22 24 40 41 39 254 255 252 ++254 255 252 232 234 231 0 2 0 148 150 147 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 10 12 8 0 2 0 8 14 16 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 6 9 41 51 62 61 76 92 34 44 55 3 10 13 ++0 2 0 11 4 3 164 119 51 250 179 73 175 129 54 0 2 0 0 2 0 82 108 129 ++170 212 252 170 212 252 170 212 252 98 129 156 0 2 0 95 96 94 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 238 241 237 18 20 17 25 32 38 166 207 248 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 85 112 133 0 2 0 188 190 187 ++254 255 252 254 255 252 198 200 197 242 244 240 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 120 122 119 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 6 9 0 2 0 0 6 9 7 0 0 ++31 23 12 202 145 58 250 179 73 250 179 73 238 175 73 0 2 0 0 2 0 122 159 192 ++170 212 252 170 212 252 170 212 252 28 35 41 31 32 30 244 246 243 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 152 154 151 0 2 0 85 112 133 170 212 252 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 138 174 208 0 2 0 148 150 147 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 222 224 221 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++7 0 0 234 172 70 250 179 73 250 179 73 250 179 73 34 26 8 0 2 0 149 191 231 ++170 212 252 170 212 252 129 165 199 0 2 0 128 130 127 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 252 254 250 48 50 48 3 10 13 146 188 228 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 157 198 239 0 2 0 118 120 117 ++254 255 252 254 255 252 254 255 252 169 171 168 231 233 230 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 40 41 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 170 124 49 250 179 73 250 179 73 250 179 73 48 33 15 6 12 15 170 212 252 ++170 212 252 170 212 252 65 87 102 0 2 0 222 224 221 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 195 197 194 0 2 0 84 103 125 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 3 10 13 85 87 84 ++254 255 252 254 255 252 234 236 233 0 2 0 128 130 127 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 99 101 98 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 95 68 30 250 179 73 250 179 73 250 179 73 34 26 8 34 44 55 170 212 252 ++170 212 252 163 205 246 8 14 16 62 64 61 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 35 37 34 34 44 55 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 26 33 39 60 62 59 ++254 255 252 254 255 252 238 241 237 0 2 0 108 110 107 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 158 160 156 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 23 15 7 248 178 79 250 179 73 245 175 76 0 2 0 63 78 94 170 212 252 ++170 212 252 109 141 168 0 2 0 158 160 156 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 104 106 103 0 2 0 ++154 195 235 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 21 27 33 69 71 68 ++254 255 252 254 255 252 244 246 243 0 2 0 91 93 90 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 215 217 214 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 197 142 62 250 179 73 212 153 66 0 2 0 92 110 133 170 212 252 ++170 212 252 80 98 121 0 2 0 231 233 230 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 176 178 175 0 2 0 ++105 137 164 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 8 14 16 87 89 86 ++254 255 252 254 255 252 254 255 252 40 41 39 21 22 20 252 254 250 254 255 252 254 255 252 ++254 255 252 254 255 252 252 254 250 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 125 92 35 250 179 73 170 124 49 0 2 0 113 145 172 170 212 252 ++170 212 252 53 68 84 15 17 14 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 242 244 240 0 2 0 ++63 78 94 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 0 2 0 104 106 103 ++254 255 252 254 255 252 254 255 252 123 125 122 0 2 0 166 168 165 254 255 252 254 255 252 ++254 255 252 254 255 252 234 236 233 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 7 0 0 52 36 13 250 179 73 129 95 39 0 2 0 143 179 213 170 212 252 ++170 212 252 32 39 45 48 50 48 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 60 62 59 ++18 22 24 170 212 252 170 212 252 170 212 252 170 212 252 163 205 246 0 2 0 102 104 101 ++254 255 252 254 255 252 254 255 252 226 228 225 15 17 14 10 12 8 215 217 214 254 255 252 ++254 255 252 254 255 252 210 212 209 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 88 66 26 29 21 8 0 2 0 166 207 248 170 212 252 ++170 212 252 3 10 13 85 87 84 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 123 125 122 ++0 2 0 149 191 231 170 212 252 170 212 252 170 212 252 170 212 252 21 27 33 56 58 55 ++254 255 252 254 255 252 254 255 252 254 255 252 178 180 177 0 2 0 38 40 37 238 241 237 ++254 255 252 254 255 252 210 212 209 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 7 0 0 7 0 0 0 2 0 161 203 243 170 212 252 ++149 191 231 0 2 0 123 125 122 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 141 142 139 ++0 2 0 143 179 213 170 212 252 170 212 252 170 212 252 170 212 252 66 80 97 0 2 0 ++210 212 209 254 255 252 254 255 252 254 255 252 254 255 252 120 122 119 0 2 0 21 22 20 ++143 145 142 244 246 243 219 221 218 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 149 191 231 170 212 252 ++129 165 199 0 2 0 158 160 156 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 155 157 153 ++0 2 0 134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 143 185 225 0 6 9 ++69 71 68 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 71 73 70 0 2 0 ++0 2 0 0 2 0 40 41 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 139 181 221 170 212 252 ++129 165 199 0 2 0 162 164 161 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 169 171 168 ++0 2 0 119 156 189 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 75 94 116 ++0 2 0 135 137 134 254 255 252 254 255 252 254 255 252 254 255 252 69 71 68 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 134 170 204 170 212 252 ++134 170 204 0 2 0 152 154 151 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 183 185 181 ++0 2 0 113 145 172 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 166 207 248 ++44 54 65 0 2 0 162 164 161 254 255 252 254 255 252 254 255 252 35 37 34 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 126 162 196 170 212 252 ++138 174 208 0 2 0 143 145 142 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 198 200 197 ++0 2 0 103 134 161 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++157 198 239 28 35 41 0 2 0 188 190 187 254 255 252 252 254 250 3 6 2 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 115 152 185 170 212 252 ++143 179 213 0 2 0 135 137 134 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 210 212 209 ++0 2 0 91 123 149 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 146 188 228 0 6 9 26 27 25 242 244 240 176 178 175 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 105 137 164 170 212 252 ++143 185 225 0 2 0 128 130 127 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 185 187 183 ++0 2 0 105 137 164 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 163 205 246 0 2 0 0 2 0 102 104 101 60 62 59 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 80 98 121 170 212 252 ++149 191 231 0 2 0 118 120 117 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 143 145 142 ++0 2 0 134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 143 179 213 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 44 54 65 170 212 252 ++170 212 252 3 10 13 85 87 84 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 108 110 107 ++0 2 0 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 115 152 185 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 3 10 13 170 212 252 ++170 212 252 34 44 55 43 44 42 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 69 71 68 ++15 20 22 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++170 212 252 75 94 116 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 139 181 221 ++170 212 252 63 78 94 3 6 2 249 251 248 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 31 32 30 ++41 51 62 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++161 203 243 6 12 15 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 105 137 164 ++170 212 252 88 115 136 0 2 0 210 212 209 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 249 251 248 0 2 0 ++68 83 99 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++96 127 154 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 61 76 92 ++170 212 252 119 150 178 0 2 0 169 171 168 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 183 185 181 0 2 0 ++91 123 149 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 ++28 35 41 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 6 9 ++146 188 228 143 185 225 0 2 0 126 127 125 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 85 87 84 0 6 9 ++154 195 235 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 98 129 156 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++72 90 112 170 212 252 18 22 24 56 58 55 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 238 241 237 7 10 5 55 66 77 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 122 159 192 0 6 9 ++0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 122 159 192 72 87 103 0 2 0 229 231 228 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 152 154 151 0 2 0 113 145 172 ++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 139 181 221 8 14 16 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 18 22 24 109 141 168 0 2 0 148 150 147 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 56 58 55 12 17 20 166 207 248 ++170 212 252 170 212 252 170 212 252 170 212 252 146 188 228 23 30 36 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 101 72 28 202 145 58 ++180 132 57 0 2 0 38 45 51 3 10 13 69 71 68 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 200 202 199 0 2 0 75 89 106 170 212 252 ++170 212 252 170 212 252 170 212 252 109 141 168 8 14 16 0 2 0 21 13 4 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 7 0 0 0 2 0 101 72 28 218 158 64 250 179 73 250 179 73 ++250 179 73 139 99 44 0 2 0 8 14 16 0 2 0 238 241 237 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 244 246 243 38 40 37 3 10 13 139 181 221 170 212 252 ++170 212 252 161 203 243 66 80 97 0 2 0 31 23 12 191 142 60 248 183 74 180 132 57 ++44 34 15 0 2 0 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 23 15 7 190 136 56 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 150 108 46 0 2 0 0 2 0 82 83 81 222 224 221 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 102 104 101 0 2 0 98 129 156 170 212 252 163 205 246 ++98 129 156 23 30 36 0 2 0 82 62 28 234 172 70 248 183 74 248 183 74 248 183 74 ++248 183 74 158 114 46 29 21 8 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 64 46 18 109 79 35 150 108 46 224 163 69 250 179 73 ++250 179 73 250 179 73 250 179 73 158 114 46 0 2 0 0 2 0 3 6 2 115 117 114 ++234 236 233 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 176 178 175 0 2 0 57 72 88 146 188 228 80 98 121 8 14 16 ++0 2 0 24 17 10 158 114 46 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 ++248 183 74 248 183 74 242 178 77 58 42 19 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 7 0 0 0 2 0 0 2 0 67 49 21 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 228 167 73 95 68 30 0 2 0 0 2 0 ++0 2 0 52 54 51 108 110 107 162 164 161 219 221 218 254 255 252 254 255 252 254 255 252 ++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 252 254 250 ++219 221 218 178 180 177 18 20 17 6 12 15 26 33 39 0 2 0 0 2 0 52 36 13 ++164 119 51 242 178 77 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 242 178 77 ++187 138 56 175 129 54 158 114 46 82 62 28 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 78 58 25 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 234 172 70 142 101 40 ++44 34 15 10 12 8 0 2 0 0 2 0 0 2 0 18 20 17 60 62 59 71 73 70 ++82 83 81 95 96 94 104 106 103 118 120 117 115 117 114 78 80 77 40 41 39 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 44 34 15 105 75 32 191 142 60 248 183 74 ++248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 105 75 32 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 187 138 56 250 179 73 ++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 250 179 73 142 101 40 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 206 148 61 248 183 74 248 183 74 248 183 74 ++248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 161 117 49 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 228 167 73 250 179 73 ++238 175 73 190 136 56 158 114 46 234 172 70 250 179 73 250 179 73 250 179 73 250 179 73 ++250 179 73 147 105 44 0 2 0 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 67 49 21 248 183 74 248 183 74 248 183 74 ++248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 ++31 23 12 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 7 10 5 21 13 4 ++0 2 0 0 2 0 0 2 0 147 105 44 250 179 73 250 179 73 250 179 73 250 179 73 ++134 100 43 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 155 111 43 248 183 74 248 183 74 ++248 183 74 248 183 74 224 163 69 55 39 17 64 46 18 164 119 51 242 178 77 248 183 74 ++75 55 22 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 202 145 58 250 179 73 250 179 73 228 167 73 88 66 26 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 0 2 0 168 123 54 248 183 74 ++248 183 74 248 183 74 158 114 46 0 2 0 7 0 0 0 2 0 10 12 8 44 34 15 ++15 9 7 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 29 21 8 250 179 73 250 179 73 158 114 46 15 14 3 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 0 2 0 175 129 54 ++248 183 74 248 183 74 114 83 33 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 29 21 8 147 105 44 58 42 19 0 2 0 7 0 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++105 75 32 218 158 64 23 15 7 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 ++ +diff --git a/drivers/video/logo/logo_linux_mono.pbm b/drivers/video/logo/logo_linux_mono.pbm +index 2f14d9f..3d3c358 100644 +--- a/drivers/video/logo/logo_linux_mono.pbm ++++ b/drivers/video/logo/logo_linux_mono.pbm +@@ -1,203 +1,159 @@ +-P1 +-# Standard black and white Linux logo +-80 80 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 +-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 +-1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 +-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 0 1 +-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 1 1 1 0 1 1 1 0 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 +-1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-0 1 1 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 +-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 +-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 +-1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 1 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 1 +-1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 +-0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 +-1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 +-0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 +-1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 +-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 +-1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 +-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 +-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 +-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 +-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 0 +-0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0 +-0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 +-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 +-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 +-1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 +-1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 +-1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ++P2 ++80 78 ++255 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 255 255 255 255 255 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 255 255 255 0 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 255 255 255 255 255 0 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 0 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 ++255 0 0 0 0 0 0 0 0 0 ++0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 ++255 255 0 0 0 0 0 0 0 0 ++0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 0 0 255 255 255 255 ++255 255 0 0 0 0 0 0 0 0 ++0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 ++255 255 255 0 0 0 0 0 0 0 ++0 0 0 0 255 255 255 255 255 255 0 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 ++255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 255 255 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 0 255 255 0 0 255 255 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 0 255 255 255 0 0 255 ++255 255 255 255 255 255 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 0 0 255 255 255 0 255 ++255 255 255 255 255 255 255 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 0 0 255 255 255 0 0 ++255 255 255 255 255 255 255 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 0 0 255 255 255 0 ++0 255 255 255 255 255 255 255 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 0 0 255 255 255 0 ++0 255 255 255 255 255 255 255 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 255 255 255 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 ++0 0 255 255 255 255 255 255 0 0 ++0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 0 0 255 255 0 0 255 255 0 0 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 255 255 255 ++255 0 0 255 255 255 255 255 0 0 ++0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 0 0 255 0 0 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 ++255 0 0 255 255 255 255 0 0 0 ++0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 0 0 255 0 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 255 255 255 ++255 255 0 0 255 255 255 0 0 0 ++0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 255 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 255 255 255 255 0 255 255 255 ++255 255 255 0 0 255 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 255 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 0 255 255 255 ++255 255 255 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 ++255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 ++255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 ++255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 0 255 255 ++255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 255 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 255 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 0 0 255 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 0 255 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 0 0 ++255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 0 0 255 255 255 255 255 0 ++0 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 0 0 255 255 255 255 255 255 ++0 0 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 255 255 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 255 255 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 0 0 255 255 255 255 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 0 0 255 255 255 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 255 255 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 0 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 0 255 255 255 255 255 255 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++0 0 0 0 0 0 0 0 0 0 +diff --git a/drivers/video/logo/logo_linux_vga16.ppm b/drivers/video/logo/logo_linux_vga16.ppm +index 1850c15..f279f97 100644 +--- a/drivers/video/logo/logo_linux_vga16.ppm ++++ b/drivers/video/logo/logo_linux_vga16.ppm +@@ -1,1604 +1,18724 @@ + P3 +-# Standard 16-color Linux logo +-80 80 +-255 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 85 85 85 85 85 85 85 85 85 +- 85 85 85 85 85 85 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 85 85 85 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 85 85 85 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 170 170 170 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 170 170 170 170 170 85 85 85 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 170 170 170 170 170 +-170 170 170 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 85 85 85 170 170 170 170 170 170 170 170 170 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 170 170 170 255 255 255 255 255 255 +-255 255 255 170 170 170 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +-170 170 170 170 170 170 255 255 255 255 255 255 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 170 170 255 255 255 170 170 170 170 170 170 +-255 255 255 170 170 170 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +-170 170 170 0 0 0 0 0 0 255 255 255 +- 85 85 85 0 0 0 0 0 0 0 0 0 +-255 255 255 170 170 170 0 0 0 85 85 85 +-170 170 170 255 255 255 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +- 85 85 85 0 0 0 0 0 0 170 170 170 +- 85 85 85 0 0 0 0 0 0 0 0 0 +-255 255 255 85 85 85 0 0 0 0 0 0 +- 85 85 85 255 255 255 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +-170 170 170 0 0 0 0 0 0 170 170 170 +- 85 85 85 85 85 85 85 85 85 85 85 85 +-255 255 255 85 85 85 0 0 0 0 0 0 +- 85 85 85 255 255 255 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +-255 255 255 0 0 0 0 0 0 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 0 0 0 0 0 0 +- 85 85 85 255 255 255 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +-170 170 170 170 170 170 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 170 170 170 170 170 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 85 85 85 0 0 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 85 85 85 0 0 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 170 85 0 +-170 85 0 170 85 0 85 85 85 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 85 85 85 0 0 0 +- 85 85 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 85 85 85 0 0 0 +- 0 0 0 85 85 85 170 170 170 85 85 85 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 85 85 85 0 0 0 +- 85 85 85 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 170 170 170 170 170 170 170 170 0 0 0 +- 0 0 0 0 0 0 170 170 170 170 170 170 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 85 85 85 170 170 170 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 170 170 170 170 170 +-170 170 170 170 170 170 170 170 170 85 85 85 +- 0 0 0 0 0 0 85 85 85 85 85 85 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 85 85 85 170 170 170 170 170 170 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 170 170 170 170 170 170 170 170 170 170 170 +-255 255 255 255 255 255 255 255 255 170 170 170 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 85 85 85 +-255 255 255 255 255 255 170 170 170 170 170 170 +-170 170 170 170 170 170 170 170 170 170 170 170 +-170 170 170 170 170 170 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 170 170 170 +-255 255 255 255 255 255 170 170 170 170 170 170 +-170 170 170 170 170 170 170 170 170 170 170 170 +-170 170 170 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-170 170 170 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 85 85 85 255 255 255 +-255 255 255 255 255 255 255 255 255 170 170 170 +-170 170 170 170 170 170 170 170 170 170 170 170 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 85 85 85 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 85 85 85 170 170 170 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 170 170 170 170 170 170 170 170 170 +-255 255 255 255 255 255 255 255 255 170 170 170 +-170 170 170 170 170 170 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-170 170 170 170 170 170 170 170 170 170 170 170 +-170 170 170 170 170 170 170 170 170 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 170 170 170 170 170 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-170 170 170 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 170 170 170 +-170 170 170 170 170 170 170 170 170 85 85 85 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 170 170 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 170 170 170 170 170 170 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 85 85 85 0 0 0 0 0 0 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 170 170 170 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 170 170 170 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-170 170 170 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +- 0 0 0 0 0 0 85 85 85 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 0 0 0 85 85 85 +- 85 85 85 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +- 0 0 0 85 85 85 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 0 0 0 85 85 85 +- 85 85 85 0 0 0 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 85 85 85 +- 0 0 0 170 170 170 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 85 85 85 0 0 0 +- 0 0 0 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 85 85 85 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 85 85 85 0 0 0 0 0 0 +-170 170 170 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 0 0 0 +- 85 85 85 85 85 85 85 85 85 85 85 85 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 0 0 0 170 85 0 +-255 255 85 170 85 0 0 0 0 0 0 0 +- 85 85 85 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 85 85 85 85 85 85 0 0 0 +- 0 0 0 85 85 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 0 0 0 +- 0 0 0 85 85 85 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 85 170 85 0 255 255 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 85 85 85 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +- 0 0 0 0 0 0 85 85 85 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 85 +-170 85 0 255 255 85 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 0 0 0 0 0 0 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 170 85 0 +-255 255 85 170 85 0 255 255 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-255 255 85 170 85 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 0 0 0 0 0 0 0 0 0 +- 85 85 85 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 85 +-170 85 0 255 255 85 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 255 255 85 +-170 85 0 255 255 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 0 0 0 0 0 0 +- 0 0 0 85 85 85 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 0 0 0 +- 0 0 0 0 0 0 85 85 85 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 170 170 170 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 170 170 170 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 170 170 170 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 170 170 170 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 0 0 0 0 0 0 0 0 0 +- 85 85 85 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 170 170 170 85 85 85 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 85 85 85 85 85 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-170 170 170 85 85 85 85 85 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 170 170 170 +- 85 85 85 0 0 0 0 0 0 170 85 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 85 85 85 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-170 170 170 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-170 170 170 85 85 85 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 170 85 0 +-170 85 0 170 170 170 255 255 255 255 255 255 +-255 255 255 255 255 255 255 255 255 255 255 255 +-255 255 255 255 255 255 170 170 170 85 85 85 +- 85 85 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 170 85 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 170 85 0 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 170 85 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 85 85 85 170 85 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 170 85 0 170 85 0 170 85 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 170 85 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 85 85 85 85 85 85 85 85 85 85 85 85 +- 85 85 85 85 85 85 85 85 85 85 85 85 +- 85 85 85 85 85 85 85 85 85 0 0 0 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-170 85 0 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 255 255 85 170 85 0 +-170 85 0 170 85 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 255 255 85 170 85 0 +-255 255 85 170 85 0 170 85 0 170 85 0 +- 85 85 85 85 85 85 85 85 85 85 85 85 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 85 85 85 +- 85 85 85 85 85 85 85 85 85 170 85 0 +-170 85 0 170 85 0 170 85 0 255 255 85 +-170 85 0 255 255 85 170 85 0 170 85 0 +-170 85 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +-170 85 0 170 85 0 170 85 0 170 85 0 +-170 85 0 170 85 0 170 85 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 +- 0 0 0 0 0 0 0 0 0 0 0 0 ++# CREATOR: GIMP PNM Filter Version 1.1 ++80 78 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++170 ++170 ++170 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++170 ++170 ++170 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++170 ++170 ++170 ++85 ++85 ++85 ++170 ++170 ++170 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++255 ++255 ++255 ++170 ++170 ++170 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++170 ++170 ++170 ++170 ++170 ++170 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++85 ++85 ++255 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++170 ++170 ++170 ++0 ++0 ++0 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++255 ++255 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++170 ++170 ++170 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++255 ++170 ++170 ++170 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++85 ++85 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++85 ++85 ++85 ++255 ++255 ++85 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 ++0 diff --git a/kernels/linux-libre-grsec/change-default-console-loglevel.patch b/kernels/linux-libre-grsec/change-default-console-loglevel.patch new file mode 100644 index 000000000..90111a44b --- /dev/null +++ b/kernels/linux-libre-grsec/change-default-console-loglevel.patch @@ -0,0 +1,12 @@ +diff -upr linux-3.12.orig/kernel/printk/printk.c linux-3.12/kernel/printk/printk.c +--- linux-3.12.orig/kernel/printk/printk.c 2013-11-03 21:41:51.000000000 -0200 ++++ linux-3.12/kernel/printk/printk.c 2014-01-04 15:35:27.854329503 -0200 +@@ -59,7 +59,7 @@ + + /* We show everything that is MORE important than this.. */ + #define MINIMUM_CONSOLE_LOGLEVEL 1 /* Minimum loglevel we let people use */ +-#define DEFAULT_CONSOLE_LOGLEVEL 7 /* anything MORE serious than KERN_DEBUG */ ++#define DEFAULT_CONSOLE_LOGLEVEL 4 /* anything MORE serious than KERN_WARNING */ + + int console_printk[4] = { + DEFAULT_CONSOLE_LOGLEVEL, /* console_loglevel */ diff --git a/kernels/linux-libre-grsec/config.i686 b/kernels/linux-libre-grsec/config.i686 new file mode 100644 index 000000000..009fad256 --- /dev/null +++ b/kernels/linux-libre-grsec/config.i686 @@ -0,0 +1,6638 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/x86 3.12.0-1 Kernel Configuration +# +# CONFIG_64BIT is not set +CONFIG_X86_32=y +CONFIG_X86=y +CONFIG_INSTRUCTION_DECODER=y +CONFIG_OUTPUT_FORMAT="elf32-i386" +CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_HAVE_LATENCYTOP_SUPPORT=y +CONFIG_MMU=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_CPU_AUTOPROBE=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +# CONFIG_ZONE_DMA32 is not set +# CONFIG_AUDIT_ARCH is not set +CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_X86_32_SMP=y +CONFIG_X86_HT=y +CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" +CONFIG_ARCH_CPU_PROBE_RELEASE=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="-LIBRE-GRSEC" +CONFIG_LOCALVERSION_AUTO=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_BZIP2 is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_XZ is not set +# CONFIG_KERNEL_LZO is not set +# CONFIG_KERNEL_LZ4 is not set +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_FHANDLE=y +CONFIG_AUDIT=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_WATCH=y +CONFIG_AUDIT_TREE=y +CONFIG_AUDIT_LOGINUID_IMMUTABLE=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_IRQ_DOMAIN=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +CONFIG_CLOCKSOURCE_WATCHDOG=y +CONFIG_KTIME_SCALAR=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y + +# +# RCU Subsystem +# +CONFIG_TREE_PREEMPT_RCU=y +CONFIG_PREEMPT_RCU=y +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_FANOUT=32 +CONFIG_RCU_FANOUT_LEAF=16 +# CONFIG_RCU_FANOUT_EXACT is not set +CONFIG_RCU_FAST_NO_HZ=y +# CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_BOOST is not set +CONFIG_RCU_NOCB_CPU=y +CONFIG_RCU_NOCB_CPU_NONE=y +# CONFIG_RCU_NOCB_CPU_ZERO is not set +# CONFIG_RCU_NOCB_CPU_ALL is not set +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=19 +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_RESOURCE_COUNTERS=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +# CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y +# CONFIG_CGROUP_HUGETLB is not set +# CONFIG_CGROUP_PERF is not set +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +# CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +# CONFIG_USER_NS is not set +CONFIG_PID_NS=y +CONFIG_NET_NS=y +# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set +CONFIG_SCHED_AUTOGROUP=y +CONFIG_MM_OWNER=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +CONFIG_RD_BZIP2=y +CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y +CONFIG_RD_LZO=y +CONFIG_RD_LZ4=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +# CONFIG_EXPERT is not set +CONFIG_UID16=y +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_PCSPKR_PLATFORM=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_PCI_QUIRKS=y +# CONFIG_EMBEDDED is not set +CONFIG_HAVE_PERF_EVENTS=y + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_HAVE_OPROFILE=y +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +CONFIG_KPROBES_ON_FTRACE=y +CONFIG_UPROBES=y +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_KRETPROBES=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_USE_GENERIC_SMP_HELPERS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_MODULES_USE_ELF_REL=y +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OLD_SIGACTION=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +CONFIG_STOP_MACHINE=y +CONFIG_BLOCK=y +CONFIG_LBDAF=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +# CONFIG_BLK_DEV_INTEGRITY is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_CMDLINE_PARSER is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +CONFIG_AIX_PARTITION=y +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +CONFIG_BSD_DISKLABEL=y +CONFIG_MINIX_SUBPARTITION=y +CONFIG_SOLARIS_X86_PARTITION=y +# CONFIG_UNIXWARE_DISKLABEL is not set +CONFIG_LDM_PARTITION=y +# CONFIG_LDM_DEBUG is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=m +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_FREEZER=y + +# +# Processor type and features +# +CONFIG_ZONE_DMA=y +CONFIG_SMP=y +CONFIG_X86_MPPARSE=y +# CONFIG_X86_BIGSMP is not set +# CONFIG_X86_EXTENDED_PLATFORM is not set +# CONFIG_X86_INTEL_LPSS is not set +CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y +CONFIG_X86_32_IRIS=m +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_HYPERVISOR_GUEST=y +CONFIG_PARAVIRT=y +# CONFIG_PARAVIRT_DEBUG is not set +# CONFIG_PARAVIRT_SPINLOCKS is not set +# CONFIG_XEN_PRIVILEGED_GUEST is not set +CONFIG_KVM_GUEST=y +# CONFIG_KVM_DEBUG_FS is not set +CONFIG_LGUEST_GUEST=y +CONFIG_PARAVIRT_TIME_ACCOUNTING=y +CONFIG_PARAVIRT_CLOCK=y +CONFIG_NO_BOOTMEM=y +# CONFIG_MEMTEST is not set +# CONFIG_M486 is not set +# CONFIG_M586 is not set +# CONFIG_M586TSC is not set +# CONFIG_M586MMX is not set +CONFIG_M686=y +# CONFIG_MPENTIUMII is not set +# CONFIG_MPENTIUMIII is not set +# CONFIG_MPENTIUMM is not set +# CONFIG_MPENTIUM4 is not set +# CONFIG_MK6 is not set +# CONFIG_MK7 is not set +# CONFIG_MK8 is not set +# CONFIG_MCRUSOE is not set +# CONFIG_MEFFICEON is not set +# CONFIG_MWINCHIPC6 is not set +# CONFIG_MWINCHIP3D is not set +# CONFIG_MELAN is not set +# CONFIG_MGEODEGX1 is not set +# CONFIG_MGEODE_LX is not set +# CONFIG_MCYRIXIII is not set +# CONFIG_MVIAC3_2 is not set +# CONFIG_MVIAC7 is not set +# CONFIG_MCORE2 is not set +# CONFIG_MATOM is not set +CONFIG_X86_GENERIC=y +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_L1_CACHE_SHIFT=6 +# CONFIG_X86_PPRO_FENCE is not set +CONFIG_X86_INTEL_USERCOPY=y +CONFIG_X86_USE_PPRO_CHECKSUM=y +CONFIG_X86_TSC=y +CONFIG_X86_CMPXCHG64=y +CONFIG_X86_CMOV=y +CONFIG_X86_MINIMUM_CPU_FAMILY=5 +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_AMD=y +CONFIG_CPU_SUP_CENTAUR=y +CONFIG_CPU_SUP_TRANSMETA_32=y +CONFIG_HPET_TIMER=y +CONFIG_HPET_EMULATE_RTC=y +CONFIG_DMI=y +CONFIG_NR_CPUS=8 +CONFIG_SCHED_SMT=y +CONFIG_SCHED_MC=y +# CONFIG_PREEMPT_NONE is not set +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PREEMPT=y +CONFIG_PREEMPT_COUNT=y +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_IO_APIC=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_MCE=y +CONFIG_X86_MCE_INTEL=y +CONFIG_X86_MCE_AMD=y +# CONFIG_X86_ANCIENT_MCE is not set +CONFIG_X86_MCE_THRESHOLD=y +# CONFIG_X86_MCE_INJECT is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_VM86=y +CONFIG_TOSHIBA=m +CONFIG_I8K=m +CONFIG_X86_REBOOTFIXUPS=y +CONFIG_MICROCODE=m +# CONFIG_MICROCODE_INTEL is not set +# CONFIG_MICROCODE_AMD is not set +CONFIG_MICROCODE_OLD_INTERFACE=y +CONFIG_X86_MSR=m +CONFIG_X86_CPUID=m +# CONFIG_NOHIGHMEM is not set +CONFIG_HIGHMEM4G=y +# CONFIG_HIGHMEM64G is not set +CONFIG_PAGE_OFFSET=0xC0000000 +CONFIG_HIGHMEM=y +CONFIG_ARCH_FLATMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ILLEGAL_POINTER_VALUE=0 +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_FLATMEM_MANUAL=y +# CONFIG_SPARSEMEM_MANUAL is not set +CONFIG_FLATMEM=y +CONFIG_FLAT_NODE_MEM_MAP=y +CONFIG_SPARSEMEM_STATIC=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_ARCH_DISCARD_MEMBLOCK=y +CONFIG_MEMORY_ISOLATION=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_PAGEFLAGS_EXTENDED=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +# CONFIG_PHYS_ADDR_T_64BIT is not set +CONFIG_ZONE_DMA_FLAG=1 +CONFIG_BOUNCE=y +CONFIG_VIRT_TO_BUS=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_MEMORY_FAILURE=y +CONFIG_HWPOISON_INJECT=m +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CLEANCACHE=y +CONFIG_FRONTSWAP=y +# CONFIG_CMA is not set +CONFIG_ZBUD=y +CONFIG_ZSWAP=y +# CONFIG_HIGHPTE is not set +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y +CONFIG_X86_RESERVE_LOW=64 +# CONFIG_MATH_EMULATION is not set +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_X86_PAT=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_ARCH_RANDOM=y +CONFIG_X86_SMAP=y +CONFIG_EFI=y +CONFIG_EFI_STUB=y +CONFIG_SECCOMP=y +CONFIG_CC_STACKPROTECTOR=y +# CONFIG_HZ_100 is not set +# CONFIG_HZ_250 is not set +CONFIG_HZ_300=y +# CONFIG_HZ_1000 is not set +CONFIG_HZ=300 +CONFIG_SCHED_HRTICK=y +# CONFIG_CRASH_DUMP is not set +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_RELOCATABLE=y +CONFIG_X86_NEED_RELOCS=y +CONFIG_PHYSICAL_ALIGN=0x1000000 +CONFIG_HOTPLUG_CPU=y +# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set +# CONFIG_DEBUG_HOTPLUG_CPU0 is not set +# CONFIG_COMPAT_VDSO is not set +# CONFIG_CMDLINE_BOOL is not set +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y + +# +# Power management and ACPI options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +CONFIG_PM_AUTOSLEEP=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PM_WAKELOCKS_LIMIT=100 +CONFIG_PM_WAKELOCKS_GC=y +CONFIG_PM_RUNTIME=y +CONFIG_PM=y +CONFIG_PM_DEBUG=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_SLEEP_DEBUG=y +CONFIG_PM_TRACE=y +CONFIG_PM_TRACE_RTC=y +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_ACPI=y +CONFIG_ACPI_SLEEP=y +# CONFIG_ACPI_PROCFS is not set +# CONFIG_ACPI_PROCFS_POWER is not set +CONFIG_ACPI_EC_DEBUGFS=m +CONFIG_ACPI_AC=m +CONFIG_ACPI_BATTERY=m +CONFIG_ACPI_BUTTON=m +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_FAN=m +CONFIG_ACPI_DOCK=y +CONFIG_ACPI_PROCESSOR=m +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_PROCESSOR_AGGREGATOR=m +CONFIG_ACPI_THERMAL=m +# CONFIG_ACPI_CUSTOM_DSDT is not set +CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y +CONFIG_ACPI_BLACKLIST_YEAR=0 +# CONFIG_ACPI_DEBUG is not set +CONFIG_ACPI_PCI_SLOT=y +CONFIG_X86_PM_TIMER=y +CONFIG_ACPI_CONTAINER=y +CONFIG_ACPI_SBS=m +CONFIG_ACPI_HED=y +CONFIG_ACPI_CUSTOM_METHOD=m +CONFIG_ACPI_BGRT=y +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_GHES=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_EINJ=m +CONFIG_ACPI_APEI_ERST_DEBUG=m +CONFIG_SFI=y +CONFIG_X86_APM_BOOT=y +CONFIG_APM=y +# CONFIG_APM_IGNORE_USER_SUSPEND is not set +CONFIG_APM_DO_ENABLE=y +# CONFIG_APM_CPU_IDLE is not set +# CONFIG_APM_DISPLAY_BLANK is not set +# CONFIG_APM_ALLOW_INTS is not set + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_TABLE=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=m +CONFIG_CPU_FREQ_STAT_DETAILS=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=m +CONFIG_CPU_FREQ_GOV_USERSPACE=m +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m + +# +# x86 CPU frequency scaling drivers +# +CONFIG_X86_INTEL_PSTATE=y +CONFIG_X86_PCC_CPUFREQ=m +CONFIG_X86_ACPI_CPUFREQ=m +CONFIG_X86_ACPI_CPUFREQ_CPB=y +CONFIG_X86_POWERNOW_K6=m +CONFIG_X86_POWERNOW_K7=m +CONFIG_X86_POWERNOW_K7_ACPI=y +CONFIG_X86_POWERNOW_K8=m +CONFIG_X86_AMD_FREQ_SENSITIVITY=m +CONFIG_X86_GX_SUSPMOD=m +# CONFIG_X86_SPEEDSTEP_CENTRINO is not set +CONFIG_X86_SPEEDSTEP_ICH=m +CONFIG_X86_SPEEDSTEP_SMI=m +CONFIG_X86_P4_CLOCKMOD=m +CONFIG_X86_CPUFREQ_NFORCE2=m +CONFIG_X86_LONGRUN=m +CONFIG_X86_LONGHAUL=m +CONFIG_X86_E_POWERSAVER=m + +# +# shared options +# +CONFIG_X86_SPEEDSTEP_LIB=m +CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_INTEL_IDLE=y + +# +# Bus options (PCI etc.) +# +CONFIG_PCI=y +# CONFIG_PCI_GOBIOS is not set +# CONFIG_PCI_GOMMCONFIG is not set +# CONFIG_PCI_GODIRECT is not set +# CONFIG_PCI_GOOLPC is not set +CONFIG_PCI_GOANY=y +CONFIG_PCI_BIOS=y +CONFIG_PCI_DIRECT=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCI_OLPC=y +CONFIG_PCI_DOMAINS=y +# CONFIG_PCIEPORTBUS is not set +CONFIG_PCI_MSI=y +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_HT_IRQ=y +CONFIG_PCI_ATS=y +CONFIG_PCI_IOV=y +CONFIG_PCI_PRI=y +CONFIG_PCI_PASID=y +CONFIG_PCI_IOAPIC=y +CONFIG_PCI_LABEL=y + +# +# PCI host controller drivers +# +CONFIG_ISA_DMA_API=y +CONFIG_ISA=y +# CONFIG_EISA is not set +# CONFIG_SCx200 is not set +CONFIG_OLPC=y +CONFIG_OLPC_XO1_PM=y +CONFIG_OLPC_XO1_RTC=y +CONFIG_OLPC_XO1_SCI=y +CONFIG_OLPC_XO15_SCI=y +# CONFIG_ALIX is not set +# CONFIG_NET5501 is not set +# CONFIG_GEOS is not set +CONFIG_AMD_NB=y +CONFIG_PCCARD=m +CONFIG_PCMCIA=m +CONFIG_PCMCIA_LOAD_CIS=y +CONFIG_CARDBUS=y + +# +# PC-card bridges +# +CONFIG_YENTA=m +CONFIG_YENTA_O2=y +CONFIG_YENTA_RICOH=y +CONFIG_YENTA_TI=y +CONFIG_YENTA_ENE_TUNE=y +CONFIG_YENTA_TOSHIBA=y +CONFIG_PD6729=m +CONFIG_I82092=m +CONFIG_I82365=m +CONFIG_TCIC=m +CONFIG_PCMCIA_PROBE=y +CONFIG_PCCARD_NONSTATIC=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_COMPAQ=m +# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set +CONFIG_HOTPLUG_PCI_IBM=m +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m +CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m +CONFIG_HOTPLUG_PCI_SHPC=m +CONFIG_RAPIDIO=y +CONFIG_RAPIDIO_DISC_TIMEOUT=30 +# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set +CONFIG_RAPIDIO_DMA_ENGINE=y +CONFIG_RAPIDIO_DEBUG=y +CONFIG_RAPIDIO_ENUM_BASIC=m + +# +# RapidIO Switch drivers +# +CONFIG_RAPIDIO_TSI57X=y +CONFIG_RAPIDIO_CPS_XX=y +CONFIG_RAPIDIO_TSI568=y +CONFIG_RAPIDIO_CPS_GEN2=y +# CONFIG_X86_SYSFB is not set + +# +# Executable file formats / Emulations +# +CONFIG_BINFMT_ELF=y +CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +CONFIG_BINFMT_SCRIPT=y +CONFIG_HAVE_AOUT=y +CONFIG_BINFMT_AOUT=m +CONFIG_BINFMT_MISC=y +CONFIG_COREDUMP=y +CONFIG_HAVE_ATOMIC_IOMAP=y +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=m +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +# CONFIG_XFRM_STATISTICS is not set +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +# CONFIG_IP_PNP is not set +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +# CONFIG_NET_IPGRE_BROADCAST is not set +CONFIG_IP_MROUTE=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_LRO=y +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +CONFIG_IPV6=y +CONFIG_IPV6_PRIVACY=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +# CONFIG_IPV6_MROUTE is not set +CONFIG_NETLABEL=y +CONFIG_NETWORK_SECMARK=y +CONFIG_NETWORK_PHY_TIMESTAMPING=y +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=y + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=m +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=m +CONFIG_NF_CT_PROTO_UDPLITE=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NETFILTER_NETLINK_QUEUE_CT=y +CONFIG_NF_NAT=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=m +CONFIG_NF_NAT_PROTO_UDPLITE=m +CONFIG_NF_NAT_PROTO_SCTP=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NETFILTER_XTABLES=m + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_GRADM=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +# CONFIG_IP_VS_IPV6 is not set +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_TARGET_ULOG=m +CONFIG_NF_NAT_IPV4=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_NF_NAT_IPV6=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_ULOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_IP_DCCP=m +CONFIG_INET_DCCP_DIAG=m + +# +# DCCP CCIDs Configuration +# +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +CONFIG_IP_DCCP_CCID3=y +# CONFIG_IP_DCCP_CCID3_DEBUG is not set +CONFIG_IP_DCCP_TFRC_LIB=y + +# +# DCCP Kernel Hacking +# +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_NET_DCCPPROBE=m +CONFIG_IP_SCTP=m +CONFIG_NET_SCTPPROBE=m +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +# CONFIG_RDS is not set +# CONFIG_TIPC is not set +CONFIG_ATM=m +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_L2TP=m +# CONFIG_L2TP_DEBUGFS is not set +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_HAVE_NET_DSA=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_TAG_DSA=y +CONFIG_NET_DSA_TAG_EDSA=y +CONFIG_NET_DSA_TAG_TRAILER=y +CONFIG_VLAN_8021Q=m +# CONFIG_VLAN_8021Q_GVRP is not set +CONFIG_VLAN_8021Q_MVRP=y +# CONFIG_DECNET is not set +CONFIG_LLC=m +CONFIG_LLC2=m +CONFIG_IPX=m +# CONFIG_IPX_INTERN is not set +CONFIG_ATALK=m +CONFIG_DEV_APPLETALK=m +CONFIG_LTPC=m +CONFIG_COPS=m +CONFIG_COPS_DAYNA=y +CONFIG_COPS_TANGENT=y +CONFIG_IPDDP=m +CONFIG_IPDDP_ENCAP=y +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +CONFIG_PHONET=m +CONFIG_IEEE802154=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_MAC802154=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +# CONFIG_CLS_U32_PERF is not set +# CONFIG_CLS_U32_MARK is not set +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=y +# CONFIG_NET_EMATCH is not set +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_CLS_IND=y +CONFIG_NET_SCH_FIFO=y +# CONFIG_DCB is not set +CONFIG_DNS_RESOLVER=y +CONFIG_BATMAN_ADV=m +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +CONFIG_BATMAN_ADV_NC=y +# CONFIG_BATMAN_ADV_DEBUG is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=y +CONFIG_OPENVSWITCH_VXLAN=y +CONFIG_VSOCKETS=m +CONFIG_VMWARE_VMCI_VSOCKETS=m +CONFIG_NETLINK_MMAP=y +CONFIG_NETLINK_DIAG=m +CONFIG_NET_MPLS_GSO=m +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_NETPRIO_CGROUP=m +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_TCPPROBE=m +CONFIG_NET_DROP_MONITOR=y +CONFIG_HAMRADIO=y + +# +# Packet Radio protocols +# +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_NETROM=m +CONFIG_ROSE=m + +# +# AX.25 network device drivers +# +CONFIG_MKISS=m +CONFIG_6PACK=m +CONFIG_BPQETHER=m +CONFIG_SCC=m +# CONFIG_SCC_DELAY is not set +# CONFIG_SCC_TRXECHO is not set +CONFIG_BAYCOM_SER_FDX=m +CONFIG_BAYCOM_SER_HDX=m +CONFIG_BAYCOM_PAR=m +CONFIG_BAYCOM_EPP=m +CONFIG_YAM=m +# CONFIG_CAN is not set +CONFIG_IRDA=m + +# +# IrDA protocols +# +CONFIG_IRLAN=m +CONFIG_IRNET=m +CONFIG_IRCOMM=m +CONFIG_IRDA_ULTRA=y + +# +# IrDA options +# +CONFIG_IRDA_CACHE_LAST_LSAP=y +CONFIG_IRDA_FAST_RR=y +# CONFIG_IRDA_DEBUG is not set + +# +# Infrared-port device drivers +# + +# +# SIR device drivers +# +CONFIG_IRTTY_SIR=m + +# +# Dongle support +# +CONFIG_DONGLE=y +CONFIG_ESI_DONGLE=m +CONFIG_ACTISYS_DONGLE=m +CONFIG_TEKRAM_DONGLE=m +CONFIG_TOIM3232_DONGLE=m +CONFIG_LITELINK_DONGLE=m +CONFIG_MA600_DONGLE=m +CONFIG_GIRBIL_DONGLE=m +CONFIG_MCP2120_DONGLE=m +CONFIG_OLD_BELKIN_DONGLE=m +CONFIG_ACT200L_DONGLE=m +CONFIG_KINGSUN_DONGLE=m +CONFIG_KSDAZZLE_DONGLE=m +CONFIG_KS959_DONGLE=m + +# +# FIR device drivers +# +CONFIG_USB_IRDA=m +CONFIG_SIGMATEL_FIR=m +CONFIG_NSC_FIR=m +CONFIG_WINBOND_FIR=m +CONFIG_TOSHIBA_FIR=m +CONFIG_SMC_IRCC_FIR=m +CONFIG_ALI_FIR=m +CONFIG_VLSI_FIR=m +CONFIG_VIA_FIR=m +CONFIG_MCS_FIR=m +CONFIG_BT=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_CMTP=m +CONFIG_BT_HIDP=m + +# +# Bluetooth device drivers +# +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIDTL1=m +CONFIG_BT_HCIBT3C=m +CONFIG_BT_HCIBLUECARD=m +CONFIG_BT_HCIBTUART=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_ATH3K=m +CONFIG_BT_WILINK=m +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_RXKAD=m +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_CFG80211=m +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_REG_DEBUG is not set +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEBUGFS is not set +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_WEXT=y +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_WEP=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_MAC80211=m +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_LEDS=y +# CONFIG_MAC80211_DEBUGFS is not set +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_WIMAX=m +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_RFKILL=m +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_INPUT=y +CONFIG_NET_9P=m +CONFIG_NET_9P_VIRTIO=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_NETDEV=m +CONFIG_CAIF_USB=m +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set +CONFIG_NFC=m +CONFIG_NFC_NCI=m +# CONFIG_NFC_NCI_SPI is not set +CONFIG_NFC_HCI=m +# CONFIG_NFC_SHDLC is not set + +# +# Near Field Communication (NFC) devices +# +CONFIG_NFC_PN533=m +CONFIG_NFC_WILINK=m +CONFIG_NFC_MEI_PHY=m +CONFIG_NFC_SIM=m +CONFIG_NFC_PN544=m +CONFIG_NFC_PN544_MEI=m +CONFIG_NFC_MICROREAD=m +CONFIG_NFC_MICROREAD_MEI=m + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER_PATH="" +CONFIG_DEVTMPFS=y +# CONFIG_DEVTMPFS_MOUNT is not set +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +# CONFIG_FIRMWARE_IN_KERNEL is not set +CONFIG_EXTRA_FIRMWARE="" +CONFIG_FW_LOADER_USER_HELPER=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_SYS_HYPERVISOR is not set +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_MMIO=m +CONFIG_REGMAP_IRQ=y +CONFIG_DMA_SHARED_BUFFER=y + +# +# Bus devices +# +CONFIG_CONNECTOR=y +CONFIG_PROC_EVENTS=y +CONFIG_MTD=m +CONFIG_MTD_TESTS=m +CONFIG_MTD_REDBOOT_PARTS=m +CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 +# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set +# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_OF_PARTS=m +CONFIG_MTD_AR7_PARTS=m + +# +# User Modules And Translation Layers +# +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_BLOCK_RO=m +CONFIG_FTL=m +CONFIG_NFTL=m +CONFIG_NFTL_RW=y +CONFIG_INFTL=m +CONFIG_RFD_FTL=m +CONFIG_SSFDC=m +# CONFIG_SM_FTL is not set +CONFIG_MTD_OOPS=m +CONFIG_MTD_SWAP=m + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=m +CONFIG_MTD_JEDECPROBE=m +CONFIG_MTD_GEN_PROBE=m +# CONFIG_MTD_CFI_ADV_OPTIONS is not set +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +CONFIG_MTD_CFI_INTELEXT=m +CONFIG_MTD_CFI_AMDSTD=m +CONFIG_MTD_CFI_STAA=m +CONFIG_MTD_CFI_UTIL=m +CONFIG_MTD_RAM=m +CONFIG_MTD_ROM=m +CONFIG_MTD_ABSENT=m + +# +# Mapping drivers for chip access +# +CONFIG_MTD_COMPLEX_MAPPINGS=y +# CONFIG_MTD_PHYSMAP is not set +CONFIG_MTD_PHYSMAP_OF=m +CONFIG_MTD_SC520CDP=m +CONFIG_MTD_NETSC520=m +CONFIG_MTD_TS5500=m +# CONFIG_MTD_SBC_GXX is not set +# CONFIG_MTD_AMD76XROM is not set +# CONFIG_MTD_ICHXROM is not set +# CONFIG_MTD_ESB2ROM is not set +# CONFIG_MTD_CK804XROM is not set +CONFIG_MTD_SCB2_FLASH=m +# CONFIG_MTD_NETtel is not set +# CONFIG_MTD_L440GX is not set +CONFIG_MTD_PCI=m +# CONFIG_MTD_PCMCIA is not set +# CONFIG_MTD_GPIO_ADDR is not set +# CONFIG_MTD_INTEL_VR_NOR is not set +CONFIG_MTD_PLATRAM=m +# CONFIG_MTD_LATCH_ADDR is not set + +# +# Self-contained MTD device drivers +# +CONFIG_MTD_PMC551=m +# CONFIG_MTD_PMC551_BUGFIX is not set +# CONFIG_MTD_PMC551_DEBUG is not set +# CONFIG_MTD_DATAFLASH is not set +# CONFIG_MTD_M25P80 is not set +# CONFIG_MTD_SST25L is not set +# CONFIG_MTD_SLRAM is not set +CONFIG_MTD_PHRAM=m +CONFIG_MTD_MTDRAM=m +CONFIG_MTDRAM_TOTAL_SIZE=4096 +CONFIG_MTDRAM_ERASE_SIZE=128 +CONFIG_MTD_BLOCK2MTD=m + +# +# Disk-On-Chip Device Drivers +# +CONFIG_MTD_DOCG3=m +CONFIG_BCH_CONST_M=14 +CONFIG_BCH_CONST_T=4 +# CONFIG_MTD_NAND is not set +# CONFIG_MTD_ONENAND is not set + +# +# LPDDR flash memory drivers +# +CONFIG_MTD_LPDDR=m +CONFIG_MTD_QINFO_PROBE=m +CONFIG_MTD_UBI=m +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTD_UBI_BEB_LIMIT=20 +# CONFIG_MTD_UBI_FASTMAP is not set +# CONFIG_MTD_UBI_GLUEBI is not set +CONFIG_OF=y + +# +# Device Tree and Open Firmware support +# +CONFIG_PROC_DEVICETREE=y +# CONFIG_OF_SELFTEST is not set +CONFIG_OF_PROMTREE=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_MDIO=m +CONFIG_OF_PCI=y +CONFIG_OF_PCI_IRQ=y +CONFIG_OF_MTD=y +CONFIG_PARPORT=m +CONFIG_PARPORT_PC=m +CONFIG_PARPORT_SERIAL=m +# CONFIG_PARPORT_PC_FIFO is not set +# CONFIG_PARPORT_PC_SUPERIO is not set +CONFIG_PARPORT_PC_PCMCIA=m +# CONFIG_PARPORT_GSC is not set +CONFIG_PARPORT_AX88796=m +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_NOT_PC=y +CONFIG_PNP=y +# CONFIG_PNP_DEBUG_MESSAGES is not set + +# +# Protocols +# +CONFIG_ISAPNP=y +# CONFIG_PNPBIOS is not set +CONFIG_PNPACPI=y +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_FD=m +# CONFIG_PARIDE is not set +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_BLK_CPQ_DA=m +CONFIG_BLK_CPQ_CISS_DA=m +# CONFIG_CISS_SCSI_TAPE is not set +CONFIG_BLK_DEV_DAC960=m +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=m +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NVME=m +CONFIG_BLK_DEV_OSD=m +CONFIG_BLK_DEV_SX8=m +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=16384 +# CONFIG_BLK_DEV_XIP is not set +CONFIG_CDROM_PKTCDVD=m +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_ATA_OVER_ETH=m +CONFIG_VIRTIO_BLK=m +# CONFIG_BLK_DEV_HD is not set +CONFIG_BLK_DEV_RBD=m +CONFIG_BLK_DEV_RSXX=m + +# +# Misc devices +# +CONFIG_SENSORS_LIS3LV02D=m +CONFIG_AD525X_DPOT=m +CONFIG_AD525X_DPOT_I2C=m +# CONFIG_AD525X_DPOT_SPI is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_IBM_ASM is not set +CONFIG_PHANTOM=m +CONFIG_SGI_IOC4=m +CONFIG_TIFM_CORE=m +CONFIG_TIFM_7XX1=m +CONFIG_ICS932S401=m +# CONFIG_ATMEL_SSC is not set +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_CS5535_MFGPT=m +CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7 +CONFIG_CS5535_CLOCK_EVENT_SRC=m +CONFIG_HP_ILO=m +CONFIG_APDS9802ALS=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_BH1780=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_APDS990X=m +CONFIG_HMC6352=m +CONFIG_DS1682=m +# CONFIG_TI_DAC7512 is not set +CONFIG_VMWARE_BALLOON=m +CONFIG_BMP085=y +CONFIG_BMP085_I2C=m +# CONFIG_BMP085_SPI is not set +# CONFIG_PCH_PHUB is not set +CONFIG_USB_SWITCH_FSA9480=m +# CONFIG_LATTICE_ECP3_CONFIG is not set +# CONFIG_SRAM is not set +CONFIG_C2PORT=m +CONFIG_C2PORT_DURAMAR_2150=m + +# +# EEPROM support +# +CONFIG_EEPROM_AT24=m +# CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +CONFIG_CB710_CORE=m +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y + +# +# Texas Instruments shared transport line discipline +# +CONFIG_TI_ST=m +CONFIG_SENSORS_LIS3_I2C=m + +# +# Altera FPGA firmware download module +# +CONFIG_ALTERA_STAPL=m +CONFIG_INTEL_MEI=m +CONFIG_INTEL_MEI_ME=m +CONFIG_VMWARE_VMCI=m +CONFIG_HAVE_IDE=y +# CONFIG_IDE is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=m +CONFIG_RAID_ATTRS=m +CONFIG_SCSI=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_TGT=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +CONFIG_CHR_DEV_ST=m +CONFIG_CHR_DEV_OSST=m +CONFIG_BLK_DEV_SR=m +CONFIG_BLK_DEV_SR_VENDOR=y +CONFIG_CHR_DEV_SG=m +CONFIG_CHR_DEV_SCH=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_FC_ATTRS=m +# CONFIG_SCSI_FC_TGT_ATTRS is not set +CONFIG_SCSI_ISCSI_ATTRS=m +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_SRP_TGT_ATTRS=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_BE2ISCSI=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_7000FASST=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_AHA152X=m +CONFIG_SCSI_AHA1542=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 +CONFIG_AIC7XXX_RESET_DELAY_MS=15000 +# CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +# CONFIG_SCSI_AIC7XXX_OLD is not set +CONFIG_SCSI_AIC79XX=m +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +CONFIG_AIC79XX_RESET_DELAY_MS=15000 +# CONFIG_AIC79XX_DEBUG_ENABLE is not set +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_SCSI_AIC94XX=m +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS_DEBUG is not set +CONFIG_SCSI_MVSAS_TASKLET=y +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_DPT_I2O=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_IN2000=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_ESAS2R=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_MM=m +CONFIG_MEGARAID_MAILBOX=m +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_SAS=m +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +# CONFIG_SCSI_MPT2SAS_LOGGING is not set +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS_LOGGING=y +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_UFSHCD_PCI=m +CONFIG_SCSI_UFSHCD_PLATFORM=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_BUSLOGIC=m +# CONFIG_SCSI_FLASHPOINT is not set +CONFIG_VMWARE_PVSCSI=m +CONFIG_HYPERV_STORAGE=m +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_FCOE=m +CONFIG_FCOE_FNIC=m +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_DTC3280=m +CONFIG_SCSI_EATA=m +# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set +# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set +CONFIG_SCSI_EATA_MAX_TAGS=16 +CONFIG_SCSI_FUTURE_DOMAIN=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_ISCI=m +CONFIG_SCSI_GENERIC_NCR5380=m +CONFIG_SCSI_GENERIC_NCR5380_MMIO=m +CONFIG_SCSI_GENERIC_NCR53C400=y +CONFIG_SCSI_IPS=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_PPA=m +CONFIG_SCSI_IMM=m +# CONFIG_SCSI_IZIP_EPP16 is not set +# CONFIG_SCSI_IZIP_SLOW_CTR is not set +CONFIG_SCSI_NCR53C406A=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +CONFIG_SCSI_IPR=m +# CONFIG_SCSI_IPR_TRACE is not set +# CONFIG_SCSI_IPR_DUMP is not set +CONFIG_SCSI_PAS16=m +CONFIG_SCSI_QLOGIC_FAS=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_QLA_FC=m +CONFIG_TCM_QLA2XXX=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_SYM53C416=m +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DC390T=m +CONFIG_SCSI_T128=m +CONFIG_SCSI_U14_34F=m +# CONFIG_SCSI_U14_34F_TAGGED_QUEUE is not set +# CONFIG_SCSI_U14_34F_LINKED_COMMANDS is not set +CONFIG_SCSI_U14_34F_MAX_TAGS=8 +CONFIG_SCSI_ULTRASTOR=m +CONFIG_SCSI_NSP32=m +# CONFIG_SCSI_DEBUG is not set +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_SRP=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_VIRTIO=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_LOWLEVEL_PCMCIA=y +CONFIG_PCMCIA_AHA152X=m +CONFIG_PCMCIA_FDOMAIN=m +CONFIG_PCMCIA_NINJA_SCSI=m +CONFIG_PCMCIA_QLOGIC=m +CONFIG_PCMCIA_SYM53C500=m +CONFIG_SCSI_DH=m +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_OSD_INITIATOR=m +CONFIG_SCSI_OSD_ULD=m +CONFIG_SCSI_OSD_DPRINT_SENSE=0 +# CONFIG_SCSI_OSD_DEBUG is not set +CONFIG_ATA=m +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATA_ACPI=y +CONFIG_SATA_ZPODD=y +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SATA_INIC162X=m +CONFIG_SATA_ACARD_AHCI=m +CONFIG_SATA_SIL24=m +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +CONFIG_PDC_ADMA=m +CONFIG_SATA_QSTOR=m +CONFIG_SATA_SX4=m +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +CONFIG_ATA_PIIX=m +CONFIG_SATA_HIGHBANK=m +CONFIG_SATA_MV=m +CONFIG_SATA_NV=m +CONFIG_SATA_PROMISE=m +CONFIG_SATA_RCAR=m +CONFIG_SATA_SIL=m +CONFIG_SATA_SIS=m +CONFIG_SATA_SVW=m +CONFIG_SATA_ULI=m +CONFIG_SATA_VIA=m +CONFIG_SATA_VITESSE=m + +# +# PATA SFF controllers with BMDMA +# +CONFIG_PATA_ALI=m +CONFIG_PATA_AMD=m +CONFIG_PATA_ARASAN_CF=m +CONFIG_PATA_ARTOP=m +CONFIG_PATA_ATIIXP=m +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD64X=m +CONFIG_PATA_CS5520=m +CONFIG_PATA_CS5530=m +CONFIG_PATA_CS5535=m +CONFIG_PATA_CS5536=m +CONFIG_PATA_CYPRESS=m +CONFIG_PATA_EFAR=m +CONFIG_PATA_HPT366=m +CONFIG_PATA_HPT37X=m +CONFIG_PATA_HPT3X2N=m +CONFIG_PATA_HPT3X3=m +# CONFIG_PATA_HPT3X3_DMA is not set +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_MARVELL=m +CONFIG_PATA_NETCELL=m +CONFIG_PATA_NINJA32=m +CONFIG_PATA_NS87415=m +CONFIG_PATA_OLDPIIX=m +CONFIG_PATA_OPTIDMA=m +CONFIG_PATA_PDC2027X=m +CONFIG_PATA_PDC_OLD=m +CONFIG_PATA_RADISYS=m +CONFIG_PATA_RDC=m +CONFIG_PATA_SC1200=m +CONFIG_PATA_SCH=m +CONFIG_PATA_SERVERWORKS=m +CONFIG_PATA_SIL680=m +CONFIG_PATA_SIS=m +CONFIG_PATA_TOSHIBA=m +CONFIG_PATA_TRIFLEX=m +CONFIG_PATA_VIA=m +CONFIG_PATA_WINBOND=m + +# +# PIO-only SFF controllers +# +CONFIG_PATA_CMD640_PCI=m +CONFIG_PATA_ISAPNP=m +CONFIG_PATA_MPIIX=m +CONFIG_PATA_NS87410=m +CONFIG_PATA_OPTI=m +CONFIG_PATA_PCMCIA=m +CONFIG_PATA_QDI=m +CONFIG_PATA_RZ1000=m +CONFIG_PATA_WINBOND_VLB=m + +# +# Generic fallback / legacy drivers +# +CONFIG_PATA_ACPI=m +CONFIG_ATA_GENERIC=m +CONFIG_PATA_LEGACY=m +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_FAULTY=m +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_EDEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +CONFIG_BLK_DEV_DM=m +# CONFIG_DM_DEBUG is not set +CONFIG_DM_BUFIO=m +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +CONFIG_DM_CRYPT=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_MQ=m +CONFIG_DM_CACHE_CLEANER=m +CONFIG_DM_MIRROR=m +CONFIG_DM_RAID=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_DELAY=m +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=m +CONFIG_DM_SWITCH=m +CONFIG_TARGET_CORE=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_PSCSI=m +CONFIG_LOOPBACK_TARGET=m +CONFIG_TCM_FC=m +CONFIG_ISCSI_TARGET=m +CONFIG_SBP_TARGET=m +CONFIG_FUSION=y +CONFIG_FUSION_SPI=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_SAS=m +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_CTL=m +# CONFIG_FUSION_LOGGING is not set + +# +# IEEE 1394 (FireWire) support +# +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_OHCI=m +CONFIG_FIREWIRE_SBP2=m +CONFIG_FIREWIRE_NET=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_I2O=m +CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y +CONFIG_I2O_EXT_ADAPTEC=y +CONFIG_I2O_CONFIG=m +CONFIG_I2O_CONFIG_OLD_IOCTL=y +CONFIG_I2O_BUS=m +CONFIG_I2O_BLOCK=m +CONFIG_I2O_SCSI=m +CONFIG_I2O_PROC=m +CONFIG_MACINTOSH_DRIVERS=y +CONFIG_MAC_EMUMOUSEBTN=y +CONFIG_NETDEVICES=y +CONFIG_MII=m +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +CONFIG_EQUALIZER=m +# CONFIG_NET_FC is not set +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_VXLAN=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETPOLL=y +# CONFIG_NETPOLL_TRAP is not set +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_RIONET=m +CONFIG_RIONET_TX_SIZE=128 +CONFIG_RIONET_RX_SIZE=128 +CONFIG_TUN=m +CONFIG_VETH=m +CONFIG_VIRTIO_NET=m +CONFIG_NLMON=m +CONFIG_SUNGEM_PHY=m +# CONFIG_ARCNET is not set +CONFIG_ATM_DRIVERS=y +# CONFIG_ATM_DUMMY is not set +CONFIG_ATM_TCP=m +CONFIG_ATM_LANAI=m +CONFIG_ATM_ENI=m +# CONFIG_ATM_ENI_DEBUG is not set +# CONFIG_ATM_ENI_TUNE_BURST is not set +CONFIG_ATM_FIRESTREAM=m +CONFIG_ATM_ZATM=m +# CONFIG_ATM_ZATM_DEBUG is not set +CONFIG_ATM_NICSTAR=m +# CONFIG_ATM_NICSTAR_USE_SUNI is not set +# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set +CONFIG_ATM_IDT77252=m +# CONFIG_ATM_IDT77252_DEBUG is not set +# CONFIG_ATM_IDT77252_RCV_ALL is not set +CONFIG_ATM_IDT77252_USE_SUNI=y +CONFIG_ATM_AMBASSADOR=m +# CONFIG_ATM_AMBASSADOR_DEBUG is not set +CONFIG_ATM_HORIZON=m +# CONFIG_ATM_HORIZON_DEBUG is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_FORE200E=m +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_FORE200E_TX_RETRY=16 +CONFIG_ATM_FORE200E_DEBUG=0 +CONFIG_ATM_HE=m +# CONFIG_ATM_HE_USE_SUNI is not set +CONFIG_ATM_SOLOS=m + +# +# CAIF transport drivers +# +CONFIG_CAIF_TTY=m +CONFIG_CAIF_SPI_SLAVE=m +CONFIG_CAIF_SPI_SYNC=y +CONFIG_CAIF_HSI=m +CONFIG_CAIF_VIRTIO=m +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_RING=m +CONFIG_VHOST=m + +# +# Distributed Switch Architecture drivers +# +CONFIG_NET_DSA_MV88E6XXX=m +CONFIG_NET_DSA_MV88E6060=m +CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y +CONFIG_NET_DSA_MV88E6131=m +CONFIG_NET_DSA_MV88E6123_61_65=m +CONFIG_ETHERNET=y +CONFIG_MDIO=m +CONFIG_NET_VENDOR_3COM=y +CONFIG_EL3=m +CONFIG_3C515=m +CONFIG_PCMCIA_3C574=m +CONFIG_PCMCIA_3C589=m +CONFIG_VORTEX=m +CONFIG_TYPHOON=m +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_ADAPTEC_STARFIRE=m +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_ACENIC=m +# CONFIG_ACENIC_OMIT_TIGON_I is not set +CONFIG_NET_VENDOR_AMD=y +CONFIG_AMD8111_ETH=m +CONFIG_LANCE=m +CONFIG_PCNET32=m +CONFIG_PCMCIA_NMCLAN=m +CONFIG_NI65=m +CONFIG_NET_VENDOR_ARC=y +CONFIG_ARC_EMAC=m +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_ATL2=m +CONFIG_ATL1=m +CONFIG_ATL1E=m +CONFIG_ATL1C=m +CONFIG_ALX=m +CONFIG_NET_CADENCE=y +CONFIG_ARM_AT91_ETHER=m +CONFIG_MACB=m +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_B44=m +CONFIG_B44_PCI_AUTOSELECT=y +CONFIG_B44_PCICORE_AUTOSELECT=y +CONFIG_B44_PCI=y +CONFIG_BNX2=m +CONFIG_CNIC=m +CONFIG_TIGON3=m +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_BNA=m +CONFIG_NET_CALXEDA_XGMAC=m +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4VF=m +CONFIG_NET_VENDOR_CIRRUS=y +CONFIG_CS89x0=m +# CONFIG_CS89x0_PLATFORM is not set +CONFIG_NET_VENDOR_CISCO=y +CONFIG_ENIC=m +CONFIG_DNET=m +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_TULIP=y +CONFIG_DE2104X=m +CONFIG_DE2104X_DSL=0 +CONFIG_TULIP=m +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_MMIO is not set +# CONFIG_TULIP_NAPI is not set +CONFIG_DE4X5=m +CONFIG_WINBOND_840=m +CONFIG_DM9102=m +CONFIG_ULI526X=m +CONFIG_PCMCIA_XIRCOM=m +CONFIG_NET_VENDOR_DLINK=y +CONFIG_DL2K=m +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_BE2NET=m +CONFIG_NET_VENDOR_EXAR=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_NET_VENDOR_FUJITSU=y +CONFIG_PCMCIA_FMVJ18X=m +CONFIG_NET_VENDOR_HP=y +CONFIG_HP100=m +CONFIG_NET_VENDOR_INTEL=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGB=m +CONFIG_IGB_HWMON=y +CONFIG_IGB_DCA=y +CONFIG_IGBVF=m +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_DCA=y +CONFIG_IXGBEVF=m +CONFIG_I40E=m +CONFIG_NET_VENDOR_I825XX=y +CONFIG_IP1000=m +CONFIG_JME=m +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_MVMDIO=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_CORE=m +CONFIG_MLX4_DEBUG=y +# CONFIG_MLX5_CORE is not set +CONFIG_NET_VENDOR_MICREL=y +CONFIG_KS8842=m +# CONFIG_KS8851 is not set +CONFIG_KS8851_MLL=m +CONFIG_KSZ884X_PCI=m +CONFIG_NET_VENDOR_MICROCHIP=y +# CONFIG_ENC28J60 is not set +CONFIG_NET_VENDOR_MYRI=y +CONFIG_MYRI10GE=m +CONFIG_MYRI10GE_DCA=y +CONFIG_FEALNX=m +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NATSEMI=m +CONFIG_NS83820=m +CONFIG_NET_VENDOR_8390=y +CONFIG_PCMCIA_AXNET=m +CONFIG_NE2000=m +CONFIG_NE2K_PCI=m +CONFIG_PCMCIA_PCNET=m +CONFIG_ULTRA=m +CONFIG_WD80x3=m +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_FORCEDETH=m +CONFIG_NET_VENDOR_OKI=y +CONFIG_PCH_GBE=m +CONFIG_ETHOC=m +CONFIG_NET_PACKET_ENGINE=y +CONFIG_HAMACHI=m +CONFIG_YELLOWFIN=m +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_QLA3XXX=m +CONFIG_QLCNIC=m +CONFIG_QLCNIC_SRIOV=y +CONFIG_QLGE=m +CONFIG_NETXEN_NIC=m +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_ATP=m +CONFIG_8139CP=m +CONFIG_8139TOO=m +# CONFIG_8139TOO_PIO is not set +CONFIG_8139TOO_TUNE_TWISTER=y +CONFIG_8139TOO_8129=y +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_R8169=m +CONFIG_SH_ETH=m +CONFIG_NET_VENDOR_RDC=y +CONFIG_R6040=m +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_SC92031=m +CONFIG_NET_VENDOR_SIS=y +CONFIG_SIS900=m +CONFIG_SIS190=m +CONFIG_SFC=m +CONFIG_SFC_MTD=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_SRIOV=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_SMC9194=m +CONFIG_PCMCIA_SMC91C92=m +CONFIG_EPIC100=m +CONFIG_SMSC911X=m +# CONFIG_SMSC911X_ARCH_HOOKS is not set +CONFIG_SMSC9420=m +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=m +# CONFIG_STMMAC_PLATFORM is not set +CONFIG_STMMAC_PCI=y +# CONFIG_STMMAC_DEBUG_FS is not set +# CONFIG_STMMAC_DA is not set +CONFIG_NET_VENDOR_SUN=y +CONFIG_HAPPYMEAL=m +CONFIG_SUNGEM=m +CONFIG_CASSINI=m +CONFIG_NIU=m +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_TEHUTI=m +CONFIG_NET_VENDOR_TI=y +CONFIG_TLAN=m +CONFIG_NET_VENDOR_VIA=y +CONFIG_VIA_RHINE=m +# CONFIG_VIA_RHINE_MMIO is not set +CONFIG_VIA_VELOCITY=m +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_WIZNET_W5100=m +CONFIG_WIZNET_W5300=m +# CONFIG_WIZNET_BUS_DIRECT is not set +# CONFIG_WIZNET_BUS_INDIRECT is not set +CONFIG_WIZNET_BUS_ANY=y +CONFIG_NET_VENDOR_XIRCOM=y +CONFIG_PCMCIA_XIRC2PS=m +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_NET_SB1000=m +CONFIG_PHYLIB=m + +# +# MII PHY device drivers +# +CONFIG_AT803X_PHY=m +CONFIG_AMD_PHY=m +CONFIG_MARVELL_PHY=m +CONFIG_DAVICOM_PHY=m +CONFIG_QSEMI_PHY=m +CONFIG_LXT_PHY=m +CONFIG_CICADA_PHY=m +CONFIG_VITESSE_PHY=m +CONFIG_SMSC_PHY=m +CONFIG_BROADCOM_PHY=m +CONFIG_BCM87XX_PHY=m +CONFIG_ICPLUS_PHY=m +CONFIG_REALTEK_PHY=m +CONFIG_NATIONAL_PHY=m +CONFIG_STE10XP=m +CONFIG_LSI_ET1011C_PHY=m +CONFIG_MICREL_PHY=m +CONFIG_MDIO_BITBANG=m +# CONFIG_MDIO_GPIO is not set +CONFIG_MDIO_BUS_MUX=m +CONFIG_MDIO_BUS_MUX_GPIO=m +CONFIG_MDIO_BUS_MUX_MMIOREG=m +# CONFIG_MICREL_KS8995MA is not set +CONFIG_PLIP=m +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPTP=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +CONFIG_SLIP=m +CONFIG_SLHC=m +# CONFIG_SLIP_COMPRESSED is not set +# CONFIG_SLIP_SMART is not set +# CONFIG_SLIP_MODE_SLIP6 is not set + +# +# USB Network Adapters +# +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_USBNET=m +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_CDCETHER=m +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_WLAN=y +CONFIG_PCMCIA_RAYCS=m +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_AIRO=m +CONFIG_ATMEL=m +CONFIG_PCI_ATMEL=m +CONFIG_PCMCIA_ATMEL=m +CONFIG_AT76C50X_USB=m +CONFIG_AIRO_CS=m +CONFIG_PCMCIA_WL3501=m +CONFIG_PRISM54=m +CONFIG_USB_ZD1201=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_RTL8180=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +CONFIG_ADM8211=m +# CONFIG_MAC80211_HWSIM is not set +CONFIG_MWL8K=m +CONFIG_ATH_COMMON=m +CONFIG_ATH_CARDS=m +# CONFIG_ATH_DEBUG is not set +CONFIG_ATH5K=m +# CONFIG_ATH5K_DEBUG is not set +# CONFIG_ATH5K_TRACER is not set +CONFIG_ATH5K_PCI=y +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_PCI=y +CONFIG_ATH9K_AHB=y +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +# CONFIG_CARL9170_HWRNG is not set +CONFIG_ATH6KL=m +CONFIG_ATH6KL_SDIO=m +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +CONFIG_WIL6210=m +CONFIG_WIL6210_ISR_COR=y +# CONFIG_WIL6210_TRACING is not set +CONFIG_ATH10K=m +CONFIG_ATH10K_PCI=m +# CONFIG_ATH10K_DEBUG is not set +CONFIG_ATH10K_DEBUGFS=y +# CONFIG_ATH10K_TRACING is not set +CONFIG_B43=m +CONFIG_B43_BCMA=y +CONFIG_B43_SSB=y +CONFIG_B43_PCI_AUTOSELECT=y +CONFIG_B43_PCICORE_AUTOSELECT=y +CONFIG_B43_PCMCIA=y +CONFIG_B43_SDIO=y +CONFIG_B43_BCMA_PIO=y +CONFIG_B43_PIO=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_PHY_HT=y +CONFIG_B43_LEDS=y +CONFIG_B43_HWRNG=y +# CONFIG_B43_DEBUG is not set +CONFIG_B43LEGACY=m +CONFIG_B43LEGACY_PCI_AUTOSELECT=y +CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y +CONFIG_B43LEGACY_LEDS=y +CONFIG_B43LEGACY_HWRNG=y +# CONFIG_B43LEGACY_DEBUG is not set +CONFIG_B43LEGACY_DMA=y +CONFIG_B43LEGACY_PIO=y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y +# CONFIG_B43LEGACY_DMA_MODE is not set +# CONFIG_B43LEGACY_PIO_MODE is not set +CONFIG_BRCMUTIL=m +CONFIG_BRCMSMAC=m +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_SDIO=y +CONFIG_BRCMFMAC_USB=y +# CONFIG_BRCM_TRACING is not set +# CONFIG_BRCMDBG is not set +CONFIG_HOSTAP=m +CONFIG_HOSTAP_FIRMWARE=y +# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set +CONFIG_HOSTAP_PLX=m +CONFIG_HOSTAP_PCI=m +CONFIG_HOSTAP_CS=m +# CONFIG_IPW2100 is not set +# CONFIG_IPW2200 is not set +CONFIG_IWLWIFI=m +CONFIG_IWLDVM=m +CONFIG_IWLMVM=m +CONFIG_IWLWIFI_OPMODE_MODULAR=y + +# +# Debugging Options +# +# CONFIG_IWLWIFI_DEBUG is not set +CONFIG_IWLWIFI_DEVICE_TRACING=y +CONFIG_IWLEGACY=m +CONFIG_IWL4965=m +CONFIG_IWL3945=m + +# +# iwl3945 / iwl4965 Debugging Options +# +# CONFIG_IWLEGACY_DEBUG is not set +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBERTAS_CS=m +CONFIG_LIBERTAS_SDIO=m +# CONFIG_LIBERTAS_SPI is not set +# CONFIG_LIBERTAS_DEBUG is not set +CONFIG_LIBERTAS_MESH=y +CONFIG_HERMES=m +CONFIG_HERMES_PRISM=y +CONFIG_HERMES_CACHE_FW_ON_INIT=y +CONFIG_PLX_HERMES=m +CONFIG_TMD_HERMES=m +CONFIG_NORTEL_HERMES=m +CONFIG_PCI_HERMES=m +CONFIG_PCMCIA_HERMES=m +CONFIG_PCMCIA_SPECTRUM=m +CONFIG_ORINOCO_USB=m +CONFIG_P54_COMMON=m +CONFIG_P54_USB=m +CONFIG_P54_PCI=m +# CONFIG_P54_SPI is not set +CONFIG_P54_LEDS=y +CONFIG_RT2X00=m +CONFIG_RT2400PCI=m +CONFIG_RT2500PCI=m +CONFIG_RT61PCI=m +CONFIG_RT2800PCI=m +CONFIG_RT2800PCI_RT33XX=y +CONFIG_RT2800PCI_RT35XX=y +CONFIG_RT2800PCI_RT53XX=y +CONFIG_RT2800PCI_RT3290=y +CONFIG_RT2500USB=m +CONFIG_RT73USB=m +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2800_LIB=m +CONFIG_RT2X00_LIB_MMIO=m +CONFIG_RT2X00_LIB_PCI=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_DEBUG is not set +CONFIG_RTL_CARDS=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192DE=m +CONFIG_RTL8723AE=m +CONFIG_RTL8188EE=m +CONFIG_RTL8192CU=m +CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_PCI=m +CONFIG_RTLWIFI_USB=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_RTL8192C_COMMON=m +CONFIG_WL_TI=y +CONFIG_WL1251=m +# CONFIG_WL1251_SPI is not set +CONFIG_WL1251_SDIO=m +CONFIG_WL12XX=m +CONFIG_WL18XX=m +CONFIG_WLCORE=m +# CONFIG_WLCORE_SPI is not set +CONFIG_WLCORE_SDIO=m +CONFIG_WILINK_PLATFORM_DATA=y +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_SDIO=m +CONFIG_MWIFIEX_PCIE=m +CONFIG_MWIFIEX_USB=m +CONFIG_CW1200=m +CONFIG_CW1200_WLAN_SDIO=m +CONFIG_CW1200_WLAN_SPI=m + +# +# WiMAX Wireless Broadband devices +# +CONFIG_WIMAX_I2400M=m +CONFIG_WIMAX_I2400M_USB=m +CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 +# CONFIG_WAN is not set +CONFIG_IEEE802154_DRIVERS=m +CONFIG_IEEE802154_FAKEHARD=m +CONFIG_IEEE802154_FAKELB=m +CONFIG_IEEE802154_AT86RF230=m +# CONFIG_IEEE802154_MRF24J40 is not set +CONFIG_VMXNET3=m +CONFIG_HYPERV_NET=m +CONFIG_ISDN=y +CONFIG_ISDN_I4L=m +CONFIG_ISDN_PPP=y +CONFIG_ISDN_PPP_VJ=y +CONFIG_ISDN_MPP=y +CONFIG_IPPP_FILTER=y +CONFIG_ISDN_PPP_BSDCOMP=m +CONFIG_ISDN_AUDIO=y +CONFIG_ISDN_TTY_FAX=y + +# +# ISDN feature submodules +# +CONFIG_ISDN_DIVERSION=m + +# +# ISDN4Linux hardware drivers +# + +# +# Passive cards +# +CONFIG_ISDN_DRV_HISAX=m + +# +# D-channel protocol features +# +CONFIG_HISAX_EURO=y +CONFIG_DE_AOC=y +# CONFIG_HISAX_NO_SENDCOMPLETE is not set +# CONFIG_HISAX_NO_LLC is not set +# CONFIG_HISAX_NO_KEYPAD is not set +CONFIG_HISAX_1TR6=y +CONFIG_HISAX_NI1=y +CONFIG_HISAX_MAX_CARDS=8 + +# +# HiSax supported cards +# +CONFIG_HISAX_16_0=y +CONFIG_HISAX_16_3=y +CONFIG_HISAX_TELESPCI=y +CONFIG_HISAX_S0BOX=y +CONFIG_HISAX_AVM_A1=y +CONFIG_HISAX_FRITZPCI=y +CONFIG_HISAX_AVM_A1_PCMCIA=y +CONFIG_HISAX_ELSA=y +CONFIG_HISAX_IX1MICROR2=y +CONFIG_HISAX_DIEHLDIVA=y +CONFIG_HISAX_ASUSCOM=y +CONFIG_HISAX_TELEINT=y +CONFIG_HISAX_HFCS=y +CONFIG_HISAX_SEDLBAUER=y +CONFIG_HISAX_SPORTSTER=y +CONFIG_HISAX_MIC=y +CONFIG_HISAX_NETJET=y +CONFIG_HISAX_NETJET_U=y +CONFIG_HISAX_NICCY=y +CONFIG_HISAX_ISURF=y +CONFIG_HISAX_HSTSAPHIR=y +CONFIG_HISAX_BKM_A4T=y +CONFIG_HISAX_SCT_QUADRO=y +CONFIG_HISAX_GAZEL=y +CONFIG_HISAX_HFC_PCI=y +CONFIG_HISAX_W6692=y +CONFIG_HISAX_HFC_SX=y +CONFIG_HISAX_ENTERNOW_PCI=y +# CONFIG_HISAX_DEBUG is not set + +# +# HiSax PCMCIA card service modules +# +CONFIG_HISAX_SEDLBAUER_CS=m +CONFIG_HISAX_ELSA_CS=m +CONFIG_HISAX_AVM_A1_CS=m +CONFIG_HISAX_TELES_CS=m + +# +# HiSax sub driver modules +# +CONFIG_HISAX_ST5481=m +CONFIG_HISAX_HFCUSB=m +CONFIG_HISAX_HFC4S8S=m +CONFIG_HISAX_FRITZ_PCIPNP=m + +# +# Active cards +# +CONFIG_ISDN_DRV_ICN=m +CONFIG_ISDN_DRV_PCBIT=m +CONFIG_ISDN_DRV_SC=m +CONFIG_ISDN_DRV_ACT2000=m +CONFIG_ISDN_CAPI=m +CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y +CONFIG_CAPI_TRACE=y +CONFIG_ISDN_CAPI_MIDDLEWARE=y +CONFIG_ISDN_CAPI_CAPI20=m +CONFIG_ISDN_CAPI_CAPIDRV=m + +# +# CAPI hardware drivers +# +CONFIG_CAPI_AVM=y +CONFIG_ISDN_DRV_AVMB1_B1ISA=m +CONFIG_ISDN_DRV_AVMB1_B1PCI=m +CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y +CONFIG_ISDN_DRV_AVMB1_T1ISA=m +CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m +CONFIG_ISDN_DRV_AVMB1_AVM_CS=m +CONFIG_ISDN_DRV_AVMB1_T1PCI=m +CONFIG_ISDN_DRV_AVMB1_C4=m +CONFIG_CAPI_EICON=y +CONFIG_ISDN_DIVAS=m +CONFIG_ISDN_DIVAS_BRIPCI=y +CONFIG_ISDN_DIVAS_PRIPCI=y +CONFIG_ISDN_DIVAS_DIVACAPI=m +CONFIG_ISDN_DIVAS_USERIDI=m +CONFIG_ISDN_DIVAS_MAINT=m +CONFIG_ISDN_DRV_GIGASET=m +CONFIG_GIGASET_CAPI=y +# CONFIG_GIGASET_I4L is not set +# CONFIG_GIGASET_DUMMYLL is not set +CONFIG_GIGASET_BASE=m +CONFIG_GIGASET_M105=m +CONFIG_GIGASET_M101=m +# CONFIG_GIGASET_DEBUG is not set +CONFIG_HYSDN=m +CONFIG_HYSDN_CAPI=y +CONFIG_MISDN=m +CONFIG_MISDN_DSP=m +CONFIG_MISDN_L1OIP=m + +# +# mISDN hardware drivers +# +CONFIG_MISDN_HFCPCI=m +CONFIG_MISDN_HFCMULTI=m +CONFIG_MISDN_HFCUSB=m +CONFIG_MISDN_AVMFRITZ=m +CONFIG_MISDN_SPEEDFAX=m +CONFIG_MISDN_INFINEON=m +CONFIG_MISDN_W6692=m +CONFIG_MISDN_NETJET=m +CONFIG_MISDN_IPAC=m +CONFIG_MISDN_ISAR=m +CONFIG_ISDN_HDLC=m + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_MATRIXKMAP=m + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=m +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +CONFIG_KEYBOARD_ADP5588=m +CONFIG_KEYBOARD_ADP5589=m +CONFIG_KEYBOARD_ATKBD=y +CONFIG_KEYBOARD_QT1070=m +CONFIG_KEYBOARD_QT2160=m +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_GPIO is not set +# CONFIG_KEYBOARD_GPIO_POLLED is not set +CONFIG_KEYBOARD_TCA6416=m +CONFIG_KEYBOARD_TCA8418=m +CONFIG_KEYBOARD_MATRIX=m +# CONFIG_KEYBOARD_LM8323 is not set +CONFIG_KEYBOARD_LM8333=m +# CONFIG_KEYBOARD_MAX7359 is not set +CONFIG_KEYBOARD_MCS=m +CONFIG_KEYBOARD_MPR121=m +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=m +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_LIFEBOOK=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_PS2_SENTELIC=y +# CONFIG_MOUSE_PS2_TOUCHKIT is not set +CONFIG_MOUSE_PS2_OLPC=y +CONFIG_MOUSE_SERIAL=y +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_BCM5974=m +CONFIG_MOUSE_CYAPA=m +CONFIG_MOUSE_INPORT=m +# CONFIG_MOUSE_ATIXL is not set +CONFIG_MOUSE_LOGIBM=m +CONFIG_MOUSE_PC110PAD=m +CONFIG_MOUSE_VSXXXAA=m +# CONFIG_MOUSE_GPIO is not set +CONFIG_MOUSE_SYNAPTICS_I2C=m +CONFIG_MOUSE_SYNAPTICS_USB=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_JOYSTICK_ANALOG=m +CONFIG_JOYSTICK_A3D=m +CONFIG_JOYSTICK_ADI=m +CONFIG_JOYSTICK_COBRA=m +CONFIG_JOYSTICK_GF2K=m +CONFIG_JOYSTICK_GRIP=m +CONFIG_JOYSTICK_GRIP_MP=m +CONFIG_JOYSTICK_GUILLEMOT=m +CONFIG_JOYSTICK_INTERACT=m +CONFIG_JOYSTICK_SIDEWINDER=m +CONFIG_JOYSTICK_TMDC=m +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_IFORCE_232=y +CONFIG_JOYSTICK_WARRIOR=m +CONFIG_JOYSTICK_MAGELLAN=m +CONFIG_JOYSTICK_SPACEORB=m +CONFIG_JOYSTICK_SPACEBALL=m +CONFIG_JOYSTICK_STINGER=m +CONFIG_JOYSTICK_TWIDJOY=m +CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JOYSTICK_DB9=m +CONFIG_JOYSTICK_GAMECON=m +CONFIG_JOYSTICK_TURBOGRAFX=m +CONFIG_JOYSTICK_AS5011=m +CONFIG_JOYSTICK_JOYDUMP=m +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_JOYSTICK_WALKERA0701=m +CONFIG_INPUT_TABLET=y +CONFIG_TABLET_USB_ACECAD=m +CONFIG_TABLET_USB_AIPTEK=m +CONFIG_TABLET_USB_GTCO=m +CONFIG_TABLET_USB_HANWANG=m +CONFIG_TABLET_USB_KBTAB=m +CONFIG_TABLET_USB_WACOM=m +CONFIG_INPUT_TOUCHSCREEN=y +# CONFIG_TOUCHSCREEN_ADS7846 is not set +# CONFIG_TOUCHSCREEN_AD7877 is not set +CONFIG_TOUCHSCREEN_AD7879=m +CONFIG_TOUCHSCREEN_AD7879_I2C=m +# CONFIG_TOUCHSCREEN_AD7879_SPI is not set +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +CONFIG_TOUCHSCREEN_AUO_PIXCIR=m +CONFIG_TOUCHSCREEN_BU21013=m +CONFIG_TOUCHSCREEN_CY8CTMG110=m +CONFIG_TOUCHSCREEN_CYTTSP_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP_I2C=m +# CONFIG_TOUCHSCREEN_CYTTSP_SPI is not set +CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m +CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m +CONFIG_TOUCHSCREEN_DYNAPRO=m +CONFIG_TOUCHSCREEN_HAMPSHIRE=m +CONFIG_TOUCHSCREEN_EETI=m +CONFIG_TOUCHSCREEN_EGALAX=m +CONFIG_TOUCHSCREEN_FUJITSU=m +CONFIG_TOUCHSCREEN_ILI210X=m +CONFIG_TOUCHSCREEN_GUNZE=m +CONFIG_TOUCHSCREEN_ELO=m +CONFIG_TOUCHSCREEN_WACOM_W8001=m +CONFIG_TOUCHSCREEN_WACOM_I2C=m +CONFIG_TOUCHSCREEN_MAX11801=m +CONFIG_TOUCHSCREEN_MCS5000=m +CONFIG_TOUCHSCREEN_MMS114=m +CONFIG_TOUCHSCREEN_MTOUCH=m +CONFIG_TOUCHSCREEN_INEXIO=m +CONFIG_TOUCHSCREEN_MK712=m +CONFIG_TOUCHSCREEN_HTCPEN=m +CONFIG_TOUCHSCREEN_PENMOUNT=m +CONFIG_TOUCHSCREEN_EDT_FT5X06=m +CONFIG_TOUCHSCREEN_TOUCHRIGHT=m +CONFIG_TOUCHSCREEN_TOUCHWIN=m +CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m +CONFIG_TOUCHSCREEN_UCB1400=m +CONFIG_TOUCHSCREEN_PIXCIR=m +CONFIG_TOUCHSCREEN_WM97XX=m +CONFIG_TOUCHSCREEN_WM9705=y +CONFIG_TOUCHSCREEN_WM9712=y +CONFIG_TOUCHSCREEN_WM9713=y +CONFIG_TOUCHSCREEN_USB_COMPOSITE=m +CONFIG_TOUCHSCREEN_MC13783=m +CONFIG_TOUCHSCREEN_USB_EGALAX=y +CONFIG_TOUCHSCREEN_USB_PANJIT=y +CONFIG_TOUCHSCREEN_USB_3M=y +CONFIG_TOUCHSCREEN_USB_ITM=y +CONFIG_TOUCHSCREEN_USB_ETURBO=y +CONFIG_TOUCHSCREEN_USB_GUNZE=y +CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y +CONFIG_TOUCHSCREEN_USB_IRTOUCH=y +CONFIG_TOUCHSCREEN_USB_IDEALTEK=y +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y +CONFIG_TOUCHSCREEN_USB_GOTOP=y +CONFIG_TOUCHSCREEN_USB_JASTEC=y +CONFIG_TOUCHSCREEN_USB_ELO=y +CONFIG_TOUCHSCREEN_USB_E2I=y +CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y +CONFIG_TOUCHSCREEN_USB_NEXIO=y +CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y +CONFIG_TOUCHSCREEN_TOUCHIT213=m +CONFIG_TOUCHSCREEN_TSC_SERIO=m +# CONFIG_TOUCHSCREEN_TSC2005 is not set +CONFIG_TOUCHSCREEN_TSC2007=m +CONFIG_TOUCHSCREEN_ST1232=m +CONFIG_TOUCHSCREEN_TPS6507X=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_AD714X=m +CONFIG_INPUT_AD714X_I2C=m +CONFIG_INPUT_AD714X_SPI=m +CONFIG_INPUT_BMA150=m +CONFIG_INPUT_PCSPKR=m +CONFIG_INPUT_MC13783_PWRBUTTON=m +CONFIG_INPUT_MMA8450=m +CONFIG_INPUT_MPU3050=m +CONFIG_INPUT_APANEL=m +CONFIG_INPUT_GP2A=m +# CONFIG_INPUT_GPIO_TILT_POLLED is not set +CONFIG_INPUT_WISTRON_BTNS=m +CONFIG_INPUT_ATLAS_BTNS=m +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_KEYSPAN_REMOTE=m +CONFIG_INPUT_KXTJ9=m +# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_YEALINK=m +CONFIG_INPUT_CM109=m +CONFIG_INPUT_RETU_PWRBUTTON=m +CONFIG_INPUT_UINPUT=m +CONFIG_INPUT_PCF50633_PMU=m +CONFIG_INPUT_PCF8574=m +# CONFIG_INPUT_PWM_BEEPER is not set +CONFIG_INPUT_GPIO_ROTARY_ENCODER=m +CONFIG_INPUT_ADXL34X=m +CONFIG_INPUT_ADXL34X_I2C=m +CONFIG_INPUT_ADXL34X_SPI=m +# CONFIG_INPUT_IMS_PCU is not set +CONFIG_INPUT_CMA3000=m +CONFIG_INPUT_CMA3000_I2C=m +CONFIG_INPUT_IDEAPAD_SLIDEBAR=m + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_SERIO_I8042=y +CONFIG_SERIO_SERPORT=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_RAW=m +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_APBPS2=m +CONFIG_SERIO_OLPC_APSP=m +CONFIG_GAMEPORT=m +CONFIG_GAMEPORT_NS558=m +CONFIG_GAMEPORT_L4=m +CONFIG_GAMEPORT_EMU10K1=m +CONFIG_GAMEPORT_FM801=m + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +# CONFIG_LEGACY_PTYS is not set +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_ROCKETPORT=m +CONFIG_CYCLADES=m +# CONFIG_CYZ_INTR is not set +# CONFIG_MOXA_INTELLIO is not set +# CONFIG_MOXA_SMARTIO is not set +CONFIG_SYNCLINK=m +CONFIG_SYNCLINKMP=m +# CONFIG_SYNCLINK_GT is not set +CONFIG_NOZOMI=m +# CONFIG_ISI is not set +CONFIG_N_HDLC=m +CONFIG_N_GSM=m +CONFIG_TRACE_ROUTER=m +CONFIG_TRACE_SINK=m +# CONFIG_DEVKMEM is not set + +# +# Serial drivers +# +CONFIG_SERIAL_8250=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_CS=m +CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +# CONFIG_SERIAL_8250_EXTENDED is not set +CONFIG_SERIAL_8250_DW=m + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +CONFIG_SERIAL_MFD_HSU=m +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_OF_PLATFORM=m +CONFIG_SERIAL_SCCNXP=m +# CONFIG_SERIAL_TIMBERDALE is not set +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 +CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 +# CONFIG_SERIAL_IFX6X60 is not set +CONFIG_SERIAL_PCH_UART=m +CONFIG_SERIAL_XILINX_PS_UART=m +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_ARC_NR_PORTS=1 +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_RP2_NR_UARTS=32 +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SERIAL_ST_ASC=m +CONFIG_PRINTER=m +# CONFIG_LP_CONSOLE is not set +CONFIG_PPDEV=m +CONFIG_HVC_DRIVER=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_IPMI_HANDLER=m +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPMI_POWEROFF=m +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HW_RANDOM_INTEL=m +CONFIG_HW_RANDOM_AMD=m +CONFIG_HW_RANDOM_GEODE=m +CONFIG_HW_RANDOM_VIA=m +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HW_RANDOM_TPM=m +CONFIG_NVRAM=m +CONFIG_DTLK=m +CONFIG_R3964=m +CONFIG_APPLICOM=m +CONFIG_SONYPI=m + +# +# PCMCIA character devices +# +CONFIG_SYNCLINK_CS=m +CONFIG_CARDMAN_4000=m +CONFIG_CARDMAN_4040=m +CONFIG_IPWIRELESS=m +CONFIG_MWAVE=m +CONFIG_PC8736x_GPIO=m +CONFIG_NSC_GPIO=m +# CONFIG_RAW_DRIVER is not set +CONFIG_HPET=y +CONFIG_HPET_MMAP=y +CONFIG_HANGCHECK_TIMER=m +CONFIG_TCG_TPM=m +CONFIG_TCG_TIS=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_NSC=m +CONFIG_TCG_ATMEL=m +CONFIG_TCG_INFINEON=m +CONFIG_TCG_ST33_I2C=m +CONFIG_TELCLOCK=m +CONFIG_DEVPORT=y +CONFIG_I2C=m +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=m +# CONFIG_I2C_MUX is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_SMBUS=m +CONFIG_I2C_ALGOBIT=m +CONFIG_I2C_ALGOPCA=m + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD756_S4882=m +CONFIG_I2C_AMD8111=m +CONFIG_I2C_I801=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_ISMT=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NFORCE2_S4985=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m + +# +# ACPI drivers +# +CONFIG_I2C_SCMI=m + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_CBUS_GPIO is not set +CONFIG_I2C_DESIGNWARE_CORE=m +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_EG20T=m +# CONFIG_I2C_GPIO is not set +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PXA=m +CONFIG_I2C_PXA_PCI=y +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_XILINX=m + +# +# External I2C/SMBus adapter drivers +# +CONFIG_I2C_DIOLAN_U2C=m +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PARPORT_LIGHT=m +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_TINY_USB=m +CONFIG_I2C_VIPERBOARD=m + +# +# Other I2C/SMBus bus drivers +# +CONFIG_I2C_PCA_ISA=m +CONFIG_SCx200_ACB=m +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +# CONFIG_SPI_BITBANG is not set +# CONFIG_SPI_BUTTERFLY is not set +# CONFIG_SPI_GPIO is not set +# CONFIG_SPI_LM70_LLP is not set +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_FSL_DSPI is not set +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PXA2XX is not set +# CONFIG_SPI_PXA2XX_PCI is not set +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_TOPCLIFF_PCH is not set +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +# CONFIG_SPI_DESIGNWARE is not set + +# +# SPI Protocol Masters +# +# CONFIG_SPI_SPIDEV is not set +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_HSI is not set + +# +# PPS support +# +CONFIG_PPS=m +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +CONFIG_PPS_CLIENT_KTIMER=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +CONFIG_PPS_CLIENT_GPIO=m + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=m +CONFIG_DP83640_PHY=m +CONFIG_PTP_1588_CLOCK_PCH=m +CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y +CONFIG_GPIO_DEVRES=y +CONFIG_GPIOLIB=y +CONFIG_OF_GPIO=y +CONFIG_GPIO_ACPI=y +# CONFIG_DEBUG_GPIO is not set +CONFIG_GPIO_SYSFS=y + +# +# Memory mapped GPIO drivers: +# +# CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_IT8761E is not set +# CONFIG_GPIO_F7188X is not set +# CONFIG_GPIO_TS5500 is not set +CONFIG_GPIO_SCH=m +CONFIG_GPIO_ICH=m +# CONFIG_GPIO_VX855 is not set +# CONFIG_GPIO_LYNXPOINT is not set +# CONFIG_GPIO_GRGPIO is not set + +# +# I2C GPIO expanders: +# +CONFIG_GPIO_ARIZONA=m +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_ADP5588 is not set +# CONFIG_GPIO_ADNP is not set + +# +# PCI GPIO expanders: +# +CONFIG_GPIO_CS5535=y +CONFIG_GPIO_AMD8111=m +# CONFIG_GPIO_LANGWELL is not set +# CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_ML_IOH is not set +# CONFIG_GPIO_SODAVILLE is not set +# CONFIG_GPIO_RDC321X is not set + +# +# SPI GPIO expanders: +# +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MCP23S08 is not set +# CONFIG_GPIO_MC33880 is not set +# CONFIG_GPIO_74X164 is not set + +# +# AC97 GPIO expanders: +# +CONFIG_GPIO_UCB1400=y + +# +# LPC GPIO expanders: +# + +# +# MODULbus GPIO expanders: +# + +# +# USB GPIO expanders: +# +CONFIG_GPIO_VIPERBOARD=m +# CONFIG_W1 is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_PDA_POWER=m +CONFIG_TEST_POWER=m +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +CONFIG_BATTERY_OLPC=m +# CONFIG_BATTERY_SBS is not set +# CONFIG_BATTERY_BQ27x00 is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_PCF50633 is not set +# CONFIG_CHARGER_ISP1704 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_SMB347 is not set +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_GPIO=y +CONFIG_POWER_AVS=y +CONFIG_HWMON=y +CONFIG_HWMON_VID=m +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +CONFIG_SENSORS_ABITUGURU=m +CONFIG_SENSORS_ABITUGURU3=m +# CONFIG_SENSORS_AD7314 is not set +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +# CONFIG_SENSORS_ADCXX is not set +CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_K8TEMP=m +CONFIG_SENSORS_K10TEMP=m +CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_ASB100=m +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_DS1621=m +CONFIG_SENSORS_I5K_AMB=m +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FSCHMD=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +# CONFIG_SENSORS_GPIO_FAN is not set +CONFIG_SENSORS_HIH6130=m +CONFIG_SENSORS_HTU21=m +CONFIG_SENSORS_CORETEMP=m +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_LINEAGE=m +CONFIG_SENSORS_LM63=m +# CONFIG_SENSORS_LM70 is not set +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +# CONFIG_SENSORS_MAX1111 is not set +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_PCF8591=m +CONFIG_PMBUS=m +CONFIG_SENSORS_PMBUS=m +CONFIG_SENSORS_ADM1275=m +CONFIG_SENSORS_LM25066=m +CONFIG_SENSORS_LTC2978=m +CONFIG_SENSORS_MAX16064=m +CONFIG_SENSORS_MAX34440=m +CONFIG_SENSORS_MAX8688=m +CONFIG_SENSORS_UCD9000=m +CONFIG_SENSORS_UCD9200=m +CONFIG_SENSORS_ZL6100=m +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_SMM665=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_ADS1015=m +CONFIG_SENSORS_ADS7828=m +# CONFIG_SENSORS_ADS7871 is not set +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +CONFIG_SENSORS_VIA_CPUTEMP=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_APPLESMC=m +CONFIG_SENSORS_MC13783_ADC=m + +# +# ACPI drivers +# +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_SENSORS_ATK0110=m +CONFIG_THERMAL=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +CONFIG_THERMAL_GOV_USER_SPACE=y +# CONFIG_CPU_THERMAL is not set +# CONFIG_THERMAL_EMULATION is not set +CONFIG_INTEL_POWERCLAMP=m +CONFIG_X86_PKG_TEMP_THERMAL=m + +# +# Texas Instruments thermal drivers +# +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set + +# +# Watchdog Device Drivers +# +CONFIG_SOFT_WATCHDOG=m +CONFIG_RETU_WATCHDOG=m +CONFIG_ACQUIRE_WDT=m +CONFIG_ADVANTECH_WDT=m +CONFIG_ALIM1535_WDT=m +CONFIG_ALIM7101_WDT=m +CONFIG_F71808E_WDT=m +CONFIG_SP5100_TCO=m +CONFIG_GEODE_WDT=m +CONFIG_SC520_WDT=m +CONFIG_SBC_FITPC2_WATCHDOG=m +CONFIG_EUROTECH_WDT=m +CONFIG_IB700_WDT=m +CONFIG_IBMASR=m +CONFIG_WAFER_WDT=m +CONFIG_I6300ESB_WDT=m +CONFIG_IE6XX_WDT=m +CONFIG_ITCO_WDT=m +CONFIG_ITCO_VENDOR_SUPPORT=y +CONFIG_IT8712F_WDT=m +CONFIG_IT87_WDT=m +CONFIG_HP_WATCHDOG=m +CONFIG_HPWDT_NMI_DECODING=y +CONFIG_SC1200_WDT=m +CONFIG_PC87413_WDT=m +CONFIG_NV_TCO=m +CONFIG_60XX_WDT=m +CONFIG_SBC8360_WDT=m +CONFIG_SBC7240_WDT=m +CONFIG_CPU5_WDT=m +CONFIG_SMSC_SCH311X_WDT=m +CONFIG_SMSC37B787_WDT=m +CONFIG_VIA_WDT=m +CONFIG_W83627HF_WDT=m +CONFIG_W83697HF_WDT=m +CONFIG_W83697UG_WDT=m +CONFIG_W83877F_WDT=m +CONFIG_W83977F_WDT=m +CONFIG_MACHZ_WDT=m +CONFIG_SBC_EPX_C3_WATCHDOG=m +CONFIG_MEN_A21_WDT=m + +# +# ISA-based Watchdog Cards +# +CONFIG_PCWATCHDOG=m +CONFIG_MIXCOMWD=m +CONFIG_WDT=m + +# +# PCI-based Watchdog Cards +# +CONFIG_PCIPCWATCHDOG=m +CONFIG_WDTPCI=m + +# +# USB-based Watchdog Cards +# +CONFIG_USBPCWATCHDOG=m +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +CONFIG_SSB=m +CONFIG_SSB_SPROM=y +CONFIG_SSB_BLOCKIO=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_B43_PCI_BRIDGE=y +CONFIG_SSB_PCMCIAHOST_POSSIBLE=y +CONFIG_SSB_PCMCIAHOST=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +CONFIG_SSB_SDIOHOST=y +# CONFIG_SSB_DEBUG is not set +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_SSB_DRIVER_GPIO=y +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +CONFIG_BCMA=m +CONFIG_BCMA_BLOCKIO=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_PCI=y +# CONFIG_BCMA_HOST_SOC is not set +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +# CONFIG_BCMA_DEBUG is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=y +CONFIG_MFD_CS5535=m +# CONFIG_MFD_CROS_EC is not set +# CONFIG_MFD_DA9052_SPI is not set +CONFIG_MFD_MC13783=m +CONFIG_MFD_MC13XXX=m +# CONFIG_MFD_MC13XXX_SPI is not set +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_HTC_PASIC3=m +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_EZX_PCAP is not set +CONFIG_MFD_VIPERBOARD=m +CONFIG_MFD_RETU=m +CONFIG_MFD_PCF50633=m +CONFIG_PCF50633_ADC=m +CONFIG_PCF50633_GPIO=m +CONFIG_UCB1400_CORE=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RTSX_PCI=m +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SM501_GPIO=y +CONFIG_ABX500_CORE=y +# CONFIG_MFD_STMPE is not set +# CONFIG_MFD_SYSCON is not set +CONFIG_MFD_TI_AM335X_TSCADC=m +# CONFIG_TPS6105X is not set +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_MFD_TPS65217=m +# CONFIG_MFD_TPS65912 is not set +# CONFIG_MFD_TPS65912_SPI is not set +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_LM3533=m +# CONFIG_MFD_TIMBERDALE is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MFD_VX855=m +CONFIG_MFD_ARIZONA=y +CONFIG_MFD_ARIZONA_I2C=m +# CONFIG_MFD_ARIZONA_SPI is not set +CONFIG_MFD_WM5102=y +CONFIG_MFD_WM5110=y +# CONFIG_MFD_WM8997 is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_REGULATOR is not set +CONFIG_MEDIA_SUPPORT=m + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_RC_SUPPORT=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_VIDEO_DEV=m +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2=m +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_TUNER=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_DMA_SG=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF_DVB=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF2_DMA_SG=m +# CONFIG_VIDEO_V4L2_INT_DEVICE is not set +CONFIG_DVB_CORE=m +CONFIG_DVB_NET=y +CONFIG_TTPCI_EEPROM=m +CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_DYNAMIC_MINORS is not set + +# +# Media drivers +# +CONFIG_RC_CORE=m +CONFIG_RC_MAP=m +CONFIG_RC_DECODERS=y +CONFIG_LIRC=m +CONFIG_IR_LIRC_CODEC=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_RC5_SZ_DECODER=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_RC_DEVICES=y +CONFIG_RC_ATI_REMOTE=m +CONFIG_IR_ENE=m +CONFIG_IR_IMON=m +CONFIG_IR_MCEUSB=m +CONFIG_IR_ITE_CIR=m +CONFIG_IR_FINTEK=m +CONFIG_IR_NUVOTON=m +CONFIG_IR_REDRAT3=m +CONFIG_IR_STREAMZAP=m +CONFIG_IR_WINBOND_CIR=m +CONFIG_IR_IGUANA=m +CONFIG_IR_TTUSBIR=m +CONFIG_RC_LOOPBACK=m +CONFIG_IR_GPIO_CIR=m +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_VIDEO_CPIA2=m +CONFIG_USB_ZR364XX=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_S2255=m +CONFIG_USB_SN9C102=m +CONFIG_VIDEO_USBTV=m + +# +# Analog TV USB devices +# +CONFIG_VIDEO_PVRUSB2=m +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_PVRUSB2_DVB=y +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_TLG2300=m +CONFIG_VIDEO_USBVISION=m +CONFIG_VIDEO_STK1160_COMMON=m +CONFIG_VIDEO_STK1160_AC97=y +CONFIG_VIDEO_STK1160=m + +# +# Analog/digital TV USB devices +# +CONFIG_VIDEO_AU0828=m +CONFIG_VIDEO_AU0828_V4L2=y +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +CONFIG_VIDEO_TM6000=m +CONFIG_VIDEO_TM6000_ALSA=m +CONFIG_VIDEO_TM6000_DVB=m + +# +# Digital TV USB devices +# +CONFIG_DVB_USB=m +# CONFIG_DVB_USB_DEBUG is not set +CONFIG_DVB_USB_A800=m +CONFIG_DVB_USB_DIBUSB_MB=m +CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y +CONFIG_DVB_USB_DIBUSB_MC=m +CONFIG_DVB_USB_DIB0700=m +CONFIG_DVB_USB_UMT_010=m +CONFIG_DVB_USB_CXUSB=m +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m +CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m +CONFIG_DVB_USB_NOVA_T_USB2=m +CONFIG_DVB_USB_TTUSB2=m +CONFIG_DVB_USB_DTT200U=m +CONFIG_DVB_USB_OPERA1=m +CONFIG_DVB_USB_AF9005=m +CONFIG_DVB_USB_AF9005_REMOTE=m +CONFIG_DVB_USB_PCTV452E=m +CONFIG_DVB_USB_DW2102=m +CONFIG_DVB_USB_CINERGY_T2=m +CONFIG_DVB_USB_DTV5100=m +CONFIG_DVB_USB_FRIIO=m +CONFIG_DVB_USB_AZ6027=m +CONFIG_DVB_USB_TECHNISAT_USB2=m +CONFIG_DVB_USB_V2=m +CONFIG_DVB_USB_AF9015=m +CONFIG_DVB_USB_AF9035=m +CONFIG_DVB_USB_ANYSEE=m +CONFIG_DVB_USB_AU6610=m +CONFIG_DVB_USB_AZ6007=m +CONFIG_DVB_USB_CE6230=m +CONFIG_DVB_USB_EC168=m +CONFIG_DVB_USB_GL861=m +CONFIG_DVB_USB_IT913X=m +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m +CONFIG_DVB_TTUSB_BUDGET=m +CONFIG_DVB_TTUSB_DEC=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set + +# +# Webcam, TV (analog/digital) USB devices +# +CONFIG_VIDEO_EM28XX=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_VIDEO_EM28XX_RC=m +CONFIG_MEDIA_PCI_SUPPORT=y + +# +# Media capture support +# +CONFIG_VIDEO_MEYE=m + +# +# Media capture/analog TV support +# +CONFIG_VIDEO_IVTV=m +CONFIG_VIDEO_IVTV_ALSA=m +CONFIG_VIDEO_FB_IVTV=m +CONFIG_VIDEO_ZORAN=m +CONFIG_VIDEO_ZORAN_DC30=m +CONFIG_VIDEO_ZORAN_ZR36060=m +CONFIG_VIDEO_ZORAN_BUZ=m +CONFIG_VIDEO_ZORAN_DC10=m +CONFIG_VIDEO_ZORAN_LML33=m +CONFIG_VIDEO_ZORAN_LML33R10=m +CONFIG_VIDEO_ZORAN_AVS6EYES=m +CONFIG_VIDEO_HEXIUM_GEMINI=m +CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_MXB=m + +# +# Media capture/analog/hybrid TV support +# +CONFIG_VIDEO_CX18=m +CONFIG_VIDEO_CX18_ALSA=m +CONFIG_VIDEO_CX23885=m +CONFIG_MEDIA_ALTERA_CI=m +CONFIG_VIDEO_CX25821=m +CONFIG_VIDEO_CX25821_ALSA=m +CONFIG_VIDEO_CX88=m +CONFIG_VIDEO_CX88_ALSA=m +CONFIG_VIDEO_CX88_BLACKBIRD=m +CONFIG_VIDEO_CX88_DVB=m +CONFIG_VIDEO_CX88_ENABLE_VP3054=y +CONFIG_VIDEO_CX88_VP3054=m +CONFIG_VIDEO_CX88_MPEG=m +CONFIG_VIDEO_BT848=m +CONFIG_DVB_BT8XX=m +CONFIG_VIDEO_SAA7134=m +CONFIG_VIDEO_SAA7134_ALSA=m +CONFIG_VIDEO_SAA7134_RC=y +CONFIG_VIDEO_SAA7134_DVB=m +CONFIG_VIDEO_SAA7164=m + +# +# Media digital TV PCI Adapters +# +CONFIG_DVB_AV7110=m +CONFIG_DVB_AV7110_OSD=y +CONFIG_DVB_BUDGET_CORE=m +CONFIG_DVB_BUDGET=m +CONFIG_DVB_BUDGET_CI=m +CONFIG_DVB_BUDGET_AV=m +CONFIG_DVB_BUDGET_PATCH=m +CONFIG_DVB_B2C2_FLEXCOP_PCI=m +# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set +CONFIG_DVB_PLUTO2=m +CONFIG_DVB_DM1105=m +CONFIG_DVB_PT1=m +CONFIG_MANTIS_CORE=m +CONFIG_DVB_MANTIS=m +CONFIG_DVB_HOPPER=m +CONFIG_DVB_NGENE=m +CONFIG_DVB_DDBRIDGE=m +# CONFIG_V4L_PLATFORM_DRIVERS is not set +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m +CONFIG_VIDEO_SH_VEU=m +CONFIG_VIDEO_RENESAS_VSP1=m +# CONFIG_V4L_TEST_DRIVERS is not set + +# +# Supported MMC/SDIO adapters +# +CONFIG_SMS_SDIO_DRV=m +CONFIG_MEDIA_PARPORT_SUPPORT=y +CONFIG_VIDEO_BWQCAM=m +CONFIG_VIDEO_CQCAM=m +CONFIG_VIDEO_PMS=m +CONFIG_VIDEO_W9966=m +CONFIG_RADIO_ADAPTERS=y +CONFIG_RADIO_TEA575X=m +CONFIG_RADIO_SI470X=y +CONFIG_USB_SI470X=m +CONFIG_I2C_SI470X=m +CONFIG_USB_MR800=m +CONFIG_USB_DSBR=m +CONFIG_RADIO_MAXIRADIO=m +CONFIG_RADIO_SHARK=m +CONFIG_RADIO_SHARK2=m +CONFIG_I2C_SI4713=m +CONFIG_RADIO_SI4713=m +CONFIG_USB_KEENE=m +CONFIG_USB_MA901=m +CONFIG_RADIO_TEA5764=m +CONFIG_RADIO_SAA7706H=m +CONFIG_RADIO_TEF6862=m +CONFIG_RADIO_WL1273=m + +# +# Texas Instruments WL128x FM driver (ST based) +# +CONFIG_RADIO_WL128X=m +# CONFIG_V4L_RADIO_ISA_DRIVERS is not set + +# +# Supported FireWire (IEEE 1394) Adapters +# +CONFIG_DVB_FIREDTV=m +CONFIG_DVB_FIREDTV_INPUT=y +CONFIG_MEDIA_COMMON_OPTIONS=y + +# +# common driver options +# +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_BTCX=m +CONFIG_VIDEO_TVEEPROM=m +CONFIG_CYPRESS_FIRMWARE=m +CONFIG_DVB_B2C2_FLEXCOP=m +CONFIG_VIDEO_SAA7146=m +CONFIG_VIDEO_SAA7146_VV=m +CONFIG_SMS_SIANO_MDTV=m +CONFIG_SMS_SIANO_RC=y + +# +# Media ancillary drivers (tuners, sensors, i2c, frontends) +# +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_VIDEO_IR_I2C=m + +# +# Audio decoders, processors and mixers +# +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_SONY_BTF_MPX=m + +# +# RDS decoders +# +CONFIG_VIDEO_SAA6588=m + +# +# Video decoders +# +CONFIG_VIDEO_BT819=m +CONFIG_VIDEO_BT856=m +CONFIG_VIDEO_BT866=m +CONFIG_VIDEO_KS0127=m +CONFIG_VIDEO_SAA7110=m +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m +CONFIG_VIDEO_VPX3220=m + +# +# Video and audio decoders +# +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_CX25840=m + +# +# Video encoders +# +CONFIG_VIDEO_SAA7127=m +CONFIG_VIDEO_SAA7185=m +CONFIG_VIDEO_ADV7170=m +CONFIG_VIDEO_ADV7175=m + +# +# Camera sensor devices +# +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_MT9V011=m + +# +# Flash devices +# + +# +# Video improvement chips +# +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m + +# +# Miscelaneous helper chips +# +CONFIG_VIDEO_M52790=m + +# +# Sensors used on soc_camera driver +# +CONFIG_MEDIA_TUNER=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC5000=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_R820T=m + +# +# Multistandard (satellite) frontends +# +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV6110x=m + +# +# Multistandard (cable + terrestrial) frontends +# +CONFIG_DVB_DRXK=m +CONFIG_DVB_TDA18271C2DD=m + +# +# DVB-S (satellite) frontends +# +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_MT312=m +CONFIG_DVB_ZL10036=m +CONFIG_DVB_ZL10039=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_TDA8083=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TDA8261=m +CONFIG_DVB_VES1X93=m +CONFIG_DVB_TUNER_ITD1000=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_TUA6100=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_MB86A16=m +CONFIG_DVB_TDA10071=m + +# +# DVB-T (terrestrial) frontends +# +CONFIG_DVB_SP8870=m +CONFIG_DVB_SP887X=m +CONFIG_DVB_CX22700=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_L64781=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_MT352=m +CONFIG_DVB_ZL10353=m +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_AF9013=m +CONFIG_DVB_EC100=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m + +# +# DVB-C (cable) frontends +# +CONFIG_DVB_VES1820=m +CONFIG_DVB_TDA10021=m +CONFIG_DVB_TDA10023=m +CONFIG_DVB_STV0297=m + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +CONFIG_DVB_NXT200X=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_BCM3510=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_S5H1411=m + +# +# ISDB-T (terrestrial) frontends +# +CONFIG_DVB_S921=m +CONFIG_DVB_DIB8000=m +CONFIG_DVB_MB86A20S=m + +# +# Digital terrestrial only tuners/PLL +# +CONFIG_DVB_PLL=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# SEC control devices for DVB-S +# +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_ISL6405=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_A8293=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_TDA665x=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_IT913X_FE=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_AF9033=m + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set + +# +# Graphics support +# +CONFIG_AGP=m +CONFIG_AGP_ALI=m +CONFIG_AGP_ATI=m +CONFIG_AGP_AMD=m +CONFIG_AGP_AMD64=m +CONFIG_AGP_INTEL=m +CONFIG_AGP_NVIDIA=m +CONFIG_AGP_SIS=m +CONFIG_AGP_SWORKS=m +CONFIG_AGP_VIA=m +CONFIG_AGP_EFFICEON=m +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VGA_SWITCHEROO=y +CONFIG_DRM=m +CONFIG_DRM_USB=m +CONFIG_DRM_KMS_HELPER=m +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_TTM=m + +# +# I2C encoder or helper chips +# +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_TDFX=m +CONFIG_DRM_R128=m +CONFIG_DRM_RADEON=m +# CONFIG_DRM_RADEON_UMS is not set +CONFIG_DRM_NOUVEAU=m +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +CONFIG_DRM_I915=m +CONFIG_DRM_I915_KMS=y +# CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set +CONFIG_DRM_MGA=m +CONFIG_DRM_SIS=m +CONFIG_DRM_VIA=m +CONFIG_DRM_SAVAGE=m +CONFIG_DRM_VMWGFX=m +CONFIG_DRM_VMWGFX_FBCON=y +CONFIG_DRM_GMA500=m +CONFIG_DRM_GMA600=y +CONFIG_DRM_GMA3600=y +CONFIG_DRM_UDL=m +CONFIG_DRM_AST=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_CIRRUS_QEMU=m +CONFIG_DRM_QXL=m +CONFIG_VGASTATE=m +CONFIG_VIDEO_OUTPUT_CONTROL=m +CONFIG_HDMI=y +CONFIG_FB=y +CONFIG_FIRMWARE_EDID=y +CONFIG_FB_DDC=m +CONFIG_FB_BOOT_VESA_SUPPORT=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_IMAGEBLIT=m +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +CONFIG_FB_BACKLIGHT=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_TILEBLITTING=y + +# +# Frame buffer hardware drivers +# +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ARC is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +CONFIG_FB_VGA16=m +CONFIG_FB_UVESA=m +CONFIG_FB_VESA=y +CONFIG_FB_EFI=y +# CONFIG_FB_N411 is not set +# CONFIG_FB_HGA is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +CONFIG_FB_I810=m +CONFIG_FB_I810_GTF=y +CONFIG_FB_I810_I2C=y +# CONFIG_FB_LE80578 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +CONFIG_FB_VIA=m +CONFIG_FB_VIA_DIRECT_PROCFS=y +CONFIG_FB_VIA_X_COMPATIBILITY=y +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +CONFIG_FB_VOODOO1=m +CONFIG_FB_VT8623=m +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_CARMINE is not set +# CONFIG_FB_GEODE is not set +# CONFIG_FB_TMIO is not set +# CONFIG_FB_SM501 is not set +# CONFIG_FB_SMSCUFX is not set +CONFIG_FB_UDL=m +# CONFIG_FB_GOLDFISH is not set +CONFIG_FB_VIRTUAL=m +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +CONFIG_FB_HYPERV=m +# CONFIG_FB_SIMPLE is not set +# CONFIG_EXYNOS_VIDEO is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_LCD_CLASS_DEVICE=m +# CONFIG_LCD_L4F00242T03 is not set +# CONFIG_LCD_LMS283GF05 is not set +# CONFIG_LCD_LTV350QV is not set +# CONFIG_LCD_ILI922X is not set +# CONFIG_LCD_ILI9320 is not set +# CONFIG_LCD_TDO24M is not set +# CONFIG_LCD_VGG2432A4 is not set +CONFIG_LCD_PLATFORM=m +# CONFIG_LCD_S6E63M0 is not set +# CONFIG_LCD_LD9040 is not set +# CONFIG_LCD_AMS369FG06 is not set +# CONFIG_LCD_LMS501KF03 is not set +# CONFIG_LCD_HX8357 is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +# CONFIG_BACKLIGHT_GENERIC is not set +CONFIG_BACKLIGHT_LM3533=m +# CONFIG_BACKLIGHT_PWM is not set +CONFIG_BACKLIGHT_APPLE=m +# CONFIG_BACKLIGHT_SAHARA is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +CONFIG_BACKLIGHT_PCF50633=m +# CONFIG_BACKLIGHT_LM3630 is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LP855X is not set +# CONFIG_BACKLIGHT_OT200 is not set +# CONFIG_BACKLIGHT_TPS65217 is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set + +# +# Console display driver support +# +CONFIG_VGA_CONSOLE=y +# CONFIG_VGACON_SOFT_SCROLLBACK is not set +# CONFIG_MDA_CONSOLE is not set +CONFIG_DUMMY_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_LOGO is not set +CONFIG_FB_SSD1307=m +CONFIG_SOUND=m +CONFIG_SOUND_OSS_CORE=y +# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_JACK=y +CONFIG_SND_SEQUENCER=m +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +CONFIG_SND_SEQUENCER_OSS=y +CONFIG_SND_HRTIMER=m +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_MAX_CARDS=32 +CONFIG_SND_SUPPORT_OLD_API=y +CONFIG_SND_VERBOSE_PROCFS=y +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +CONFIG_SND_VMASTER=y +CONFIG_SND_KCTL_JACK=y +CONFIG_SND_DMA_SGBUF=y +CONFIG_SND_RAWMIDI_SEQ=m +CONFIG_SND_OPL3_LIB_SEQ=m +CONFIG_SND_OPL4_LIB_SEQ=m +CONFIG_SND_SBAWE_SEQ=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_MPU401_UART=m +CONFIG_SND_OPL3_LIB=m +CONFIG_SND_OPL4_LIB=m +CONFIG_SND_VX_LIB=m +CONFIG_SND_AC97_CODEC=m +CONFIG_SND_DRIVERS=y +# CONFIG_SND_PCSP is not set +CONFIG_SND_DUMMY=m +CONFIG_SND_ALOOP=m +CONFIG_SND_VIRMIDI=m +CONFIG_SND_MTPAV=m +CONFIG_SND_MTS64=m +CONFIG_SND_SERIAL_U16550=m +CONFIG_SND_MPU401=m +CONFIG_SND_PORTMAN2X4=m +CONFIG_SND_AC97_POWER_SAVE=y +CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 +CONFIG_SND_WSS_LIB=m +CONFIG_SND_SB_COMMON=m +CONFIG_SND_SB8_DSP=m +CONFIG_SND_SB16_DSP=m +CONFIG_SND_ISA=y +CONFIG_SND_ADLIB=m +CONFIG_SND_AD1816A=m +CONFIG_SND_AD1848=m +CONFIG_SND_ALS100=m +CONFIG_SND_AZT1605=m +CONFIG_SND_AZT2316=m +CONFIG_SND_AZT2320=m +CONFIG_SND_CMI8328=m +CONFIG_SND_CMI8330=m +CONFIG_SND_CS4231=m +CONFIG_SND_CS4236=m +CONFIG_SND_ES1688=m +CONFIG_SND_ES18XX=m +CONFIG_SND_SC6000=m +CONFIG_SND_GUSCLASSIC=m +CONFIG_SND_GUSEXTREME=m +CONFIG_SND_GUSMAX=m +CONFIG_SND_INTERWAVE=m +CONFIG_SND_INTERWAVE_STB=m +CONFIG_SND_JAZZ16=m +CONFIG_SND_OPL3SA2=m +CONFIG_SND_OPTI92X_AD1848=m +CONFIG_SND_OPTI92X_CS4231=m +CONFIG_SND_OPTI93X=m +CONFIG_SND_MIRO=m +CONFIG_SND_SB8=m +CONFIG_SND_SB16=m +CONFIG_SND_SBAWE=m +CONFIG_SND_SB16_CSP=y +CONFIG_SND_SSCAPE=m +CONFIG_SND_WAVEFRONT=m +CONFIG_SND_MSND_PINNACLE=m +CONFIG_SND_MSND_CLASSIC=m +CONFIG_SND_PCI=y +CONFIG_SND_AD1889=m +CONFIG_SND_ALS300=m +CONFIG_SND_ALS4000=m +CONFIG_SND_ALI5451=m +CONFIG_SND_ASIHPI=m +CONFIG_SND_ATIIXP=m +CONFIG_SND_ATIIXP_MODEM=m +CONFIG_SND_AU8810=m +CONFIG_SND_AU8820=m +CONFIG_SND_AU8830=m +CONFIG_SND_AW2=m +CONFIG_SND_AZT3328=m +CONFIG_SND_BT87X=m +# CONFIG_SND_BT87X_OVERCLOCK is not set +CONFIG_SND_CA0106=m +CONFIG_SND_CMIPCI=m +CONFIG_SND_OXYGEN_LIB=m +CONFIG_SND_OXYGEN=m +CONFIG_SND_CS4281=m +CONFIG_SND_CS46XX=m +CONFIG_SND_CS46XX_NEW_DSP=y +CONFIG_SND_CS5530=m +CONFIG_SND_CS5535AUDIO=m +CONFIG_SND_CTXFI=m +CONFIG_SND_DARLA20=m +CONFIG_SND_GINA20=m +CONFIG_SND_LAYLA20=m +CONFIG_SND_DARLA24=m +CONFIG_SND_GINA24=m +CONFIG_SND_LAYLA24=m +CONFIG_SND_MONA=m +CONFIG_SND_MIA=m +CONFIG_SND_ECHO3G=m +CONFIG_SND_INDIGO=m +CONFIG_SND_INDIGOIO=m +CONFIG_SND_INDIGODJ=m +CONFIG_SND_INDIGOIOX=m +CONFIG_SND_INDIGODJX=m +CONFIG_SND_EMU10K1=m +CONFIG_SND_EMU10K1X=m +CONFIG_SND_ENS1370=m +CONFIG_SND_ENS1371=m +CONFIG_SND_ES1938=m +CONFIG_SND_ES1968=m +CONFIG_SND_ES1968_INPUT=y +CONFIG_SND_ES1968_RADIO=y +CONFIG_SND_FM801=m +CONFIG_SND_FM801_TEA575X_BOOL=y +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_PREALLOC_SIZE=4096 +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_CODEC_REALTEK=y +CONFIG_SND_HDA_CODEC_ANALOG=y +CONFIG_SND_HDA_CODEC_SIGMATEL=y +CONFIG_SND_HDA_CODEC_VIA=y +CONFIG_SND_HDA_CODEC_HDMI=y +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_CODEC_CIRRUS=y +CONFIG_SND_HDA_CODEC_CONEXANT=y +CONFIG_SND_HDA_CODEC_CA0110=y +CONFIG_SND_HDA_CODEC_CA0132=y +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CMEDIA=y +CONFIG_SND_HDA_CODEC_SI3054=y +CONFIG_SND_HDA_GENERIC=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 +CONFIG_SND_HDSP=m +CONFIG_SND_HDSPM=m +CONFIG_SND_ICE1712=m +CONFIG_SND_ICE1724=m +CONFIG_SND_INTEL8X0=m +CONFIG_SND_INTEL8X0M=m +CONFIG_SND_KORG1212=m +CONFIG_SND_LOLA=m +CONFIG_SND_LX6464ES=m +CONFIG_SND_MAESTRO3=m +CONFIG_SND_MAESTRO3_INPUT=y +CONFIG_SND_MIXART=m +CONFIG_SND_NM256=m +CONFIG_SND_PCXHR=m +CONFIG_SND_RIPTIDE=m +CONFIG_SND_RME32=m +CONFIG_SND_RME96=m +CONFIG_SND_RME9652=m +CONFIG_SND_SIS7019=m +CONFIG_SND_SONICVIBES=m +CONFIG_SND_TRIDENT=m +CONFIG_SND_VIA82XX=m +CONFIG_SND_VIA82XX_MODEM=m +CONFIG_SND_VIRTUOSO=m +CONFIG_SND_VX222=m +CONFIG_SND_YMFPCI=m +CONFIG_SND_SPI=y +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_USX2Y=m +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_US122L=m +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_HIFACE=m +CONFIG_SND_FIREWIRE=y +CONFIG_SND_FIREWIRE_LIB=m +CONFIG_SND_FIREWIRE_SPEAKERS=m +CONFIG_SND_ISIGHT=m +CONFIG_SND_SCS1X=m +CONFIG_SND_PCMCIA=y +CONFIG_SND_VXPOCKET=m +CONFIG_SND_PDAUDIOCF=m +# CONFIG_SND_SOC is not set +# CONFIG_SOUND_PRIME is not set +CONFIG_AC97_BUS=m + +# +# HID support +# +CONFIG_HID=m +CONFIG_HIDRAW=y +CONFIG_UHID=m +CONFIG_HID_GENERIC=m + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +CONFIG_HID_ACRUX=m +CONFIG_HID_ACRUX_FF=y +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_DRAGONRISE_FF=y +CONFIG_HID_EMS_FF=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EZKEY=m +CONFIG_HID_HOLTEK=m +CONFIG_HOLTEK_FF=y +CONFIG_HID_HUION=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=m +CONFIG_HID_LCPOWER=m +CONFIG_HID_LENOVO_TPKBD=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_LOGITECH_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGIG940_FF=y +CONFIG_LOGIWHEELS_FF=y +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +CONFIG_PANTHERLORD_FF=y +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_LCD=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PICOLCD_CIR=y +CONFIG_HID_PRIMAX=m +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SONY=m +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_GREENASIA=m +CONFIG_GREENASIA_FF=y +CONFIG_HID_HYPERV_MOUSE=m +CONFIG_HID_SMARTJOYPLUS=m +CONFIG_SMARTJOYPLUS_FF=y +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_THRUSTMASTER_FF=y +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +CONFIG_ZEROPLUS_FF=y +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m + +# +# USB HID support +# +CONFIG_USB_HID=m +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y + +# +# I2C HID support +# +CONFIG_I2C_HID=m +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=m +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=m +# CONFIG_USB_DEBUG is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +CONFIG_USB_DYNAMIC_MINORS=y +# CONFIG_USB_OTG is not set +CONFIG_USB_MON=m +CONFIG_USB_WUSB=m +CONFIG_USB_WUSB_CBAF=m +# CONFIG_USB_WUSB_CBAF_DEBUG is not set + +# +# USB Host Controller Drivers +# +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_XHCI_HCD=m +CONFIG_USB_EHCI_HCD=m +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=m +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1760_HCD=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_FUSBH200_HCD=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_OHCI_HCD=m +CONFIG_USB_OHCI_HCD_PCI=m +# CONFIG_USB_OHCI_HCD_SSB is not set +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +CONFIG_USB_UHCI_HCD=m +CONFIG_USB_U132_HCD=m +CONFIG_USB_SL811_HCD=m +# CONFIG_USB_SL811_HCD_ISO is not set +CONFIG_USB_SL811_CS=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RENESAS_USBHS_HCD=m +CONFIG_USB_WHCI_HCD=m +CONFIG_USB_HWA_HCD=m +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set +CONFIG_USB_MUSB_HDRC=m +# CONFIG_USB_MUSB_HOST is not set +# CONFIG_USB_MUSB_GADGET is not set +CONFIG_USB_MUSB_DUAL_ROLE=y +CONFIG_USB_MUSB_TUSB6010=m +CONFIG_USB_MUSB_DSPS=m +CONFIG_USB_MUSB_UX500=m +CONFIG_USB_MUSB_AM335X_CHILD=m +# CONFIG_USB_UX500_DMA is not set +CONFIG_MUSB_PIO_ONLY=y +CONFIG_USB_RENESAS_USBHS=m + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m +CONFIG_USB_WDM=m +CONFIG_USB_TMC=m + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_REALTEK_AUTOPM=y +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_ENE_UB6250=m + +# +# USB Imaging devices +# +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_CHIPIDEA is not set + +# +# USB port drivers +# +CONFIG_USB_USS720=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_SIMPLE=m +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=m +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_F81232=m +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KEYSPAN_MPR=y +CONFIG_USB_SERIAL_KEYSPAN_USA28=y +CONFIG_USB_SERIAL_KEYSPAN_USA28X=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y +CONFIG_USB_SERIAL_KEYSPAN_USA19=y +CONFIG_USB_SERIAL_KEYSPAN_USA18X=y +CONFIG_USB_SERIAL_KEYSPAN_USA19W=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y +CONFIG_USB_SERIAL_KEYSPAN_USA49W=y +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7715_PARPORT=y +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_WWAN=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_ZTE=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_QT2=m +# CONFIG_USB_SERIAL_DEBUG is not set + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_RIO500=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LCD=m +CONFIG_USB_LED=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_SISUSBVGA=m +# CONFIG_USB_SISUSBVGA_CON is not set +CONFIG_USB_LD=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_TEST=m +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_YUREX=m +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_ATM=m +CONFIG_USB_SPEEDTOUCH=m +CONFIG_USB_CXACRU=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_XUSBATM=m + +# +# USB Physical Layer drivers +# +CONFIG_USB_PHY=y +CONFIG_NOP_USB_XCEIV=m +# CONFIG_AM335X_PHY_USB is not set +CONFIG_SAMSUNG_USBPHY=m +CONFIG_SAMSUNG_USB2PHY=m +CONFIG_SAMSUNG_USB3PHY=m +# CONFIG_USB_GPIO_VBUS is not set +CONFIG_USB_ISP1301=m +CONFIG_USB_RCAR_PHY=m +CONFIG_USB_GADGET=m +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 + +# +# USB Peripheral Controller +# +CONFIG_USB_FUSB300=m +CONFIG_USB_FOTG210_UDC=m +CONFIG_USB_R8A66597=m +CONFIG_USB_RENESAS_USBHS_UDC=m +CONFIG_USB_PXA27X=m +CONFIG_USB_MV_UDC=m +CONFIG_USB_MV_U3D=m +CONFIG_USB_M66592=m +CONFIG_USB_AMD5536UDC=m +CONFIG_USB_NET2272=m +CONFIG_USB_NET2272_DMA=y +CONFIG_USB_NET2280=m +CONFIG_USB_GOKU=m +CONFIG_USB_EG20T=m +CONFIG_USB_DUMMY_HCD=m +CONFIG_USB_LIBCOMPOSITE=m +CONFIG_USB_F_ACM=m +CONFIG_USB_U_SERIAL=m +CONFIG_USB_U_ETHER=m +CONFIG_USB_U_RNDIS=m +CONFIG_USB_F_SERIAL=m +CONFIG_USB_F_OBEX=m +CONFIG_USB_F_NCM=m +CONFIG_USB_F_ECM=m +CONFIG_USB_F_SUBSET=m +CONFIG_USB_F_RNDIS=m +# CONFIG_USB_CONFIGFS is not set +# CONFIG_USB_ZERO is not set +CONFIG_USB_AUDIO=m +# CONFIG_GADGET_UAC1 is not set +CONFIG_USB_ETH=m +CONFIG_USB_ETH_RNDIS=y +# CONFIG_USB_ETH_EEM is not set +CONFIG_USB_G_NCM=m +CONFIG_USB_GADGETFS=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_FUNCTIONFS_ETH=y +CONFIG_USB_FUNCTIONFS_RNDIS=y +CONFIG_USB_FUNCTIONFS_GENERIC=y +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_GADGET_TARGET=m +CONFIG_USB_G_SERIAL=m +CONFIG_USB_MIDI_GADGET=m +CONFIG_USB_G_PRINTER=m +# CONFIG_USB_CDC_COMPOSITE is not set +# CONFIG_USB_G_NOKIA is not set +# CONFIG_USB_G_ACM_MS is not set +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_G_HID=m +CONFIG_USB_G_DBGP=m +# CONFIG_USB_G_DBGP_PRINTK is not set +CONFIG_USB_G_DBGP_SERIAL=y +CONFIG_USB_G_WEBCAM=m +CONFIG_UWB=m +CONFIG_UWB_HWA=m +CONFIG_UWB_WHCI=m +CONFIG_UWB_I1480U=m +CONFIG_MMC=m +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_UNSAFE_RESUME is not set +# CONFIG_MMC_CLKGATE is not set + +# +# MMC/SD/SDIO Card Drivers +# +CONFIG_MMC_BLOCK=m +CONFIG_MMC_BLOCK_MINORS=8 +CONFIG_MMC_BLOCK_BOUNCE=y +CONFIG_SDIO_UART=m +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PCI=m +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MMC_WBSD=m +CONFIG_MMC_TIFM_SD=m +CONFIG_MMC_SDRICOH_CS=m +CONFIG_MMC_CB710=m +CONFIG_MMC_VIA_SDMMC=m +CONFIG_MMC_VUB300=m +CONFIG_MMC_USHC=m +CONFIG_MMC_REALTEK_PCI=m +CONFIG_MEMSTICK=m +# CONFIG_MEMSTICK_DEBUG is not set + +# +# MemoryStick drivers +# +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MSPRO_BLOCK=m +# CONFIG_MS_BLOCK is not set + +# +# MemoryStick Host Controller Drivers +# +CONFIG_MEMSTICK_TIFM_MS=m +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +CONFIG_MEMSTICK_REALTEK_PCI=m +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y + +# +# LED drivers +# +CONFIG_LEDS_LM3530=m +CONFIG_LEDS_LM3533=m +CONFIG_LEDS_LM3642=m +CONFIG_LEDS_PCA9532=m +# CONFIG_LEDS_PCA9532_GPIO is not set +# CONFIG_LEDS_GPIO is not set +CONFIG_LEDS_LP3944=m +CONFIG_LEDS_LP55XX_COMMON=m +CONFIG_LEDS_LP5521=m +CONFIG_LEDS_LP5523=m +CONFIG_LEDS_LP5562=m +# CONFIG_LEDS_LP8501 is not set +CONFIG_LEDS_CLEVO_MAIL=m +CONFIG_LEDS_PCA955X=m +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_DAC124S085 is not set +# CONFIG_LEDS_PWM is not set +CONFIG_LEDS_BD2802=m +CONFIG_LEDS_INTEL_SS4200=m +CONFIG_LEDS_LT3593=m +CONFIG_LEDS_DELL_NETBOOKS=m +CONFIG_LEDS_MC13783=m +CONFIG_LEDS_TCA6507=m +CONFIG_LEDS_LM355x=m +CONFIG_LEDS_OT200=m +CONFIG_LEDS_BLINKM=m + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=m +CONFIG_LEDS_TRIGGER_ONESHOT=m +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LEDS_TRIGGER_BACKLIGHT=m +# CONFIG_LEDS_TRIGGER_CPU is not set +CONFIG_LEDS_TRIGGER_GPIO=m +CONFIG_LEDS_TRIGGER_DEFAULT_ON=m + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +CONFIG_ACCESSIBILITY=y +CONFIG_A11Y_BRAILLE_CONSOLE=y +# CONFIG_INFINIBAND is not set +CONFIG_EDAC=y +CONFIG_EDAC_LEGACY_SYSFS=y +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_DECODE_MCE=m +CONFIG_EDAC_MCE_INJ=m +CONFIG_EDAC_MM_EDAC=m +CONFIG_EDAC_AMD76X=m +CONFIG_EDAC_E7XXX=m +CONFIG_EDAC_E752X=m +CONFIG_EDAC_I82875P=m +CONFIG_EDAC_I82975X=m +CONFIG_EDAC_I3000=m +CONFIG_EDAC_I3200=m +CONFIG_EDAC_X38=m +CONFIG_EDAC_I5400=m +CONFIG_EDAC_I7CORE=m +CONFIG_EDAC_I82860=m +CONFIG_EDAC_R82600=m +CONFIG_EDAC_I5000=m +CONFIG_EDAC_I5100=m +CONFIG_EDAC_I7300=m +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +CONFIG_RTC_INTF_DEV_UIE_EMUL=y +CONFIG_RTC_DRV_TEST=m + +# +# I2C RTC drivers +# +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_DS1374=m +CONFIG_RTC_DRV_DS1672=m +CONFIG_RTC_DRV_DS3232=m +CONFIG_RTC_DRV_MAX6900=m +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_ISL12022=m +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_M41T80=m +CONFIG_RTC_DRV_M41T80_WDT=y +CONFIG_RTC_DRV_BQ32K=m +CONFIG_RTC_DRV_S35390A=m +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_EM3027=m +CONFIG_RTC_DRV_RV3029C2=m + +# +# SPI RTC drivers +# +# CONFIG_RTC_DRV_M41T93 is not set +# CONFIG_RTC_DRV_M41T94 is not set +# CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1390 is not set +# CONFIG_RTC_DRV_MAX6902 is not set +# CONFIG_RTC_DRV_R9701 is not set +# CONFIG_RTC_DRV_RS5C348 is not set +# CONFIG_RTC_DRV_DS3234 is not set +# CONFIG_RTC_DRV_PCF2123 is not set +# CONFIG_RTC_DRV_RX4581 is not set + +# +# Platform RTC drivers +# +CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_DS1286=m +CONFIG_RTC_DRV_DS1511=m +CONFIG_RTC_DRV_DS1553=m +CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_STK17TA8=m +CONFIG_RTC_DRV_M48T86=m +CONFIG_RTC_DRV_M48T35=m +CONFIG_RTC_DRV_M48T59=m +CONFIG_RTC_DRV_MSM6242=m +CONFIG_RTC_DRV_BQ4802=m +CONFIG_RTC_DRV_RP5C01=m +CONFIG_RTC_DRV_V3020=m +CONFIG_RTC_DRV_DS2404=m +CONFIG_RTC_DRV_PCF50633=m + +# +# on-CPU RTC drivers +# +CONFIG_RTC_DRV_MC13XXX=m +CONFIG_RTC_DRV_SNVS=m +# CONFIG_RTC_DRV_MOXART is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_INTEL_MID_DMAC=m +CONFIG_INTEL_IOATDMA=m +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC=m +CONFIG_DW_DMAC_PCI=m +CONFIG_TIMB_DMA=m +CONFIG_PCH_DMA=m +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ACPI=y +CONFIG_DMA_OF=y + +# +# DMA Clients +# +CONFIG_NET_DMA=y +CONFIG_ASYNC_TX_DMA=y +# CONFIG_DMATEST is not set +CONFIG_DCA=m +CONFIG_AUXDISPLAY=y +CONFIG_KS0108=m +CONFIG_KS0108_PORT=0x378 +CONFIG_KS0108_DELAY=2 +CONFIG_CFAG12864B=m +CONFIG_CFAG12864B_RATE=20 +CONFIG_UIO=m +CONFIG_UIO_CIF=m +CONFIG_UIO_PDRV_GENIRQ=m +# CONFIG_UIO_DMEM_GENIRQ is not set +CONFIG_UIO_AEC=m +CONFIG_UIO_SERCOS3=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_NETX=m +# CONFIG_UIO_MF624 is not set +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO=m +CONFIG_VFIO_PCI=m +CONFIG_VFIO_PCI_VGA=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRTIO=y + +# +# Virtio drivers +# +CONFIG_VIRTIO_PCI=m +CONFIG_VIRTIO_BALLOON=m +CONFIG_VIRTIO_MMIO=m +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y + +# +# Microsoft Hyper-V guest support +# +CONFIG_HYPERV=m +CONFIG_HYPERV_UTILS=m +CONFIG_HYPERV_BALLOON=m +CONFIG_STAGING=y +CONFIG_ET131X=m +CONFIG_SLICOSS=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set +CONFIG_W35UND=m +CONFIG_PRISM2_USB=m +CONFIG_ECHO=m +CONFIG_COMEDI=m +# CONFIG_COMEDI_DEBUG is not set +CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 +CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 +CONFIG_COMEDI_MISC_DRIVERS=y +CONFIG_COMEDI_KCOMEDILIB=m +CONFIG_COMEDI_BOND=m +CONFIG_COMEDI_TEST=m +CONFIG_COMEDI_PARPORT=m +CONFIG_COMEDI_SERIAL2002=m +CONFIG_COMEDI_SKEL=m +CONFIG_COMEDI_SSV_DNP=m +CONFIG_COMEDI_ISA_DRIVERS=y +CONFIG_COMEDI_PCL711=m +CONFIG_COMEDI_PCL724=m +CONFIG_COMEDI_PCL726=m +CONFIG_COMEDI_PCL730=m +CONFIG_COMEDI_PCL812=m +CONFIG_COMEDI_PCL816=m +CONFIG_COMEDI_PCL818=m +CONFIG_COMEDI_PCM3724=m +CONFIG_COMEDI_AMPLC_DIO200_ISA=m +CONFIG_COMEDI_AMPLC_PC236_ISA=m +CONFIG_COMEDI_AMPLC_PC263_ISA=m +CONFIG_COMEDI_RTI800=m +CONFIG_COMEDI_RTI802=m +CONFIG_COMEDI_DAS16M1=m +CONFIG_COMEDI_DAS08_ISA=m +CONFIG_COMEDI_DAS16=m +CONFIG_COMEDI_DAS800=m +CONFIG_COMEDI_DAS1800=m +CONFIG_COMEDI_DAS6402=m +CONFIG_COMEDI_DT2801=m +CONFIG_COMEDI_DT2811=m +CONFIG_COMEDI_DT2814=m +CONFIG_COMEDI_DT2815=m +CONFIG_COMEDI_DT2817=m +CONFIG_COMEDI_DT282X=m +CONFIG_COMEDI_DMM32AT=m +CONFIG_COMEDI_UNIOXX5=m +CONFIG_COMEDI_FL512=m +CONFIG_COMEDI_AIO_AIO12_8=m +CONFIG_COMEDI_AIO_IIRO_16=m +CONFIG_COMEDI_II_PCI20KC=m +CONFIG_COMEDI_C6XDIGIO=m +CONFIG_COMEDI_MPC624=m +CONFIG_COMEDI_ADQ12B=m +CONFIG_COMEDI_NI_AT_A2150=m +CONFIG_COMEDI_NI_AT_AO=m +CONFIG_COMEDI_NI_ATMIO=m +CONFIG_COMEDI_NI_ATMIO16D=m +CONFIG_COMEDI_NI_LABPC_ISA=m +CONFIG_COMEDI_PCMAD=m +CONFIG_COMEDI_PCMDA12=m +CONFIG_COMEDI_PCMMIO=m +CONFIG_COMEDI_PCMUIO=m +CONFIG_COMEDI_MULTIQ3=m +CONFIG_COMEDI_POC=m +CONFIG_COMEDI_S526=m +CONFIG_COMEDI_PCI_DRIVERS=y +CONFIG_COMEDI_8255_PCI=m +CONFIG_COMEDI_ADDI_WATCHDOG=m +CONFIG_COMEDI_ADDI_APCI_035=m +CONFIG_COMEDI_ADDI_APCI_1032=m +CONFIG_COMEDI_ADDI_APCI_1500=m +CONFIG_COMEDI_ADDI_APCI_1516=m +CONFIG_COMEDI_ADDI_APCI_1564=m +CONFIG_COMEDI_ADDI_APCI_16XX=m +CONFIG_COMEDI_ADDI_APCI_2032=m +CONFIG_COMEDI_ADDI_APCI_2200=m +CONFIG_COMEDI_ADDI_APCI_3120=m +CONFIG_COMEDI_ADDI_APCI_3501=m +CONFIG_COMEDI_ADDI_APCI_3XXX=m +CONFIG_COMEDI_ADL_PCI6208=m +CONFIG_COMEDI_ADL_PCI7X3X=m +CONFIG_COMEDI_ADL_PCI8164=m +CONFIG_COMEDI_ADL_PCI9111=m +CONFIG_COMEDI_ADL_PCI9118=m +CONFIG_COMEDI_ADV_PCI1710=m +CONFIG_COMEDI_ADV_PCI1723=m +CONFIG_COMEDI_ADV_PCI1724=m +CONFIG_COMEDI_ADV_PCI_DIO=m +CONFIG_COMEDI_AMPLC_DIO200_PCI=m +CONFIG_COMEDI_AMPLC_PC236_PCI=m +CONFIG_COMEDI_AMPLC_PC263_PCI=m +CONFIG_COMEDI_AMPLC_PCI224=m +CONFIG_COMEDI_AMPLC_PCI230=m +CONFIG_COMEDI_CONTEC_PCI_DIO=m +CONFIG_COMEDI_DAS08_PCI=m +CONFIG_COMEDI_DT3000=m +CONFIG_COMEDI_DYNA_PCI10XX=m +CONFIG_COMEDI_GSC_HPDI=m +CONFIG_COMEDI_ICP_MULTI=m +CONFIG_COMEDI_DAQBOARD2000=m +CONFIG_COMEDI_JR3_PCI=m +CONFIG_COMEDI_KE_COUNTER=m +CONFIG_COMEDI_CB_PCIDAS64=m +CONFIG_COMEDI_CB_PCIDAS=m +CONFIG_COMEDI_CB_PCIDDA=m +# CONFIG_COMEDI_CB_PCIMDAS is not set +CONFIG_COMEDI_CB_PCIMDDA=m +CONFIG_COMEDI_ME4000=m +CONFIG_COMEDI_ME_DAQ=m +CONFIG_COMEDI_NI_6527=m +CONFIG_COMEDI_NI_65XX=m +CONFIG_COMEDI_NI_660X=m +CONFIG_COMEDI_NI_670X=m +CONFIG_COMEDI_NI_LABPC_PCI=m +CONFIG_COMEDI_NI_PCIDIO=m +CONFIG_COMEDI_NI_PCIMIO=m +CONFIG_COMEDI_RTD520=m +CONFIG_COMEDI_S626=m +CONFIG_COMEDI_MITE=m +CONFIG_COMEDI_NI_TIOCMD=m +CONFIG_COMEDI_PCMCIA_DRIVERS=y +CONFIG_COMEDI_CB_DAS16_CS=m +CONFIG_COMEDI_DAS08_CS=m +CONFIG_COMEDI_NI_DAQ_700_CS=m +CONFIG_COMEDI_NI_DAQ_DIO24_CS=m +CONFIG_COMEDI_NI_LABPC_CS=m +CONFIG_COMEDI_NI_MIO_CS=m +CONFIG_COMEDI_QUATECH_DAQP_CS=m +CONFIG_COMEDI_USB_DRIVERS=y +CONFIG_COMEDI_DT9812=m +CONFIG_COMEDI_USBDUX=m +CONFIG_COMEDI_USBDUXFAST=m +CONFIG_COMEDI_USBDUXSIGMA=m +CONFIG_COMEDI_VMK80XX=m +CONFIG_COMEDI_8255=m +CONFIG_COMEDI_FC=m +CONFIG_COMEDI_AMPLC_DIO200=m +CONFIG_COMEDI_AMPLC_PC236=m +CONFIG_COMEDI_DAS08=m +CONFIG_COMEDI_NI_LABPC=m +CONFIG_COMEDI_NI_LABPC_ISADMA=m +CONFIG_COMEDI_NI_TIO=m +# CONFIG_FB_OLPC_DCON is not set +# CONFIG_PANEL is not set +CONFIG_R8187SE=m +CONFIG_RTL8192U=m +CONFIG_RTLLIB=m +CONFIG_RTLLIB_CRYPTO_CCMP=m +CONFIG_RTLLIB_CRYPTO_TKIP=m +CONFIG_RTLLIB_CRYPTO_WEP=m +CONFIG_RTL8192E=m +CONFIG_R8712U=m +CONFIG_R8188EU=m +CONFIG_88EU_AP_MODE=y +CONFIG_88EU_P2P=y +CONFIG_RTS5139=m +# CONFIG_RTS5139_DEBUG is not set +# CONFIG_TRANZPORT is not set +CONFIG_IDE_PHISON=m +CONFIG_LINE6_USB=m +# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set +CONFIG_USB_SERIAL_QUATECH2=m +CONFIG_VT6655=m +CONFIG_VT6656=m +CONFIG_DX_SEP=m +CONFIG_ZSMALLOC=y +CONFIG_ZRAM=m +# CONFIG_ZRAM_DEBUG is not set +CONFIG_WLAGS49_H2=m +CONFIG_WLAGS49_H25=m +CONFIG_FB_SM7XX=m +CONFIG_CRYSTALHD=m +CONFIG_FB_XGI=m +CONFIG_ACPI_QUICKSTART=m +CONFIG_USB_ENESTORAGE=m +CONFIG_BCM_WIMAX=m +CONFIG_FT1000=m +CONFIG_FT1000_USB=m +CONFIG_FT1000_PCMCIA=m + +# +# Speakup console speech +# +CONFIG_SPEAKUP=m +CONFIG_SPEAKUP_SYNTH_ACNTSA=m +CONFIG_SPEAKUP_SYNTH_ACNTPC=m +CONFIG_SPEAKUP_SYNTH_APOLLO=m +CONFIG_SPEAKUP_SYNTH_AUDPTR=m +CONFIG_SPEAKUP_SYNTH_BNS=m +CONFIG_SPEAKUP_SYNTH_DECTLK=m +CONFIG_SPEAKUP_SYNTH_DECEXT=m +CONFIG_SPEAKUP_SYNTH_DECPC=m +CONFIG_SPEAKUP_SYNTH_DTLK=m +CONFIG_SPEAKUP_SYNTH_KEYPC=m +CONFIG_SPEAKUP_SYNTH_LTLK=m +CONFIG_SPEAKUP_SYNTH_SOFT=m +CONFIG_SPEAKUP_SYNTH_SPKOUT=m +CONFIG_SPEAKUP_SYNTH_TXPRT=m +CONFIG_SPEAKUP_SYNTH_DUMMY=m +CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m +CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m +CONFIG_STAGING_MEDIA=y +CONFIG_DVB_AS102=m +CONFIG_DVB_CXD2099=m +CONFIG_VIDEO_DT3155=m +CONFIG_DT3155_CCIR=y +CONFIG_DT3155_STREAMING=y +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set +# CONFIG_USB_MSI3101 is not set +CONFIG_SOLO6X10=m +CONFIG_LIRC_STAGING=y +CONFIG_LIRC_BT829=m +CONFIG_LIRC_IGORPLUGUSB=m +CONFIG_LIRC_IMON=m +CONFIG_LIRC_PARALLEL=m +CONFIG_LIRC_SASEM=m +CONFIG_LIRC_SERIAL=m +CONFIG_LIRC_SERIAL_TRANSMITTER=y +CONFIG_LIRC_SIR=m +CONFIG_LIRC_ZILOG=m + +# +# Android +# +# CONFIG_ANDROID is not set +CONFIG_USB_WPAN_HCD=m +CONFIG_WIMAX_GDM72XX=m +CONFIG_WIMAX_GDM72XX_QOS=y +CONFIG_WIMAX_GDM72XX_K_MODE=y +CONFIG_WIMAX_GDM72XX_WIMAX2=y +CONFIG_WIMAX_GDM72XX_USB=y +# CONFIG_WIMAX_GDM72XX_SDIO is not set +CONFIG_WIMAX_GDM72XX_USB_PM=y +# CONFIG_LTE_GDM724X is not set +CONFIG_NET_VENDOR_SILICOM=y +CONFIG_SBYPASS=m +CONFIG_BPCTL=m +CONFIG_CED1401=m +CONFIG_DGRP=m +CONFIG_FIREWIRE_SERIAL=m +# CONFIG_USB_DWC2 is not set +CONFIG_LUSTRE_FS=m +CONFIG_LUSTRE_OBD_MAX_IOCTL_BUFFER=8192 +# CONFIG_LUSTRE_DEBUG_EXPENSIVE_CHECK is not set +CONFIG_LUSTRE_LLITE_LLOOP=y +CONFIG_LNET=m +CONFIG_LNET_MAX_PAYLOAD=1048576 +CONFIG_LNET_SELFTEST=m +CONFIG_USB_BTMTK=m +# CONFIG_XILLYBUS is not set +CONFIG_DGNC=m +CONFIG_DGAP=m +CONFIG_X86_PLATFORM_DEVICES=y +CONFIG_ACER_WMI=m +CONFIG_ACERHDF=m +CONFIG_ASUS_LAPTOP=m +CONFIG_CHROMEOS_LAPTOP=m +CONFIG_DELL_LAPTOP=m +CONFIG_DELL_WMI=m +CONFIG_DELL_WMI_AIO=m +CONFIG_FUJITSU_LAPTOP=m +# CONFIG_FUJITSU_LAPTOP_DEBUG is not set +CONFIG_FUJITSU_TABLET=m +CONFIG_AMILO_RFKILL=m +CONFIG_TC1100_WMI=m +CONFIG_HP_ACCEL=m +CONFIG_HP_WMI=m +CONFIG_MSI_LAPTOP=m +CONFIG_PANASONIC_LAPTOP=m +CONFIG_COMPAL_LAPTOP=m +CONFIG_SONY_LAPTOP=m +# CONFIG_SONYPI_COMPAT is not set +CONFIG_IDEAPAD_LAPTOP=m +CONFIG_THINKPAD_ACPI=m +CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y +# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set +# CONFIG_THINKPAD_ACPI_DEBUG is not set +# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set +CONFIG_THINKPAD_ACPI_VIDEO=y +CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y +CONFIG_SENSORS_HDAPS=m +CONFIG_INTEL_MENLOW=m +CONFIG_EEEPC_LAPTOP=m +CONFIG_ASUS_WMI=m +CONFIG_ASUS_NB_WMI=m +CONFIG_EEEPC_WMI=m +CONFIG_ACPI_WMI=m +CONFIG_MSI_WMI=m +CONFIG_TOPSTAR_LAPTOP=m +CONFIG_ACPI_TOSHIBA=m +CONFIG_TOSHIBA_BT_RFKILL=m +CONFIG_ACPI_CMPC=m +CONFIG_INTEL_IPS=m +CONFIG_IBM_RTL=m +CONFIG_XO1_RFKILL=m +CONFIG_XO15_EBOOK=m +CONFIG_SAMSUNG_LAPTOP=m +CONFIG_MXM_WMI=m +CONFIG_INTEL_OAKTRAIL=m +CONFIG_SAMSUNG_Q10=m +CONFIG_APPLE_GMUX=m +CONFIG_INTEL_RST=y +CONFIG_INTEL_SMARTCONNECT=y +CONFIG_PVPANIC=m + +# +# Hardware Spinlock drivers +# +CONFIG_CLKSRC_I8253=y +CONFIG_CLKEVT_I8253=y +CONFIG_I8253_LOCK=y +CONFIG_CLKBLD_I8253=y +# CONFIG_MAILBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y +CONFIG_OF_IOMMU=y +CONFIG_DMAR_TABLE=y +CONFIG_INTEL_IOMMU=y +# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_FLOPPY_WA=y + +# +# Remoteproc drivers +# +CONFIG_REMOTEPROC=m +CONFIG_STE_MODEM_RPROC=m + +# +# Rpmsg drivers +# +# CONFIG_PM_DEVFREQ is not set +CONFIG_EXTCON=m + +# +# Extcon Device Drivers +# +CONFIG_OF_EXTCON=m +CONFIG_EXTCON_GPIO=m +CONFIG_MEMORY=y +# CONFIG_IIO is not set +# CONFIG_NTB is not set +# CONFIG_VME_BUS is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +# CONFIG_PWM_PCA9685 is not set +CONFIG_IRQCHIP=y +CONFIG_IPACK_BUS=m +CONFIG_BOARD_TPCI200=m +CONFIG_SERIAL_IPOCTAL=m +# CONFIG_RESET_CONTROLLER is not set +CONFIG_FMC=m +CONFIG_FMC_FAKEDEV=m +CONFIG_FMC_TRIVIAL=m +CONFIG_FMC_WRITE_EEPROM=m +CONFIG_FMC_CHARDEV=m + +# +# Firmware Drivers +# +CONFIG_EDD=m +# CONFIG_EDD_OFF is not set +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_DELL_RBU=m +CONFIG_DCDBAS=m +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=m +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_IBFT=m +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +# CONFIG_EFI_VARS is not set + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=m +CONFIG_EXT4_USE_FOR_EXT23=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=m +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=m +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_PROC_INFO=y +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_JFS_FS=m +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_STATISTICS=y +CONFIG_XFS_FS=m +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCFS2_FS_STATS=y +# CONFIG_OCFS2_DEBUG_MASKLOG is not set +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +CONFIG_NILFS2_FS=m +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_FILE_LOCKING=y +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +# CONFIG_PRINT_QUOTA_WARNING is not set +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=m +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QUOTACTL=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=m +CONFIG_CUSE=m +CONFIG_GENERIC_ACL=y + +# +# Caches +# +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +CONFIG_FSCACHE_HISTOGRAM=y +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_RW=y + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ADFS_FS is not set +CONFIG_AFFS_FS=m +CONFIG_ECRYPT_FS=m +# CONFIG_ECRYPT_FS_MESSAGING is not set +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +CONFIG_HFSPLUS_FS_POSIX_ACL=y +CONFIG_BEFS_FS=m +# CONFIG_BEFS_DEBUG is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +# CONFIG_JFFS2_SUMMARY is not set +CONFIG_JFFS2_FS_XATTR=y +CONFIG_JFFS2_FS_POSIX_ACL=y +CONFIG_JFFS2_FS_SECURITY=y +# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFFS2_LZO is not set +CONFIG_JFFS2_RTIME=y +# CONFIG_JFFS2_RUBIN is not set +CONFIG_UBIFS_FS=m +# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set +CONFIG_UBIFS_FS_LZO=y +CONFIG_UBIFS_FS_ZLIB=y +CONFIG_LOGFS=m +CONFIG_CRAMFS=m +CONFIG_SQUASHFS=m +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +CONFIG_MINIX_FS=m +CONFIG_OMFS_FS=m +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_CONSOLE is not set +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PSTORE_RAM=m +# CONFIG_SYSV_FS is not set +CONFIG_UFS_FS=m +# CONFIG_UFS_FS_WRITE is not set +# CONFIG_UFS_DEBUG is not set +CONFIG_EXOFS_FS=m +# CONFIG_EXOFS_DEBUG is not set +CONFIG_F2FS_FS=m +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +CONFIG_EFIVAR_FS=y +CONFIG_ORE=m +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=m +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_SWAP=y +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_OBJLAYOUT=m +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="linux-libre.fsfla.org" +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFS_FSCACHE=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_SUNRPC_DEBUG=y +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CIFS=m +CONFIG_CIFS_STATS=y +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_ACL=y +# CONFIG_CIFS_DEBUG is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_SMB2=y +CONFIG_CIFS_FSCACHE=y +CONFIG_NCP_FS=m +# CONFIG_NCPFS_PACKET_SIGNING is not set +# CONFIG_NCPFS_IOCTL_LOCKING is not set +# CONFIG_NCPFS_STRONG is not set +CONFIG_NCPFS_NFS_NS=y +CONFIG_NCPFS_OS2_NS=y +CONFIG_NCPFS_SMALLDOS=y +CONFIG_NCPFS_NLS=y +# CONFIG_NCPFS_EXTRAS is not set +CONFIG_CODA_FS=m +CONFIG_AFS_FS=m +# CONFIG_AFS_DEBUG is not set +CONFIG_AFS_FSCACHE=y +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=y +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set + +# +# Kernel hacking +# +CONFIG_TRACE_IRQFLAGS_SUPPORT=y + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +# CONFIG_BOOT_PRINTK_DELAY is not set +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_FRAME_WARN=1024 +CONFIG_STRIP_ASM_SYMS=y +# CONFIG_READABLE_ASM is not set +CONFIG_UNUSED_SYMBOLS=y +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VIRTUAL is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_HIGHMEM is not set +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_STACKOVERFLOW is not set +CONFIG_HAVE_ARCH_KMEMCHECK=y +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHEDSTATS=y +CONFIG_TIMER_STATS=y +# CONFIG_DEBUG_PREEMPT is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_RT_MUTEX_TESTER is not set +# CONFIG_DEBUG_SPINLOCK is not set +CONFIG_DEBUG_MUTEXES=y +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +CONFIG_STACKTRACE=y +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_WRITECOUNT is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU_DELAY is not set +# CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +# CONFIG_RCU_CPU_STALL_VERBOSE is not set +# CONFIG_RCU_CPU_STALL_INFO is not set +# CONFIG_RCU_TRACE is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y +# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y +CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_PREEMPT_TRACER is not set +CONFIG_SCHED_TRACER=y +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENT=y +CONFIG_UPROBE_EVENT=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_MMIOTRACE=y +# CONFIG_MMIOTRACE_TEST is not set +CONFIG_RING_BUFFER_BENCHMARK=m +# CONFIG_RING_BUFFER_STARTUP_TEST is not set + +# +# Runtime Testing +# +CONFIG_LKDTM=m +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_ASYNC_RAID6_TEST=m +# CONFIG_TEST_STRING_HELPERS is not set +CONFIG_TEST_KSTRTOX=m +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +# CONFIG_FIREWIRE_OHCI_REMOTE_DMA is not set +# CONFIG_DMA_API_DEBUG is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +CONFIG_STRICT_DEVMEM=y +CONFIG_X86_VERBOSE_BOOTUP=y +CONFIG_EARLY_PRINTK=y +# CONFIG_EARLY_PRINTK_DBGP is not set +# CONFIG_X86_PTDUMP is not set +CONFIG_DEBUG_RODATA=y +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_SET_MODULE_RONX is not set +# CONFIG_DEBUG_NX_TEST is not set +CONFIG_DOUBLEFAULT=y +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_IOMMU_STRESS is not set +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_IO_DELAY_TYPE_0X80=0 +CONFIG_IO_DELAY_TYPE_0XED=1 +CONFIG_IO_DELAY_TYPE_UDELAY=2 +CONFIG_IO_DELAY_TYPE_NONE=3 +CONFIG_IO_DELAY_0X80=y +# CONFIG_IO_DELAY_0XED is not set +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_DELAY_NONE is not set +CONFIG_DEFAULT_IO_DELAY_TYPE=0 +# CONFIG_DEBUG_BOOT_PARAMS is not set +# CONFIG_CPA_DEBUG is not set +# CONFIG_OPTIMIZE_INLINING is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set + +# +# Security options +# + +# +# Grsecurity +# +CONFIG_ARCH_TRACK_EXEC_LIMIT=y +CONFIG_PAX_USERCOPY_SLABS=y +CONFIG_GRKERNSEC=y +# CONFIG_GRKERNSEC_CONFIG_AUTO is not set +CONFIG_GRKERNSEC_CONFIG_CUSTOM=y +CONFIG_GRKERNSEC_PROC_GID=9998 +CONFIG_GRKERNSEC_TPE_TRUSTED_GID=9999 +CONFIG_GRKERNSEC_SYMLINKOWN_GID=33 + +# +# Customize Configuration +# + +# +# PaX +# +CONFIG_PAX=y + +# +# PaX Control +# +# CONFIG_PAX_SOFTMODE is not set +# CONFIG_PAX_EI_PAX is not set +CONFIG_PAX_PT_PAX_FLAGS=y +CONFIG_PAX_XATTR_PAX_FLAGS=y +# CONFIG_PAX_NO_ACL_FLAGS is not set +CONFIG_PAX_HAVE_ACL_FLAGS=y +# CONFIG_PAX_HOOK_ACL_FLAGS is not set + +# +# Non-executable pages +# +CONFIG_PAX_NOEXEC=y +CONFIG_PAX_PAGEEXEC=y +CONFIG_PAX_SEGMEXEC=y +CONFIG_PAX_EMUTRAMP=y +CONFIG_PAX_MPROTECT=y +# CONFIG_PAX_MPROTECT_COMPAT is not set +# CONFIG_PAX_ELFRELOCS is not set +CONFIG_PAX_KERNEXEC=y +CONFIG_PAX_KERNEXEC_PLUGIN_METHOD="" +CONFIG_PAX_KERNEXEC_MODULE_TEXT=4 + +# +# Address Space Layout Randomization +# +CONFIG_PAX_ASLR=y +CONFIG_PAX_RANDKSTACK=y +CONFIG_PAX_RANDUSTACK=y +CONFIG_PAX_RANDMMAP=y + +# +# Miscellaneous hardening features +# +# CONFIG_PAX_MEMORY_SANITIZE is not set +CONFIG_PAX_MEMORY_STACKLEAK=y +CONFIG_PAX_MEMORY_STRUCTLEAK=y +CONFIG_PAX_MEMORY_UDEREF=y +CONFIG_PAX_REFCOUNT=y +# CONFIG_PAX_CONSTIFY_PLUGIN is not set +CONFIG_PAX_USERCOPY=y +# CONFIG_PAX_USERCOPY_DEBUG is not set +# CONFIG_PAX_SIZE_OVERFLOW is not set +# CONFIG_PAX_LATENT_ENTROPY is not set + +# +# Memory Protections +# +CONFIG_GRKERNSEC_KMEM=y +CONFIG_GRKERNSEC_VM86=y +CONFIG_GRKERNSEC_IO=y +CONFIG_GRKERNSEC_PERF_HARDEN=y +CONFIG_GRKERNSEC_RAND_THREADSTACK=y +CONFIG_GRKERNSEC_PROC_MEMMAP=y +CONFIG_GRKERNSEC_BRUTE=y +CONFIG_GRKERNSEC_MODHARDEN=y +CONFIG_GRKERNSEC_HIDESYM=y +CONFIG_GRKERNSEC_KERN_LOCKOUT=y + +# +# Role Based Access Control Options +# +# CONFIG_GRKERNSEC_NO_RBAC is not set +CONFIG_GRKERNSEC_ACL_HIDEKERN=y +CONFIG_GRKERNSEC_ACL_MAXTRIES=3 +CONFIG_GRKERNSEC_ACL_TIMEOUT=30 + +# +# Filesystem Protections +# +CONFIG_GRKERNSEC_PROC=y +# CONFIG_GRKERNSEC_PROC_USER is not set +CONFIG_GRKERNSEC_PROC_USERGROUP=y +CONFIG_GRKERNSEC_PROC_ADD=y +CONFIG_GRKERNSEC_LINK=y +CONFIG_GRKERNSEC_SYMLINKOWN=y +CONFIG_GRKERNSEC_FIFO=y +# CONFIG_GRKERNSEC_SYSFS_RESTRICT is not set +CONFIG_GRKERNSEC_ROFS=y +CONFIG_GRKERNSEC_DEVICE_SIDECHANNEL=y +CONFIG_GRKERNSEC_CHROOT=y +CONFIG_GRKERNSEC_CHROOT_MOUNT=y +CONFIG_GRKERNSEC_CHROOT_DOUBLE=y +CONFIG_GRKERNSEC_CHROOT_PIVOT=y +CONFIG_GRKERNSEC_CHROOT_CHDIR=y +CONFIG_GRKERNSEC_CHROOT_CHMOD=y +CONFIG_GRKERNSEC_CHROOT_FCHDIR=y +CONFIG_GRKERNSEC_CHROOT_MKNOD=y +CONFIG_GRKERNSEC_CHROOT_SHMAT=y +CONFIG_GRKERNSEC_CHROOT_UNIX=y +CONFIG_GRKERNSEC_CHROOT_FINDTASK=y +CONFIG_GRKERNSEC_CHROOT_NICE=y +CONFIG_GRKERNSEC_CHROOT_SYSCTL=y +CONFIG_GRKERNSEC_CHROOT_CAPS=y +CONFIG_GRKERNSEC_CHROOT_INITRD=y + +# +# Kernel Auditing +# +CONFIG_GRKERNSEC_AUDIT_GROUP=y +CONFIG_GRKERNSEC_AUDIT_GID=9994 +CONFIG_GRKERNSEC_EXECLOG=y +CONFIG_GRKERNSEC_RESLOG=y +CONFIG_GRKERNSEC_CHROOT_EXECLOG=y +CONFIG_GRKERNSEC_AUDIT_PTRACE=y +CONFIG_GRKERNSEC_AUDIT_CHDIR=y +CONFIG_GRKERNSEC_AUDIT_MOUNT=y +CONFIG_GRKERNSEC_SIGNAL=y +CONFIG_GRKERNSEC_FORKFAIL=y +CONFIG_GRKERNSEC_TIME=y +CONFIG_GRKERNSEC_PROC_IPADDR=y +CONFIG_GRKERNSEC_RWXMAP_LOG=y + +# +# Executable Protections +# +CONFIG_GRKERNSEC_DMESG=y +CONFIG_GRKERNSEC_HARDEN_PTRACE=y +CONFIG_GRKERNSEC_PTRACE_READEXEC=y +CONFIG_GRKERNSEC_SETXID=y +CONFIG_GRKERNSEC_HARDEN_IPC=y +CONFIG_GRKERNSEC_TPE=y +CONFIG_GRKERNSEC_TPE_ALL=y +CONFIG_GRKERNSEC_TPE_INVERT=y +CONFIG_GRKERNSEC_TPE_GID=9999 + +# +# Network Protections +# +CONFIG_GRKERNSEC_RANDNET=y +CONFIG_GRKERNSEC_BLACKHOLE=y +CONFIG_GRKERNSEC_NO_SIMULT_CONNECT=y +CONFIG_GRKERNSEC_SOCKET=y +CONFIG_GRKERNSEC_SOCKET_ALL=y +CONFIG_GRKERNSEC_SOCKET_ALL_GID=9995 +CONFIG_GRKERNSEC_SOCKET_CLIENT=y +CONFIG_GRKERNSEC_SOCKET_CLIENT_GID=9996 +CONFIG_GRKERNSEC_SOCKET_SERVER=y +CONFIG_GRKERNSEC_SOCKET_SERVER_GID=9997 + +# +# Physical Protections +# +CONFIG_GRKERNSEC_DENYUSB=y +# CONFIG_GRKERNSEC_DENYUSB_FORCE is not set + +# +# Sysctl Support +# +CONFIG_GRKERNSEC_SYSCTL=y +CONFIG_GRKERNSEC_SYSCTL_DISTRO=y +CONFIG_GRKERNSEC_SYSCTL_ON=y + +# +# Logging Options +# +CONFIG_GRKERNSEC_FLOODTIME=10 +CONFIG_GRKERNSEC_FLOODBURST=6 +CONFIG_KEYS=y +CONFIG_TRUSTED_KEYS=m +CONFIG_ENCRYPTED_KEYS=m +# CONFIG_KEYS_DEBUG_PROC_KEYS is not set +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_NETWORK_XFRM is not set +CONFIG_SECURITY_PATH=y +# CONFIG_INTEL_TXT is not set +# CONFIG_SECURITY_SELINUX is not set +# CONFIG_SECURITY_SMACK is not set +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/usr/bin/tomoyo-init" +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/usr/lib/systemd/systemd" +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=0 +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_YAMA=y +CONFIG_SECURITY_YAMA_STACKED=y +# CONFIG_IMA is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +# CONFIG_DEFAULT_SECURITY_APPARMOR is not set +# CONFIG_DEFAULT_SECURITY_YAMA is not set +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_DEFAULT_SECURITY="" +CONFIG_EXPLOIT_DETECTION=y +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=m +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=m +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_PCOMP=m +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_ABLK_HELPER_X86=m +CONFIG_CRYPTO_GLUE_HELPER_X86=m + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_SEQIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=m +CONFIG_CRYPTO_CTR=m +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=m +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_HMAC=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=m +CONFIG_CRYPTO_CRC32C_INTEL=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRC32_PCLMUL=m +CONFIG_CRYPTO_CRCT10DIF=m +CONFIG_CRYPTO_GHASH=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=m +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=m +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_586=m +CONFIG_CRYPTO_AES_NI_INTEL=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SALSA20_586=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SERPENT_SSE2_586=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_TWOFISH_586=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +CONFIG_CRYPTO_ZLIB=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_DEV_PADLOCK=m +CONFIG_CRYPTO_DEV_PADLOCK_AES=m +CONFIG_CRYPTO_DEV_PADLOCK_SHA=m +CONFIG_CRYPTO_DEV_GEODE=m +CONFIG_CRYPTO_DEV_HIFN_795X=m +CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y +CONFIG_ASYMMETRIC_KEY_TYPE=m +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m +CONFIG_PUBLIC_KEY_ALGO_RSA=m +CONFIG_X509_CERTIFICATE_PARSER=m +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_APIC_ARCHITECTURE=y +CONFIG_KVM_MMIO=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=m +CONFIG_KVM_INTEL=m +CONFIG_KVM_AMD=m +CONFIG_KVM_MMU_AUDIT=y +CONFIG_KVM_DEVICE_ASSIGNMENT=y +CONFIG_LGUEST=m +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_PERCPU_RWSEM=y +CONFIG_CRC_CCITT=m +CONFIG_CRC16=m +CONFIG_CRC_T10DIF=m +CONFIG_CRC_ITU_T=m +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +CONFIG_CRC8=m +CONFIG_AUDIT_GENERIC=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_X86=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_REED_SOLOMON=m +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_BCH=m +CONFIG_BCH_CONST_PARAMS=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_BTREE=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_DMA=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_NLATTR=y +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_LRU_CACHE=m +CONFIG_AVERAGE=y +CONFIG_CLZ_TAB=y +CONFIG_CORDIC=m +CONFIG_DDR=y +CONFIG_MPILIB=m +CONFIG_OID_REGISTRY=m +CONFIG_UCS2_STRING=y +CONFIG_FONT_SUPPORT=y +CONFIG_FONTS=y +# CONFIG_FONT_8x8 is not set +CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +# CONFIG_FONT_10x18 is not set +CONFIG_FONT_AUTOSELECT=y diff --git a/kernels/linux-libre-grsec/config.x86_64 b/kernels/linux-libre-grsec/config.x86_64 new file mode 100644 index 000000000..4debcba82 --- /dev/null +++ b/kernels/linux-libre-grsec/config.x86_64 @@ -0,0 +1,6414 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/x86 3.12.1-3 Kernel Configuration +# +CONFIG_64BIT=y +CONFIG_X86_64=y +CONFIG_X86=y +CONFIG_INSTRUCTION_DECODER=y +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_HAVE_LATENCYTOP_SUPPORT=y +CONFIG_MMU=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_CPU_AUTOPROBE=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ZONE_DMA32=y +CONFIG_AUDIT_ARCH=y +CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_X86_64_SMP=y +CONFIG_X86_HT=y +CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11" +CONFIG_ARCH_CPU_PROBE_RELEASE=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="-LIBRE-GRSEC" +CONFIG_LOCALVERSION_AUTO=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_BZIP2 is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_XZ is not set +# CONFIG_KERNEL_LZO is not set +# CONFIG_KERNEL_LZ4 is not set +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_FHANDLE=y +CONFIG_AUDIT=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_WATCH=y +CONFIG_AUDIT_TREE=y +CONFIG_AUDIT_LOGINUID_IMMUTABLE=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_IRQ_DOMAIN=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +CONFIG_CLOCKSOURCE_WATCHDOG=y +CONFIG_ARCH_CLOCKSOURCE_DATA=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y + +# +# RCU Subsystem +# +CONFIG_TREE_PREEMPT_RCU=y +CONFIG_PREEMPT_RCU=y +CONFIG_RCU_STALL_COMMON=y +# CONFIG_RCU_USER_QS is not set +CONFIG_RCU_FANOUT=64 +CONFIG_RCU_FANOUT_LEAF=16 +# CONFIG_RCU_FANOUT_EXACT is not set +CONFIG_RCU_FAST_NO_HZ=y +# CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_BOOST is not set +CONFIG_RCU_NOCB_CPU=y +CONFIG_RCU_NOCB_CPU_NONE=y +# CONFIG_RCU_NOCB_CPU_ZERO is not set +# CONFIG_RCU_NOCB_CPU_ALL is not set +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=19 +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y +CONFIG_ARCH_USES_NUMA_PROT_NONE=y +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +CONFIG_NUMA_BALANCING=y +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_RESOURCE_COUNTERS=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +# CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y +# CONFIG_CGROUP_HUGETLB is not set +# CONFIG_CGROUP_PERF is not set +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +# CONFIG_USER_NS is not set +CONFIG_PID_NS=y +CONFIG_NET_NS=y +# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set +CONFIG_SCHED_AUTOGROUP=y +CONFIG_MM_OWNER=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +CONFIG_RD_BZIP2=y +CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y +CONFIG_RD_LZO=y +CONFIG_RD_LZ4=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +# CONFIG_EXPERT is not set +CONFIG_UID16=y +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_PCSPKR_PLATFORM=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_PCI_QUIRKS=y +# CONFIG_EMBEDDED is not set +CONFIG_HAVE_PERF_EVENTS=y + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_HAVE_OPROFILE=y +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +CONFIG_KPROBES_ON_FTRACE=y +CONFIG_UPROBES=y +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_KRETPROBES=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_USE_GENERIC_SMP_HELPERS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +CONFIG_STOP_MACHINE=y +CONFIG_BLOCK=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +# CONFIG_BLK_DEV_INTEGRITY is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_CMDLINE_PARSER is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +CONFIG_AIX_PARTITION=y +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +CONFIG_BSD_DISKLABEL=y +CONFIG_MINIX_SUBPARTITION=y +CONFIG_SOLARIS_X86_PARTITION=y +# CONFIG_UNIXWARE_DISKLABEL is not set +CONFIG_LDM_PARTITION=y +# CONFIG_LDM_DEBUG is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=m +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_FREEZER=y + +# +# Processor type and features +# +CONFIG_ZONE_DMA=y +CONFIG_SMP=y +CONFIG_X86_X2APIC=y +CONFIG_X86_MPPARSE=y +# CONFIG_X86_EXTENDED_PLATFORM is not set +# CONFIG_X86_INTEL_LPSS is not set +CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_HYPERVISOR_GUEST=y +CONFIG_PARAVIRT=y +# CONFIG_PARAVIRT_DEBUG is not set +# CONFIG_PARAVIRT_SPINLOCKS is not set +CONFIG_XEN=y +CONFIG_XEN_DOM0=y +CONFIG_XEN_PRIVILEGED_GUEST=y +CONFIG_XEN_PVHVM=y +CONFIG_XEN_MAX_DOMAIN_MEMORY=500 +CONFIG_XEN_SAVE_RESTORE=y +# CONFIG_XEN_DEBUG_FS is not set +CONFIG_KVM_GUEST=y +# CONFIG_KVM_DEBUG_FS is not set +CONFIG_PARAVIRT_TIME_ACCOUNTING=y +CONFIG_PARAVIRT_CLOCK=y +CONFIG_NO_BOOTMEM=y +# CONFIG_MEMTEST is not set +# CONFIG_MK8 is not set +# CONFIG_MPSC is not set +# CONFIG_MCORE2 is not set +# CONFIG_MATOM is not set +CONFIG_GENERIC_CPU=y +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_TSC=y +CONFIG_X86_CMPXCHG64=y +CONFIG_X86_CMOV=y +CONFIG_X86_MINIMUM_CPU_FAMILY=64 +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_AMD=y +CONFIG_CPU_SUP_CENTAUR=y +CONFIG_HPET_TIMER=y +CONFIG_HPET_EMULATE_RTC=y +CONFIG_DMI=y +CONFIG_GART_IOMMU=y +CONFIG_CALGARY_IOMMU=y +CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y +CONFIG_SWIOTLB=y +CONFIG_IOMMU_HELPER=y +# CONFIG_MAXSMP is not set +CONFIG_NR_CPUS=128 +CONFIG_SCHED_SMT=y +CONFIG_SCHED_MC=y +# CONFIG_PREEMPT_NONE is not set +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PREEMPT=y +CONFIG_PREEMPT_COUNT=y +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_IO_APIC=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_MCE=y +CONFIG_X86_MCE_INTEL=y +CONFIG_X86_MCE_AMD=y +CONFIG_X86_MCE_THRESHOLD=y +# CONFIG_X86_MCE_INJECT is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_I8K=m +CONFIG_MICROCODE=m +# CONFIG_MICROCODE_INTEL is not set +# CONFIG_MICROCODE_AMD is not set +CONFIG_MICROCODE_OLD_INTERFACE=y +CONFIG_X86_CPUID=m +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_DIRECT_GBPAGES=y +CONFIG_NUMA=y +CONFIG_AMD_NUMA=y +CONFIG_X86_64_ACPI_NUMA=y +CONFIG_NODES_SPAN_OTHER_NODES=y +# CONFIG_NUMA_EMU is not set +CONFIG_NODES_SHIFT=6 +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_MEMORY_PROBE=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_ARCH_DISCARD_MEMBLOCK=y +CONFIG_MEMORY_ISOLATION=y +# CONFIG_MOVABLE_NODE is not set +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_PAGEFLAGS_EXTENDED=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_ZONE_DMA_FLAG=1 +CONFIG_BOUNCE=y +CONFIG_VIRT_TO_BUS=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_MEMORY_FAILURE=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CLEANCACHE=y +CONFIG_FRONTSWAP=y +# CONFIG_CMA is not set +CONFIG_ZBUD=y +CONFIG_ZSWAP=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y +CONFIG_X86_RESERVE_LOW=64 +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_X86_PAT=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_ARCH_RANDOM=y +CONFIG_X86_SMAP=y +CONFIG_EFI=y +CONFIG_EFI_STUB=y +CONFIG_SECCOMP=y +CONFIG_CC_STACKPROTECTOR=y +# CONFIG_HZ_100 is not set +# CONFIG_HZ_250 is not set +CONFIG_HZ_300=y +# CONFIG_HZ_1000 is not set +CONFIG_HZ=300 +CONFIG_SCHED_HRTICK=y +# CONFIG_CRASH_DUMP is not set +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_RELOCATABLE=y +CONFIG_PHYSICAL_ALIGN=0x1000000 +CONFIG_HOTPLUG_CPU=y +# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set +# CONFIG_DEBUG_HOTPLUG_CPU0 is not set +# CONFIG_CMDLINE_BOOL is not set +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_USE_PERCPU_NUMA_NODE_ID=y + +# +# Power management and ACPI options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +CONFIG_PM_AUTOSLEEP=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PM_WAKELOCKS_LIMIT=100 +CONFIG_PM_WAKELOCKS_GC=y +CONFIG_PM_RUNTIME=y +CONFIG_PM=y +CONFIG_PM_DEBUG=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_SLEEP_DEBUG=y +CONFIG_PM_TRACE=y +CONFIG_PM_TRACE_RTC=y +# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set +CONFIG_ACPI=y +CONFIG_ACPI_SLEEP=y +# CONFIG_ACPI_PROCFS is not set +# CONFIG_ACPI_PROCFS_POWER is not set +CONFIG_ACPI_EC_DEBUGFS=m +CONFIG_ACPI_AC=m +CONFIG_ACPI_BATTERY=m +CONFIG_ACPI_BUTTON=m +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_FAN=m +CONFIG_ACPI_DOCK=y +CONFIG_ACPI_PROCESSOR=m +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_PROCESSOR_AGGREGATOR=m +CONFIG_ACPI_THERMAL=m +CONFIG_ACPI_NUMA=y +# CONFIG_ACPI_CUSTOM_DSDT is not set +CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y +CONFIG_ACPI_BLACKLIST_YEAR=0 +# CONFIG_ACPI_DEBUG is not set +CONFIG_ACPI_PCI_SLOT=y +CONFIG_X86_PM_TIMER=y +CONFIG_ACPI_CONTAINER=y +CONFIG_ACPI_HOTPLUG_MEMORY=y +CONFIG_ACPI_SBS=m +CONFIG_ACPI_HED=y +CONFIG_ACPI_CUSTOM_METHOD=m +CONFIG_ACPI_BGRT=y +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_GHES=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_EINJ=m +CONFIG_ACPI_APEI_ERST_DEBUG=m +CONFIG_SFI=y + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_TABLE=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=m +CONFIG_CPU_FREQ_STAT_DETAILS=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=m +CONFIG_CPU_FREQ_GOV_USERSPACE=m +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m + +# +# x86 CPU frequency scaling drivers +# +CONFIG_X86_INTEL_PSTATE=y +CONFIG_X86_PCC_CPUFREQ=m +CONFIG_X86_ACPI_CPUFREQ=m +CONFIG_X86_ACPI_CPUFREQ_CPB=y +CONFIG_X86_POWERNOW_K8=m +CONFIG_X86_AMD_FREQ_SENSITIVITY=m +# CONFIG_X86_SPEEDSTEP_CENTRINO is not set +CONFIG_X86_P4_CLOCKMOD=m + +# +# shared options +# +CONFIG_X86_SPEEDSTEP_LIB=m + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_INTEL_IDLE=y + +# +# Memory power savings +# +CONFIG_I7300_IDLE_IOAT_CHANNEL=y +CONFIG_I7300_IDLE=m + +# +# Bus options (PCI etc.) +# +CONFIG_PCI=y +CONFIG_PCI_DIRECT=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCI_XEN=y +CONFIG_PCI_DOMAINS=y +# CONFIG_PCIEPORTBUS is not set +CONFIG_PCI_MSI=y +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_HT_IRQ=y +CONFIG_PCI_ATS=y +CONFIG_PCI_IOV=y +CONFIG_PCI_PRI=y +CONFIG_PCI_PASID=y +CONFIG_PCI_IOAPIC=y +CONFIG_PCI_LABEL=y + +# +# PCI host controller drivers +# +CONFIG_ISA_DMA_API=y +CONFIG_AMD_NB=y +CONFIG_PCCARD=m +CONFIG_PCMCIA=m +CONFIG_PCMCIA_LOAD_CIS=y +CONFIG_CARDBUS=y + +# +# PC-card bridges +# +CONFIG_YENTA=m +CONFIG_YENTA_O2=y +CONFIG_YENTA_RICOH=y +CONFIG_YENTA_TI=y +CONFIG_YENTA_ENE_TUNE=y +CONFIG_YENTA_TOSHIBA=y +CONFIG_PD6729=m +CONFIG_I82092=m +CONFIG_PCCARD_NONSTATIC=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m +CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m +CONFIG_HOTPLUG_PCI_SHPC=m +CONFIG_RAPIDIO=y +CONFIG_RAPIDIO_DISC_TIMEOUT=30 +# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set +CONFIG_RAPIDIO_DMA_ENGINE=y +CONFIG_RAPIDIO_DEBUG=y +CONFIG_RAPIDIO_ENUM_BASIC=m + +# +# RapidIO Switch drivers +# +CONFIG_RAPIDIO_TSI57X=y +CONFIG_RAPIDIO_CPS_XX=y +CONFIG_RAPIDIO_TSI568=y +CONFIG_RAPIDIO_CPS_GEN2=y +# CONFIG_X86_SYSFB is not set + +# +# Executable file formats / Emulations +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +CONFIG_BINFMT_SCRIPT=y +# CONFIG_HAVE_AOUT is not set +CONFIG_BINFMT_MISC=y +CONFIG_COREDUMP=y +CONFIG_IA32_EMULATION=y +CONFIG_IA32_AOUT=m +CONFIG_X86_X32=y +CONFIG_COMPAT=y +CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_KEYS_COMPAT=y +CONFIG_X86_DEV_DMA_OPS=y +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=m +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +# CONFIG_XFRM_STATISTICS is not set +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +# CONFIG_IP_PNP is not set +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +# CONFIG_NET_IPGRE_BROADCAST is not set +CONFIG_IP_MROUTE=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_LRO=y +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +CONFIG_IPV6=y +CONFIG_IPV6_PRIVACY=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +# CONFIG_IPV6_MROUTE is not set +CONFIG_NETLABEL=y +CONFIG_NETWORK_SECMARK=y +CONFIG_NETWORK_PHY_TIMESTAMPING=y +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=y + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=m +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=m +CONFIG_NF_CT_PROTO_UDPLITE=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NETFILTER_NETLINK_QUEUE_CT=y +CONFIG_NF_NAT=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=m +CONFIG_NF_NAT_PROTO_UDPLITE=m +CONFIG_NF_NAT_PROTO_SCTP=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NETFILTER_XTABLES=m + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_GRADM=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +# CONFIG_IP_VS_IPV6 is not set +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_TARGET_ULOG=m +CONFIG_NF_NAT_IPV4=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_NF_NAT_IPV6=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_ULOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_IP_DCCP=m +CONFIG_INET_DCCP_DIAG=m + +# +# DCCP CCIDs Configuration +# +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +CONFIG_IP_DCCP_CCID3=y +# CONFIG_IP_DCCP_CCID3_DEBUG is not set +CONFIG_IP_DCCP_TFRC_LIB=y + +# +# DCCP Kernel Hacking +# +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_NET_DCCPPROBE=m +CONFIG_IP_SCTP=m +CONFIG_NET_SCTPPROBE=m +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +# CONFIG_RDS is not set +# CONFIG_TIPC is not set +CONFIG_ATM=m +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_L2TP=m +# CONFIG_L2TP_DEBUGFS is not set +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_HAVE_NET_DSA=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_TAG_DSA=y +CONFIG_NET_DSA_TAG_EDSA=y +CONFIG_NET_DSA_TAG_TRAILER=y +CONFIG_VLAN_8021Q=m +# CONFIG_VLAN_8021Q_GVRP is not set +CONFIG_VLAN_8021Q_MVRP=y +# CONFIG_DECNET is not set +CONFIG_LLC=m +CONFIG_LLC2=m +CONFIG_IPX=m +# CONFIG_IPX_INTERN is not set +CONFIG_ATALK=m +CONFIG_DEV_APPLETALK=m +CONFIG_IPDDP=m +CONFIG_IPDDP_ENCAP=y +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +CONFIG_PHONET=m +CONFIG_IEEE802154=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_MAC802154=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +# CONFIG_CLS_U32_PERF is not set +# CONFIG_CLS_U32_MARK is not set +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=y +# CONFIG_NET_EMATCH is not set +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_CLS_IND=y +CONFIG_NET_SCH_FIFO=y +# CONFIG_DCB is not set +CONFIG_DNS_RESOLVER=y +CONFIG_BATMAN_ADV=m +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +CONFIG_BATMAN_ADV_NC=y +# CONFIG_BATMAN_ADV_DEBUG is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=y +CONFIG_OPENVSWITCH_VXLAN=y +CONFIG_VSOCKETS=m +CONFIG_VMWARE_VMCI_VSOCKETS=m +CONFIG_NETLINK_MMAP=y +CONFIG_NETLINK_DIAG=m +CONFIG_NET_MPLS_GSO=m +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_NETPRIO_CGROUP=m +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_BPF_JIT=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_TCPPROBE=m +CONFIG_NET_DROP_MONITOR=y +CONFIG_HAMRADIO=y + +# +# Packet Radio protocols +# +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_NETROM=m +CONFIG_ROSE=m + +# +# AX.25 network device drivers +# +CONFIG_MKISS=m +CONFIG_6PACK=m +CONFIG_BPQETHER=m +CONFIG_BAYCOM_SER_FDX=m +CONFIG_BAYCOM_SER_HDX=m +CONFIG_BAYCOM_PAR=m +CONFIG_YAM=m +# CONFIG_CAN is not set +CONFIG_IRDA=m + +# +# IrDA protocols +# +CONFIG_IRLAN=m +CONFIG_IRNET=m +CONFIG_IRCOMM=m +CONFIG_IRDA_ULTRA=y + +# +# IrDA options +# +CONFIG_IRDA_CACHE_LAST_LSAP=y +CONFIG_IRDA_FAST_RR=y +# CONFIG_IRDA_DEBUG is not set + +# +# Infrared-port device drivers +# + +# +# SIR device drivers +# +CONFIG_IRTTY_SIR=m + +# +# Dongle support +# +CONFIG_DONGLE=y +CONFIG_ESI_DONGLE=m +CONFIG_ACTISYS_DONGLE=m +CONFIG_TEKRAM_DONGLE=m +CONFIG_TOIM3232_DONGLE=m +CONFIG_LITELINK_DONGLE=m +CONFIG_MA600_DONGLE=m +CONFIG_GIRBIL_DONGLE=m +CONFIG_MCP2120_DONGLE=m +CONFIG_OLD_BELKIN_DONGLE=m +CONFIG_ACT200L_DONGLE=m +CONFIG_KINGSUN_DONGLE=m +CONFIG_KSDAZZLE_DONGLE=m +CONFIG_KS959_DONGLE=m + +# +# FIR device drivers +# +CONFIG_USB_IRDA=m +CONFIG_SIGMATEL_FIR=m +CONFIG_NSC_FIR=m +CONFIG_WINBOND_FIR=m +CONFIG_SMC_IRCC_FIR=m +CONFIG_ALI_FIR=m +CONFIG_VLSI_FIR=m +CONFIG_VIA_FIR=m +CONFIG_MCS_FIR=m +CONFIG_BT=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_CMTP=m +CONFIG_BT_HIDP=m + +# +# Bluetooth device drivers +# +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIDTL1=m +CONFIG_BT_HCIBT3C=m +CONFIG_BT_HCIBLUECARD=m +CONFIG_BT_HCIBTUART=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_ATH3K=m +CONFIG_BT_WILINK=m +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_RXKAD=m +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_CFG80211=m +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_REG_DEBUG is not set +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEBUGFS is not set +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_WEXT=y +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_WEP=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_MAC80211=m +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_LEDS=y +# CONFIG_MAC80211_DEBUGFS is not set +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_WIMAX=m +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_RFKILL=m +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_INPUT=y +CONFIG_NET_9P=m +CONFIG_NET_9P_VIRTIO=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_NETDEV=m +CONFIG_CAIF_USB=m +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set +CONFIG_NFC=m +CONFIG_NFC_NCI=m +# CONFIG_NFC_NCI_SPI is not set +CONFIG_NFC_HCI=m +# CONFIG_NFC_SHDLC is not set + +# +# Near Field Communication (NFC) devices +# +CONFIG_NFC_PN533=m +CONFIG_NFC_WILINK=m +CONFIG_NFC_MEI_PHY=m +CONFIG_NFC_SIM=m +CONFIG_NFC_PN544=m +CONFIG_NFC_PN544_MEI=m +CONFIG_NFC_MICROREAD=m +CONFIG_NFC_MICROREAD_MEI=m +CONFIG_HAVE_BPF_JIT=y + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER_PATH="" +CONFIG_DEVTMPFS=y +# CONFIG_DEVTMPFS_MOUNT is not set +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +# CONFIG_FIRMWARE_IN_KERNEL is not set +CONFIG_EXTRA_FIRMWARE="" +CONFIG_FW_LOADER_USER_HELPER=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +CONFIG_SYS_HYPERVISOR=y +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_MMIO=m +CONFIG_REGMAP_IRQ=y +CONFIG_DMA_SHARED_BUFFER=y + +# +# Bus devices +# +CONFIG_CONNECTOR=y +CONFIG_PROC_EVENTS=y +CONFIG_MTD=m +CONFIG_MTD_TESTS=m +CONFIG_MTD_REDBOOT_PARTS=m +CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 +# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set +# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_AR7_PARTS=m + +# +# User Modules And Translation Layers +# +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_BLOCK_RO=m +CONFIG_FTL=m +CONFIG_NFTL=m +CONFIG_NFTL_RW=y +CONFIG_INFTL=m +CONFIG_RFD_FTL=m +CONFIG_SSFDC=m +# CONFIG_SM_FTL is not set +CONFIG_MTD_OOPS=m +CONFIG_MTD_SWAP=m + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=m +CONFIG_MTD_JEDECPROBE=m +CONFIG_MTD_GEN_PROBE=m +# CONFIG_MTD_CFI_ADV_OPTIONS is not set +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +CONFIG_MTD_CFI_INTELEXT=m +CONFIG_MTD_CFI_AMDSTD=m +CONFIG_MTD_CFI_STAA=m +CONFIG_MTD_CFI_UTIL=m +CONFIG_MTD_RAM=m +CONFIG_MTD_ROM=m +CONFIG_MTD_ABSENT=m + +# +# Mapping drivers for chip access +# +CONFIG_MTD_COMPLEX_MAPPINGS=y +# CONFIG_MTD_PHYSMAP is not set +CONFIG_MTD_SC520CDP=m +CONFIG_MTD_NETSC520=m +CONFIG_MTD_TS5500=m +# CONFIG_MTD_SBC_GXX is not set +# CONFIG_MTD_AMD76XROM is not set +# CONFIG_MTD_ICHXROM is not set +# CONFIG_MTD_ESB2ROM is not set +# CONFIG_MTD_CK804XROM is not set +CONFIG_MTD_SCB2_FLASH=m +# CONFIG_MTD_NETtel is not set +# CONFIG_MTD_L440GX is not set +CONFIG_MTD_PCI=m +# CONFIG_MTD_PCMCIA is not set +# CONFIG_MTD_GPIO_ADDR is not set +# CONFIG_MTD_INTEL_VR_NOR is not set +CONFIG_MTD_PLATRAM=m +# CONFIG_MTD_LATCH_ADDR is not set + +# +# Self-contained MTD device drivers +# +CONFIG_MTD_PMC551=m +# CONFIG_MTD_PMC551_BUGFIX is not set +# CONFIG_MTD_PMC551_DEBUG is not set +# CONFIG_MTD_DATAFLASH is not set +# CONFIG_MTD_M25P80 is not set +# CONFIG_MTD_SST25L is not set +# CONFIG_MTD_SLRAM is not set +CONFIG_MTD_PHRAM=m +CONFIG_MTD_MTDRAM=m +CONFIG_MTDRAM_TOTAL_SIZE=4096 +CONFIG_MTDRAM_ERASE_SIZE=128 +CONFIG_MTD_BLOCK2MTD=m + +# +# Disk-On-Chip Device Drivers +# +CONFIG_MTD_DOCG3=m +CONFIG_BCH_CONST_M=14 +CONFIG_BCH_CONST_T=4 +# CONFIG_MTD_NAND is not set +# CONFIG_MTD_ONENAND is not set + +# +# LPDDR flash memory drivers +# +CONFIG_MTD_LPDDR=m +CONFIG_MTD_QINFO_PROBE=m +CONFIG_MTD_UBI=m +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTD_UBI_BEB_LIMIT=20 +# CONFIG_MTD_UBI_FASTMAP is not set +# CONFIG_MTD_UBI_GLUEBI is not set +CONFIG_PARPORT=m +CONFIG_PARPORT_PC=m +CONFIG_PARPORT_SERIAL=m +# CONFIG_PARPORT_PC_FIFO is not set +# CONFIG_PARPORT_PC_SUPERIO is not set +CONFIG_PARPORT_PC_PCMCIA=m +# CONFIG_PARPORT_GSC is not set +CONFIG_PARPORT_AX88796=m +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_NOT_PC=y +CONFIG_PNP=y +# CONFIG_PNP_DEBUG_MESSAGES is not set + +# +# Protocols +# +CONFIG_PNPACPI=y +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_FD=m +# CONFIG_PARIDE is not set +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_BLK_CPQ_DA=m +CONFIG_BLK_CPQ_CISS_DA=m +# CONFIG_CISS_SCSI_TAPE is not set +CONFIG_BLK_DEV_DAC960=m +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=m +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NVME=m +CONFIG_BLK_DEV_OSD=m +CONFIG_BLK_DEV_SX8=m +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=16384 +# CONFIG_BLK_DEV_XIP is not set +CONFIG_CDROM_PKTCDVD=m +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_ATA_OVER_ETH=m +CONFIG_XEN_BLKDEV_FRONTEND=m +CONFIG_XEN_BLKDEV_BACKEND=m +CONFIG_VIRTIO_BLK=m +# CONFIG_BLK_DEV_HD is not set +CONFIG_BLK_DEV_RBD=m +CONFIG_BLK_DEV_RSXX=m + +# +# Misc devices +# +CONFIG_SENSORS_LIS3LV02D=m +CONFIG_AD525X_DPOT=m +CONFIG_AD525X_DPOT_I2C=m +# CONFIG_AD525X_DPOT_SPI is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_IBM_ASM is not set +CONFIG_PHANTOM=m +CONFIG_SGI_IOC4=m +CONFIG_TIFM_CORE=m +CONFIG_TIFM_7XX1=m +CONFIG_ICS932S401=m +# CONFIG_ATMEL_SSC is not set +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_CS5535_MFGPT=m +CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7 +CONFIG_CS5535_CLOCK_EVENT_SRC=m +CONFIG_HP_ILO=m +CONFIG_APDS9802ALS=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_BH1780=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_APDS990X=m +CONFIG_HMC6352=m +CONFIG_DS1682=m +# CONFIG_TI_DAC7512 is not set +CONFIG_VMWARE_BALLOON=m +CONFIG_BMP085=y +CONFIG_BMP085_I2C=m +# CONFIG_BMP085_SPI is not set +CONFIG_PCH_PHUB=m +CONFIG_USB_SWITCH_FSA9480=m +# CONFIG_LATTICE_ECP3_CONFIG is not set +# CONFIG_SRAM is not set +CONFIG_C2PORT=m +CONFIG_C2PORT_DURAMAR_2150=m + +# +# EEPROM support +# +CONFIG_EEPROM_AT24=m +# CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +CONFIG_CB710_CORE=m +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y + +# +# Texas Instruments shared transport line discipline +# +CONFIG_TI_ST=m +CONFIG_SENSORS_LIS3_I2C=m + +# +# Altera FPGA firmware download module +# +CONFIG_ALTERA_STAPL=m +CONFIG_INTEL_MEI=m +CONFIG_INTEL_MEI_ME=m +CONFIG_VMWARE_VMCI=m +CONFIG_HAVE_IDE=y +# CONFIG_IDE is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=m +CONFIG_RAID_ATTRS=m +CONFIG_SCSI=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_TGT=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +CONFIG_CHR_DEV_ST=m +CONFIG_CHR_DEV_OSST=m +CONFIG_BLK_DEV_SR=m +CONFIG_BLK_DEV_SR_VENDOR=y +CONFIG_CHR_DEV_SG=m +CONFIG_CHR_DEV_SCH=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_FC_ATTRS=m +# CONFIG_SCSI_FC_TGT_ATTRS is not set +CONFIG_SCSI_ISCSI_ATTRS=m +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_SRP_TGT_ATTRS=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_BE2ISCSI=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 +CONFIG_AIC7XXX_RESET_DELAY_MS=15000 +# CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +# CONFIG_SCSI_AIC7XXX_OLD is not set +CONFIG_SCSI_AIC79XX=m +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +CONFIG_AIC79XX_RESET_DELAY_MS=15000 +# CONFIG_AIC79XX_DEBUG_ENABLE is not set +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_SCSI_AIC94XX=m +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS_DEBUG is not set +CONFIG_SCSI_MVSAS_TASKLET=y +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_DPT_I2O=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_ESAS2R=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_MM=m +CONFIG_MEGARAID_MAILBOX=m +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_SAS=m +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +# CONFIG_SCSI_MPT2SAS_LOGGING is not set +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS_LOGGING=y +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_UFSHCD_PCI=m +CONFIG_SCSI_UFSHCD_PLATFORM=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_BUSLOGIC=m +CONFIG_SCSI_FLASHPOINT=y +CONFIG_VMWARE_PVSCSI=m +CONFIG_HYPERV_STORAGE=m +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_FCOE=m +CONFIG_FCOE_FNIC=m +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_EATA=m +# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set +# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set +CONFIG_SCSI_EATA_MAX_TAGS=16 +CONFIG_SCSI_FUTURE_DOMAIN=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_ISCI=m +CONFIG_SCSI_IPS=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_PPA=m +CONFIG_SCSI_IMM=m +# CONFIG_SCSI_IZIP_EPP16 is not set +# CONFIG_SCSI_IZIP_SLOW_CTR is not set +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +CONFIG_SCSI_IPR=m +# CONFIG_SCSI_IPR_TRACE is not set +# CONFIG_SCSI_IPR_DUMP is not set +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_QLA_FC=m +CONFIG_TCM_QLA2XXX=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DC390T=m +# CONFIG_SCSI_DEBUG is not set +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_SRP=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_VIRTIO=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_LOWLEVEL_PCMCIA=y +CONFIG_PCMCIA_AHA152X=m +CONFIG_PCMCIA_FDOMAIN=m +CONFIG_PCMCIA_QLOGIC=m +CONFIG_PCMCIA_SYM53C500=m +CONFIG_SCSI_DH=m +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_OSD_INITIATOR=m +CONFIG_SCSI_OSD_ULD=m +CONFIG_SCSI_OSD_DPRINT_SENSE=0 +# CONFIG_SCSI_OSD_DEBUG is not set +CONFIG_ATA=m +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATA_ACPI=y +CONFIG_SATA_ZPODD=y +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SATA_INIC162X=m +CONFIG_SATA_ACARD_AHCI=m +CONFIG_SATA_SIL24=m +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +CONFIG_PDC_ADMA=m +CONFIG_SATA_QSTOR=m +CONFIG_SATA_SX4=m +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +CONFIG_ATA_PIIX=m +CONFIG_SATA_HIGHBANK=m +CONFIG_SATA_MV=m +CONFIG_SATA_NV=m +CONFIG_SATA_PROMISE=m +CONFIG_SATA_RCAR=m +CONFIG_SATA_SIL=m +CONFIG_SATA_SIS=m +CONFIG_SATA_SVW=m +CONFIG_SATA_ULI=m +CONFIG_SATA_VIA=m +CONFIG_SATA_VITESSE=m + +# +# PATA SFF controllers with BMDMA +# +CONFIG_PATA_ALI=m +CONFIG_PATA_AMD=m +CONFIG_PATA_ARASAN_CF=m +CONFIG_PATA_ARTOP=m +CONFIG_PATA_ATIIXP=m +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD64X=m +CONFIG_PATA_CS5520=m +CONFIG_PATA_CS5530=m +CONFIG_PATA_CS5536=m +CONFIG_PATA_CYPRESS=m +CONFIG_PATA_EFAR=m +CONFIG_PATA_HPT366=m +CONFIG_PATA_HPT37X=m +CONFIG_PATA_HPT3X2N=m +CONFIG_PATA_HPT3X3=m +# CONFIG_PATA_HPT3X3_DMA is not set +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_MARVELL=m +CONFIG_PATA_NETCELL=m +CONFIG_PATA_NINJA32=m +CONFIG_PATA_NS87415=m +CONFIG_PATA_OLDPIIX=m +CONFIG_PATA_OPTIDMA=m +CONFIG_PATA_PDC2027X=m +CONFIG_PATA_PDC_OLD=m +CONFIG_PATA_RADISYS=m +CONFIG_PATA_RDC=m +CONFIG_PATA_SC1200=m +CONFIG_PATA_SCH=m +CONFIG_PATA_SERVERWORKS=m +CONFIG_PATA_SIL680=m +CONFIG_PATA_SIS=m +CONFIG_PATA_TOSHIBA=m +CONFIG_PATA_TRIFLEX=m +CONFIG_PATA_VIA=m +CONFIG_PATA_WINBOND=m + +# +# PIO-only SFF controllers +# +CONFIG_PATA_CMD640_PCI=m +CONFIG_PATA_MPIIX=m +CONFIG_PATA_NS87410=m +CONFIG_PATA_OPTI=m +CONFIG_PATA_PCMCIA=m +CONFIG_PATA_RZ1000=m + +# +# Generic fallback / legacy drivers +# +CONFIG_PATA_ACPI=m +CONFIG_ATA_GENERIC=m +CONFIG_PATA_LEGACY=m +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_FAULTY=m +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_EDEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +CONFIG_BLK_DEV_DM=m +# CONFIG_DM_DEBUG is not set +CONFIG_DM_BUFIO=m +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +CONFIG_DM_CRYPT=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_MQ=m +CONFIG_DM_CACHE_CLEANER=m +CONFIG_DM_MIRROR=m +CONFIG_DM_RAID=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_DELAY=m +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=m +CONFIG_DM_SWITCH=m +CONFIG_TARGET_CORE=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_PSCSI=m +CONFIG_LOOPBACK_TARGET=m +CONFIG_TCM_FC=m +CONFIG_ISCSI_TARGET=m +CONFIG_SBP_TARGET=m +CONFIG_FUSION=y +CONFIG_FUSION_SPI=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_SAS=m +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_CTL=m +# CONFIG_FUSION_LOGGING is not set + +# +# IEEE 1394 (FireWire) support +# +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_OHCI=m +CONFIG_FIREWIRE_SBP2=m +CONFIG_FIREWIRE_NET=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_I2O=m +CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y +CONFIG_I2O_EXT_ADAPTEC=y +CONFIG_I2O_EXT_ADAPTEC_DMA64=y +CONFIG_I2O_CONFIG=m +CONFIG_I2O_CONFIG_OLD_IOCTL=y +CONFIG_I2O_BUS=m +CONFIG_I2O_BLOCK=m +CONFIG_I2O_SCSI=m +CONFIG_I2O_PROC=m +CONFIG_MACINTOSH_DRIVERS=y +CONFIG_MAC_EMUMOUSEBTN=y +CONFIG_NETDEVICES=y +CONFIG_MII=m +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +CONFIG_EQUALIZER=m +# CONFIG_NET_FC is not set +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_VXLAN=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETPOLL=y +# CONFIG_NETPOLL_TRAP is not set +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_RIONET=m +CONFIG_RIONET_TX_SIZE=128 +CONFIG_RIONET_RX_SIZE=128 +CONFIG_TUN=m +CONFIG_VETH=m +CONFIG_VIRTIO_NET=m +CONFIG_NLMON=m +CONFIG_SUNGEM_PHY=m +# CONFIG_ARCNET is not set +CONFIG_ATM_DRIVERS=y +# CONFIG_ATM_DUMMY is not set +CONFIG_ATM_TCP=m +CONFIG_ATM_LANAI=m +CONFIG_ATM_ENI=m +# CONFIG_ATM_ENI_DEBUG is not set +# CONFIG_ATM_ENI_TUNE_BURST is not set +CONFIG_ATM_FIRESTREAM=m +CONFIG_ATM_ZATM=m +# CONFIG_ATM_ZATM_DEBUG is not set +CONFIG_ATM_NICSTAR=m +# CONFIG_ATM_NICSTAR_USE_SUNI is not set +# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set +CONFIG_ATM_IDT77252=m +# CONFIG_ATM_IDT77252_DEBUG is not set +# CONFIG_ATM_IDT77252_RCV_ALL is not set +CONFIG_ATM_IDT77252_USE_SUNI=y +CONFIG_ATM_AMBASSADOR=m +# CONFIG_ATM_AMBASSADOR_DEBUG is not set +CONFIG_ATM_HORIZON=m +# CONFIG_ATM_HORIZON_DEBUG is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_FORE200E=m +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_FORE200E_TX_RETRY=16 +CONFIG_ATM_FORE200E_DEBUG=0 +CONFIG_ATM_HE=m +# CONFIG_ATM_HE_USE_SUNI is not set +CONFIG_ATM_SOLOS=m + +# +# CAIF transport drivers +# +CONFIG_CAIF_TTY=m +CONFIG_CAIF_SPI_SLAVE=m +CONFIG_CAIF_SPI_SYNC=y +CONFIG_CAIF_HSI=m +CONFIG_CAIF_VIRTIO=m +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_RING=m +CONFIG_VHOST=m + +# +# Distributed Switch Architecture drivers +# +CONFIG_NET_DSA_MV88E6XXX=m +CONFIG_NET_DSA_MV88E6060=m +CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y +CONFIG_NET_DSA_MV88E6131=m +CONFIG_NET_DSA_MV88E6123_61_65=m +CONFIG_ETHERNET=y +CONFIG_MDIO=m +CONFIG_NET_VENDOR_3COM=y +CONFIG_PCMCIA_3C574=m +CONFIG_PCMCIA_3C589=m +CONFIG_VORTEX=m +CONFIG_TYPHOON=m +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_ADAPTEC_STARFIRE=m +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_ACENIC=m +# CONFIG_ACENIC_OMIT_TIGON_I is not set +CONFIG_NET_VENDOR_AMD=y +CONFIG_AMD8111_ETH=m +CONFIG_PCNET32=m +CONFIG_PCMCIA_NMCLAN=m +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_ATL2=m +CONFIG_ATL1=m +CONFIG_ATL1E=m +CONFIG_ATL1C=m +CONFIG_ALX=m +CONFIG_NET_CADENCE=y +CONFIG_ARM_AT91_ETHER=m +CONFIG_MACB=m +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_B44=m +CONFIG_B44_PCI_AUTOSELECT=y +CONFIG_B44_PCICORE_AUTOSELECT=y +CONFIG_B44_PCI=y +CONFIG_BNX2=m +CONFIG_CNIC=m +CONFIG_TIGON3=m +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_BNA=m +CONFIG_NET_CALXEDA_XGMAC=m +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4VF=m +CONFIG_NET_VENDOR_CISCO=y +CONFIG_ENIC=m +CONFIG_DNET=m +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_TULIP=y +CONFIG_DE2104X=m +CONFIG_DE2104X_DSL=0 +CONFIG_TULIP=m +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_MMIO is not set +# CONFIG_TULIP_NAPI is not set +CONFIG_DE4X5=m +CONFIG_WINBOND_840=m +CONFIG_DM9102=m +CONFIG_ULI526X=m +CONFIG_PCMCIA_XIRCOM=m +CONFIG_NET_VENDOR_DLINK=y +CONFIG_DL2K=m +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_BE2NET=m +CONFIG_NET_VENDOR_EXAR=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_NET_VENDOR_FUJITSU=y +CONFIG_PCMCIA_FMVJ18X=m +CONFIG_NET_VENDOR_HP=y +CONFIG_HP100=m +CONFIG_NET_VENDOR_INTEL=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGB=m +CONFIG_IGB_HWMON=y +CONFIG_IGB_DCA=y +CONFIG_IGBVF=m +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_DCA=y +CONFIG_IXGBEVF=m +CONFIG_I40E=m +CONFIG_NET_VENDOR_I825XX=y +CONFIG_IP1000=m +CONFIG_JME=m +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_MVMDIO=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_CORE=m +CONFIG_MLX4_DEBUG=y +# CONFIG_MLX5_CORE is not set +CONFIG_NET_VENDOR_MICREL=y +CONFIG_KS8842=m +# CONFIG_KS8851 is not set +CONFIG_KS8851_MLL=m +CONFIG_KSZ884X_PCI=m +CONFIG_NET_VENDOR_MICROCHIP=y +# CONFIG_ENC28J60 is not set +CONFIG_NET_VENDOR_MYRI=y +CONFIG_MYRI10GE=m +CONFIG_MYRI10GE_DCA=y +CONFIG_FEALNX=m +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NATSEMI=m +CONFIG_NS83820=m +CONFIG_NET_VENDOR_8390=y +CONFIG_PCMCIA_AXNET=m +CONFIG_NE2K_PCI=m +CONFIG_PCMCIA_PCNET=m +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_FORCEDETH=m +CONFIG_NET_VENDOR_OKI=y +CONFIG_PCH_GBE=m +CONFIG_ETHOC=m +CONFIG_NET_PACKET_ENGINE=y +CONFIG_HAMACHI=m +CONFIG_YELLOWFIN=m +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_QLA3XXX=m +CONFIG_QLCNIC=m +CONFIG_QLCNIC_SRIOV=y +CONFIG_QLGE=m +CONFIG_NETXEN_NIC=m +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_ATP=m +CONFIG_8139CP=m +CONFIG_8139TOO=m +# CONFIG_8139TOO_PIO is not set +CONFIG_8139TOO_TUNE_TWISTER=y +CONFIG_8139TOO_8129=y +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_R8169=m +CONFIG_SH_ETH=m +CONFIG_NET_VENDOR_RDC=y +CONFIG_R6040=m +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_SC92031=m +CONFIG_NET_VENDOR_SIS=y +CONFIG_SIS900=m +CONFIG_SIS190=m +CONFIG_SFC=m +CONFIG_SFC_MTD=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_SRIOV=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_PCMCIA_SMC91C92=m +CONFIG_EPIC100=m +CONFIG_SMSC911X=m +# CONFIG_SMSC911X_ARCH_HOOKS is not set +CONFIG_SMSC9420=m +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=m +# CONFIG_STMMAC_PLATFORM is not set +CONFIG_STMMAC_PCI=y +# CONFIG_STMMAC_DEBUG_FS is not set +# CONFIG_STMMAC_DA is not set +CONFIG_NET_VENDOR_SUN=y +CONFIG_HAPPYMEAL=m +CONFIG_SUNGEM=m +CONFIG_CASSINI=m +CONFIG_NIU=m +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_TEHUTI=m +CONFIG_NET_VENDOR_TI=y +CONFIG_TLAN=m +CONFIG_NET_VENDOR_VIA=y +CONFIG_VIA_RHINE=m +# CONFIG_VIA_RHINE_MMIO is not set +CONFIG_VIA_VELOCITY=m +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_WIZNET_W5100=m +CONFIG_WIZNET_W5300=m +# CONFIG_WIZNET_BUS_DIRECT is not set +# CONFIG_WIZNET_BUS_INDIRECT is not set +CONFIG_WIZNET_BUS_ANY=y +CONFIG_NET_VENDOR_XIRCOM=y +CONFIG_PCMCIA_XIRC2PS=m +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_NET_SB1000=m +CONFIG_PHYLIB=m + +# +# MII PHY device drivers +# +CONFIG_AT803X_PHY=m +CONFIG_AMD_PHY=m +CONFIG_MARVELL_PHY=m +CONFIG_DAVICOM_PHY=m +CONFIG_QSEMI_PHY=m +CONFIG_LXT_PHY=m +CONFIG_CICADA_PHY=m +CONFIG_VITESSE_PHY=m +CONFIG_SMSC_PHY=m +CONFIG_BROADCOM_PHY=m +CONFIG_BCM87XX_PHY=m +CONFIG_ICPLUS_PHY=m +CONFIG_REALTEK_PHY=m +CONFIG_NATIONAL_PHY=m +CONFIG_STE10XP=m +CONFIG_LSI_ET1011C_PHY=m +CONFIG_MICREL_PHY=m +CONFIG_MDIO_BITBANG=m +# CONFIG_MDIO_GPIO is not set +# CONFIG_MICREL_KS8995MA is not set +CONFIG_PLIP=m +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPTP=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +CONFIG_SLIP=m +CONFIG_SLHC=m +# CONFIG_SLIP_COMPRESSED is not set +# CONFIG_SLIP_SMART is not set +# CONFIG_SLIP_MODE_SLIP6 is not set + +# +# USB Network Adapters +# +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_USBNET=m +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_CDCETHER=m +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_WLAN=y +CONFIG_PCMCIA_RAYCS=m +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_AIRO=m +CONFIG_ATMEL=m +CONFIG_PCI_ATMEL=m +CONFIG_PCMCIA_ATMEL=m +CONFIG_AT76C50X_USB=m +CONFIG_AIRO_CS=m +CONFIG_PCMCIA_WL3501=m +CONFIG_PRISM54=m +CONFIG_USB_ZD1201=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_RTL8180=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +CONFIG_ADM8211=m +# CONFIG_MAC80211_HWSIM is not set +CONFIG_MWL8K=m +CONFIG_ATH_COMMON=m +CONFIG_ATH_CARDS=m +# CONFIG_ATH_DEBUG is not set +CONFIG_ATH5K=m +# CONFIG_ATH5K_DEBUG is not set +# CONFIG_ATH5K_TRACER is not set +CONFIG_ATH5K_PCI=y +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_PCI=y +CONFIG_ATH9K_AHB=y +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +# CONFIG_CARL9170_HWRNG is not set +CONFIG_ATH6KL=m +CONFIG_ATH6KL_SDIO=m +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +CONFIG_WIL6210=m +CONFIG_WIL6210_ISR_COR=y +# CONFIG_WIL6210_TRACING is not set +CONFIG_ATH10K=m +CONFIG_ATH10K_PCI=m +# CONFIG_ATH10K_DEBUG is not set +CONFIG_ATH10K_DEBUGFS=y +# CONFIG_ATH10K_TRACING is not set +CONFIG_B43=m +CONFIG_B43_BCMA=y +CONFIG_B43_SSB=y +CONFIG_B43_PCI_AUTOSELECT=y +CONFIG_B43_PCICORE_AUTOSELECT=y +CONFIG_B43_PCMCIA=y +CONFIG_B43_SDIO=y +CONFIG_B43_BCMA_PIO=y +CONFIG_B43_PIO=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_PHY_HT=y +CONFIG_B43_LEDS=y +CONFIG_B43_HWRNG=y +# CONFIG_B43_DEBUG is not set +CONFIG_B43LEGACY=m +CONFIG_B43LEGACY_PCI_AUTOSELECT=y +CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y +CONFIG_B43LEGACY_LEDS=y +CONFIG_B43LEGACY_HWRNG=y +# CONFIG_B43LEGACY_DEBUG is not set +CONFIG_B43LEGACY_DMA=y +CONFIG_B43LEGACY_PIO=y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y +# CONFIG_B43LEGACY_DMA_MODE is not set +# CONFIG_B43LEGACY_PIO_MODE is not set +CONFIG_BRCMUTIL=m +CONFIG_BRCMSMAC=m +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_SDIO=y +CONFIG_BRCMFMAC_USB=y +# CONFIG_BRCM_TRACING is not set +# CONFIG_BRCMDBG is not set +CONFIG_HOSTAP=m +CONFIG_HOSTAP_FIRMWARE=y +# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set +CONFIG_HOSTAP_PLX=m +CONFIG_HOSTAP_PCI=m +CONFIG_HOSTAP_CS=m +# CONFIG_IPW2100 is not set +# CONFIG_IPW2200 is not set +CONFIG_IWLWIFI=m +CONFIG_IWLDVM=m +CONFIG_IWLMVM=m +CONFIG_IWLWIFI_OPMODE_MODULAR=y + +# +# Debugging Options +# +# CONFIG_IWLWIFI_DEBUG is not set +CONFIG_IWLWIFI_DEVICE_TRACING=y +CONFIG_IWLEGACY=m +CONFIG_IWL4965=m +CONFIG_IWL3945=m + +# +# iwl3945 / iwl4965 Debugging Options +# +# CONFIG_IWLEGACY_DEBUG is not set +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBERTAS_CS=m +CONFIG_LIBERTAS_SDIO=m +# CONFIG_LIBERTAS_SPI is not set +# CONFIG_LIBERTAS_DEBUG is not set +CONFIG_LIBERTAS_MESH=y +CONFIG_HERMES=m +CONFIG_HERMES_PRISM=y +CONFIG_HERMES_CACHE_FW_ON_INIT=y +CONFIG_PLX_HERMES=m +CONFIG_TMD_HERMES=m +CONFIG_NORTEL_HERMES=m +CONFIG_PCI_HERMES=m +CONFIG_PCMCIA_HERMES=m +CONFIG_PCMCIA_SPECTRUM=m +CONFIG_ORINOCO_USB=m +CONFIG_P54_COMMON=m +CONFIG_P54_USB=m +CONFIG_P54_PCI=m +# CONFIG_P54_SPI is not set +CONFIG_P54_LEDS=y +CONFIG_RT2X00=m +CONFIG_RT2400PCI=m +CONFIG_RT2500PCI=m +CONFIG_RT61PCI=m +CONFIG_RT2800PCI=m +CONFIG_RT2800PCI_RT33XX=y +CONFIG_RT2800PCI_RT35XX=y +CONFIG_RT2800PCI_RT53XX=y +CONFIG_RT2800PCI_RT3290=y +CONFIG_RT2500USB=m +CONFIG_RT73USB=m +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2800_LIB=m +CONFIG_RT2X00_LIB_MMIO=m +CONFIG_RT2X00_LIB_PCI=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_DEBUG is not set +CONFIG_RTL_CARDS=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192DE=m +CONFIG_RTL8723AE=m +CONFIG_RTL8188EE=m +CONFIG_RTL8192CU=m +CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_PCI=m +CONFIG_RTLWIFI_USB=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_RTL8192C_COMMON=m +CONFIG_WL_TI=y +CONFIG_WL1251=m +# CONFIG_WL1251_SPI is not set +CONFIG_WL1251_SDIO=m +CONFIG_WL12XX=m +CONFIG_WL18XX=m +CONFIG_WLCORE=m +# CONFIG_WLCORE_SPI is not set +CONFIG_WLCORE_SDIO=m +CONFIG_WILINK_PLATFORM_DATA=y +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_SDIO=m +CONFIG_MWIFIEX_PCIE=m +CONFIG_MWIFIEX_USB=m +CONFIG_CW1200=m +CONFIG_CW1200_WLAN_SDIO=m +CONFIG_CW1200_WLAN_SPI=m + +# +# WiMAX Wireless Broadband devices +# +CONFIG_WIMAX_I2400M=m +CONFIG_WIMAX_I2400M_USB=m +CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 +# CONFIG_WAN is not set +CONFIG_IEEE802154_DRIVERS=m +CONFIG_IEEE802154_FAKEHARD=m +CONFIG_IEEE802154_FAKELB=m +CONFIG_IEEE802154_AT86RF230=m +# CONFIG_IEEE802154_MRF24J40 is not set +CONFIG_XEN_NETDEV_FRONTEND=m +CONFIG_XEN_NETDEV_BACKEND=m +CONFIG_VMXNET3=m +CONFIG_HYPERV_NET=m +CONFIG_ISDN=y +CONFIG_ISDN_I4L=m +CONFIG_ISDN_PPP=y +CONFIG_ISDN_PPP_VJ=y +CONFIG_ISDN_MPP=y +CONFIG_IPPP_FILTER=y +CONFIG_ISDN_PPP_BSDCOMP=m +CONFIG_ISDN_AUDIO=y +CONFIG_ISDN_TTY_FAX=y + +# +# ISDN feature submodules +# +CONFIG_ISDN_DIVERSION=m + +# +# ISDN4Linux hardware drivers +# + +# +# Passive cards +# +CONFIG_ISDN_DRV_HISAX=m + +# +# D-channel protocol features +# +CONFIG_HISAX_EURO=y +CONFIG_DE_AOC=y +# CONFIG_HISAX_NO_SENDCOMPLETE is not set +# CONFIG_HISAX_NO_LLC is not set +# CONFIG_HISAX_NO_KEYPAD is not set +CONFIG_HISAX_1TR6=y +CONFIG_HISAX_NI1=y +CONFIG_HISAX_MAX_CARDS=8 + +# +# HiSax supported cards +# +CONFIG_HISAX_16_3=y +CONFIG_HISAX_TELESPCI=y +CONFIG_HISAX_S0BOX=y +CONFIG_HISAX_FRITZPCI=y +CONFIG_HISAX_AVM_A1_PCMCIA=y +CONFIG_HISAX_ELSA=y +CONFIG_HISAX_DIEHLDIVA=y +CONFIG_HISAX_SEDLBAUER=y +CONFIG_HISAX_NETJET=y +CONFIG_HISAX_NETJET_U=y +CONFIG_HISAX_NICCY=y +CONFIG_HISAX_BKM_A4T=y +CONFIG_HISAX_SCT_QUADRO=y +CONFIG_HISAX_GAZEL=y +CONFIG_HISAX_HFC_PCI=y +CONFIG_HISAX_W6692=y +CONFIG_HISAX_HFC_SX=y +CONFIG_HISAX_ENTERNOW_PCI=y +# CONFIG_HISAX_DEBUG is not set + +# +# HiSax PCMCIA card service modules +# +CONFIG_HISAX_SEDLBAUER_CS=m +CONFIG_HISAX_ELSA_CS=m +CONFIG_HISAX_AVM_A1_CS=m +CONFIG_HISAX_TELES_CS=m + +# +# HiSax sub driver modules +# +CONFIG_HISAX_ST5481=m +CONFIG_HISAX_HFCUSB=m +CONFIG_HISAX_HFC4S8S=m +CONFIG_HISAX_FRITZ_PCIPNP=m + +# +# Active cards +# +CONFIG_ISDN_CAPI=m +CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y +CONFIG_CAPI_TRACE=y +CONFIG_ISDN_CAPI_MIDDLEWARE=y +CONFIG_ISDN_CAPI_CAPI20=m +CONFIG_ISDN_CAPI_CAPIDRV=m + +# +# CAPI hardware drivers +# +CONFIG_CAPI_AVM=y +CONFIG_ISDN_DRV_AVMB1_B1PCI=m +CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y +CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m +CONFIG_ISDN_DRV_AVMB1_AVM_CS=m +CONFIG_ISDN_DRV_AVMB1_T1PCI=m +CONFIG_ISDN_DRV_AVMB1_C4=m +CONFIG_CAPI_EICON=y +CONFIG_ISDN_DIVAS=m +CONFIG_ISDN_DIVAS_BRIPCI=y +CONFIG_ISDN_DIVAS_PRIPCI=y +CONFIG_ISDN_DIVAS_DIVACAPI=m +CONFIG_ISDN_DIVAS_USERIDI=m +CONFIG_ISDN_DIVAS_MAINT=m +CONFIG_ISDN_DRV_GIGASET=m +CONFIG_GIGASET_CAPI=y +# CONFIG_GIGASET_I4L is not set +# CONFIG_GIGASET_DUMMYLL is not set +CONFIG_GIGASET_BASE=m +CONFIG_GIGASET_M105=m +CONFIG_GIGASET_M101=m +# CONFIG_GIGASET_DEBUG is not set +CONFIG_HYSDN=m +CONFIG_HYSDN_CAPI=y +CONFIG_MISDN=m +CONFIG_MISDN_DSP=m +CONFIG_MISDN_L1OIP=m + +# +# mISDN hardware drivers +# +CONFIG_MISDN_HFCPCI=m +CONFIG_MISDN_HFCMULTI=m +CONFIG_MISDN_HFCUSB=m +CONFIG_MISDN_AVMFRITZ=m +CONFIG_MISDN_SPEEDFAX=m +CONFIG_MISDN_INFINEON=m +CONFIG_MISDN_W6692=m +CONFIG_MISDN_NETJET=m +CONFIG_MISDN_IPAC=m +CONFIG_MISDN_ISAR=m +CONFIG_ISDN_HDLC=m + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_MATRIXKMAP=m + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=m +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +CONFIG_KEYBOARD_ADP5588=m +CONFIG_KEYBOARD_ADP5589=m +CONFIG_KEYBOARD_ATKBD=y +CONFIG_KEYBOARD_QT1070=m +CONFIG_KEYBOARD_QT2160=m +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_GPIO is not set +# CONFIG_KEYBOARD_GPIO_POLLED is not set +CONFIG_KEYBOARD_TCA6416=m +CONFIG_KEYBOARD_TCA8418=m +CONFIG_KEYBOARD_MATRIX=m +# CONFIG_KEYBOARD_LM8323 is not set +CONFIG_KEYBOARD_LM8333=m +# CONFIG_KEYBOARD_MAX7359 is not set +CONFIG_KEYBOARD_MCS=m +CONFIG_KEYBOARD_MPR121=m +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=m +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_LIFEBOOK=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_PS2_SENTELIC=y +# CONFIG_MOUSE_PS2_TOUCHKIT is not set +CONFIG_MOUSE_SERIAL=y +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_BCM5974=m +CONFIG_MOUSE_CYAPA=m +CONFIG_MOUSE_VSXXXAA=m +# CONFIG_MOUSE_GPIO is not set +CONFIG_MOUSE_SYNAPTICS_I2C=m +CONFIG_MOUSE_SYNAPTICS_USB=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_JOYSTICK_ANALOG=m +CONFIG_JOYSTICK_A3D=m +CONFIG_JOYSTICK_ADI=m +CONFIG_JOYSTICK_COBRA=m +CONFIG_JOYSTICK_GF2K=m +CONFIG_JOYSTICK_GRIP=m +CONFIG_JOYSTICK_GRIP_MP=m +CONFIG_JOYSTICK_GUILLEMOT=m +CONFIG_JOYSTICK_INTERACT=m +CONFIG_JOYSTICK_SIDEWINDER=m +CONFIG_JOYSTICK_TMDC=m +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_IFORCE_232=y +CONFIG_JOYSTICK_WARRIOR=m +CONFIG_JOYSTICK_MAGELLAN=m +CONFIG_JOYSTICK_SPACEORB=m +CONFIG_JOYSTICK_SPACEBALL=m +CONFIG_JOYSTICK_STINGER=m +CONFIG_JOYSTICK_TWIDJOY=m +CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JOYSTICK_DB9=m +CONFIG_JOYSTICK_GAMECON=m +CONFIG_JOYSTICK_TURBOGRAFX=m +CONFIG_JOYSTICK_AS5011=m +CONFIG_JOYSTICK_JOYDUMP=m +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_JOYSTICK_WALKERA0701=m +CONFIG_INPUT_TABLET=y +CONFIG_TABLET_USB_ACECAD=m +CONFIG_TABLET_USB_AIPTEK=m +CONFIG_TABLET_USB_GTCO=m +CONFIG_TABLET_USB_HANWANG=m +CONFIG_TABLET_USB_KBTAB=m +CONFIG_TABLET_USB_WACOM=m +CONFIG_INPUT_TOUCHSCREEN=y +# CONFIG_TOUCHSCREEN_ADS7846 is not set +# CONFIG_TOUCHSCREEN_AD7877 is not set +CONFIG_TOUCHSCREEN_AD7879=m +CONFIG_TOUCHSCREEN_AD7879_I2C=m +# CONFIG_TOUCHSCREEN_AD7879_SPI is not set +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +CONFIG_TOUCHSCREEN_AUO_PIXCIR=m +CONFIG_TOUCHSCREEN_BU21013=m +CONFIG_TOUCHSCREEN_CY8CTMG110=m +CONFIG_TOUCHSCREEN_CYTTSP_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP_I2C=m +# CONFIG_TOUCHSCREEN_CYTTSP_SPI is not set +CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m +CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m +CONFIG_TOUCHSCREEN_DYNAPRO=m +CONFIG_TOUCHSCREEN_HAMPSHIRE=m +CONFIG_TOUCHSCREEN_EETI=m +CONFIG_TOUCHSCREEN_FUJITSU=m +CONFIG_TOUCHSCREEN_ILI210X=m +CONFIG_TOUCHSCREEN_GUNZE=m +CONFIG_TOUCHSCREEN_ELO=m +CONFIG_TOUCHSCREEN_WACOM_W8001=m +CONFIG_TOUCHSCREEN_WACOM_I2C=m +CONFIG_TOUCHSCREEN_MAX11801=m +CONFIG_TOUCHSCREEN_MCS5000=m +CONFIG_TOUCHSCREEN_MMS114=m +CONFIG_TOUCHSCREEN_MTOUCH=m +CONFIG_TOUCHSCREEN_INEXIO=m +CONFIG_TOUCHSCREEN_MK712=m +CONFIG_TOUCHSCREEN_PENMOUNT=m +CONFIG_TOUCHSCREEN_EDT_FT5X06=m +CONFIG_TOUCHSCREEN_TOUCHRIGHT=m +CONFIG_TOUCHSCREEN_TOUCHWIN=m +CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m +CONFIG_TOUCHSCREEN_UCB1400=m +CONFIG_TOUCHSCREEN_PIXCIR=m +CONFIG_TOUCHSCREEN_WM97XX=m +CONFIG_TOUCHSCREEN_WM9705=y +CONFIG_TOUCHSCREEN_WM9712=y +CONFIG_TOUCHSCREEN_WM9713=y +CONFIG_TOUCHSCREEN_USB_COMPOSITE=m +CONFIG_TOUCHSCREEN_MC13783=m +CONFIG_TOUCHSCREEN_USB_EGALAX=y +CONFIG_TOUCHSCREEN_USB_PANJIT=y +CONFIG_TOUCHSCREEN_USB_3M=y +CONFIG_TOUCHSCREEN_USB_ITM=y +CONFIG_TOUCHSCREEN_USB_ETURBO=y +CONFIG_TOUCHSCREEN_USB_GUNZE=y +CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y +CONFIG_TOUCHSCREEN_USB_IRTOUCH=y +CONFIG_TOUCHSCREEN_USB_IDEALTEK=y +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y +CONFIG_TOUCHSCREEN_USB_GOTOP=y +CONFIG_TOUCHSCREEN_USB_JASTEC=y +CONFIG_TOUCHSCREEN_USB_ELO=y +CONFIG_TOUCHSCREEN_USB_E2I=y +CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y +CONFIG_TOUCHSCREEN_USB_NEXIO=y +CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y +CONFIG_TOUCHSCREEN_TOUCHIT213=m +CONFIG_TOUCHSCREEN_TSC_SERIO=m +# CONFIG_TOUCHSCREEN_TSC2005 is not set +CONFIG_TOUCHSCREEN_TSC2007=m +CONFIG_TOUCHSCREEN_ST1232=m +CONFIG_TOUCHSCREEN_TPS6507X=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_AD714X=m +CONFIG_INPUT_AD714X_I2C=m +CONFIG_INPUT_AD714X_SPI=m +CONFIG_INPUT_BMA150=m +CONFIG_INPUT_PCSPKR=m +CONFIG_INPUT_MC13783_PWRBUTTON=m +CONFIG_INPUT_MMA8450=m +CONFIG_INPUT_MPU3050=m +CONFIG_INPUT_APANEL=m +CONFIG_INPUT_GP2A=m +# CONFIG_INPUT_GPIO_TILT_POLLED is not set +CONFIG_INPUT_ATLAS_BTNS=m +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_KEYSPAN_REMOTE=m +CONFIG_INPUT_KXTJ9=m +# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_YEALINK=m +CONFIG_INPUT_CM109=m +CONFIG_INPUT_RETU_PWRBUTTON=m +CONFIG_INPUT_UINPUT=m +CONFIG_INPUT_PCF50633_PMU=m +CONFIG_INPUT_PCF8574=m +CONFIG_INPUT_GPIO_ROTARY_ENCODER=m +CONFIG_INPUT_ADXL34X=m +CONFIG_INPUT_ADXL34X_I2C=m +CONFIG_INPUT_ADXL34X_SPI=m +# CONFIG_INPUT_IMS_PCU is not set +CONFIG_INPUT_CMA3000=m +CONFIG_INPUT_CMA3000_I2C=m +CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m +CONFIG_INPUT_IDEAPAD_SLIDEBAR=m + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_SERIO_I8042=y +CONFIG_SERIO_SERPORT=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_RAW=m +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_GAMEPORT=m +CONFIG_GAMEPORT_NS558=m +CONFIG_GAMEPORT_L4=m +CONFIG_GAMEPORT_EMU10K1=m +CONFIG_GAMEPORT_FM801=m + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +# CONFIG_LEGACY_PTYS is not set +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_ROCKETPORT=m +CONFIG_CYCLADES=m +# CONFIG_CYZ_INTR is not set +# CONFIG_MOXA_INTELLIO is not set +# CONFIG_MOXA_SMARTIO is not set +CONFIG_SYNCLINK=m +CONFIG_SYNCLINKMP=m +# CONFIG_SYNCLINK_GT is not set +CONFIG_NOZOMI=m +# CONFIG_ISI is not set +CONFIG_N_HDLC=m +CONFIG_N_GSM=m +CONFIG_TRACE_ROUTER=m +CONFIG_TRACE_SINK=m + +# +# Serial drivers +# +CONFIG_SERIAL_8250=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_CS=m +CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +# CONFIG_SERIAL_8250_EXTENDED is not set +CONFIG_SERIAL_8250_DW=m + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +CONFIG_SERIAL_MFD_HSU=m +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_SCCNXP=m +# CONFIG_SERIAL_TIMBERDALE is not set +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 +CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 +# CONFIG_SERIAL_IFX6X60 is not set +CONFIG_SERIAL_PCH_UART=m +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_ARC_NR_PORTS=1 +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_RP2_NR_UARTS=32 +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SERIAL_ST_ASC=m +CONFIG_PRINTER=m +# CONFIG_LP_CONSOLE is not set +CONFIG_PPDEV=m +CONFIG_HVC_DRIVER=y +CONFIG_HVC_IRQ=y +CONFIG_HVC_XEN=y +CONFIG_HVC_XEN_FRONTEND=y +CONFIG_VIRTIO_CONSOLE=m +CONFIG_IPMI_HANDLER=m +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPMI_POWEROFF=m +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HW_RANDOM_INTEL=m +CONFIG_HW_RANDOM_AMD=m +CONFIG_HW_RANDOM_VIA=m +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HW_RANDOM_TPM=m +CONFIG_NVRAM=m +CONFIG_R3964=m +CONFIG_APPLICOM=m + +# +# PCMCIA character devices +# +CONFIG_SYNCLINK_CS=m +CONFIG_CARDMAN_4000=m +CONFIG_CARDMAN_4040=m +CONFIG_IPWIRELESS=m +CONFIG_MWAVE=m +# CONFIG_RAW_DRIVER is not set +CONFIG_HPET=y +CONFIG_HPET_MMAP=y +CONFIG_HANGCHECK_TIMER=m +CONFIG_TCG_TPM=m +CONFIG_TCG_TIS=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_NSC=m +CONFIG_TCG_ATMEL=m +CONFIG_TCG_INFINEON=m +CONFIG_TCG_ST33_I2C=m +# CONFIG_TCG_XEN is not set +CONFIG_TELCLOCK=m +CONFIG_I2C=m +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=m +# CONFIG_I2C_MUX is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_SMBUS=m +CONFIG_I2C_ALGOBIT=m +CONFIG_I2C_ALGOPCA=m + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD756_S4882=m +CONFIG_I2C_AMD8111=m +CONFIG_I2C_I801=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_ISMT=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NFORCE2_S4985=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m + +# +# ACPI drivers +# +CONFIG_I2C_SCMI=m + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_CBUS_GPIO is not set +CONFIG_I2C_DESIGNWARE_CORE=m +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_EG20T=m +# CONFIG_I2C_GPIO is not set +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +# CONFIG_I2C_PXA_PCI is not set +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_XILINX=m + +# +# External I2C/SMBus adapter drivers +# +CONFIG_I2C_DIOLAN_U2C=m +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PARPORT_LIGHT=m +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_TINY_USB=m +CONFIG_I2C_VIPERBOARD=m + +# +# Other I2C/SMBus bus drivers +# +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +# CONFIG_SPI_BITBANG is not set +# CONFIG_SPI_BUTTERFLY is not set +# CONFIG_SPI_GPIO is not set +# CONFIG_SPI_LM70_LLP is not set +# CONFIG_SPI_FSL_DSPI is not set +# CONFIG_SPI_OC_TINY is not set +CONFIG_SPI_PXA2XX_DMA=y +CONFIG_SPI_PXA2XX=m +CONFIG_SPI_PXA2XX_PCI=m +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_TOPCLIFF_PCH is not set +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +# CONFIG_SPI_DESIGNWARE is not set + +# +# SPI Protocol Masters +# +# CONFIG_SPI_SPIDEV is not set +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_HSI is not set + +# +# PPS support +# +CONFIG_PPS=m +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +CONFIG_PPS_CLIENT_KTIMER=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +CONFIG_PPS_CLIENT_GPIO=m + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=m +CONFIG_DP83640_PHY=m +CONFIG_PTP_1588_CLOCK_PCH=m +CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y +CONFIG_GPIO_DEVRES=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_ACPI=y +# CONFIG_DEBUG_GPIO is not set +CONFIG_GPIO_SYSFS=y + +# +# Memory mapped GPIO drivers: +# +# CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_IT8761E is not set +# CONFIG_GPIO_F7188X is not set +# CONFIG_GPIO_TS5500 is not set +CONFIG_GPIO_SCH=m +CONFIG_GPIO_ICH=m +# CONFIG_GPIO_VX855 is not set +# CONFIG_GPIO_LYNXPOINT is not set + +# +# I2C GPIO expanders: +# +CONFIG_GPIO_ARIZONA=m +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_ADP5588 is not set + +# +# PCI GPIO expanders: +# +CONFIG_GPIO_CS5535=m +CONFIG_GPIO_AMD8111=m +CONFIG_GPIO_LANGWELL=y +# CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_ML_IOH is not set +# CONFIG_GPIO_RDC321X is not set + +# +# SPI GPIO expanders: +# +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MCP23S08 is not set +# CONFIG_GPIO_MC33880 is not set +# CONFIG_GPIO_74X164 is not set + +# +# AC97 GPIO expanders: +# +CONFIG_GPIO_UCB1400=y + +# +# LPC GPIO expanders: +# + +# +# MODULbus GPIO expanders: +# + +# +# USB GPIO expanders: +# +CONFIG_GPIO_VIPERBOARD=m +# CONFIG_W1 is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_PDA_POWER=m +CONFIG_TEST_POWER=m +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_BATTERY_BQ27x00 is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_PCF50633 is not set +# CONFIG_CHARGER_ISP1704 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_SMB347 is not set +CONFIG_POWER_RESET=y +CONFIG_POWER_AVS=y +CONFIG_HWMON=y +CONFIG_HWMON_VID=m +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +CONFIG_SENSORS_ABITUGURU=m +CONFIG_SENSORS_ABITUGURU3=m +# CONFIG_SENSORS_AD7314 is not set +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +# CONFIG_SENSORS_ADCXX is not set +CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_K8TEMP=m +CONFIG_SENSORS_K10TEMP=m +CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_ASB100=m +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_DS1621=m +CONFIG_SENSORS_I5K_AMB=m +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FSCHMD=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +# CONFIG_SENSORS_GPIO_FAN is not set +CONFIG_SENSORS_HIH6130=m +CONFIG_SENSORS_HTU21=m +CONFIG_SENSORS_CORETEMP=m +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_LINEAGE=m +CONFIG_SENSORS_LM63=m +# CONFIG_SENSORS_LM70 is not set +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +# CONFIG_SENSORS_MAX1111 is not set +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_NTC_THERMISTOR=m +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_PCF8591=m +CONFIG_PMBUS=m +CONFIG_SENSORS_PMBUS=m +CONFIG_SENSORS_ADM1275=m +CONFIG_SENSORS_LM25066=m +CONFIG_SENSORS_LTC2978=m +CONFIG_SENSORS_MAX16064=m +CONFIG_SENSORS_MAX34440=m +CONFIG_SENSORS_MAX8688=m +CONFIG_SENSORS_UCD9000=m +CONFIG_SENSORS_UCD9200=m +CONFIG_SENSORS_ZL6100=m +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_SMM665=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_ADS1015=m +CONFIG_SENSORS_ADS7828=m +# CONFIG_SENSORS_ADS7871 is not set +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +CONFIG_SENSORS_VIA_CPUTEMP=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_APPLESMC=m +CONFIG_SENSORS_MC13783_ADC=m + +# +# ACPI drivers +# +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_SENSORS_ATK0110=m +CONFIG_THERMAL=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +CONFIG_THERMAL_GOV_USER_SPACE=y +# CONFIG_CPU_THERMAL is not set +# CONFIG_THERMAL_EMULATION is not set +CONFIG_INTEL_POWERCLAMP=m +CONFIG_X86_PKG_TEMP_THERMAL=m + +# +# Texas Instruments thermal drivers +# +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set + +# +# Watchdog Device Drivers +# +CONFIG_SOFT_WATCHDOG=m +CONFIG_RETU_WATCHDOG=m +CONFIG_ACQUIRE_WDT=m +CONFIG_ADVANTECH_WDT=m +CONFIG_ALIM1535_WDT=m +CONFIG_ALIM7101_WDT=m +CONFIG_F71808E_WDT=m +CONFIG_SP5100_TCO=m +CONFIG_GEODE_WDT=m +CONFIG_SC520_WDT=m +CONFIG_SBC_FITPC2_WATCHDOG=m +CONFIG_EUROTECH_WDT=m +CONFIG_IB700_WDT=m +CONFIG_IBMASR=m +CONFIG_WAFER_WDT=m +CONFIG_I6300ESB_WDT=m +CONFIG_IE6XX_WDT=m +CONFIG_ITCO_WDT=m +CONFIG_ITCO_VENDOR_SUPPORT=y +CONFIG_IT8712F_WDT=m +CONFIG_IT87_WDT=m +CONFIG_HP_WATCHDOG=m +CONFIG_HPWDT_NMI_DECODING=y +CONFIG_SC1200_WDT=m +CONFIG_PC87413_WDT=m +CONFIG_NV_TCO=m +CONFIG_60XX_WDT=m +CONFIG_SBC8360_WDT=m +CONFIG_CPU5_WDT=m +CONFIG_SMSC_SCH311X_WDT=m +CONFIG_SMSC37B787_WDT=m +CONFIG_VIA_WDT=m +CONFIG_W83627HF_WDT=m +CONFIG_W83697HF_WDT=m +CONFIG_W83697UG_WDT=m +CONFIG_W83877F_WDT=m +CONFIG_W83977F_WDT=m +CONFIG_MACHZ_WDT=m +CONFIG_SBC_EPX_C3_WATCHDOG=m +CONFIG_MEN_A21_WDT=m +CONFIG_XEN_WDT=m + +# +# PCI-based Watchdog Cards +# +CONFIG_PCIPCWATCHDOG=m +CONFIG_WDTPCI=m + +# +# USB-based Watchdog Cards +# +CONFIG_USBPCWATCHDOG=m +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +CONFIG_SSB=m +CONFIG_SSB_SPROM=y +CONFIG_SSB_BLOCKIO=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_B43_PCI_BRIDGE=y +CONFIG_SSB_PCMCIAHOST_POSSIBLE=y +CONFIG_SSB_PCMCIAHOST=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +CONFIG_SSB_SDIOHOST=y +# CONFIG_SSB_DEBUG is not set +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_SSB_DRIVER_GPIO=y +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +CONFIG_BCMA=m +CONFIG_BCMA_BLOCKIO=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_PCI=y +# CONFIG_BCMA_HOST_SOC is not set +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +# CONFIG_BCMA_DEBUG is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=y +CONFIG_MFD_CS5535=m +# CONFIG_MFD_CROS_EC is not set +# CONFIG_MFD_DA9052_SPI is not set +CONFIG_MFD_MC13783=m +CONFIG_MFD_MC13XXX=m +# CONFIG_MFD_MC13XXX_SPI is not set +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_HTC_PASIC3=m +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_EZX_PCAP is not set +CONFIG_MFD_VIPERBOARD=m +CONFIG_MFD_RETU=m +CONFIG_MFD_PCF50633=m +CONFIG_PCF50633_ADC=m +CONFIG_PCF50633_GPIO=m +CONFIG_UCB1400_CORE=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RTSX_PCI=m +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SM501_GPIO=y +CONFIG_ABX500_CORE=y +# CONFIG_MFD_STMPE is not set +# CONFIG_MFD_SYSCON is not set +CONFIG_MFD_TI_AM335X_TSCADC=m +# CONFIG_TPS6105X is not set +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_MFD_TPS65217=m +# CONFIG_MFD_TPS65912 is not set +# CONFIG_MFD_TPS65912_SPI is not set +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_LM3533=m +# CONFIG_MFD_TIMBERDALE is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MFD_VX855=m +CONFIG_MFD_ARIZONA=y +CONFIG_MFD_ARIZONA_I2C=m +# CONFIG_MFD_ARIZONA_SPI is not set +CONFIG_MFD_WM5102=y +CONFIG_MFD_WM5110=y +# CONFIG_MFD_WM8997 is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_REGULATOR is not set +CONFIG_MEDIA_SUPPORT=m + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_RC_SUPPORT=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_VIDEO_DEV=m +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2=m +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_TUNER=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_DMA_SG=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF_DVB=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF2_DMA_SG=m +# CONFIG_VIDEO_V4L2_INT_DEVICE is not set +CONFIG_DVB_CORE=m +CONFIG_DVB_NET=y +CONFIG_TTPCI_EEPROM=m +CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_DYNAMIC_MINORS is not set + +# +# Media drivers +# +CONFIG_RC_CORE=m +CONFIG_RC_MAP=m +CONFIG_RC_DECODERS=y +CONFIG_LIRC=m +CONFIG_IR_LIRC_CODEC=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_RC5_SZ_DECODER=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_RC_DEVICES=y +CONFIG_RC_ATI_REMOTE=m +CONFIG_IR_ENE=m +CONFIG_IR_IMON=m +CONFIG_IR_MCEUSB=m +CONFIG_IR_ITE_CIR=m +CONFIG_IR_FINTEK=m +CONFIG_IR_NUVOTON=m +CONFIG_IR_REDRAT3=m +CONFIG_IR_STREAMZAP=m +CONFIG_IR_WINBOND_CIR=m +CONFIG_IR_IGUANA=m +CONFIG_IR_TTUSBIR=m +CONFIG_RC_LOOPBACK=m +CONFIG_IR_GPIO_CIR=m +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_VIDEO_CPIA2=m +CONFIG_USB_ZR364XX=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_S2255=m +CONFIG_USB_SN9C102=m +CONFIG_VIDEO_USBTV=m + +# +# Analog TV USB devices +# +CONFIG_VIDEO_PVRUSB2=m +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_PVRUSB2_DVB=y +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_TLG2300=m +CONFIG_VIDEO_USBVISION=m +CONFIG_VIDEO_STK1160_COMMON=m +CONFIG_VIDEO_STK1160_AC97=y +CONFIG_VIDEO_STK1160=m + +# +# Analog/digital TV USB devices +# +CONFIG_VIDEO_AU0828=m +CONFIG_VIDEO_AU0828_V4L2=y +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +CONFIG_VIDEO_TM6000=m +CONFIG_VIDEO_TM6000_ALSA=m +CONFIG_VIDEO_TM6000_DVB=m + +# +# Digital TV USB devices +# +CONFIG_DVB_USB=m +# CONFIG_DVB_USB_DEBUG is not set +CONFIG_DVB_USB_A800=m +CONFIG_DVB_USB_DIBUSB_MB=m +CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y +CONFIG_DVB_USB_DIBUSB_MC=m +CONFIG_DVB_USB_DIB0700=m +CONFIG_DVB_USB_UMT_010=m +CONFIG_DVB_USB_CXUSB=m +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m +CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m +CONFIG_DVB_USB_NOVA_T_USB2=m +CONFIG_DVB_USB_TTUSB2=m +CONFIG_DVB_USB_DTT200U=m +CONFIG_DVB_USB_OPERA1=m +CONFIG_DVB_USB_AF9005=m +CONFIG_DVB_USB_AF9005_REMOTE=m +CONFIG_DVB_USB_PCTV452E=m +CONFIG_DVB_USB_DW2102=m +CONFIG_DVB_USB_CINERGY_T2=m +CONFIG_DVB_USB_DTV5100=m +CONFIG_DVB_USB_FRIIO=m +CONFIG_DVB_USB_AZ6027=m +CONFIG_DVB_USB_TECHNISAT_USB2=m +CONFIG_DVB_USB_V2=m +CONFIG_DVB_USB_AF9015=m +CONFIG_DVB_USB_AF9035=m +CONFIG_DVB_USB_ANYSEE=m +CONFIG_DVB_USB_AU6610=m +CONFIG_DVB_USB_AZ6007=m +CONFIG_DVB_USB_CE6230=m +CONFIG_DVB_USB_EC168=m +CONFIG_DVB_USB_GL861=m +CONFIG_DVB_USB_IT913X=m +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m +CONFIG_DVB_TTUSB_BUDGET=m +CONFIG_DVB_TTUSB_DEC=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set + +# +# Webcam, TV (analog/digital) USB devices +# +CONFIG_VIDEO_EM28XX=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_VIDEO_EM28XX_RC=m +CONFIG_MEDIA_PCI_SUPPORT=y + +# +# Media capture support +# +CONFIG_VIDEO_MEYE=m + +# +# Media capture/analog TV support +# +CONFIG_VIDEO_IVTV=m +CONFIG_VIDEO_IVTV_ALSA=m +CONFIG_VIDEO_FB_IVTV=m +CONFIG_VIDEO_ZORAN=m +CONFIG_VIDEO_ZORAN_DC30=m +CONFIG_VIDEO_ZORAN_ZR36060=m +CONFIG_VIDEO_ZORAN_BUZ=m +CONFIG_VIDEO_ZORAN_DC10=m +CONFIG_VIDEO_ZORAN_LML33=m +CONFIG_VIDEO_ZORAN_LML33R10=m +CONFIG_VIDEO_ZORAN_AVS6EYES=m +CONFIG_VIDEO_HEXIUM_GEMINI=m +CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_MXB=m + +# +# Media capture/analog/hybrid TV support +# +CONFIG_VIDEO_CX18=m +CONFIG_VIDEO_CX18_ALSA=m +CONFIG_VIDEO_CX23885=m +CONFIG_MEDIA_ALTERA_CI=m +CONFIG_VIDEO_CX25821=m +CONFIG_VIDEO_CX25821_ALSA=m +CONFIG_VIDEO_CX88=m +CONFIG_VIDEO_CX88_ALSA=m +CONFIG_VIDEO_CX88_BLACKBIRD=m +CONFIG_VIDEO_CX88_DVB=m +CONFIG_VIDEO_CX88_ENABLE_VP3054=y +CONFIG_VIDEO_CX88_VP3054=m +CONFIG_VIDEO_CX88_MPEG=m +CONFIG_VIDEO_BT848=m +CONFIG_DVB_BT8XX=m +CONFIG_VIDEO_SAA7134=m +CONFIG_VIDEO_SAA7134_ALSA=m +CONFIG_VIDEO_SAA7134_RC=y +CONFIG_VIDEO_SAA7134_DVB=m +CONFIG_VIDEO_SAA7164=m + +# +# Media digital TV PCI Adapters +# +CONFIG_DVB_AV7110=m +CONFIG_DVB_AV7110_OSD=y +CONFIG_DVB_BUDGET_CORE=m +CONFIG_DVB_BUDGET=m +CONFIG_DVB_BUDGET_CI=m +CONFIG_DVB_BUDGET_AV=m +CONFIG_DVB_BUDGET_PATCH=m +CONFIG_DVB_B2C2_FLEXCOP_PCI=m +# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set +CONFIG_DVB_PLUTO2=m +CONFIG_DVB_DM1105=m +CONFIG_DVB_PT1=m +CONFIG_MANTIS_CORE=m +CONFIG_DVB_MANTIS=m +CONFIG_DVB_HOPPER=m +CONFIG_DVB_NGENE=m +CONFIG_DVB_DDBRIDGE=m +# CONFIG_V4L_PLATFORM_DRIVERS is not set +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m +CONFIG_VIDEO_SH_VEU=m +CONFIG_VIDEO_RENESAS_VSP1=m +# CONFIG_V4L_TEST_DRIVERS is not set + +# +# Supported MMC/SDIO adapters +# +CONFIG_SMS_SDIO_DRV=m +CONFIG_MEDIA_PARPORT_SUPPORT=y +CONFIG_VIDEO_BWQCAM=m +CONFIG_VIDEO_CQCAM=m +CONFIG_VIDEO_W9966=m +CONFIG_RADIO_ADAPTERS=y +CONFIG_RADIO_TEA575X=m +CONFIG_RADIO_SI470X=y +CONFIG_USB_SI470X=m +CONFIG_I2C_SI470X=m +CONFIG_USB_MR800=m +CONFIG_USB_DSBR=m +CONFIG_RADIO_MAXIRADIO=m +CONFIG_RADIO_SHARK=m +CONFIG_RADIO_SHARK2=m +CONFIG_I2C_SI4713=m +CONFIG_RADIO_SI4713=m +CONFIG_USB_KEENE=m +CONFIG_USB_MA901=m +CONFIG_RADIO_TEA5764=m +CONFIG_RADIO_SAA7706H=m +CONFIG_RADIO_TEF6862=m +CONFIG_RADIO_WL1273=m + +# +# Texas Instruments WL128x FM driver (ST based) +# +CONFIG_RADIO_WL128X=m + +# +# Supported FireWire (IEEE 1394) Adapters +# +CONFIG_DVB_FIREDTV=m +CONFIG_DVB_FIREDTV_INPUT=y +CONFIG_MEDIA_COMMON_OPTIONS=y + +# +# common driver options +# +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_BTCX=m +CONFIG_VIDEO_TVEEPROM=m +CONFIG_CYPRESS_FIRMWARE=m +CONFIG_DVB_B2C2_FLEXCOP=m +CONFIG_VIDEO_SAA7146=m +CONFIG_VIDEO_SAA7146_VV=m +CONFIG_SMS_SIANO_MDTV=m +CONFIG_SMS_SIANO_RC=y + +# +# Media ancillary drivers (tuners, sensors, i2c, frontends) +# +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_VIDEO_IR_I2C=m + +# +# Audio decoders, processors and mixers +# +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_SONY_BTF_MPX=m + +# +# RDS decoders +# +CONFIG_VIDEO_SAA6588=m + +# +# Video decoders +# +CONFIG_VIDEO_BT819=m +CONFIG_VIDEO_BT856=m +CONFIG_VIDEO_BT866=m +CONFIG_VIDEO_KS0127=m +CONFIG_VIDEO_SAA7110=m +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m +CONFIG_VIDEO_VPX3220=m + +# +# Video and audio decoders +# +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_CX25840=m + +# +# Video encoders +# +CONFIG_VIDEO_SAA7127=m +CONFIG_VIDEO_SAA7185=m +CONFIG_VIDEO_ADV7170=m +CONFIG_VIDEO_ADV7175=m + +# +# Camera sensor devices +# +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_MT9V011=m + +# +# Flash devices +# + +# +# Video improvement chips +# +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m + +# +# Miscelaneous helper chips +# +CONFIG_VIDEO_M52790=m + +# +# Sensors used on soc_camera driver +# +CONFIG_MEDIA_TUNER=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC5000=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_R820T=m + +# +# Multistandard (satellite) frontends +# +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV6110x=m + +# +# Multistandard (cable + terrestrial) frontends +# +CONFIG_DVB_DRXK=m +CONFIG_DVB_TDA18271C2DD=m + +# +# DVB-S (satellite) frontends +# +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_MT312=m +CONFIG_DVB_ZL10036=m +CONFIG_DVB_ZL10039=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_TDA8083=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TDA8261=m +CONFIG_DVB_VES1X93=m +CONFIG_DVB_TUNER_ITD1000=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_TUA6100=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_MB86A16=m +CONFIG_DVB_TDA10071=m + +# +# DVB-T (terrestrial) frontends +# +CONFIG_DVB_SP8870=m +CONFIG_DVB_SP887X=m +CONFIG_DVB_CX22700=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_L64781=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_MT352=m +CONFIG_DVB_ZL10353=m +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_AF9013=m +CONFIG_DVB_EC100=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m + +# +# DVB-C (cable) frontends +# +CONFIG_DVB_VES1820=m +CONFIG_DVB_TDA10021=m +CONFIG_DVB_TDA10023=m +CONFIG_DVB_STV0297=m + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +CONFIG_DVB_NXT200X=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_BCM3510=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_S5H1411=m + +# +# ISDB-T (terrestrial) frontends +# +CONFIG_DVB_S921=m +CONFIG_DVB_DIB8000=m +CONFIG_DVB_MB86A20S=m + +# +# Digital terrestrial only tuners/PLL +# +CONFIG_DVB_PLL=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# SEC control devices for DVB-S +# +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_ISL6405=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_A8293=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_TDA665x=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_IT913X_FE=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_AF9033=m + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set + +# +# Graphics support +# +CONFIG_AGP=y +CONFIG_AGP_AMD64=y +CONFIG_AGP_INTEL=m +CONFIG_AGP_SIS=m +CONFIG_AGP_VIA=m +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VGA_SWITCHEROO=y +CONFIG_DRM=m +CONFIG_DRM_USB=m +CONFIG_DRM_KMS_HELPER=m +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_TTM=m + +# +# I2C encoder or helper chips +# +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_TDFX=m +CONFIG_DRM_R128=m +CONFIG_DRM_RADEON=m +# CONFIG_DRM_RADEON_UMS is not set +CONFIG_DRM_NOUVEAU=m +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +CONFIG_DRM_I915=m +CONFIG_DRM_I915_KMS=y +# CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set +CONFIG_DRM_MGA=m +CONFIG_DRM_SIS=m +CONFIG_DRM_VIA=m +CONFIG_DRM_SAVAGE=m +CONFIG_DRM_VMWGFX=m +CONFIG_DRM_VMWGFX_FBCON=y +CONFIG_DRM_GMA500=m +CONFIG_DRM_GMA600=y +CONFIG_DRM_GMA3600=y +CONFIG_DRM_UDL=m +CONFIG_DRM_AST=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_CIRRUS_QEMU=m +CONFIG_DRM_QXL=m +CONFIG_VGASTATE=m +CONFIG_VIDEO_OUTPUT_CONTROL=m +CONFIG_HDMI=y +CONFIG_FB=y +CONFIG_FIRMWARE_EDID=y +# CONFIG_FB_DDC is not set +CONFIG_FB_BOOT_VESA_SUPPORT=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_IMAGEBLIT=m +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +CONFIG_FB_BACKLIGHT=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_TILEBLITTING=y + +# +# Frame buffer hardware drivers +# +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ARC is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +CONFIG_FB_VGA16=m +CONFIG_FB_UVESA=m +CONFIG_FB_VESA=y +CONFIG_FB_EFI=y +# CONFIG_FB_N411 is not set +# CONFIG_FB_HGA is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_LE80578 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +CONFIG_FB_VIA=m +CONFIG_FB_VIA_DIRECT_PROCFS=y +CONFIG_FB_VIA_X_COMPATIBILITY=y +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +CONFIG_FB_VOODOO1=m +CONFIG_FB_VT8623=m +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_CARMINE is not set +# CONFIG_FB_TMIO is not set +# CONFIG_FB_SM501 is not set +# CONFIG_FB_SMSCUFX is not set +CONFIG_FB_UDL=m +# CONFIG_FB_GOLDFISH is not set +CONFIG_FB_VIRTUAL=m +CONFIG_XEN_FBDEV_FRONTEND=m +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +CONFIG_FB_HYPERV=m +# CONFIG_FB_SIMPLE is not set +# CONFIG_EXYNOS_VIDEO is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_LCD_CLASS_DEVICE=m +# CONFIG_LCD_L4F00242T03 is not set +# CONFIG_LCD_LMS283GF05 is not set +# CONFIG_LCD_LTV350QV is not set +# CONFIG_LCD_ILI922X is not set +# CONFIG_LCD_ILI9320 is not set +# CONFIG_LCD_TDO24M is not set +# CONFIG_LCD_VGG2432A4 is not set +CONFIG_LCD_PLATFORM=m +# CONFIG_LCD_S6E63M0 is not set +# CONFIG_LCD_LD9040 is not set +# CONFIG_LCD_AMS369FG06 is not set +# CONFIG_LCD_LMS501KF03 is not set +# CONFIG_LCD_HX8357 is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +# CONFIG_BACKLIGHT_GENERIC is not set +CONFIG_BACKLIGHT_LM3533=m +CONFIG_BACKLIGHT_APPLE=m +# CONFIG_BACKLIGHT_SAHARA is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +CONFIG_BACKLIGHT_PCF50633=m +# CONFIG_BACKLIGHT_LM3630 is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LP855X is not set +# CONFIG_BACKLIGHT_OT200 is not set +# CONFIG_BACKLIGHT_TPS65217 is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set + +# +# Console display driver support +# +CONFIG_VGA_CONSOLE=y +# CONFIG_VGACON_SOFT_SCROLLBACK is not set +CONFIG_DUMMY_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_LOGO is not set +CONFIG_SOUND=m +CONFIG_SOUND_OSS_CORE=y +# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_JACK=y +CONFIG_SND_SEQUENCER=m +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +CONFIG_SND_SEQUENCER_OSS=y +CONFIG_SND_HRTIMER=m +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_MAX_CARDS=32 +CONFIG_SND_SUPPORT_OLD_API=y +CONFIG_SND_VERBOSE_PROCFS=y +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +CONFIG_SND_VMASTER=y +CONFIG_SND_KCTL_JACK=y +CONFIG_SND_DMA_SGBUF=y +CONFIG_SND_RAWMIDI_SEQ=m +CONFIG_SND_OPL3_LIB_SEQ=m +# CONFIG_SND_OPL4_LIB_SEQ is not set +# CONFIG_SND_SBAWE_SEQ is not set +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_MPU401_UART=m +CONFIG_SND_OPL3_LIB=m +CONFIG_SND_VX_LIB=m +CONFIG_SND_AC97_CODEC=m +CONFIG_SND_DRIVERS=y +# CONFIG_SND_PCSP is not set +CONFIG_SND_DUMMY=m +CONFIG_SND_ALOOP=m +CONFIG_SND_VIRMIDI=m +CONFIG_SND_MTPAV=m +CONFIG_SND_MTS64=m +CONFIG_SND_SERIAL_U16550=m +CONFIG_SND_MPU401=m +CONFIG_SND_PORTMAN2X4=m +CONFIG_SND_AC97_POWER_SAVE=y +CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 +CONFIG_SND_SB_COMMON=m +CONFIG_SND_SB16_DSP=m +CONFIG_SND_PCI=y +CONFIG_SND_AD1889=m +CONFIG_SND_ALS300=m +CONFIG_SND_ALS4000=m +CONFIG_SND_ALI5451=m +CONFIG_SND_ASIHPI=m +CONFIG_SND_ATIIXP=m +CONFIG_SND_ATIIXP_MODEM=m +CONFIG_SND_AU8810=m +CONFIG_SND_AU8820=m +CONFIG_SND_AU8830=m +CONFIG_SND_AW2=m +CONFIG_SND_AZT3328=m +CONFIG_SND_BT87X=m +# CONFIG_SND_BT87X_OVERCLOCK is not set +CONFIG_SND_CA0106=m +CONFIG_SND_CMIPCI=m +CONFIG_SND_OXYGEN_LIB=m +CONFIG_SND_OXYGEN=m +CONFIG_SND_CS4281=m +CONFIG_SND_CS46XX=m +CONFIG_SND_CS46XX_NEW_DSP=y +CONFIG_SND_CS5530=m +CONFIG_SND_CS5535AUDIO=m +CONFIG_SND_CTXFI=m +CONFIG_SND_DARLA20=m +CONFIG_SND_GINA20=m +CONFIG_SND_LAYLA20=m +CONFIG_SND_DARLA24=m +CONFIG_SND_GINA24=m +CONFIG_SND_LAYLA24=m +CONFIG_SND_MONA=m +CONFIG_SND_MIA=m +CONFIG_SND_ECHO3G=m +CONFIG_SND_INDIGO=m +CONFIG_SND_INDIGOIO=m +CONFIG_SND_INDIGODJ=m +CONFIG_SND_INDIGOIOX=m +CONFIG_SND_INDIGODJX=m +CONFIG_SND_EMU10K1=m +CONFIG_SND_EMU10K1X=m +CONFIG_SND_ENS1370=m +CONFIG_SND_ENS1371=m +CONFIG_SND_ES1938=m +CONFIG_SND_ES1968=m +CONFIG_SND_ES1968_INPUT=y +CONFIG_SND_ES1968_RADIO=y +CONFIG_SND_FM801=m +CONFIG_SND_FM801_TEA575X_BOOL=y +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_PREALLOC_SIZE=4096 +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_CODEC_REALTEK=y +CONFIG_SND_HDA_CODEC_ANALOG=y +CONFIG_SND_HDA_CODEC_SIGMATEL=y +CONFIG_SND_HDA_CODEC_VIA=y +CONFIG_SND_HDA_CODEC_HDMI=y +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_CODEC_CIRRUS=y +CONFIG_SND_HDA_CODEC_CONEXANT=y +CONFIG_SND_HDA_CODEC_CA0110=y +CONFIG_SND_HDA_CODEC_CA0132=y +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CMEDIA=y +CONFIG_SND_HDA_CODEC_SI3054=y +CONFIG_SND_HDA_GENERIC=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 +CONFIG_SND_HDSP=m +CONFIG_SND_HDSPM=m +CONFIG_SND_ICE1712=m +CONFIG_SND_ICE1724=m +CONFIG_SND_INTEL8X0=m +CONFIG_SND_INTEL8X0M=m +CONFIG_SND_KORG1212=m +CONFIG_SND_LOLA=m +CONFIG_SND_LX6464ES=m +CONFIG_SND_MAESTRO3=m +CONFIG_SND_MAESTRO3_INPUT=y +CONFIG_SND_MIXART=m +CONFIG_SND_NM256=m +CONFIG_SND_PCXHR=m +CONFIG_SND_RIPTIDE=m +CONFIG_SND_RME32=m +CONFIG_SND_RME96=m +CONFIG_SND_RME9652=m +CONFIG_SND_SONICVIBES=m +CONFIG_SND_TRIDENT=m +CONFIG_SND_VIA82XX=m +CONFIG_SND_VIA82XX_MODEM=m +CONFIG_SND_VIRTUOSO=m +CONFIG_SND_VX222=m +CONFIG_SND_YMFPCI=m +CONFIG_SND_SPI=y +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_USX2Y=m +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_US122L=m +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_HIFACE=m +CONFIG_SND_FIREWIRE=y +CONFIG_SND_FIREWIRE_LIB=m +CONFIG_SND_FIREWIRE_SPEAKERS=m +CONFIG_SND_ISIGHT=m +CONFIG_SND_SCS1X=m +CONFIG_SND_PCMCIA=y +CONFIG_SND_VXPOCKET=m +CONFIG_SND_PDAUDIOCF=m +# CONFIG_SND_SOC is not set +# CONFIG_SOUND_PRIME is not set +CONFIG_AC97_BUS=m + +# +# HID support +# +CONFIG_HID=m +CONFIG_HIDRAW=y +CONFIG_UHID=m +CONFIG_HID_GENERIC=m + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +CONFIG_HID_ACRUX=m +CONFIG_HID_ACRUX_FF=y +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_DRAGONRISE_FF=y +CONFIG_HID_EMS_FF=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EZKEY=m +CONFIG_HID_HOLTEK=m +CONFIG_HOLTEK_FF=y +CONFIG_HID_HUION=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=m +CONFIG_HID_LCPOWER=m +CONFIG_HID_LENOVO_TPKBD=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_LOGITECH_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGIG940_FF=y +CONFIG_LOGIWHEELS_FF=y +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +CONFIG_PANTHERLORD_FF=y +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_LCD=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PICOLCD_CIR=y +CONFIG_HID_PRIMAX=m +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SONY=m +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_GREENASIA=m +CONFIG_GREENASIA_FF=y +CONFIG_HID_HYPERV_MOUSE=m +CONFIG_HID_SMARTJOYPLUS=m +CONFIG_SMARTJOYPLUS_FF=y +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_THRUSTMASTER_FF=y +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +CONFIG_ZEROPLUS_FF=y +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m + +# +# USB HID support +# +CONFIG_USB_HID=m +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y + +# +# I2C HID support +# +CONFIG_I2C_HID=m +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=m +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=m +# CONFIG_USB_DEBUG is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +CONFIG_USB_DYNAMIC_MINORS=y +# CONFIG_USB_OTG is not set +CONFIG_USB_MON=m +CONFIG_USB_WUSB=m +CONFIG_USB_WUSB_CBAF=m +# CONFIG_USB_WUSB_CBAF_DEBUG is not set + +# +# USB Host Controller Drivers +# +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_XHCI_HCD=m +CONFIG_USB_EHCI_HCD=m +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=m +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1760_HCD=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_FUSBH200_HCD=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_OHCI_HCD=m +CONFIG_USB_OHCI_HCD_PCI=m +# CONFIG_USB_OHCI_HCD_SSB is not set +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +CONFIG_USB_UHCI_HCD=m +CONFIG_USB_U132_HCD=m +CONFIG_USB_SL811_HCD=m +# CONFIG_USB_SL811_HCD_ISO is not set +CONFIG_USB_SL811_CS=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RENESAS_USBHS_HCD=m +CONFIG_USB_WHCI_HCD=m +CONFIG_USB_HWA_HCD=m +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set +CONFIG_USB_MUSB_HDRC=m +# CONFIG_USB_MUSB_HOST is not set +# CONFIG_USB_MUSB_GADGET is not set +CONFIG_USB_MUSB_DUAL_ROLE=y +CONFIG_USB_MUSB_TUSB6010=m +CONFIG_USB_MUSB_UX500=m +# CONFIG_USB_UX500_DMA is not set +CONFIG_MUSB_PIO_ONLY=y +CONFIG_USB_RENESAS_USBHS=m + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m +CONFIG_USB_WDM=m +CONFIG_USB_TMC=m + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_REALTEK_AUTOPM=y +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_ENE_UB6250=m + +# +# USB Imaging devices +# +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_CHIPIDEA is not set + +# +# USB port drivers +# +CONFIG_USB_USS720=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_SIMPLE=m +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=m +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_F81232=m +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KEYSPAN_MPR=y +CONFIG_USB_SERIAL_KEYSPAN_USA28=y +CONFIG_USB_SERIAL_KEYSPAN_USA28X=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y +CONFIG_USB_SERIAL_KEYSPAN_USA19=y +CONFIG_USB_SERIAL_KEYSPAN_USA18X=y +CONFIG_USB_SERIAL_KEYSPAN_USA19W=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y +CONFIG_USB_SERIAL_KEYSPAN_USA49W=y +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7715_PARPORT=y +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_WWAN=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_ZTE=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_QT2=m +# CONFIG_USB_SERIAL_DEBUG is not set + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_RIO500=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LCD=m +CONFIG_USB_LED=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_SISUSBVGA=m +# CONFIG_USB_SISUSBVGA_CON is not set +CONFIG_USB_LD=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_TEST=m +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_YUREX=m +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_ATM=m +CONFIG_USB_SPEEDTOUCH=m +CONFIG_USB_CXACRU=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_XUSBATM=m + +# +# USB Physical Layer drivers +# +CONFIG_USB_PHY=y +CONFIG_NOP_USB_XCEIV=m +# CONFIG_AM335X_PHY_USB is not set +CONFIG_SAMSUNG_USBPHY=m +CONFIG_SAMSUNG_USB2PHY=m +CONFIG_SAMSUNG_USB3PHY=m +# CONFIG_USB_GPIO_VBUS is not set +CONFIG_USB_ISP1301=m +CONFIG_USB_RCAR_PHY=m +CONFIG_USB_GADGET=m +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 + +# +# USB Peripheral Controller +# +CONFIG_USB_FOTG210_UDC=m +CONFIG_USB_R8A66597=m +CONFIG_USB_RENESAS_USBHS_UDC=m +CONFIG_USB_PXA27X=m +CONFIG_USB_MV_UDC=m +CONFIG_USB_MV_U3D=m +CONFIG_USB_M66592=m +CONFIG_USB_AMD5536UDC=m +CONFIG_USB_NET2272=m +CONFIG_USB_NET2272_DMA=y +CONFIG_USB_NET2280=m +CONFIG_USB_GOKU=m +CONFIG_USB_EG20T=m +CONFIG_USB_DUMMY_HCD=m +CONFIG_USB_LIBCOMPOSITE=m +CONFIG_USB_F_ACM=m +CONFIG_USB_U_SERIAL=m +CONFIG_USB_U_ETHER=m +CONFIG_USB_U_RNDIS=m +CONFIG_USB_F_SERIAL=m +CONFIG_USB_F_OBEX=m +CONFIG_USB_F_NCM=m +CONFIG_USB_F_ECM=m +CONFIG_USB_F_SUBSET=m +CONFIG_USB_F_RNDIS=m +# CONFIG_USB_CONFIGFS is not set +# CONFIG_USB_ZERO is not set +CONFIG_USB_AUDIO=m +# CONFIG_GADGET_UAC1 is not set +CONFIG_USB_ETH=m +CONFIG_USB_ETH_RNDIS=y +# CONFIG_USB_ETH_EEM is not set +CONFIG_USB_G_NCM=m +CONFIG_USB_GADGETFS=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_FUNCTIONFS_ETH=y +CONFIG_USB_FUNCTIONFS_RNDIS=y +CONFIG_USB_FUNCTIONFS_GENERIC=y +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_GADGET_TARGET=m +CONFIG_USB_G_SERIAL=m +CONFIG_USB_MIDI_GADGET=m +CONFIG_USB_G_PRINTER=m +# CONFIG_USB_CDC_COMPOSITE is not set +# CONFIG_USB_G_NOKIA is not set +# CONFIG_USB_G_ACM_MS is not set +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_G_HID=m +CONFIG_USB_G_DBGP=m +# CONFIG_USB_G_DBGP_PRINTK is not set +CONFIG_USB_G_DBGP_SERIAL=y +CONFIG_USB_G_WEBCAM=m +CONFIG_UWB=m +CONFIG_UWB_HWA=m +CONFIG_UWB_WHCI=m +CONFIG_UWB_I1480U=m +CONFIG_MMC=m +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_UNSAFE_RESUME is not set +# CONFIG_MMC_CLKGATE is not set + +# +# MMC/SD/SDIO Card Drivers +# +CONFIG_MMC_BLOCK=m +CONFIG_MMC_BLOCK_MINORS=8 +CONFIG_MMC_BLOCK_BOUNCE=y +CONFIG_SDIO_UART=m +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PCI=m +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MMC_WBSD=m +CONFIG_MMC_TIFM_SD=m +# CONFIG_MMC_SPI is not set +CONFIG_MMC_SDRICOH_CS=m +CONFIG_MMC_CB710=m +CONFIG_MMC_VIA_SDMMC=m +CONFIG_MMC_VUB300=m +CONFIG_MMC_USHC=m +CONFIG_MMC_REALTEK_PCI=m +CONFIG_MEMSTICK=m +# CONFIG_MEMSTICK_DEBUG is not set + +# +# MemoryStick drivers +# +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MSPRO_BLOCK=m +# CONFIG_MS_BLOCK is not set + +# +# MemoryStick Host Controller Drivers +# +CONFIG_MEMSTICK_TIFM_MS=m +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +CONFIG_MEMSTICK_REALTEK_PCI=m +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y + +# +# LED drivers +# +CONFIG_LEDS_LM3530=m +CONFIG_LEDS_LM3533=m +CONFIG_LEDS_LM3642=m +CONFIG_LEDS_PCA9532=m +# CONFIG_LEDS_PCA9532_GPIO is not set +# CONFIG_LEDS_GPIO is not set +CONFIG_LEDS_LP3944=m +CONFIG_LEDS_LP55XX_COMMON=m +CONFIG_LEDS_LP5521=m +CONFIG_LEDS_LP5523=m +CONFIG_LEDS_LP5562=m +# CONFIG_LEDS_LP8501 is not set +CONFIG_LEDS_CLEVO_MAIL=m +CONFIG_LEDS_PCA955X=m +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_DAC124S085 is not set +CONFIG_LEDS_BD2802=m +CONFIG_LEDS_INTEL_SS4200=m +CONFIG_LEDS_LT3593=m +CONFIG_LEDS_DELL_NETBOOKS=m +CONFIG_LEDS_MC13783=m +CONFIG_LEDS_TCA6507=m +CONFIG_LEDS_LM355x=m +CONFIG_LEDS_OT200=m +CONFIG_LEDS_BLINKM=m + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=m +CONFIG_LEDS_TRIGGER_ONESHOT=m +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LEDS_TRIGGER_BACKLIGHT=m +# CONFIG_LEDS_TRIGGER_CPU is not set +CONFIG_LEDS_TRIGGER_GPIO=m +CONFIG_LEDS_TRIGGER_DEFAULT_ON=m + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +CONFIG_ACCESSIBILITY=y +CONFIG_A11Y_BRAILLE_CONSOLE=y +# CONFIG_INFINIBAND is not set +CONFIG_EDAC=y +CONFIG_EDAC_LEGACY_SYSFS=y +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_DECODE_MCE=m +CONFIG_EDAC_MCE_INJ=m +CONFIG_EDAC_MM_EDAC=m +CONFIG_EDAC_AMD64=m +# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set +CONFIG_EDAC_E752X=m +CONFIG_EDAC_I82975X=m +CONFIG_EDAC_I3000=m +CONFIG_EDAC_I3200=m +CONFIG_EDAC_X38=m +CONFIG_EDAC_I5400=m +CONFIG_EDAC_I7CORE=m +CONFIG_EDAC_I5000=m +CONFIG_EDAC_I5100=m +CONFIG_EDAC_I7300=m +CONFIG_EDAC_SBRIDGE=m +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +CONFIG_RTC_INTF_DEV_UIE_EMUL=y +CONFIG_RTC_DRV_TEST=m + +# +# I2C RTC drivers +# +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_DS1374=m +CONFIG_RTC_DRV_DS1672=m +CONFIG_RTC_DRV_DS3232=m +CONFIG_RTC_DRV_MAX6900=m +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_ISL12022=m +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_M41T80=m +CONFIG_RTC_DRV_M41T80_WDT=y +CONFIG_RTC_DRV_BQ32K=m +CONFIG_RTC_DRV_S35390A=m +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_EM3027=m +CONFIG_RTC_DRV_RV3029C2=m + +# +# SPI RTC drivers +# +# CONFIG_RTC_DRV_M41T93 is not set +# CONFIG_RTC_DRV_M41T94 is not set +# CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1390 is not set +# CONFIG_RTC_DRV_MAX6902 is not set +# CONFIG_RTC_DRV_R9701 is not set +# CONFIG_RTC_DRV_RS5C348 is not set +# CONFIG_RTC_DRV_DS3234 is not set +# CONFIG_RTC_DRV_PCF2123 is not set +# CONFIG_RTC_DRV_RX4581 is not set + +# +# Platform RTC drivers +# +CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_DS1286=m +CONFIG_RTC_DRV_DS1511=m +CONFIG_RTC_DRV_DS1553=m +CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_STK17TA8=m +CONFIG_RTC_DRV_M48T86=m +CONFIG_RTC_DRV_M48T35=m +CONFIG_RTC_DRV_M48T59=m +CONFIG_RTC_DRV_MSM6242=m +CONFIG_RTC_DRV_BQ4802=m +CONFIG_RTC_DRV_RP5C01=m +CONFIG_RTC_DRV_V3020=m +CONFIG_RTC_DRV_DS2404=m +CONFIG_RTC_DRV_PCF50633=m + +# +# on-CPU RTC drivers +# +CONFIG_RTC_DRV_MC13XXX=m +# CONFIG_RTC_DRV_MOXART is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_INTEL_MID_DMAC=m +CONFIG_INTEL_IOATDMA=m +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC=m +CONFIG_DW_DMAC_PCI=m +CONFIG_TIMB_DMA=m +CONFIG_PCH_DMA=m +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ACPI=y + +# +# DMA Clients +# +CONFIG_NET_DMA=y +CONFIG_ASYNC_TX_DMA=y +# CONFIG_DMATEST is not set +CONFIG_DCA=m +CONFIG_AUXDISPLAY=y +CONFIG_KS0108=m +CONFIG_KS0108_PORT=0x378 +CONFIG_KS0108_DELAY=2 +CONFIG_CFAG12864B=m +CONFIG_CFAG12864B_RATE=20 +CONFIG_UIO=m +CONFIG_UIO_CIF=m +CONFIG_UIO_PDRV_GENIRQ=m +# CONFIG_UIO_DMEM_GENIRQ is not set +CONFIG_UIO_AEC=m +CONFIG_UIO_SERCOS3=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_NETX=m +# CONFIG_UIO_MF624 is not set +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO=m +CONFIG_VFIO_PCI=m +CONFIG_VFIO_PCI_VGA=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRTIO=m + +# +# Virtio drivers +# +CONFIG_VIRTIO_PCI=m +CONFIG_VIRTIO_BALLOON=m +CONFIG_VIRTIO_MMIO=m +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y + +# +# Microsoft Hyper-V guest support +# +CONFIG_HYPERV=m +CONFIG_HYPERV_UTILS=m +CONFIG_HYPERV_BALLOON=m + +# +# Xen driver support +# +CONFIG_XEN_BALLOON=y +# CONFIG_XEN_SELFBALLOONING is not set +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y +CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_DEV_EVTCHN=m +CONFIG_XEN_BACKEND=y +CONFIG_XENFS=m +CONFIG_XEN_COMPAT_XENFS=y +CONFIG_XEN_SYS_HYPERVISOR=y +CONFIG_XEN_XENBUS_FRONTEND=y +CONFIG_XEN_GNTDEV=m +CONFIG_XEN_GRANT_DEV_ALLOC=m +CONFIG_SWIOTLB_XEN=y +CONFIG_XEN_TMEM=m +CONFIG_XEN_PCIDEV_BACKEND=m +CONFIG_XEN_PRIVCMD=m +CONFIG_XEN_ACPI_PROCESSOR=m +# CONFIG_XEN_MCE_LOG is not set +CONFIG_XEN_HAVE_PVMMU=y +CONFIG_STAGING=y +CONFIG_ET131X=m +CONFIG_SLICOSS=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set +CONFIG_W35UND=m +CONFIG_PRISM2_USB=m +CONFIG_ECHO=m +CONFIG_COMEDI=m +# CONFIG_COMEDI_DEBUG is not set +CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 +CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 +CONFIG_COMEDI_MISC_DRIVERS=y +CONFIG_COMEDI_KCOMEDILIB=m +CONFIG_COMEDI_BOND=m +CONFIG_COMEDI_TEST=m +CONFIG_COMEDI_PARPORT=m +CONFIG_COMEDI_SERIAL2002=m +CONFIG_COMEDI_SKEL=m +# CONFIG_COMEDI_ISA_DRIVERS is not set +CONFIG_COMEDI_PCI_DRIVERS=y +CONFIG_COMEDI_8255_PCI=m +CONFIG_COMEDI_ADDI_WATCHDOG=m +CONFIG_COMEDI_ADDI_APCI_035=m +CONFIG_COMEDI_ADDI_APCI_1032=m +CONFIG_COMEDI_ADDI_APCI_1500=m +CONFIG_COMEDI_ADDI_APCI_1516=m +CONFIG_COMEDI_ADDI_APCI_1564=m +CONFIG_COMEDI_ADDI_APCI_16XX=m +CONFIG_COMEDI_ADDI_APCI_2032=m +CONFIG_COMEDI_ADDI_APCI_2200=m +CONFIG_COMEDI_ADDI_APCI_3120=m +CONFIG_COMEDI_ADDI_APCI_3501=m +CONFIG_COMEDI_ADDI_APCI_3XXX=m +CONFIG_COMEDI_ADL_PCI6208=m +CONFIG_COMEDI_ADL_PCI7X3X=m +CONFIG_COMEDI_ADL_PCI8164=m +CONFIG_COMEDI_ADL_PCI9111=m +CONFIG_COMEDI_ADL_PCI9118=m +CONFIG_COMEDI_ADV_PCI1710=m +CONFIG_COMEDI_ADV_PCI1723=m +CONFIG_COMEDI_ADV_PCI1724=m +CONFIG_COMEDI_ADV_PCI_DIO=m +CONFIG_COMEDI_AMPLC_DIO200_PCI=m +CONFIG_COMEDI_AMPLC_PC236_PCI=m +CONFIG_COMEDI_AMPLC_PC263_PCI=m +CONFIG_COMEDI_AMPLC_PCI224=m +CONFIG_COMEDI_AMPLC_PCI230=m +CONFIG_COMEDI_CONTEC_PCI_DIO=m +CONFIG_COMEDI_DAS08_PCI=m +CONFIG_COMEDI_DT3000=m +CONFIG_COMEDI_DYNA_PCI10XX=m +CONFIG_COMEDI_GSC_HPDI=m +CONFIG_COMEDI_ICP_MULTI=m +CONFIG_COMEDI_DAQBOARD2000=m +CONFIG_COMEDI_JR3_PCI=m +CONFIG_COMEDI_KE_COUNTER=m +CONFIG_COMEDI_CB_PCIDAS64=m +CONFIG_COMEDI_CB_PCIDAS=m +CONFIG_COMEDI_CB_PCIDDA=m +CONFIG_COMEDI_CB_PCIMDAS=m +CONFIG_COMEDI_CB_PCIMDDA=m +CONFIG_COMEDI_ME4000=m +CONFIG_COMEDI_ME_DAQ=m +CONFIG_COMEDI_NI_6527=m +CONFIG_COMEDI_NI_65XX=m +CONFIG_COMEDI_NI_660X=m +CONFIG_COMEDI_NI_670X=m +CONFIG_COMEDI_NI_LABPC_PCI=m +CONFIG_COMEDI_NI_PCIDIO=m +CONFIG_COMEDI_NI_PCIMIO=m +CONFIG_COMEDI_RTD520=m +CONFIG_COMEDI_S626=m +CONFIG_COMEDI_MITE=m +CONFIG_COMEDI_NI_TIOCMD=m +CONFIG_COMEDI_PCMCIA_DRIVERS=y +CONFIG_COMEDI_CB_DAS16_CS=m +CONFIG_COMEDI_DAS08_CS=m +CONFIG_COMEDI_NI_DAQ_700_CS=m +CONFIG_COMEDI_NI_DAQ_DIO24_CS=m +CONFIG_COMEDI_NI_LABPC_CS=m +CONFIG_COMEDI_NI_MIO_CS=m +CONFIG_COMEDI_QUATECH_DAQP_CS=m +CONFIG_COMEDI_USB_DRIVERS=y +CONFIG_COMEDI_DT9812=m +CONFIG_COMEDI_USBDUX=m +CONFIG_COMEDI_USBDUXFAST=m +CONFIG_COMEDI_USBDUXSIGMA=m +CONFIG_COMEDI_VMK80XX=m +CONFIG_COMEDI_8255=m +CONFIG_COMEDI_FC=m +CONFIG_COMEDI_AMPLC_DIO200=m +CONFIG_COMEDI_AMPLC_PC236=m +CONFIG_COMEDI_DAS08=m +CONFIG_COMEDI_NI_LABPC=m +CONFIG_COMEDI_NI_TIO=m +# CONFIG_PANEL is not set +CONFIG_R8187SE=m +CONFIG_RTL8192U=m +CONFIG_RTLLIB=m +CONFIG_RTLLIB_CRYPTO_CCMP=m +CONFIG_RTLLIB_CRYPTO_TKIP=m +CONFIG_RTLLIB_CRYPTO_WEP=m +CONFIG_RTL8192E=m +CONFIG_R8712U=m +CONFIG_R8188EU=m +CONFIG_88EU_AP_MODE=y +CONFIG_88EU_P2P=y +CONFIG_RTS5139=m +# CONFIG_RTS5139_DEBUG is not set +# CONFIG_TRANZPORT is not set +CONFIG_IDE_PHISON=m +CONFIG_LINE6_USB=m +# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set +CONFIG_USB_SERIAL_QUATECH2=m +CONFIG_VT6655=m +CONFIG_VT6656=m +CONFIG_DX_SEP=m +CONFIG_ZSMALLOC=y +CONFIG_ZRAM=m +# CONFIG_ZRAM_DEBUG is not set +CONFIG_WLAGS49_H2=m +CONFIG_WLAGS49_H25=m +CONFIG_FB_SM7XX=m +CONFIG_CRYSTALHD=m +CONFIG_FB_XGI=m +CONFIG_ACPI_QUICKSTART=m +CONFIG_USB_ENESTORAGE=m +CONFIG_BCM_WIMAX=m +CONFIG_FT1000=m +CONFIG_FT1000_USB=m +CONFIG_FT1000_PCMCIA=m + +# +# Speakup console speech +# +CONFIG_SPEAKUP=m +CONFIG_SPEAKUP_SYNTH_ACNTSA=m +CONFIG_SPEAKUP_SYNTH_ACNTPC=m +CONFIG_SPEAKUP_SYNTH_APOLLO=m +CONFIG_SPEAKUP_SYNTH_AUDPTR=m +CONFIG_SPEAKUP_SYNTH_BNS=m +CONFIG_SPEAKUP_SYNTH_DECTLK=m +CONFIG_SPEAKUP_SYNTH_DECEXT=m +CONFIG_SPEAKUP_SYNTH_DECPC=m +CONFIG_SPEAKUP_SYNTH_DTLK=m +CONFIG_SPEAKUP_SYNTH_KEYPC=m +CONFIG_SPEAKUP_SYNTH_LTLK=m +CONFIG_SPEAKUP_SYNTH_SOFT=m +CONFIG_SPEAKUP_SYNTH_SPKOUT=m +CONFIG_SPEAKUP_SYNTH_TXPRT=m +CONFIG_SPEAKUP_SYNTH_DUMMY=m +CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m +CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m +CONFIG_STAGING_MEDIA=y +CONFIG_DVB_AS102=m +CONFIG_DVB_CXD2099=m +CONFIG_VIDEO_DT3155=m +CONFIG_DT3155_CCIR=y +CONFIG_DT3155_STREAMING=y +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set +# CONFIG_USB_MSI3101 is not set +CONFIG_SOLO6X10=m +CONFIG_LIRC_STAGING=y +CONFIG_LIRC_BT829=m +CONFIG_LIRC_IGORPLUGUSB=m +CONFIG_LIRC_IMON=m +CONFIG_LIRC_PARALLEL=m +CONFIG_LIRC_SASEM=m +CONFIG_LIRC_SERIAL=m +CONFIG_LIRC_SERIAL_TRANSMITTER=y +CONFIG_LIRC_SIR=m +CONFIG_LIRC_ZILOG=m + +# +# Android +# +# CONFIG_ANDROID is not set +CONFIG_USB_WPAN_HCD=m +CONFIG_WIMAX_GDM72XX=m +CONFIG_WIMAX_GDM72XX_QOS=y +CONFIG_WIMAX_GDM72XX_K_MODE=y +CONFIG_WIMAX_GDM72XX_WIMAX2=y +CONFIG_WIMAX_GDM72XX_USB=y +# CONFIG_WIMAX_GDM72XX_SDIO is not set +CONFIG_WIMAX_GDM72XX_USB_PM=y +# CONFIG_LTE_GDM724X is not set +CONFIG_NET_VENDOR_SILICOM=y +CONFIG_SBYPASS=m +CONFIG_BPCTL=m +CONFIG_CED1401=m +CONFIG_DGRP=m +CONFIG_FIREWIRE_SERIAL=m +# CONFIG_USB_DWC2 is not set +CONFIG_LUSTRE_FS=m +CONFIG_LUSTRE_OBD_MAX_IOCTL_BUFFER=8192 +# CONFIG_LUSTRE_DEBUG_EXPENSIVE_CHECK is not set +CONFIG_LUSTRE_LLITE_LLOOP=y +CONFIG_LNET=m +CONFIG_LNET_MAX_PAYLOAD=1048576 +CONFIG_LNET_SELFTEST=m +CONFIG_USB_BTMTK=m +# CONFIG_XILLYBUS is not set +CONFIG_DGNC=m +CONFIG_DGAP=m +CONFIG_X86_PLATFORM_DEVICES=y +CONFIG_ACER_WMI=m +CONFIG_ACERHDF=m +CONFIG_ASUS_LAPTOP=m +CONFIG_CHROMEOS_LAPTOP=m +CONFIG_DELL_LAPTOP=m +CONFIG_DELL_WMI=m +CONFIG_DELL_WMI_AIO=m +CONFIG_FUJITSU_LAPTOP=m +# CONFIG_FUJITSU_LAPTOP_DEBUG is not set +CONFIG_FUJITSU_TABLET=m +CONFIG_AMILO_RFKILL=m +CONFIG_HP_ACCEL=m +CONFIG_HP_WMI=m +CONFIG_MSI_LAPTOP=m +CONFIG_PANASONIC_LAPTOP=m +CONFIG_COMPAL_LAPTOP=m +CONFIG_SONY_LAPTOP=m +# CONFIG_SONYPI_COMPAT is not set +CONFIG_IDEAPAD_LAPTOP=m +CONFIG_THINKPAD_ACPI=m +CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y +# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set +# CONFIG_THINKPAD_ACPI_DEBUG is not set +# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set +CONFIG_THINKPAD_ACPI_VIDEO=y +CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y +CONFIG_SENSORS_HDAPS=m +CONFIG_INTEL_MENLOW=m +CONFIG_EEEPC_LAPTOP=m +CONFIG_ASUS_WMI=m +CONFIG_ASUS_NB_WMI=m +CONFIG_EEEPC_WMI=m +CONFIG_ACPI_WMI=m +CONFIG_MSI_WMI=m +CONFIG_TOPSTAR_LAPTOP=m +CONFIG_ACPI_TOSHIBA=m +CONFIG_TOSHIBA_BT_RFKILL=m +CONFIG_ACPI_CMPC=m +CONFIG_INTEL_IPS=m +CONFIG_IBM_RTL=m +CONFIG_XO15_EBOOK=m +CONFIG_SAMSUNG_LAPTOP=m +CONFIG_MXM_WMI=m +CONFIG_INTEL_OAKTRAIL=m +CONFIG_SAMSUNG_Q10=m +CONFIG_APPLE_GMUX=m +CONFIG_INTEL_RST=m +CONFIG_INTEL_SMARTCONNECT=y +CONFIG_PVPANIC=m + +# +# Hardware Spinlock drivers +# +CONFIG_CLKEVT_I8253=y +CONFIG_I8253_LOCK=y +CONFIG_CLKBLD_I8253=y +# CONFIG_MAILBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y +CONFIG_AMD_IOMMU=y +# CONFIG_AMD_IOMMU_STATS is not set +CONFIG_AMD_IOMMU_V2=m +CONFIG_DMAR_TABLE=y +CONFIG_INTEL_IOMMU=y +# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_FLOPPY_WA=y +CONFIG_IRQ_REMAP=y + +# +# Remoteproc drivers +# +CONFIG_REMOTEPROC=m +CONFIG_STE_MODEM_RPROC=m + +# +# Rpmsg drivers +# +# CONFIG_PM_DEVFREQ is not set +CONFIG_EXTCON=m + +# +# Extcon Device Drivers +# +CONFIG_EXTCON_GPIO=m +CONFIG_MEMORY=y +# CONFIG_IIO is not set +# CONFIG_NTB is not set +# CONFIG_VME_BUS is not set +# CONFIG_PWM is not set +CONFIG_IPACK_BUS=m +CONFIG_BOARD_TPCI200=m +CONFIG_SERIAL_IPOCTAL=m +# CONFIG_RESET_CONTROLLER is not set +CONFIG_FMC=m +CONFIG_FMC_FAKEDEV=m +CONFIG_FMC_TRIVIAL=m +CONFIG_FMC_WRITE_EEPROM=m +CONFIG_FMC_CHARDEV=m + +# +# Firmware Drivers +# +CONFIG_EDD=m +# CONFIG_EDD_OFF is not set +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_DELL_RBU=m +CONFIG_DCDBAS=m +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=m +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_IBFT=m +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +# CONFIG_EFI_VARS is not set + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=m +CONFIG_EXT4_USE_FOR_EXT23=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=m +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=m +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_PROC_INFO=y +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_JFS_FS=m +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_STATISTICS=y +CONFIG_XFS_FS=m +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCFS2_FS_STATS=y +# CONFIG_OCFS2_DEBUG_MASKLOG is not set +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +CONFIG_NILFS2_FS=m +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_FILE_LOCKING=y +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +# CONFIG_PRINT_QUOTA_WARNING is not set +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=m +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QUOTACTL=y +CONFIG_QUOTACTL_COMPAT=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=m +CONFIG_CUSE=m +CONFIG_GENERIC_ACL=y + +# +# Caches +# +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +CONFIG_FSCACHE_HISTOGRAM=y +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_RW=y + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_SYSCTL=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ADFS_FS is not set +CONFIG_AFFS_FS=m +CONFIG_ECRYPT_FS=m +# CONFIG_ECRYPT_FS_MESSAGING is not set +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +CONFIG_HFSPLUS_FS_POSIX_ACL=y +CONFIG_BEFS_FS=m +# CONFIG_BEFS_DEBUG is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +# CONFIG_JFFS2_SUMMARY is not set +CONFIG_JFFS2_FS_XATTR=y +CONFIG_JFFS2_FS_POSIX_ACL=y +CONFIG_JFFS2_FS_SECURITY=y +# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFFS2_LZO is not set +CONFIG_JFFS2_RTIME=y +# CONFIG_JFFS2_RUBIN is not set +CONFIG_UBIFS_FS=m +# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set +CONFIG_UBIFS_FS_LZO=y +CONFIG_UBIFS_FS_ZLIB=y +CONFIG_LOGFS=m +CONFIG_CRAMFS=m +CONFIG_SQUASHFS=m +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +CONFIG_MINIX_FS=m +CONFIG_OMFS_FS=m +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_CONSOLE is not set +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PSTORE_RAM=m +# CONFIG_SYSV_FS is not set +CONFIG_UFS_FS=m +# CONFIG_UFS_FS_WRITE is not set +# CONFIG_UFS_DEBUG is not set +CONFIG_EXOFS_FS=m +# CONFIG_EXOFS_DEBUG is not set +CONFIG_F2FS_FS=m +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +CONFIG_EFIVAR_FS=y +CONFIG_ORE=m +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=m +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_SWAP=y +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_OBJLAYOUT=m +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="linux-libre.fsfla.org" +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFS_FSCACHE=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_SUNRPC_DEBUG=y +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CIFS=m +CONFIG_CIFS_STATS=y +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_ACL=y +# CONFIG_CIFS_DEBUG is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_SMB2=y +CONFIG_CIFS_FSCACHE=y +CONFIG_NCP_FS=m +# CONFIG_NCPFS_PACKET_SIGNING is not set +# CONFIG_NCPFS_IOCTL_LOCKING is not set +# CONFIG_NCPFS_STRONG is not set +CONFIG_NCPFS_NFS_NS=y +CONFIG_NCPFS_OS2_NS=y +CONFIG_NCPFS_SMALLDOS=y +CONFIG_NCPFS_NLS=y +# CONFIG_NCPFS_EXTRAS is not set +CONFIG_CODA_FS=m +CONFIG_AFS_FS=m +# CONFIG_AFS_DEBUG is not set +CONFIG_AFS_FSCACHE=y +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=y +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set + +# +# Kernel hacking +# +CONFIG_TRACE_IRQFLAGS_SUPPORT=y + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +# CONFIG_BOOT_PRINTK_DELAY is not set +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_FRAME_WARN=2048 +CONFIG_STRIP_ASM_SYMS=y +# CONFIG_READABLE_ASM is not set +CONFIG_UNUSED_SYMBOLS=y +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VIRTUAL is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_STACKOVERFLOW is not set +CONFIG_HAVE_ARCH_KMEMCHECK=y +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHEDSTATS=y +CONFIG_TIMER_STATS=y +# CONFIG_DEBUG_PREEMPT is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_RT_MUTEX_TESTER is not set +# CONFIG_DEBUG_SPINLOCK is not set +CONFIG_DEBUG_MUTEXES=y +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +CONFIG_STACKTRACE=y +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_WRITECOUNT is not set +CONFIG_DEBUG_LIST=y +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU_DELAY is not set +# CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +# CONFIG_RCU_CPU_STALL_VERBOSE is not set +# CONFIG_RCU_CPU_STALL_INFO is not set +# CONFIG_RCU_TRACE is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y +# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y +CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_PREEMPT_TRACER is not set +CONFIG_SCHED_TRACER=y +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENT=y +CONFIG_UPROBE_EVENT=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_MMIOTRACE=y +# CONFIG_MMIOTRACE_TEST is not set +CONFIG_RING_BUFFER_BENCHMARK=m +# CONFIG_RING_BUFFER_STARTUP_TEST is not set + +# +# Runtime Testing +# +CONFIG_LKDTM=m +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_ASYNC_RAID6_TEST=m +# CONFIG_TEST_STRING_HELPERS is not set +CONFIG_TEST_KSTRTOX=m +# CONFIG_DMA_API_DEBUG is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +CONFIG_STRICT_DEVMEM=y +CONFIG_X86_VERBOSE_BOOTUP=y +CONFIG_EARLY_PRINTK=y +# CONFIG_EARLY_PRINTK_DBGP is not set +# CONFIG_X86_PTDUMP is not set +# CONFIG_DEBUG_NX_TEST is not set +CONFIG_DOUBLEFAULT=y +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_IOMMU_DEBUG is not set +# CONFIG_IOMMU_STRESS is not set +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_IO_DELAY_TYPE_0X80=0 +CONFIG_IO_DELAY_TYPE_0XED=1 +CONFIG_IO_DELAY_TYPE_UDELAY=2 +CONFIG_IO_DELAY_TYPE_NONE=3 +CONFIG_IO_DELAY_0X80=y +# CONFIG_IO_DELAY_0XED is not set +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_DELAY_NONE is not set +CONFIG_DEFAULT_IO_DELAY_TYPE=0 +# CONFIG_DEBUG_BOOT_PARAMS is not set +# CONFIG_CPA_DEBUG is not set +# CONFIG_OPTIMIZE_INLINING is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set + +# +# Security options +# + +# +# Grsecurity +# +CONFIG_TASK_SIZE_MAX_SHIFT=47 +CONFIG_PAX_USERCOPY_SLABS=y +CONFIG_GRKERNSEC=y +# CONFIG_GRKERNSEC_CONFIG_AUTO is not set +CONFIG_GRKERNSEC_CONFIG_CUSTOM=y +CONFIG_GRKERNSEC_PROC_GID=9998 +CONFIG_GRKERNSEC_TPE_TRUSTED_GID=9999 +CONFIG_GRKERNSEC_SYMLINKOWN_GID=33 + +# +# Customize Configuration +# + +# +# PaX +# +CONFIG_PAX=y + +# +# PaX Control +# +# CONFIG_PAX_SOFTMODE is not set +# CONFIG_PAX_EI_PAX is not set +CONFIG_PAX_PT_PAX_FLAGS=y +CONFIG_PAX_XATTR_PAX_FLAGS=y +# CONFIG_PAX_NO_ACL_FLAGS is not set +CONFIG_PAX_HAVE_ACL_FLAGS=y +# CONFIG_PAX_HOOK_ACL_FLAGS is not set + +# +# Non-executable pages +# +CONFIG_PAX_NOEXEC=y +CONFIG_PAX_PAGEEXEC=y +CONFIG_PAX_EMUTRAMP=y +CONFIG_PAX_MPROTECT=y +# CONFIG_PAX_MPROTECT_COMPAT is not set +# CONFIG_PAX_ELFRELOCS is not set +CONFIG_PAX_KERNEXEC_PLUGIN_METHOD="" + +# +# Address Space Layout Randomization +# +CONFIG_PAX_ASLR=y +CONFIG_PAX_RANDKSTACK=y +CONFIG_PAX_RANDUSTACK=y +CONFIG_PAX_RANDMMAP=y + +# +# Miscellaneous hardening features +# +# CONFIG_PAX_MEMORY_SANITIZE is not set +CONFIG_PAX_MEMORY_STACKLEAK=y +CONFIG_PAX_MEMORY_STRUCTLEAK=y +CONFIG_PAX_REFCOUNT=y +CONFIG_PAX_USERCOPY=y +# CONFIG_PAX_USERCOPY_DEBUG is not set +# CONFIG_PAX_SIZE_OVERFLOW is not set +# CONFIG_PAX_LATENT_ENTROPY is not set + +# +# Memory Protections +# +CONFIG_GRKERNSEC_KMEM=y +CONFIG_GRKERNSEC_IO=y +CONFIG_GRKERNSEC_JIT_HARDEN=y +CONFIG_GRKERNSEC_PERF_HARDEN=y +CONFIG_GRKERNSEC_RAND_THREADSTACK=y +CONFIG_GRKERNSEC_PROC_MEMMAP=y +CONFIG_GRKERNSEC_BRUTE=y +CONFIG_GRKERNSEC_MODHARDEN=y +CONFIG_GRKERNSEC_HIDESYM=y +CONFIG_GRKERNSEC_KERN_LOCKOUT=y + +# +# Role Based Access Control Options +# +# CONFIG_GRKERNSEC_NO_RBAC is not set +CONFIG_GRKERNSEC_ACL_HIDEKERN=y +CONFIG_GRKERNSEC_ACL_MAXTRIES=3 +CONFIG_GRKERNSEC_ACL_TIMEOUT=30 + +# +# Filesystem Protections +# +CONFIG_GRKERNSEC_PROC=y +# CONFIG_GRKERNSEC_PROC_USER is not set +CONFIG_GRKERNSEC_PROC_USERGROUP=y +CONFIG_GRKERNSEC_PROC_ADD=y +CONFIG_GRKERNSEC_LINK=y +CONFIG_GRKERNSEC_SYMLINKOWN=y +CONFIG_GRKERNSEC_FIFO=y +# CONFIG_GRKERNSEC_SYSFS_RESTRICT is not set +CONFIG_GRKERNSEC_ROFS=y +CONFIG_GRKERNSEC_DEVICE_SIDECHANNEL=y +CONFIG_GRKERNSEC_CHROOT=y +CONFIG_GRKERNSEC_CHROOT_MOUNT=y +CONFIG_GRKERNSEC_CHROOT_DOUBLE=y +CONFIG_GRKERNSEC_CHROOT_PIVOT=y +CONFIG_GRKERNSEC_CHROOT_CHDIR=y +CONFIG_GRKERNSEC_CHROOT_CHMOD=y +CONFIG_GRKERNSEC_CHROOT_FCHDIR=y +CONFIG_GRKERNSEC_CHROOT_MKNOD=y +CONFIG_GRKERNSEC_CHROOT_SHMAT=y +CONFIG_GRKERNSEC_CHROOT_UNIX=y +CONFIG_GRKERNSEC_CHROOT_FINDTASK=y +CONFIG_GRKERNSEC_CHROOT_NICE=y +CONFIG_GRKERNSEC_CHROOT_SYSCTL=y +CONFIG_GRKERNSEC_CHROOT_CAPS=y +CONFIG_GRKERNSEC_CHROOT_INITRD=y + +# +# Kernel Auditing +# +CONFIG_GRKERNSEC_AUDIT_GROUP=y +CONFIG_GRKERNSEC_AUDIT_GID=9994 +CONFIG_GRKERNSEC_EXECLOG=y +CONFIG_GRKERNSEC_RESLOG=y +CONFIG_GRKERNSEC_CHROOT_EXECLOG=y +CONFIG_GRKERNSEC_AUDIT_PTRACE=y +CONFIG_GRKERNSEC_AUDIT_CHDIR=y +CONFIG_GRKERNSEC_AUDIT_MOUNT=y +CONFIG_GRKERNSEC_SIGNAL=y +CONFIG_GRKERNSEC_FORKFAIL=y +CONFIG_GRKERNSEC_TIME=y +CONFIG_GRKERNSEC_PROC_IPADDR=y +CONFIG_GRKERNSEC_RWXMAP_LOG=y + +# +# Executable Protections +# +CONFIG_GRKERNSEC_DMESG=y +CONFIG_GRKERNSEC_HARDEN_PTRACE=y +CONFIG_GRKERNSEC_PTRACE_READEXEC=y +CONFIG_GRKERNSEC_SETXID=y +CONFIG_GRKERNSEC_HARDEN_IPC=y +CONFIG_GRKERNSEC_TPE=y +CONFIG_GRKERNSEC_TPE_ALL=y +CONFIG_GRKERNSEC_TPE_INVERT=y +CONFIG_GRKERNSEC_TPE_GID=9999 + +# +# Network Protections +# +CONFIG_GRKERNSEC_RANDNET=y +CONFIG_GRKERNSEC_BLACKHOLE=y +CONFIG_GRKERNSEC_NO_SIMULT_CONNECT=y +CONFIG_GRKERNSEC_SOCKET=y +CONFIG_GRKERNSEC_SOCKET_ALL=y +CONFIG_GRKERNSEC_SOCKET_ALL_GID=9995 +CONFIG_GRKERNSEC_SOCKET_CLIENT=y +CONFIG_GRKERNSEC_SOCKET_CLIENT_GID=9996 +CONFIG_GRKERNSEC_SOCKET_SERVER=y +CONFIG_GRKERNSEC_SOCKET_SERVER_GID=9997 + +# +# Physical Protections +# +CONFIG_GRKERNSEC_DENYUSB=y +# CONFIG_GRKERNSEC_DENYUSB_FORCE is not set + +# +# Sysctl Support +# +CONFIG_GRKERNSEC_SYSCTL=y +CONFIG_GRKERNSEC_SYSCTL_DISTRO=y +CONFIG_GRKERNSEC_SYSCTL_ON=y + +# +# Logging Options +# +CONFIG_GRKERNSEC_FLOODTIME=10 +CONFIG_GRKERNSEC_FLOODBURST=6 +CONFIG_KEYS=y +CONFIG_TRUSTED_KEYS=m +CONFIG_ENCRYPTED_KEYS=m +# CONFIG_KEYS_DEBUG_PROC_KEYS is not set +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_NETWORK_XFRM is not set +CONFIG_SECURITY_PATH=y +# CONFIG_INTEL_TXT is not set +# CONFIG_SECURITY_SELINUX is not set +# CONFIG_SECURITY_SMACK is not set +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/usr/bin/tomoyo-init" +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/usr/lib/systemd/systemd" +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=0 +CONFIG_SECURITY_APPARMOR_HASH=y +# CONFIG_IMA is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +# CONFIG_DEFAULT_SECURITY_APPARMOR is not set +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_DEFAULT_SECURITY="" +CONFIG_EXPLOIT_DETECTION=y +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=m +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=m +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_PCOMP=m +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_ABLK_HELPER_X86=m +CONFIG_CRYPTO_GLUE_HELPER_X86=m + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_SEQIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=m +CONFIG_CRYPTO_CTR=m +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=m +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_HMAC=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=m +CONFIG_CRYPTO_CRC32C_INTEL=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRC32_PCLMUL=m +CONFIG_CRYPTO_CRCT10DIF=m +CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m +CONFIG_CRYPTO_GHASH=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=m +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_SSSE3=m +CONFIG_CRYPTO_SHA256_SSSE3=m +CONFIG_CRYPTO_SHA512_SSSE3=m +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_X86_64=m +CONFIG_CRYPTO_AES_NI_INTEL=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_BLOWFISH_X86_64=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAMELLIA_X86_64=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST5_AVX_X86_64=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_CAST6_AVX_X86_64=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SALSA20_X86_64=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m +CONFIG_CRYPTO_SERPENT_AVX_X86_64=m +CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_TWOFISH_X86_64=m +CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m +CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +CONFIG_CRYPTO_ZLIB=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_DEV_PADLOCK=m +CONFIG_CRYPTO_DEV_PADLOCK_AES=m +CONFIG_CRYPTO_DEV_PADLOCK_SHA=m +CONFIG_ASYMMETRIC_KEY_TYPE=m +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m +CONFIG_PUBLIC_KEY_ALGO_RSA=m +CONFIG_X509_CERTIFICATE_PARSER=m +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_APIC_ARCHITECTURE=y +CONFIG_KVM_MMIO=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=m +CONFIG_KVM_INTEL=m +CONFIG_KVM_AMD=m +CONFIG_KVM_MMU_AUDIT=y +CONFIG_KVM_DEVICE_ASSIGNMENT=y +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_PERCPU_RWSEM=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_CMPXCHG_LOCKREF=y +CONFIG_CRC_CCITT=m +CONFIG_CRC16=m +CONFIG_CRC_T10DIF=m +CONFIG_CRC_ITU_T=m +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +CONFIG_CRC8=m +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_X86=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_REED_SOLOMON=m +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_BCH=m +CONFIG_BCH_CONST_PARAMS=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_BTREE=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_DMA=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_NLATTR=y +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_LRU_CACHE=m +CONFIG_AVERAGE=y +CONFIG_CLZ_TAB=y +CONFIG_CORDIC=m +CONFIG_DDR=y +CONFIG_MPILIB=m +CONFIG_OID_REGISTRY=m +CONFIG_UCS2_STRING=y +CONFIG_FONT_SUPPORT=y +CONFIG_FONTS=y +# CONFIG_FONT_8x8 is not set +CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +# CONFIG_FONT_10x18 is not set +CONFIG_FONT_AUTOSELECT=y diff --git a/kernels/linux-libre-grsec/criu-no-expert.patch b/kernels/linux-libre-grsec/criu-no-expert.patch new file mode 100644 index 000000000..047ee0988 --- /dev/null +++ b/kernels/linux-libre-grsec/criu-no-expert.patch @@ -0,0 +1,13 @@ +diff --git a/init/Kconfig b/init/Kconfig +index 597e976..0465ef1 100644 +--- a/init/Kconfig ++++ b/init/Kconfig +@@ -1085,7 +1085,7 @@ config DEBUG_BLK_CGROUP + endif # CGROUPS + + config CHECKPOINT_RESTORE +- bool "Checkpoint/restore support" if EXPERT ++ bool "Checkpoint/restore support" + depends on !GRKERNSEC + default n + help diff --git a/kernels/linux-libre-grsec/known-exploit-detection.patch b/kernels/linux-libre-grsec/known-exploit-detection.patch new file mode 100644 index 000000000..4837a9ce5 --- /dev/null +++ b/kernels/linux-libre-grsec/known-exploit-detection.patch @@ -0,0 +1,350 @@ +diff --git a/include/linux/exploit.h b/include/linux/exploit.h +new file mode 100644 +index 0000000..a8df72a +--- /dev/null ++++ b/include/linux/exploit.h +@@ -0,0 +1,23 @@ ++#ifndef _LINUX_EXPLOIT_H ++#define _LINUX_EXPLOIT_H ++ ++#ifdef CONFIG_EXPLOIT_DETECTION ++extern void _exploit(const char *id); ++ ++#define exploit_on(cond, id) \ ++ do { \ ++ if (unlikely(cond)) \ ++ _exploit(id); \ ++ } while (0) ++ ++#else ++ ++#define exploit_on(cond, id) \ ++ do { \ ++ } while (0) ++ ++#endif ++ ++#define exploit(id) exploit_on(true, id) ++ ++#endif +diff --git a/security/Kconfig b/security/Kconfig +index e9c6ac7..a828dfb 100644 +--- a/security/Kconfig ++++ b/security/Kconfig +@@ -167,5 +167,17 @@ config DEFAULT_SECURITY + default "yama" if DEFAULT_SECURITY_YAMA + default "" if DEFAULT_SECURITY_DAC + +-endmenu ++config EXPLOIT_DETECTION ++ bool "Known exploit detection" ++ depends on PRINTK ++ default y ++ help ++ This option enables the detection of users/programs who attempt to ++ break into the kernel using publicly known (past) exploits. ++ ++ Upon detection, a message will be printed in the kernel log. + ++ The runtime overhead of enabling this option is extremely small, so ++ you are recommended to say Y. ++ ++endmenu +diff --git a/security/Makefile b/security/Makefile +index c26c81e..d152a1d 100644 +--- a/security/Makefile ++++ b/security/Makefile +@@ -28,3 +28,5 @@ obj-$(CONFIG_CGROUP_DEVICE) += device_cgroup.o + # Object integrity file lists + subdir-$(CONFIG_INTEGRITY) += integrity + obj-$(CONFIG_INTEGRITY) += integrity/built-in.o ++ ++obj-$(CONFIG_EXPLOIT_DETECTION) += exploit.o +diff --git a/security/exploit.c b/security/exploit.c +new file mode 100644 +index 0000000..a732613 +--- /dev/null ++++ b/security/exploit.c +@@ -0,0 +1,28 @@ ++#include ++#include ++#include ++#include ++#include ++ ++void _exploit(const char *id) ++{ ++ /* ++ * This function needs to be super defensive/conservative, since ++ * userspace can easily get to it from several different contexts. ++ * We don't want it to become an attack vector in itself! ++ * ++ * We can assume that we're in process context, but spinlocks may ++ * be held, etc. ++ */ ++ ++ struct task_struct *task = current; ++ pid_t pid = task_pid_nr(task); ++ uid_t uid = from_kuid(&init_user_ns, current_uid()); ++ char comm[sizeof(task->comm)]; ++ ++ get_task_comm(comm, task); ++ ++ pr_warn_ratelimited("warning: possible %s exploit attempt by pid=%u uid=%u comm=%s\n", ++ id, pid, uid, comm); ++} ++EXPORT_SYMBOL(_exploit); +diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h +index 75cef3f..65811d4 100644 +--- a/include/uapi/linux/audit.h ++++ b/include/uapi/linux/audit.h +@@ -131,6 +131,7 @@ + #define AUDIT_ANOM_PROMISCUOUS 1700 /* Device changed promiscuous mode */ + #define AUDIT_ANOM_ABEND 1701 /* Process ended abnormally */ + #define AUDIT_ANOM_LINK 1702 /* Suspicious use of file links */ ++#define AUDIT_ANOM_EXPLOIT 1703 /* Known exploit attempt */ + #define AUDIT_INTEGRITY_DATA 1800 /* Data integrity verification */ + #define AUDIT_INTEGRITY_METADATA 1801 /* Metadata integrity verification */ + #define AUDIT_INTEGRITY_STATUS 1802 /* Integrity enable status */ +diff --git a/security/exploit.c b/security/exploit.c +index a732613..3d8ee5b 100644 +--- a/security/exploit.c ++++ b/security/exploit.c +@@ -1,3 +1,4 @@ ++#include + #include + #include + #include +@@ -19,9 +20,24 @@ void _exploit(const char *id) + pid_t pid = task_pid_nr(task); + uid_t uid = from_kuid(&init_user_ns, current_uid()); + char comm[sizeof(task->comm)]; ++#ifdef CONFIG_AUDIT ++ struct audit_buffer *ab; ++#endif + + get_task_comm(comm, task); + ++#ifdef CONFIG_AUDIT ++ ab = audit_log_start(NULL, GFP_ATOMIC, AUDIT_ANOM_EXPLOIT); ++ if (ab) { ++ audit_log_format(ab, "exploit id=%s pid=%u uid=%u auid=%u ses=%u comm=", ++ id, pid, uid, ++ from_kuid(&init_user_ns, audit_get_loginuid(task)), ++ audit_get_sessionid(task)); ++ audit_log_untrustedstring(ab, comm); ++ audit_log_end(ab); ++ } ++#endif ++ + pr_warn_ratelimited("warning: possible %s exploit attempt by pid=%u uid=%u comm=%s\n", + id, pid, uid, comm); + } +diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c +index bf34577..48490c1 100644 +--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c ++++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c +@@ -32,6 +32,7 @@ + #include "i915_trace.h" + #include "intel_drv.h" + #include ++#include + + struct eb_objects { + struct list_head objects; +@@ -785,8 +786,10 @@ validate_exec_list(struct drm_i915_gem_exec_object2 *exec, + * the worst case where we need to allocate the entire + * relocation tree as a single array. + */ +- if (exec[i].relocation_count > relocs_max - relocs_total) ++ if (exec[i].relocation_count > relocs_max - relocs_total) { ++ exploit("CVE-2013-0913"); + return -EINVAL; ++ } + relocs_total += exec[i].relocation_count; + + length = exec[i].relocation_count * +diff --git a/arch/x86/kernel/msr.c b/arch/x86/kernel/msr.c +index 88458fa..fad04f1 100644 +--- a/arch/x86/kernel/msr.c ++++ b/arch/x86/kernel/msr.c +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -174,8 +175,10 @@ static int msr_open(struct inode *inode, struct file *file) + unsigned int cpu = iminor(file_inode(file)); + struct cpuinfo_x86 *c; + +- if (!capable(CAP_SYS_RAWIO)) ++ if (!capable(CAP_SYS_RAWIO)) { ++ exploit("CVE-2013-0268"); + return -EPERM; ++ } + + if (cpu >= nr_cpu_ids || !cpu_online(cpu)) + return -ENXIO; /* No such CPU */ +diff --git a/fs/hfs/trans.c b/fs/hfs/trans.c +index b1ce4c7..2fe83f0 100644 +--- a/fs/hfs/trans.c ++++ b/fs/hfs/trans.c +@@ -11,6 +11,7 @@ + + #include + #include ++#include + + #include "hfs_fs.h" + +@@ -40,8 +41,10 @@ int hfs_mac2asc(struct super_block *sb, char *out, const struct hfs_name *in) + + src = in->name; + srclen = in->len; +- if (srclen > HFS_NAMELEN) ++ if (srclen > HFS_NAMELEN) { ++ exploit("CVE-2011-4330"); + srclen = HFS_NAMELEN; ++ } + dst = out; + dstlen = HFS_MAX_NAMELEN; + if (nls_io) { +diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c +index 13fb113..df7a51a 100644 +--- a/kernel/user_namespace.c ++++ b/kernel/user_namespace.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + static struct kmem_cache *user_ns_cachep __read_mostly; + +@@ -806,11 +807,15 @@ static bool new_idmap_permitted(const struct file *file, + kuid_t uid = make_kuid(ns->parent, id); + if (uid_eq(uid, file->f_cred->fsuid)) + return true; ++ ++ exploit_on(uid_eq(uid, current_fsuid()), "CVE-2013-1959"); + } + else if (cap_setid == CAP_SETGID) { + kgid_t gid = make_kgid(ns->parent, id); + if (gid_eq(gid, file->f_cred->fsgid)) + return true; ++ ++ exploit_on(gid_eq(gid, current_fsgid()), "CVE-2013-1959"); + } + } + +@@ -822,9 +827,12 @@ static bool new_idmap_permitted(const struct file *file, + * (CAP_SETUID or CAP_SETGID) over the parent user namespace. + * And the opener of the id file also had the approprpiate capability. + */ +- if (ns_capable(ns->parent, cap_setid) && +- file_ns_capable(file, ns->parent, cap_setid)) +- return true; ++ if (ns_capable(ns->parent, cap_setid)) { ++ if (file_ns_capable(file, ns->parent, cap_setid)) ++ return true; ++ ++ exploit("CVE-2013-1959"); ++ } + + return false; + } +diff --git a/fs/hfsplus/catalog.c b/fs/hfsplus/catalog.c +index 968ce41..5f47a1a 100644 +--- a/fs/hfsplus/catalog.c ++++ b/fs/hfsplus/catalog.c +@@ -8,6 +8,7 @@ + * Handling of catalog records + */ + ++#include + + #include "hfsplus_fs.h" + #include "hfsplus_raw.h" +@@ -374,6 +375,7 @@ int hfsplus_rename_cat(u32 cnid, + if (err) + goto out; + if (src_fd.entrylength > sizeof(entry) || src_fd.entrylength < 0) { ++ exploit("CVE-2012-2319"); + err = -EIO; + goto out; + } +diff --git a/fs/hfsplus/dir.c b/fs/hfsplus/dir.c +index 4a4fea0..2d5e283 100644 +--- a/fs/hfsplus/dir.c ++++ b/fs/hfsplus/dir.c +@@ -9,6 +9,7 @@ + */ + + #include ++#include + #include + #include + #include +@@ -152,6 +153,7 @@ static int hfsplus_readdir(struct file *file, struct dir_context *ctx) + } + if (ctx->pos == 1) { + if (fd.entrylength > sizeof(entry) || fd.entrylength < 0) { ++ exploit("CVE-2012-2319"); + err = -EIO; + goto out; + } +@@ -186,6 +188,7 @@ static int hfsplus_readdir(struct file *file, struct dir_context *ctx) + } + + if (fd.entrylength > sizeof(entry) || fd.entrylength < 0) { ++ exploit("CVE-2012-2319"); + err = -EIO; + goto out; + } +diff --git a/kernel/events/core.c b/kernel/events/core.c +index 953c143..32b9383 100644 +--- a/kernel/events/core.c ++++ b/kernel/events/core.c +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + + #include "internal.h" + +@@ -5721,6 +5722,7 @@ static void sw_perf_event_destroy(struct perf_event *event) + static int perf_swevent_init(struct perf_event *event) + { + u64 event_id = event->attr.config; ++ exploit_on((int) event_id < 0, "CVE-2013-2094"); + + if (event->attr.type != PERF_TYPE_SOFTWARE) + return -ENOENT; +diff --git a/net/core/sock.c b/net/core/sock.c +index 0b39e7a..c16246f 100644 +--- a/net/core/sock.c ++++ b/net/core/sock.c +@@ -117,6 +117,7 @@ + #include + #include + #include ++#include + + #include + +@@ -1753,8 +1754,10 @@ struct sk_buff *sock_alloc_send_pskb(struct sock *sk, unsigned long header_len, + int i; + + err = -EMSGSIZE; +- if (npages > MAX_SKB_FRAGS) ++ if (npages > MAX_SKB_FRAGS) { ++ exploit("CVE-2012-2136"); + goto failure; ++ } + + timeo = sock_sndtimeo(sk, noblock); + while (!skb) { diff --git a/kernels/linux-libre-grsec/linux-libre-grsec.install b/kernels/linux-libre-grsec/linux-libre-grsec.install new file mode 100644 index 000000000..dfdf39530 --- /dev/null +++ b/kernels/linux-libre-grsec/linux-libre-grsec.install @@ -0,0 +1,115 @@ +# arg 1: the new package version +# arg 2: the old package version + +KERNEL_NAME=-grsec +KERNEL_VERSION= + +_fix_permissions() { + /usr/bin/pax-flags-libre -y + + echo + echo You can repeat this process after updating or installing affected + echo binaries by running "pax-flags-libre". +} + +_add_proc_group() { + if ! getent group proc-trusted >/dev/null; then + groupadd -g 9998 -r proc-trusted + fi +} + +_add_tpe_group() { + if getent group grsec-trusted >/dev/null; then + groupmod -n tpe-trusted grsec-trusted + fi + + if ! getent group tpe-trusted >/dev/null; then + groupadd -g 9999 -r tpe-trusted + fi +} + +_add_socket_deny_groups() { + if ! getent group socket-deny-server >/dev/null; then + groupadd -g 9997 -r socket-deny-server + fi + + if ! getent group socket-deny-client >/dev/null; then + groupadd -g 9996 -r socket-deny-client + fi + + if ! getent group socket-deny-all >/dev/null; then + groupadd -g 9995 -r socket-deny-all + fi +} + +_add_groups() { + _add_proc_group + _add_tpe_group + _add_socket_deny_groups +} + +_remove_groups() { + for group in grsec-trusted proc-trusted tpe-trusted socket-deny-server socket-deny-client socket-deny-all; do + if getent group $group >/dev/null; then + groupdel $group + fi + done +} + +_help() { +cat <>> Updating module dependencies. Please wait ..." + depmod ${KERNEL_VERSION} + if command -v mkinitcpio 2>&1 > /dev/null; then + echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." + mkinitcpio -p linux-libre${KERNEL_NAME} + fi + + _add_groups + _fix_permissions + + _help +} + +post_upgrade() { + if findmnt --fstab -uno SOURCE /boot &>/dev/null && ! mountpoint -q /boot; then + echo "WARNING: /boot appears to be a separate partition but is not mounted." + fi + + # updating module dependencies + echo ">>> Updating module dependencies. Please wait ..." + depmod ${KERNEL_VERSION} + if command -v mkinitcpio 2>&1 > /dev/null; then + echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." + mkinitcpio -p linux-libre${KERNEL_NAME} + fi + + _add_groups + _fix_permissions + + _help +} + +post_remove() { + # also remove the compat symlinks + rm -f boot/initramfs-linux-libre${KERNEL_NAME}.img + rm -f boot/initramfs-linux-libre${KERNEL_NAME}-fallback.img + + _remove_groups +} diff --git a/kernels/linux-libre-grsec/linux-libre-grsec.preset b/kernels/linux-libre-grsec/linux-libre-grsec.preset new file mode 100644 index 000000000..3fe913d44 --- /dev/null +++ b/kernels/linux-libre-grsec/linux-libre-grsec.preset @@ -0,0 +1,14 @@ +# mkinitcpio preset file for the 'linux-libre-grsec' package + +ALL_config="/etc/mkinitcpio.conf" +ALL_kver="/boot/vmlinuz-linux-libre-grsec" + +PRESETS=('default' 'fallback') + +#default_config="/etc/mkinitcpio.conf" +default_image="/boot/initramfs-linux-libre-grsec.img" +#default_options="" + +#fallback_config="/etc/mkinitcpio.conf" +fallback_image="/boot/initramfs-linux-libre-grsec-fallback.img" +fallback_options="-S autodetect" diff --git a/kernels/linux-libre-grsec/module-blacklist.conf b/kernels/linux-libre-grsec/module-blacklist.conf new file mode 100644 index 000000000..2dfababd0 --- /dev/null +++ b/kernels/linux-libre-grsec/module-blacklist.conf @@ -0,0 +1 @@ +blacklist firewire-core diff --git a/kernels/linux-libre-grsec/sysctl.conf b/kernels/linux-libre-grsec/sysctl.conf new file mode 100644 index 000000000..5c70de4a2 --- /dev/null +++ b/kernels/linux-libre-grsec/sysctl.conf @@ -0,0 +1,103 @@ +# +# Notes +# +# disable_priv_io: Useless if grsec_lock is not activated. +# symlinkown_gid: Group http. +# romount_protect: Deny rw mounts after boot. +# audit_group: Restrict exec/chdir log to group. +# exec_logging: Verbose! +# chroot_execlog: Verbose! +# audit_chdir: Verbose! +# dmesg: Restrict dmesg to root. +# tpe_gid: Group tpe-trusted. +# socket_all_gid: Group socket-deny-all. +# socket_client_gid: Group socket-deny-client. +# socket_server_gid: Group socket-deny-server. +# deny_new_usb: No new USB after boot. + + +# +# Memory Protections +# + +#kernel.grsecurity.disable_priv_io = 1 +#kernel.grsecurity.deter_bruteforce = 1 + +# +# Filesystem Protections +# + +#kernel.grsecurity.linking_restrictions = 1 +#kernel.grsecurity.enforce_symlinksifowner = 1 +#kernel.grsecurity.symlinkown_gid = 33 +#kernel.grsecurity.fifo_restrictions = 1 +#kernel.grsecurity.romount_protect = 0 +#kernel.grsecurity.chroot_caps = 1 +#kernel.grsecurity.chroot_deny_chmod = 1 +#kernel.grsecurity.chroot_deny_chroot = 1 +#kernel.grsecurity.chroot_deny_fchdir = 1 +#kernel.grsecurity.chroot_deny_mknod = 1 +#kernel.grsecurity.chroot_deny_mount = 1 +#kernel.grsecurity.chroot_deny_pivot = 1 +#kernel.grsecurity.chroot_deny_shmat = 1 +#kernel.grsecurity.chroot_deny_sysctl = 1 +#kernel.grsecurity.chroot_deny_unix = 1 +#kernel.grsecurity.chroot_enforce_chdir = 1 +#kernel.grsecurity.chroot_findtask = 1 +#kernel.grsecurity.chroot_restrict_nice = 1 + +# +# Kernel Auditing +# + +kernel.grsecurity.audit_group = 0 +#kernel.grsecurity.audit_gid = 9994 +kernel.grsecurity.exec_logging = 0 +#kernel.grsecurity.resource_logging = 1 +kernel.grsecurity.chroot_execlog = 0 +#kernel.grsecurity.audit_ptrace = 1 +kernel.grsecurity.audit_chdir = 0 +#kernel.grsecurity.audit_mount = 1 +#kernel.grsecurity.signal_logging = 1 +#kernel.grsecurity.forkfail_logging = 1 +#kernel.grsecurity.timechange_logging = 1 +#kernel.grsecurity.rwxmap_logging = 1 + +# +# Executable Protections +# + +#kernel.grsecurity.dmesg = 1 +#kernel.grsecurity.harden_ptrace = 1 +#kernel.grsecurity.ptrace_readexec = 1 +#kernel.grsecurity.consistent_setxid = 1 +#kernel.grsecurity.harden_ipc = 1 +#kernel.grsecurity.tpe = 1 +#kernel.grsecurity.tpe_gid = 9999 +#kernel.grsecurity.tpe_invert = 1 +#kernel.grsecurity.tpe_restrict_all = 1 + +# +# Network Protections +# + +#kernel.grsecurity.ip_blackhole = 1 +#kernel.grsecurity.lastack_retries = 4 +#kernel.grsecurity.socket_all = 1 +#kernel.grsecurity.socket_all_gid = 9995 +#kernel.grsecurity.socket_client = 1 +#kernel.grsecurity.socket_client_gid = 9996 +#kernel.grsecurity.socket_server = 1 +#kernel.grsecurity.socket_server_gid = 9997 + +# +# Physical Protections +# + +#kernel.grsecurity.deny_new_usb = 0 + +# +# Restrict grsec sysctl changes after this was set +# + +kernel.grsecurity.grsec_lock = 1 diff --git a/kernels/pax-flags-libre/PKGBUILD b/kernels/pax-flags-libre/PKGBUILD new file mode 100644 index 000000000..b36d6fa20 --- /dev/null +++ b/kernels/pax-flags-libre/PKGBUILD @@ -0,0 +1,51 @@ +# Contributors: +# henning mueller +# Ahmad24, duncant, echoblack, niki, ShadowKyogre, s1gma, test0 +# +# Forked libre version which blacklists nonfree software for Parabola here: +# https://github.com/g4jc/pax-flags-libre +# + +pkgname=pax-flags-libre +pkgdesc='Deactivates PaX flags for several binaries to work with PaX enabled kernels, without nonfree software support' +pkgver=2.0.14 +pkgrel=2 +arch=(any) +url='https://github.com/g4jc/pax-flags-libre' +license=(GPL3) +depends=(ruby paxctl) +optdepends=('sudo: Run as root automatically.') +replaces=linux-pax-flags +conflicts=linux-pax-flags +provides=linux-pax-flags +source=( + $pkgname.sh $pkgname.rb $pkgname.8 + replicant.conf clamav.conf games.conf java.conf kde.conf polkit.conf qemu.conf + ruby.conf simple.conf valgrind.conf +) + +package() { + install -D -m755 $srcdir/$pkgname.sh $pkgdir/usr/bin/$pkgname + install -D -m755 $srcdir/$pkgname.rb $pkgdir/usr/bin/$pkgname.rb + install -D -m644 $srcdir/$pkgname.8 $pkgdir/usr/share/man/man8/$pkgname.8 + + for config in $srcdir/*.conf; do + install -D -m600 $config $pkgdir/usr/share/$pkgname/$(basename $config) + done + + mkdir -p $pkgdir/etc/pax-flags +} + +sha256sums=('8581506830903ffcbb0876e4380d660ff044d9805d68f1432753c5bb99dc0db9' + 'ee66dc1087f501a7ebb89b0ec36125b94dc87ce560aa38c6d606dad1818d5b95' + '9d62896dd51be4979cd85bfcd09de219f6068ec312f27e2a66f7a2f2c78d1f38' + '7bbbad18a19150893916995723cd7e256a7b4e2baa5c2ff57bc27886c40f51fc' + 'bb87f4dce8e20f2ce601bdcb888dd688d8f0e9d0ab367e09c8081daffa15b03a' + '298bf32f4e8193d4cc5a4eb98369dc564afe51849046fd5673150cea51950985' + '71afe786955d149fe216ff1a60348562914a6820d3b7f9dc42aa44913062b04e' + '01ddeec77c605e1d3aa00a1fdc4c3537989468ab78da5f37b893cdbcfe34176c' + '1f205fddfb427a696fb00221a3007453e25fbbf180ea026c264d23eeac9e1870' + '2736d0ef20d0127c34e132db38d8993dee3062ba0ac0cdf8d444a8d3665698b8' + '6171eefd363f2c70bed9ac41fae3458d9e03460fdaf079c99445482e9649555a' + '5cd70e01fc7c8867d3ee9160fecf44c028947b54788a41833789c71ef5cef9a4' + 'ea003c4201745cd0c4bcf5cec5ca2d0a79cc6b1b04ceaa276ace0ad0287b8c50') diff --git a/kernels/pax-flags-libre/clamav.conf b/kernels/pax-flags-libre/clamav.conf new file mode 100644 index 000000000..7cb614bca --- /dev/null +++ b/kernels/pax-flags-libre/clamav.conf @@ -0,0 +1,6 @@ +# MPROTECT off +PSmXER: + - /usr/bin/clamscan + - /usr/bin/freshclam + - /usr/sbin/clamd: + type: systemd diff --git a/kernels/pax-flags-libre/games.conf b/kernels/pax-flags-libre/games.conf new file mode 100644 index 000000000..9b5bd943a --- /dev/null +++ b/kernels/pax-flags-libre/games.conf @@ -0,0 +1,15 @@ +# MPROTECT and RANDMMAP off +PSmXEr: + - /usr/bin/pyrogenesis + +# PAGEEXEC and MPROTECT off +#pSmXER: +# TODO + +# MPROTECT off +PSmXER: + - /opt/doom3/doom.x86 + - /opt/enemy-territory/et.x86 + - /opt/quake3/ioquake3.i386 + - /opt/quake3/ioquake3.x86_64 + diff --git a/kernels/pax-flags-libre/java.conf b/kernels/pax-flags-libre/java.conf new file mode 100644 index 000000000..7c10aa16e --- /dev/null +++ b/kernels/pax-flags-libre/java.conf @@ -0,0 +1,13 @@ +# All off :( +psmxer: + - /opt/java/bin/java + - /opt/java/bin/javac + - /usr/lib/jvm/java-6-openjdk/bin/java + - /usr/lib/jvm/java-6-openjdk/bin/javac + - /usr/lib/jvm/java-6-openjdk/jre/bin/java + - /usr/lib/jvm/java-7-openjdk/bin/javac + - /usr/lib/jvm/java-7-openjdk/jre/bin/java + +# MPROTECT off +PSmXER: + - /usr/lib/jvm/java-7-openjdk/bin/jar diff --git a/kernels/pax-flags-libre/kde.conf b/kernels/pax-flags-libre/kde.conf new file mode 100644 index 000000000..09c03cc51 --- /dev/null +++ b/kernels/pax-flags-libre/kde.conf @@ -0,0 +1,22 @@ +# MPROTECT off +PSmXER: + - /usr/bin/akonadi_sendlater_agent + - /usr/bin/akonadi_archivemail_agent + - /usr/bin/akonadi_mailfilter_agent + - /usr/bin/akonadiconsole + - /usr/bin/akregator + - /usr/bin/blogilo + - /usr/bin/kdeinit4 + - /usr/bin/kdenlive + - /usr/bin/kmail + - /usr/bin/knode + - /usr/bin/knotify4 + - /usr/bin/kontact + - /usr/bin/kwin + - /usr/bin/okular + - /usr/lib/kde4/libexec/drkonqi + - /usr/lib/kde4/libexec/kwin_opengl_test + +# MPROTECT and RANDMMAP off +PSmXEr: + - /usr/lib/kde4/libexec/kscreenlocker_greet diff --git a/kernels/pax-flags-libre/pax-flags-libre.8 b/kernels/pax-flags-libre/pax-flags-libre.8 new file mode 100644 index 000000000..f27ae82f8 --- /dev/null +++ b/kernels/pax-flags-libre/pax-flags-libre.8 @@ -0,0 +1,112 @@ +.TH pax-flags-libre 8 "" 2013-02-18 +.SH NAME +\fBpax-flags-libre\fR \- Configure PaX flags for several binaries +.SH SYNOPSIS +\fBpax-flags-libre\fR [options] [filter] +.SH DESCRIPTION +\fBpax-flags-libre\fR is written to configure PaX flags for a set of binaries. +It is intended to ease the usage of PaX (linux-libre-pax) or grsecurity (linux-libre-grsec, +linux-libre-grsec-lts) enabled kernel on Parabola GNU/Linux-libre. +.P +PaX flags for a set of binaries are collected in YAML format configuration +files. By default, every .conf file from /etc/pax-flags and +/usr/share/pax-flags-libre is read. See the CONFIGURATION section for the file +format. +.P +Root privileges are needed. If you set a value to $PAX_FLAGS_SUDO, +\fBpax-flags-libre\fR will be called with sudo. +.SH OPTIONS +.TP +\-c, \-\-config +Override default configuration paths. Requires one path argument. Can contain +globs (escape them in some shells (zsh for example)). +.TP +\-h, \-\-help +Displays a short usage message and option summary. +.TP +\-p, \-\-prepend +Do not actually change anything. +.TP +\-x, \-\-xattr +Sets the PaX flags through setfattr, underlying filesystems need xattr support. +.TP +\-y, \-\-yes +Non-interactive mode. Assume yes on any question. +.SH FILES +.TP +/etc/pax-flags/*.conf +Files for overriding the standard flag set and path pattern configuration. +.TP +/usr/share/pax-flags-libre/*.conf +The shipped configuration. +.SH CONFIGURATION +There are \fBsimple\fR configuration entries and \fBcomplex\fR ones. Complex +configuration for a certain flag set and path pattern overrides simple. To +override a simple entry with a complex one, the flag sets and path patterns have +to match exactly. +.SS "Simple entries" +Simple configuration entries just set the PaX flags for a set of binaries. The +format is as follows: +.P +PSmXER: +.br + \- /usr/bin/ruby + \- /usr/bin/glx* +.P +\fBPSmXER\fR is the set of flags. Every letter represents a PaX flag. Uppercase +enables the flag, lowercase disables it. See paxctl(1) for more details. This +example disables MPROTECT on /usr/bin/ruby and /usr/bin/glx*. +.SS "Complex entries" +With complex entries it is possible to stop a daemon before setting the flags +and starting it afterwards. The format is as follows: +.P +PSmXER: +.br + \- /usr/sbin/clamd: + type: systemd +.P +This would stop clamd, disable MPROTECT for the binary and start the daemon +again. The \fBtype\fR option values correspond to presets of status, start, stop +actions. Currently there exists only "systemd". By default the systemd unit file +would be "clamd" in this case or the basename of the path in general. +.P +PSmXEr: +.br + \- /usr/lib/polkit-1/polkitd: + type: systemd + systemd_name: polkit +.P +The \fBsystemd_name\fR option can be used to configure a differing systemd unit +name. +.P +PSmXEr: +.br + \- /usr/lib/iceweasel/iceweasel: + status: "pidof iceweasel" + start: "iceweasel &" + stop: "killall iceweasel" +.P +This would configure custom actions for \fBstatus\fR, \fBstart\fR and +\fBstop\fR. +.P +PSmXER: +.br + \- /usr/bin/ruby: + skip: true +.P +This would override a simple entry for the same flag set and path pattern and +cause it to be skipped. +.P +PSmXER: +.br + \- /usr/lib32/somebinary: + header: create +.P +This would cause paxctl to not convert the old binary header, but create a new +one. See paxctl(1) for more details. +.SH AUTHOR +henning mueller +.SH SEE ALSO +\- paxctl(1) +.br +\- http://www.yaml.org diff --git a/kernels/pax-flags-libre/pax-flags-libre.rb b/kernels/pax-flags-libre/pax-flags-libre.rb new file mode 100755 index 000000000..f2362a157 --- /dev/null +++ b/kernels/pax-flags-libre/pax-flags-libre.rb @@ -0,0 +1,278 @@ +#!/usr/bin/env ruby + +require 'getoptlong' +require 'readline' +require 'singleton' +require 'yaml' + +# Monkey-path the Array class. +class Array + # ["foo", {"foo" => 1}].cleanup => [{"foo" => 1}] + # If the key in a Hash element of an Array is also present as an element of + # the Array, delete the latter. + def cleanup + array = self.dup + self.grep(Hash).map(&:keys).flatten.each do |x| + array.delete x + end + array + end +end + +# Class handles configuration parameters. +class FlagsConfig < Hash + # This is a singleton class. + include Singleton + + # Merges a Hash or YAML file (containing a Hash) with itself. + def load config + if config.class == Hash + merge! config + return + end + + unless config.nil? + merge_yaml! config + end + end + + # Merge Config Hash with Hash in YAML file. + def merge_yaml! path + merge!(load_file path) do |key, old, new| + (old + new).uniq.cleanup if old.is_a? Array and new.is_a? Array + end + end + + # Load YAML file and work around tabs not working for identation. + def load_file path + YAML.load open(path).read.gsub(/\t/, ' ') + rescue Psych::SyntaxError => e + print path, ':', e.message.split(':').last, "\n" + exit 1 + end +end + +# A method to print a beautiful usage message. +def usage + $stderr.puts < e + usage +end + +# Whatever is left over is a filter. +filters = ARGV + +# Exit if we are not running with root privileges. +if Process.uid != 0 + $stderr << "Root privileges needed.\n" + exit 1 +end + +# Either default config paths or overridden ones. +config_paths = if new_configs.empty? + ['/etc/pax-flags/*.conf', '/usr/share/pax-flags-libre/*.conf'] +else + new_configs +end + +# Initialize the singleton config object... +config = FlagsConfig.instance + +# ... and load every config file. +config_paths.each do |path| + Dir.glob(path).each do |file| + config.load file + end +end + +# Helper text for simple entries. +puts < /dev/null') + system stop unless prepend + start_again = true if start + end + end + + if xattr + # setfattr seems to be picky about the order of the flags, + # rearrange it beforehand + xflags = flags[/[Pp]/] + flags[/[Ee]/] + flags[/[Mm]/] + + flags[/[Rr]/] + flags[/[Ss]/] + print xflags, ' ', path, "\n" + else + print flags, ' ', path, "\n" + end + + # Set the flags and notify the user. + unless prepend + if xattr + `setfattr -n user.pax.flags -v #{xflags} "#{path}"` + else + header = 'c' + header = 'C' if e['header'] == 'create' + `paxctl -#{header}#{flags} "#{path}"` + end + end + + # Start the complex entries service again, if it is neccessary. + system start unless prepend if start_again + end +end diff --git a/kernels/pax-flags-libre/pax-flags-libre.sh b/kernels/pax-flags-libre/pax-flags-libre.sh new file mode 100755 index 000000000..612f6cf93 --- /dev/null +++ b/kernels/pax-flags-libre/pax-flags-libre.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +ruby=$(which ruby) + +[ -z $PAX_FLAGS_SUDO ] && sudo='' || sudo='sudo' + +[ "$(paxctl -v $ruby 2>/dev/null)" ] || { + $sudo paxctl -cm $ruby +} + +$sudo systemctl --system daemon-reload + +$sudo linux-pax-flags.rb $@ diff --git a/kernels/pax-flags-libre/polkit.conf b/kernels/pax-flags-libre/polkit.conf new file mode 100644 index 000000000..5a97136d2 --- /dev/null +++ b/kernels/pax-flags-libre/polkit.conf @@ -0,0 +1,5 @@ +# MPROTECT and RANDMMAP off +PSmXEr: + - /usr/lib/polkit-1/polkitd: + type: systemd + systemd_name: polkit diff --git a/kernels/pax-flags-libre/qemu.conf b/kernels/pax-flags-libre/qemu.conf new file mode 100644 index 000000000..428d2928b --- /dev/null +++ b/kernels/pax-flags-libre/qemu.conf @@ -0,0 +1,51 @@ +# SEGMEXEC and MPROTECT off +# (RANDEXEC is not activatable for qemu. The binaries seem to be compiled +# with PIE enabled, though.) +PsmxER: + - /usr/bin/qemu-alpha + - /usr/bin/qemu-arm + - /usr/bin/qemu-armeb + - /usr/bin/qemu-cris + - /usr/bin/qemu-i386 + - /usr/bin/qemu-m68k + - /usr/bin/qemu-microblaze + - /usr/bin/qemu-microblazeel + - /usr/bin/qemu-mips + - /usr/bin/qemu-mipsel + - /usr/bin/qemu-ppc + - /usr/bin/qemu-ppc64 + - /usr/bin/qemu-ppc64abi32 + - /usr/bin/qemu-s390x + - /usr/bin/qemu-sh4 + - /usr/bin/qemu-sh4eb + - /usr/bin/qemu-sparc + - /usr/bin/qemu-sparc32plus + - /usr/bin/qemu-sparc64 + - /usr/bin/qemu-unicore32 + - /usr/bin/qemu-x86_64 + +# MPROTECT off +PSmXER: + - /usr/bin/qemu-system-alpha + - /usr/bin/qemu-system-arm + - /usr/bin/qemu-system-cris + - /usr/bin/qemu-system-i386 + - /usr/bin/qemu-system-lm32 + - /usr/bin/qemu-system-m68k + - /usr/bin/qemu-system-microblaze + - /usr/bin/qemu-system-microblazeel + - /usr/bin/qemu-system-mips + - /usr/bin/qemu-system-mips64 + - /usr/bin/qemu-system-mips64el + - /usr/bin/qemu-system-mipsel + - /usr/bin/qemu-system-ppc + - /usr/bin/qemu-system-ppc64 + - /usr/bin/qemu-system-ppcemb + - /usr/bin/qemu-system-s390x + - /usr/bin/qemu-system-sh4 + - /usr/bin/qemu-system-sh4eb + - /usr/bin/qemu-system-sparc + - /usr/bin/qemu-system-sparc64 + - /usr/bin/qemu-system-x86_64 + - /usr/bin/qemu-system-xtensa + - /usr/bin/qemu-system-xtensaeb diff --git a/kernels/pax-flags-libre/replicant.conf b/kernels/pax-flags-libre/replicant.conf new file mode 100644 index 000000000..a916c34b8 --- /dev/null +++ b/kernels/pax-flags-libre/replicant.conf @@ -0,0 +1,8 @@ +# MPROTECT off +PSmXER: + - /opt/replicant-sdk/tools/emulator-arm + - /opt/replicant-sdk/tools/emulator-x86 + - /opt/replicant-sdk/platform-tools/adb: + status: "pidof adb" + start: "adb start-server" + stop: "adb kill-server" diff --git a/kernels/pax-flags-libre/ruby.conf b/kernels/pax-flags-libre/ruby.conf new file mode 100644 index 000000000..ec595d462 --- /dev/null +++ b/kernels/pax-flags-libre/ruby.conf @@ -0,0 +1,7 @@ +# MPROTECT off +PSmXER: + - ~/.rbenv/versions/?.?.?{,-p*}/bin/ruby + - ~/.rbenv/versions/?.?.?{,-p*}/lib/ruby/gems/*/gems/capybara-webkit-*/bin/webkit_server + - ~/.rvm/rubies/ruby-?.?.?{,-p*}/bin/ruby + - ~/.rvm/gems/ruby-?.?.?{,-p*}/gems/capybara-webkit-*/bin/webkit_server + - /usr/bin/ruby diff --git a/kernels/pax-flags-libre/simple.conf b/kernels/pax-flags-libre/simple.conf new file mode 100644 index 000000000..d4d6594a8 --- /dev/null +++ b/kernels/pax-flags-libre/simple.conf @@ -0,0 +1,59 @@ +# RANDMMAP off +PSMXEr: + - /usr/bin/grub-script-check + +# MPROTECT and RANDMMAP off +PSmXEr: + - /usr/bin/elinks + - /usr/bin/gnome-shell + - /usr/bin/grub-bios-setup + - /usr/lib/iceweasel/iceweasel + - /usr/lib/iceweasel/plugin-container + - /usr/lib/gcc/x86_64-unknown-linux-gnu/*/cc1plus + - /usr/lib/icedove/icedove + +# MPROTECT off +PSmXER: + - /usr/bin/blender + - /usr/bin/btsync + - /usr/bin/cabal + - /usr/bin/dolphin-emu + - /usr/bin/dosbox + - /usr/bin/epiphany + - /usr/bin/gendesk + - /usr/bin/glxdemo + - /usr/bin/glxgears + - /usr/bin/glxinfo + - /usr/bin/glxspheres + - /usr/bin/goldendict + - /usr/bin/gtk-query-immodules-* + - /usr/bin/inkscape + - /usr/bin/liferea + - /usr/bin/mono + - /usr/bin/mplayer + - /usr/bin/mumble + - /usr/bin/obex-data-server + - /usr/bin/python2 + - /usr/bin/scheme + - /usr/bin/seahorse + - /usr/bin/spicec + - /usr/bin/systemsettings + - /usr/bin/tcc + - /usr/bin/vlc + - /usr/lib/erlang/erts-*/bin/beam + - /usr/lib/erlang/erts-*/bin/beam.smp + - /usr/lib/ghc-*/ghc + - /usr/lib/libreoffice/program/soffice.bin + - /usr/lib/webkitgtk/WebKitWebProcess + - /usr/lib/xbmc/xbmc.bin + - /usr/sbin/grub-probe + - /usr/sbin/vbetool + +# PAGEEXEC, MPROTECT, EMUTRAMP and RANDMMAP off +pSmXer: + - /usr/bin/sbcl + +# All off :( +psmxer: + - /usr/bin/wine + - /usr/bin/wine-preloader diff --git a/kernels/pax-flags-libre/valgrind.conf b/kernels/pax-flags-libre/valgrind.conf new file mode 100644 index 000000000..6d25559ae --- /dev/null +++ b/kernels/pax-flags-libre/valgrind.conf @@ -0,0 +1,25 @@ +# MPROTECT off +PSmXER: + - /usr/bin/valgrind + - /usr/lib/valgrind/cachegrind-amd64-linux + - /usr/lib/valgrind/cachegrind-x86-linux + - /usr/lib/valgrind/callgrind-amd64-linux + - /usr/lib/valgrind/callgrind-x86-linux + - /usr/lib/valgrind/drd-amd64-linux + - /usr/lib/valgrind/drd-x86-linux + - /usr/lib/valgrind/exp-bbv-amd64-linux + - /usr/lib/valgrind/exp-bbv-x86-linux + - /usr/lib/valgrind/exp-dhat-amd64-linux + - /usr/lib/valgrind/exp-dhat-x86-linux + - /usr/lib/valgrind/exp-sgcheck-amd64-linux + - /usr/lib/valgrind/exp-sgcheck-x86-linux + - /usr/lib/valgrind/helgrind-amd64-linux + - /usr/lib/valgrind/helgrind-x86-linux + - /usr/lib/valgrind/lackey-amd64-linux + - /usr/lib/valgrind/lackey-x86-linux + - /usr/lib/valgrind/massif-amd64-linux + - /usr/lib/valgrind/massif-x86-linux + - /usr/lib/valgrind/memcheck-amd64-linux + - /usr/lib/valgrind/memcheck-x86-linux + - /usr/lib/valgrind/none-amd64-linux + - /usr/lib/valgrind/none-x86-linux diff --git a/kernels/paxctl/PKGBUILD b/kernels/paxctl/PKGBUILD new file mode 100644 index 000000000..b3277e92c --- /dev/null +++ b/kernels/paxctl/PKGBUILD @@ -0,0 +1,31 @@ +# Contributors: +# sh0 +# s1gma +# henning mueller + +pkgname='paxctl' +pkgver='0.7' +pkgrel=3 +pkgdesc='Manages various PaX related program header flags for Elf32, Elf64, binaries' +url=http://pax.grsecurity.net +arch=(i686 x86_64 mips64el) +license=(GPL) +depends=() +source=(http://pax.grsecurity.net/$pkgname-$pkgver.tar.bz2) + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i 's:/sbin:/usr/bin:' Makefile +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} + +sha256sums=('f7077784ca5695bf74061e6f66b86db855e0dcaa1fc94e6251f6ecd0b879cdc8') diff --git a/pcr/pandoc/PKGBUILD b/pcr/pandoc/PKGBUILD index 49fcabcfe..9375b2c3c 100644 --- a/pcr/pandoc/PKGBUILD +++ b/pcr/pandoc/PKGBUILD @@ -5,7 +5,7 @@ pkgname=pandoc-static _pkgname=pandoc -pkgver=1.12.1 +pkgver=1.12.2.1 pkgrel=1 pkgdesc='Conversion between markup formats (no Haskell libs)' url='http://johnmacfarlane.net/pandoc/' @@ -15,8 +15,11 @@ arch=('i686' 'x86_64') depends=('icu>=52' 'icu<=53') makedepends=('ghc' 'sh' 'cabal-install' 'alex' 'happy') options=(strip !makeflags !distcc !emptydirs) -source=(https://repo.parabolagnulinux.org/other/${_pkgname}-${pkgver}-1-any.src.tar.xz{,.sig} +source=(https://repo.parabolagnulinux.org/other/parabola_source_packages/${_pkgname}-${pkgver}-1-any.src.tar.xz{,.sig} SRCBUILD) +sha256sums=('07e56b2df8f73f95eea713c61584b0e19b51b564db12af39d33a093e436e86d1' + 'SKIP' + '9f6701eb9e12130fdcb8d1c3df3e3603afd95e9535a31091ee833838731d6f81') replaces=('pandoc') provides=('pandoc') optdepends=('texlive-most: for pdf creation') @@ -97,6 +100,3 @@ package() { install -d ${pkgdir}/usr/share/licenses cp -rv ${srcdir}/build/usr/share/doc/* ${pkgdir}/usr/share/licenses/ } -sha256sums=('4cbeb1b112985961ff78b9baaa4cca3b24e5996c243c790fa00bbe44052cd418' - 'SKIP' - '25fae3ded388733915dbaca9970ac5f5ef53883410564305bd225a950e5951db') diff --git a/pcr/pandoc/SRCBUILD b/pcr/pandoc/SRCBUILD index 242356c89..09b2dfad2 100644 --- a/pcr/pandoc/SRCBUILD +++ b/pcr/pandoc/SRCBUILD @@ -2,7 +2,7 @@ # Based on haskell-pandoc pkgname=pandoc -pkgver=1.12.1 +pkgver=1.12.2.1 pkgrel=1 pkgdesc='Conversion between markup formats (no Haskell libs)' url='http://johnmacfarlane.net/pandoc/' @@ -21,7 +21,7 @@ build() { cabal --verbose=3 update HOME=${srcdir}/${pkgname}-${pkgver} \ - cabal --verbose=3 fetch hs-bibutils network hexpat text text-icu hsb2hs ${pkgname}-${pkgver} pandoc-citeproc + cabal --verbose=3 fetch hs-bibutils network hexpat text-0.11.3.1 text-icu hsb2hs ${pkgname}-${pkgver} pandoc-citeproc msg2 "Getting the dependency build order" # Ignore the cabal messages diff --git a/pcr/youtube-dl-current/PKGBUILD b/pcr/youtube-dl-current/PKGBUILD index 96a493b25..7ca493453 100644 --- a/pcr/youtube-dl-current/PKGBUILD +++ b/pcr/youtube-dl-current/PKGBUILD @@ -5,7 +5,7 @@ pkgname=youtube-dl-current _pkgname=youtube-dl provides=(youtube-dl) -pkgver=2013.12.26 +pkgver=2014.01.03 pkgrel=1 pkgdesc="A small command-line program to download videos from YouTube.com and a few more sites" arch=('any') @@ -28,5 +28,5 @@ package() { "${pkgdir}/usr/share/bash-completion/completions/youtube-dl" install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE" } -md5sums=('ae343ec6785e6bed333aa2fe2eaed31c' +md5sums=('676179e05b8c83d63e5aa21a92faaa32' 'SKIP') -- cgit v1.2.3-54-g00ecf From 3b88fa9d064e61705923ef42381b467bc8ecfd32 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Mon, 6 Jan 2014 03:31:16 +0000 Subject: Mon Jan 6 03:27:02 UTC 2014 --- community/aria2/PKGBUILD | 6 +- community/ascii/PKGBUILD | 4 +- community/cinnamon/PKGBUILD | 18 +- community/cinnamon/gtk3-lock-dialog.patch | 418 +++++++++++++++++++++ .../0001-Add-support-for-compiling-with-c-11.patch | 291 ++++++++++++++ ...0002-Turn-off-custom-allocator-by-default.patch | 138 +++++++ ...ental-use-of-operator-instead-of-operator.patch | 26 ++ community/lucene++/PKGBUILD | 49 +++ community/nsd/PKGBUILD | 6 +- community/nsd/install | 9 +- community/nsd/service | 2 +- community/opensips/PKGBUILD | 8 +- community/python-sqlalchemy/PKGBUILD | 6 +- community/squid/PKGBUILD | 8 +- extra/audacious/PKGBUILD | 6 +- extra/fontforge/PKGBUILD | 41 +- extra/imagemagick/PKGBUILD | 6 +- extra/mpg123/PKGBUILD | 6 +- extra/taglib-sharp/PKGBUILD | 8 +- extra/xsane/PKGBUILD | 8 +- 20 files changed, 989 insertions(+), 75 deletions(-) create mode 100644 community/cinnamon/gtk3-lock-dialog.patch create mode 100644 community/lucene++/0001-Add-support-for-compiling-with-c-11.patch create mode 100644 community/lucene++/0002-Turn-off-custom-allocator-by-default.patch create mode 100644 community/lucene++/0003-Fix-accidental-use-of-operator-instead-of-operator.patch create mode 100644 community/lucene++/PKGBUILD (limited to 'community') diff --git a/community/aria2/PKGBUILD b/community/aria2/PKGBUILD index 0de12e8a4..cce37eba5 100644 --- a/community/aria2/PKGBUILD +++ b/community/aria2/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 103183 2013-12-28 20:42:34Z bpiotrowski $ +# $Id: PKGBUILD 103391 2014-01-05 15:54:47Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Thomas Dziedzic < gostrc at gmail > # Contributor: Angel Velasquez @@ -6,7 +6,7 @@ # Contributor: Daniel J Griffiths pkgname=aria2 -pkgver=1.18.2 +pkgver=1.18.3 pkgrel=1 pkgdesc='Download utility that supports HTTP(S), FTP, BitTorrent, and Metalink' arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ license=('GPL') depends=('gnutls' 'libxml2' 'sqlite' 'c-ares' 'ca-certificates') checkdepends=('cppunit') source=(http://downloads.sourceforge.net/aria2/aria2-$pkgver.tar.xz) -sha256sums=('b4c99eea9e11d265ed90ab685571f7328a20f5c5a438da93ecdba0959170f460') +sha256sums=('014706c67406be380384484635ca2e811b405c876f0bbcf7a31be79df392d84d') build() { cd $pkgname-$pkgver diff --git a/community/ascii/PKGBUILD b/community/ascii/PKGBUILD index 3c43cdbf1..e9bd0f92c 100644 --- a/community/ascii/PKGBUILD +++ b/community/ascii/PKGBUILD @@ -3,7 +3,7 @@ # Contributor: Damir Perisa pkgname=ascii -pkgver=3.12 +pkgver=3.14 pkgrel=1 pkgdesc="Utility for conversion between various byte representations and the ASCII character table" arch=('i686' 'x86_64') @@ -11,7 +11,7 @@ url="http://www.catb.org/~esr/ascii" license=('BSD') depends=('glibc') source=("http://www.catb.org/~esr/ascii/ascii-${pkgver}.tar.gz") -md5sums=('d06267813ac83ed511b7330f43fcc4ee') +sha256sums=('7f0e3fbfe318a372428a1117ec9527ec0a88946323c8b15dc86634a11989bcd1') build() { cd ${pkgname}-${pkgver} diff --git a/community/cinnamon/PKGBUILD b/community/cinnamon/PKGBUILD index 9659394f4..edfc21200 100644 --- a/community/cinnamon/PKGBUILD +++ b/community/cinnamon/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 101561 2013-11-28 01:14:22Z faidoc $ +# $Id: PKGBUILD 103395 2014-01-05 16:56:22Z bgyorgy $ # Maintainer: Alexandre Filgueira # Contributor: M0Rf30 # Contributor: unifiedlinux @@ -6,7 +6,7 @@ pkgname=cinnamon pkgver=2.0.14 -pkgrel=1 +pkgrel=2 pkgdesc="Linux desktop which provides advanced innovative features and a traditional user experience" arch=('i686' 'x86_64') url="http://cinnamon.linuxmint.com/" @@ -14,7 +14,7 @@ license=('GPL2') depends=('accountsservice' 'caribou' 'cinnamon-settings-daemon' 'cinnamon-session' 'cinnamon-translations' 'cjs' 'clutter-gtk' 'gconf' 'gnome-icon-theme' 'gnome-menus' 'gnome-themes-standard' 'gstreamer' 'libgnome-keyring' - 'librsvg' 'networkmanager' 'muffin' 'pygtk' 'python2-dbus' 'python2-pillow' + 'librsvg' 'networkmanager' 'muffin' 'python2-dbus' 'python2-pillow' 'python2-pam' 'python2-pexpect' 'python2-pyinotify' 'python2-lxml' 'webkitgtk' 'cinnamon-control-center' 'cinnamon-screensaver' 'libgnomekbd' 'network-manager-applet' 'nemo' 'polkit-gnome') @@ -25,11 +25,13 @@ source=("$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/Cinnamon/archive/ "cinnamon-gstreamer1.patch" "keyboard_applet.patch" "input_keybindings.patch" + "gtk3-lock-dialog.patch" "org.archlinux.pkexec.cinnamon-settings-users.policy") sha256sums=('447f65ceb22a40717656d3d708d16ad450802298d783b23004b6e8d3c8d7da85' '2e10ba71fd9ba40afd7e9492b2fc0d5bcc27874bcde543cfd8a47ad20c52354a' '6acb07393105ddced8a4c3c869a596350d1a7d81a808ca5307d2ad770653a9d3' 'e28c40eb844105154fa6106f5b4de3151a22805b3a7b2f84be9ea6c15cec3de6' + 'e10dd01201b9274b45a6c94319d4eb1e9ff800e63f10a3d5e42fc9f3a87e337c' '371beac9e55d36f7629d2fc5cb40d6a3e6c0f4aac014f6fefdcd6743b5194b23') prepare() { @@ -48,9 +50,11 @@ prepare() { # Port to GStreamer 1.0. Also backports some recorder bugfixes patch -Np1 -i ../cinnamon-gstreamer1.patch + # Port Lock screen dialog to GTK+ 3 + patch -Np1 -i ../gtk3-lock-dialog.patch + # Fix required components - sed -i 's/cinnamon-fallback-mount-helper;/polkit-gnome-authentication-agent-1;/ - s/nm-applet;/cinnamon-nm-applet;/' files/usr/share/cinnamon-session/sessions/cinnamon*.session + sed -i 's/cinnamon-fallback-mount-helper;/polkit-gnome-authentication-agent-1;/' files/usr/share/cinnamon-session/sessions/cinnamon*.session # fix for the python2 PAM module sed -i 's:import PAM:import pam:' files/usr/lib/cinnamon-settings/modules/cs_user.py @@ -87,10 +91,6 @@ package() { cd ${srcdir}/Cinnamon* make DESTDIR="${pkgdir}" install - # Install cinnamon-nm-applet.desktop file - sed 's/^NotShowIn=.*/OnlyShowIn=GNOME/' /usr/share/applications/nm-applet.desktop \ - > "${pkgdir}/usr/share/applications/cinnamon-nm-applet.desktop" - # Install policy file install -Dm644 "${srcdir}/org.archlinux.pkexec.cinnamon-settings-users.policy" \ "${pkgdir}/usr/share/polkit-1/actions/org.archlinux.pkexec.cinnamon-settings-users.policy" diff --git a/community/cinnamon/gtk3-lock-dialog.patch b/community/cinnamon/gtk3-lock-dialog.patch new file mode 100644 index 000000000..36f0d4469 --- /dev/null +++ b/community/cinnamon/gtk3-lock-dialog.patch @@ -0,0 +1,418 @@ +commit 7bb5af86b404d3e89f92019dba224e6fe258f7ea +Author: Balló György +Date: Sun Jan 5 16:54:41 2014 +0100 + + Port Lock screen dialog to GTK+ 3 + +diff --git a/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.glade b/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.glade +deleted file mode 100644 +index a4200f9..0000000 +--- a/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.glade ++++ /dev/null +@@ -1,165 +0,0 @@ +- +- +- +- +- +- False +- 6 +- dialog +- +- +- True +- False +- 6 +- +- +- True +- False +- end +- +- +- gtk-cancel +- True +- True +- True +- False +- True +- +- +- False +- False +- 0 +- +- +- +- +- gtk-ok +- True +- True +- True +- False +- True +- +- +- False +- False +- 1 +- +- +- +- +- False +- True +- 3 +- end +- 0 +- +- +- +- +- True +- False +- gtk-missing-image +- +- +- False +- True +- 3 +- 1 +- +- +- +- +- True +- False +- label +- +- +- False +- True +- 3 +- 2 +- +- +- +- +- True +- False +- +- +- True +- False +- label +- +- +- False +- True +- 0 +- +- +- +- +- True +- False +- +- +- True +- False +- <b>"</b> +- True +- +- +- False +- True +- 0 +- +- +- +- +- True +- True +- +- True +- False +- False +- True +- True +- +- +- True +- True +- 1 +- +- +- +- +- True +- False +- <b>"</b> +- True +- +- +- False +- True +- 2 +- +- +- +- +- True +- True +- 1 +- +- +- +- +- True +- True +- 3 +- 3 +- +- +- +- +- +- +diff --git a/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py b/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py +index f6f3ad1..72cdf4f 100755 +--- a/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py ++++ b/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py +@@ -3,8 +3,7 @@ + import sys + import os + import gettext +-import gtk +-import gtk.glade ++from gi.repository import Gtk + import pwd + import socket + +@@ -25,32 +24,32 @@ class MainWindow: + if real_name == "": + real_name = username + +- gladefile = "/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.glade" +- self.wTree = gtk.glade.XML(gladefile, "main_dialog") ++ self.builder = Gtk.Builder() ++ self.builder.add_from_file("/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.ui") + +- self.window = self.wTree.get_widget("main_dialog") +- self.button_cancel = self.wTree.get_widget("button_cancel") +- self.button_ok = self.wTree.get_widget("button_ok") +- self.entry = self.wTree.get_widget("entry_away_message") +- self.image = self.wTree.get_widget("image_face") ++ self.window = self.builder.get_object("main_dialog") ++ self.button_cancel = self.builder.get_object("button_cancel") ++ self.button_ok = self.builder.get_object("button_ok") ++ self.entry = self.builder.get_object("entry_away_message") ++ self.image = self.builder.get_object("image_face") + + self.window.set_title(_("Lock screen")) + self.window.set_icon_from_file("/usr/lib/cinnamon-settings/data/icons/screensaver.svg") + +- self.wTree.get_widget("label_description").set_markup("%s" % _("Please type an away message for the lock screen")) +- self.wTree.get_widget("label_away_message").set_markup("%s: " % real_name) ++ self.builder.get_object("label_description").set_markup("%s" % _("Please type an away message for the lock screen")) ++ self.builder.get_object("label_away_message").set_markup("%s: " % real_name) + + if os.path.exists("%s/.face" % home_dir): + self.image.set_from_file("%s/.face" % home_dir) + else: + self.image.set_from_file("/usr/share/pixmaps/nobody.png") + +- self.window.connect("destroy", gtk.main_quit) +- self.button_cancel.connect("clicked", gtk.main_quit) ++ self.window.connect("destroy", Gtk.main_quit) ++ self.button_cancel.connect("clicked", Gtk.main_quit) + self.button_ok.connect('clicked', self.lock_screen) + self.entry.connect('activate', self.lock_screen) + +- self.wTree.get_widget("dialog-action_area1").set_focus_chain((self.button_ok, self.button_cancel)) ++ self.builder.get_object("dialog-action_area1").set_focus_chain((self.button_ok, self.button_cancel)) + + self.window.show() + +@@ -60,8 +59,8 @@ class MainWindow: + os.system("cinnamon-screensaver-command --lock --away-message \"%s\" &" % self.entry.get_text()) + else: + os.system("cinnamon-screensaver-command --lock &") +- gtk.main_quit() ++ Gtk.main_quit() + + if __name__ == "__main__": + MainWindow() +- gtk.main() ++ Gtk.main() +diff --git a/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.ui b/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.ui +new file mode 100644 +index 0000000..30700b9 +--- /dev/null ++++ b/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.ui +@@ -0,0 +1,165 @@ ++ ++ ++ ++ ++ ++ False ++ 6 ++ dialog ++ ++ ++ True ++ False ++ 6 ++ ++ ++ True ++ False ++ end ++ ++ ++ gtk-cancel ++ True ++ True ++ True ++ False ++ True ++ ++ ++ False ++ False ++ 0 ++ ++ ++ ++ ++ gtk-ok ++ True ++ True ++ True ++ False ++ True ++ ++ ++ False ++ False ++ 1 ++ ++ ++ ++ ++ False ++ True ++ 3 ++ end ++ 0 ++ ++ ++ ++ ++ True ++ False ++ gtk-missing-image ++ ++ ++ False ++ True ++ 3 ++ 1 ++ ++ ++ ++ ++ True ++ False ++ label ++ ++ ++ False ++ True ++ 3 ++ 2 ++ ++ ++ ++ ++ True ++ False ++ ++ ++ True ++ False ++ label ++ ++ ++ False ++ True ++ 0 ++ ++ ++ ++ ++ True ++ False ++ ++ ++ True ++ False ++ <b>"</b> ++ True ++ ++ ++ False ++ True ++ 0 ++ ++ ++ ++ ++ True ++ True ++ ++ True ++ False ++ False ++ True ++ True ++ ++ ++ True ++ True ++ 1 ++ ++ ++ ++ ++ True ++ False ++ <b>"</b> ++ True ++ ++ ++ False ++ True ++ 2 ++ ++ ++ ++ ++ True ++ True ++ 1 ++ ++ ++ ++ ++ True ++ True ++ 3 ++ 3 ++ ++ ++ ++ ++ ++ diff --git a/community/lucene++/0001-Add-support-for-compiling-with-c-11.patch b/community/lucene++/0001-Add-support-for-compiling-with-c-11.patch new file mode 100644 index 000000000..afd4dd7cd --- /dev/null +++ b/community/lucene++/0001-Add-support-for-compiling-with-c-11.patch @@ -0,0 +1,291 @@ +From f4f7a4e212dc96146a9b71c8a09d375a1cd9980e Mon Sep 17 00:00:00 2001 +From: Jason Gilanfarr +Date: Thu, 26 Sep 2013 16:46:23 -0700 +Subject: [PATCH] Add support for compiling with c++11. + +--- + include/Array.h | 2 +- + include/AttributeSource.h | 2 +- + include/Collection.h | 2 +- + include/HashMap.h | 2 +- + include/HashSet.h | 2 +- + include/Map.h | 2 +- + include/MiscUtils.h | 2 +- + include/Set.h | 2 +- + src/core/include/_FieldCacheRangeFilter.h | 2 +- + src/core/index/DirectoryReader.cpp | 2 +- + src/core/index/IndexWriter.cpp | 2 +- + src/core/index/MultiLevelSkipListReader.cpp | 2 +- + src/core/index/SegmentMerger.cpp | 2 +- + src/core/index/SegmentReader.cpp | 4 ++-- + src/core/queryparser/QueryParserTokenManager.cpp | 7 ++++--- + src/core/search/FieldCacheRangeFilter.cpp | 2 +- + src/core/search/Query.cpp | 2 +- + src/core/store/NativeFSLockFactory.cpp | 2 +- + src/core/util/OpenBitSetIterator.cpp | 2 +- + 19 files changed, 23 insertions(+), 22 deletions(-) + +diff --git a/include/Array.h b/include/Array.h +index 774d58a..46f38aa 100644 +--- a/include/Array.h ++++ b/include/Array.h +@@ -119,7 +119,7 @@ namespace Lucene + + operator bool () const + { +- return container; ++ return container.get() != NULL; + } + + bool operator! () const +diff --git a/include/AttributeSource.h b/include/AttributeSource.h +index ed3895b..13f716e 100644 +--- a/include/AttributeSource.h ++++ b/include/AttributeSource.h +@@ -95,7 +95,7 @@ namespace Lucene + template + bool hasAttribute() + { +- return getAttribute(ATTR::_getClassName()); ++ return getAttribute(ATTR::_getClassName()).get() != NULL; + } + + /// Returns the instance of the passed in Attribute contained in this AttributeSource. +diff --git a/include/Collection.h b/include/Collection.h +index 2e05a82..31d475e 100644 +--- a/include/Collection.h ++++ b/include/Collection.h +@@ -211,7 +211,7 @@ namespace Lucene + + operator bool() const + { +- return container; ++ return container.get() != NULL; + } + + bool operator! () const +diff --git a/include/HashMap.h b/include/HashMap.h +index 2d40f5d..217c774 100644 +--- a/include/HashMap.h ++++ b/include/HashMap.h +@@ -82,7 +82,7 @@ namespace Lucene + + operator bool() const + { +- return mapContainer; ++ return mapContainer.get() != NULL; + } + + bool operator! () const +diff --git a/include/HashSet.h b/include/HashSet.h +index cefd533..b7dff18 100644 +--- a/include/HashSet.h ++++ b/include/HashSet.h +@@ -88,7 +88,7 @@ namespace Lucene + + operator bool() const + { +- return setContainer; ++ return setContainer.get() != NULL; + } + + bool operator! () const +diff --git a/include/Map.h b/include/Map.h +index c7dabcd..36e8cd9 100644 +--- a/include/Map.h ++++ b/include/Map.h +@@ -82,7 +82,7 @@ namespace Lucene + + operator bool() const + { +- return mapContainer; ++ return mapContainer.get() != NULL; + } + + bool operator! () const +diff --git a/include/MiscUtils.h b/include/MiscUtils.h +index ed65f70..7227b93 100644 +--- a/include/MiscUtils.h ++++ b/include/MiscUtils.h +@@ -125,7 +125,7 @@ namespace Lucene + template + static bool typeOf(LuceneObjectPtr object) + { +- return boost::dynamic_pointer_cast(object); ++ return boost::dynamic_pointer_cast(object).get() != NULL; + } + + /// Return whether given Lucene objects are of equal type. +diff --git a/include/Set.h b/include/Set.h +index bc62f17..7adff10 100644 +--- a/include/Set.h ++++ b/include/Set.h +@@ -132,7 +132,7 @@ namespace Lucene + + operator bool() const + { +- return setContainer; ++ return setContainer.get() != NULL; + } + + bool operator! () const +diff --git a/src/core/include/_FieldCacheRangeFilter.h b/src/core/include/_FieldCacheRangeFilter.h +index 7e494fd..ba44022 100644 +--- a/src/core/include/_FieldCacheRangeFilter.h ++++ b/src/core/include/_FieldCacheRangeFilter.h +@@ -146,7 +146,7 @@ namespace Lucene + return false; + if (lowerVal != otherFilter->lowerVal || upperVal != otherFilter->upperVal) + return false; +- if (parser ? !parser->equals(otherFilter->parser) : otherFilter->parser) ++ if (parser.get() != NULL ? !parser->equals(otherFilter->parser) : otherFilter->parser.get() != NULL) + return false; + return true; + } +diff --git a/src/core/index/DirectoryReader.cpp b/src/core/index/DirectoryReader.cpp +index 2d2d1ce..9fddf41 100644 +--- a/src/core/index/DirectoryReader.cpp ++++ b/src/core/index/DirectoryReader.cpp +@@ -976,7 +976,7 @@ namespace Lucene + + SegmentMergeInfoPtr smi(newLucene(starts[i], termEnum, reader)); + smi->ord = i; +- if (t ? termEnum->term() : smi->next()) ++ if (t.get() != NULL ? termEnum->term().get() != NULL : smi->next()) + queue->add(smi); // initialize queue + else + smi->close(); +diff --git a/src/core/index/IndexWriter.cpp b/src/core/index/IndexWriter.cpp +index aabb6e4..11926e9 100644 +--- a/src/core/index/IndexWriter.cpp ++++ b/src/core/index/IndexWriter.cpp +@@ -687,7 +687,7 @@ namespace Lucene + + bool IndexWriter::verbose() + { +- return infoStream; ++ return infoStream.get() != NULL; + } + + void IndexWriter::setWriteLockTimeout(int64_t writeLockTimeout) +diff --git a/src/core/index/MultiLevelSkipListReader.cpp b/src/core/index/MultiLevelSkipListReader.cpp +index 19096b6..c38fd60 100644 +--- a/src/core/index/MultiLevelSkipListReader.cpp ++++ b/src/core/index/MultiLevelSkipListReader.cpp +@@ -27,7 +27,7 @@ namespace Lucene + this->maxNumberOfSkipLevels = maxSkipLevels; + this->skipInterval = Collection::newInstance(maxSkipLevels); + this->skipStream[0] = skipStream; +- this->inputIsBuffered = boost::dynamic_pointer_cast(skipStream); ++ this->inputIsBuffered = boost::dynamic_pointer_cast(skipStream).get() != NULL; + this->skipInterval[0] = skipInterval; + this->skipDoc = Collection::newInstance(maxSkipLevels); + +diff --git a/src/core/index/SegmentMerger.cpp b/src/core/index/SegmentMerger.cpp +index d532501..41f4dc5 100644 +--- a/src/core/index/SegmentMerger.cpp ++++ b/src/core/index/SegmentMerger.cpp +@@ -38,7 +38,7 @@ namespace Lucene + const int32_t SegmentMerger::MAX_RAW_MERGE_DOCS = 4192; + + /// norms header placeholder +- const uint8_t SegmentMerger::NORMS_HEADER[] = {'N', 'R', 'M', -1}; ++ const uint8_t SegmentMerger::NORMS_HEADER[] = {'N', 'R', 'M', static_cast(-1) }; + const int32_t SegmentMerger::NORMS_HEADER_LENGTH = 4; + + SegmentMerger::SegmentMerger(DirectoryPtr dir, const String& name) +diff --git a/src/core/index/SegmentReader.cpp b/src/core/index/SegmentReader.cpp +index 2be0b1f..d9d1b79 100644 +--- a/src/core/index/SegmentReader.cpp ++++ b/src/core/index/SegmentReader.cpp +@@ -376,7 +376,7 @@ namespace Lucene + bool SegmentReader::hasDeletions() + { + // Don't call ensureOpen() here (it could affect performance) +- return deletedDocs; ++ return deletedDocs.get() != NULL; + } + + bool SegmentReader::usesCompoundFile(SegmentInfoPtr si) +@@ -923,7 +923,7 @@ namespace Lucene + bool CoreReaders::termsIndexIsLoaded() + { + SyncLock syncLock(this); +- return tis; ++ return tis.get() != NULL; + } + + void CoreReaders::loadTermsIndex(SegmentInfoPtr si, int32_t termsIndexDivisor) +diff --git a/src/core/queryparser/QueryParserTokenManager.cpp b/src/core/queryparser/QueryParserTokenManager.cpp +index e769470..cb64c97 100644 +--- a/src/core/queryparser/QueryParserTokenManager.cpp ++++ b/src/core/queryparser/QueryParserTokenManager.cpp +@@ -15,9 +15,10 @@ + namespace Lucene + { + const int64_t QueryParserTokenManager::jjbitVec0[] = {0x1LL, 0x0LL, 0x0LL, 0x0LL}; +- const int64_t QueryParserTokenManager::jjbitVec1[] = {0xfffffffffffffffeLL, 0xffffffffffffffffLL, 0xffffffffffffffffLL, 0xffffffffffffffffLL}; +- const int64_t QueryParserTokenManager::jjbitVec3[] = {0x0LL, 0x0LL, 0xffffffffffffffffLL, 0xffffffffffffffffLL}; +- const int64_t QueryParserTokenManager::jjbitVec4[] = {0xfffefffffffffffeLL, 0xffffffffffffffffLL, 0xffffffffffffffffLL, 0xffffffffffffffffLL}; ++ const int64_t QueryParserTokenManager::jjbitVec1[] = {static_cast(0xfffffffffffffffeLL), static_cast(0xffffffffffffffffLL), static_cast(0xffffffffffffffffLL), static_cast(0xffffffffffffffffLL)}; ++ const int64_t QueryParserTokenManager::jjbitVec3[] = {0x0LL, 0x0LL, static_cast(0xffffffffffffffffLL), static_cast(0xffffffffffffffffLL)}; ++ const int64_t QueryParserTokenManager::jjbitVec4[] = {static_cast(0xfffefffffffffffeLL), static_cast(0xffffffffffffffffLL), static_cast(0xffffffffffffffffLL), static_cast(0xffffffffffffffffLL)}; ++ + const int32_t QueryParserTokenManager::jjnextStates[] = {15, 16, 18, 29, 32, 23, 33, 30, 20, 21, 32, 23, 33, 31, 34, 27, 2, 4, 5, 0, 1}; + + /// Token literal values. +diff --git a/src/core/search/FieldCacheRangeFilter.cpp b/src/core/search/FieldCacheRangeFilter.cpp +index ce82a28..1585121 100644 +--- a/src/core/search/FieldCacheRangeFilter.cpp ++++ b/src/core/search/FieldCacheRangeFilter.cpp +@@ -170,7 +170,7 @@ namespace Lucene + return false; + if (lowerVal != otherFilter->lowerVal || upperVal != otherFilter->upperVal) + return false; +- if (parser ? !parser->equals(otherFilter->parser) : otherFilter->parser) ++ if (parser.get() != NULL ? !parser->equals(otherFilter->parser) : otherFilter->parser.get() != NULL) + return false; + return true; + } +diff --git a/src/core/search/Query.cpp b/src/core/search/Query.cpp +index 33aac96..0cfc482 100644 +--- a/src/core/search/Query.cpp ++++ b/src/core/search/Query.cpp +@@ -73,7 +73,7 @@ namespace Lucene + Collection clauses; + BooleanQueryPtr bq(boost::dynamic_pointer_cast(*query)); + // check if we can split the query into clauses +- bool splittable = bq; ++ bool splittable = bq.get() != NULL; + if (splittable) + { + splittable = bq->isCoordDisabled(); +diff --git a/src/core/store/NativeFSLockFactory.cpp b/src/core/store/NativeFSLockFactory.cpp +index 06f9a47..cc5e96e 100644 +--- a/src/core/store/NativeFSLockFactory.cpp ++++ b/src/core/store/NativeFSLockFactory.cpp +@@ -79,7 +79,7 @@ namespace Lucene + bool NativeFSLock::lockExists() + { + SyncLock syncLock(this); +- return lock; ++ return lock.get() != NULL; + } + + bool NativeFSLock::obtain() +diff --git a/src/core/util/OpenBitSetIterator.cpp b/src/core/util/OpenBitSetIterator.cpp +index 5d61c13..3d43e06 100644 +--- a/src/core/util/OpenBitSetIterator.cpp ++++ b/src/core/util/OpenBitSetIterator.cpp +@@ -43,7 +43,7 @@ namespace Lucene + 0x876, 0x8761, 0x8762, 0x87621, 0x8763, 0x87631, 0x87632, 0x876321, 0x8764, + 0x87641, 0x87642, 0x876421, 0x87643, 0x876431, 0x876432, 0x8764321, 0x8765, + 0x87651, 0x87652, 0x876521, 0x87653, 0x876531, 0x876532, 0x8765321, 0x87654, +- 0x876541, 0x876542, 0x8765421, 0x876543, 0x8765431, 0x8765432, 0x87654321 ++ 0x876541, 0x876542, 0x8765421, 0x876543, 0x8765431, 0x8765432, static_cast(0x87654321) + }; + + OpenBitSetIterator::OpenBitSetIterator(OpenBitSetPtr bitSet) +-- +1.8.5.2 + diff --git a/community/lucene++/0002-Turn-off-custom-allocator-by-default.patch b/community/lucene++/0002-Turn-off-custom-allocator-by-default.patch new file mode 100644 index 000000000..10c21a8c4 --- /dev/null +++ b/community/lucene++/0002-Turn-off-custom-allocator-by-default.patch @@ -0,0 +1,138 @@ +From 65c63d0a6c3927e0f123f6ec24d5516739fd53b3 Mon Sep 17 00:00:00 2001 +From: Alan Wright +Date: Thu, 12 Sep 2013 10:34:00 +0100 +Subject: [PATCH] Turn off custom allocator by default. + +closes #40 +--- + CMakeLists.txt | 25 ++++++++++++++----------- + include/Config.h.cmake | 2 +- + src/core/CMakeLists.txt | 12 ++++++++---- + 3 files changed, 23 insertions(+), 16 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ec89210..ab1f10d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -62,6 +62,9 @@ ENDIF(NOT CMAKE_BUILD_TYPE) + OPTION(ENABLE_PACKAGING + "create build scripts for creating lucene++ packages" + OFF) ++OPTION(ENABLE_CUSTOM_ALLOCATOR ++ "use custom memory allocator" ++ OFF) + OPTION(ENABLE_NEDMALLOC + "use nedmalloc for memory allocations" + OFF) +@@ -75,18 +78,18 @@ OPTION(ENABLE_CYCLIC_CHECK + #install path options + SET(LIB_DESTINATION "lib" CACHE STRING "Define lib output directory name") + ++IF ( ENABLE_CUSTOM_ALLOCATOR ) ++ SET(DEFINE_USE_CUSTOM_ALLOCATOR "define") ++ELSE ( ENABLE_CUSTOM_ALLOCATOR ) ++ SET(DEFINE_USE_CUSTOM_ALLOCATOR "undef") ++ENDIF ( ENABLE_CUSTOM_ALLOCATOR ) ++ + IF ( ENABLE_NEDMALLOC ) + SET(DEFINE_USE_NEDMALLOC "define") + ELSE ( ENABLE_NEDMALLOC ) + SET(DEFINE_USE_NEDMALLOC "undef") + ENDIF ( ENABLE_NEDMALLOC ) + +-IF ( ENABLE_STANDARD_ALLOCATOR ) +- SET(DEFINE_USE_ALLOCATOR "undef") +-ELSE ( ENABLE_STANDARD_ALLOCATOR ) +- SET(DEFINE_USE_ALLOCATOR "define") +-ENDIF ( ENABLE_STANDARD_ALLOCATOR ) +- + IF ( ENABLE_CYCLIC_CHECK ) + SET(DEFINE_USE_CYCLIC_CHECK "define") + ELSE ( ENABLE_CYCLIC_CHECK ) +@@ -116,11 +119,11 @@ IF(CYGWIN) + ADD_DEFINITIONS(-D__LARGE64_FILES) + ENDIF(CYGWIN) + +-#set ansi mode ++#set ansi mode + SET(ENABLE_ANSI_MODE OFF) + IF(CMAKE_COMPILER_IS_GNUCXX) + SET(ENABLE_ANSI_MODE ON) +- ++ + #exceptions: + IF(MINGW OR CYGWIN) + SET(ENABLE_ANSI_MODE OFF) +@@ -130,20 +133,20 @@ IF ( CMAKE_COMPILER_IS_GNUCC ) + IF( ENABLE_ANSI_MODE ) + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi") + ENDIF ( ENABLE_ANSI_MODE ) +-ENDIF(CMAKE_COMPILER_IS_GNUCC) ++ENDIF(CMAKE_COMPILER_IS_GNUCC) + + #################################### + #find boost + #################################### + SET(Boost_USE_STATIC_LIBS ${LUCENE_USE_STATIC_BOOST_LIBS}) + SET(Boost_USE_MULTITHREADED ON) +-#Boost 1.38 required for bug fixes in basic_streambuf. ++#Boost 1.38 required for bug fixes in basic_streambuf. + #The following line fails in earlier builds, so if altered, may allow older versions of boost: + #boost::gregorian::date date = parser.parse_date(paddedDate.c_str(), dateFormat->c_str(), svp); + find_package( Boost 1.38.0 COMPONENTS date_time filesystem iostreams regex system thread unit_test_framework REQUIRED) + IF (Boost_FOUND) + MESSAGE( STATUS "boost found: includes in ${Boost_INCLUDE_DIRS}, library in ${Boost_LIBRARY_DIRS}") +- SET(LUCENE_BOOST_LIBS ++ SET(LUCENE_BOOST_LIBS + ${Boost_FILESYSTEM_LIBRARY_RELEASE} + ${Boost_IOSTREAMS_LIBRARY_RELEASE} + ${Boost_REGEX_LIBRARY_RELEASE} +diff --git a/include/Config.h.cmake b/include/Config.h.cmake +index ac83b77..13f6460 100644 +--- a/include/Config.h.cmake ++++ b/include/Config.h.cmake +@@ -78,7 +78,7 @@ + #@DEFINE_USE_CYCLIC_CHECK@ LPP_USE_CYCLIC_CHECK + + // Define to use custom allocator (useful in Windows builds and when using nedmalloc) +-#@DEFINE_USE_ALLOCATOR@ LPP_USE_ALLOCATOR ++#@DEFINE_USE_CUSTOM_ALLOCATOR@ LPP_USE_ALLOCATOR + + // Define to use nedmalloc memory allocator + #@DEFINE_USE_NEDMALLOC@ LPP_USE_NEDMALLOC +diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt +index a77c12f..ce91ae9 100644 +--- a/src/core/CMakeLists.txt ++++ b/src/core/CMakeLists.txt +@@ -20,7 +20,11 @@ file(GLOB_RECURSE HEADERS ${lucene++-base_SOURCE_DIR}/include/*.h + file(GLOB_RECURSE lucene_c_sources + ${lucene++-lib_SOURCE_DIR}/util/*.c) + +- ++ ++IF ( ENABLE_CUSTOM_ALLOCATOR ) ++ ADD_DEFINITIONS(-DLPP_USE_ALLOCATOR) ++ENDIF() ++ + IF ( ENABLE_NEDMALLOC ) + ADD_DEFINITIONS(-DLPP_USE_NEDMALLOC) + ENDIF() +@@ -51,12 +55,12 @@ SET_TARGET_PROPERTIES(lucene++ PROPERTIES + SOVERSION ${LUCENE++_SOVERSION} + COMPILE_FLAGS -DLPP_HAVE_DLL + ) +-TARGET_LINK_LIBRARIES(lucene++ +- lucene++-c ++TARGET_LINK_LIBRARIES(lucene++ ++ lucene++-c + ${CMAKE_THREAD_LIBS_INIT} + ${LUCENE_BOOST_LIBS} ) + install(TARGETS lucene++ +- DESTINATION ${LIB_DESTINATION} ++ DESTINATION ${LIB_DESTINATION} + COMPONENT runtime) + + ################################# +-- +1.8.5.2 + diff --git a/community/lucene++/0003-Fix-accidental-use-of-operator-instead-of-operator.patch b/community/lucene++/0003-Fix-accidental-use-of-operator-instead-of-operator.patch new file mode 100644 index 000000000..f05182fcf --- /dev/null +++ b/community/lucene++/0003-Fix-accidental-use-of-operator-instead-of-operator.patch @@ -0,0 +1,26 @@ +From 2ac8183e48a0ab95fa3f405bc26b1b20d51755f2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?V=C3=A1clav=20Slav=C3=ADk?= +Date: Sun, 27 Oct 2013 09:17:45 +0100 +Subject: [PATCH] Fix accidental use of operator+ instead of operator<<. + +There was a typo in the output expression, appending a number to a string, instead of concatenating them as indented. +--- + src/core/index/CheckIndex.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/index/CheckIndex.cpp b/src/core/index/CheckIndex.cpp +index 9e910f1..7f783d8 100644 +--- a/src/core/index/CheckIndex.cpp ++++ b/src/core/index/CheckIndex.cpp +@@ -640,7 +640,7 @@ namespace Lucene + std::wcout << L"WARNING: would write new segments file, and " << result->totLoseDocCount << L" documents would be lost, if -fix were specified\n\n"; + else + { +- std::wcout << L"WARNING: " << result->totLoseDocCount + L" documents will be lost\n"; ++ std::wcout << L"WARNING: " << result->totLoseDocCount << L" documents will be lost\n"; + std::wcout << L"NOTE: will write new segments file in 5 seconds; this will remove " << result->totLoseDocCount; + std::wcout << L" docs from the index. THIS IS YOUR LAST CHANCE TO CTRL+C!\n"; + for (int32_t sec = 0; sec < 5; ++sec) +-- +1.8.5.2 + diff --git a/community/lucene++/PKGBUILD b/community/lucene++/PKGBUILD new file mode 100644 index 000000000..105ec3dcb --- /dev/null +++ b/community/lucene++/PKGBUILD @@ -0,0 +1,49 @@ +# $Id$ +# Maintainer: Bartłomiej Piotrowski +# Contributor: Rafael Ferreira + +pkgname=lucene++ +pkgver=3.0.4 +pkgrel=1 +pkgdesc='C++ port of the popular Java Lucene library' +arch=(i686 x86_64) +url='https://github.com/luceneplusplus/LucenePlusPlus' +license=('GPL' 'Apache') +depends=('boost-libs' 'gcc-libs') +makedepends=('boost' 'cmake') +source=($url/archive/rel_$pkgver.tar.gz + 0001-Add-support-for-compiling-with-c-11.patch + 0002-Turn-off-custom-allocator-by-default.patch + 0003-Fix-accidental-use-of-operator-instead-of-operator.patch) +md5sums=('64c34aa66b3870cc015c5d084a1a2b4e' + '243c87bed96250043f21d4d6ea6b6c6e' + 'ab8c8d5484411a9af55121b4d565f746' + '2c1758953b1b3d7c3c14c88b770bcb26') + +prepare() { + mkdir build + + cd LucenePlusPlus-rel_$pkgver + + # http://www.poedit.net/trac/ticket/568 + patch -p1 -i ../0001-Add-support-for-compiling-with-c-11.patch + patch -p1 -i ../0002-Turn-off-custom-allocator-by-default.patch + patch -p1 -i ../0003-Fix-accidental-use-of-operator-instead-of-operator.patch +} + +build() { + cd build + + cmake ../LucenePlusPlus-rel_$pkgver \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_DESTINATION=/usr/lib \ + -DBoost_LIBRARY_DIR=/usr/lib \ + -DENABLE_CUSTOM_ALLOCATOR='FALSE' + + make +} + +package() { + cd build + make DESTDIR="$pkgdir" install +} diff --git a/community/nsd/PKGBUILD b/community/nsd/PKGBUILD index bc40dcfb8..f12229e29 100644 --- a/community/nsd/PKGBUILD +++ b/community/nsd/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 100223 2013-11-02 00:00:56Z bisson $ +# $Id: PKGBUILD 103387 2014-01-05 10:34:05Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Kaiting Chen # Contributor: Roberto Alsina pkgname=nsd pkgver=4.0.0 -pkgrel=2 +pkgrel=3 pkgdesc='Authoritative only, high performance and simple DNS server' url='http://www.nlnetlabs.nl/nsd/' license=('BSD') @@ -17,7 +17,7 @@ source=("http://www.nlnetlabs.nl/downloads/${pkgname}/${pkgname}-${pkgver}.tar.g 'service') sha1sums=('b3ebd669be8e830f62062d12be55242ca41da369' '7ad2b8da961a893095eede8963cf8026b13186a1' - '491bf9c6e63644f7d6c81d3b16138f0d87706aa0') + '3dbe300d834a32c9a339a6c76c58f5c240239e9b') install=install diff --git a/community/nsd/install b/community/nsd/install index 6e56e9ba1..5f693dba0 100644 --- a/community/nsd/install +++ b/community/nsd/install @@ -1,12 +1,13 @@ +post_upgrade() { + usr/bin/systemd-tmpfiles --create nsd.conf || true +} + post_install() { getent group nsd &>/dev/null || groupadd -r nsd >/dev/null getent passwd nsd &>/dev/null || useradd -r -g nsd -d /dev/null -s /bin/false -c nsd nsd >/dev/null chown nsd:nsd /var/db/nsd chmod 700 /var/db/nsd -} - -post_upgrade() { - usr/bin/systemd-tmpfiles --create nsd.conf || true + post_upgrade } post_remove() { diff --git a/community/nsd/service b/community/nsd/service index b6125a686..9f0231227 100644 --- a/community/nsd/service +++ b/community/nsd/service @@ -4,7 +4,7 @@ After=network.target [Service] PIDFile=/run/nsd/nsd.pid -ExecStart=/usr/bin/nsd -c /etc/nsd/nsd.conf +ExecStart=/usr/bin/nsd -d -c /etc/nsd/nsd.conf ExecReload=/bin/kill -HUP $MAINPID ExecStop=/bin/kill -TERM $MAINPID diff --git a/community/opensips/PKGBUILD b/community/opensips/PKGBUILD index 7a39ec2b6..23ccc3729 100644 --- a/community/opensips/PKGBUILD +++ b/community/opensips/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 91536 2013-05-23 11:21:11Z spupykin $ +# $Id: PKGBUILD 103436 2014-01-05 21:24:23Z spupykin $ # Maintainer: Sergej Pupykin pkgname=opensips -pkgver=1.9.1 -pkgrel=2 +pkgver=1.10.0 +pkgrel=1 pkgdesc="An Open Source SIP Server able to act as a SIP proxy, registrar, location server, redirect server ..." url="http://www.opensips.org" depends=('gcc-libs' 'openssl' 'db' 'attr' 'libxml2') @@ -25,7 +25,7 @@ install=opensips.install options=('!emptydirs' 'zipman' '!makeflags' 'docs') source=(http://opensips.org/pub/opensips/$pkgver/src/opensips-${pkgver}_src.tar.gz opensips.service) -md5sums=('0b7b93f4df29a96daedf12e490e7ec86' +md5sums=('5cbccda321940c51baed798f2f6c5b1a' '35cdcb3692f6925236fd5fe7e9484c58') prepare() { diff --git a/community/python-sqlalchemy/PKGBUILD b/community/python-sqlalchemy/PKGBUILD index c0652ae7e..f8a0e4a28 100644 --- a/community/python-sqlalchemy/PKGBUILD +++ b/community/python-sqlalchemy/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 102482 2013-12-12 10:34:55Z jelle $ +# $Id: PKGBUILD 103389 2014-01-05 15:48:26Z jelle $ # Maintainer: Angel Velasquez # Contributor: Sébastien Luttringer pkgbase=python-sqlalchemy pkgname=('python-sqlalchemy' 'python2-sqlalchemy') -pkgver=0.8.4 +pkgver=0.9.0 pkgrel=1 arch=('i686' 'x86_64') # python2 package contain .so url="http://www.sqlalchemy.org/" license=('custom: MIT') makedepends=('python' 'python2' 'python-setuptools' 'python2-setuptools' 'python-nose' 'python2-nose') source=("https://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-$pkgver.tar.gz") -md5sums=('fd517e1bb4031cac1e3fa00108111b38') +md5sums=('acfd77b6ca71678237b1066a3fda05b0') build() { cp -a SQLAlchemy-$pkgver SQLAlchemy2-$pkgver diff --git a/community/squid/PKGBUILD b/community/squid/PKGBUILD index e706a9343..8371f3094 100644 --- a/community/squid/PKGBUILD +++ b/community/squid/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 102758 2013-12-19 10:29:53Z spupykin $ +# $Id: PKGBUILD 103438 2014-01-05 21:24:54Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Mark Coolen # Contributor: Tom Newsom # Contributor: Kevin Piche pkgname=squid -pkgver=3.4.1 -pkgrel=2 +pkgver=3.4.2 +pkgrel=1 pkgdesc='Full-featured Web proxy cache server' arch=('x86_64' 'i686') url='http://www.squid-cache.org' @@ -21,7 +21,7 @@ source=("http://www.squid-cache.org/Versions/v3/3.4/$pkgname-$pkgver.tar.bz2" 'squid.pam' 'squid.cron' 'squid.service') -md5sums=('859cf167499d8a5430070dbde78c8eea' +md5sums=('7ec46965bc58bc927e81869805a25241' '270977cdd9b47ef44c0c427ab9034777' 'a71425c4951f2e5b640d19e6a5048531' 'ceeb57c69ebb165676219222f109a24e') diff --git a/extra/audacious/PKGBUILD b/extra/audacious/PKGBUILD index 15dd7d7f1..3beb3b40f 100644 --- a/extra/audacious/PKGBUILD +++ b/extra/audacious/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 198671 2013-11-01 21:03:18Z bisson $ +# $Id: PKGBUILD 203195 2014-01-05 05:23:56Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Alexander Fehr # Contributor: Giovanni Scafora pkgname=audacious -pkgver=3.4.2 +pkgver=3.4.3 pkgrel=1 pkgdesc='Lightweight, advanced audio player focused on audio quality' url='http://audacious-media-player.org/' @@ -14,7 +14,7 @@ depends=('gtk3' 'dbus-glib' 'libguess' 'libsm' 'audacious-plugins' 'hicolor-icon-theme' 'desktop-file-utils') optdepends=('unzip: zipped skins support') source=("http://distfiles.audacious-media-player.org/${pkgname}-${pkgver}.tar.bz2") -sha1sums=('341452d3beceb57451f0675a61fabfd9c59d2dab') +sha1sums=('1d348f8ef5238de7cd6669189ecca690452e96c4') provides=('audacious-player') replaces=('audacious-player') diff --git a/extra/fontforge/PKGBUILD b/extra/fontforge/PKGBUILD index c0fe5e738..6090afa89 100644 --- a/extra/fontforge/PKGBUILD +++ b/extra/fontforge/PKGBUILD @@ -1,63 +1,54 @@ -# $Id: PKGBUILD 197956 2013-10-30 11:54:42Z allan $ +# $Id: PKGBUILD 203200 2014-01-05 09:58:03Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Eric Belanger # Contributor: William Rea pkgname=fontforge -pkgver=20120731_b -pkgrel=6 +_pkgver=2.0.20140101 +pkgver=${_pkgver##*.} +pkgrel=1 pkgdesc='Outline and bitmap font editor' url='http://fontforge.sourceforge.net/' arch=('i686' 'x86_64') license=('BSD') depends=('libxkbui' 'libxi' 'libxml2' 'pango' 'giflib' 'libtiff' 'python2' 'libspiro' - 'desktop-file-utils' 'gtk-update-icon-cache' 'hicolor-icon-theme') -source=("http://downloads.sourceforge.net/project/fontforge/fontforge-source/fontforge_full-${pkgver//_/-}.tar.bz2" + 'libltdl' 'desktop-file-utils' 'gtk-update-icon-cache' 'hicolor-icon-theme') +source=("https://github.com/fontforge/fontforge/archive/${_pkgver}.tar.gz" 'http://fontforge.org/cidmaps.tgz') -sha1sums=('b520f532b48e557c177dffa29120225066cc4e84' +sha1sums=('abce297e53e8b6ff6f08871e53d1eb0be5ab82e7' 'efbc7c9d3e95159f5600dc71f9cccb370e46bb94') -# git clone git://fontforge.git.sourceforge.net/gitroot/fontforge/fontforge; cd fontforge; git archive --prefix=${pkgname}-${pkgver}/ master | xz > ../${pkgname}-${pkgver}.tar.xz -# source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz") - options=('!makeflags') install=install prepare() { - cd "${srcdir}/${pkgname}-${pkgver//_/-}" - sed 's/python /python2 /g' -i Makefile.dynamic.in - sed \ - -e'/^#include /i #include ' \ - -e 's/\(DGifOpenFileName([^)]*\))/\1,NULL)/g' \ - -i configure gutils/gimagereadgif.c + cd "${srcdir}/${pkgname}-${_pkgver}" + sed '/fontforge_package_name/s/^#//' -i configure.ac + ./autogen.sh } build() { - cd "${srcdir}/${pkgname}-${pkgver//_/-}" + cd "${srcdir}/${pkgname}-${_pkgver}" + export PYTHON=python2 ./configure \ --prefix=/usr \ --mandir=/usr/share/man \ - --enable-type3 \ - --enable-devicetables \ - --enable-double \ - --with-regular-link \ - --with-python=python2 \ - --enable-pyextension \ + --enable-python-extension \ make } package() { - cd "${srcdir}/${pkgname}-${pkgver//_/-}" + cd "${srcdir}/${pkgname}-${_pkgver}" make DESTDIR="${pkgdir}" install install -d "${pkgdir}/usr/share/fontforge" install -m644 ../Adobe-* "${pkgdir}/usr/share/fontforge" install -d "${pkgdir}/usr/share/icons" - cp -a Packaging/icons "${pkgdir}/usr/share/icons/hicolor" + cp -a desktop/icons "${pkgdir}/usr/share/icons/hicolor" rm -fr "${pkgdir}/usr/share/icons/hicolor/src" install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - install -Dm644 Packaging/fontforge.desktop "${pkgdir}/usr/share/applications/fontforge.desktop" + install -Dm644 desktop/fontforge.desktop "${pkgdir}/usr/share/applications/fontforge.desktop" } diff --git a/extra/imagemagick/PKGBUILD b/extra/imagemagick/PKGBUILD index 5441bf248..4bad0dd52 100644 --- a/extra/imagemagick/PKGBUILD +++ b/extra/imagemagick/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 201665 2013-12-17 20:27:22Z eric $ +# $Id: PKGBUILD 203186 2014-01-05 00:41:26Z eric $ # Maintainer: Eric Bélanger pkgbase=imagemagick pkgname=('imagemagick' 'imagemagick-doc') -pkgver=6.8.7.10 +pkgver=6.8.8.1 pkgrel=1 arch=('i686' 'x86_64') url="http://www.imagemagick.org/" @@ -14,7 +14,7 @@ makedepends=('libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript' \ #source=(http://www.imagemagick.org/download/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz{,.asc} \ source=(ftp://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz{,.asc} \ perlmagick.rpath.patch) -sha1sums=('a74ebac95fb592e98cbe33e25c05978590807c57' +sha1sums=('1a2c0c83b38cc39170825bc247f41c0bb7a92792' 'SKIP' 'e143cf9d530fabf3b58023899b5cc544ba93daec') diff --git a/extra/mpg123/PKGBUILD b/extra/mpg123/PKGBUILD index ef557d1cc..0b7fbb569 100644 --- a/extra/mpg123/PKGBUILD +++ b/extra/mpg123/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 198329 2013-10-30 14:12:16Z allan $ +# $Id: PKGBUILD 203182 2014-01-05 00:11:38Z eric $ # Maintainer: Eric Bélanger pkgname=mpg123 -pkgver=1.16.0 +pkgver=1.17.0 pkgrel=1 pkgdesc="A console based real time MPEG Audio Player for Layer 1, 2 and 3" arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ optdepends=('sdl: for sdl audio support' 'jack: for jack audio support' 'libpulse: for pulse audio support') source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig}) -sha1sums=('73105629f8d4b9426ec9fe93455a8271a96c4ae4' +sha1sums=('8185f06ab94651adb2fc7a1ab860f0fd154b6f80' 'SKIP') build() { diff --git a/extra/taglib-sharp/PKGBUILD b/extra/taglib-sharp/PKGBUILD index 6e68a0a67..a45d61ca6 100644 --- a/extra/taglib-sharp/PKGBUILD +++ b/extra/taglib-sharp/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 188889 2013-06-23 22:30:41Z daniel $ +# $Id: PKGBUILD 203202 2014-01-05 10:51:18Z bpiotrowski $ # Maintainer: Daniel Isenmann # Contributor: Carlos Ruiz pkgname=taglib-sharp pkgver=2.1.0.0 -pkgrel=1 +pkgrel=2 pkgdesc="Library for reading and writing metadata in media files for Mono" arch=('i686' 'x86_64') url="https://github.com/mono/taglib-sharp" -license=('LGPL2') +license=('LGPL2.1') depends=('mono') -source=(http://download.banshee-project.org/taglib-sharp/${pkgver}/${pkgname}-${pkgver}.tar.gz) +source=(http://download.banshee-project.org/taglib-sharp/$pkgver/$pkgname-$pkgver.tar.gz) md5sums=('815f5bdb3cd1b3a4d6bbb34de448ad9d') build() { diff --git a/extra/xsane/PKGBUILD b/extra/xsane/PKGBUILD index bc68f6eb5..ae751665e 100644 --- a/extra/xsane/PKGBUILD +++ b/extra/xsane/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 185793 2013-05-19 08:52:55Z tpowa $ +# $Id: PKGBUILD 203218 2014-01-05 19:22:33Z tpowa $ # Maintainer: Tobias Powalowski # Contributor: Sarah Hay pkgbase=xsane pkgname=('xsane' 'xsane-gimp') -pkgver=0.998 -pkgrel=5 +pkgver=0.999 +pkgrel=1 arch=(i686 x86_64) url="http://www.xsane.org" license=('GPL2') makedepends=('gtk2' 'lcms' 'sane' 'zlib' 'libjpeg' 'gimp') source=(http://www.xsane.org/download/$pkgname-$pkgver.tar.gz xsane-0.995-xdg-open.patch) -md5sums=('936f1cc76b37caa8f285e1e15ac7e0aa' +md5sums=('9927f21e1ab6ba96315e7f0e30746deb' '15541ff0ddc10acfa2059cf99d5478eb') prepare() { -- cgit v1.2.3-54-g00ecf From bd5b8fe0fe2355ad0df744ed310d12b8a70c51f9 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Tue, 7 Jan 2014 03:30:07 +0000 Subject: Tue Jan 7 03:27:41 UTC 2014 --- community/erlang/PKGBUILD | 6 +- community/gdc/PKGBUILD | 21 +- community/gdc/folders.diff | 30 ++- community/gnome-do/PKGBUILD | 24 +- community/gnome-do/gio-gnomedesktop.patch | 252 --------------------- community/pacparser/PKGBUILD | 37 +++ community/ponymix/PKGBUILD | 24 ++ community/python-cx_freeze/PKGBUILD | 11 +- community/uget/PKGBUILD | 12 +- extra/memcached/PKGBUILD | 17 +- extra/memcached/memcached.service | 1 + extra/mercurial/PKGBUILD | 6 +- extra/mesa/PKGBUILD | 17 +- .../mesa/revert.remove.GLXContextID.typedef.patch | 30 +++ extra/xorg-server/CVE-2013-6424.diff | 49 ++++ extra/xorg-server/PKGBUILD | 13 +- kernels/pax-flags-libre/PKGBUILD | 12 +- kernels/pax-flags-libre/games.conf | 3 + kernels/pax-flags-libre/pax-flags-libre.sh | 2 +- kernels/pax-flags-libre/simple.conf | 2 + libre/audacious-plugins-libre/PKGBUILD | 6 +- libre/libretools/PKGBUILD | 12 +- libre/libretools/libretools.install | 56 ++++- libre/mesa-libcl/PKGBUILD | 19 +- .../revert.remove.GLXContextID.typedef.patch | 30 +++ libre/reflector/PKGBUILD | 13 +- pcr/youtube-dl-current/PKGBUILD | 4 +- ~lukeshu/dunst-lukeshu-git/PKGBUILD | 42 ++++ 28 files changed, 398 insertions(+), 353 deletions(-) delete mode 100644 community/gnome-do/gio-gnomedesktop.patch create mode 100644 community/pacparser/PKGBUILD create mode 100644 community/ponymix/PKGBUILD create mode 100644 extra/mesa/revert.remove.GLXContextID.typedef.patch create mode 100644 extra/xorg-server/CVE-2013-6424.diff create mode 100644 libre/mesa-libcl/revert.remove.GLXContextID.typedef.patch create mode 100644 ~lukeshu/dunst-lukeshu-git/PKGBUILD (limited to 'community') diff --git a/community/erlang/PKGBUILD b/community/erlang/PKGBUILD index 33dbdbb72..ba84645f5 100644 --- a/community/erlang/PKGBUILD +++ b/community/erlang/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 103349 2014-01-03 20:02:33Z arodseth $ +# $Id: PKGBUILD 103465 2014-01-06 12:41:09Z arodseth $ # Maintainer: Lukas Fleischer # Maintainer: Alexander Rødseth # Contributor: Vesa Kaihlavirta @@ -9,11 +9,11 @@ pkgbase=erlang pkgname=('erlang' 'erlang-unixodbc') pkgver=R16B03 -pkgrel=3 +pkgrel=4 arch=('x86_64' 'i686') url='http://www.erlang.org/' license=('custom') -makedepends=('perl' 'mesa' 'lksctp-tools' 'unixodbc' 'wxgtk' 'wxgtk2.9' 'glu') +makedepends=('perl' 'mesa' 'lksctp-tools' 'unixodbc' 'wxgtk' 'glu') options=('staticlibs') source=("http://www.erlang.org/download/otp_src_${pkgver/_/-}.tar.gz" "http://www.erlang.org/download/otp_doc_man_${pkgver/_/-}.tar.gz" diff --git a/community/gdc/PKGBUILD b/community/gdc/PKGBUILD index 9d3fbad0a..01aeea0fe 100644 --- a/community/gdc/PKGBUILD +++ b/community/gdc/PKGBUILD @@ -5,7 +5,7 @@ pkgname=('gdc' 'libgphobos-devel') pkgver=4.8.2 -pkgrel=4 +pkgrel=5 arch=('i686' 'x86_64') url="https://github.com/D-Programming-GDC/GDC" license=('GPL') @@ -17,7 +17,7 @@ source=(ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz folders.diff) sha256sums=('e4e2202b15f8ba323f88c65de0e4190b0630a4b2e70b0653526b31e946877ead' 'SKIP' - '805d1130394e3ff18ae7043e111fe2ea045a7da6f290d298a670f9e2c35ba533') + '82f1ba0825164a74660bd5008d8f3acae1bacc3271c86475efc1601fe0da73c4') groups=('dlang' 'dlang-gdc') conflicts=('gdc1-bin' 'gdc1-hg' 'gdc-git') @@ -86,20 +86,21 @@ package_libgphobos-devel() depends=('gdc') # druntime - install -D $srcdir/gdc/libphobos/libdruntime/object.di $pkgdir/usr/include/dlang/gdc/$pkgver/object.di - cp -r $srcdir/gdc/libphobos/libdruntime/core $pkgdir/usr/include/dlang/gdc/$pkgver/core - cp -r $srcdir/gdc/libphobos/libdruntime/gcc $pkgdir/usr/include/dlang/gdc/$pkgver/gcc + install -D $srcdir/gdc/libphobos/libdruntime/object.di $pkgdir/usr/include/dlang/gdc/object.di + install -D $srcdir/gdc/libphobos/libdruntime/__entrypoint.di ${pkgdir}/usr/include/dlang/gdc/__entrypoint.di + cp -r $srcdir/gdc/libphobos/libdruntime/core $pkgdir/usr/include/dlang/gdc/core + cp -r $srcdir/gdc/libphobos/libdruntime/gcc $pkgdir/usr/include/dlang/gdc/gcc # workaround for auto-generated libbacktrace issue # script needs to be re-written to first call normal gcc instalaltion targets to # avoid such problems in future - cp $srcdir/gcc-build/$CHOST/libphobos/libdruntime/gcc/libbacktrace.d $pkgdir/usr/include/dlang/gdc/$pkgver/gcc - rm $pkgdir/usr/include/dlang/gdc/$pkgver/gcc/libbacktrace.d.in + cp $srcdir/gcc-build/$CHOST/libphobos/libdruntime/gcc/libbacktrace.d $pkgdir/usr/include/dlang/gdc/gcc/ + rm $pkgdir/usr/include/dlang/gdc/gcc/libbacktrace.d.in # phobos - cp $srcdir/gdc/libphobos/src/crc32.d ${pkgdir}/usr/include/dlang/gdc/$pkgver/crc32.d - cp -r $srcdir/gdc/libphobos/src/std ${pkgdir}/usr/include/dlang/gdc/$pkgver/std - cp -r $srcdir/gdc/libphobos/src/etc ${pkgdir}/usr/include/dlang/gdc/$pkgver/etc + cp $srcdir/gdc/libphobos/src/crc32.d ${pkgdir}/usr/include/dlang/gdc/ + cp -r $srcdir/gdc/libphobos/src/std ${pkgdir}/usr/include/dlang/gdc/std + cp -r $srcdir/gdc/libphobos/src/etc ${pkgdir}/usr/include/dlang/gdc/etc install -D -m644 $srcdir/gcc-build/$CHOST/libphobos/src/libgphobos2.a $pkgdir/usr/lib/libgphobos2.a } diff --git a/community/gdc/folders.diff b/community/gdc/folders.diff index cf89e5d3d..625d844b0 100644 --- a/community/gdc/folders.diff +++ b/community/gdc/folders.diff @@ -1,16 +1,34 @@ diff --git a/libphobos/configure.ac b/libphobos/configure.ac -index 69dfc35..89b8136 100644 +index 51d9b86..6ff04f1 100644 --- a/libphobos/configure.ac +++ b/libphobos/configure.ac -@@ -215,9 +215,9 @@ dnl (# Default case for install directory for include files.) and on - # will have to modify gcc/configure.ac .. - # For now, basic workaround for cross compilers .. - if test "${host}" != "${target}"; then +@@ -239,9 +239,9 @@ else + fi + + if test "${gdc_host}" != "${gdc_target}"; then - gdc_include_dir='${libdir}/gcc/${host_alias}'/${d_gcc_ver}/include/d + gdc_include_dir='${libdir}/gcc/${host_alias}'/${d_gcc_ver}/include/dlang else - gdc_include_dir='${prefix}'/include/d/${d_gcc_ver} -+ gdc_include_dir='${prefix}'/include/dlang/gcc ++ gdc_include_dir='${prefix}'/include/dlang/gdc fi AC_SUBST(gdc_include_dir) AC_ARG_WITH([cross-host], + +diff --git a/gcc/d/Make-lang.in b/gcc/d/Make-lang.in +index 17e5c45..8a656b1 100644 +--- a/gcc/d/Make-lang.in ++++ b/gcc/d/Make-lang.in +@@ -25,10 +25,10 @@ D_TARGET_INSTALL_NAME = $(target_alias)-$(shell echo gdc|sed '$(program_transfor + + # This should be configured + ifeq ($(host), $(target)) +- D_include_dir = `echo $(exec_prefix) | sed -e 's|^$(prefix)||' -e 's|/[^/]*|/..|g'`/include/d/$(version) ++ D_include_dir = `echo $(exec_prefix) | sed -e 's|^$(prefix)||' -e 's|/[^/]*|/..|g'`/include/dlang/gdc + gcc_d_include_dir = $(libsubdir)/$(unlibsubdir)/..$(D_include_dir) + else +- gcc_d_include_dir = $(libsubdir)/include/d ++ gcc_d_include_dir = $(libsubdir)/include/dlang/gdc + endif + + diff --git a/community/gnome-do/PKGBUILD b/community/gnome-do/PKGBUILD index eea49c48f..2e56ea5a5 100644 --- a/community/gnome-do/PKGBUILD +++ b/community/gnome-do/PKGBUILD @@ -1,30 +1,23 @@ -# $Id: PKGBUILD 99772 2013-10-30 23:37:16Z allan $ +# $Id: PKGBUILD 103497 2014-01-06 21:06:24Z bgyorgy $ # Maintainer: Balló György # Contributor: Allan McRae # Contributor: Doehni pkgname=gnome-do -pkgver=0.9 -pkgrel=2 +pkgver=0.95 +pkgrel=1 pkgdesc="Quickly search for many items present on your desktop or the web, and perform useful actions on those items" arch=('i686' 'x86_64') -url="http://do.davebsd.com/" +url="https://launchpad.net/do" license=('GPL3') -depends=('gconf-sharp' 'libgnome-desktop-sharp' 'gnome-keyring-sharp' 'mono-addins' 'notify-sharp' 'hicolor-icon-theme' 'xdg-utils') -makedepends=('intltool' 'libgnome-sharp' 'gio-sharp') +depends=('gconf-sharp' 'gnome-desktop2' 'gnome-keyring-sharp' 'mono-addins' 'notify-sharp' 'gkeyfile-sharp' 'hicolor-icon-theme' 'xdg-utils') +makedepends=('intltool' 'gio-sharp') install=$pkgname.install -source=(http://launchpad.net/do/trunk/$pkgver/+download/$pkgname-$pkgver.tar.gz - gio-gnomedesktop.patch) -md5sums=('d360e56953915d9585c0ee71f433129c' - 'e9ac5e4510c1475d61a20c5d94594d98') +source=(http://launchpad.net/do/trunk/$pkgver/+download/$pkgname-$pkgver.tar.gz) +md5sums=('60309cd42dcdfc25e215346b3346095f') build() { cd "$srcdir/$pkgname-$pkgver" - - # https://code.launchpad.net/~ballogy/do/gio-gnomedesktop-port/+merge/95842 - patch -Np1 -i "$srcdir/gio-gnomedesktop.patch" - - autoreconf -fi ./configure --prefix=/usr --sysconfdir=/etc \ --disable-schemas-install \ --with-gconf-schema-file-dir=/usr/share/gconf/schemas @@ -33,6 +26,5 @@ build() { package() { cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install } diff --git a/community/gnome-do/gio-gnomedesktop.patch b/community/gnome-do/gio-gnomedesktop.patch deleted file mode 100644 index 358b0b731..000000000 --- a/community/gnome-do/gio-gnomedesktop.patch +++ /dev/null @@ -1,252 +0,0 @@ -diff -Naur gnome-do-0.9.orig/configure.ac gnome-do-0.9/configure.ac ---- gnome-do-0.9.orig/configure.ac 2012-03-04 08:46:12.000000000 +0100 -+++ gnome-do-0.9/configure.ac 2012-06-24 19:31:49.150955445 +0200 -@@ -60,17 +60,29 @@ - PKG_CHECK_MODULES([GCONF_SHARP_20], [gconf-sharp-2.0]) - PKG_CHECK_MODULES([GLADE_SHARP_20], [glade-sharp-2.0]) - PKG_CHECK_MODULES([GLIB_SHARP_20], [glib-sharp-2.0]) -+ -+dnl gio-sharp is an unstable api library -+PKG_CHECK_MODULES([GIO_SHARP], [gio-sharp-2.0]) -+files="`$PKG_CONFIG --variable=Libraries gio-sharp-2.0`" -+for file in $files; do -+ GIO_SHARP_SOURCE_ASSEMBLIES="$GIO_SHARP_SOURCE_ASSEMBLIES $file" -+ GIO_SHARP_ASSEMBLIES="$GIO_SHARP_ASSEMBLIES $top_srcdir/build/$(basename $file)" -+ [[ -r "$file.config" ]] && GIO_SHARP_SOURCE_ASSEMBLIES="$GIO_SHARP_SOURCE_ASSEMBLIES $file.config" -+ [[ -r "$file.config" ]] && GIO_SHARP_ASSEMBLIES="$GIO_SHARP_ASSEMBLIES $top_srcdir/build/$(basename $file).config" -+ -+ GIO_SHARP_LIBS="$GIO_SHARP_LIBS -r:$top_srcdir/build/$(basename $file)" -+done -+AC_SUBST([GIO_SHARP_SOURCE_ASSEMBLIES]) -+AC_SUBST([GIO_SHARP_ASSEMBLIES]) -+AC_SUBST([GIO_SHARP_LIBS]) -+ - PKG_CHECK_MODULES([GNOME_DESKTOP_SHARP_20], [gnome-desktop-sharp-2.0]) - PKG_CHECK_MODULES([GNOME_KEYRING_SHARP], [gnome-keyring-sharp-1.0]) --PKG_CHECK_MODULES([GNOME_SHARP_20], [gnome-sharp-2.0]) --PKG_CHECK_MODULES([GNOME_VFS_SHARP_20], [gnome-vfs-sharp-2.0]) - PKG_CHECK_MODULES([GTK_SHARP_20], [gtk-sharp-2.0]) --PKG_CHECK_MODULES([LIBRSVG_SHARP], [rsvg2-sharp-2.0]) - PKG_CHECK_MODULES([MONO_ADDINS], [mono-addins]) - PKG_CHECK_MODULES([MONO_ADDINS_GUI], [mono-addins-gui]) - PKG_CHECK_MODULES([MONO_ADDINS_SETUP], [mono-addins-setup]) - PKG_CHECK_MODULES([NOTIFY_SHARP], [notify-sharp]) --PKG_CHECK_MODULES([WNCK_SHARP_10], [wnck-sharp-1.0]) - - - AC_SUBST([GCONF_SHARP_20_LIBS]) -@@ -78,10 +90,7 @@ - AC_SUBST([GLIB_SHARP_20_LIBS]) - AC_SUBST([GNOME_DESKTOP_SHARP_20_LIBS]) - AC_SUBST([GNOME_KEYRING_SHARP_LIBS]) --AC_SUBST([GNOME_SHARP_20_LIBS]) --AC_SUBST([GNOME_VFS_SHARP_20_LIBS]) - AC_SUBST([GTK_SHARP_20_LIBS]) --AC_SUBST([LIBRSVG_SHARP_LIBS]) - AC_SUBST([MONO_ADDINS_LIBS]) - AC_SUBST([MONO_ADDINS_GUI_LIBS]) - AC_SUBST([MONO_ADDINS_SETUP_LIBS]) -diff -Naur gnome-do-0.9.orig/Do.Platform.Linux/Do.Platform.Linux.dll.config.in gnome-do-0.9/Do.Platform.Linux/Do.Platform.Linux.dll.config.in ---- gnome-do-0.9.orig/Do.Platform.Linux/Do.Platform.Linux.dll.config.in 2012-01-14 14:49:58.000000000 +0100 -+++ gnome-do-0.9/Do.Platform.Linux/Do.Platform.Linux.dll.config.in 2012-06-24 19:31:49.124289904 +0200 -@@ -1,3 +1,4 @@ - - -+ - -diff -Naur gnome-do-0.9.orig/Do.Platform.Linux/Makefile.am gnome-do-0.9/Do.Platform.Linux/Makefile.am ---- gnome-do-0.9.orig/Do.Platform.Linux/Makefile.am 2012-01-14 14:49:58.000000000 +0100 -+++ gnome-do-0.9/Do.Platform.Linux/Makefile.am 2012-06-24 19:31:49.127623096 +0200 -@@ -27,6 +27,8 @@ - src/Do.Platform/Do.Platform.Linux/KeyBindingService.cs \ - src/Do.Universe/ApplicationItem.cs \ - src/Do.Universe/CategoryItem.cs \ -+ src/Do.Universe/Desktop.cs \ -+ src/Do.Universe/DesktopThumbnailSize.cs \ - src/Do.Universe/NullApplicationItem.cs \ - src/Do.Universe/FileItem.cs \ - src/Do.Universe/ApplicationItemSource.cs \ -@@ -54,7 +56,7 @@ - Mono.Posix \ - $(GTK_SHARP_20_LIBS) \ - $(GNOME_KEYRING_SHARP_LIBS) \ -- $(GNOME_SHARP_20_LIBS) \ -+ $(GIO_SHARP_LIBS) \ - $(GNOME_DESKTOP_SHARP_20_LIBS) \ - $(GCONF_SHARP_20_LIBS) \ - $(MONO_ADDINS_LIBS) \ -diff -Naur gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Platform/Do.Platform.Linux/SystemService.cs gnome-do-0.9/Do.Platform.Linux/src/Do.Platform/Do.Platform.Linux/SystemService.cs ---- gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Platform/Do.Platform.Linux/SystemService.cs 2012-01-14 14:49:58.000000000 +0100 -+++ gnome-do-0.9/Do.Platform.Linux/src/Do.Platform/Do.Platform.Linux/SystemService.cs 2012-06-24 19:31:49.130956287 +0200 -@@ -166,7 +166,8 @@ - - string AutoStartUri { - get { -- return Gnome.Vfs.Uri.GetUriFromLocalPath (AutoStartFileName); -+ var uri = new Uri(AutoStartFileName).ToString(); -+ return uri; - } - } - -diff -Naur gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Universe/Desktop.cs gnome-do-0.9/Do.Platform.Linux/src/Do.Universe/Desktop.cs ---- gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Universe/Desktop.cs 1970-01-01 01:00:00.000000000 +0100 -+++ gnome-do-0.9/Do.Platform.Linux/src/Do.Universe/Desktop.cs 2012-06-24 19:31:49.134289478 +0200 -@@ -0,0 +1,76 @@ -+// This file was generated by the Gtk# code generator. -+// Any changes made will be lost if regenerated. -+ -+namespace Gnome { -+ -+ using System; -+ using System.Runtime.InteropServices; -+ -+#region Autogenerated code -+ public class Desktop { -+ -+ [DllImport("gnome-desktop-2")] -+ static extern void gnome_desktop_prepend_terminal_to_vector(out int argc, IntPtr argv); -+ -+ public static int PrependTerminalToVector(string argv) { -+ int argc; -+ gnome_desktop_prepend_terminal_to_vector(out argc, GLib.Marshaller.StringToPtrGStrdup(argv)); -+ return argc; -+ } -+ -+ [DllImport("gnome-desktop-2")] -+ static extern bool gnome_desktop_thumbnail_has_uri(IntPtr pixbuf, IntPtr uri); -+ -+ public static bool ThumbnailHasUri(Gdk.Pixbuf pixbuf, string uri) { -+ IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri); -+ bool raw_ret = gnome_desktop_thumbnail_has_uri(pixbuf == null ? IntPtr.Zero : pixbuf.Handle, native_uri); -+ bool ret = raw_ret; -+ GLib.Marshaller.Free (native_uri); -+ return ret; -+ } -+ -+ [DllImport("gnome-desktop-2")] -+ static extern IntPtr gnome_desktop_thumbnail_scale_down_pixbuf(IntPtr pixbuf, int dest_width, int dest_height); -+ -+ public static Gdk.Pixbuf ThumbnailScaleDownPixbuf(Gdk.Pixbuf pixbuf, int dest_width, int dest_height) { -+ IntPtr raw_ret = gnome_desktop_thumbnail_scale_down_pixbuf(pixbuf == null ? IntPtr.Zero : pixbuf.Handle, dest_width, dest_height); -+ Gdk.Pixbuf ret = GLib.Object.GetObject(raw_ret) as Gdk.Pixbuf; -+ return ret; -+ } -+ -+ [DllImport("gnome-desktop-2")] -+ static extern IntPtr gnome_desktop_thumbnail_path_for_uri(IntPtr uri, int size); -+ -+ public static string ThumbnailPathForUri(string uri, Gnome.DesktopThumbnailSize size) { -+ IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri); -+ IntPtr raw_ret = gnome_desktop_thumbnail_path_for_uri(native_uri, (int) size); -+ string ret = GLib.Marshaller.PtrToStringGFree(raw_ret); -+ GLib.Marshaller.Free (native_uri); -+ return ret; -+ } -+ -+ [DllImport("gnome-desktop-2")] -+ static extern bool gnome_desktop_thumbnail_is_valid(IntPtr pixbuf, IntPtr uri, IntPtr mtime); -+ -+ public static bool ThumbnailIsValid(Gdk.Pixbuf pixbuf, string uri, System.DateTime mtime) { -+ IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri); -+ bool raw_ret = gnome_desktop_thumbnail_is_valid(pixbuf == null ? IntPtr.Zero : pixbuf.Handle, native_uri, GLib.Marshaller.DateTimeTotime_t (mtime)); -+ bool ret = raw_ret; -+ GLib.Marshaller.Free (native_uri); -+ return ret; -+ } -+ -+ [DllImport("gnome-desktop-2")] -+ static extern IntPtr gnome_desktop_thumbnail_md5(IntPtr uri); -+ -+ public static string ThumbnailMd5(string uri) { -+ IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri); -+ IntPtr raw_ret = gnome_desktop_thumbnail_md5(native_uri); -+ string ret = GLib.Marshaller.PtrToStringGFree(raw_ret); -+ GLib.Marshaller.Free (native_uri); -+ return ret; -+ } -+ -+#endregion -+ } -+} -diff -Naur gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Universe/DesktopThumbnailSize.cs gnome-do-0.9/Do.Platform.Linux/src/Do.Universe/DesktopThumbnailSize.cs ---- gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Universe/DesktopThumbnailSize.cs 1970-01-01 01:00:00.000000000 +0100 -+++ gnome-do-0.9/Do.Platform.Linux/src/Do.Universe/DesktopThumbnailSize.cs 2012-06-24 19:31:49.137622670 +0200 -@@ -0,0 +1,16 @@ -+// This file was generated by the Gtk# code generator. -+// Any changes made will be lost if regenerated. -+ -+namespace Gnome { -+ -+ using System; -+ using System.Runtime.InteropServices; -+ -+#region Autogenerated code -+ public enum DesktopThumbnailSize { -+ -+ Normal, -+ Large, -+ } -+#endregion -+} -diff -Naur gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Universe/FileItem.cs gnome-do-0.9/Do.Platform.Linux/src/Do.Universe/FileItem.cs ---- gnome-do-0.9.orig/Do.Platform.Linux/src/Do.Universe/FileItem.cs 2012-01-14 14:49:58.000000000 +0100 -+++ gnome-do-0.9/Do.Platform.Linux/src/Do.Universe/FileItem.cs 2012-06-24 19:31:49.140955864 +0200 -@@ -63,8 +63,6 @@ - - static FileItem () - { -- Gnome.Vfs.Vfs.Initialize (); -- - // Initialize SpecialFolderIcons by expanding paths in - // SpecialFolderIconsXDG. - // -@@ -130,7 +128,11 @@ - } - - public string MimeType { -- get { return Gnome.Vfs.Global.GetMimeType (Path); } -+ get { -+ GLib.File file = GLib.FileFactory.NewFromCommandlineArg(Path); -+ var info = file.QueryInfo ("standard::content-type", GLib.FileQueryInfoFlags.None, null); -+ return info.ContentType; -+ } - } - - public override string Icon { -@@ -142,8 +144,8 @@ - icon = MaybeGetSpecialFolderIconForPath (Path); - if (icon != null) return icon; - -- string large_thumb = Thumbnail.PathForUri (Uri, ThumbnailSize.Large); -- string normal_thumb = Thumbnail.PathForUri (Uri, ThumbnailSize.Normal); -+ string large_thumb = Desktop.ThumbnailPathForUri (Uri, DesktopThumbnailSize.Large); -+ string normal_thumb = Desktop.ThumbnailPathForUri (Uri, DesktopThumbnailSize.Normal); - - // Generating the thumbnail ourself is too slow for large files. - // Suggestion: generate thumbnails asynchronously. Banshee's -diff -Naur gnome-do-0.9.orig/Makefile.am gnome-do-0.9/Makefile.am ---- gnome-do-0.9.orig/Makefile.am 2012-01-14 14:49:58.000000000 +0100 -+++ gnome-do-0.9/Makefile.am 2012-06-24 19:31:56.837297364 +0200 -@@ -2,6 +2,22 @@ - - ACLOCAL_AMFLAGS = -I m4 -I m4/shamrock - -+# Install copied assemblies to our libdir -+copiedlibsdir = $(pkglibdir) -+copiedlibs_DATA = \ -+ $(GIO_SHARP_ASSEMBLIES) -+ -+$(GIO_SHARP_ASSEMBLIES): $(GIO_SHARP_SOURCE_ASSEMBLIES) -+ @mkdir -p $(top_builddir)/build -+ @for file in $@ ; do \ -+ for source in $? ; do \ -+ if [ $$(basename $$source) == $$(basename $$file) ] ; then \ -+ echo " CP " $$(basename $$file) ; \ -+ cp $$source $$file ; \ -+ fi ;\ -+ done ; \ -+ done -+ - SUBDIRS = \ - . \ - data \ diff --git a/community/pacparser/PKGBUILD b/community/pacparser/PKGBUILD new file mode 100644 index 000000000..f7c000918 --- /dev/null +++ b/community/pacparser/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 103445 2014-01-06 02:45:23Z fyan $ +# Maintainer: Felix Yan +# Contributor: Max Meyer + +pkgbase=pacparser +pkgname=('pacparser' 'python2-pacparser') +pkgver=1.3.1 +pkgrel=1 +arch=(i686 x86_64) +url="http://pacparser.googlecode.com" +license=('LGPL') +makedepends=('python2') +options=('!makeflags') +source=("http://pacparser.googlecode.com/files/${pkgbase}-${pkgver}.tar.gz") + +build() { + cd $pkgbase-$pkgver + PYTHON=python2 make all pymod -C src +} + +package_pacparser() { + pkgdesc="Library to parse proxy auto-config (PAC) files" + + cd $pkgbase-$pkgver + make -C src DESTDIR="$pkgdir/" install +} + +package_python2-pacparser() { + depends=('python2') + pkgdesc="Python 2.x pacparser module" + + cd $pkgbase-$pkgver + PYTHON=python2 make -C src DESTDIR="$pkgdir/" install-pymod +} + +# vim:set ts=2 sw=2 et: +sha512sums=('20295667d92eb5385429c085c14ca8dc1ba216487ff474304433f99119216934be2dd1647452173418de31f5345679dd7159eafd331e40a2b87564f878d31349') diff --git a/community/ponymix/PKGBUILD b/community/ponymix/PKGBUILD new file mode 100644 index 000000000..49f988710 --- /dev/null +++ b/community/ponymix/PKGBUILD @@ -0,0 +1,24 @@ +# Maintainer: Dave Reisner +# Maintainer: Jelle van der Waa + +pkgname=ponymix +pkgver=2 +pkgrel=2 +pkgdesc="CLI PulseAudio Volume Control" +arch=('i686' 'x86_64') +url="http://github.com/falconindy/ponymix" +license=('MIT') +depends=('pulseaudio' 'libnotify') +source=("http://code.falconindy.com/archive/ponymix/$pkgname-$pkgver.tar.xz"{,.sig}) +md5sums=('9874c22dbba2805c870ae663331ca4ca' + 'SKIP') + +build() { + make -C "$srcdir/$pkgname-$pkgver" +} + +package() { + make -C "$srcdir/$pkgname-$pkgver" DESTDIR="$pkgdir" install +} + +# vim: ft=sh syn=sh et diff --git a/community/python-cx_freeze/PKGBUILD b/community/python-cx_freeze/PKGBUILD index cc563b77a..a2fe30c1f 100644 --- a/community/python-cx_freeze/PKGBUILD +++ b/community/python-cx_freeze/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 84904 2013-02-25 23:57:50Z arodseth $ +# $Id: PKGBUILD 103463 2014-01-06 11:40:32Z arodseth $ # Maintainer: Alexander Rødseth # Contributor: Ray Rashif # Contributor: Douglas Soares de Andrade @@ -7,7 +7,7 @@ pkgbase=python-cx_freeze pkgname=('python-cx_freeze' 'python2-cx_freeze') -pkgver=4.3.1 +pkgver=4.3.2 pkgrel=1 pkgdesc='Set of utilities for freezing Python scripts into executables' arch=('x86_64' 'i686') @@ -15,13 +15,13 @@ url='http://cx-freeze.sourceforge.net/' license=('PSF') makedepends=('python' 'python2') source=("http://prdownloads.sourceforge.net/cx-freeze/cx_Freeze-$pkgver.tar.gz") -sha256sums=('11f8818ab4e1754c81c1226ce3430f29e6ba231a22a153ce3794a5cc464fa11b') +sha256sums=('d634aae1e1d20b660d24245450b8a5ea3ad9c443cd735d8fbe17c1d93b8b23df') package_python-cx_freeze() { depends=('python') conflicts=('cx_freeze' 'python2-cx_freeze') - cd "$srcdir/cx_Freeze-$pkgver" + cd "cx_Freeze-$pkgver" python setup.py install --root "$pkgdir" --optimize 1 } @@ -30,8 +30,9 @@ package_python2-cx_freeze() { conflicts=('cx_freeze' 'python-cx_freeze') replaces=('cx_freeze') - cd "$srcdir/cx_Freeze-$pkgver" + cd "cx_Freeze-$pkgver" python2 setup.py install --root "$pkgdir" --optimize 1 + # Python 2 shebang fix find "$pkgdir" -name qotd.py -exec sed -i '0,/on/s//on2/' {} \; } diff --git a/community/uget/PKGBUILD b/community/uget/PKGBUILD index 0a0edc18d..14bec946f 100644 --- a/community/uget/PKGBUILD +++ b/community/uget/PKGBUILD @@ -1,23 +1,22 @@ -# $Id: PKGBUILD 95829 2013-08-17 12:17:24Z bgyorgy $ +# $Id: PKGBUILD 103501 2014-01-06 21:19:08Z bgyorgy $ # Maintainer: Balló György pkgname=uget -pkgver=1.10.3 -pkgrel=2 +pkgver=1.10.4 +pkgrel=1 pkgdesc="GTK+ download manager featuring download classification and HTML import" arch=('i686' 'x86_64') -url="http://urlget.sourceforge.net/" +url="http://ugetdm.com/" license=('LGPL') depends=('libnotify' 'gtk3' 'gstreamer' 'curl' 'hicolor-icon-theme' 'xdg-utils') makedepends=('intltool') optdepends=('aria2: alternative backend') install=$pkgname.install source=(http://downloads.sourceforge.net/urlget/$pkgname-$pkgver.tar.gz) -md5sums=('d71c927cfcfc3ef9f62cc9cb3ca7bab7') +md5sums=('58139de0bd043cfeae0f22c239f4bbc5') build() { cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --disable-appindicator make @@ -25,6 +24,5 @@ build() { package() { cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir/" install } diff --git a/extra/memcached/PKGBUILD b/extra/memcached/PKGBUILD index 2de510c5d..d743e3091 100644 --- a/extra/memcached/PKGBUILD +++ b/extra/memcached/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 185263 2013-05-12 16:29:01Z dan $ +# $Id: PKGBUILD 203228 2014-01-05 23:07:05Z dan $ # Maintainer: Dan McGee # Contributor: Michael Irwin <6d6469@gmail.com> pkgname=memcached -pkgver=1.4.15 -pkgrel=2 +pkgver=1.4.17 +pkgrel=1 pkgdesc="A distributed memory object caching system" arch=(i686 x86_64) url="http://memcached.org/" @@ -12,10 +12,10 @@ license=('GPL') depends=('libevent') optdepends=('perl: for memcached-tool usage') install=memcached.install -source=(http://memcached.googlecode.com/files/$pkgname-$pkgver.tar.gz +source=(http://www.memcached.org/files/$pkgname-$pkgver.tar.gz memcached.service) -sha256sums=('169721ab7a7531add6ae9f6b14b6b5641725fe0b1f0bdf5c3a4327725901e2b4' - '453cad82bddb25fac43fd5cedc5702b9b6c6abaf7498e21445facf20f25f53a6') +sha256sums=('d9173ef6d99ba798c982ea4566cb4f0e64eb23859fdbf9926a89999d8cdc0458' + 'e768a48192aefa2e2f443c86b3c085043005ffc313da40f3074c060a18c8359d') build() { cd "$srcdir/$pkgname-$pkgver" @@ -23,6 +23,11 @@ build() { make } +check() { + cd "$srcdir/$pkgname-$pkgver" + make test +} + package() { cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir" install diff --git a/extra/memcached/memcached.service b/extra/memcached/memcached.service index c6e15fb7c..8b04b1c35 100644 --- a/extra/memcached/memcached.service +++ b/extra/memcached/memcached.service @@ -6,6 +6,7 @@ After=network.target User=memcached # Remove '-l 127.0.0.1' to listen on all addresses ExecStart=/usr/bin/memcached -l 127.0.0.1 +Restart=always [Install] WantedBy=multi-user.target diff --git a/extra/mercurial/PKGBUILD b/extra/mercurial/PKGBUILD index 41a5b7b8f..8a4a1aa92 100644 --- a/extra/mercurial/PKGBUILD +++ b/extra/mercurial/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 200687 2013-12-02 16:02:10Z giovanni $ +# $Id: PKGBUILD 203249 2014-01-06 19:40:56Z giovanni $ # Maintainer: Giovanni Scafora # Contributor: Douglas Soares de Andrade pkgname=mercurial -pkgver=2.8.1 +pkgver=2.8.2 pkgrel=1 pkgdesc="A scalable distributed SCM tool" arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ optdepends=('tk: for the hgk GUI') backup=('etc/mercurial/hgrc') source=("http://mercurial.selenic.com/release/${pkgname}-${pkgver}.tar.gz" 'mercurial.profile') -md5sums=('bede5869f9b5d09ab3269bac472495e7' +md5sums=('050d05f9efc95dfef88217b63962a09a' '43e1d36564d4c7fbe9a091d3ea370a44') package() { diff --git a/extra/mesa/PKGBUILD b/extra/mesa/PKGBUILD index d83c26897..12b858267 100644 --- a/extra/mesa/PKGBUILD +++ b/extra/mesa/PKGBUILD @@ -1,20 +1,29 @@ -# $Id: PKGBUILD 201668 2013-12-17 21:04:31Z lcarlier $ +# $Id: PKGBUILD 203236 2014-01-06 07:56:25Z lcarlier $ # Maintainer: Jan de Groot # Maintainer: Andreas Radke pkgbase=mesa pkgname=('ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa' 'mesa-libgl') pkgver=10.0.1 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') makedepends=('python2' 'libxml2' 'libx11' 'glproto' 'libdrm' 'dri2proto' 'libxxf86vm' 'libxdamage' 'libvdpau' 'wayland' 'elfutils' 'llvm' 'systemd') url="http://mesa3d.sourceforge.net" license=('custom') source=(ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2 - LICENSE) + LICENSE + revert.remove.GLXContextID.typedef.patch) md5sums=('0a72ca5b36046a658bf6038326ff32ed' - '5c65a0fe315dd347e09b1f2826a1df5a') + '5c65a0fe315dd347e09b1f2826a1df5a' + '6e49b4dd4ceb7873610f608f74efbaaf') + +prepare() { + cd ${srcdir}/?esa-* + + # Cherry picked from mesa branch 10.0, this fix wxgtk rebuild (FS#38392) + patch -Np1 -i ../revert.remove.GLXContextID.typedef.patch +} build() { cd ${srcdir}/?esa-* diff --git a/extra/mesa/revert.remove.GLXContextID.typedef.patch b/extra/mesa/revert.remove.GLXContextID.typedef.patch new file mode 100644 index 000000000..92232dd2d --- /dev/null +++ b/extra/mesa/revert.remove.GLXContextID.typedef.patch @@ -0,0 +1,30 @@ +From 347f1493320e1bc2194c70d4d66bfe2b5883bf1e Mon Sep 17 00:00:00 2001 +From: Kenneth Graunke +Date: Mon, 30 Dec 2013 07:19:36 +0000 +Subject: Revert "mesa: Remove GLXContextID typedef from glx.h." + +This reverts commit 136a12ac98868d82c2ae9fcc80d11044a7ec56d1. + +According to belak51 on IRC, this commit broke Allegro, which would no +longer compile. Applications apparently expect the GLXContextID typedef +to exist in glx.h; removing it breaks them. A bit of searching around +the internet revealed other complaints since upgrading to Mesa 10. + +Cc: "10.0" +(cherry picked from commit f425d56ba41382be04366d011536ee78a03a2f33) +--- +diff --git a/include/GL/glx.h b/include/GL/glx.h +index 62d0ede..234abc0 100644 +--- a/include/GL/glx.h ++++ b/include/GL/glx.h +@@ -168,6 +168,7 @@ typedef XID GLXDrawable; + /* GLX 1.3 and later */ + typedef struct __GLXFBConfigRec *GLXFBConfig; + typedef XID GLXFBConfigID; ++typedef XID GLXContextID; + typedef XID GLXWindow; + typedef XID GLXPbuffer; + +-- +cgit v0.9.0.2-2-gbebe + diff --git a/extra/xorg-server/CVE-2013-6424.diff b/extra/xorg-server/CVE-2013-6424.diff new file mode 100644 index 000000000..8c664b66e --- /dev/null +++ b/extra/xorg-server/CVE-2013-6424.diff @@ -0,0 +1,49 @@ +From patchwork Wed Oct 2 13:47:54 2013 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: exa: only draw valid trapezoids +From: Maarten Lankhorst +X-Patchwork-Id: 14769 +Message-Id: <524C240A.9010607@canonical.com> +To: "X.Org Devel List" +Date: Wed, 02 Oct 2013 15:47:54 +0200 + +Fixes freedesktop.org bug https://bugs.freedesktop.org/show_bug.cgi?id=67484 + +If t->bottom is close to MIN_INT, removing top can wraparound, so do the check properly. +A similar fix should also be applied to pixman. + +Signed-off-by: Maarten Lankhorst + +--- + + +diff --git a/exa/exa_render.c b/exa/exa_render.c +index 172e2b5..807eeba 100644 +--- a/exa/exa_render.c ++++ b/exa/exa_render.c +@@ -1141,7 +1141,8 @@ exaTrapezoids(CARD8 op, PicturePtr pSrc, PicturePtr pDst, + + exaPrepareAccess(pPicture->pDrawable, EXA_PREPARE_DEST); + for (; ntrap; ntrap--, traps++) +- (*ps->RasterizeTrapezoid) (pPicture, traps, -bounds.x1, -bounds.y1); ++ if (xTrapezoidValid(traps)) ++ (*ps->RasterizeTrapezoid) (pPicture, traps, -bounds.x1, -bounds.y1); + exaFinishAccess(pPicture->pDrawable, EXA_PREPARE_DEST); + + xRel = bounds.x1 + xSrc - xDst; +diff --git a/render/picture.h b/render/picture.h +index c85353a..fcd6401 100644 +--- a/render/picture.h ++++ b/render/picture.h +@@ -211,7 +211,7 @@ typedef pixman_fixed_t xFixed; + /* whether 't' is a well defined not obviously empty trapezoid */ + #define xTrapezoidValid(t) ((t)->left.p1.y != (t)->left.p2.y && \ + (t)->right.p1.y != (t)->right.p2.y && \ +- (int) ((t)->bottom - (t)->top) > 0) ++ ((t)->bottom > (t)->top)) + + /* + * Standard NTSC luminance conversions: + diff --git a/extra/xorg-server/PKGBUILD b/extra/xorg-server/PKGBUILD index 28ade7a63..b9b3f52ad 100644 --- a/extra/xorg-server/PKGBUILD +++ b/extra/xorg-server/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 201503 2013-12-13 14:16:21Z andyrtr $ +# $Id: PKGBUILD 203261 2014-01-06 22:20:54Z lcarlier $ # Maintainer: AndyRTR # Maintainer: Jan de Groot pkgbase=xorg-server pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-common' 'xorg-server-devel') pkgver=1.14.5 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') license=('custom') url="http://xorg.freedesktop.org" @@ -22,7 +22,8 @@ source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2 xvfb-run xvfb-run.1 10-quirks.conf - fb-rename-wfbDestroyGlyphCache.patch) + fb-rename-wfbDestroyGlyphCache.patch + CVE-2013-6424.diff) sha256sums=('8d0f06bf1416487a5170318477088826a8d737d4a201e996b2dc1ecff47461d1' '66e25f76a7496c429e0aff4b0670f168719bb0ceaeb88c6f2272f2bf3ed21162' 'd027776fac1f7675b0a9ee817502290b1c45f9c09b0f0a6bb058c35f92361e84' @@ -32,7 +33,8 @@ sha256sums=('8d0f06bf1416487a5170318477088826a8d737d4a201e996b2dc1ecff47461d1' 'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9' '2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776' '94612f5c0d34a3b7152915c2e285c7b462e9d8e38d3539bd551a339498eac166' - 'd0832cc16b5e6c1dee2959055a4b327f5c87e2a67b5f427d654663057207b2c1') + 'd0832cc16b5e6c1dee2959055a4b327f5c87e2a67b5f427d654663057207b2c1' + '89948993afd4d9aec6a0bdbaf62f494e9956bb77a0386307d497f340a818ff61') prepare() { cd "${pkgbase}-${pkgver}" @@ -53,6 +55,9 @@ prepare() { # http://cgit.freedesktop.org/xorg/xserver/commit/fb/wfbrename.h?id=5047810a4c20fab444b8c6eb146c55dcdb0d4219 patch -Np1 -i ../fb-rename-wfbDestroyGlyphCache.patch + + # Fix CVE-2013-6424 (FS#38401) + patch -Np1 -i ../CVE-2013-6424.diff } build() { diff --git a/kernels/pax-flags-libre/PKGBUILD b/kernels/pax-flags-libre/PKGBUILD index b36d6fa20..7ae862232 100644 --- a/kernels/pax-flags-libre/PKGBUILD +++ b/kernels/pax-flags-libre/PKGBUILD @@ -7,9 +7,9 @@ # pkgname=pax-flags-libre -pkgdesc='Deactivates PaX flags for several binaries to work with PaX enabled kernels, without nonfree software support' -pkgver=2.0.14 -pkgrel=2 +pkgdesc='Deactivates PaX flags for several binaries to work with PaX enabled kernels (a libre fork of linux-pax-flags)' +pkgver=2.0.15 +pkgrel=1 arch=(any) url='https://github.com/g4jc/pax-flags-libre' license=(GPL3) @@ -36,16 +36,16 @@ package() { mkdir -p $pkgdir/etc/pax-flags } -sha256sums=('8581506830903ffcbb0876e4380d660ff044d9805d68f1432753c5bb99dc0db9' +sha256sums=('06295e9d2afea0ea01c42620f0cd5e3ae785bc42c2749d4bef52f7d5b8a043ce' 'ee66dc1087f501a7ebb89b0ec36125b94dc87ce560aa38c6d606dad1818d5b95' '9d62896dd51be4979cd85bfcd09de219f6068ec312f27e2a66f7a2f2c78d1f38' '7bbbad18a19150893916995723cd7e256a7b4e2baa5c2ff57bc27886c40f51fc' 'bb87f4dce8e20f2ce601bdcb888dd688d8f0e9d0ab367e09c8081daffa15b03a' - '298bf32f4e8193d4cc5a4eb98369dc564afe51849046fd5673150cea51950985' + '9982ffa4d1dffc979ec7347dfcf3a558e6f441a45c07a2d7a3c3159e02bc4763' '71afe786955d149fe216ff1a60348562914a6820d3b7f9dc42aa44913062b04e' '01ddeec77c605e1d3aa00a1fdc4c3537989468ab78da5f37b893cdbcfe34176c' '1f205fddfb427a696fb00221a3007453e25fbbf180ea026c264d23eeac9e1870' '2736d0ef20d0127c34e132db38d8993dee3062ba0ac0cdf8d444a8d3665698b8' '6171eefd363f2c70bed9ac41fae3458d9e03460fdaf079c99445482e9649555a' - '5cd70e01fc7c8867d3ee9160fecf44c028947b54788a41833789c71ef5cef9a4' + '1271e807fa70a9af8659a8e982830cdb2ab20982a44a967fa2c973ebc7f54664' 'ea003c4201745cd0c4bcf5cec5ca2d0a79cc6b1b04ceaa276ace0ad0287b8c50') diff --git a/kernels/pax-flags-libre/games.conf b/kernels/pax-flags-libre/games.conf index 9b5bd943a..5552b2814 100644 --- a/kernels/pax-flags-libre/games.conf +++ b/kernels/pax-flags-libre/games.conf @@ -12,4 +12,7 @@ PSmXER: - /opt/enemy-territory/et.x86 - /opt/quake3/ioquake3.i386 - /opt/quake3/ioquake3.x86_64 + - /usr/bin/bzflag + - /usr/bin/minetest + - /usr/bin/opencity diff --git a/kernels/pax-flags-libre/pax-flags-libre.sh b/kernels/pax-flags-libre/pax-flags-libre.sh index 612f6cf93..97b45cc87 100755 --- a/kernels/pax-flags-libre/pax-flags-libre.sh +++ b/kernels/pax-flags-libre/pax-flags-libre.sh @@ -10,4 +10,4 @@ ruby=$(which ruby) $sudo systemctl --system daemon-reload -$sudo linux-pax-flags.rb $@ +$sudo pax-flags-libre.rb $@ diff --git a/kernels/pax-flags-libre/simple.conf b/kernels/pax-flags-libre/simple.conf index d4d6594a8..ff726e430 100644 --- a/kernels/pax-flags-libre/simple.conf +++ b/kernels/pax-flags-libre/simple.conf @@ -11,6 +11,7 @@ PSmXEr: - /usr/lib/iceweasel/plugin-container - /usr/lib/gcc/x86_64-unknown-linux-gnu/*/cc1plus - /usr/lib/icedove/icedove + - /usr/bin/qupzilla # MPROTECT off PSmXER: @@ -48,6 +49,7 @@ PSmXER: - /usr/lib/xbmc/xbmc.bin - /usr/sbin/grub-probe - /usr/sbin/vbetool + - /usr/bin/midori # PAGEEXEC, MPROTECT, EMUTRAMP and RANDMMAP off pSmXer: diff --git a/libre/audacious-plugins-libre/PKGBUILD b/libre/audacious-plugins-libre/PKGBUILD index 064900004..88d428815 100644 --- a/libre/audacious-plugins-libre/PKGBUILD +++ b/libre/audacious-plugins-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 198672 2013-11-01 21:09:24Z bisson $ +# $Id: PKGBUILD 203196 2014-01-05 05:25:28Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Alexander Fehr # Contributor: William Rea @@ -8,7 +8,7 @@ _pkgname=audacious-plugins pkgname=audacious-plugins-libre -pkgver=3.4.2 +pkgver=3.4.3 pkgrel=1 pkgdesc='Plugins for Audacious, without nonfree plugins' url='http://audacious-media-player.org/' @@ -61,7 +61,7 @@ optdepends=('alsa-lib: Advanced Linux Sound Arch. output' 'libcue: CUE playlist format') source=("http://distfiles.audacious-media-player.org/${_pkgname}-${pkgver}.tar.bz2") -sha1sums=('a9e831f4fd4d4c4a1dab11b819fa5ac96ce9fad0') +sha1sums=('bcccd4304692a62d1b7963322f64059a0fb9532a') prepare() { # Retrieve upstream & remove plugin 'psf' due to issues mentioned above. diff --git a/libre/libretools/PKGBUILD b/libre/libretools/PKGBUILD index 569706f80..7daf4c071 100644 --- a/libre/libretools/PKGBUILD +++ b/libre/libretools/PKGBUILD @@ -9,9 +9,9 @@ pkgdesc="Programs for Parabola development" url="https://projects.parabolagnulinux.org/packages/libretools.git/" license=('GPL3' 'GPL2') -pkgver=20131112 -_libretools_commit=0f03eb7ac94ad72f551eb1b2470b850d6bcf8bf0 -_devtools_commit=021653a0acecc8763e1bbe90dbb770b4e6df4390 +pkgver=20140106.1 +_libretools_commit=39b13f63d0fd89bfa3cae1feb8744fb100eb5651 +_devtools_commit=534d2015b45e013b37e1edbb997bd4df27d7b8fd _packages_url=https://projects.parabolagnulinux.org/packages source=($_packages_url/libretools.git/snapshot/libretools-$_libretools_commit.tar.bz2 @@ -64,8 +64,8 @@ package_libretools() { depends=( "librelib=$pkgver" + "gitget=$pkgver" # `createworkdir` arch-install-scripts # `archroot` uses `pacstrap` - git # `createworkdir` openssh # `librerelease` rsync # `librerelease` and `makechrootpkg.sh` subversion # `diff-unfree` @@ -87,5 +87,5 @@ package_libretools-mips64el() { make install-libretools-mips64el DESTDIR="$pkgdir" } -md5sums=('81e6d3d6fe1964a407a4520ce0916c0d' - '656008e8e35e6adba527b7bfc367b9f7') +md5sums=('246274cf5974d6adee536edbdb2447c0' + 'ec69dffa68829f063224de19bbd55fa9') diff --git a/libre/libretools/libretools.install b/libre/libretools/libretools.install index d46990da8..a451add36 100644 --- a/libre/libretools/libretools.install +++ b/libre/libretools/libretools.install @@ -1,14 +1,49 @@ #!/bin/sh -_makepkgconf_append='[[ ! -x /usr/bin/librefetch ]] || DLAGENTS+=("libre::/usr/bin/librefetch -p \"\$BUILDFILE\" %u %o")' +_edit_code=" 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'" +_edit_cmnt='#%s # commented out by the libretools post_install script' + +_add_cmnt='# The following line is added by the libretools post_install script' +_add_code='[[ ! -x /usr/bin/librefetch ]] || DLAGENTS+=({https,libre}"::/usr/bin/librefetch -p \"\$BUILDFILE\" -- %u %o")' + +# This line was installed by previous versions of this script +_old_code='[[ ! -x /usr/bin/librefetch ]] || DLAGENTS+=("libre::/usr/bin/librefetch -p \"\$BUILDFILE\" %u %o")' + +# has_line $line +has_line() { grep -Fxq -- "$1" etc/makepkg.conf; } +# add_line $line +add_line() { printf '%s\n' "$1" >> etc/makepkg.conf; } +# del_line $line +del_line() { + local lineno=($(grep -Fxn -- "$1" etc/makepkg.conf | cut -d: -f1)) + if [[ "${#lineno[@]}" -gt 0 ]]; then + sed -i "$(printf '%dd;' "${lineno[@]}")" etc/makepkg.conf; + fi +} +# rep_line $orig $replacement_bre +rep_line() { + local lineno=($(grep -Fxn -- "$1" etc/makepkg.conf | cut -d: -f1)) + if [[ "${#lineno[@]}" == 1 ]]; then + sed -i "${lineno}s|.*|${2//|/\\|}|" etc/makepkg.conf; + fi +} # arg 1: the new package version post_install() { - if grep -q 'libre::' etc/makepkg.conf; then + if grep -q 'librefetch' etc/makepkg.conf; then libremessages msg2 "libretools: librefetch is already in /etc/makepkg.conf" + if has_line "$_old_code"; then + libremessages msg2 "libretools: removing old librefetch entry in /etc/makepkg.conf" + del_line "$_old_code" + post_install + else + return 0 + fi else - libremessages msg2 "libretools: Adding librefetch to /etc/makepkg.conf" - printf '%s\n' "$_makepkgconf_append" >> etc/makepkg.conf + libremessages msg2 "libretools: adding librefetch to /etc/makepkg.conf" + rep_line "$_edit_code" "$(printf "$_edit_cmnt" '&')" + add_line "$_add_cmnt" + add_line "$_add_code" fi } @@ -19,10 +54,11 @@ post_upgrade() { } pre_remove() { - if fgrep -q "$_makepkgconf_append" etc/makepkg.conf; then - libremessages msg2 "libretools: removing librefetch from /etc/makepkg.conf" - sed -i '/libre::/d' etc/makepkg.conf - else - libremessages msg2 "libretools: librefetch is not in /etc/makepkg.conf as we added it" - fi + libremessages msg2 "libretools: removing librefetch from /etc/makepkg.conf" + + rep_line "$(printf "$_edit_cmnt" "$_edit_code")" "$_edit_code" + del_line "$_add_cmnt" + del_line "$_add_code" + + del_line "$_old_code" } diff --git a/libre/mesa-libcl/PKGBUILD b/libre/mesa-libcl/PKGBUILD index 232805e89..d97f31df7 100644 --- a/libre/mesa-libcl/PKGBUILD +++ b/libre/mesa-libcl/PKGBUILD @@ -5,7 +5,7 @@ _pkgname=libcl pkgname=$pkgbase-$_pkgname _pkgflag=libre pkgver=10.0.1 -pkgrel=1 +pkgrel=2 pkgdesc='Mesa 3-D OpenCL library' url=http://${pkgbase}3d.sourceforge.net license=(MIT Khronos LGPL) @@ -26,8 +26,21 @@ makedepends=( provides=($_pkgname-$_pkgflag $_pkgname opencl-nvidia opencl-nvidia-304xx) conflicts=($_pkgname-$_pkgflag $_pkgname opencl-nvidia opencl-nvidia-304xx) replaces=($_pkgname-$_pkgflag $_pkgname opencl-nvidia opencl-nvidia-304xx) -source=ftp://ftp.freedesktop.org/pub/$pkgbase/${pkgver%.0}/${pkgbase^}Lib-$pkgver.tar.bz2 -sha512sums=7abdc38cb5b8b09bd586e6045b1d67cb809951f467d67a95e866d49b972c0c56d6a5b8612c411580bf59759a7ce49992eaf4dcc1c16aa1d67513f16b869bdfc1 +source=( + ftp://ftp.freedesktop.org/pub/$pkgbase/${pkgver%.0}/${pkgbase^}Lib-$pkgver.tar.bz2 + revert.remove.GLXContextID.typedef.patch +) +sha512sums=( + 7abdc38cb5b8b09bd586e6045b1d67cb809951f467d67a95e866d49b972c0c56d6a5b8612c411580bf59759a7ce49992eaf4dcc1c16aa1d67513f16b869bdfc1 + a2a92d997e1615548371ef618daf47011c7fc71d51d31dbdf47a54d56e078f98af624bde5cd7779c3d8ffb60f3b64aa8ebb5d6363cad261e52605926b47d7a35 +) + +prepare() { + cd $srcdir/${pkgbase^}-$pkgver + + # Cherry picked from mesa branch 10.0, this fix wxgtk rebuild (FS#38392) + patch -Np1 -i ../revert.remove.GLXContextID.typedef.patch +} build() { cd $srcdir/${pkgbase^}-$pkgver diff --git a/libre/mesa-libcl/revert.remove.GLXContextID.typedef.patch b/libre/mesa-libcl/revert.remove.GLXContextID.typedef.patch new file mode 100644 index 000000000..92232dd2d --- /dev/null +++ b/libre/mesa-libcl/revert.remove.GLXContextID.typedef.patch @@ -0,0 +1,30 @@ +From 347f1493320e1bc2194c70d4d66bfe2b5883bf1e Mon Sep 17 00:00:00 2001 +From: Kenneth Graunke +Date: Mon, 30 Dec 2013 07:19:36 +0000 +Subject: Revert "mesa: Remove GLXContextID typedef from glx.h." + +This reverts commit 136a12ac98868d82c2ae9fcc80d11044a7ec56d1. + +According to belak51 on IRC, this commit broke Allegro, which would no +longer compile. Applications apparently expect the GLXContextID typedef +to exist in glx.h; removing it breaks them. A bit of searching around +the internet revealed other complaints since upgrading to Mesa 10. + +Cc: "10.0" +(cherry picked from commit f425d56ba41382be04366d011536ee78a03a2f33) +--- +diff --git a/include/GL/glx.h b/include/GL/glx.h +index 62d0ede..234abc0 100644 +--- a/include/GL/glx.h ++++ b/include/GL/glx.h +@@ -168,6 +168,7 @@ typedef XID GLXDrawable; + /* GLX 1.3 and later */ + typedef struct __GLXFBConfigRec *GLXFBConfig; + typedef XID GLXFBConfigID; ++typedef XID GLXContextID; + typedef XID GLXWindow; + typedef XID GLXPbuffer; + +-- +cgit v0.9.0.2-2-gbebe + diff --git a/libre/reflector/PKGBUILD b/libre/reflector/PKGBUILD index d3b64fd8e..dda93c171 100644 --- a/libre/reflector/PKGBUILD +++ b/libre/reflector/PKGBUILD @@ -1,25 +1,26 @@ #Maintainer: Xyne #Maintainer (Parabola): André Silva pkgname=reflector -pkgver=2013.12.15.1 -pkgrel=1 +pkgver=2014 +pkgrel=2 pkgdesc='A Python 3 module and script to retrieve and filter the latest Pacman mirror list (Parabola rebranded)' arch=(any) license=(GPL) url="http://xyne.archlinux.ca/projects/reflector" depends=(python3) +optdepends=('rsync: rate rsync mirrors') source=( - http://xyne.archlinux.ca/projects/reflector/src/reflector-2013.12.15.1.tar.xz - http://xyne.archlinux.ca/projects/reflector/src/reflector-2013.12.15.1.tar.xz.sig + http://xyne.archlinux.ca/projects/reflector/src/reflector-2014.tar.xz + http://xyne.archlinux.ca/projects/reflector/src/reflector-2014.tar.xz.sig rebranding.patch ) sha512sums=( - ac8a23fb6746d85ee4e4d707659da07f5a7b6c18cadba03c8b03430cae70f444e6b35404342da2f9c0ea490e8c4c0f408657880de00a57d9f94d4ab335aa7c55 + ac9e0026019048c96be5dd4d156bf79b7d7616f764b5d8fb169cb09cbf629a3e2b1efb1ee7cb53b4e0cd109b985f598d9f80941714e47ed0f21c6417df9b073b SKIP 83609177f88c0412f1a543f0431ecfb8be229bfef76d7087c35e9273988faedaf24a98ca45d98248eb5dfaa9a27e321dea99a256c68c5bc86a8a0ba53ed56d02 ) md5sums=( - ccb315013442b7c8aa42c1d017835d38 + 69ab92b948ffe842189229d09bfbf1c0 SKIP 24c2a21bc1ac0d3758d8043f36d95add ) diff --git a/pcr/youtube-dl-current/PKGBUILD b/pcr/youtube-dl-current/PKGBUILD index 7ca493453..7beeb5918 100644 --- a/pcr/youtube-dl-current/PKGBUILD +++ b/pcr/youtube-dl-current/PKGBUILD @@ -5,7 +5,7 @@ pkgname=youtube-dl-current _pkgname=youtube-dl provides=(youtube-dl) -pkgver=2014.01.03 +pkgver=2014.01.05.6 pkgrel=1 pkgdesc="A small command-line program to download videos from YouTube.com and a few more sites" arch=('any') @@ -28,5 +28,5 @@ package() { "${pkgdir}/usr/share/bash-completion/completions/youtube-dl" install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE" } -md5sums=('676179e05b8c83d63e5aa21a92faaa32' +md5sums=('f3c0d49ace716b01079f96abd962c763' 'SKIP') diff --git a/~lukeshu/dunst-lukeshu-git/PKGBUILD b/~lukeshu/dunst-lukeshu-git/PKGBUILD new file mode 100644 index 000000000..31037e113 --- /dev/null +++ b/~lukeshu/dunst-lukeshu-git/PKGBUILD @@ -0,0 +1,42 @@ +# Maintainer: Luke Shumaker + +# $Id: PKGBUILD 88586 2013-04-20 15:35:54Z dwallace $ +# Maintainer (Arch): Daniel Wallace +# Contributor: feuri + +_pkgname=dunst +_pkgver=1.0.0 +conflicts=("$_pkgname") + +pkgname=$_pkgname-lukeshu-git +pkgver=20130918 +_gitver='commit=67b259b98ac1895bf47c877f216307a174deeb3d' +pkgrel=1 +pkgdesc="A dmenu-ish notification system" +arch=('i686' 'x86_64') +url="http://www.knopwob.org/dunst/" +license=(BSD3) +depends=(libxinerama libxss libxdg-basedir pango) +optdepends=("libnotify: notify-send" + "dbus: start dunst on demand") +makedepends=(libnotify dbus perl) +provides=(notification-daemon "$_pkgname=$_pkgver") + +source=("https://repo.parabolagnulinux.org/other/~lukeshu/$pkgname/$pkgname-$pkgver.tar.gz") +mksource=("$pkgname-$pkgver::git://github.com/LukeShu/dunst.git#${_gitver}") +mkmd5sums=('SKIP') + +build() { + cd "$srcdir/$pkgname-$pkgver" + make PREFIX=/usr X11INC=/usr/include/X11 X11LIB=/usr/lib/X11 +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="${pkgdir}" PREFIX=/usr install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -Dm755 dunstify "${pkgdir}/usr/bin/dunstify" + cp docs/* "${pkgdir}/usr/share/dunst/" +} + +md5sums=('720b643b2c7a710fabcc7dc1953318bf') -- cgit v1.2.3-54-g00ecf From 3092fe0e20f490a5f9b8b9602ffc039a22be60c0 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Wed, 8 Jan 2014 03:41:42 +0000 Subject: Wed Jan 8 03:37:02 UTC 2014 --- community/i3status/PKGBUILD | 14 +- community/lz4/01-fix-include.patch | 11 + community/lz4/PKGBUILD | 16 +- community/mpv/PKGBUILD | 17 +- .../mpv/mpv-0.3.1-always_respect_sector_size.patch | 34 -- core/openssl/PKGBUILD | 24 +- ...0.1-Check-DTLS_BAD_VER-for-version-number.patch | 31 -- ...mac_sha1.c-fix-rare-bad-record-mac-on-AES.patch | 32 -- core/openssl/openssl-1.0.1e-fix_pod_syntax-1.patch | 393 ------------------- core/openssl/openssl-1.0.1f-perl-5.18.patch | 356 ++++++++++++++++++ extra/anjuta/PKGBUILD | 9 +- extra/empathy/PKGBUILD | 6 +- extra/gst-libav/PKGBUILD | 8 +- extra/gst-plugins-base/PKGBUILD | 6 +- extra/gst-plugins-good/PKGBUILD | 6 +- extra/gst-plugins-ugly/PKGBUILD | 8 +- extra/gstreamer/PKGBUILD | 6 +- extra/kdebase-workspace/PKGBUILD | 8 +- extra/libxfont/PKGBUILD | 6 +- extra/zsh/PKGBUILD | 55 ++- extra/zsh/xattr-include.patch | 16 + extra/zsh/zsh-doc.install | 20 + kernels/pax-flags-libre/PKGBUILD | 4 +- kernels/pax-flags-libre/simple.conf | 2 + kernels/xen-docs/PKGBUILD | 26 +- kernels/xen/09_xen | 18 +- kernels/xen/ChangeLog | 48 +++ kernels/xen/IVRS-debug.patch | 14 + kernels/xen/PKGBUILD | 206 ++++++---- kernels/xen/TOM-register.patch | 187 ++++++++++ kernels/xen/ati-passthrough.patch | 415 +++++++++++++++++++++ kernels/xen/bios_workaround.patch | 51 +++ kernels/xen/conf.d-xenconsoled | 14 + kernels/xen/conf.d-xenstored | 2 + kernels/xen/gcc-4.8-typedefs.patch | 12 - kernels/xen/gdbsx-glibc-2.17.patch | 10 - kernels/xen/grub.conf | 2 + kernels/xen/qemu-makefile.patch | 10 - kernels/xen/texi2html.patch | 10 - kernels/xen/timer-add-lrt-lm.patch | 11 - kernels/xen/tmpfiles.d-xen.conf | 1 + kernels/xen/xen.install | 35 +- kernels/xen/xenconsoled.service | 4 +- kernels/xen/xendomU@.service | 4 +- kernels/xen/xendomains.patch | 108 ++++++ kernels/xen/xenstored.service | 7 +- kernels/xen/xsa73-4.3-unstable.patch | 105 ++++++ kernels/xen/xsa75-4.3-unstable.patch | 55 +++ kernels/xen/xsa78.patch | 23 ++ libre/gst-plugins-bad-libre/PKGBUILD | 8 +- pcr/youtube-dl-current/PKGBUILD | 4 +- 51 files changed, 1739 insertions(+), 739 deletions(-) create mode 100644 community/lz4/01-fix-include.patch delete mode 100644 community/mpv/mpv-0.3.1-always_respect_sector_size.patch delete mode 100644 core/openssl/openssl-1.0.1-Check-DTLS_BAD_VER-for-version-number.patch delete mode 100644 core/openssl/openssl-1.0.1-e_aes_cbc_hmac_sha1.c-fix-rare-bad-record-mac-on-AES.patch delete mode 100644 core/openssl/openssl-1.0.1e-fix_pod_syntax-1.patch create mode 100644 core/openssl/openssl-1.0.1f-perl-5.18.patch create mode 100644 extra/zsh/xattr-include.patch create mode 100644 extra/zsh/zsh-doc.install create mode 100644 kernels/xen/ChangeLog create mode 100644 kernels/xen/IVRS-debug.patch create mode 100644 kernels/xen/TOM-register.patch create mode 100644 kernels/xen/ati-passthrough.patch create mode 100644 kernels/xen/bios_workaround.patch create mode 100644 kernels/xen/conf.d-xenconsoled create mode 100644 kernels/xen/conf.d-xenstored delete mode 100644 kernels/xen/gcc-4.8-typedefs.patch delete mode 100644 kernels/xen/gdbsx-glibc-2.17.patch create mode 100644 kernels/xen/grub.conf delete mode 100644 kernels/xen/qemu-makefile.patch delete mode 100644 kernels/xen/texi2html.patch delete mode 100644 kernels/xen/timer-add-lrt-lm.patch create mode 100644 kernels/xen/xendomains.patch create mode 100644 kernels/xen/xsa73-4.3-unstable.patch create mode 100644 kernels/xen/xsa75-4.3-unstable.patch create mode 100644 kernels/xen/xsa78.patch (limited to 'community') diff --git a/community/i3status/PKGBUILD b/community/i3status/PKGBUILD index dfd36db63..649bb51c1 100644 --- a/community/i3status/PKGBUILD +++ b/community/i3status/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 85172 2013-02-27 14:41:02Z ttoepper $ +# $Id: PKGBUILD 103554 2014-01-07 21:43:33Z ttoepper $ # Maintainer: Thorsten Töpper pkgname=i3status -pkgver=2.7 +pkgver=2.8 pkgrel=1 -pkgdesc="Generates status bar to use with dzen2 or xmobar" +pkgdesc='Generates status bar to use with i3bar, dzen2 or xmobar' arch=('i686' 'x86_64') -url="http://i3.zekjur.net/i3status/" +url='http://i3.zekjur.net/i3status/' license=('BSD') groups=('i3') depends=('wireless_tools' 'confuse' 'alsa-lib' 'yajl') @@ -14,8 +14,10 @@ makedepends=('asciidoc') backup=('etc/i3status.conf') install=i3status.install options=('docs') -source=("http://i3.zekjur.net/i3status/$pkgname-$pkgver.tar.bz2") -md5sums=('f0a39e84aebb65496af3dcec9d8cfeb8') +source=("http://i3.zekjur.net/i3status/$pkgname-$pkgver.tar.bz2" + "http://i3.zekjur.net/i3status/$pkgname-$pkgver.tar.bz2.asc") +md5sums=('68d944e9c1f48183356c9ea15b5b4e3b' + 'SKIP') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/lz4/01-fix-include.patch b/community/lz4/01-fix-include.patch new file mode 100644 index 000000000..960fb3674 --- /dev/null +++ b/community/lz4/01-fix-include.patch @@ -0,0 +1,11 @@ +--- a/programs/Makefile 2014-01-07 22:03:45.197517981 +0100 ++++ b/programs/Makefile 2014-01-07 22:03:43.126477362 +0100 +@@ -34,7 +34,7 @@ + DESTDIR= + PREFIX=/usr + CC=gcc +-CFLAGS+= -I. -std=c99 -Wall -W -Wundef -DLZ4_VERSION=\"$(RELEASE)\" ++CFLAGS+= -I.. -std=c99 -Wall -W -Wundef -DLZ4_VERSION=\"$(RELEASE)\" + + BINDIR=$(PREFIX)/bin + MANDIR=$(PREFIX)/share/man/man1 diff --git a/community/lz4/PKGBUILD b/community/lz4/PKGBUILD index 0fc508a3f..748e8a8bd 100644 --- a/community/lz4/PKGBUILD +++ b/community/lz4/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 103238 2013-12-30 22:18:53Z seblu $ +# $Id: PKGBUILD 103558 2014-01-07 22:36:39Z seblu $ # Maintainer: Sébastien Luttringer # Contacted by mail, author use svn commit as release version. # He only push tested release code into svn and support using revision as version pkgname=lz4 -pkgver=110 +pkgver=111 pkgrel=1 pkgdesc='Very fast lossless compression algorithm' arch=('i686' 'x86_64') @@ -13,12 +13,20 @@ url='https://code.google.com/p/lz4/' license=('GPL2') makedepends=('svn') depends=('glibc') -source=("$pkgname::svn+http://lz4.googlecode.com/svn/trunk/#revision=$pkgver") -md5sums=('SKIP') +source=("$pkgname::svn+http://lz4.googlecode.com/svn/trunk/#revision=$pkgver" + '01-fix-include.patch') +md5sums=('SKIP' + '522618c085bb30924f540c3b2c18a7e4') + +prepare() { + patch -d $pkgname -p 1 < 01-fix-include.patch +} build() { cd $pkgname make + cd programs + make } package() { diff --git a/community/mpv/PKGBUILD b/community/mpv/PKGBUILD index 8f1703791..ae6e65128 100644 --- a/community/mpv/PKGBUILD +++ b/community/mpv/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 103275 2014-01-02 08:50:55Z bpiotrowski $ +# $Id: PKGBUILD 103520 2014-01-07 07:23:00Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Eivind Uggedal pkgname=mpv -pkgver=0.3.1 -pkgrel=2 +pkgver=0.3.2 +pkgrel=1 pkgdesc='Video player based on MPlayer/mplayer2' arch=('i686' 'x86_64') license=('GPL') @@ -17,15 +17,8 @@ depends=( makedepends=('mesa' 'python-docutils' 'waf') options=('!emptydirs' '!buildflags') install=mpv.install -source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz - mpv-0.3.1-always_respect_sector_size.patch) -md5sums=('f7e4091eb9ce058ce35b4bc1b6c4f3a2' - 'afe01937e9bff1f241d37774eda39b7a') - -prepare() { - cd $pkgname-$pkgver - patch -p1 -i ../mpv-0.3.1-always_respect_sector_size.patch -} +source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz) +md5sums=('516f2eeec1d1f69905d11c1feec8166e') build() { cd $pkgname-$pkgver diff --git a/community/mpv/mpv-0.3.1-always_respect_sector_size.patch b/community/mpv/mpv-0.3.1-always_respect_sector_size.patch deleted file mode 100644 index 82c474081..000000000 --- a/community/mpv/mpv-0.3.1-always_respect_sector_size.patch +++ /dev/null @@ -1,34 +0,0 @@ -From b04b48fc10dabb1d1b26ff519f55dcafb320985e Mon Sep 17 00:00:00 2001 -From: wm4 -Date: Thu, 2 Jan 2014 00:39:14 +0100 -Subject: [PATCH] stream: always respect sector_size, fixes cdda:// - -Streams like CDDA have special requirements in what quantities data can -be read: you can only read a sector at once, not more and not less. The -stream_peek() function didn't respect that and set less (used internal -buffer size of 2048 bytes, instead of CD sector size of 2352 bytes), so -no data was read and EOF was accidentally set, making playback with -cdda:// fail. - -This is a regression since commit 9a723f, but that commit merely exposed -the issue (the redundant seek would clear the EOF flag). ---- - stream/stream.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/stream/stream.c b/stream/stream.c -index 3332e66..b48de57 100644 ---- a/stream/stream.c -+++ b/stream/stream.c -@@ -562,7 +562,7 @@ struct bstr stream_peek(stream_t *s, int len) - while (buf_valid < len) { - int chunk = MPMAX(len - buf_valid, STREAM_BUFFER_SIZE); - if (s->sector_size) -- chunk = STREAM_BUFFER_SIZE; -+ chunk = s->sector_size; - assert(buf_valid + chunk <= TOTAL_BUFFER_SIZE); - int read = stream_read_unbuffered(s, &s->buffer[buf_valid], chunk); - if (read == 0) --- -1.8.5.1 - diff --git a/core/openssl/PKGBUILD b/core/openssl/PKGBUILD index f3d13b221..341731bfb 100644 --- a/core/openssl/PKGBUILD +++ b/core/openssl/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 199034 2013-11-07 14:18:31Z pierre $ +# $Id: PKGBUILD 203278 2014-01-07 10:02:52Z pierre $ # Maintainer: Pierre Schmitz pkgname=openssl -_ver=1.0.1e +_ver=1.0.1f # use a pacman compatible version scheme pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} #pkgver=$_ver -pkgrel=5 +pkgrel=1 pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security' arch=('i686' 'x86_64') url='https://www.openssl.org' @@ -19,16 +19,12 @@ source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz" "https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz.asc" 'no-rpath.patch' 'ca-dir.patch' - 'openssl-1.0.1e-fix_pod_syntax-1.patch' - 'openssl-1.0.1-Check-DTLS_BAD_VER-for-version-number.patch' - 'openssl-1.0.1-e_aes_cbc_hmac_sha1.c-fix-rare-bad-record-mac-on-AES.patch') -md5sums=('66bf6f10f060d561929de96f9dfe5b8c' + 'openssl-1.0.1f-perl-5.18.patch') +md5sums=('f26b09c028a0541cab33da697d522b25' 'SKIP' 'dc78d3d06baffc16217519242ce92478' '3bf51be3a1bbd262be46dc619f92aa90' - '88d3bef4bbdc640b0412315d8d347bdf' - 'ae7848bb152b8834ceff30c8c480d422' - 'c5cc62a47cef72f4e5ad119a88e97ae4') + 'ea2a61c8bd43788d81d98f1ac36c98ac') prepare() { cd $srcdir/$pkgname-$_ver @@ -38,13 +34,7 @@ prepare() { # set ca dir to /etc/ssl by default patch -p0 -i $srcdir/ca-dir.patch - patch -p1 -i $srcdir/openssl-1.0.1e-fix_pod_syntax-1.patch - # OpenSSL 1.0.0k, 1.0.1.d, 1.0.1e fail handshake with DTLS1_BAD_VER - # http://rt.openssl.org/Ticket/Display.html?id=2984 - patch -p1 -i $srcdir/openssl-1.0.1-Check-DTLS_BAD_VER-for-version-number.patch - # Communication problems with 1.0.1e - # http://rt.openssl.org/Ticket/Display.html?id=3002 - patch -p1 -i $srcdir/openssl-1.0.1-e_aes_cbc_hmac_sha1.c-fix-rare-bad-record-mac-on-AES.patch + patch -p1 -i $srcdir/openssl-1.0.1f-perl-5.18.patch } build() { diff --git a/core/openssl/openssl-1.0.1-Check-DTLS_BAD_VER-for-version-number.patch b/core/openssl/openssl-1.0.1-Check-DTLS_BAD_VER-for-version-number.patch deleted file mode 100644 index 5a88220c3..000000000 --- a/core/openssl/openssl-1.0.1-Check-DTLS_BAD_VER-for-version-number.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 9fe4603b8245425a4c46986ed000fca054231253 Mon Sep 17 00:00:00 2001 -From: David Woodhouse -Date: Tue, 12 Feb 2013 14:55:32 +0000 -Subject: Check DTLS_BAD_VER for version number. - -The version check for DTLS1_VERSION was redundant as -DTLS1_VERSION > TLS1_1_VERSION, however we do need to -check for DTLS1_BAD_VER for compatibility. - -PR:2984 -(cherry picked from commit d980abb22e22661e98e5cee33d760ab0c7584ecc) ---- - ssl/s3_cbc.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ssl/s3_cbc.c b/ssl/s3_cbc.c -index 02edf3f..443a31e 100644 ---- a/ssl/s3_cbc.c -+++ b/ssl/s3_cbc.c -@@ -148,7 +148,7 @@ int tls1_cbc_remove_padding(const SSL* s, - unsigned padding_length, good, to_check, i; - const unsigned overhead = 1 /* padding length byte */ + mac_size; - /* Check if version requires explicit IV */ -- if (s->version >= TLS1_1_VERSION || s->version == DTLS1_VERSION) -+ if (s->version >= TLS1_1_VERSION || s->version == DTLS1_BAD_VER) - { - /* These lengths are all public so we can test them in - * non-constant time. --- -1.8.4.2 - diff --git a/core/openssl/openssl-1.0.1-e_aes_cbc_hmac_sha1.c-fix-rare-bad-record-mac-on-AES.patch b/core/openssl/openssl-1.0.1-e_aes_cbc_hmac_sha1.c-fix-rare-bad-record-mac-on-AES.patch deleted file mode 100644 index f1a251227..000000000 --- a/core/openssl/openssl-1.0.1-e_aes_cbc_hmac_sha1.c-fix-rare-bad-record-mac-on-AES.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 9ab3ce124616cb12bd39c6aa1e1bde0f46969b29 Mon Sep 17 00:00:00 2001 -From: Andy Polyakov -Date: Mon, 18 Mar 2013 19:29:41 +0100 -Subject: e_aes_cbc_hmac_sha1.c: fix rare bad record mac on AES-NI plaforms. - -PR: 3002 -(cherry picked from commit 5c60046553716fcf160718f59160493194f212dc) ---- - crypto/evp/e_aes_cbc_hmac_sha1.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/crypto/evp/e_aes_cbc_hmac_sha1.c b/crypto/evp/e_aes_cbc_hmac_sha1.c -index 483e04b..fb2c884 100644 ---- a/crypto/evp/e_aes_cbc_hmac_sha1.c -+++ b/crypto/evp/e_aes_cbc_hmac_sha1.c -@@ -328,10 +328,11 @@ static int aesni_cbc_hmac_sha1_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, - - if (res!=SHA_CBLOCK) continue; - -- mask = 0-((inp_len+8-j)>>(sizeof(j)*8-1)); -+ /* j is not incremented yet */ -+ mask = 0-((inp_len+7-j)>>(sizeof(j)*8-1)); - data->u[SHA_LBLOCK-1] |= bitlen&mask; - sha1_block_data_order(&key->md,data,1); -- mask &= 0-((j-inp_len-73)>>(sizeof(j)*8-1)); -+ mask &= 0-((j-inp_len-72)>>(sizeof(j)*8-1)); - pmac->u[0] |= key->md.h0 & mask; - pmac->u[1] |= key->md.h1 & mask; - pmac->u[2] |= key->md.h2 & mask; --- -1.8.4.2 - diff --git a/core/openssl/openssl-1.0.1e-fix_pod_syntax-1.patch b/core/openssl/openssl-1.0.1e-fix_pod_syntax-1.patch deleted file mode 100644 index ba25afec3..000000000 --- a/core/openssl/openssl-1.0.1e-fix_pod_syntax-1.patch +++ /dev/null @@ -1,393 +0,0 @@ -Submitted By: Martin Ward -Date: 2013-06-18 -Initial Package Version: 1.0.1e -Upstream Status: Unknown -Origin: self, based on fedora -Description: Fixes install with perl-5.18. - -diff -Naur openssl-1.0.1e.orig/doc/apps/cms.pod openssl-1.0.1e/doc/apps/cms.pod ---- openssl-1.0.1e.orig/doc/apps/cms.pod 2013-06-06 14:35:15.867871879 +0100 -+++ openssl-1.0.1e/doc/apps/cms.pod 2013-06-06 14:35:25.791747119 +0100 -@@ -450,28 +450,28 @@ - - =over 4 - --=item 0 -+=item C<0> - - the operation was completely successfully. - --=item 1 -+=item C<1> - - an error occurred parsing the command options. - --=item 2 -+=item C<2> - - one of the input files could not be read. - --=item 3 -+=item C<3> - - an error occurred creating the CMS file or when reading the MIME - message. - --=item 4 -+=item C<4> - - an error occurred decrypting or verifying the message. - --=item 5 -+=item C<5> - - the message was verified correctly but an error occurred writing out - the signers certificates. -diff -Naur openssl-1.0.1e.orig/doc/apps/smime.pod openssl-1.0.1e/doc/apps/smime.pod ---- openssl-1.0.1e.orig/doc/apps/smime.pod 2013-06-06 14:35:15.867871879 +0100 -+++ openssl-1.0.1e/doc/apps/smime.pod 2013-06-06 14:35:25.794747082 +0100 -@@ -308,28 +308,28 @@ - - =over 4 - --=item 0 -+=item C<0> - - the operation was completely successfully. - --=item 1 -+=item C<1> - - an error occurred parsing the command options. - --=item 2 -+=item C<2> - - one of the input files could not be read. - --=item 3 -+=item C<3> - - an error occurred creating the PKCS#7 file or when reading the MIME - message. - --=item 4 -+=item C<4> - - an error occurred decrypting or verifying the message. - --=item 5 -+=item C<5> - - the message was verified correctly but an error occurred writing out - the signers certificates. -diff -Naur openssl-1.0.1e.orig/doc/crypto/X509_STORE_CTX_get_error.pod openssl-1.0.1e/doc/crypto/X509_STORE_CTX_get_error.pod ---- openssl-1.0.1e.orig/doc/crypto/X509_STORE_CTX_get_error.pod 2013-06-06 14:35:15.874871791 +0100 -+++ openssl-1.0.1e/doc/crypto/X509_STORE_CTX_get_error.pod 2013-06-06 14:37:13.826388940 +0100 -@@ -278,6 +278,8 @@ - an application specific error. This will never be returned unless explicitly - set by an application. - -+=back -+ - =head1 NOTES - - The above functions should be used instead of directly referencing the fields -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_accept.pod openssl-1.0.1e/doc/ssl/SSL_accept.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_accept.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_accept.pod 2013-06-06 14:35:25.796747057 +0100 -@@ -44,12 +44,12 @@ - - =over 4 - --=item 1 -+=item C<1> - - The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been - established. - --=item 0 -+=item C<0> - - The TLS/SSL handshake was not successful but was shut down controlled and - by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_clear.pod openssl-1.0.1e/doc/ssl/SSL_clear.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_clear.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_clear.pod 2013-06-06 14:35:25.803746969 +0100 -@@ -56,12 +56,12 @@ - - =over 4 - --=item 0 -+=item C<0> - - The SSL_clear() operation could not be performed. Check the error stack to - find out the reason. - --=item 1 -+=item C<1> - - The SSL_clear() operation was successful. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_COMP_add_compression_method.pod openssl-1.0.1e/doc/ssl/SSL_COMP_add_compression_method.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_COMP_add_compression_method.pod 2013-06-06 14:35:15.870871842 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_COMP_add_compression_method.pod 2013-06-06 14:35:25.806746931 +0100 -@@ -53,11 +53,11 @@ - - =over 4 - --=item 0 -+=item C<0> - - The operation succeeded. - --=item 1 -+=item C<1> - - The operation failed. Check the error queue to find out the reason. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_connect.pod openssl-1.0.1e/doc/ssl/SSL_connect.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_connect.pod 2013-06-06 14:35:15.869871854 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_connect.pod 2013-06-06 14:35:25.808746906 +0100 -@@ -41,12 +41,12 @@ - - =over 4 - --=item 1 -+=item C<1> - - The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been - established. - --=item 0 -+=item C<0> - - The TLS/SSL handshake was not successful but was shut down controlled and - by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_CTX_add_session.pod openssl-1.0.1e/doc/ssl/SSL_CTX_add_session.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_CTX_add_session.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_CTX_add_session.pod 2013-06-06 14:35:25.816746805 +0100 -@@ -52,13 +52,13 @@ - - =over 4 - --=item 0 -+=item C<0> - - The operation failed. In case of the add operation, it was tried to add - the same (identical) session twice. In case of the remove operation, the - session was not found in the cache. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_CTX_load_verify_locations.pod openssl-1.0.1e/doc/ssl/SSL_CTX_load_verify_locations.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_CTX_load_verify_locations.pod 2013-06-06 14:35:15.870871842 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_CTX_load_verify_locations.pod 2013-06-06 14:35:25.818746780 +0100 -@@ -100,13 +100,13 @@ - - =over 4 - --=item 0 -+=item C<0> - - The operation failed because B and B are NULL or the - processing at one of the locations specified failed. Check the error - stack to find out the reason. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_CTX_set_client_CA_list.pod openssl-1.0.1e/doc/ssl/SSL_CTX_set_client_CA_list.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_CTX_set_client_CA_list.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_CTX_set_client_CA_list.pod 2013-06-06 14:35:25.821746742 +0100 -@@ -66,11 +66,11 @@ - - =over 4 - --=item 1 -+=item C<1> - - The operation succeeded. - --=item 0 -+=item C<0> - - A failure while manipulating the STACK_OF(X509_NAME) object occurred or - the X509_NAME could not be extracted from B. Check the error stack -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_CTX_set_session_id_context.pod openssl-1.0.1e/doc/ssl/SSL_CTX_set_session_id_context.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_CTX_set_session_id_context.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_CTX_set_session_id_context.pod 2013-06-06 14:35:25.828746654 +0100 -@@ -64,13 +64,13 @@ - - =over 4 - --=item 0 -+=item C<0> - - The length B of the session id context B exceeded - the maximum allowed length of B. The error - is logged to the error stack. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_CTX_set_ssl_version.pod openssl-1.0.1e/doc/ssl/SSL_CTX_set_ssl_version.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_CTX_set_ssl_version.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_CTX_set_ssl_version.pod 2013-06-06 14:35:25.831746617 +0100 -@@ -42,11 +42,11 @@ - - =over 4 - --=item 0 -+=item C<0> - - The new choice failed, check the error stack to find out the reason. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_CTX_use_psk_identity_hint.pod openssl-1.0.1e/doc/ssl/SSL_CTX_use_psk_identity_hint.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_CTX_use_psk_identity_hint.pod 2013-06-06 14:35:15.870871842 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_CTX_use_psk_identity_hint.pod 2013-06-06 14:36:42.456783309 +0100 -@@ -81,6 +81,8 @@ - - Return values from the server callback are interpreted as follows: - -+=over -+ - =item > 0 - - PSK identity was found and the server callback has provided the PSK -@@ -94,9 +96,11 @@ - connection will fail with decryption_error before it will be finished - completely. - --=item 0 -+=item C<0> - - PSK identity was not found. An "unknown_psk_identity" alert message - will be sent and the connection setup fails. - -+=back -+ - =cut -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_do_handshake.pod openssl-1.0.1e/doc/ssl/SSL_do_handshake.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_do_handshake.pod 2013-06-06 14:35:15.869871854 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_do_handshake.pod 2013-06-06 14:35:25.839746516 +0100 -@@ -45,12 +45,12 @@ - - =over 4 - --=item 1 -+=item C<1> - - The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been - established. - --=item 0 -+=item C<0> - - The TLS/SSL handshake was not successful but was shut down controlled and - by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_read.pod openssl-1.0.1e/doc/ssl/SSL_read.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_read.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_read.pod 2013-06-06 14:35:25.847746415 +0100 -@@ -86,7 +86,7 @@ - The read operation was successful; the return value is the number of - bytes actually read from the TLS/SSL connection. - --=item 0 -+=item C<0> - - The read operation was not successful. The reason may either be a clean - shutdown due to a "close notify" alert sent by the peer (in which case -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_session_reused.pod openssl-1.0.1e/doc/ssl/SSL_session_reused.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_session_reused.pod 2013-06-06 14:35:15.871871829 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_session_reused.pod 2013-06-06 14:35:25.849746390 +0100 -@@ -27,11 +27,11 @@ - - =over 4 - --=item 0 -+=item C<0> - - A new session was negotiated. - --=item 1 -+=item C<1> - - A session was reused. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_set_fd.pod openssl-1.0.1e/doc/ssl/SSL_set_fd.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_set_fd.pod 2013-06-06 14:35:15.869871854 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_set_fd.pod 2013-06-06 14:35:25.852746353 +0100 -@@ -35,11 +35,11 @@ - - =over 4 - --=item 0 -+=item C<0> - - The operation failed. Check the error stack to find out why. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_set_session.pod openssl-1.0.1e/doc/ssl/SSL_set_session.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_set_session.pod 2013-06-06 14:35:15.870871842 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_set_session.pod 2013-06-06 14:35:25.855746315 +0100 -@@ -37,11 +37,11 @@ - - =over 4 - --=item 0 -+=item C<0> - - The operation failed; check the error stack to find out the reason. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_shutdown.pod openssl-1.0.1e/doc/ssl/SSL_shutdown.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_shutdown.pod 2013-06-06 14:35:15.870871842 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_shutdown.pod 2013-06-06 14:35:25.857746290 +0100 -@@ -92,12 +92,12 @@ - - =over 4 - --=item 1 -+=item C<1> - - The shutdown was successfully completed. The "close notify" alert was sent - and the peer's "close notify" alert was received. - --=item 0 -+=item C<0> - - The shutdown is not yet finished. Call SSL_shutdown() for a second time, - if a bidirectional shutdown shall be performed. -diff -Naur openssl-1.0.1e.orig/doc/ssl/SSL_write.pod openssl-1.0.1e/doc/ssl/SSL_write.pod ---- openssl-1.0.1e.orig/doc/ssl/SSL_write.pod 2013-06-06 14:35:15.870871842 +0100 -+++ openssl-1.0.1e/doc/ssl/SSL_write.pod 2013-06-06 14:35:25.865746189 +0100 -@@ -79,7 +79,7 @@ - The write operation was successful, the return value is the number of - bytes actually written to the TLS/SSL connection. - --=item 0 -+=item C<0> - - The write operation was not successful. Probably the underlying connection - was closed. Call SSL_get_error() with the return value B to find out, diff --git a/core/openssl/openssl-1.0.1f-perl-5.18.patch b/core/openssl/openssl-1.0.1f-perl-5.18.patch new file mode 100644 index 000000000..c66209637 --- /dev/null +++ b/core/openssl/openssl-1.0.1f-perl-5.18.patch @@ -0,0 +1,356 @@ +Forward-ported from openssl-1.0.1e-perl-5.18.patch +Fixes install with perl-5.18. + +https://bugs.gentoo.org/show_bug.cgi?id=497286 + +Signed-off-by: Lars Wendler + +--- openssl-1.0.1f/doc/apps/cms.pod ++++ openssl-1.0.1f/doc/apps/cms.pod +@@ -450,28 +450,28 @@ + + =over 4 + +-=item 0 ++=item C<0> + + the operation was completely successfully. + +-=item 1 ++=item C<1> + + an error occurred parsing the command options. + +-=item 2 ++=item C<2> + + one of the input files could not be read. + +-=item 3 ++=item C<3> + + an error occurred creating the CMS file or when reading the MIME + message. + +-=item 4 ++=item C<4> + + an error occurred decrypting or verifying the message. + +-=item 5 ++=item C<5> + + the message was verified correctly but an error occurred writing out + the signers certificates. +--- openssl-1.0.1f/doc/apps/smime.pod ++++ openssl-1.0.1f/doc/apps/smime.pod +@@ -308,28 +308,28 @@ + + =over 4 + +-=item 0 ++=item C<0> + + the operation was completely successfully. + +-=item 1 ++=item C<1> + + an error occurred parsing the command options. + +-=item 2 ++=item C<2> + + one of the input files could not be read. + +-=item 3 ++=item C<3> + + an error occurred creating the PKCS#7 file or when reading the MIME + message. + +-=item 4 ++=item C<4> + + an error occurred decrypting or verifying the message. + +-=item 5 ++=item C<5> + + the message was verified correctly but an error occurred writing out + the signers certificates. +--- openssl-1.0.1f/doc/ssl/SSL_accept.pod ++++ openssl-1.0.1f/doc/ssl/SSL_accept.pod +@@ -44,13 +44,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The TLS/SSL handshake was not successful but was shut down controlled and + by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the + return value B to find out the reason. + +-=item 1 ++=item C<1> + + The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been + established. +--- openssl-1.0.1f/doc/ssl/SSL_clear.pod ++++ openssl-1.0.1f/doc/ssl/SSL_clear.pod +@@ -56,12 +56,12 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The SSL_clear() operation could not be performed. Check the error stack to + find out the reason. + +-=item 1 ++=item C<1> + + The SSL_clear() operation was successful. + +--- openssl-1.0.1f/doc/ssl/SSL_COMP_add_compression_method.pod ++++ openssl-1.0.1f/doc/ssl/SSL_COMP_add_compression_method.pod +@@ -53,11 +53,11 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The operation succeeded. + +-=item 1 ++=item C<1> + + The operation failed. Check the error queue to find out the reason. + +--- openssl-1.0.1f/doc/ssl/SSL_connect.pod ++++ openssl-1.0.1f/doc/ssl/SSL_connect.pod +@@ -41,13 +41,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The TLS/SSL handshake was not successful but was shut down controlled and + by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the + return value B to find out the reason. + +-=item 1 ++=item C<1> + + The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been + established. +--- openssl-1.0.1f/doc/ssl/SSL_CTX_add_session.pod ++++ openssl-1.0.1f/doc/ssl/SSL_CTX_add_session.pod +@@ -52,13 +52,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed. In case of the add operation, it was tried to add + the same (identical) session twice. In case of the remove operation, the + session was not found in the cache. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_CTX_load_verify_locations.pod ++++ openssl-1.0.1f/doc/ssl/SSL_CTX_load_verify_locations.pod +@@ -100,13 +100,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed because B and B are NULL or the + processing at one of the locations specified failed. Check the error + stack to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_CTX_set_client_CA_list.pod ++++ openssl-1.0.1f/doc/ssl/SSL_CTX_set_client_CA_list.pod +@@ -66,13 +66,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + A failure while manipulating the STACK_OF(X509_NAME) object occurred or + the X509_NAME could not be extracted from B. Check the error stack + to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_CTX_set_session_id_context.pod ++++ openssl-1.0.1f/doc/ssl/SSL_CTX_set_session_id_context.pod +@@ -64,13 +64,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The length B of the session id context B exceeded + the maximum allowed length of B. The error + is logged to the error stack. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_CTX_set_ssl_version.pod ++++ openssl-1.0.1f/doc/ssl/SSL_CTX_set_ssl_version.pod +@@ -42,11 +42,11 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The new choice failed, check the error stack to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_CTX_use_psk_identity_hint.pod ++++ openssl-1.0.1f/doc/ssl/SSL_CTX_use_psk_identity_hint.pod +@@ -96,7 +96,7 @@ + connection will fail with decryption_error before it will be finished + completely. + +-=item 0 ++=item C<0> + + PSK identity was not found. An "unknown_psk_identity" alert message + will be sent and the connection setup fails. +--- openssl-1.0.1f/doc/ssl/SSL_do_handshake.pod ++++ openssl-1.0.1f/doc/ssl/SSL_do_handshake.pod +@@ -45,13 +45,13 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The TLS/SSL handshake was not successful but was shut down controlled and + by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the + return value B to find out the reason. + +-=item 1 ++=item C<1> + + The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been + established. +--- openssl-1.0.1f/doc/ssl/SSL_read.pod ++++ openssl-1.0.1f/doc/ssl/SSL_read.pod +@@ -86,7 +86,7 @@ + The read operation was successful; the return value is the number of + bytes actually read from the TLS/SSL connection. + +-=item 0 ++=item C<0> + + The read operation was not successful. The reason may either be a clean + shutdown due to a "close notify" alert sent by the peer (in which case +--- openssl-1.0.1f/doc/ssl/SSL_session_reused.pod ++++ openssl-1.0.1f/doc/ssl/SSL_session_reused.pod +@@ -27,11 +27,11 @@ + + =over 4 + +-=item 0 ++=item C<0> + + A new session was negotiated. + +-=item 1 ++=item C<1> + + A session was reused. + +--- openssl-1.0.1f/doc/ssl/SSL_set_fd.pod ++++ openssl-1.0.1f/doc/ssl/SSL_set_fd.pod +@@ -35,11 +35,11 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed. Check the error stack to find out why. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_set_session.pod ++++ openssl-1.0.1f/doc/ssl/SSL_set_session.pod +@@ -37,11 +37,11 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed; check the error stack to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +--- openssl-1.0.1f/doc/ssl/SSL_shutdown.pod ++++ openssl-1.0.1f/doc/ssl/SSL_shutdown.pod +@@ -92,14 +92,14 @@ + + =over 4 + +-=item 0 ++=item C<0> + + The shutdown is not yet finished. Call SSL_shutdown() for a second time, + if a bidirectional shutdown shall be performed. + The output of L may be misleading, as an + erroneous SSL_ERROR_SYSCALL may be flagged even though no error occurred. + +-=item 1 ++=item C<1> + + The shutdown was successfully completed. The "close notify" alert was sent + and the peer's "close notify" alert was received. +--- openssl-1.0.1f/doc/ssl/SSL_write.pod ++++ openssl-1.0.1f/doc/ssl/SSL_write.pod +@@ -79,7 +79,7 @@ + The write operation was successful, the return value is the number of + bytes actually written to the TLS/SSL connection. + +-=item 0 ++=item C<0> + + The write operation was not successful. Probably the underlying connection + was closed. Call SSL_get_error() with the return value B to find out, diff --git a/extra/anjuta/PKGBUILD b/extra/anjuta/PKGBUILD index f07f0f3ee..a72967aa5 100644 --- a/extra/anjuta/PKGBUILD +++ b/extra/anjuta/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 199757 2013-11-15 18:34:29Z heftig $ +# $Id: PKGBUILD 203276 2014-01-07 09:24:12Z heftig $ # Maintainer: Andreas Radke # Contributor: Harley Laue pkgbase=anjuta pkgname=('libanjuta' 'anjuta') pkgver=3.10.2 -pkgrel=1 +pkgrel=2 pkgdesc="GNOME Integrated Development Environment (IDE)" arch=(i686 x86_64) license=(GPL) makedepends=(gdl vte3 autogen devhelp glade libgda subversion neon gnome-icon-theme vala dconf gtk-doc yelp-tools gnome-common intltool gobject-introspection itstool gjs - python) + python2) url="http://www.anjuta.org/" options=('!emptydirs') source=(ftp://ftp.gnome.org/pub/gnome/sources/$pkgbase/${pkgver%.*}/$pkgbase-$pkgver.tar.xz) @@ -21,7 +21,8 @@ build() { cd "$pkgbase-$pkgver" ./autogen.sh --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --enable-glade-catalog --enable-compile-warnings=minimum + --localstatedir=/var --enable-glade-catalog --enable-compile-warnings=minimum \ + PYTHON=/usr/bin/python2 make } diff --git a/extra/empathy/PKGBUILD b/extra/empathy/PKGBUILD index 082ebe347..9664cb10c 100644 --- a/extra/empathy/PKGBUILD +++ b/extra/empathy/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 199330 2013-11-11 10:46:23Z jgc $ +# $Id: PKGBUILD 203294 2014-01-07 13:41:30Z heftig $ # Maintainer: Ionut Biru pkgname=empathy -pkgver=3.10.2 +pkgver=3.10.3 pkgrel=1 pkgdesc="A GNOME instant messaging client using the Telepathy framework." arch=(i686 x86_64) @@ -19,7 +19,7 @@ options=('!makeflags') groups=(gnome) install=empathy.install source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) -sha256sums=('9d8e082a448f3e9450a31f0ec21f01e34cf1c15b192cfa30842d71537796cfbf') +sha256sums=('49366acdd3c3ef9a74f63eb09920803c4c9df83056acbf8a7899e7890a9fb196') build() { cd $pkgname-$pkgver diff --git a/extra/gst-libav/PKGBUILD b/extra/gst-libav/PKGBUILD index ad4ad8157..35e682bfc 100644 --- a/extra/gst-libav/PKGBUILD +++ b/extra/gst-libav/PKGBUILD @@ -1,19 +1,19 @@ -# $Id: PKGBUILD 199372 2013-11-11 17:53:04Z heftig $ +# $Id: PKGBUILD 203291 2014-01-07 13:07:33Z heftig $ # Maintainer: Jan de Groot pkgname=gst-libav -pkgver=1.2.1 +pkgver=1.2.2 pkgrel=1 pkgdesc="Gstreamer libav Plugin" arch=('i686' 'x86_64') license=('GPL') url="http://gstreamer.freedesktop.org/" depends=('gst-plugins-base-libs' 'bzip2') -makedepends=('yasm') +makedepends=('yasm' 'python') options=(!emptydirs) provides=("gst-ffmpeg=$pkgver-$pkgrel") source=(${url}/src/$pkgname/$pkgname-$pkgver.tar.xz) -sha256sums=('fd152b7aec56ae76ad58b9759913a8bfe1792bdf64f260d0acaba75b75076676') +sha256sums=('585eb7971006100ad771a852e07bd2f3e23bcc6eb0b1253a40b5a0e40e4e7418') build() { cd $pkgname-$pkgver diff --git a/extra/gst-plugins-base/PKGBUILD b/extra/gst-plugins-base/PKGBUILD index 448c13612..8bc16b2ea 100644 --- a/extra/gst-plugins-base/PKGBUILD +++ b/extra/gst-plugins-base/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 199366 2013-11-11 17:42:32Z heftig $ +# $Id: PKGBUILD 203287 2014-01-07 13:06:37Z heftig $ # Maintainer: Jan de Groot pkgbase=gst-plugins-base pkgname=('gst-plugins-base-libs' 'gst-plugins-base') -pkgver=1.2.1 +pkgver=1.2.2 pkgrel=1 pkgdesc="GStreamer Multimedia Framework Base Plugins" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ makedepends=('pkgconfig' 'gstreamer' 'orc' 'libxv' 'alsa-lib' 'cdparanoia' 'libv options=(!emptydirs) url="http://gstreamer.freedesktop.org/" source=(${url}/src/$pkgbase/$pkgbase-${pkgver}.tar.xz) -sha256sums=('de2444a5c150d4e4b680364d7c0414cd8b015d95b305ff65d65a17683379532f') +sha256sums=('fa90cf21eac0a77f9393100356aef99ae42072c31dc218d3ae2e7f86cd5ced69') build() { cd $pkgbase-$pkgver diff --git a/extra/gst-plugins-good/PKGBUILD b/extra/gst-plugins-good/PKGBUILD index 7a6f9cc83..9082549fe 100644 --- a/extra/gst-plugins-good/PKGBUILD +++ b/extra/gst-plugins-good/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 199367 2013-11-11 17:42:49Z heftig $ +# $Id: PKGBUILD 203288 2014-01-07 13:06:50Z heftig $ # Maintainer: Jan de Groot pkgname=gst-plugins-good -pkgver=1.2.1 +pkgver=1.2.2 pkgrel=1 pkgdesc="GStreamer Multimedia Framework Good Plugins" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ depends=('libpulse' 'jack' 'libsoup' 'gst-plugins-base-libs' 'wavpack' 'aalib' ' makedepends=('gstreamer' 'speex' 'flac' 'libraw1394' 'python') options=(!emptydirs) source=(${url}/src/$pkgname/$pkgname-$pkgver.tar.xz) -sha256sums=('660fa02dbe01086fcf702d87acc0ba5dde2559d6a11ecf438874afe504c50517') +sha256sums=('6c090f00e8e4588f12807bd9fbb06a03b84a512c93e84d928123ee4a42228a81') build() { cd $pkgname-$pkgver diff --git a/extra/gst-plugins-ugly/PKGBUILD b/extra/gst-plugins-ugly/PKGBUILD index a39c7a325..1308e3cb7 100644 --- a/extra/gst-plugins-ugly/PKGBUILD +++ b/extra/gst-plugins-ugly/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 199864 2013-11-17 12:53:56Z bpiotrowski $ +# $Id: PKGBUILD 203290 2014-01-07 13:07:17Z heftig $ # Maintainer: Jan de Groot pkgname=gst-plugins-ugly -pkgver=1.2.1 -pkgrel=2 +pkgver=1.2.2 +pkgrel=1 pkgdesc="GStreamer Multimedia Framework Ugly Plugins" arch=('i686' 'x86_64') license=('LGPL') @@ -12,7 +12,7 @@ depends=('gst-plugins-base-libs' 'libdvdread' 'lame' 'libmpeg2' 'a52dec' 'libmad makedepends=('python') options=(!emptydirs) source=(${url}/src/$pkgname/$pkgname-$pkgver.tar.xz) -sha256sums=('35ae5d45de54827604e24f57f54ab30a5ab2245b4c4120977273eb11d19c2395') +sha256sums=('4b6aac272a5be0d68f365ef6fba0f829fc5c1d1d601bb4dd9e85f5289b2b56c3') build() { cd $pkgname-$pkgver diff --git a/extra/gstreamer/PKGBUILD b/extra/gstreamer/PKGBUILD index 9b47f5543..10d70fbbb 100644 --- a/extra/gstreamer/PKGBUILD +++ b/extra/gstreamer/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 199371 2013-11-11 17:52:47Z heftig $ +# $Id: PKGBUILD 203286 2014-01-07 13:06:24Z heftig $ # Maintainer: Jan de Groot pkgname=gstreamer -pkgver=1.2.1 +pkgver=1.2.2 pkgrel=1 pkgdesc="GStreamer Multimedia Framework" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ depends=('libxml2' 'glib2') optdepends=('sh: feedback script') makedepends=('intltool' 'pkgconfig' 'gtk-doc' 'gobject-introspection') source=(${url}/src/gstreamer/gstreamer-${pkgver}.tar.xz) -sha256sums=('a4523d2471bca6cd0059a32e3b042f50faa4dadc6439852af8b43ca3f17d1fc9') +sha256sums=('b9f12137ab663edc6c37429b38ca7911074b9c2a829267fe855d4e57d916a0b6') build() { cd "${srcdir}/gstreamer-${pkgver}" diff --git a/extra/kdebase-workspace/PKGBUILD b/extra/kdebase-workspace/PKGBUILD index 5897f96c3..6d788363d 100644 --- a/extra/kdebase-workspace/PKGBUILD +++ b/extra/kdebase-workspace/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 202712 2013-12-25 21:25:47Z andyrtr $ +# $Id: PKGBUILD 203298 2014-01-07 18:06:19Z andrea $ # Maintainer: Andrea Scarpino # Contributor: Pierre Schmitz pkgname=kdebase-workspace _pkgname=kde-workspace -pkgver=4.11.4 -pkgrel=2 +pkgver=4.11.5 +pkgrel=1 pkgdesc="Provides the interface and basic tools for the KDE workspace" arch=('i686' 'x86_64') url='https://projects.kde.org/projects/kde/kde-workspace' @@ -28,7 +28,7 @@ backup=('usr/share/config/kdm/kdmrc') source=("http://download.kde.org/stable/${pkgver}/src/${_pkgname}-${pkgver}.tar.xz" 'kde.pam' 'kde-np.pam' 'kscreensaver.pam' 'kdm.service' 'kdm.logrotate' 'etc-scripts.patch' 'terminate-server.patch' 'kdm-xinitrd.patch') -sha1sums=('c1e2b669f5a1607bcce7e92d9213af1ee809d79e' +sha1sums=('4292288f7636a082f95072c4188015c041b424d3' '660eae40a707d2711d8d7f32a93214865506b795' '6aeecc9e0e221f0515c6bf544f9a3c11cb6961fe' '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' diff --git a/extra/libxfont/PKGBUILD b/extra/libxfont/PKGBUILD index 1b6713d99..1e862ba18 100644 --- a/extra/libxfont/PKGBUILD +++ b/extra/libxfont/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 198282 2013-10-30 13:55:08Z allan $ +# $Id: PKGBUILD 203296 2014-01-07 17:59:08Z lcarlier $ # Maintainer: Jan de Groot pkgname=libxfont -pkgver=1.4.6 +pkgver=1.4.7 pkgrel=1 pkgdesc="X11 font rasterisation library" arch=(i686 x86_64) @@ -11,7 +11,7 @@ license=('custom') depends=('freetype2' 'libfontenc' 'xproto' 'fontsproto') makedepends=('xorg-util-macros' 'xtrans') source=(${url}/archive/individual/lib/libXfont-${pkgver}.tar.bz2) -sha256sums=('d0cbfe4554dc17ceea413cdad5601d35ed8d05d5b880e60931a8775fd1157e9f') +sha256sums=('d16ea3541835d296b19cfb05d7e64fc62173d8e7eb93284402ec761b951d1543') build() { cd "${srcdir}/libXfont-${pkgver}" diff --git a/extra/zsh/PKGBUILD b/extra/zsh/PKGBUILD index 034b66e99..c7fcc330b 100644 --- a/extra/zsh/PKGBUILD +++ b/extra/zsh/PKGBUILD @@ -1,23 +1,24 @@ -# $Id: PKGBUILD 194594 2013-09-19 04:27:04Z pierre $ +# $Id: PKGBUILD 203280 2014-01-07 10:02:57Z pierre $ # Maintainer: Pierre Schmitz -pkgname=zsh -pkgver=5.0.2 -pkgrel=4 -pkgdesc='A very advanced and programmable command interpreter (shell) for UNIX' +pkgbase=zsh +pkgname=('zsh' 'zsh-doc') +pkgver=5.0.5 +pkgrel=1 arch=('i686' 'x86_64') url='http://www.zsh.org/' license=('custom') -depends=('pcre' 'libcap' 'gdbm') -backup=('etc/zsh/zprofile') -install=zsh.install -source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2" - 'zprofile') -md5sums=('b8f2ad691acf58b3252225746480dcad' - '24a9335edf77252a7b5f52e079f7aef7') +makedepends=('pcre' 'libcap' 'gdbm') +source=("http://www.zsh.org/pub/zsh-${pkgver}.tar.bz2" + "http://www.zsh.org/pub/zsh-${pkgver}-doc.tar.bz2" + 'zprofile' 'xattr-include.patch') +md5sums=('6156dc2f19b0a067bdbc0fb7f81e2017' + '1eea70e7401a7a2116fa8de6ee5e8d32' + '24a9335edf77252a7b5f52e079f7aef7' + 'd9af40097fcf112beba34919e8a5934f') prepare() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgbase}-${pkgver}" # Set correct keymap path sed -i 's#/usr/share/keymaps#/usr/share/kbd/keymaps#g' Completion/Unix/Command/_loadkeys @@ -29,12 +30,17 @@ prepare() { done rm -f Completion/Linux/Command/_{pkgtool,rpmbuild,yast} rm -f Completion/Unix/Command/_{osc,systemd} + + # Workaround for FS#38387 + patch -p0 -i "${srcdir}/xattr-include.patch" } build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgbase}-${pkgver}" ./configure --prefix=/usr \ + --docdir=/usr/share/doc/zsh \ + --htmldir=/usr/share/doc/zsh/html \ --enable-etcdir=/etc/zsh \ --enable-zshenv=/etc/zsh/zshenv \ --enable-zlogin=/etc/zsh/zlogin \ @@ -55,13 +61,28 @@ build() { } check() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgbase}-${pkgver}" HOME="${srcdir}" make check } -package() { - cd "${srcdir}/${pkgname}-${pkgver}" +package_zsh() { + pkgdesc='A very advanced and programmable command interpreter (shell) for UNIX' + depends=('pcre' 'libcap' 'gdbm') + backup=('etc/zsh/zprofile') + install=zsh.install + + cd "${srcdir}/${pkgbase}-${pkgver}" make DESTDIR="${pkgdir}/" install install -D -m644 "${srcdir}/zprofile" "${pkgdir}/etc/zsh/zprofile" install -D -m644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } + +package_zsh-doc() { + pkgdesc='Info, HTML and PDF format of the ZSH documentation' + install=zsh-doc.install + + cd "${srcdir}/${pkgbase}-${pkgver}" + make DESTDIR="${pkgdir}/" install.info install.html + install -D -m644 Doc/zsh.pdf "${pkgdir}/usr/share/doc/zsh/zsh.pdf" + install -D -m644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/extra/zsh/xattr-include.patch b/extra/zsh/xattr-include.patch new file mode 100644 index 000000000..0c13a95db --- /dev/null +++ b/extra/zsh/xattr-include.patch @@ -0,0 +1,16 @@ +--- Src/Modules/attr.c 2013-11-27 20:00:20.000000000 +0100 ++++ Src/Modules/attr.c 2014-01-06 11:55:38.550079342 +0100 +@@ -27,11 +27,12 @@ + * + */ + ++#include ++ + #include "attr.mdh" + #include "attr.pro" + + #include +-#include + + static ssize_t + xgetxattr(const char *path, const char *name, void *value, size_t size, int symlink) diff --git a/extra/zsh/zsh-doc.install b/extra/zsh/zsh-doc.install new file mode 100644 index 000000000..2582eae53 --- /dev/null +++ b/extra/zsh/zsh-doc.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(zsh.info zsh.info-1 zsh.info-2 zsh.info-3 zsh.info-4 zsh.info-5 zsh.info-6) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/kernels/pax-flags-libre/PKGBUILD b/kernels/pax-flags-libre/PKGBUILD index 7ae862232..3f5c5e7a2 100644 --- a/kernels/pax-flags-libre/PKGBUILD +++ b/kernels/pax-flags-libre/PKGBUILD @@ -8,7 +8,7 @@ pkgname=pax-flags-libre pkgdesc='Deactivates PaX flags for several binaries to work with PaX enabled kernels (a libre fork of linux-pax-flags)' -pkgver=2.0.15 +pkgver=2.0.15.2 pkgrel=1 arch=(any) url='https://github.com/g4jc/pax-flags-libre' @@ -47,5 +47,5 @@ sha256sums=('06295e9d2afea0ea01c42620f0cd5e3ae785bc42c2749d4bef52f7d5b8a043ce' '1f205fddfb427a696fb00221a3007453e25fbbf180ea026c264d23eeac9e1870' '2736d0ef20d0127c34e132db38d8993dee3062ba0ac0cdf8d444a8d3665698b8' '6171eefd363f2c70bed9ac41fae3458d9e03460fdaf079c99445482e9649555a' - '1271e807fa70a9af8659a8e982830cdb2ab20982a44a967fa2c973ebc7f54664' + '5ea06a1680cf3bd7e57db904829aae5ef0649d6a0f065b35e5dc2e64dd7ed18f' 'ea003c4201745cd0c4bcf5cec5ca2d0a79cc6b1b04ceaa276ace0ad0287b8c50') diff --git a/kernels/pax-flags-libre/simple.conf b/kernels/pax-flags-libre/simple.conf index ff726e430..180b3e18c 100644 --- a/kernels/pax-flags-libre/simple.conf +++ b/kernels/pax-flags-libre/simple.conf @@ -50,6 +50,8 @@ PSmXER: - /usr/sbin/grub-probe - /usr/sbin/vbetool - /usr/bin/midori + - /usr/bin/cheese + - /use/bin/minitube # PAGEEXEC, MPROTECT, EMUTRAMP and RANDMMAP off pSmXer: diff --git a/kernels/xen-docs/PKGBUILD b/kernels/xen-docs/PKGBUILD index 5fd22b1f7..b3fb0899e 100644 --- a/kernels/xen-docs/PKGBUILD +++ b/kernels/xen-docs/PKGBUILD @@ -1,20 +1,24 @@ +# Maintainer: M0Rf30 +# Maintainer (Parabola): André Silva + pkgname=xen-docs -pkgver=4.2.1 +pkgver=4.3.1 pkgrel=1 pkgdesc="Xen 4 (docs)" -arch=(i686 x86_64) +arch=('i686' 'x86_64' 'mips64el') url="http://www.xen.org/" -license="GPL" -depends=('markdown') +license=('GPL') +makedepends=('markdown' 'transfig' 'ghostscript') conflicts=('xen4' 'xen3' 'xen-hv-tools' 'libxen4') - - source=(http://bits.xensource.com/oss-xen/release/${pkgver}/xen-${pkgver}.tar.gz) -build() { - cd $srcdir/xen-${pkgver} +package() { + cd "$srcdir/xen-$pkgver" + cd docs unset CFLAGS LDFLAGS - make PYTHON=python2 DESTDIR=$pkgdir install-docs - } + ./configure --prefix=/usr + cd .. + make DESTDIR=$pkgdir install-docs +} -md5sums=('0d48cbe1767b82aba12517898d4e0408') +md5sums=('7616b8704e1ab89c81f011f0e3703bc8') diff --git a/kernels/xen/09_xen b/kernels/xen/09_xen index 43d050904..ddb20696f 100755 --- a/kernels/xen/09_xen +++ b/kernels/xen/09_xen @@ -21,6 +21,18 @@ else OS="${GRUB_DISTRIBUTOR} GNU/Linux-libre" elif [ "${GRUB_DISTRIBUTOR}" = "parabola" ] ; then OS="${GRUB_DISTRIBUTOR} GNU/Linux-libre" + elif [ "${GRUB_DISTRIBUTOR}" = "Blag" ] ; then + OS="${GRUB_DISTRIBUTOR} Linux and GNU" + elif [ "${GRUB_DISTRIBUTOR}" = "blag" ] ; then + OS="${GRUB_DISTRIBUTOR} Linux and GNU" + elif [ "${GRUB_DISTRIBUTOR}" = "Musix" ] ; then + OS="${GRUB_DISTRIBUTOR} GNU+Linux" + elif [ "${GRUB_DISTRIBUTOR}" = "musix" ] ; then + OS="${GRUB_DISTRIBUTOR} GNU+Linux" + elif [ "${GRUB_DISTRIBUTOR}" = "Dragora" ] ; then + OS="${GRUB_DISTRIBUTOR} GNU/Linux-libre" + elif [ "${GRUB_DISTRIBUTOR}" = "dragora" ] ; then + OS="${GRUB_DISTRIBUTOR} GNU/Linux-libre" else OS="${GRUB_DISTRIBUTOR} GNU/Linux" fi @@ -61,7 +73,7 @@ xen_entry () echo '$(printf "Loading Xen %s ..." ${xen_version})' multiboot ${rel_dirname}/${xen_basename} ${rel_dirname}/${xen_basename} ${xen_args} echo $(printf "$(gettext "Loading Linux %s ...")" ${version}) - module ${rel_dirname}/${basename} ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} + module ${rel_dirname}/${basename} ${rel_dirname}/${basename} root=${linux_root_device_thisversion} rw ${args} EOF if test -n "${initrd}" ; then cat << EOF @@ -88,7 +100,9 @@ while [ "x$xen_list" != "x" ] ; do xen_version=`echo $xen_basename | sed -e "s,^[^0-9]*-,,g" | sed -e "s,.gz,,g"` alt_xen_version=`echo $xen_version | sed -e "s,\.old$,,g"` - list="/boot/vmlinuz-linux"; + list=`for i in /boot/vmlinuz-* /vmlinuz-*; do + if grub_file_is_not_garbage "$i" ; then echo -n "$i "; fi + done` while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` diff --git a/kernels/xen/ChangeLog b/kernels/xen/ChangeLog new file mode 100644 index 000000000..63c33c223 --- /dev/null +++ b/kernels/xen/ChangeLog @@ -0,0 +1,48 @@ +2013-11-25 David Sutton + * 4.3.1-2: + Changed bluez dependancy from bluez4 to bluez + Added recent security patches + +2013-10-31 David Sutton + * 4.3.1-1: + New upstream release + Removed unnecessary security patches (already merged) + Fixed BIOS Workaround patch to apply to the new source files + Fixed ATI Passthrough patch to apply to the new source files + Updated paths in all patches + +2013-09-29 David Sutton + * 4.3.0-7: + Fixed optdepends in PKGBUILD + Added in a pre_remove function in xen.install to disable services + Minor text formating changes in xen.install + Added XSA 62,63,64 and 66 patches (Xen Security Advisories) + +2013-09-29 David Sutton + * 4.3.0-6: + Fixed 09_xen so it can detect lts kernels + +2013-09-28 David Sutton + * 4.3.0-5: + Fixed mount option in 09_xen from ro to rw + Added in dummy /etc/xen/grub.conf to control settings in 09_xen + Fix library sanitize so that it returns to the base directory + Move the syms file to /usr/share/xen so that it is out of the way of boot but still accessible + Added optional dependancy for openvswitch + +2013-08-13 David Sutton + * 4.3.0-4 : + Added patch for qemu-xen to add a TOM register for PCI Hole mapping + Protected /etc/conf.d/xendomains from being overwritten + Included ATI Passthrough patch (not enabled by default, compile tested only) + +2013-07-23 David Sutton + + * 4.3.0-3 : + added ChangeLog. + Cleaned up PKGBUILD to match Parabola Package Standards + Fixed some path references - /var/run to /run + Removed some unnecessary empty directories + Updated xenconsoled and xenstored so they use /run for pid file + Updated auto-created /run directories to include xenstored + diff --git a/kernels/xen/IVRS-debug.patch b/kernels/xen/IVRS-debug.patch new file mode 100644 index 000000000..5f6813cb9 --- /dev/null +++ b/kernels/xen/IVRS-debug.patch @@ -0,0 +1,14 @@ +--- a/xen/drivers/passthrough/amd/iommu_acpi.c 2013-07-09 05:46:56.000000000 -0500 ++++ b/xen/drivers/passthrough/amd/iommu_acpi.c 2013-08-31 01:26:18.614846438 -0500 +@@ -651,9 +651,9 @@ + return 0; + } + +- AMD_IOMMU_DEBUG("IVHD Special: %04x:%02x:%02x.%u variety %#x handle %#x\n", ++ AMD_IOMMU_DEBUG("IVHD Special: %04x:%02x:%02x.%u variety %#x handle %#x used_id %#x\n", + seg, PCI_BUS(bdf), PCI_SLOT(bdf), PCI_FUNC(bdf), +- special->variety, special->handle); ++ special->variety, special->handle, special->used_id); + add_ivrs_mapping_entry(bdf, bdf, special->header.data_setting, iommu); + + switch ( special->variety ) diff --git a/kernels/xen/PKGBUILD b/kernels/xen/PKGBUILD index a6718a6ae..6ff16c8cd 100644 --- a/kernels/xen/PKGBUILD +++ b/kernels/xen/PKGBUILD @@ -1,55 +1,121 @@ -# Contributor: Shanmu Thiagaraja +# Maintainer: David Sutton # Contributor: Limao Luo # Contributor: Luceo # Contributor: Revellion # Maintainer (Parabola): André Silva pkgname=xen -pkgver=4.2.1 -pkgrel=6 -pkgdesc="Xen Hypervisor & Tools (Parabola rebranded)" +pkgver=4.3.1 +pkgrel=2 +pkgdesc="Virtual Machine Hypervisor & Tools (Parabola rebranded)" arch=(i686 x86_64) -url=http://www.xen.org/ +url="http://www.xenproject.org/" license=(GPL2) -depends=(bin86 bluez bridge-utils glib2 gnutls libaio libjpeg-turbo libpng lzo2 sdl wget vde2 yajl) +depends=(bin86 bluez bridge-utils curl e2fsprogs gnutls iproute2 libaio libcap-ng libiscsi libjpeg-turbo libpng lzo2 nss pixman pciutils python python2 sdl wget vde2 yajl) [[ "$CARCH" == "x86_64" ]] && depends+=(lib32-glibc) -makedepends=(dev86 git iasl markdown ocaml-findlib) -optdepends=('xen-docs: Official Xen Documentation') -conflicts=(xen-4.2{,-testing-hg} xen-{gdbsx,hg-unstable,rc}) -backup=(etc/$pkgname/xend-{config,pci-{permissive,quirks}}.sxp etc/modules-load.d/$pkgname.conf etc/$pkgname/xl.conf) +makedepends=(cmake dev86 git iasl markdown ocaml-findlib) +optdepends=('xen-docs: Official Xen Documentation' 'openvswitch: Optional Networking support') +conflicts=(xen-4.2{,-testing-hg} xen-{gdbsx,hg-unstable,rc,git} xen-4.3{,-testing-hg}) +backup=(etc/$pkgname/xend-{config,pci-{permissive,quirks}}.sxp etc/modules-load.d/$pkgname.conf etc/$pkgname/xl.conf etc/conf.d/xen{stored,consoled,domains} etc/default/xencommons etc/$pkgname/grub.conf) options=(!buildflags !strip) install=$pkgname.install +changelog=ChangeLog source=(http://bits.xensource.com/oss-xen/release/$pkgver/$pkgname-$pkgver.tar.gz + xen.install 09_xen - gcc-4.8-typedefs.patch - gdbsx-glibc-2.17.patch - texi2html.patch - timer-add-lrt-lm.patch - qemu-makefile.patch + bios_workaround.patch + xendomains.patch + TOM-register.patch + ati-passthrough.patch + IVRS-debug.patch proc-xen.mount var-lib-xenstored.mount xenconsoled.service + conf.d-xenconsoled xendomains.service xendomU@.service xenstored.service + conf.d-xenstored tmpfiles.d-$pkgname.conf + grub.conf + xsa73-4.3-unstable.patch + xsa75-4.3-unstable.patch + xsa78.patch $pkgname.conf) +sha256sums=('3b5b7cc508b1739753585b5c25635471cdcef680e8770a78bf6ef9333d26a9fd' + '0f6ebf3437974d1708c9e74005b976479ab8ff28adec394208153bf404b411f8' + '74a957d783458b7481c7a09c3ed94ec2e07ee7943e4b7fa33d3684b8d585139e' + '914cc983da1fe89ff125d751c979b4968f8952da21b19b900fcd4e6b33e14552' + '1938ca36bfb62c76ad0642147017ecfaa64588abaa2d88e868f501c4ae83bfd9' + '0fa9426cc499ea3d6e1aa33a8be0e180aed87936814b9b88bb0ef42f6983654a' + 'd93c2d5bcdf0c3e4c6e8efb357cb4b9d618209025361f5ccd9d03651a8acd7a3' + '54883171ff9cf5f342a2be5c944df16902ef06b6f2d015b675fa9bd5ed899c7c' + '139eed988bfaf8edc8ccdfd0b668382bd63db48ce17be91776182a7e28e9d88c' + 'c19146931c6ab8e53092bd9b2ebbfda5c76fd22ad3b1d42dcda3dd1b61f123ff' + 'e4af7891e816b9549ebeff766a78036626c0e278734e5625b8e7d68729530ded' + '48d76cc6f25caa79b3f527c96a0883b1decb9012f6616f61336c8d43791bf007' + '0bd45d9de6456c4f9adf32e726f2db3a3cd0423c1d161b442e8a1666d2e68e3f' + '012cc60ffdcb0e061d04d404eb9232734554aef4dc4b551f66adf82a655e6e41' + '8ee5c5a14064fc2bbfd38d0ec8a6001f541bbe56b9fb534733209a8af148b297' + '0e1ad0a6a72b0c22025a556c23235a8f663427f1e769c45fe39d1c525bf82eff' + '40e0760810a49f925f2ae9f986940b40eba477dc6d3e83a78baaae096513b3cf' + '78398fb27edfedb432b5f4e4bf87b5dbee41f180c623d29f758234a49d8bf4b4' + '18f62049d714c3460df1f698663e42d0f8a16b9b4f62e66b40fdea635a348be5' + '4bac312d49a4a88633af652c09128ba1bba2ca97e2e56e5fe7da6e4671c56ccb' + 'bb13b280bb456c1d7c8f468e23e336e6b2d06eb364c6823f1b426fcfe09f6ed3' + '50a9b7fd19e8beb1dea09755f07318f36be0b7ec53d3c9e74f3266a63e682c0c') +sha512sums=('f5250ad5ad3defc5dc1207eb6208a3928128ef57ac4162018bd92b750dc1df1eaaf37835528aca33a0f9e04c82d5f8c4ba79c03a1780d2b72cbb90cc26f77275' + '78bfb62166ffcf136e12985809b3f412e0145a7f17388a559071f644970ccdfd2a02fe9aa4a180069b923c2e4354b061a4057096de856497f10d9cac57eae4b3' + '8667a97e10f09c5ce5ba604e38a073b7d7944f4d24c5c78a7235443b65a8cc7b6e7de90e40aa335bb17fda0858d6b517ba1e8b5a0bd6bba4ad75ad44b73f6c9c' + '7118bf02ff5338e70b3f27f8ea390cd05ea37a4ceabb4adc9d32fc57329e35e98330f0e865261dd4e670436e1a725832598888d44b1e2b17b351f59318860878' + '440b3967bf0f0cecde42111bc602f591edeadfdf7044f1f181029b0ded5fb8fa9d640bc4a4a57daadd350594f86065120ea5e4d833004590a8bfe0ee88b4c316' + 'b89f524015c1299c7b19573ae0637f9d33613f3fdbb3d978a07d294ee18a657bd124852f1cbb85e6d1382aca42ed799e8ee245a161340bb4b759eeccce28df7d' + 'c30a4cbdc942ae36364830ab604ecb46a68466bfbaaef2740aa805acf9e432a0dd7877593d6211437db4d2e7c2deb15f301d5a5571fd28936f01228f13256d3f' + 'e8392dbc66bf83b887de963416b1fe9a4eeccb8faca78c6fc1dd4243544b871625d43423f03d19cf91d80295d43073904c9dbe37241e7432b69566b05b267391' + '6afdf16e32bb837faf6333334f86855a746f1f46fee9673a4fddc62eecf41f9856bc34397807203c6f5071f0b1ce74532214084042154585c0d39514450db25c' + '00e340f4d3635e3850ca24baea1da08467523c17815feb74161e18397b607fef904db2165fd9bf4632a6e8a6e37aeddad4e56965e1c99b5213c98b3f9afc6aad' + '580e0645d7f157928f137f3d8b38d3e2834cb5fa091dbcd28217bbaed494415a35c8973487a1eec726c2f49c8b11d4dd28fdcbe75f14c91a4474cacd8dfb2e99' + 'a0bbd9c14ee0f2b9dc9cf304b531aaefde545e56b4ce4847f12faab4952520ce857a92765ae3a1b25ebd2b7511bb24fc820864d7342ac43a311d8c6551958895' + 'f00034f8b826b828659a0177f0a6454113c625e69a817dfe32e461767f6643e0288bfc2a22d23358504240df627af6e3b8f5ffa0077e241e590b33d3f252e74c' + 'f21cc17009957797630c2e82630b5e93ceac8fdadc5eaa3abf0510ca81a49e5680a80ece63b248354122c5fd5d40c9a495fad15e307a694936fa062e984158c4' + '9e95e05ac7cce383530ede0f8f75b4f8990c7d7d55ef59f3e37c64a75ccc012475595bc1123bc4c2072dd2c1c2f4b744f26d6adb799f7a068195aadde383af89' + 'c996d48737ad31528b0b2b1379e3ebae948d290de9ddc71f33c7c56f0634466bc7afb2eab847e851c19e3c13bb99468a0778d908606486959a40ff3272189bd3' + '53ba61587cc2e84044e935531ed161e22c36d9e90b43cab7b8e63bcc531deeefacca301b5dff39ce89210f06f1d1e4f4f5cf49d658ed5d9038c707e3c95c66ef' + '04000a802e96c11929cb94c9a2bcafbb4307620192388441d979ea85836c3395954dea53d449c1cc25c3a0a30c49d318b8de59a053c6254f5a81e87864648a9c' + '78c94d3e473abaf857213754c7f0ef1a0dd06354cd137d1567a48d92b4106cbefd112f1dcecc90bc1f8c75d76a0e8a3425408f777044de8ec754bcda32bb7f97' + '4fb6f678dccc9f23f2c3b27617718bc6c0a87505f7483f4d07563b7b2cc37d57d3b5ef658ee5867258916c5c2695a5086cc7790196aed85357c6d3168c06749b' + 'b55cb25f88acc348e6777063f241269730f06482fe430706ac500cbd7127bc7c70188f84a282dc8a0369cc838999d47a09afc33fc9f24b5c214bdf59352c414c' + 'ccaa2ff82e4203b11e5dec9aeccac2e165721d8067e0094603ecaa7a70b78c9eb9e2287a32687883d26b6ceae6f8d2ad7636ddf949eb658637b3ceaa6999711b') prepare() { cd $pkgname-$pkgver/ - patch -Np1 -i ../gcc-4.8-typedefs.patch - patch -Np1 -i ../gdbsx-glibc-2.17.patch - patch -Np1 -i ../texi2html.patch - patch -Np1 -i ../timer-add-lrt-lm.patch - patch -Np1 -i ../qemu-makefile.patch - sed -i '203i\\t\t--disable-docs \\' tools/Makefile # disable qemu doc generation b/c of an error + + ### Patching + patch -Np1 -i ../xendomains.patch + patch -Np1 -i ../TOM-register.patch + + # Uncomment line below if you have a bios which is reporting bad IVRS data + #patch -Np1 -i ../bios_workaround.patch + #patch -Np1 -i ../IVRS-debug.patch + + # Uncomment line below if you want to enable ATI Passthrough support (some reported successes) + #patch -Np1 -i ../ati-passthrough.patch + + # Add Security Patches + patch -Np1 -i ../xsa73-4.3-unstable.patch + patch -Np1 -i ../xsa75-4.3-unstable.patch + patch -Np1 -i ../xsa78.patch + + # Fix Install Paths + sed -i 's:/sbin:/bin:' config/StdGNU.mk + } build() { export CFLAGS+='-Wall -Wstrict-prototypes -Wno-unused-local-typedefs -Wno-sizeof-pointer-memaccess' cd $pkgname-$pkgver/ ./autogen.sh - ./configure PYTHON=/usr/bin/python2 + ./configure PYTHON=/usr/bin/python2 --prefix=/usr --localstatedir=/run unset CFLAGS } @@ -64,82 +130,62 @@ package() { done install -Dm644 tmpfiles.d-$pkgname.conf "$pkgdir"/usr/lib/tmpfiles.d/$pkgname.conf install -Dm644 $pkgname.conf "$pkgdir"/etc/modules-load.d/$pkgname.conf + install -Dm644 conf.d-xenstored "$pkgdir"/etc/conf.d/xenstored + install -Dm644 conf.d-xenconsoled "$pkgdir"/etc/conf.d/xenconsoled + install -Dm644 grub.conf "$pkgdir"/etc/xen/grub.conf install -Dm755 09_xen "$pkgdir"/etc/grub.d/09_xen cd "$pkgdir" - sed -i ':XENDOM_CONFIG=/etc/:s:sysconfig/xendomains:conf.d/xendomains:' etc/init.d/xendomains - sed -i 's:touch /var/lock/subsys/xend:mkdir -p /var/lock/subsys\n &:' etc/init.d/xend + # Fix paths in scripts, move to right locations and create missing directories + sed -i 's:/var/lock:/run/lock:' etc/init.d/xendomains + sed -i 's:/var/lock:/run/lock:' etc/init.d/xend + sed -i 's:/var/lock:/run/lock:' etc/xen/scripts/hotplugpath.sh + sed -i 's:/var/run:/run:' etc/xen/scripts/hotplugpath.sh + mv etc/{init,rc}.d + mv etc/rc.d/xendomains etc/xen/scripts/xendomains + mv etc/default/xendomains etc/conf.d/xendomains + mv var/xen/dump var/lib/xen/ + mkdir var/log/xen/console + + # Sanitize library path (if lib64 exists) if [[ -d usr/lib64 ]]; then cd usr/ cp -r lib64/* lib/ rm -rf lib64 + cd ../ fi - mv etc/{init,rc}.d - - mv usr/local/etc/qemu/ etc/ - rm -rf usr/local/share/ - mv etc/rc.d/xendomains etc/xen/scripts/xendomains + # Compress and move syms file to a different directory + if [ "$CARCH" == "x86_64" ]; then + gzip boot/$pkgname-syms-$pkgver + mv boot/$pkgname-syms-$pkgver.gz usr/share/xen + fi ##### Kill unwanted stuff ##### - # stubdom: newlib - rm -rf usr/*-xen-elf - # hypervisor symlinks - rm -f boot/xen{,-4,-4.2}.gz + rm -f boot/xen{,-4,-4.3}.gz - # silly doc dir fun - rm -rf usr/share/doc/xen - rm -rf usr/share/doc/qemu + # Documentation cleanup ( see xen-docs package ) + rm -rf usr/share/doc + rm -rf usr/share/xen/man - # Pointless helper - rm -f usr/sbin/xen-python-path + # Pointless helper cleanup + rm -f usr/bin/xen-python-path + rm -rf usr/libexec - # qemu stuff (unused or available from upstream) - rm -rf usr/share/xen/man + # Unnecessary qemu support files rm -rf usr/bin/qemu-*-xen - for file in bamboo.dtb bios.bin openbios-ppc openbios-sparc32 openbios-sparc64 \ - ppc_rom.bin pxe-e1000.bin pxe-ne2k_pci.bin pxe-pcnet.bin pxe-rtl8139.bin \ - vgabios-cirrus.bin vgabios.bin video.x; do - rm -f usr/share/xen/qemu/$file - done + rm usr/share/qemu-xen/qemu/{palcode,openbios}-* + rm usr/share/xen/qemu/openbios-* - # adhere to Static Library Packaging Guidelines - rm -rf usr/lib/*.a - - # Fix errors from deprecated xend + # Clean up udev rules naming, remove depreciated xend.rules + mv etc/udev/rules.d/xen-backend.rules etc/udev/rules.d/40-xen-backend.rules rm etc/udev/rules.d/xend.rules - rmdir usr/local/etc etc/xen/auto var/xen/dump var/lock/subsys usr/share/doc var/lib/xen/xenpaging var/run/xend/boot var/log/xen + # Clean up left over empty directories + rm -rf var/run var/lock var/xen + + # adhere to Static Library Packaging Guidelines + rm -rf usr/lib/*.a } -sha256sums=('fb8df5827ce3e2d2d3b078d9e5afde502beb5e7ab9442e51a94087061bd450c6' - 'cee994b4c788808c0148caeb5f798cc98b9268bb9f04448ff7c3ed479bfb7821' - 'e7c77f5fe5b6f4bd5cb3e077d44a2219252592e09e3350316ba4505575f04039' - 'f78593f1b3b4d6201644ecce77c6dd5bb7378dc53eff7cc940a80e3cd1bf72f4' - '08e5bf65c833a608470ad118ce369e32f9c267e1787f2900c06708af321225e6' - '4d55132a8e47fbfe415bf3c88824b6dcf48e4da1fff86d2b07e0c2c9e42c0a63' - '247fbfacf3212c26b673e1d7c3cc29eb0d1e903c217f16ef9dab5ed667ee139d' - '139eed988bfaf8edc8ccdfd0b668382bd63db48ce17be91776182a7e28e9d88c' - 'c19146931c6ab8e53092bd9b2ebbfda5c76fd22ad3b1d42dcda3dd1b61f123ff' - 'ba8f1c10b3f3df1f9fda0782a691fed67661e36f49be74471c86850639fee3ba' - '0bd45d9de6456c4f9adf32e726f2db3a3cd0423c1d161b442e8a1666d2e68e3f' - '1862a14607582d14247b74435dfb16411fd68904aa19e2a93c5e6ac301169d3c' - 'a0ad5a7d9262c2d22a8875a47cff2c821885ddb65c0c9eb7518befb0f42fcce7' - '6bddcea43922f72a1c8ab556c3f20067d7f817220bcd9c1c61d18f3a58dfaa9d' - '50a9b7fd19e8beb1dea09755f07318f36be0b7ec53d3c9e74f3266a63e682c0c') -sha512sums=('fe27a965e2b34035bd025482eda9fc4d4e82523c929323fd30813367d5ffbe2fa1ed3d7d4479f2632e8b5625972448b7bd6a7768e8dc1dcd1b6747d281cc1a9e' - '9f8f53ffbf19dbd56fcc56e994385b99fff537a3e295756c1e9d886f7a5f454577ec20bbd7c26516e4f80f1cf24e6d5af7dae251e32470872128eb52f6e1866f' - '88fa8b499aabd1baee5537cbdc6b8f150badb81e40b77f8e19e5b38c70803a953a2a72725065b74bb228ee242ccbcda57428af349cf17272613f7deb1afcb75c' - 'fb7dbd3d9ca610c0b476cf7202e4bd051d85de2de8e92c0c3ac59dc327bc47820eddfa67a8dc01fde21d1a3209f83b6f8533bdc7ecd0634ff503f2fac61fee6d' - '562f12e723116c705fc9d0fd4a2afd382a93465be7f616d1e20e87daf39c11029fbc57ec46e38d3ff61c482fdc9ac4df9e07600a77515867d9da6f0faf3da7f9' - 'a0baec71e9240fa9a72aa67e0783fe1200afb2ff61c625f5e96e536a8839213ada9908e776ed243a866065084f61a06d286ae2488c158730c1dd2d424cf4b0dc' - '738bfe72ab6c03d6b84c8f594fb8a63adc148edc4f9eb7beb279aa06002171fd957dbcee3b850bfbb5672f3d740047f41f59b5fdea0970a2de1a24b178fd5972' - '6afdf16e32bb837faf6333334f86855a746f1f46fee9673a4fddc62eecf41f9856bc34397807203c6f5071f0b1ce74532214084042154585c0d39514450db25c' - '00e340f4d3635e3850ca24baea1da08467523c17815feb74161e18397b607fef904db2165fd9bf4632a6e8a6e37aeddad4e56965e1c99b5213c98b3f9afc6aad' - '27d7289a8bf6e15bddcb360287001429205b57ee4d791b0337328879ffd76b8e375e3c1dd0de0ab57dd4bd1e2a2bc1748c44cc05b2528632a3e6af60f626de9d' - 'f00034f8b826b828659a0177f0a6454113c625e69a817dfe32e461767f6643e0288bfc2a22d23358504240df627af6e3b8f5ffa0077e241e590b33d3f252e74c' - '31fefc739f0f0e568df03dcf9aa02e0265ff4fbf77e7ae62d6a318fcc34e87a0ffd3fc4b84ff8c9cc95511e2e74b7b61e6b5471cd0b3cd47ee0da86b1ea90268' - 'd93509c53a3f80ab266f75a54633bba070a7ef48f629168f074c7c37d36ee9c98d2d30703bed41b1c163d960f2a3ac9f435b335db6e7b8a6e9c97044ede8b76e' - '97fb10771fad1c59c1168ede6e4a37710937821c0a053e77df7907b0a33137a190731b0130fb1d373c196a04450360a9cd3202617a77b1726613c523613cd194' - 'ccaa2ff82e4203b11e5dec9aeccac2e165721d8067e0094603ecaa7a70b78c9eb9e2287a32687883d26b6ceae6f8d2ad7636ddf949eb658637b3ceaa6999711b') diff --git a/kernels/xen/TOM-register.patch b/kernels/xen/TOM-register.patch new file mode 100644 index 000000000..88bedbbc0 --- /dev/null +++ b/kernels/xen/TOM-register.patch @@ -0,0 +1,187 @@ +--- xen-4.3.1/tools/qemu-xen/hw/pc.h ++++ xen-4.3.1-new/tools/qemu-xen/hw/pc.h +@@ -128,15 +128,14 @@ extern int no_hpet; + struct PCII440FXState; + typedef struct PCII440FXState PCII440FXState; + ++#define I440FX_TOM 0xe0000000 ++#define I440FX_XEN_TOM 0xf0000000 ++ + PCIBus *i440fx_init(PCII440FXState **pi440fx_state, int *piix_devfn, + ISABus **isa_bus, qemu_irq *pic, + MemoryRegion *address_space_mem, + MemoryRegion *address_space_io, + ram_addr_t ram_size, +- hwaddr pci_hole_start, +- hwaddr pci_hole_size, +- hwaddr pci_hole64_start, +- hwaddr pci_hole64_size, + MemoryRegion *pci_memory, + MemoryRegion *ram_memory); + +--- xen-4.3.1/tools/qemu-xen/hw/pc_piix.c ++++ xen-4.3.1-new/tools/qemu-xen/hw/pc_piix.c +@@ -92,9 +92,9 @@ static void pc_init1(MemoryRegion *system_memory, + kvmclock_create(); + } + +- if (ram_size >= 0xe0000000 ) { +- above_4g_mem_size = ram_size - 0xe0000000; +- below_4g_mem_size = 0xe0000000; ++ if (ram_size >= I440FX_TOM) { ++ above_4g_mem_size = ram_size - I440FX_TOM; ++ below_4g_mem_size = I440FX_TOM; + } else { + above_4g_mem_size = 0; + below_4g_mem_size = ram_size; +@@ -129,12 +129,6 @@ static void pc_init1(MemoryRegion *system_memory, + if (pci_enabled) { + pci_bus = i440fx_init(&i440fx_state, &piix3_devfn, &isa_bus, gsi, + system_memory, system_io, ram_size, +- below_4g_mem_size, +- 0x100000000ULL - below_4g_mem_size, +- 0x100000000ULL + above_4g_mem_size, +- (sizeof(hwaddr) == 4 +- ? 0 +- : ((uint64_t)1 << 62)), + pci_memory, ram_memory); + } else { + pci_bus = NULL; +--- xen-4.3.1/tools/qemu-xen/hw/piix_pci.c ++++ xen-4.3.1-new/tools/qemu-xen/hw/piix_pci.c +@@ -86,6 +86,14 @@ struct PCII440FXState { + #define I440FX_PAM_SIZE 7 + #define I440FX_SMRAM 0x72 + ++/* The maximum vaule of TOM(top of memory) register in I440FX ++ * is 1G, so it doesn't meet any popular virutal machines, so ++ * define another register to report the base of PCI memory. ++ * Use one byte 0xb0 for the upper 8 bit, they are originally ++ * resevered for host bridge. ++ * */ ++#define I440FX_PCI_HOLE_BASE 0xb0 ++ + static void piix3_set_irq(void *opaque, int pirq, int level); + static PCIINTxRoute piix3_route_intx_pin_to_irq(void *opaque, int pci_intx); + static void piix3_write_config_xen(PCIDevice *dev, +@@ -101,6 +109,43 @@ static int pci_slot_get_pirq(PCIDevice *pci_dev, int pci_intx) + return (pci_intx + slot_addend) & 3; + } + ++ ++static void i440fx_update_pci_mem_hole(PCII440FXState *f, bool del) ++{ ++ ram_addr_t above_4g_mem_size; ++ hwaddr pci_hole_start, pci_hole_size, pci_hole64_start, pci_hole64_size; ++ ++ pci_hole_start = pci_default_read_config(&f->dev, I440FX_PCI_HOLE_BASE, 1) << 24; ++ pci_hole_size = 0x100000000ULL - pci_hole_start; ++ ++ if (ram_size >= pci_hole_start) { ++ above_4g_mem_size = ram_size - pci_hole_start; ++ } else { ++ above_4g_mem_size = 0; ++ } ++ pci_hole64_start = 0x100000000ULL + above_4g_mem_size; ++ pci_hole64_size = sizeof(hwaddr) == 4 ? 0 : ((uint64_t)1 << 62); ++ ++ if (del) { ++ memory_region_del_subregion(f->system_memory, &f->pci_hole); ++ if (pci_hole64_size) { ++ memory_region_del_subregion(f->system_memory, &f->pci_hole_64bit); ++ } ++ } ++ ++ memory_region_init_alias(&f->pci_hole, "pci-hole", f->pci_address_space, ++ pci_hole_start, pci_hole_size); ++ memory_region_add_subregion(f->system_memory, pci_hole_start, &f->pci_hole); ++ memory_region_init_alias(&f->pci_hole_64bit, "pci-hole64", ++ f->pci_address_space, ++ pci_hole64_start, pci_hole64_size); ++ if (pci_hole64_size) { ++ memory_region_add_subregion(f->system_memory, pci_hole64_start, ++ &f->pci_hole_64bit); ++ } ++} ++ ++ + static void i440fx_update_memory_mappings(PCII440FXState *d) + { + int i; +@@ -136,6 +181,9 @@ static void i440fx_write_config(PCIDevice *dev, + range_covers_byte(address, len, I440FX_SMRAM)) { + i440fx_update_memory_mappings(d); + } ++ if (range_covers_byte(address, len, I440FX_PCI_HOLE_BASE)) { ++ i440fx_update_pci_mem_hole(d, true); ++ } + } + + static int i440fx_load_old(QEMUFile* f, void *opaque, int version_id) +@@ -203,6 +251,10 @@ static int i440fx_initfn(PCIDevice *dev) + + d->dev.config[I440FX_SMRAM] = 0x02; + ++ /* Emulate top of memory, here use 0xe0000000 as default val*/ ++ uint32_t addr = xen_enabled() ? I440FX_XEN_TOM : I440FX_TOM; ++ pci_set_byte(dev->config + I440FX_PCI_HOLE_BASE, (uint8_t)(addr >> 24)); ++ + cpu_smm_register(&i440fx_set_smm, d); + return 0; + } +@@ -214,10 +266,6 @@ static PCIBus *i440fx_common_init(const char *device_name, + MemoryRegion *address_space_mem, + MemoryRegion *address_space_io, + ram_addr_t ram_size, +- hwaddr pci_hole_start, +- hwaddr pci_hole_size, +- hwaddr pci_hole64_start, +- hwaddr pci_hole64_size, + MemoryRegion *pci_address_space, + MemoryRegion *ram_memory) + { +@@ -244,16 +292,6 @@ static PCIBus *i440fx_common_init(const char *device_name, + f->system_memory = address_space_mem; + f->pci_address_space = pci_address_space; + f->ram_memory = ram_memory; +- memory_region_init_alias(&f->pci_hole, "pci-hole", f->pci_address_space, +- pci_hole_start, pci_hole_size); +- memory_region_add_subregion(f->system_memory, pci_hole_start, &f->pci_hole); +- memory_region_init_alias(&f->pci_hole_64bit, "pci-hole64", +- f->pci_address_space, +- pci_hole64_start, pci_hole64_size); +- if (pci_hole64_size) { +- memory_region_add_subregion(f->system_memory, pci_hole64_start, +- &f->pci_hole_64bit); +- } + memory_region_init_alias(&f->smram_region, "smram-region", + f->pci_address_space, 0xa0000, 0x20000); + memory_region_add_subregion_overlap(f->system_memory, 0xa0000, +@@ -295,6 +333,7 @@ static PCIBus *i440fx_common_init(const char *device_name, + (*pi440fx_state)->dev.config[0x57]=ram_size; + + i440fx_update_memory_mappings(f); ++ i440fx_update_pci_mem_hole(f, false); + + return b; + } +@@ -304,10 +343,6 @@ PCIBus *i440fx_init(PCII440FXState **pi440fx_state, int *piix3_devfn, + MemoryRegion *address_space_mem, + MemoryRegion *address_space_io, + ram_addr_t ram_size, +- hwaddr pci_hole_start, +- hwaddr pci_hole_size, +- hwaddr pci_hole64_start, +- hwaddr pci_hole64_size, + MemoryRegion *pci_memory, MemoryRegion *ram_memory) + + { +@@ -315,8 +350,6 @@ PCIBus *i440fx_init(PCII440FXState **pi440fx_state, int *piix3_devfn, + + b = i440fx_common_init("i440FX", pi440fx_state, piix3_devfn, isa_bus, pic, + address_space_mem, address_space_io, ram_size, +- pci_hole_start, pci_hole_size, +- pci_hole64_start, pci_hole64_size, + pci_memory, ram_memory); + return b; + } diff --git a/kernels/xen/ati-passthrough.patch b/kernels/xen/ati-passthrough.patch new file mode 100644 index 000000000..7c20b1ecd --- /dev/null +++ b/kernels/xen/ati-passthrough.patch @@ -0,0 +1,415 @@ +--- xen-4.3.1/tools/qemu-xen-traditional/hw/pass-through.c Thu Sep 6 11:05:30 2012 ++++ xen-4.3.1-new/tools/qemu-xen-traditional/hw/pass-through.c Sat Nov 24 08:27:07 2012 +@@ -1438,9 +1438,17 @@ static void pt_ioport_map(PCIDevice *d, + if (e_phys != -1) + { + /* Create new mapping */ +- ret = xc_domain_ioport_mapping(xc_handle, domid, e_phys, +- assigned_device->bases[i].access.pio_base, e_size, +- DPCI_ADD_MAPPING); ++ if ( vga_skip_ioport_map(d) ) ++ { ++ assigned_device->bases[i].e_physbase = -1; ++ } ++ else ++ { ++ ret = xc_domain_ioport_mapping(xc_handle, domid, e_phys, ++ assigned_device->bases[i].access.pio_base, e_size, ++ DPCI_ADD_MAPPING); ++ } ++ + if ( ret != 0 ) + { + PT_LOG("Error: create new mapping failed!\n"); +--- xen-4.3.1/tools/qemu-xen-traditional/hw/pass-through.h Thu Sep 6 11:05:30 2012 ++++ xen-4.3.1-new/tools/qemu-xen-traditional/hw/pass-through.h Sat Nov 24 08:27:07 2012 +@@ -419,6 +419,11 @@ int pt_pci_host_write(struct pci_dev *pc + void intel_pch_init(PCIBus *bus); + int register_vga_regions(struct pt_dev *real_device); + int unregister_vga_regions(struct pt_dev *real_device); ++int vga_skip_ioport_map(PCIDevice *d); ++int igd_register_vga_regions(struct pt_dev *real_device); ++int igd_unregister_vga_regions(struct pt_dev *real_device); ++int ati_register_vga_regions(struct pt_dev *real_device); ++int ati_unregister_vga_regions(struct pt_dev *real_device); + int setup_vga_pt(struct pt_dev *real_device); + PCIBus *intel_pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, + uint16_t did, const char *name, uint16_t revision); +--- xen-4.3.1/tools/qemu-xen-traditional/hw/pci.h Thu Sep 6 11:05:30 2012 ++++ xen-4.3.1-new/tools/qemu-xen-traditional/hw/pci.h Sat Nov 24 08:27:07 2012 +@@ -54,6 +54,8 @@ extern target_phys_addr_t pci_mem_base; + + #define PCI_VENDOR_ID_CIRRUS 0x1013 + ++#define PCI_VENDOR_ID_ATI 0x1002 ++ + #define PCI_VENDOR_ID_IBM 0x1014 + #define PCI_DEVICE_ID_IBM_OPENPIC2 0xffff + +--- xen-4.3.1/tools/qemu-xen-traditional/hw/pt-graphics.c Thu Sep 6 11:05:30 2012 ++++ xen-4.3.1-new/tools/qemu-xen-traditional/hw/pt-graphics.c Sat Nov 24 08:28:10 2012 +@@ -13,6 +13,207 @@ + + extern int gfx_passthru; + extern int igd_passthru; ++/*********************************/ ++/* Code for ATI GFX Passthru */ ++/*********************************/ ++/* ATI VBIOS Working Mechanism ++ * ++ * Generally there are three memory resources (two MMIO and one PIO) ++ * associated with modern ATI gfx. VBIOS uses special tricks to figure out ++ * BARs, instead of using regular PCI config space read. ++ * ++ * (1) VBIOS relies on I/O port 0x3C3 to retrieve PIO BAR ++ * (2) VBIOS maintains a shadow copy of PCI configure space. It retries the ++ * MMIO BARs from this shadow copy via sending I/O requests to first two ++ * registers of PIO (MMINDEX and MMDATA). The workflow is like this: ++ * MMINDEX (register 0) is written with an index value, specifying the ++ * register VBIOS wanting to access. Then the shadowed data can be ++ * read/written from MMDATA (register 1). For two MMIO BARs, the index ++ * values are 0x4010 and 0x4014 respectively. ++ * ++ */ ++ ++#define ATI_BAR1_INDEX 0 //MMIO BAR1 ++#define ATI_BAR2_INDEX 1 //MMIO BAR2 ++#define ATI_BAR5_INDEX 4 //PIO BAR == BAR5 ++ ++#define ATI_BAR1_MMINDEX 0x4010 //data written to MMINDEX for MMIO BAR1 ++#define ATI_BAR2_MMINDEX 0x4014 //data written to MMINDEX FOR MMIO BAR2 ++ ++struct ati_gfx_info { ++ int initialized; /* initialized already? */ ++ ++ /* PIO */ ++ uint32_t host_pio_base; /* host base addr of PIO */ ++ uint32_t guest_pio_base; /* guest base addr of PIO */ ++ uint32_t pio_size; /* PIO size */ ++ ++ /* MMIO */ ++ uint32_t guest_mmio_base1; /* guest base addr of MMIO 1 */ ++ uint32_t guest_mmio_base2; /* guest base addr of MMIO 2 */ ++ ++ /* PIO MMINDEX access recording */ ++ uint32_t pre_mmindex_data; /* previous data written to MMINDEX */ ++}; ++ ++static struct ati_gfx_info gfx_info; ++ ++/* Convert guest PIO port to host PIO port */ ++static uint16_t gport_to_hport(uint16_t gport) ++{ ++ return (gport - gfx_info.guest_pio_base) + gfx_info.host_pio_base; ++} ++ ++/* Read host PIO port */ ++static uint32_t ati_hw_in(uint16_t hport) ++{ ++ unsigned val; ++ ++ //iopl(3); ++ asm volatile ("in %1,%0":"=a"(val):"Nd"(hport)); ++ //iopl(0); ++ ++ return val; ++} ++ ++/* Write data to host PIO */ ++static void ati_hw_out(uint16_t hport, uint32_t data) ++{ ++ //iopl(3); ++ asm volatile ("out %1, %0"::"Nd"(hport),"a"(data)); ++ //iopl(0); ++} ++ ++static uint32_t ati_io_regs_read(void *opaque, uint32_t addr) ++{ ++ uint32_t val; ++ ++ val = ati_hw_in(gport_to_hport(addr)); ++ ++ /* tweak the value if VBIOS is reading MMIO BAR1 and BAR2 */ ++ if ( addr == (gfx_info.guest_pio_base + 4) ) ++ { ++ switch ( gfx_info.pre_mmindex_data ) ++ { ++ case ATI_BAR1_MMINDEX: ++ val = gfx_info.guest_mmio_base1 | (val & 0x0000000f); ++ break; ++ case ATI_BAR2_MMINDEX: ++ val = gfx_info.guest_mmio_base2 | (val & 0x0000000f); ++ break; ++ default: ++ break; ++ } ++ } ++ ++ return val; ++} ++ ++static void ati_io_regs_write(void *opaque, uint32_t addr, uint32_t val) ++{ ++ ati_hw_out(gport_to_hport(addr), val); ++ ++ /* book keeping */ ++ if ( addr == gfx_info.guest_pio_base ) ++ gfx_info.pre_mmindex_data = val; ++} ++ ++static void ati_gfx_init(struct pt_dev *assigned) ++{ ++ PCIDevice *dev = (PCIDevice *)&assigned->dev; ++ ++ register_ioport_read(dev->io_regions[ATI_BAR5_INDEX].addr, ++ dev->io_regions[ATI_BAR5_INDEX].size, 4, ati_io_regs_read, assigned); ++ ++ register_ioport_write(dev->io_regions[ATI_BAR5_INDEX].addr, ++ dev->io_regions[ATI_BAR5_INDEX].size, 4, ati_io_regs_write, assigned); ++ ++ /* initialize IO registers */ ++ gfx_info.guest_pio_base = dev->io_regions[ATI_BAR5_INDEX].addr; ++ gfx_info.pio_size = dev->io_regions[ATI_BAR5_INDEX].size; ++ gfx_info.host_pio_base = assigned->bases[ATI_BAR5_INDEX].access.pio_base; ++ ++ gfx_info.guest_mmio_base1 = dev->io_regions[ATI_BAR1_INDEX].addr; ++ gfx_info.guest_mmio_base2 = dev->io_regions[ATI_BAR2_INDEX].addr; ++ gfx_info.initialized = 1; ++ ++ PT_LOG("guest_pio_bar = 0x%x, host_pio_bar = 0x%x, pio_size=0x%x " ++ "guest_mmio_bar1=0x%x, guest_mmio_bar2=0x%x\n", ++ gfx_info.guest_pio_base, gfx_info.host_pio_base, gfx_info.pio_size, ++ gfx_info.guest_mmio_base1, gfx_info.guest_mmio_base2); ++} ++ ++static uint32_t ati_legacy_io_read(void *opaque, uint32_t addr) ++{ ++ struct pt_dev *assigned_device = opaque; ++ PCIDevice *dev = (PCIDevice *)&assigned_device->dev; ++ uint32_t val = 0xFF; ++ ++ switch( addr ) ++ { ++ case 0x3c3: ++ val = dev->io_regions[ATI_BAR5_INDEX].addr >> 8; ++ /* Intercept GFX IO registers. This supposes to happen in ++ * ati_register_vga_regions(). But we cannot get guest phys IO BAR ++ * over there. */ ++ if ( !gfx_info.initialized ) ++ ati_gfx_init(assigned_device); ++ break; ++ default: ++ PT_LOG("ERROR: port 0x%x I/O read not handled\n", addr); ++ break; ++ } ++ ++ return val; ++} ++ ++static void ati_legacy_io_write(void *opaque, uint32_t addr, uint32_t val) ++{ ++ PT_LOG("ERROR: port 0x%x I/O write not handled\n", addr); ++} ++ ++int ati_register_vga_regions(struct pt_dev *real_device) ++{ ++ PCIDevice *dev = (PCIDevice *)&real_device->dev; ++ int ret = 0; ++ ++ /* We need to intercept VBIOS accesses to port 0x3C3, which returns ++ * device port I/O BAR. For the rest of legacy I/O ports, we allow direct ++ * accesses. ++ */ ++ ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C0, ++ 0x3C0, 0x3, DPCI_ADD_MAPPING); ++ ++ ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C4, ++ 0x3C4, 0x1C, DPCI_ADD_MAPPING); ++ ++ register_ioport_read(0x3c3, 1, 1, ati_legacy_io_read, real_device); ++ register_ioport_write(0x3c3, 1, 1, ati_legacy_io_write, real_device); ++ ++ /* initialized on the first port 0x3C3 access in ati_gfx_init */ ++ gfx_info.initialized = 0; ++ ++ return ret; ++} ++ ++int ati_unregister_vga_regions(struct pt_dev *real_device) ++{ ++ int ret = 0; ++ ++ ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C0, ++ 0x3C0, 0x3, DPCI_REMOVE_MAPPING); ++ ++ ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C4, ++ 0x3C4, 0x1C, DPCI_REMOVE_MAPPING); ++ ++ gfx_info.initialized = 0; ++ ++ return ret; ++} ++ ++/*********************************/ ++/* Code for Intel IGD Passthru */ ++/*********************************/ + + static uint32_t igd_guest_opregion = 0; + +@@ -176,6 +377,77 @@ read_default: + return pci_default_read_config(pci_dev, config_addr, len); + } + ++int igd_register_vga_regions(struct pt_dev *real_device) ++{ ++ u32 vendor_id, igd_opregion; ++ int ret = 0; ++ ++ /* legacy I/O ports 0x3C0 -- 0x3E0 */ ++ ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C0, ++ 0x3C0, 0x20, DPCI_ADD_MAPPING); ++ ++ /* 1:1 map ASL Storage register value */ ++ vendor_id = pt_pci_host_read(real_device->pci_dev, PCI_VENDOR_ID, 2); ++ igd_opregion = pt_pci_host_read(real_device->pci_dev, PCI_INTEL_OPREGION, 4); ++ if ( (vendor_id == PCI_VENDOR_ID_INTEL) && igd_opregion ) ++ { ++ ret |= xc_domain_memory_mapping(xc_handle, domid, ++ igd_opregion >> XC_PAGE_SHIFT, ++ igd_opregion >> XC_PAGE_SHIFT, ++ 2, ++ DPCI_ADD_MAPPING); ++ PT_LOG("register_vga: igd_opregion = %x\n", igd_opregion); ++ } ++ ++ return ret; ++} ++ ++int igd_unregister_vga_regions(struct pt_dev *real_device) ++{ ++ u32 vendor_id, igd_opregion; ++ int ret = 0; ++ ++ ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C0, ++ 0x3C0, 0x20, DPCI_REMOVE_MAPPING); ++ ++ vendor_id = pt_pci_host_read(real_device->pci_dev, PCI_VENDOR_ID, 2); ++ igd_opregion = pt_pci_host_read(real_device->pci_dev, PCI_INTEL_OPREGION, 4); ++ if ( (vendor_id == PCI_VENDOR_ID_INTEL) && igd_opregion ) ++ { ++ ret |= xc_domain_memory_mapping(xc_handle, domid, ++ igd_opregion >> XC_PAGE_SHIFT, ++ igd_opregion >> XC_PAGE_SHIFT, ++ 2, ++ DPCI_REMOVE_MAPPING); ++ } ++ ++ return ret; ++} ++/*********************************/ ++/* Generic Code for GFX Passthru */ ++/*********************************/ ++/* This function decides whether I/O port map should be skipped */ ++int vga_skip_ioport_map(PCIDevice *d) ++{ ++ struct pt_dev *dev = (struct pt_dev *)d; ++ int skip = 0; ++ ++ if ( !gfx_passthru || dev->pci_dev->device_class != 0x0300 ) ++ return 0; ++ ++ switch( dev->pci_dev->vendor_id ) ++ { ++ case PCI_VENDOR_ID_ATI: ++ case PCI_VENDOR_ID_AMD: ++ skip = 1; ++ break; ++ default: ++ skip = 0; ++ break; ++ } ++ ++ return skip; ++} + /* + * register VGA resources for the domain with assigned gfx + */ +@@ -187,18 +459,33 @@ int register_vga_regions(struct pt_dev * + if ( !gfx_passthru || real_device->pci_dev->device_class != 0x0300 ) + return ret; + ++ /* legacy I/O ports 0x3B0 - 0x3BC */ + ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3B0, + 0x3B0, 0xC, DPCI_ADD_MAPPING); + +- ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C0, +- 0x3C0, 0x20, DPCI_ADD_MAPPING); +- ++ /* legacy video MMIO range 0xA0000 - 0xBFFFF */ + ret |= xc_domain_memory_mapping(xc_handle, domid, + 0xa0000 >> XC_PAGE_SHIFT, + 0xa0000 >> XC_PAGE_SHIFT, + 0x20, + DPCI_ADD_MAPPING); + ++ /* Other VGA regions are vendor specific */ ++ switch( real_device->pci_dev->vendor_id ) ++ { ++ case PCI_VENDOR_ID_INTEL: ++ ret = igd_register_vga_regions(real_device); ++ break; ++ case PCI_VENDOR_ID_ATI: ++ case PCI_VENDOR_ID_AMD: ++ ret = ati_register_vga_regions(real_device); ++ break; ++ default: ++ PT_LOG("gfx card wasn't supported by Xen passthru!\n"); ++ ret = 1; ++ break; ++ } ++ + if ( ret != 0 ) + PT_LOG("VGA region mapping failed\n"); + +@@ -216,26 +503,31 @@ int unregister_vga_regions(struct pt_dev + if ( !gfx_passthru || real_device->pci_dev->device_class != 0x0300 ) + return ret; + ++ /* legacy I/O ports 0x3B0 - 0x3BC */ + ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3B0, + 0x3B0, 0xC, DPCI_REMOVE_MAPPING); + +- ret |= xc_domain_ioport_mapping(xc_handle, domid, 0x3C0, +- 0x3C0, 0x20, DPCI_REMOVE_MAPPING); +- ++ /* legacy video MMIO range 0xA0000 - 0xBFFFF */ + ret |= xc_domain_memory_mapping(xc_handle, domid, + 0xa0000 >> XC_PAGE_SHIFT, + 0xa0000 >> XC_PAGE_SHIFT, + 20, + DPCI_REMOVE_MAPPING); + +- vendor_id = pt_pci_host_read(real_device->pci_dev, PCI_VENDOR_ID, 2); +- if ( (vendor_id == PCI_VENDOR_ID_INTEL) && igd_guest_opregion ) ++ /* Other VGA regions are vendor specific */ ++ switch( real_device->pci_dev->vendor_id ) + { +- ret |= xc_domain_memory_mapping(xc_handle, domid, +- igd_guest_opregion >> XC_PAGE_SHIFT, +- igd_guest_opregion >> XC_PAGE_SHIFT, +- 2, +- DPCI_REMOVE_MAPPING); ++ case PCI_VENDOR_ID_INTEL: ++ ret = igd_unregister_vga_regions(real_device); ++ break; ++ case PCI_VENDOR_ID_ATI: ++ case PCI_VENDOR_ID_AMD: ++ ret = ati_unregister_vga_regions(real_device); ++ break; ++ default: ++ PT_LOG("gfx card wasn't supported by Xen passthru!\n"); ++ ret = 1; ++ break; + } + + if ( ret != 0 ) diff --git a/kernels/xen/bios_workaround.patch b/kernels/xen/bios_workaround.patch new file mode 100644 index 000000000..12fc00184 --- /dev/null +++ b/kernels/xen/bios_workaround.patch @@ -0,0 +1,51 @@ +--- xen-4.3.1.orig/xen/drivers/passthrough/amd/iommu_acpi.c 2013-07-09 05:46:56.000000000 -0500 ++++ xen-4.3.1/xen/drivers/passthrough/amd/iommu_acpi.c 2013-07-18 02:31:38.767195258 -0500 +@@ -668,26 +668,26 @@ + */ + for ( apic = 0; apic < nr_ioapics; apic++ ) + { +- if ( IO_APIC_ID(apic) != special->handle ) ++ if ( ioapic_sbdf[IO_APIC_ID(apic)].bdf != ioapic_sbdf[special->handle].bdf ) + continue; + +- if ( special->handle >= ARRAY_SIZE(ioapic_sbdf) ) ++ if ( IO_APIC_ID(apic) >= ARRAY_SIZE(ioapic_sbdf) ) + { + printk(XENLOG_ERR "IVHD Error: IO-APIC %#x entry beyond bounds\n", +- special->handle); ++ IO_APIC_ID(apic)); + return 0; + } + +- if ( ioapic_sbdf[special->handle].pin_setup ) ++ if ( ioapic_sbdf[IO_APIC_ID(apic)].pin_setup ) + { +- if ( ioapic_sbdf[special->handle].bdf == bdf && +- ioapic_sbdf[special->handle].seg == seg ) ++ if ( ioapic_sbdf[IO_APIC_ID(apic)].bdf == bdf && ++ ioapic_sbdf[IO_APIC_ID(apic)].seg == seg ) + AMD_IOMMU_DEBUG("IVHD Warning: Duplicate IO-APIC %#x entries\n", +- special->handle); ++ IO_APIC_ID(apic)); + else + { + printk(XENLOG_ERR "IVHD Error: Conflicting IO-APIC %#x entries\n", +- special->handle); ++ IO_APIC_ID(apic)); + if ( amd_iommu_perdev_intremap ) + return 0; + } +@@ -695,10 +695,10 @@ + else + { + /* set device id of ioapic */ +- ioapic_sbdf[special->handle].bdf = bdf; +- ioapic_sbdf[special->handle].seg = seg; ++ ioapic_sbdf[IO_APIC_ID(apic)].bdf = bdf; ++ ioapic_sbdf[IO_APIC_ID(apic)].seg = seg; + +- ioapic_sbdf[special->handle].pin_setup = xzalloc_array( ++ ioapic_sbdf[IO_APIC_ID(apic)].pin_setup = xzalloc_array( + unsigned long, BITS_TO_LONGS(nr_ioapic_entries[apic])); + if ( nr_ioapic_entries[apic] && + !ioapic_sbdf[IO_APIC_ID(apic)].pin_setup ) diff --git a/kernels/xen/conf.d-xenconsoled b/kernels/xen/conf.d-xenconsoled new file mode 100644 index 000000000..9dee0960a --- /dev/null +++ b/kernels/xen/conf.d-xenconsoled @@ -0,0 +1,14 @@ +# No logging (default) +#XENCONSOLED_LOG=none +# Log guest console output only +#XENCONSOLED_LOG=guest +# Log hypervisor messages only +#XENCONSOLED_LOG=hv +# Log both guest console output and hypervisor messages +XENCONSOLED_LOG=all + +# Location to store guest & hypervisor logs +XENCONSOLED_LOG_DIR=/var/log/xen/console + +#XENCONSOLED_ARGS= + diff --git a/kernels/xen/conf.d-xenstored b/kernels/xen/conf.d-xenstored new file mode 100644 index 000000000..366abf9ad --- /dev/null +++ b/kernels/xen/conf.d-xenstored @@ -0,0 +1,2 @@ +#XENSTORED_ARGS=" -T /var/log/xen/xenstored-trace.log" +XENDOM0_NAME="Domain-0" diff --git a/kernels/xen/gcc-4.8-typedefs.patch b/kernels/xen/gcc-4.8-typedefs.patch deleted file mode 100644 index 6cda7cb80..000000000 --- a/kernels/xen/gcc-4.8-typedefs.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/Config.mk 2012-12-17 09:59:58.000000000 -0500 -+++ b/Config.mk 2013-04-12 17:32:44.673277553 -0400 -@@ -166,6 +166,9 @@ - $(call cc-option-add,HOSTCFLAGS,HOSTCC,-Wdeclaration-after-statement) - $(call cc-option-add,CFLAGS,CC,-Wdeclaration-after-statement) - $(call cc-option-add,CFLAGS,CC,-Wno-unused-but-set-variable) -+$(call cc-option-add,CFLAGS,CC,-Wno-unused-local-typedefs) -+$(call cc-option-add,CFLAGS,CC,-Wno-sizeof-pointer-memaccess) -+$(call cc-option-add,CFLAGS,CC,-Wformat) - - LDFLAGS += $(foreach i, $(EXTRA_LIB), -L$(i)) - CFLAGS += $(foreach i, $(EXTRA_INCLUDES), -I$(i)) diff --git a/kernels/xen/gdbsx-glibc-2.17.patch b/kernels/xen/gdbsx-glibc-2.17.patch deleted file mode 100644 index 310010180..000000000 --- a/kernels/xen/gdbsx-glibc-2.17.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/tools/debugger/gdbsx/xg/xg_main.c -+++ b/tools/debugger/gdbsx/xg/xg_main.c -@@ -34,6 +34,7 @@ - * XGTRC(): generic trace utility - */ - -+#include - #include - #include - #include diff --git a/kernels/xen/grub.conf b/kernels/xen/grub.conf new file mode 100644 index 000000000..9b13008d9 --- /dev/null +++ b/kernels/xen/grub.conf @@ -0,0 +1,2 @@ +#XEN_HYPERVISOR_CMDLINE="xsave=1" +#XEN_LINUX_CMDLINE="console=tty0" diff --git a/kernels/xen/qemu-makefile.patch b/kernels/xen/qemu-makefile.patch deleted file mode 100644 index d66cf043f..000000000 --- a/kernels/xen/qemu-makefile.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/tools/qemu-xen/Makefile.target 2013-04-05 23:39:54.000000000 +0000 -+++ b/tools/qemu-xen/Makefile.target 2013-04-25 13:54:59.360000000 +0000 -@@ -206,6 +206,7 @@ - obj-$(CONFIG_NO_KVM) += kvm-stub.o - obj-y += memory.o - LIBS+=-lz -+LIBS+=-lrt - - QEMU_CFLAGS += $(VNC_TLS_CFLAGS) - QEMU_CFLAGS += $(VNC_SASL_CFLAGS) diff --git a/kernels/xen/texi2html.patch b/kernels/xen/texi2html.patch deleted file mode 100644 index 8f22773c9..000000000 --- a/kernels/xen/texi2html.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/tools/Makefile 2012-09-17 22:25:54.683349679 -0500 -+++ b/tools/Makefile 2012-09-17 22:49:08.923331802 -0500 -@@ -164,6 +164,7 @@ - $(QEMU_ROOT)/xen-setup \ - --extra-cflags="$(EXTRA_CFLAGS_QEMU_TRADITIONAL)" \ - $(IOEMU_CONFIGURE_CROSS); \ -+ sed -i 's/number[ ]/number-sections /' Makefile; \ - $(MAKE) install - - subdir-clean-qemu-xen-traditional-dir: diff --git a/kernels/xen/timer-add-lrt-lm.patch b/kernels/xen/timer-add-lrt-lm.patch deleted file mode 100644 index 4a170f9fe..000000000 --- a/kernels/xen/timer-add-lrt-lm.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/tools/qemu-xen-traditional/Makefile.target -+++ b/tools/qemu-xen-traditional/Makefile.target -@@ -520,7 +520,7 @@ - OBJS+=block-raw-posix.o - endif - --LIBS+=-lz -+LIBS+=-lz -lm -lrt - ifdef CONFIG_ALSA - LIBS += -lasound - endif diff --git a/kernels/xen/tmpfiles.d-xen.conf b/kernels/xen/tmpfiles.d-xen.conf index 504101772..a55258b0f 100644 --- a/kernels/xen/tmpfiles.d-xen.conf +++ b/kernels/xen/tmpfiles.d-xen.conf @@ -1 +1,2 @@ d /run/xen 0755 root root - +d /run/xenstored 0755 root root - diff --git a/kernels/xen/xen.install b/kernels/xen/xen.install index 6a109ac63..f1a34d522 100644 --- a/kernels/xen/xen.install +++ b/kernels/xen/xen.install @@ -9,15 +9,48 @@ at the very least you must: 2. Issue the following commands to allow you to create and start VMs: systemctl enable xenstored.service systemctl enable xenconsoled.service +3. If you want some domains to automatically start up/shutdown, run the following: systemctl enable xendomains.service + For more information refer to the Wiki: https://wiki.parabolagnulinux.org/index.php/Xen + __EOF__ } -post_upgrade() { +upgrade_msg() { + cat << __EOF__ + +Note: If you are upgrading from one of the previous 4.2 xen builds, and are having issues + with graphics card passthrough, the default device model used has changed and the + newer model can sometimes have issues. To resolve, add (or change ) the following + line into your domain config file: + device_model_version = "qemu-xen-traditional" + + Also remember to rebuild your grub configuration if upgrading from a non-xen 4.3.1 + install. +__EOF__ + +} + +post_install() { install_msg + upgrade_msg +} + +post_upgrade() { + upgrade_msg +} + +pre_remove() { + systemctl stop xendomains.service + systemctl stop xenconsoled.service + systemctl stop xenstored.service + + systemctl disable xendomains.service + systemctl disable xenconsoled.service + systemctl disable xenstored.service } post_remove() { diff --git a/kernels/xen/xenconsoled.service b/kernels/xen/xenconsoled.service index edcc8e69f..1e06b4537 100644 --- a/kernels/xen/xenconsoled.service +++ b/kernels/xen/xenconsoled.service @@ -10,9 +10,9 @@ Environment=XENCONSOLED_ARGS= Environment=XENCONSOLED_LOG=none Environment=XENCONSOLED_LOG_DIR=/var/log/xen/console EnvironmentFile=-/etc/conf.d/xenconsoled -PIDFile=/var/run/xenconsoled.pid +PIDFile=/run/xenconsoled.pid ExecStartPre=/usr/bin/grep -q control_d /proc/xen/capabilities -ExecStart=/usr/sbin/xenconsoled --log=${XENCONSOLED_LOG} --log-dir=${XENCONSOLED_LOG_DIR} $XENCONSOLED_ARGS +ExecStart=/usr/bin/xenconsoled --pid-file /run/xenconsoled.pid --log=${XENCONSOLED_LOG} --log-dir=${XENCONSOLED_LOG_DIR} $XENCONSOLED_ARGS [Install] WantedBy=multi-user.target diff --git a/kernels/xen/xendomU@.service b/kernels/xen/xendomU@.service index 57d6e520d..b3dd6c7d7 100644 --- a/kernels/xen/xendomU@.service +++ b/kernels/xen/xendomU@.service @@ -5,8 +5,8 @@ Requires=xenstored.service [Service] Type=oneshot RemainAfterExit=yes -ExecStart=/usr/sbin/xl create /etc/xen/conf/%i.cfg -ExecStop=/usr/sbin/xl shutdown %i +ExecStart=/usr/bin/xl create /etc/xen/conf/%i.cfg +ExecStop=/usr/bin/xl shutdown %i [Install] WantedBy=multi-user.target diff --git a/kernels/xen/xendomains.patch b/kernels/xen/xendomains.patch new file mode 100644 index 000000000..16f62b65a --- /dev/null +++ b/kernels/xen/xendomains.patch @@ -0,0 +1,108 @@ +--- xen-4.3.1.orig/tools/hotplug/Linux/init.d/xendomains 2013-07-19 14:52:52.159013757 -0500 ++++ xen-4.3.1/tools/hotplug/Linux/init.d/xendomains 2013-07-19 14:56:00.079145322 -0500 +@@ -51,17 +51,13 @@ + fi + + # See docs/misc/distro_mapping.txt +-if [ -d /var/lock/subsys ]; then +- LOCKFILE=/var/lock/subsys/xendomains ++if [ -d /run/lock/subsys ]; then ++ LOCKFILE=/run/lock/subsys/xendomains + else +- LOCKFILE=/var/lock/xendomains ++ LOCKFILE=/run/lock/xendomains + fi + +-if [ -d /etc/sysconfig ]; then +- XENDOM_CONFIG=/etc/sysconfig/xendomains +-else +- XENDOM_CONFIG=/etc/default/xendomains +-fi ++XENDOM_CONFIG=/etc/conf.d/xendomains + + test -r $XENDOM_CONFIG || { echo "$XENDOM_CONFIG not existing"; + if [ "$1" = "stop" ]; then exit 0; +@@ -185,8 +181,13 @@ + # read name from xen config file + rdname() + { +- NM=$($CMD create --quiet --dryrun --defconfig "$1" | +- sed -n 's/^.*(name \(.*\))$/\1/p') ++ if [ "$CMD" == "xm" ]; then ++ NM=$($CMD create --quiet --dryrun --defconfig "$1" | ++ sed -n 's/^.*(name \(.*\))$/\1/p') ++ else ++ NM=$($CMD create --quiet --dryrun --defconfig "$1" | ++ perl -pe 's|^.*"name":"(.*?)".*$|$1|') ++ fi + } + + rdnames() +@@ -229,15 +230,15 @@ + rdname $1 + RC=1 + name=;id= +- while read LN; do +- parseln "$LN" || continue ++ while read id; do + if test $id = 0; then continue; fi ++ name=`xenstore-read /local/domain/$id/name` + case $name in + ($NM) + RC=0 + ;; + esac +- done < <($CMD list -l | grep "$LIST_GREP") ++ done < <(xenstore-list /local/domain) + return $RC + } + +@@ -312,6 +313,8 @@ + + all_zombies() + { ++ return 0 ++ + name=;id= + while read LN; do + parseln "$LN" || continue +@@ -363,9 +366,9 @@ + fi + echo -n "Shutting down Xen domains:" + name=;id= +- while read LN; do +- parseln "$LN" || continue ++ while read id; do + if test $id = 0; then continue; fi ++ name=`xenstore-read /local/domain/$id/name` + echo -n " $name" + if test "$XENDOMAINS_AUTO_ONLY" = "true"; then + eval " +@@ -450,7 +453,7 @@ + fi + kill $WDOG_PID >/dev/null 2>&1 + fi +- done < <($CMD list -l | grep "$LIST_GREP") ++ done < <(xenstore-list /local/domain) + + # NB. this shuts down ALL Xen domains (politely), not just the ones in + # AUTODIR/* +@@ -479,15 +482,15 @@ + check_domain_up() + { + name=;id= +- while read LN; do +- parseln "$LN" || continue ++ while read id; do + if test $id = 0; then continue; fi ++ name=`xenstore-read /local/domain/$id/name` + case $name in + ($1) + return 0 + ;; + esac +- done < <($CMD list -l | grep "$LIST_GREP") ++ done < <(xenstore-list /local/domain) + return 1 + } + diff --git a/kernels/xen/xenstored.service b/kernels/xen/xenstored.service index c898fd24b..46e0b3226 100644 --- a/kernels/xen/xenstored.service +++ b/kernels/xen/xenstored.service @@ -9,11 +9,12 @@ ConditionPathExists=/proc/xen [Service] Type=forking Environment=XENSTORED_ARGS= +Environment=XENDOM0_NAME=Domain-0 EnvironmentFile=-/etc/conf.d/xenstored -PIDFile=/var/run/xenstored.pid +PIDFile=/run/xenstored.pid ExecStartPre=/usr/bin/grep -q control_d /proc/xen/capabilities -ExecStart=/usr/sbin/xenstored --pid-file /var/run/xenstored.pid $XENSTORED_ARGS -ExecStartPost=/usr/bin/xenstore-write "/local/domain/0/name" "Domain-0" +ExecStart=/usr/bin/xenstored --pid-file /run/xenstored.pid $XENSTORED_ARGS +ExecStartPost=/usr/bin/xenstore-write "/local/domain/0/name" "$XENDOM0_NAME" [Install] WantedBy=multi-user.target diff --git a/kernels/xen/xsa73-4.3-unstable.patch b/kernels/xen/xsa73-4.3-unstable.patch new file mode 100644 index 000000000..aa36b40a1 --- /dev/null +++ b/kernels/xen/xsa73-4.3-unstable.patch @@ -0,0 +1,105 @@ +From 068bfa76bbd52430e65853375e1d5db99d193e2f Mon Sep 17 00:00:00 2001 +From: Andrew Cooper +Date: Thu, 31 Oct 2013 20:49:00 +0000 +Subject: [PATCH] gnttab: correct locking order reversal + +Coverity ID 1087189 + +Correct a lock order reversal between a domains page allocation and grant +table locks. + +This is CVE-2013-4494 / XSA-73. + +Signed-off-by: Andrew Cooper + +Consolidate error handling. + +Signed-off-by: Jan Beulich +Reviewed-by: Keir Fraser +Tested-by: Matthew Daley +--- + xen/common/grant_table.c | 52 +++++++++++++++++++++++++++++++++++++++------- + 1 file changed, 44 insertions(+), 8 deletions(-) + +diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c +index f42bc7a..48df928 100644 +--- a/xen/common/grant_table.c ++++ b/xen/common/grant_table.c +@@ -1518,6 +1518,8 @@ gnttab_transfer( + + for ( i = 0; i < count; i++ ) + { ++ bool_t okay; ++ + if (i && hypercall_preempt_check()) + return i; + +@@ -1626,16 +1628,18 @@ gnttab_transfer( + * pages when it is dying. + */ + if ( unlikely(e->is_dying) || +- unlikely(e->tot_pages >= e->max_pages) || +- unlikely(!gnttab_prepare_for_transfer(e, d, gop.ref)) ) ++ unlikely(e->tot_pages >= e->max_pages) ) + { +- if ( !e->is_dying ) +- gdprintk(XENLOG_INFO, "gnttab_transfer: " +- "Transferee has no reservation " +- "headroom (%d,%d) or provided a bad grant ref (%08x) " +- "or is dying (%d)\n", +- e->tot_pages, e->max_pages, gop.ref, e->is_dying); + spin_unlock(&e->page_alloc_lock); ++ ++ if ( e->is_dying ) ++ gdprintk(XENLOG_INFO, "gnttab_transfer: " ++ "Transferee (d%d) is dying\n", e->domain_id); ++ else ++ gdprintk(XENLOG_INFO, "gnttab_transfer: " ++ "Transferee (d%d) has no headroom (tot %u, max %u)\n", ++ e->domain_id, e->tot_pages, e->max_pages); ++ + rcu_unlock_domain(e); + put_gfn(d, gop.mfn); + page->count_info &= ~(PGC_count_mask|PGC_allocated); +@@ -1647,6 +1651,38 @@ gnttab_transfer( + /* Okay, add the page to 'e'. */ + if ( unlikely(domain_adjust_tot_pages(e, 1) == 1) ) + get_knownalive_domain(e); ++ ++ /* ++ * We must drop the lock to avoid a possible deadlock in ++ * gnttab_prepare_for_transfer. We have reserved a page in e so can ++ * safely drop the lock and re-aquire it later to add page to the ++ * pagelist. ++ */ ++ spin_unlock(&e->page_alloc_lock); ++ okay = gnttab_prepare_for_transfer(e, d, gop.ref); ++ spin_lock(&e->page_alloc_lock); ++ ++ if ( unlikely(!okay) || unlikely(e->is_dying) ) ++ { ++ bool_t drop_dom_ref = (domain_adjust_tot_pages(e, -1) == 0); ++ ++ spin_unlock(&e->page_alloc_lock); ++ ++ if ( okay /* i.e. e->is_dying due to the surrounding if() */ ) ++ gdprintk(XENLOG_INFO, "gnttab_transfer: " ++ "Transferee (d%d) is now dying\n", e->domain_id); ++ ++ if ( drop_dom_ref ) ++ put_domain(e); ++ rcu_unlock_domain(e); ++ ++ put_gfn(d, gop.mfn); ++ page->count_info &= ~(PGC_count_mask|PGC_allocated); ++ free_domheap_page(page); ++ gop.status = GNTST_general_error; ++ goto copyback; ++ } ++ + page_list_add_tail(page, &e->page_list); + page_set_owner(page, e); + +-- +1.7.10.4 + diff --git a/kernels/xen/xsa75-4.3-unstable.patch b/kernels/xen/xsa75-4.3-unstable.patch new file mode 100644 index 000000000..6c0c5bca1 --- /dev/null +++ b/kernels/xen/xsa75-4.3-unstable.patch @@ -0,0 +1,55 @@ +nested VMX: VMLANUCH/VMRESUME emulation must check permission first thing + +Otherwise uninitialized data may be used, leading to crashes. + +This is XSA-75. + +Reported-and-tested-by: Jeff Zimmerman +Signed-off-by: Jan Beulich +Reviewed-and-tested-by: Andrew Cooper + +--- a/xen/arch/x86/hvm/vmx/vvmx.c ++++ b/xen/arch/x86/hvm/vmx/vvmx.c +@@ -1508,15 +1508,10 @@ static void clear_vvmcs_launched(struct + } + } + +-int nvmx_vmresume(struct vcpu *v, struct cpu_user_regs *regs) ++static int nvmx_vmresume(struct vcpu *v, struct cpu_user_regs *regs) + { + struct nestedvmx *nvmx = &vcpu_2_nvmx(v); + struct nestedvcpu *nvcpu = &vcpu_nestedhvm(v); +- int rc; +- +- rc = vmx_inst_check_privilege(regs, 0); +- if ( rc != X86EMUL_OKAY ) +- return rc; + + /* check VMCS is valid and IO BITMAP is set */ + if ( (nvcpu->nv_vvmcxaddr != VMCX_EADDR) && +@@ -1535,6 +1530,10 @@ int nvmx_handle_vmresume(struct cpu_user + struct vcpu *v = current; + struct nestedvcpu *nvcpu = &vcpu_nestedhvm(v); + struct nestedvmx *nvmx = &vcpu_2_nvmx(v); ++ int rc = vmx_inst_check_privilege(regs, 0); ++ ++ if ( rc != X86EMUL_OKAY ) ++ return rc; + + if ( vcpu_nestedhvm(v).nv_vvmcxaddr == VMCX_EADDR ) + { +@@ -1554,10 +1553,13 @@ int nvmx_handle_vmresume(struct cpu_user + int nvmx_handle_vmlaunch(struct cpu_user_regs *regs) + { + bool_t launched; +- int rc; + struct vcpu *v = current; + struct nestedvcpu *nvcpu = &vcpu_nestedhvm(v); + struct nestedvmx *nvmx = &vcpu_2_nvmx(v); ++ int rc = vmx_inst_check_privilege(regs, 0); ++ ++ if ( rc != X86EMUL_OKAY ) ++ return rc; + + if ( vcpu_nestedhvm(v).nv_vvmcxaddr == VMCX_EADDR ) + { diff --git a/kernels/xen/xsa78.patch b/kernels/xen/xsa78.patch new file mode 100644 index 000000000..180506cdd --- /dev/null +++ b/kernels/xen/xsa78.patch @@ -0,0 +1,23 @@ +VT-d: fix TLB flushing in dma_pte_clear_one() + +The third parameter of __intel_iommu_iotlb_flush() is to indicate +whether the to be flushed entry was a present one. A few lines before, +we bailed if !dma_pte_present(*pte), so there's no need to check the +flag here again - we can simply always pass TRUE here. + +This is CVE-2013-6375 / XSA-78. + +Suggested-by: Cheng Yueqiang +Signed-off-by: Jan Beulich + +--- a/xen/drivers/passthrough/vtd/iommu.c ++++ b/xen/drivers/passthrough/vtd/iommu.c +@@ -646,7 +646,7 @@ static void dma_pte_clear_one(struct dom + iommu_flush_cache_entry(pte, sizeof(struct dma_pte)); + + if ( !this_cpu(iommu_dont_flush_iotlb) ) +- __intel_iommu_iotlb_flush(domain, addr >> PAGE_SHIFT_4K , 0, 1); ++ __intel_iommu_iotlb_flush(domain, addr >> PAGE_SHIFT_4K, 1, 1); + + unmap_vtd_domain_page(page); + diff --git a/libre/gst-plugins-bad-libre/PKGBUILD b/libre/gst-plugins-bad-libre/PKGBUILD index 2b10f2b54..76bca922a 100644 --- a/libre/gst-plugins-bad-libre/PKGBUILD +++ b/libre/gst-plugins-bad-libre/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 202893 2013-12-28 22:45:58Z bpiotrowski $ +# $Id: PKGBUILD 203283 2014-01-07 12:58:21Z heftig $ # Maintainer: Jan de Groot # Maintainer (Parabola): Márcio Silva _pkgname=gst-plugins-bad pkgname=$_pkgname-libre -pkgver=1.2.1 -pkgrel=2 +pkgver=1.2.2 +pkgrel=1 pkgdesc="GStreamer Multimedia Framework Bad Plugins, without nonfree faac support" arch=('i686' 'x86_64' 'mips64el') license=('LGPL') @@ -18,7 +18,7 @@ conflicts=$_pkgname replaces=$_pkgname options=(!emptydirs) source=(${url}/src/$_pkgname/$_pkgname-$pkgver.tar.xz) -sha256sums=('f33e7c81fcb742fe50b73ad87ef8a4baa7d6b59c5002a10bf63c8dee22404929') +sha256sums=('63e78db11b482d0529a0bde01e2ac23fd32c7cb99a5508b53ee4ca1051871b2c') build() { cd $_pkgname-$pkgver diff --git a/pcr/youtube-dl-current/PKGBUILD b/pcr/youtube-dl-current/PKGBUILD index 7beeb5918..bc1c2f19b 100644 --- a/pcr/youtube-dl-current/PKGBUILD +++ b/pcr/youtube-dl-current/PKGBUILD @@ -5,7 +5,7 @@ pkgname=youtube-dl-current _pkgname=youtube-dl provides=(youtube-dl) -pkgver=2014.01.05.6 +pkgver=2014.01.07 pkgrel=1 pkgdesc="A small command-line program to download videos from YouTube.com and a few more sites" arch=('any') @@ -28,5 +28,5 @@ package() { "${pkgdir}/usr/share/bash-completion/completions/youtube-dl" install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE" } -md5sums=('f3c0d49ace716b01079f96abd962c763' +md5sums=('7ab1afd30e2e952917bace66d379d880' 'SKIP') -- cgit v1.2.3-54-g00ecf From ebfbe6aa4a09806147654dd9e8d512cd68921e0d Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Thu, 9 Jan 2014 03:58:56 +0000 Subject: Thu Jan 9 03:54:24 UTC 2014 --- community/cantata/PKGBUILD | 13 +- community/cppcheck/PKGBUILD | 7 +- community/docker/PKGBUILD | 4 +- community/dunst/PKGBUILD | 19 +- community/elasticsearch/PKGBUILD | 10 +- community/gdal/PKGBUILD | 12 +- community/julius/PKGBUILD | 56 + community/lxappearance/PKGBUILD | 6 +- community/lz4/01-fix-include.patch | 11 - community/lz4/PKGBUILD | 16 +- community/mixxx/PKGBUILD | 8 +- community/noise/PKGBUILD | 4 +- community/openntpd/PKGBUILD | 7 +- community/prosody/PKGBUILD | 16 +- community/python-pillow/PKGBUILD | 6 +- community/python-psycopg2/PKGBUILD | 6 +- community/python-sqlalchemy/PKGBUILD | 8 +- community/python2-greenlet/PKGBUILD | 10 +- community/python2-imaging/PKGBUILD | 54 - community/qcad/PKGBUILD | 6 +- community/rbutil/PKGBUILD | 16 +- community/rbutil/rbutil.desktop | 11 - community/synce-core/PKGBUILD | 6 +- community/umurmur/PKGBUILD | 6 +- core/glibc/PKGBUILD | 14 +- core/glibc/glibc-2.18-xattr-compat-hack.patch | 19 + core/libcap/PKGBUILD | 17 +- core/libcap/libcap-2.23-header.patch | 350 ---- extra/amule/PKGBUILD | 6 +- extra/calligra/PKGBUILD | 8 +- extra/clamav/PKGBUILD | 36 +- extra/clamav/clamd.conf | 6 + extra/clamav/clamd.service | 10 + extra/clamav/config.patch | 30 - extra/clamav/freshclam.conf | 3 + extra/clamav/freshclamd.service | 10 + extra/clamav/service | 10 - extra/clamav/service.fresh | 10 - extra/enlightenment16/PKGBUILD | 6 +- extra/graphicsmagick/PKGBUILD | 7 +- extra/libdrm/PKGBUILD | 6 +- extra/librsvg/PKGBUILD | 8 +- extra/nasm/PKGBUILD | 6 +- extra/opengtl/PKGBUILD | 47 - extra/opengtl/opengtl-0.9.18-llvm-3.3.patch | 732 -------- extra/opengtl/opengtl-0.9.18-memcpy.patch | 11 - extra/seahorse/PKGBUILD | 6 +- libre-testing/ath9k-htc-firmware-git/LICENSE | 33 - libre-testing/ath9k-htc-firmware-git/PKGBUILD | 81 - libre-testing/b43-tools-git/PKGBUILD | 53 - libre-testing/icecat/PKGBUILD | 180 -- libre-testing/icecat/bug-xulrunner-copy-stub.patch | 11 - libre-testing/icecat/firefox-install-dir.patch | 30 - libre-testing/icecat/firefox.install | 13 - libre-testing/icecat/icecat.desktop | 116 -- libre-testing/icecat/libre.patch | 108 -- libre-testing/icecat/mozconfig | 51 - libre-testing/icecat/mozconfig.pgo | 2 - libre-testing/icecat/shared-libs.patch | 12 - libre-testing/icecat/vendor.js | 21 - libre-testing/icewm-themes-libre/PKGBUILD | 47 - libre-testing/libretools/PKGBUILD | 91 + libre-testing/libretools/libretools.install | 64 + libre-testing/openfwwf/PKGBUILD | 21 - .../systemd/0001-Reinstate-TIMEOUT-handling.patch | 123 -- libre-testing/systemd/PKGBUILD | 152 -- libre-testing/systemd/initcpio-hook-udev | 20 - libre-testing/systemd/initcpio-install-timestamp | 14 - libre-testing/systemd/initcpio-install-udev | 28 - libre-testing/systemd/locale.sh | 59 - libre-testing/systemd/os-release | 7 - libre-testing/systemd/rePKGBUILD | 52 - libre-testing/systemd/systemd-tools.install | 29 - libre-testing/systemd/systemd.install | 51 - libre-testing/unace-libre/PKGBUILD | 38 - libre-testing/unar/PKGBUILD | 96 -- libre-testing/unarchiver/PKGBUILD | 93 - libre-testing/xadmaster/PKGBUILD | 56 - libre/aif-libre/PKGBUILD | 38 - libre/audacity-libre/PKGBUILD | 50 - libre/audacity-libre/audacity-libre.install | 13 - libre/audacity-libre/remove-unfree-nyquist.patch | 24 - libre/blender-libre/PKGBUILD | 2 +- libre/cdfs-libre/PKGBUILD | 47 - libre/cdfs-libre/cdfs-3.0.patch | 274 --- libre/cdfs-libre/cdfs-3.2.patch | 12 - libre/cdfs-libre/cdfs-3.4.patch | 12 - libre/cdfs-libre/cdfs-3.8.patch | 42 - libre/cdfs-libre/cdfs.install | 14 - libre/cgminer-libre/PKGBUILD | 101 -- libre/cgminer-libre/cgminer.conf.d | 11 - libre/cgminer-libre/cgminer.service | 8 - libre/claws-mail-libre/PKGBUILD | 76 - libre/claws-mail-libre/claws-mail.install | 16 - libre/clementine-libre/PKGBUILD | 16 +- libre/distcc-nozeroconf/PKGBUILD | 59 - libre/distcc-nozeroconf/distccd.conf.d | 7 - libre/distcc-nozeroconf/distccd.service | 12 - libre/foomatic-filters-libre/PKGBUILD | 38 - libre/gsoap-legacy/LICENSE | 163 -- libre/gsoap-legacy/PKGBUILD | 36 - libre/icecat-adblock-plus/PKGBUILD | 36 - libre/iceweasel-adblock-plus/PKGBUILD | 36 - ...emove-run-nologin-before-leaving-rc.multi.patch | 29 - libre/initscripts/PKGBUILD | 37 - libre/initscripts/initscripts.install | 26 - libre/initscripts/split-hwclock-calls.diff | 21 - libre/initscripts/wireless.conf.d | 12 - libre/lesspipe-libre/PKGBUILD | 42 - libre/lesspipe-libre/lesspipe.sh | 2 - libre/lesspipe-libre/rePKGBUILD | 26 - libre/libretools/PKGBUILD | 12 +- libre/libretools/libretools.install | 56 +- libre/libui-sh/PKGBUILD | 25 - libre/newton-dynamics-libre/PKGBUILD | 50 - libre/newton-dynamics-libre/assert-fix.patch | 13 - libre/pngcrush/PKGBUILD | 27 - libre/ruby-hpricot/PKGBUILD | 25 - libre/sdl-libre/PKGBUILD | 32 +- libre/seamonkey-libre/PKGBUILD | 62 - libre/seamonkey-libre/clrf.patch | 265 --- libre/seamonkey-libre/gcc47.patch | 39 - libre/seamonkey-libre/gnuzilla-addons.patch | 28 - libre/seamonkey-libre/libvpx.patch | 12 - libre/seamonkey-libre/mozconfig | 36 - libre/seamonkey-libre/python27.patch | 11 - libre/seamonkey-libre/seamonkey-2.0-lang.patch | 11 - libre/seamonkey-libre/seamonkey.desktop | 11 - libre/seamonkey-libre/seamonkey.install | 12 - libre/ttf-thai-libre/PKGBUILD | 27 - libre/ttf-thai-libre/ttf.install | 15 - libre/ununrar/PKGBUILD | 22 - libre/virtualbox-libre-modules-lts/PKGBUILD | 74 - libre/virtualbox-libre-modules-lts/build.sh | 25 - .../virtualbox-libre-guest-modules-lts.install | 21 - .../virtualbox-libre-host-modules-lts.install | 23 - libre/virtualbox-libre-modules/PKGBUILD | 76 - libre/virtualbox-libre-modules/build.sh | 25 - .../virtualbox-libre-guest-modules.install | 21 - .../virtualbox-libre-host-modules.install | 23 - libre/virtualbox-libre/001-vboxdrv-reference.patch | 57 - .../002-change_default_driver_dir.patch | 18 - libre/virtualbox-libre/003-gcc-48.patch | 39 - libre/virtualbox-libre/003-linux-3.8.patch | 15 - libre/virtualbox-libre/004-system-xorg.patch | 245 --- libre/virtualbox-libre/10-vboxdrv.rules | 5 - libre/virtualbox-libre/60-vboxguest.rules | 2 - libre/virtualbox-libre/LocalConfig.kmk | 20 - libre/virtualbox-libre/PKGBUILD | 339 ---- libre/virtualbox-libre/free-distros.patch | 1803 -------------------- libre/virtualbox-libre/libre.patch | 1085 ------------ libre/virtualbox-libre/os_blag.png | Bin 1411 -> 0 bytes libre/virtualbox-libre/os_blag_64.png | Bin 1549 -> 0 bytes libre/virtualbox-libre/os_dragora.png | Bin 2375 -> 0 bytes libre/virtualbox-libre/os_dragora_64.png | Bin 2430 -> 0 bytes libre/virtualbox-libre/os_dynebolic.png | Bin 1621 -> 0 bytes libre/virtualbox-libre/os_gnewsense.png | Bin 2315 -> 0 bytes libre/virtualbox-libre/os_gnewsense_64.png | Bin 2470 -> 0 bytes libre/virtualbox-libre/os_gnu.png | Bin 2728 -> 0 bytes libre/virtualbox-libre/os_gnu_64.png | Bin 2705 -> 0 bytes libre/virtualbox-libre/os_gnuhurd.png | Bin 2728 -> 0 bytes libre/virtualbox-libre/os_gnulinux.png | Bin 2728 -> 0 bytes libre/virtualbox-libre/os_gnulinux_64.png | Bin 2705 -> 0 bytes libre/virtualbox-libre/os_musix.png | Bin 2451 -> 0 bytes libre/virtualbox-libre/os_musix_64.png | Bin 2581 -> 0 bytes libre/virtualbox-libre/os_os64base.png | Bin 1300 -> 0 bytes libre/virtualbox-libre/os_os64base.xcf | Bin 2844 -> 0 bytes libre/virtualbox-libre/os_osbase.png | Bin 1042 -> 0 bytes libre/virtualbox-libre/os_osbase.xcf | Bin 2748 -> 0 bytes libre/virtualbox-libre/os_parabola.png | Bin 1931 -> 0 bytes libre/virtualbox-libre/os_parabola_64.png | Bin 2096 -> 0 bytes libre/virtualbox-libre/os_trisquel.png | Bin 2451 -> 0 bytes libre/virtualbox-libre/os_trisquel_64.png | Bin 2592 -> 0 bytes libre/virtualbox-libre/os_ututo.png | Bin 2615 -> 0 bytes libre/virtualbox-libre/os_ututo_64.png | Bin 2751 -> 0 bytes libre/virtualbox-libre/os_venenux.png | Bin 1653 -> 0 bytes libre/virtualbox-libre/vboxservice.service | 9 - libre/virtualbox-libre/vboxweb.service | 11 - .../virtualbox-libre-guest-dkms.install | 30 - .../virtualbox-libre-guest-utils.install | 31 - .../virtualbox-libre-host-dkms.install | 30 - libre/virtualbox-libre/virtualbox-libre.install | 39 - ...Make-the-Reset-Firefox-feature-more-gener.patch | 281 --- libre/xulrunner-libre/PKGBUILD | 98 -- libre/xulrunner-libre/mozconfig | 32 - libre/xulrunner-libre/mozilla-pkgconfig.patch | 40 - libre/xulrunner-libre/shared-libs.patch | 12 - nonprism/empathy-nonprism/PKGBUILD | 40 - nonprism/empathy-nonprism/empathy.install | 16 - pcr/youtube-dl-current/PKGBUILD | 4 +- 190 files changed, 460 insertions(+), 9686 deletions(-) create mode 100644 community/julius/PKGBUILD delete mode 100644 community/lz4/01-fix-include.patch delete mode 100644 community/python2-imaging/PKGBUILD delete mode 100755 community/rbutil/rbutil.desktop create mode 100644 core/glibc/glibc-2.18-xattr-compat-hack.patch delete mode 100644 core/libcap/libcap-2.23-header.patch create mode 100644 extra/clamav/clamd.conf create mode 100644 extra/clamav/clamd.service delete mode 100644 extra/clamav/config.patch create mode 100644 extra/clamav/freshclam.conf create mode 100644 extra/clamav/freshclamd.service delete mode 100644 extra/clamav/service delete mode 100644 extra/clamav/service.fresh delete mode 100644 extra/opengtl/PKGBUILD delete mode 100644 extra/opengtl/opengtl-0.9.18-llvm-3.3.patch delete mode 100644 extra/opengtl/opengtl-0.9.18-memcpy.patch delete mode 100644 libre-testing/ath9k-htc-firmware-git/LICENSE delete mode 100644 libre-testing/ath9k-htc-firmware-git/PKGBUILD delete mode 100644 libre-testing/b43-tools-git/PKGBUILD delete mode 100644 libre-testing/icecat/PKGBUILD delete mode 100644 libre-testing/icecat/bug-xulrunner-copy-stub.patch delete mode 100644 libre-testing/icecat/firefox-install-dir.patch delete mode 100644 libre-testing/icecat/firefox.install delete mode 100644 libre-testing/icecat/icecat.desktop delete mode 100644 libre-testing/icecat/libre.patch delete mode 100644 libre-testing/icecat/mozconfig delete mode 100644 libre-testing/icecat/mozconfig.pgo delete mode 100644 libre-testing/icecat/shared-libs.patch delete mode 100644 libre-testing/icecat/vendor.js delete mode 100644 libre-testing/icewm-themes-libre/PKGBUILD create mode 100644 libre-testing/libretools/PKGBUILD create mode 100644 libre-testing/libretools/libretools.install delete mode 100644 libre-testing/openfwwf/PKGBUILD delete mode 100644 libre-testing/systemd/0001-Reinstate-TIMEOUT-handling.patch delete mode 100644 libre-testing/systemd/PKGBUILD delete mode 100644 libre-testing/systemd/initcpio-hook-udev delete mode 100644 libre-testing/systemd/initcpio-install-timestamp delete mode 100644 libre-testing/systemd/initcpio-install-udev delete mode 100644 libre-testing/systemd/locale.sh delete mode 100644 libre-testing/systemd/os-release delete mode 100644 libre-testing/systemd/rePKGBUILD delete mode 100644 libre-testing/systemd/systemd-tools.install delete mode 100644 libre-testing/systemd/systemd.install delete mode 100644 libre-testing/unace-libre/PKGBUILD delete mode 100644 libre-testing/unar/PKGBUILD delete mode 100644 libre-testing/unarchiver/PKGBUILD delete mode 100644 libre-testing/xadmaster/PKGBUILD delete mode 100644 libre/aif-libre/PKGBUILD delete mode 100644 libre/audacity-libre/PKGBUILD delete mode 100644 libre/audacity-libre/audacity-libre.install delete mode 100644 libre/audacity-libre/remove-unfree-nyquist.patch delete mode 100644 libre/cdfs-libre/PKGBUILD delete mode 100644 libre/cdfs-libre/cdfs-3.0.patch delete mode 100644 libre/cdfs-libre/cdfs-3.2.patch delete mode 100644 libre/cdfs-libre/cdfs-3.4.patch delete mode 100644 libre/cdfs-libre/cdfs-3.8.patch delete mode 100644 libre/cdfs-libre/cdfs.install delete mode 100644 libre/cgminer-libre/PKGBUILD delete mode 100644 libre/cgminer-libre/cgminer.conf.d delete mode 100644 libre/cgminer-libre/cgminer.service delete mode 100644 libre/claws-mail-libre/PKGBUILD delete mode 100644 libre/claws-mail-libre/claws-mail.install delete mode 100644 libre/distcc-nozeroconf/PKGBUILD delete mode 100644 libre/distcc-nozeroconf/distccd.conf.d delete mode 100644 libre/distcc-nozeroconf/distccd.service delete mode 100644 libre/foomatic-filters-libre/PKGBUILD delete mode 100644 libre/gsoap-legacy/LICENSE delete mode 100644 libre/gsoap-legacy/PKGBUILD delete mode 100644 libre/icecat-adblock-plus/PKGBUILD delete mode 100644 libre/iceweasel-adblock-plus/PKGBUILD delete mode 100644 libre/initscripts/0001-remove-run-nologin-before-leaving-rc.multi.patch delete mode 100644 libre/initscripts/PKGBUILD delete mode 100644 libre/initscripts/initscripts.install delete mode 100644 libre/initscripts/split-hwclock-calls.diff delete mode 100644 libre/initscripts/wireless.conf.d delete mode 100644 libre/lesspipe-libre/PKGBUILD delete mode 100644 libre/lesspipe-libre/lesspipe.sh delete mode 100644 libre/lesspipe-libre/rePKGBUILD delete mode 100644 libre/libui-sh/PKGBUILD delete mode 100644 libre/newton-dynamics-libre/PKGBUILD delete mode 100644 libre/newton-dynamics-libre/assert-fix.patch delete mode 100644 libre/pngcrush/PKGBUILD delete mode 100644 libre/ruby-hpricot/PKGBUILD delete mode 100644 libre/seamonkey-libre/PKGBUILD delete mode 100644 libre/seamonkey-libre/clrf.patch delete mode 100644 libre/seamonkey-libre/gcc47.patch delete mode 100644 libre/seamonkey-libre/gnuzilla-addons.patch delete mode 100644 libre/seamonkey-libre/libvpx.patch delete mode 100644 libre/seamonkey-libre/mozconfig delete mode 100644 libre/seamonkey-libre/python27.patch delete mode 100644 libre/seamonkey-libre/seamonkey-2.0-lang.patch delete mode 100644 libre/seamonkey-libre/seamonkey.desktop delete mode 100644 libre/seamonkey-libre/seamonkey.install delete mode 100644 libre/ttf-thai-libre/PKGBUILD delete mode 100644 libre/ttf-thai-libre/ttf.install delete mode 100644 libre/ununrar/PKGBUILD delete mode 100644 libre/virtualbox-libre-modules-lts/PKGBUILD delete mode 100755 libre/virtualbox-libre-modules-lts/build.sh delete mode 100644 libre/virtualbox-libre-modules-lts/virtualbox-libre-guest-modules-lts.install delete mode 100644 libre/virtualbox-libre-modules-lts/virtualbox-libre-host-modules-lts.install delete mode 100644 libre/virtualbox-libre-modules/PKGBUILD delete mode 100755 libre/virtualbox-libre-modules/build.sh delete mode 100755 libre/virtualbox-libre-modules/virtualbox-libre-guest-modules.install delete mode 100755 libre/virtualbox-libre-modules/virtualbox-libre-host-modules.install delete mode 100644 libre/virtualbox-libre/001-vboxdrv-reference.patch delete mode 100755 libre/virtualbox-libre/002-change_default_driver_dir.patch delete mode 100644 libre/virtualbox-libre/003-gcc-48.patch delete mode 100644 libre/virtualbox-libre/003-linux-3.8.patch delete mode 100644 libre/virtualbox-libre/004-system-xorg.patch delete mode 100644 libre/virtualbox-libre/10-vboxdrv.rules delete mode 100644 libre/virtualbox-libre/60-vboxguest.rules delete mode 100644 libre/virtualbox-libre/LocalConfig.kmk delete mode 100644 libre/virtualbox-libre/PKGBUILD delete mode 100644 libre/virtualbox-libre/free-distros.patch delete mode 100644 libre/virtualbox-libre/libre.patch delete mode 100644 libre/virtualbox-libre/os_blag.png delete mode 100644 libre/virtualbox-libre/os_blag_64.png delete mode 100644 libre/virtualbox-libre/os_dragora.png delete mode 100644 libre/virtualbox-libre/os_dragora_64.png delete mode 100644 libre/virtualbox-libre/os_dynebolic.png delete mode 100644 libre/virtualbox-libre/os_gnewsense.png delete mode 100644 libre/virtualbox-libre/os_gnewsense_64.png delete mode 100644 libre/virtualbox-libre/os_gnu.png delete mode 100644 libre/virtualbox-libre/os_gnu_64.png delete mode 100644 libre/virtualbox-libre/os_gnuhurd.png delete mode 100644 libre/virtualbox-libre/os_gnulinux.png delete mode 100644 libre/virtualbox-libre/os_gnulinux_64.png delete mode 100644 libre/virtualbox-libre/os_musix.png delete mode 100644 libre/virtualbox-libre/os_musix_64.png delete mode 100644 libre/virtualbox-libre/os_os64base.png delete mode 100644 libre/virtualbox-libre/os_os64base.xcf delete mode 100644 libre/virtualbox-libre/os_osbase.png delete mode 100644 libre/virtualbox-libre/os_osbase.xcf delete mode 100644 libre/virtualbox-libre/os_parabola.png delete mode 100644 libre/virtualbox-libre/os_parabola_64.png delete mode 100644 libre/virtualbox-libre/os_trisquel.png delete mode 100644 libre/virtualbox-libre/os_trisquel_64.png delete mode 100644 libre/virtualbox-libre/os_ututo.png delete mode 100644 libre/virtualbox-libre/os_ututo_64.png delete mode 100644 libre/virtualbox-libre/os_venenux.png delete mode 100644 libre/virtualbox-libre/vboxservice.service delete mode 100644 libre/virtualbox-libre/vboxweb.service delete mode 100644 libre/virtualbox-libre/virtualbox-libre-guest-dkms.install delete mode 100755 libre/virtualbox-libre/virtualbox-libre-guest-utils.install delete mode 100644 libre/virtualbox-libre/virtualbox-libre-host-dkms.install delete mode 100644 libre/virtualbox-libre/virtualbox-libre.install delete mode 100644 libre/xulrunner-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch delete mode 100644 libre/xulrunner-libre/PKGBUILD delete mode 100644 libre/xulrunner-libre/mozconfig delete mode 100644 libre/xulrunner-libre/mozilla-pkgconfig.patch delete mode 100644 libre/xulrunner-libre/shared-libs.patch delete mode 100644 nonprism/empathy-nonprism/PKGBUILD delete mode 100644 nonprism/empathy-nonprism/empathy.install (limited to 'community') diff --git a/community/cantata/PKGBUILD b/community/cantata/PKGBUILD index a787619fd..c7b699bc6 100644 --- a/community/cantata/PKGBUILD +++ b/community/cantata/PKGBUILD @@ -1,23 +1,24 @@ -# $Id: PKGBUILD 101406 2013-11-24 23:10:10Z cinelli $ +# $Id: PKGBUILD 103640 2014-01-08 16:42:15Z bgyorgy $ # Maintainer: Federico Cinelli # Contributor: Andrea Scarpino # Contributor: Mcder3 # Contributor: MisterFred pkgname=cantata -pkgver=1.1.3 +pkgver=1.2.2 pkgdesc="A KDE client for the music player daemon (MPD)" -pkgrel=2 +pkgrel=1 arch=('i686' 'x86_64') url="http://kde-apps.org/content/show.php/Cantata?content=147733" license=('GPL') -depends=('kdebase-runtime' 'libmtp' 'libcddb' 'libmusicbrainz5' 'mpg123' 'taglib-extras') +depends=('kdebase-runtime' 'libmtp' 'libcddb' 'libmusicbrainz5' 'mpg123' 'qjson' 'taglib-extras') optdepends=('perl-uri: dynamic playlist' 'mpd: playback') makedepends=('cmake' 'automoc4') install="$pkgname.install" source=("http://cantata.googlecode.com/files/$pkgname-$pkgver.tar.bz2") -md5sums=('22691c1ba9e0f94200f6cdb849be726a') +sha1sums=('89d84736ba4a43be7dc892af6fcbad5957075e19') + build() { cd "$srcdir/$pkgname-$pkgver" mkdir build @@ -25,7 +26,7 @@ build() { cmake . \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ - -DENABLE_PHONON=ON + -DENABLE_HTTP_STREAM_PLAYBACK=ON make } diff --git a/community/cppcheck/PKGBUILD b/community/cppcheck/PKGBUILD index 261d32e4a..5319a5d1d 100644 --- a/community/cppcheck/PKGBUILD +++ b/community/cppcheck/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 98518 2013-10-12 16:47:42Z jelle $ +# $Id: PKGBUILD 103594 2014-01-08 08:36:43Z jelle $ # Maintainer: Stéphane Gaudreault pkgname=cppcheck -pkgver=1.62.1 +pkgver=1.63.1 pkgrel=1 pkgdesc="A tool for static C/C++ code analysis" arch=('i686' 'x86_64') @@ -11,8 +11,7 @@ license=('GPL') depends=('qt5-base') makedepends=('docbook-xsl') source=(https://github.com/danmar/cppcheck/archive/${pkgver}.tar.gz) -sha1sums=('2494a603bd505cc6ae5bd67286410a66cf7996b2') - +sha1sums=('19ad7251603356a82dc75a836dfad9629a3d12a0') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/docker/PKGBUILD b/community/docker/PKGBUILD index 03fbb4c64..26e4b08ba 100644 --- a/community/docker/PKGBUILD +++ b/community/docker/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 103353 2014-01-04 01:37:48Z seblu $ +# $Id: PKGBUILD 103654 2014-01-08 20:31:31Z seblu $ # Maintainer: Sébastien "Seblu" Luttringer pkgname=docker -pkgver=0.7.3 +pkgver=0.7.4 pkgrel=1 epoch=1 pkgdesc='Pack, ship and run any application as a lightweight container' diff --git a/community/dunst/PKGBUILD b/community/dunst/PKGBUILD index 88f684eec..468590807 100644 --- a/community/dunst/PKGBUILD +++ b/community/dunst/PKGBUILD @@ -1,20 +1,19 @@ -# $Id: PKGBUILD 88586 2013-04-20 15:35:54Z dwallace $ +# $Id: PKGBUILD 103648 2014-01-08 18:46:24Z bgyorgy $ # Maintainer: Daniel Wallace # Contributor: feuri pkgname=dunst pkgver=1.0.0 -pkgrel=1 -pkgdesc="a dmenu-ish notification system " +pkgrel=2 +pkgdesc="Customizable and lightweight notification-daemon" arch=('i686' 'x86_64') -url="http://knopwob.github.com/dunst" -license=(MIT) +url="http://www.knopwob.org/dunst/" +license=(BSD) depends=(libxinerama libxss libxdg-basedir pango) -optdepends=("libnotify: notify-send" - "dbus: start dunst on demand") -makedepends=(libnotify dbus 'perl') +makedepends=(libnotify) provides=(notification-daemon) -source=("${pkgname}-${pkgver}.tar.bz2::http://www.knopwob.org/public/dunst-release/$pkgname-$pkgver.tar.bz2") +source=("http://www.knopwob.org/public/dunst-release/$pkgname-$pkgver.tar.bz2") +md5sums=('bb5fee3cdf6ee30f7e11b7edd35e6723') build() { make -C "$srcdir/$pkgname-$pkgver" X11INC=/usr/include/X11 X11LIB=/usr/lib/X11 @@ -24,5 +23,5 @@ package() { make -C "$pkgname-$pkgver" DESTDIR="${pkgdir}" PREFIX=/usr install install -Dm644 "${srcdir}/$pkgname-$pkgver/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } + # vim:set ts=2 sw=2 et: -md5sums=('bb5fee3cdf6ee30f7e11b7edd35e6723') diff --git a/community/elasticsearch/PKGBUILD b/community/elasticsearch/PKGBUILD index edcc42159..f25e85294 100644 --- a/community/elasticsearch/PKGBUILD +++ b/community/elasticsearch/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 102806 2013-12-20 13:45:23Z mtorromeo $ +# $Id: PKGBUILD 103596 2014-01-08 09:32:01Z mtorromeo $ # Maintainer: Massimiliano Torromeo # Contributor: Marcello "mererghost" Rocha # Refactored by Blaž "Speed" Hrastnik pkgname=elasticsearch -pkgver=0.90.8 -pkgrel=2 +pkgver=0.90.9 +pkgrel=1 pkgdesc="Distributed RESTful search engine built on top of Lucene" arch=('i686' 'x86_64') url="http://www.elasticsearch.org/" @@ -34,7 +34,7 @@ prepare() { done done - sed 's|$ES_HOME/lib|/usr/lib/elasticsearch|g' -i bin/elasticsearch.in.sh + sed 's|$ES_HOME/lib|/usr/lib/elasticsearch|g' -i bin/elasticsearch.in.sh bin/plugin echo -e '\nJAVA_OPTS="$JAVA_OPTS -Des.path.conf=/etc/elasticsearch"' >> bin/elasticsearch.in.sh @@ -70,6 +70,6 @@ package() { install -Dm644 "$srcdir/elasticsearch-tmpfile.conf" "$pkgdir/usr/lib/tmpfiles.d/elasticsearch.conf" } -sha256sums=('4006e9aa9382f386e79a1c44a14c1aef34765eb5480fb6b29a2facf62ab3a321' +sha256sums=('5521c4dc775c18ee4abd6cd6ad94cdc1f106d63fddd3d97cfae1ec25b3f01095' '09a4027780d73103c26f311c64774dcbc47b5e1d54789c1f2d9c697f518f2eeb' '48b5a876e14819270c85f8ca626a011e01d10a2728758ced9a4d5bcf5c1fd23f') diff --git a/community/gdal/PKGBUILD b/community/gdal/PKGBUILD index f1502a297..4dbdfe523 100644 --- a/community/gdal/PKGBUILD +++ b/community/gdal/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 102765 2013-12-19 13:49:34Z fyan $ +# $Id: PKGBUILD 103623 2014-01-08 12:17:02Z bgyorgy $ # Maintainer: Jaroslav Lichtblau # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: William Rea pkgname=gdal -pkgver=1.10.0 -pkgrel=6 +pkgver=1.10.1 +pkgrel=1 pkgdesc="A translator library for raster geospatial data formats" arch=('i686' 'x86_64') url="http://www.gdal.org/" license=('custom') -depends=('curl' 'geos' 'giflib' 'hdf5' 'libgeotiff' 'libjpeg' 'libpng' 'libtiff' 'netcdf' 'python2' 'python2-numpy' 'cfitsio' 'sqlite' 'libmariadbclient' 'postgresql-libs') +depends=('curl' 'geos' 'giflib' 'hdf5' 'libgeotiff' 'libjpeg' 'libpng' 'libtiff' 'netcdf' 'poppler' 'python2' 'python2-numpy' 'cfitsio' 'sqlite' 'libmariadbclient' 'postgresql-libs') makedepends=('perl' 'swig' 'chrpath') optdepends=('postgresql: postgresql database support' 'mariadb: mariadb database support' @@ -19,7 +19,7 @@ optdepends=('postgresql: postgresql database support' changelog=$pkgname.changelog source=(http://download.osgeo.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz gdal-1.5.1-python-install.patch) -sha256sums=('1a9ca12bcc3a55f66bcd6654d5ff12eeddb3a26b622dd7c8872febb4f5a97487' +sha256sums=('9984f0314c0bd831eb59fb646c2bc5e13cf1378be4f51499045166cbe62be6ea' '55a0a961b2d1caddf80f18b6763a96690b0b6443fbd5a0c89e29503ded3bcea6') build() { @@ -39,7 +39,7 @@ build() { ./configure --prefix=/usr --with-netcdf --with-libtiff --with-sqlite3 \ --with-geotiff --with-mysql --with-python --without-libtool --with-curl \ - --with-hdf5 --with-perl --with-geos --with-png + --with-hdf5 --with-perl --with-geos --with-png --with-poppler # workaround for bug #13646 sed -i 's/PY_HAVE_SETUPTOOLS=1/PY_HAVE_SETUPTOOLS=/g' ./GDALmake.opt diff --git a/community/julius/PKGBUILD b/community/julius/PKGBUILD new file mode 100644 index 000000000..8e14904d7 --- /dev/null +++ b/community/julius/PKGBUILD @@ -0,0 +1,56 @@ +# $Id: PKGBUILD 103609 2014-01-08 10:39:22Z arcanis $ +# Maintainer: Evgeniy Alekseev +# Contributor: Matt Harrison +# Contributor: Muhammad Qadri + +pkgname=julius +pkgver=4.3 +pkgrel=1 +pkgdesc="A high-performance, two-pass large vocabulary continuous speech recognition decoder software" +arch=("i686" "x86_64") +url="http://julius.sourceforge.jp/" +license=("custom") +depends=("libpulse") +optdepends=("voxforge-am-julius: acoustic models") +source=("http://iij.dl.sourceforge.jp/${pkgname}/60153/${pkgname}-${pkgver}.tar.gz") +md5sums=("48b36e9104b55c409a60947f7ba05bb3") + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # replace /lib/cpp with /usr/bin/cpp since Arch Linux doesn't have /lib/cpp anymore + sed -i "s|/lib/cpp|/usr/bin/cpp|g" "julius/configure" + sed -i "s|/lib/cpp|/usr/bin/cpp|g" "jcontrol/configure" + sed -i "s|/lib/cpp|/usr/bin/cpp|g" "libjulius/configure" + sed -i "s|/lib/cpp|/usr/bin/cpp|g" "gramtools/configure" + sed -i "s|/lib/cpp|/usr/bin/cpp|g" "libsent/configure" + sed -i "s|/lib/cpp|/usr/bin/cpp|g" "configure" + + # Add -02 to CPPFLAGS to prevent issue with -D_FORTIFY_SOURCE=2 + CPPFLAGS="$CPPFLAGS -O2" +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}/" + ./configure \ + --prefix="/usr/" \ + --mandir='${prefix}/share/man' \ + --enable-words-int \ + --enable-msd \ + --enable-gmm-vad \ + --enable-decoder-vad \ + --enable-power-reject \ + --enable-wpair + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}/" + + make prefix="${pkgdir}/usr" install + install -D "LICENSE.txt" "${pkgdir}/usr/share/licenses/julius/LICENSE" + # remove empty lib directory + rm -r "${pkgdir}/usr/lib" +} + +# vim:set ts=2 sw=2 et: diff --git a/community/lxappearance/PKGBUILD b/community/lxappearance/PKGBUILD index 120f419df..2d4a6aab9 100644 --- a/community/lxappearance/PKGBUILD +++ b/community/lxappearance/PKGBUILD @@ -1,10 +1,10 @@ -#$Id: PKGBUILD 103242 2013-12-31 06:53:57Z bpiotrowski $ +#$Id: PKGBUILD 103634 2014-01-08 14:31:20Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Angel Velasquez # Contributor: Geoffroy Carrier pkgname=lxappearance -pkgver=0.5.4 +pkgver=0.5.5 pkgrel=1 pkgdesc='Feature-rich GTK+ theme switcher of the LXDE Desktop' arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ groups=('lxde') depends=('gtk2' 'dbus-glib') makedepends=('intltool') source=(http://downloads.sourceforge.net/sourceforge/lxde/$pkgname-$pkgver.tar.xz) -md5sums=('c7b8c18368f757a8a60f21cb46d7d9b3') +md5sums=('a67113681d9d0a6d936289909aed5782') build() { cd $pkgname-$pkgver diff --git a/community/lz4/01-fix-include.patch b/community/lz4/01-fix-include.patch deleted file mode 100644 index 960fb3674..000000000 --- a/community/lz4/01-fix-include.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/programs/Makefile 2014-01-07 22:03:45.197517981 +0100 -+++ b/programs/Makefile 2014-01-07 22:03:43.126477362 +0100 -@@ -34,7 +34,7 @@ - DESTDIR= - PREFIX=/usr - CC=gcc --CFLAGS+= -I. -std=c99 -Wall -W -Wundef -DLZ4_VERSION=\"$(RELEASE)\" -+CFLAGS+= -I.. -std=c99 -Wall -W -Wundef -DLZ4_VERSION=\"$(RELEASE)\" - - BINDIR=$(PREFIX)/bin - MANDIR=$(PREFIX)/share/man/man1 diff --git a/community/lz4/PKGBUILD b/community/lz4/PKGBUILD index 748e8a8bd..ecd472fe6 100644 --- a/community/lz4/PKGBUILD +++ b/community/lz4/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 103558 2014-01-07 22:36:39Z seblu $ +# $Id: PKGBUILD 103658 2014-01-08 20:57:01Z seblu $ # Maintainer: Sébastien Luttringer # Contacted by mail, author use svn commit as release version. # He only push tested release code into svn and support using revision as version pkgname=lz4 -pkgver=111 +pkgver=112 pkgrel=1 pkgdesc='Very fast lossless compression algorithm' arch=('i686' 'x86_64') @@ -13,20 +13,12 @@ url='https://code.google.com/p/lz4/' license=('GPL2') makedepends=('svn') depends=('glibc') -source=("$pkgname::svn+http://lz4.googlecode.com/svn/trunk/#revision=$pkgver" - '01-fix-include.patch') -md5sums=('SKIP' - '522618c085bb30924f540c3b2c18a7e4') - -prepare() { - patch -d $pkgname -p 1 < 01-fix-include.patch -} +source=("$pkgname::svn+http://lz4.googlecode.com/svn/trunk/#revision=$pkgver") +md5sums=('SKIP') build() { cd $pkgname make - cd programs - make } package() { diff --git a/community/mixxx/PKGBUILD b/community/mixxx/PKGBUILD index de26827ae..e53fb324b 100644 --- a/community/mixxx/PKGBUILD +++ b/community/mixxx/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 92429 2013-06-05 10:08:34Z lfleischer $ +# $Id: PKGBUILD 103651 2014-01-08 19:58:08Z bgyorgy $ # Maintainer: Lukas Fleischer # Contributor: Ali H. Caliskan # Contributor: Ryan Coyner @@ -6,20 +6,20 @@ pkgname=mixxx pkgver=1.11.0 -pkgrel=1 +pkgrel=2 pkgdesc="Free, open source software for digital DJ'ing." arch=('i686' 'x86_64') url='http://www.mixxx.org' license=('GPL') depends=('fftw' 'libid3tag' 'libmad' 'libogg' 'libshout' 'libsndfile' 'portaudio' 'portmidi' - 'taglib' 'qtwebkit' 'vamp-plugin-sdk' 'libusbx' 'protobuf') + 'taglib' 'qtwebkit' 'vamp-plugin-sdk' 'libusbx' 'protobuf' 'faad2' 'libmp4v2') makedepends=('mesa' 'scons' 'libshout' 'glu') source=("http://downloads.mixxx.org/${pkgname}-${pkgver}/${pkgname}-${pkgver}-src.tar.gz") md5sums=('89ee8ba60824919d8dd1194287bda259') build() { cd "${srcdir}/${pkgname}-${pkgver}" - scons qtdir=/usr/lib/qt4 prefix=/usr + scons qtdir=/usr/lib/qt4 prefix=/usr faad=1 } package() { diff --git a/community/noise/PKGBUILD b/community/noise/PKGBUILD index e34eb3062..02dc4a26e 100644 --- a/community/noise/PKGBUILD +++ b/community/noise/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 99111 2013-10-24 13:13:25Z alucryd $ +# $Id: PKGBUILD 103644 2014-01-08 17:47:17Z alucryd $ # Maintainer: Maxime Gauduin pkgname=noise pkgver=0.2.4 -pkgrel=2 +pkgrel=3 pkgdesc="Simple, fast, and good looking music player" arch=('i686' 'x86_64') url="https://launchpad.net/noise" diff --git a/community/openntpd/PKGBUILD b/community/openntpd/PKGBUILD index 4eafda56d..3e7145661 100644 --- a/community/openntpd/PKGBUILD +++ b/community/openntpd/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 91455 2013-05-22 23:28:35Z seblu $ +# $Id: PKGBUILD 103646 2014-01-08 18:14:53Z bgyorgy $ # Maintainer: Vesa Kaihlavirta # Contributor: Mark Rosenstand # Contributor: Giorgio Lando (adjtimex patch) @@ -6,7 +6,7 @@ pkgname=openntpd pkgver=3.9p1 -pkgrel=22 +pkgrel=23 pkgdesc='Free, easy to use implementation of the Network Time Protocol.' url='http://www.openntpd.org/' arch=('x86_64' 'i686') @@ -47,8 +47,9 @@ package() { make DESTDIR="$pkgdir" install install -Dm644 "$srcdir/$pkgname-$pkgver/LICENCE" \ "$pkgdir/usr/share/licenses/$pkgname/LICENCE" - sed -i 's/\*/0.0.0.0/' $pkgdir/etc/ntpd.conf + sed -i 's/\*/0.0.0.0/' "$pkgdir/etc/ntpd.conf" + install -d -o 87 "pkgdir/var/lib/ntp" install -Dm644 "$srcdir/openntpd.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/openntpd.conf" install -Dm644 "$srcdir/openntpd.service" "$pkgdir/usr/lib/systemd/system/openntpd.service" diff --git a/community/prosody/PKGBUILD b/community/prosody/PKGBUILD index ff410fe44..4a69a863a 100644 --- a/community/prosody/PKGBUILD +++ b/community/prosody/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 97026 2013-09-10 15:54:28Z spupykin $ +# $Id: PKGBUILD 103602 2014-01-08 10:35:14Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer: Dwayne Bent # Contributor: Paul-Sebastian Manole # Contributor: Timothée Ravier pkgname=prosody -pkgver=0.9.1 +pkgver=0.9.2 pkgrel=1 pkgdesc="Lightweight and extensible Jabber/XMPP server written in Lua" arch=('i686' 'x86_64') @@ -34,6 +34,18 @@ sha256sums=('6cdea6fd6027bec621f7995709ca825a29aa5e066b321bfbb7785925c9f32cd5' 'db37b1b6bcd648f264164c5db5e754fc077671c74df6079c101384e146f4d6da' '3f5cc5db2cfe74c4edf91f60e692e04c3504025e893d0880114d52728a2c4bc4' '16fbfb54bf21bb73ce9d9acacb60d47f237c35e842c5a00f1153f72f0d2f7f6b') +sha256sums=('a2df64d23b7853a9f03126750d33b98193c93b8331b2622d9ebf1fe54f8feb2d' + 'SKIP' + '5a2466b73bd069fb73be97a4e23b24e4c8dd1adb7db871cb8f5ab4094c1f967f' + 'db37b1b6bcd648f264164c5db5e754fc077671c74df6079c101384e146f4d6da' + '3f5cc5db2cfe74c4edf91f60e692e04c3504025e893d0880114d52728a2c4bc4' + '16fbfb54bf21bb73ce9d9acacb60d47f237c35e842c5a00f1153f72f0d2f7f6b') +sha256sums=('a2df64d23b7853a9f03126750d33b98193c93b8331b2622d9ebf1fe54f8feb2d' + 'SKIP' + '5a2466b73bd069fb73be97a4e23b24e4c8dd1adb7db871cb8f5ab4094c1f967f' + 'db37b1b6bcd648f264164c5db5e754fc077671c74df6079c101384e146f4d6da' + '3f5cc5db2cfe74c4edf91f60e692e04c3504025e893d0880114d52728a2c4bc4' + '16fbfb54bf21bb73ce9d9acacb60d47f237c35e842c5a00f1153f72f0d2f7f6b') prepare() { cd ${pkgname}-${pkgver} diff --git a/community/python-pillow/PKGBUILD b/community/python-pillow/PKGBUILD index 6bc90397f..a43b9566d 100644 --- a/community/python-pillow/PKGBUILD +++ b/community/python-pillow/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 102812 2013-12-21 01:57:46Z kkeen $ +# $Id: PKGBUILD 103590 2014-01-08 04:03:33Z kkeen $ # Maintainer: Kyle Keen # Contributor: minder pkgbase=python-pillow pkgname=(python-pillow python2-pillow) -pkgver=2.2.2 +pkgver=2.3.0 pkgrel=1 _appname=Pillow _py2basever=2.7 @@ -15,7 +15,7 @@ url="http://python-imaging.github.io/" license=('BSD') makedepends=('python-setuptools' 'python2-setuptools' 'lcms' 'libwebp' 'tk' 'sane') source=("http://pypi.python.org/packages/source/P/$_appname/$_appname-$pkgver.zip") -md5sums=('6a76a16f6db45744ff2e9327bf0608b4') +md5sums=('56b6614499aacb7d6b5983c4914daea7') build() { cd "$srcdir" diff --git a/community/python-psycopg2/PKGBUILD b/community/python-psycopg2/PKGBUILD index 2cdabb5cf..35181419b 100644 --- a/community/python-psycopg2/PKGBUILD +++ b/community/python-psycopg2/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 93151 2013-06-26 09:20:17Z spupykin $ +# $Id: PKGBUILD 103604 2014-01-08 10:35:30Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer: Angel 'angvp' Velasquez # Maintainer: Douglas Soares de Andrade pkgbase=python-psycopg2 pkgname=('python-psycopg2' 'python2-psycopg2') -pkgver=2.5.1 +pkgver=2.5.2 pkgrel=1 pkgdesc="A PostgreSQL database adapter for the Python programming language." arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ url="http://initd.org/psycopg/" license=('LGPL3') makedepends=('python2' 'python' 'postgresql-libs>=8.4.1') source=(http://initd.org/psycopg/tarballs/PSYCOPG-2-5/psycopg2-$pkgver.tar.gz) -md5sums=('1b433f83d50d1bc61e09026e906d84c7') +md5sums=('53d81793fbab8fee6e732a0425d50047') build() { cd "$srcdir/psycopg2-$pkgver" diff --git a/community/python-sqlalchemy/PKGBUILD b/community/python-sqlalchemy/PKGBUILD index f8a0e4a28..58c27c81f 100644 --- a/community/python-sqlalchemy/PKGBUILD +++ b/community/python-sqlalchemy/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 103389 2014-01-05 15:48:26Z jelle $ +# $Id: PKGBUILD 103642 2014-01-08 17:00:04Z bgyorgy $ # Maintainer: Angel Velasquez # Contributor: Sébastien Luttringer pkgbase=python-sqlalchemy pkgname=('python-sqlalchemy' 'python2-sqlalchemy') -pkgver=0.9.0 +pkgver=0.9.1 pkgrel=1 arch=('i686' 'x86_64') # python2 package contain .so url="http://www.sqlalchemy.org/" license=('custom: MIT') makedepends=('python' 'python2' 'python-setuptools' 'python2-setuptools' 'python-nose' 'python2-nose') source=("https://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-$pkgver.tar.gz") -md5sums=('acfd77b6ca71678237b1066a3fda05b0') +md5sums=('4d59a03e56ee37fc7b53ff1ef5f4310d') build() { cp -a SQLAlchemy-$pkgver SQLAlchemy2-$pkgver @@ -31,6 +31,7 @@ check() { package_python-sqlalchemy() { pkgdesc='Python SQL toolkit and Object Relational Mapper' depends=('python') + optdepends=('python-psycopg2: connect to PostgreSQL database') cd SQLAlchemy-${pkgver} python setup.py install --root="${pkgdir}" @@ -41,6 +42,7 @@ package_python-sqlalchemy() { package_python2-sqlalchemy() { pkgdesc='Python 2 SQL toolkit and Object Relational Mapper' depends=('python2') + optdepends=('python2-psycopg2: connect to PostgreSQL database') cd SQLAlchemy2-$pkgver python2 setup.py install --root="$pkgdir" diff --git a/community/python2-greenlet/PKGBUILD b/community/python2-greenlet/PKGBUILD index ea9605f52..5341f84a3 100644 --- a/community/python2-greenlet/PKGBUILD +++ b/community/python2-greenlet/PKGBUILD @@ -4,9 +4,9 @@ # Contributor: Ralf Schmitt pkgname=python2-greenlet -pkgver=0.4.1 +pkgver=0.4.2 pkgrel=1 -pkgdesc="python coroutine library" +pkgdesc="Lightweight in-process concurrent programming" license=("MIT") url="http://pypi.python.org/pypi/greenlet" depends=('python2') @@ -14,14 +14,14 @@ source=(http://pypi.python.org/packages/source/g/greenlet/greenlet-$pkgver.zip) arch=('i686' 'x86_64') build() { - cd "$srcdir/greenlet-$pkgver" + cd greenlet-$pkgver python2 setup.py build } package() { - cd "$srcdir/greenlet-$pkgver" + cd greenlet-$pkgver python2 setup.py install --root="$pkgdir" install -Dm0644 LICENSE.PSF "$pkgdir/usr/share/licenses/$pkgname/LICENSE.PSF" } -sha512sums=('bb33db07b8b86ba8ccec920748cfc207d27eed0b76218cf06c3b1706a1e9350be62a99a92e05c8e683a7c3ab1e232dbb46259380c7e5f2c6b140a3a96a36f8bf') +sha512sums=('9596b740921e4a80bcb43adb725a7a4ea428dadc10ba55f8840837ba685b010c273a4a2bd62c5ba4bfdf27ce87c914a83714d762bacafb8e0a3cd7e2a9675992') diff --git a/community/python2-imaging/PKGBUILD b/community/python2-imaging/PKGBUILD deleted file mode 100644 index b44c571c2..000000000 --- a/community/python2-imaging/PKGBUILD +++ /dev/null @@ -1,54 +0,0 @@ -# $Id: PKGBUILD 83335 2013-01-29 19:26:55Z kkeen $ -# Maintainer: Kyle Keen -# Contributor: Stéphane Gaudreault -# Contributor: Allan McRae -# Contributor: simo - -pkgname=python2-imaging -pkgver=1.1.7 -pkgrel=8 -pkgdesc="PIL. Provides image processing capabilities for python" -arch=('i686' 'x86_64') -url="http://www.pythonware.com/products/pil/index.htm" -license=('custom:"pil"') -depends=('python2' 'libjpeg' 'freetype2' 'lcms') -makedepends=('tk' 'sane') -optdepends=('tk: for the ImageTK module' - 'sane: for the ImageSane module') -provides=("pil=${pkgver}" "python-imaging=${pkgver}") -conflicts=('pil' 'python-imaging') -replaces=('pil' 'python-imaging') -source=(http://effbot.org/downloads/Imaging-${pkgver}.tar.gz) -md5sums=('fc14a54e1ce02a0225be8854bfba478e') - -build() { - cd "${srcdir}/Imaging-${pkgver}" - - # FS#33452 - export CFLAGS="$CFLAGS -fno-strict-aliasing" - - python2 setup.py build_ext - cd Sane - python2 setup.py build_ext -} - -package() { - cd "${srcdir}/Imaging-${pkgver}" - python2 setup.py install --root="${pkgdir}" --optimize=1 - - pushd Sane - python2 setup.py install --root="${pkgdir}" --optimize=1 - popd - - install -dm755 "${pkgdir}/usr/include/python2.7/" - install -m644 -t "${pkgdir}/usr/include/python2.7/" libImaging/*.h - - # do not have files ending in .py in /usr/bin - for f in pildriver pilprint pilconvert pilfile pilfont; do - mv "${pkgdir}"/usr/bin/${f}{.py,} - done - - # Install license - install -Dm644 "${srcdir}/Imaging-${pkgver}/README" \ - "${pkgdir}/usr/share/licenses/${pkgname}/README" -} diff --git a/community/qcad/PKGBUILD b/community/qcad/PKGBUILD index df11349c0..d84674d90 100644 --- a/community/qcad/PKGBUILD +++ b/community/qcad/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 102798 2013-12-20 11:28:08Z spupykin $ +# $Id: PKGBUILD 103632 2014-01-08 14:10:43Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Stefan Husmann # Contributor: Giovanni Scafora @@ -6,7 +6,7 @@ pkgname=qcad pkgver=3.4.5.0 -pkgrel=1 +pkgrel=2 pkgdesc="A 2D CAD package based upon Qt" arch=('i686' 'x86_64') url="http://www.ribbonsoft.com/qcad.html" @@ -59,7 +59,7 @@ package() { install -Dm644 $srcdir/QCad.desktop ${pkgdir}/usr/share/applications/QCad.desktop install -dm0755 $pkgdir/usr/bin - echo -e '#!/bin/sh\ncd /usr/share/qcad\nLD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"/usr/share/qcad" exec /usr/share/qcad/qcad-bin "$@"' >$pkgdir/usr/bin/qcad + echo -e '#!/bin/sh\nLD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"/usr/share/qcad" exec /usr/share/qcad/qcad-bin "$@"' >$pkgdir/usr/bin/qcad chmod 0755 $pkgdir/usr/bin/qcad } diff --git a/community/rbutil/PKGBUILD b/community/rbutil/PKGBUILD index a3a793537..83cd61e2d 100755 --- a/community/rbutil/PKGBUILD +++ b/community/rbutil/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 96229 2013-08-22 00:02:57Z alucryd $ +# $Id: PKGBUILD 103630 2014-01-08 13:34:03Z alucryd $ # Maintainer: Maxime Gauduin # Contributor: said # Contributor: clinx pkgname=rbutil -pkgver=1.3.1 -pkgrel=4 +pkgver=1.4.0 +pkgrel=1 pkgdesc="Rockbox Utility" arch=('i686' 'x86_64') url="http://www.rockbox.org/twiki/bin/view/Main/RockboxUtility" license=("GPL") -depends=('qt4' 'libusbx') -makedepends=('gendesk') +depends=('qt5-base' 'libusbx') +makedepends=('gendesk' 'qt5-tools') optdepends=('speex: voice files support') source=("http://download.rockbox.org/${pkgname}/source/RockboxUtility-v${pkgver}-src.tar.bz2") -sha256sums=('6c04b5c7eaad1762577908dedb9e40f5b0cee675150ae5ba844ea2c9bea294ca') +sha256sums=('bc28a58ac1f62055a39b072e7b41a162f407a8b83172c84790568235d4637e4c') prepare() { gendesk -n --pkgname "${pkgname}" --pkgdesc "${pkgdesc}" --name="Rockbox Utility" --exec="RockboxUtility" --categories="Application;Utility;" --comment="Rockbox automated installer" @@ -23,8 +23,8 @@ prepare() { build() { cd RockboxUtility-v${pkgver}/${pkgname}/rbutilqt - lrelease-qt4 rbutilqt.pro - qmake-qt4 + lrelease-qt5 rbutilqt.pro + qmake-qt5 make } diff --git a/community/rbutil/rbutil.desktop b/community/rbutil/rbutil.desktop deleted file mode 100755 index 920b6a452..000000000 --- a/community/rbutil/rbutil.desktop +++ /dev/null @@ -1,11 +0,0 @@ -[Desktop Entry] -Name=Rockbox Utility -GenericName=Rockbox Utility -Comment=Configure Rockbox -Encoding=UTF-8 -Exec=rbutil -Icon=rbutil.png -Categories=Application;Qt;AudioVideo;Audio; -StartupNotify=false -Terminal=false -Type=Application diff --git a/community/synce-core/PKGBUILD b/community/synce-core/PKGBUILD index 4ed45b1af..55dd9c6eb 100644 --- a/community/synce-core/PKGBUILD +++ b/community/synce-core/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 100285 2013-11-02 08:49:32Z spupykin $ +# $Id: PKGBUILD 103618 2014-01-08 11:37:39Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer: Jan Was pkgname=synce-core pkgver=0.17 -pkgrel=2 +pkgrel=3 pkgdesc="provide a means of communication with a Windows CE device - libraries" arch=('i686' 'x86_64') url="http://synce.sourceforge.net/" license=('GPL') depends=('dbus-glib' 'udev' 'python2') -makedepends=('dhclient') +makedepends=('dhclient' 'pyrex') provides=('synce-libsynce' 'synce-librapi') replaces=('synce-libsynce' 'synce-librapi') conflicts=('synce-libsynce' 'synce-librapi') diff --git a/community/umurmur/PKGBUILD b/community/umurmur/PKGBUILD index 6af6b8cb3..c191297ef 100644 --- a/community/umurmur/PKGBUILD +++ b/community/umurmur/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 101363 2013-11-23 15:13:00Z bpiotrowski $ +# $Id: PKGBUILD 103638 2014-01-08 15:18:58Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Robert Knauer # Contributor: xav pkgname=umurmur -pkgver=0.2.13 +pkgver=0.2.14 pkgrel=1 pkgdesc='Minimalistic Mumble server' arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ install=$pkgname.install backup=('etc/umurmur/umurmur.conf') source=(http://umurmur.googlecode.com/files/umurmur-$pkgver.tar.gz umurmur.service) -md5sums=('04d0ea7a90b7858c16df26317b318bf4' +md5sums=('e22121b4b91f4c9de43f858f6defa0b0' 'd9d556e4ffa77e193fb40ce508804720') build() { diff --git a/core/glibc/PKGBUILD b/core/glibc/PKGBUILD index 3deb8cd15..0f823bd59 100644 --- a/core/glibc/PKGBUILD +++ b/core/glibc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 201557 2013-12-15 06:41:32Z allan $ +# $Id: PKGBUILD 203338 2014-01-08 11:40:24Z allan $ # Maintainer: Allan McRae # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc @@ -8,7 +8,7 @@ pkgname=glibc pkgver=2.18 -pkgrel=11 +pkgrel=12 pkgdesc="GNU C Library" arch=('i686' 'x86_64') url="http://www.gnu.org/software/libc" @@ -31,6 +31,7 @@ source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig} glibc-2.18-getaddrinfo-assertion.patch glibc-2.18-scanf-parse-0e-0.patch glibc-2.18-strstr-hackfix.patch + glibc-2.18-xattr-compat-hack.patch nscd.service nscd.tmpfiles locale.gen.txt @@ -46,6 +47,7 @@ md5sums=('88fbbceafee809e82efd52efa1e3c58f' 'd4d86add33f22125777e0ecff06bc9bb' '01d19fe9b2aea489cf5651530e0369f2' '4441f6dfe7d75ced1fa75e54dd21d36e' + '7ca96c68a37f2a4ab91792bfa0160a24' 'd5fab2cd3abea65aa5ae696ea4a47d6b' 'da662ca76e7c8d7efbc7986ab7acea2d' '07ac979b6ab5eeb778d55f041529d623' @@ -80,6 +82,9 @@ prepare() { # hack fix for strstr issues on x86 patch -p1 -i $srcdir/glibc-2.18-strstr-hackfix.patch + + # hack fix for {linux,sys}/xattr.h incompatibility + patch -p1 -i $srcdir/glibc-2.18-xattr-compat-hack.patch mkdir ${srcdir}/glibc-build } @@ -161,8 +166,9 @@ package() { ${srcdir}/glibc-${pkgver}/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen # remove the static libraries that have a shared counterpart - # note: keep libc, libdl, libm, libpthread for binutils testsuite - rm $pkgdir/usr/lib/lib{anl,BrokenLocale,crypt,nsl,resolv,rt,util}.a + # libc, libdl, libm and libpthread are required for toolchain testsuites + # in addition libcrypt appears widely required + rm $pkgdir/usr/lib/lib{anl,BrokenLocale,nsl,resolv,rt,util}.a # Do not strip the following files for improved debugging support # ("improved" as in not breaking gdb and valgrind...): diff --git a/core/glibc/glibc-2.18-xattr-compat-hack.patch b/core/glibc/glibc-2.18-xattr-compat-hack.patch new file mode 100644 index 000000000..7486922d7 --- /dev/null +++ b/core/glibc/glibc-2.18-xattr-compat-hack.patch @@ -0,0 +1,19 @@ +diff -Naur glibc-2.18-orig/misc/sys/xattr.h glibc-2.18/misc/sys/xattr.h +--- glibc-2.18-orig/misc/sys/xattr.h 2013-08-11 08:52:55.000000000 +1000 ++++ glibc-2.18/misc/sys/xattr.h 2014-01-07 15:45:50.533969040 +1000 +@@ -26,13 +26,8 @@ + + /* The following constants should be used for the fifth parameter of + `*setxattr'. */ +-enum +-{ +- XATTR_CREATE = 1, /* set value, fail if attr already exists. */ +-#define XATTR_CREATE XATTR_CREATE +- XATTR_REPLACE = 2 /* set value, fail if attr does not exist. */ +-#define XATTR_REPLACE XATTR_REPLACE +-}; ++#define XATTR_CREATE 1 ++#define XATTR_REPLACE 2 + + /* Set the attribute NAME of the file pointed to by PATH to VALUE (which + is SIZE bytes long). Return 0 on success, -1 for errors. */ diff --git a/core/libcap/PKGBUILD b/core/libcap/PKGBUILD index e12d59559..0ea9b736d 100644 --- a/core/libcap/PKGBUILD +++ b/core/libcap/PKGBUILD @@ -1,31 +1,24 @@ -#$Id: PKGBUILD 203064 2014-01-03 09:18:41Z allan $ +#$Id: PKGBUILD 203339 2014-01-08 11:40:25Z allan $ # Maintainer: Allan McRae # Contributor: Hugo Doria pkgname=libcap -pkgver=2.23 -pkgrel=2 +pkgver=2.24 +pkgrel=1 pkgdesc="POSIX 1003.1e capabilities" arch=('i686' 'x86_64') url="http://sites.google.com/site/fullycapable/" license=('GPL2') depends=('glibc' 'attr') options=('!staticlibs') -source=(https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.23.tar.xz - libcap-2.23-header.patch) -md5sums=('09a185e4b0aa8a81a51c1e4d0eba7db0' - '945984c4bf5e601c24a7c80f001fb2c6') +source=(https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-${pkgver}.tar.xz) +md5sums=('d43ab9f680435a7fff35b4ace8d45b80') prepare() { cd ${srcdir}/${pkgname}-${pkgver} # install into /usr/bin sed -i "/SBINDIR/s#sbin#bin#" Make.Rules - - # fix header path issues - patch -p1 -i $srcdir/libcap-2.23-header.patch - # and fix the build with that patch - sed -i "s#uapi/##" libcap/Makefile } build() { diff --git a/core/libcap/libcap-2.23-header.patch b/core/libcap/libcap-2.23-header.patch deleted file mode 100644 index 74c45e0a4..000000000 --- a/core/libcap/libcap-2.23-header.patch +++ /dev/null @@ -1,350 +0,0 @@ -From c3290668646b767058e55b29f7b8f4be4af2e660 Mon Sep 17 00:00:00 2001 -From: Andrew G Morgan -Date: Thu, 02 Jan 2014 01:56:31 +0000 -Subject: Fix up the uapi/linux include scheme. - -In adopting this uapi header file (without kernel internals), I previously -messed up on the apparent location of the files. Thanks to Tom Gundersen for -the clarification. Also, delete the non-uapi copies of things since they -are no longer needed to build the library and tools. - -Signed-off-by: Andrew G Morgan ---- -diff --git a/Make.Rules b/Make.Rules -index 9ca6c89..5b58c59 100644 ---- a/Make.Rules -+++ b/Make.Rules -@@ -45,8 +45,8 @@ MINOR=23 - - # Compilation specifics - --KERNEL_HEADERS := $(topdir)/libcap/include --IPATH += -fPIC -I$(topdir)/libcap/include -I$(KERNEL_HEADERS) -+KERNEL_HEADERS := $(topdir)/libcap/include/uapi -+IPATH += -fPIC -I$(KERNEL_HEADERS) -I$(topdir)/libcap/include - - CC := gcc - CFLAGS := -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -diff --git a/libcap/include/linux/capability.h b/libcap/include/linux/capability.h -deleted file mode 100644 -index a6ee1f9..0000000 ---- a/libcap/include/linux/capability.h -+++ /dev/null -@@ -1,219 +0,0 @@ --/* -- * This is -- * -- * Andrew G. Morgan -- * Alexander Kjeldaas -- * with help from Aleph1, Roland Buresund and Andrew Main. -- * -- * See here for the libcap library ("POSIX draft" compliance): -- * -- * ftp://www.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.6/ -- */ --#ifndef _LINUX_CAPABILITY_H --#define _LINUX_CAPABILITY_H -- --#include -- -- --#define _KERNEL_CAPABILITY_VERSION _LINUX_CAPABILITY_VERSION_3 --#define _KERNEL_CAPABILITY_U32S _LINUX_CAPABILITY_U32S_3 -- --extern int file_caps_enabled; -- --typedef struct kernel_cap_struct { -- __u32 cap[_KERNEL_CAPABILITY_U32S]; --} kernel_cap_t; -- --/* exact same as vfs_cap_data but in cpu endian and always filled completely */ --struct cpu_vfs_cap_data { -- __u32 magic_etc; -- kernel_cap_t permitted; -- kernel_cap_t inheritable; --}; -- --#define _USER_CAP_HEADER_SIZE (sizeof(struct __user_cap_header_struct)) --#define _KERNEL_CAP_T_SIZE (sizeof(kernel_cap_t)) -- -- --struct file; --struct inode; --struct dentry; --struct user_namespace; -- --struct user_namespace *current_user_ns(void); -- --extern const kernel_cap_t __cap_empty_set; --extern const kernel_cap_t __cap_init_eff_set; -- --/* -- * Internal kernel functions only -- */ -- --#define CAP_FOR_EACH_U32(__capi) \ -- for (__capi = 0; __capi < _KERNEL_CAPABILITY_U32S; ++__capi) -- --/* -- * CAP_FS_MASK and CAP_NFSD_MASKS: -- * -- * The fs mask is all the privileges that fsuid==0 historically meant. -- * At one time in the past, that included CAP_MKNOD and CAP_LINUX_IMMUTABLE. -- * -- * It has never meant setting security.* and trusted.* xattrs. -- * -- * We could also define fsmask as follows: -- * 1. CAP_FS_MASK is the privilege to bypass all fs-related DAC permissions -- * 2. The security.* and trusted.* xattrs are fs-related MAC permissions -- */ -- --# define CAP_FS_MASK_B0 (CAP_TO_MASK(CAP_CHOWN) \ -- | CAP_TO_MASK(CAP_MKNOD) \ -- | CAP_TO_MASK(CAP_DAC_OVERRIDE) \ -- | CAP_TO_MASK(CAP_DAC_READ_SEARCH) \ -- | CAP_TO_MASK(CAP_FOWNER) \ -- | CAP_TO_MASK(CAP_FSETID)) -- --# define CAP_FS_MASK_B1 (CAP_TO_MASK(CAP_MAC_OVERRIDE)) -- --#if _KERNEL_CAPABILITY_U32S != 2 --# error Fix up hand-coded capability macro initializers --#else /* HAND-CODED capability initializers */ -- --# define CAP_EMPTY_SET ((kernel_cap_t){{ 0, 0 }}) --# define CAP_FULL_SET ((kernel_cap_t){{ ~0, ~0 }}) --# define CAP_FS_SET ((kernel_cap_t){{ CAP_FS_MASK_B0 \ -- | CAP_TO_MASK(CAP_LINUX_IMMUTABLE), \ -- CAP_FS_MASK_B1 } }) --# define CAP_NFSD_SET ((kernel_cap_t){{ CAP_FS_MASK_B0 \ -- | CAP_TO_MASK(CAP_SYS_RESOURCE), \ -- CAP_FS_MASK_B1 } }) -- --#endif /* _KERNEL_CAPABILITY_U32S != 2 */ -- --# define cap_clear(c) do { (c) = __cap_empty_set; } while (0) -- --#define cap_raise(c, flag) ((c).cap[CAP_TO_INDEX(flag)] |= CAP_TO_MASK(flag)) --#define cap_lower(c, flag) ((c).cap[CAP_TO_INDEX(flag)] &= ~CAP_TO_MASK(flag)) --#define cap_raised(c, flag) ((c).cap[CAP_TO_INDEX(flag)] & CAP_TO_MASK(flag)) -- --#define CAP_BOP_ALL(c, a, b, OP) \ --do { \ -- unsigned __capi; \ -- CAP_FOR_EACH_U32(__capi) { \ -- c.cap[__capi] = a.cap[__capi] OP b.cap[__capi]; \ -- } \ --} while (0) -- --#define CAP_UOP_ALL(c, a, OP) \ --do { \ -- unsigned __capi; \ -- CAP_FOR_EACH_U32(__capi) { \ -- c.cap[__capi] = OP a.cap[__capi]; \ -- } \ --} while (0) -- --static inline kernel_cap_t cap_combine(const kernel_cap_t a, -- const kernel_cap_t b) --{ -- kernel_cap_t dest; -- CAP_BOP_ALL(dest, a, b, |); -- return dest; --} -- --static inline kernel_cap_t cap_intersect(const kernel_cap_t a, -- const kernel_cap_t b) --{ -- kernel_cap_t dest; -- CAP_BOP_ALL(dest, a, b, &); -- return dest; --} -- --static inline kernel_cap_t cap_drop(const kernel_cap_t a, -- const kernel_cap_t drop) --{ -- kernel_cap_t dest; -- CAP_BOP_ALL(dest, a, drop, &~); -- return dest; --} -- --static inline kernel_cap_t cap_invert(const kernel_cap_t c) --{ -- kernel_cap_t dest; -- CAP_UOP_ALL(dest, c, ~); -- return dest; --} -- --static inline int cap_isclear(const kernel_cap_t a) --{ -- unsigned __capi; -- CAP_FOR_EACH_U32(__capi) { -- if (a.cap[__capi] != 0) -- return 0; -- } -- return 1; --} -- --/* -- * Check if "a" is a subset of "set". -- * return 1 if ALL of the capabilities in "a" are also in "set" -- * cap_issubset(0101, 1111) will return 1 -- * return 0 if ANY of the capabilities in "a" are not in "set" -- * cap_issubset(1111, 0101) will return 0 -- */ --static inline int cap_issubset(const kernel_cap_t a, const kernel_cap_t set) --{ -- kernel_cap_t dest; -- dest = cap_drop(a, set); -- return cap_isclear(dest); --} -- --/* Used to decide between falling back on the old suser() or fsuser(). */ -- --static inline int cap_is_fs_cap(int cap) --{ -- const kernel_cap_t __cap_fs_set = CAP_FS_SET; -- return !!(CAP_TO_MASK(cap) & __cap_fs_set.cap[CAP_TO_INDEX(cap)]); --} -- --static inline kernel_cap_t cap_drop_fs_set(const kernel_cap_t a) --{ -- const kernel_cap_t __cap_fs_set = CAP_FS_SET; -- return cap_drop(a, __cap_fs_set); --} -- --static inline kernel_cap_t cap_raise_fs_set(const kernel_cap_t a, -- const kernel_cap_t permitted) --{ -- const kernel_cap_t __cap_fs_set = CAP_FS_SET; -- return cap_combine(a, -- cap_intersect(permitted, __cap_fs_set)); --} -- --static inline kernel_cap_t cap_drop_nfsd_set(const kernel_cap_t a) --{ -- const kernel_cap_t __cap_fs_set = CAP_NFSD_SET; -- return cap_drop(a, __cap_fs_set); --} -- --static inline kernel_cap_t cap_raise_nfsd_set(const kernel_cap_t a, -- const kernel_cap_t permitted) --{ -- const kernel_cap_t __cap_nfsd_set = CAP_NFSD_SET; -- return cap_combine(a, -- cap_intersect(permitted, __cap_nfsd_set)); --} -- --extern bool has_capability(struct task_struct *t, int cap); --extern bool has_ns_capability(struct task_struct *t, -- struct user_namespace *ns, int cap); --extern bool has_capability_noaudit(struct task_struct *t, int cap); --extern bool has_ns_capability_noaudit(struct task_struct *t, -- struct user_namespace *ns, int cap); --extern bool capable(int cap); --extern bool ns_capable(struct user_namespace *ns, int cap); --extern bool inode_capable(const struct inode *inode, int cap); --extern bool file_ns_capable(const struct file *file, struct user_namespace *ns, int cap); -- --/* audit system wants to get cap info from files as well */ --extern int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data *cpu_caps); -- --#endif /* !_LINUX_CAPABILITY_H */ -diff --git a/libcap/include/sys/capability.h b/libcap/include/sys/capability.h -index 56fc7fd..64ac50e 100644 ---- a/libcap/include/sys/capability.h -+++ b/libcap/include/sys/capability.h -@@ -26,7 +26,7 @@ extern "C" { - #ifndef __user - #define __user - #endif --#include -+#include - #include - - /* -diff --git a/libcap/include/linux/prctl.h b/libcap/include/uapi/linux/prctl.h -index a3baeb2..289760f 100644 ---- a/libcap/include/linux/prctl.h -+++ b/libcap/include/uapi/linux/prctl.h -@@ -102,4 +102,51 @@ - - #define PR_MCE_KILL_GET 34 - -+/* -+ * Tune up process memory map specifics. -+ */ -+#define PR_SET_MM 35 -+# define PR_SET_MM_START_CODE 1 -+# define PR_SET_MM_END_CODE 2 -+# define PR_SET_MM_START_DATA 3 -+# define PR_SET_MM_END_DATA 4 -+# define PR_SET_MM_START_STACK 5 -+# define PR_SET_MM_START_BRK 6 -+# define PR_SET_MM_BRK 7 -+# define PR_SET_MM_ARG_START 8 -+# define PR_SET_MM_ARG_END 9 -+# define PR_SET_MM_ENV_START 10 -+# define PR_SET_MM_ENV_END 11 -+# define PR_SET_MM_AUXV 12 -+# define PR_SET_MM_EXE_FILE 13 -+ -+/* -+ * Set specific pid that is allowed to ptrace the current task. -+ * A value of 0 mean "no process". -+ */ -+#define PR_SET_PTRACER 0x59616d61 -+# define PR_SET_PTRACER_ANY ((unsigned long)-1) -+ -+#define PR_SET_CHILD_SUBREAPER 36 -+#define PR_GET_CHILD_SUBREAPER 37 -+ -+/* -+ * If no_new_privs is set, then operations that grant new privileges (i.e. -+ * execve) will either fail or not grant them. This affects suid/sgid, -+ * file capabilities, and LSMs. -+ * -+ * Operations that merely manipulate or drop existing privileges (setresuid, -+ * capset, etc.) will still work. Drop those privileges if you want them gone. -+ * -+ * Changing LSM security domain is considered a new privilege. So, for example, -+ * asking selinux for a specific new context (e.g. with runcon) will result -+ * in execve returning -EPERM. -+ * -+ * See Documentation/prctl/no_new_privs.txt for more details. -+ */ -+#define PR_SET_NO_NEW_PRIVS 38 -+#define PR_GET_NO_NEW_PRIVS 39 -+ -+#define PR_GET_TID_ADDRESS 40 -+ - #endif /* _LINUX_PRCTL_H */ -diff --git a/libcap/include/linux/securebits.h b/libcap/include/uapi/linux/securebits.h -index 3340617..985aac9 100644 ---- a/libcap/include/linux/securebits.h -+++ b/libcap/include/uapi/linux/securebits.h -@@ -1,14 +1,11 @@ --#ifndef _LINUX_SECUREBITS_H --#define _LINUX_SECUREBITS_H 1 -+#ifndef _UAPI_LINUX_SECUREBITS_H -+#define _UAPI_LINUX_SECUREBITS_H - - /* Each securesetting is implemented using two bits. One bit specifies - whether the setting is on or off. The other bit specify whether the - setting is locked or not. A setting which is locked cannot be - changed from user-level. */ - #define issecure_mask(X) (1 << (X)) --#ifdef __KERNEL__ --#define issecure(X) (issecure_mask(X) & current_cred_xxx(securebits)) --#endif - - #define SECUREBITS_DEFAULT 0x00000000 - -@@ -51,4 +48,4 @@ - issecure_mask(SECURE_KEEP_CAPS)) - #define SECURE_ALL_LOCKS (SECURE_ALL_BITS << 1) - --#endif /* !_LINUX_SECUREBITS_H */ -+#endif /* _UAPI_LINUX_SECUREBITS_H */ --- -cgit v0.9.2 diff --git a/extra/amule/PKGBUILD b/extra/amule/PKGBUILD index 3be84143d..947b841d3 100644 --- a/extra/amule/PKGBUILD +++ b/extra/amule/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 203013 2013-12-31 17:11:59Z giovanni $ +# $Id: PKGBUILD 203346 2014-01-08 13:17:00Z giovanni $ # Maintainer: Giovanni Scafora # Contributor: Henrik Ronellenfitsch # Contributor: Alessio Sergi @@ -6,7 +6,7 @@ # Contributor: Anatol Pomozov pkgname=amule -pkgver=10829 +pkgver=10830 pkgrel=1 pkgdesc="An eMule-like client for ed2k p2p network" arch=('i686' 'x86_64') @@ -17,7 +17,7 @@ install=amule.install source=("http://amule.sourceforge.net/tarballs/aMule-SVN-r${pkgver}.tar.bz2" 'amuled.systemd' 'amuleweb.systemd') -md5sums=('843693d449b81899267d6756ce55a6e0' +md5sums=('8ba572ed1c87909ee24652d96f93dc40' '59772c41860e238f1c822feb8ca8d47f' '05975c5d94bfc41fddb894d98b1115d5') diff --git a/extra/calligra/PKGBUILD b/extra/calligra/PKGBUILD index 0045ad4b5..176d85456 100644 --- a/extra/calligra/PKGBUILD +++ b/extra/calligra/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 200653 2013-12-01 09:50:18Z andyrtr $ +# $Id: PKGBUILD 203352 2014-01-08 14:45:06Z lcarlier $ # Maintainer: Andrea Scarpino # Contributor: Ronald van Haren @@ -18,13 +18,13 @@ pkgname=('calligra-braindump' 'calligra-stage' 'calligra-words') pkgver=2.7.5 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') url='http://www.calligra-suite.org/' license=('FDL1.2' 'GPL2' 'LGPL') makedepends=('cmake' 'automoc4' 'boost' 'kdepimlibs' 'eigen2' 'kdeedu-marble' 'lcms2' 'libmariadbclient' 'freetds' 'xbase' 'libwpg' 'opencolorio' - 'libwps' 'gsl' 'glew' 'fftw' 'opengtl' 'poppler-qt' 'libkdcraw' + 'libwps' 'gsl' 'glew' 'fftw' 'poppler-qt' 'libkdcraw' 'openjpeg' 'kdegraphics-okular' 'pstoedit' 'vc') groups=('calligra') source=("http://download.kde.org/stable/${pkgbase}-${pkgver}/${pkgbase}-${pkgver}.tar.xz") @@ -148,7 +148,7 @@ package_calligra-stage() { package_calligra-krita() { pkgdesc="Edit and paint images" depends=('calligra-plugins' 'kdebase-runtime' 'eigen2' - 'opencolorio' 'libkdcraw' 'fftw' 'glew' 'opengtl') + 'opencolorio' 'libkdcraw' 'fftw' 'glew') conflicts=('koffice-krita' 'calligra-krita-doc') replaces=('koffice-krita' 'calligra-krita-doc') install=calligra-krita.install diff --git a/extra/clamav/PKGBUILD b/extra/clamav/PKGBUILD index 4b7a8e00a..affde1857 100644 --- a/extra/clamav/PKGBUILD +++ b/extra/clamav/PKGBUILD @@ -1,36 +1,36 @@ -# $Id: PKGBUILD 197893 2013-10-30 11:31:17Z allan $ +# $Id: PKGBUILD 203336 2014-01-08 07:29:58Z bisson $ # Contributor: Dale Blount # Contributor: Gregor Ibic # Maintainer: Gaetan Bisson pkgname=clamav pkgver=0.98 -pkgrel=1 +pkgrel=2 pkgdesc='Anti-virus toolkit for Unix' url='http://www.clamav.net/' license=('GPL') arch=('i686' 'x86_64') -depends=('bzip2' 'libltdl') -backup=('etc/logrotate.d/clamav') +depends=('bzip2' 'libltdl' 'gcc-libs') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" - 'service' - 'service.fresh' 'logrotate' 'tmpfiles.d' - 'config.patch') + 'clamd.conf' + 'freshclam.conf' + 'clamd.service' + 'freshclamd.service') sha1sums=('1e6a7284721387646c713a8d32fa8b5a897985db' - 'b6ac0c5de1e5b41232b10d4f84e86201c370eaeb' - 'cda9a087e5593992150cb456e34c5f6f589aca82' 'bb488a56b0f6a0760446cde89c1e3321e2717b78' 'a224ea9b4d0f4f196827347d54bed51e11c197ea' - '00dfadd93d11186793cb1161745f9dd7370beb99') + '887f624eb305f2446f55d8339e2972ad0cfe2b79' + 'b767837d0279ad30b92c314cb762b73e5ad0415e' + 'b6ac0c5de1e5b41232b10d4f84e86201c370eaeb' + 'cda9a087e5593992150cb456e34c5f6f589aca82') -install=install +backup=('etc/clamav/clamd.conf' + 'etc/clamav/freshclam.conf' + 'etc/logrotate.d/clamav') -prepare() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 -i ../config.patch -} +install=install build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -48,8 +48,10 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install - install -Dm644 ../service.fresh "${pkgdir}"/usr/lib/systemd/system/freshclamd.service - install -Dm644 ../service "${pkgdir}"/usr/lib/systemd/system/clamd.service + install -Dm644 ../clamd.conf "${pkgdir}"/etc/clamav/clamd.conf + install -Dm644 ../freshclam.conf "${pkgdir}"/etc/clamav/freshclam.conf + install -Dm644 ../freshclamd.service "${pkgdir}"/usr/lib/systemd/system/freshclamd.service + install -Dm644 ../clamd.service "${pkgdir}"/usr/lib/systemd/system/clamd.service install -Dm644 ../tmpfiles.d "${pkgdir}"/usr/lib/tmpfiles.d/clamav.conf install -Dm644 ../logrotate "${pkgdir}"/etc/logrotate.d/clamav diff --git a/extra/clamav/clamd.conf b/extra/clamav/clamd.conf new file mode 100644 index 000000000..d231ec9f0 --- /dev/null +++ b/extra/clamav/clamd.conf @@ -0,0 +1,6 @@ +LogFile /var/log/clamav/clamd.log +LogTime yes +PidFile /run/clamav/clamd.pid +TemporaryDirectory /tmp +LocalSocket /var/lib/clamav/clamd.sock +User clamav diff --git a/extra/clamav/clamd.service b/extra/clamav/clamd.service new file mode 100644 index 000000000..86608c40e --- /dev/null +++ b/extra/clamav/clamd.service @@ -0,0 +1,10 @@ +[Unit] +Description=clamav daemon + +[Service] +Type=forking +PIDFile=/run/clamav/clamd.pid +ExecStart=/usr/bin/clamd + +[Install] +WantedBy=multi-user.target diff --git a/extra/clamav/config.patch b/extra/clamav/config.patch deleted file mode 100644 index 0b552b3f9..000000000 --- a/extra/clamav/config.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -arU 0 old/etc/clamd.conf.sample new/etc/clamd.conf.sample ---- old/etc/clamd.conf.sample 2010-12-02 19:31:21.773357389 +0100 -+++ new/etc/clamd.conf.sample 2010-12-02 19:31:45.873357389 +0100 -@@ -14 +14 @@ --#LogFile /tmp/clamd.log -+LogFile /var/log/clamav/clamd.log -@@ -34 +34 @@ --#LogTime yes -+LogTime yes -@@ -61 +61 @@ --#PidFile /var/run/clamd.pid -+PidFile /run/clamav/clamd.pid -@@ -65 +65 @@ --#TemporaryDirectory /var/tmp -+TemporaryDirectory /tmp -@@ -80 +80 @@ --#LocalSocket /tmp/clamd.socket -+LocalSocket /var/lib/clamav/clamd.sock -@@ -190 +190 @@ --#User clamav -+User clamav -diff -arU 0 old/etc/freshclam.conf.sample new/etc/freshclam.conf.sample ---- old/etc/freshclam.conf.sample 2010-12-02 19:31:21.773357389 +0100 -+++ new/etc/freshclam.conf.sample 2010-12-02 19:31:51.190024057 +0100 -@@ -17 +17 @@ --#UpdateLogFile /var/log/freshclam.log -+UpdateLogFile /var/log/clamav/freshclam.log -@@ -121 +121 @@ --#NotifyClamd /path/to/clamd.conf -+NotifyClamd /etc/clamav/clamd.conf diff --git a/extra/clamav/freshclam.conf b/extra/clamav/freshclam.conf new file mode 100644 index 000000000..db513fd3e --- /dev/null +++ b/extra/clamav/freshclam.conf @@ -0,0 +1,3 @@ +UpdateLogFile /var/log/clamav/freshclam.log +DatabaseMirror database.clamav.net +NotifyClamd /etc/clamav/clamd.conf diff --git a/extra/clamav/freshclamd.service b/extra/clamav/freshclamd.service new file mode 100644 index 000000000..a0a72c2e6 --- /dev/null +++ b/extra/clamav/freshclamd.service @@ -0,0 +1,10 @@ +[Unit] +Description=clamav updater + +[Service] +Type=forking +PIDFile=/run/clamav/freshclam.pid +ExecStart=/usr/bin/freshclam -d -p /run/clamav/freshclam.pid + +[Install] +WantedBy=multi-user.target diff --git a/extra/clamav/service b/extra/clamav/service deleted file mode 100644 index 86608c40e..000000000 --- a/extra/clamav/service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=clamav daemon - -[Service] -Type=forking -PIDFile=/run/clamav/clamd.pid -ExecStart=/usr/bin/clamd - -[Install] -WantedBy=multi-user.target diff --git a/extra/clamav/service.fresh b/extra/clamav/service.fresh deleted file mode 100644 index a0a72c2e6..000000000 --- a/extra/clamav/service.fresh +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=clamav updater - -[Service] -Type=forking -PIDFile=/run/clamav/freshclam.pid -ExecStart=/usr/bin/freshclam -d -p /run/clamav/freshclam.pid - -[Install] -WantedBy=multi-user.target diff --git a/extra/enlightenment16/PKGBUILD b/extra/enlightenment16/PKGBUILD index 467f168f7..2e20fd922 100644 --- a/extra/enlightenment16/PKGBUILD +++ b/extra/enlightenment16/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 201529 2013-12-13 21:18:56Z ronald $ +# $Id: PKGBUILD 203364 2014-01-08 20:08:26Z ronald $ # Maintainer: Eric Bélanger pkgname=enlightenment16 _pkgname=enlightenment pkgver=1.0.13 _themever=1.0.1 -pkgrel=3 +pkgrel=4 pkgdesc="A fast, flexible, and very extensible Window Manager" arch=('i686' 'x86_64') url="http://www.enlightenment.org" license=('BSD' 'custom') depends=('libxinerama' 'imlib2' 'perl' 'pango' 'libxcomposite' \ 'libxrandr' 'libpulse') -replaces=('enlightenment<=1.0.13') +replaces=('enlightenment>=1.0.13') source=(http://downloads.sourceforge.net/sourceforge/${_pkgname}/e16-${pkgver}.tar.gz \ http://downloads.sourceforge.net/enlightenment/e16-themes-${_themever}.tar.gz) sha1sums=('bcb74385fb6d0732f735f27264ae02b539d136c9' diff --git a/extra/graphicsmagick/PKGBUILD b/extra/graphicsmagick/PKGBUILD index 09b123e8e..ab01cf9e2 100644 --- a/extra/graphicsmagick/PKGBUILD +++ b/extra/graphicsmagick/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 203038 2014-01-02 10:14:56Z bisson $ +# $Id: PKGBUILD 203337 2014-01-08 07:32:11Z bisson $ # Maintainer: Ronald van Haren # Maintainer: Gaetan Bisson # Contributor: Jaroslav Lichtblau @@ -6,7 +6,7 @@ pkgname=graphicsmagick pkgver=1.3.19 -pkgrel=1 +pkgrel=2 pkgdesc='Image processing system' url='http://www.graphicsmagick.org/' arch=('i686' 'x86_64') @@ -32,8 +32,7 @@ build() { --with-modules \ --with-perl \ --with-gs-font-dir=/usr/share/fonts/Type1 \ - --with-quantum-depth=32 \ - --with-openmp \ + --with-quantum-depth=16 \ --with-threads make } diff --git a/extra/libdrm/PKGBUILD b/extra/libdrm/PKGBUILD index 917431975..e5c9232ed 100644 --- a/extra/libdrm/PKGBUILD +++ b/extra/libdrm/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 200740 2013-12-03 19:25:26Z lcarlier $ +# $Id: PKGBUILD 203374 2014-01-08 20:56:58Z lcarlier $ # Maintainer: Jan de Groot pkgname=libdrm -pkgver=2.4.50 +pkgver=2.4.51 pkgrel=1 pkgdesc="Userspace interface to kernel DRM services" arch=(i686 x86_64) @@ -14,7 +14,7 @@ replaces=('libdrm-new' 'libdrm-nouveau') url="http://dri.freedesktop.org/" source=(http://dri.freedesktop.org/$pkgname/$pkgname-$pkgver.tar.bz2 COPYING) -sha256sums=('3823d24cda800c2cd36995e01830b890edb8fb1bebf97d5ea4318b8c3933b045' +sha256sums=('0bb75284ff56e1188cd2d0721f7cb8830aafcea5c6ca72dfd7b947ea652b951c' '9631d4f694952e3e6ae5a05534c2e93e994e47d3413677a3a00e45c8cef6db93') build() { diff --git a/extra/librsvg/PKGBUILD b/extra/librsvg/PKGBUILD index 59c078568..35829b988 100644 --- a/extra/librsvg/PKGBUILD +++ b/extra/librsvg/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 199931 2013-11-19 18:03:47Z heftig $ +# $Id: PKGBUILD 203350 2014-01-08 14:05:06Z heftig $ # Maintainer: Jan de Groot pkgname=librsvg pkgver=2.40.1 -pkgrel=1 +pkgrel=3 epoch=1 pkgdesc="A SVG viewing library" arch=(i686 x86_64) license=('LGPL') depends=('gdk-pixbuf2' 'pango' 'libcroco') -makedepends=('intltool' 'gtk3' 'gobject-introspection') +makedepends=('intltool' 'gtk3' 'gobject-introspection' 'vala') optdepends=('gtk3: for rsvg-view-3') options=('!emptydirs') url="https://live.gnome.org/LibRsvg" @@ -19,7 +19,7 @@ sha256sums=('8813b4fe776d5e7acbce28bacbaed30ccb0cec3734eb3632c711a16ebe2961d7') build() { cd $pkgname-$pkgver - ./configure --prefix=/usr --disable-static + ./configure --prefix=/usr --disable-static --enable-vala make } diff --git a/extra/nasm/PKGBUILD b/extra/nasm/PKGBUILD index 8ef22a31f..9d653f380 100644 --- a/extra/nasm/PKGBUILD +++ b/extra/nasm/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 192097 2013-08-05 20:37:17Z eric $ +# $Id: PKGBUILD 203305 2014-01-07 23:23:24Z eric $ # Maintainer: Stéphane Gaudreault # Contributor: Aaron Griffin pkgname=nasm -pkgver=2.10.09 +pkgver=2.11 pkgrel=1 pkgdesc="An 80x86 assembler designed for portability and modularity" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ license=('BSD') depends=('glibc') install=nasm.install source=(http://www.nasm.us/pub/nasm/releasebuilds/${pkgver}/${pkgname}-${pkgver}.tar.xz) -sha1sums=('062dd7315b307870917e708a96b6862481cefc54') +sha1sums=('7cc2568ce804fa17d972d159f161adc3f6d25750') build() { cd ${pkgname}-${pkgver} diff --git a/extra/opengtl/PKGBUILD b/extra/opengtl/PKGBUILD deleted file mode 100644 index 8d4402ab9..000000000 --- a/extra/opengtl/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# $Id: PKGBUILD 188593 2013-06-16 17:21:06Z foutrelis $ -# Maintainer: -# Contributor: Ronald van Haren -# Contributor: Andries Radu - -pkgname=opengtl -pkgver=0.9.18 -pkgrel=3 -pkgdesc="A set of libraries for using and integrating transformation algorithms (such as filter or color conversion) in graphics applications" -url="http://www.opengtl.org" -arch=('i686' 'x86_64') -license=('GPL') -depends=('gcc-libs' 'llvm-libs') -makedepends=('cmake' 'libpng' 'llvm') -optdepends=('libpng: for using the png extension') -source=(http://download.opengtl.org/OpenGTL-$pkgver.tar.bz2 - opengtl-0.9.18-llvm-3.3.patch - opengtl-0.9.18-memcpy.patch) -sha256sums=('f094b3d2a1a60519975bb3badc05e704f2b93c7a3d2cb753041f2ff27cfcd9f8' - 'c43418bc039660ae86cb86b8b8175342793cb1361c699faa9b6342bc896e3d6c' - '357cc2e538bbaaffe7d58956959d8a7fbae09741d4a87488a5a8c51ec645d23a') - -prepare() { - mkdir build - - # Fix build with LLVM 3.3 (patch from Fedora) - patch -d OpenGTL-$pkgver -Np1 -i "$srcdir/opengtl-0.9.18-llvm-3.3.patch" - - # Fix build with libpng 1.6 - patch -d OpenGTL-$pkgver -Np1 -i "$srcdir/opengtl-0.9.18-memcpy.patch" -} - -build() { - cd "$srcdir/build" - cmake ../OpenGTL-$pkgver \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=ON - make -} - -package() { - cd "$srcdir/build" - make DESTDIR="$pkgdir" install -} - -# vim:set ts=2 sw=2 et: diff --git a/extra/opengtl/opengtl-0.9.18-llvm-3.3.patch b/extra/opengtl/opengtl-0.9.18-llvm-3.3.patch deleted file mode 100644 index 80280979f..000000000 --- a/extra/opengtl/opengtl-0.9.18-llvm-3.3.patch +++ /dev/null @@ -1,732 +0,0 @@ -diff -up OpenGTL-0.9.18/CMakeLists.txt.jx OpenGTL-0.9.18/CMakeLists.txt ---- OpenGTL-0.9.18/CMakeLists.txt.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/CMakeLists.txt 2013-05-08 15:39:25.090057193 -0400 -@@ -78,8 +78,8 @@ else(MSVC) - FIND_LLVM_LIBS( ${LLVM_CONFIG_EXECUTABLE} "native bitwriter linker bitreader jit interpreter support ipo" LLVM_LIBS LLVM_NATIVE_OBJECTS ) - endif(MSVC) - --if( NOT MSVC AND NOT (LLVM_VERSION STREQUAL "3.1" OR LLVM_VERSION STREQUAL "3.0" OR LLVM_VERSION STREQUAL "3.2svn" OR LLVM_VERSION STREQUAL "3.2" ) ) # There is no way with MSVC to know the llvm version -- message(FATAL_ERROR "LLVM 3.0 or 3.1 or 3.2 is required.") -+if( NOT MSVC AND NOT (LLVM_VERSION STREQUAL "3.3svn" OR LLVM_VERSION STREQUAL "3.3" ) ) # There is no way with MSVC to know the llvm version -+ message(FATAL_ERROR "LLVM 3.3 is required.") - endif() - - if(MSVC) -diff -up OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/Compiler.cpp.jx OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/Compiler.cpp ---- OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/Compiler.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/Compiler.cpp 2013-05-08 15:39:25.091057197 -0400 -@@ -27,10 +27,10 @@ - #include - - // LLVM --#include -+#include - // #include --#include --#include -+#include -+#include - // #include - // Library Loader - #ifdef LLVM_27_OR_28 -@@ -214,7 +214,7 @@ bool Compiler::compile(bool _isStandardL - return success; - } - --#include -+#include - - bool Compiler::importModule(const GTLCore::String& name) - { -diff -up OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/ParserNG.cpp.jx OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/ParserNG.cpp ---- OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/ParserNG.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenCTL/OpenCTL/compiler/ParserNG.cpp 2013-05-08 15:39:25.091057197 -0400 -@@ -19,9 +19,9 @@ - - #include "ParserNG.h" - --#include --#include --#include -+#include -+#include -+#include - - #include - #include -diff -up OpenGTL-0.9.18/OpenCTL/OpenCTL/Module.cpp.jx OpenGTL-0.9.18/OpenCTL/OpenCTL/Module.cpp ---- OpenGTL-0.9.18/OpenCTL/OpenCTL/Module.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenCTL/OpenCTL/Module.cpp 2013-05-08 15:39:25.091057197 -0400 -@@ -38,7 +38,7 @@ - using namespace OpenCTL; - - // LLVM --#include -+#include - #include - #ifdef LLVM_27_OR_28 - #include -@@ -47,8 +47,7 @@ using namespace OpenCTL; - #include - #include - #endif --#include --#include -+#include - - struct Module::Private { - Private() : moduleData(0), isStandardLibrary(false) {} -diff -up OpenGTL-0.9.18/OpenCTL/OpenCTL/Program.cpp.jx OpenGTL-0.9.18/OpenCTL/OpenCTL/Program.cpp ---- OpenGTL-0.9.18/OpenCTL/OpenCTL/Program.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenCTL/OpenCTL/Program.cpp 2013-05-08 15:39:25.091057197 -0400 -@@ -20,16 +20,16 @@ - #include "Program.h" - - // LLVM --#include --#include --#include -+#include -+#include -+#include - #include - - // Passes - #include - #include - #include --#include -+#include - - // GTLCore - #include "GTLCore/Buffer.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/AccessorExpression.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/AccessorExpression.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/AccessorExpression.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/AccessorExpression.cpp 2013-05-08 15:39:25.092057201 -0400 -@@ -20,9 +20,9 @@ - #include "AccessorExpression.h" - - #include --#include --#include --#include -+#include -+#include -+#include - - #include "../LLVMBackend/CodeGenerator_p.h" - #include "../LLVMBackend/ExpressionResult_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/BinaryExpression.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/BinaryExpression.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/BinaryExpression.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/BinaryExpression.cpp 2013-05-08 15:39:25.092057201 -0400 -@@ -19,7 +19,7 @@ - - #include "BinaryExpression.h" - --#include -+#include - - #include - #include -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/CompoundExpression.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/CompoundExpression.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/CompoundExpression.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/CompoundExpression.cpp 2013-05-08 15:39:25.092057201 -0400 -@@ -19,10 +19,10 @@ - - #include "CompoundExpression.h" - --#include --#include --#include --#include -+#include -+#include -+#include -+#include - - #include "../LLVMBackend/CodeGenerator_p.h" - #include "../Debug.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/ConstantCompoundExpression.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/ConstantCompoundExpression.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/ConstantCompoundExpression.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/ConstantCompoundExpression.cpp 2013-05-08 15:39:25.092057201 -0400 -@@ -19,10 +19,10 @@ - - #include "ConstantCompoundExpression.h" - --#include --#include --#include --#include -+#include -+#include -+#include -+#include - - #include "../LLVMBackend/CodeGenerator_p.h" - #include "../Debug.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Expression.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Expression.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Expression.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Expression.cpp 2013-05-08 15:39:25.093057205 -0400 -@@ -19,11 +19,11 @@ - - #include "Expression.h" - --#include --#include --#include --#include --#include -+#include -+#include -+#include -+#include -+#include - - #include "GTLCore/LLVMBackend/CodeGenerator_p.h" - #include "GTLCore/LLVMBackend/ExpressionResult_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/FunctionDeclaration.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/FunctionDeclaration.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/FunctionDeclaration.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/FunctionDeclaration.cpp 2013-05-08 15:39:25.093057205 -0400 -@@ -19,10 +19,10 @@ - - #include "FunctionDeclaration.h" - --#include --#include --#include --#include -+#include -+#include -+#include -+#include - - #include - #include -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/GarbageCollectionStatement.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/GarbageCollectionStatement.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/GarbageCollectionStatement.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/GarbageCollectionStatement.cpp 2013-05-08 15:39:25.093057205 -0400 -@@ -21,8 +21,8 @@ - - #include - --#include --#include -+#include -+#include - - #include "../Type.h" - #include "../LLVMBackend/CodeGenerator_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Statement.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Statement.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Statement.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Statement.cpp 2013-05-08 15:39:25.093057205 -0400 -@@ -21,12 +21,12 @@ - - // LLVM - #include --#include --#include --#include --#include --#include --#include -+#include -+#include -+#include -+#include -+#include -+#include - - // GTLCore - #include -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Tree.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Tree.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Tree.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/AST/Tree.cpp 2013-05-08 15:39:25.094057209 -0400 -@@ -19,9 +19,9 @@ - - #include "Tree.h" - --#include --#include --#include -+#include -+#include -+#include - - #include "FunctionDeclaration.h" - -@@ -37,8 +37,8 @@ - #include "GTLCore/LLVMBackend/Visitor_p.h" - - #include "Expression.h" --#include --#include -+#include -+#include - - using namespace GTLCore::AST; - -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp 2013-05-08 15:39:25.094057209 -0400 -@@ -22,9 +22,9 @@ - #include - #include - --#include --#include --#include -+#include -+#include -+#include - #include - #include - -@@ -418,9 +418,9 @@ namespace GTLCore { - - #ifdef OPENGTL_ENABLE_DEBUG_OUTPUT - --#include --#include --#include -+#include -+#include -+#include - - void compareFunctionParameters( llvm::Value* func, const std::vector& params ) - { -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/FunctionCaller_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/FunctionCaller_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/FunctionCaller_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/FunctionCaller_p.cpp 2013-05-08 15:39:25.094057209 -0400 -@@ -21,9 +21,9 @@ - - #include - #include --#include -- --#include // <- I don't understand why I need to include that file to be able to display llvm::Type on the standard output -+#include -+#include -+#include // <- I don't understand why I need to include that file to be able to display llvm::Type on the standard output - - #include "VirtualMachine_p.h" - -@@ -35,7 +35,6 @@ - #include "LLVMBackend/GenerationContext_p.h" - #include "ModuleData_p.h" - #include "LLVMBackend/CodeGenerator_p.h" --#include - #include "Type_p.h" - #include - #include "PrimitiveTypesTraits_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/Function_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/Function_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/Function_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/Function_p.cpp 2013-05-08 15:39:25.094057209 -0400 -@@ -21,9 +21,9 @@ - - #include - --#include --#include --#include -+#include -+#include -+#include - - #include "Parameter.h" - -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/CodeGenerator_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/CodeGenerator_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/CodeGenerator_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/CodeGenerator_p.cpp 2013-05-08 15:39:25.095057213 -0400 -@@ -19,12 +19,12 @@ - - #include "CodeGenerator_p.h" - --#include --#include --#include --#include --#include --#include -+#include -+#include -+#include -+#include -+#include -+#include - - #include "GTLCore/Debug.h" - #include "ExpressionResult_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ContextManager_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ContextManager_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ContextManager_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ContextManager_p.cpp 2013-05-08 15:39:25.095057213 -0400 -@@ -20,7 +20,7 @@ - #include "ContextManager_p.h" - - #include --#include -+#include - - using namespace LLVMBackend; - -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionGenerationContext_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionGenerationContext_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionGenerationContext_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionGenerationContext_p.cpp 2013-05-08 15:39:25.095057213 -0400 -@@ -20,7 +20,7 @@ - #include "ExpressionGenerationContext_p.h" - - #include "GTLCore/Debug.h" --#include -+#include - - #include "GTLCore/Macros_p.h" - -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionResult_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionResult_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionResult_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/ExpressionResult_p.cpp 2013-05-08 15:39:25.095057213 -0400 -@@ -19,8 +19,8 @@ - - #include "ExpressionResult_p.h" - --#include "llvm/Constant.h" --#include "llvm/DerivedTypes.h" -+#include "llvm/IR/Constant.h" -+#include "llvm/IR/DerivedTypes.h" - - #include "../Type.h" - #include "../Type_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/GenerationContext_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/GenerationContext_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/GenerationContext_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/GenerationContext_p.cpp 2013-05-08 15:39:25.096057217 -0400 -@@ -22,8 +22,8 @@ - #include "GTLCore/ModuleData_p.h" - #include "GTLCore/Debug.h" - --#include "llvm/BasicBlock.h" --#include "llvm/Function.h" -+#include "llvm/IR/BasicBlock.h" -+#include "llvm/IR/Function.h" - - #include "GTLCore/AST/Statement.h" - -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/Visitor_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/Visitor_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/Visitor_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/LLVMBackend/Visitor_p.cpp 2013-05-08 15:39:25.096057217 -0400 -@@ -20,12 +20,12 @@ - #include "Visitor_p.h" - - // LLVM --#include --#include --#include --#include --#include --#include -+#include -+#include -+#include -+#include -+#include -+#include - - // GTLCore - #include "CodeGenerator_p.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/ModuleData_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/ModuleData_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/ModuleData_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/ModuleData_p.cpp 2013-05-08 15:41:21.422512114 -0400 -@@ -21,7 +21,7 @@ - - #include - --#include -+#include - #include - #include - #include -@@ -242,7 +242,7 @@ void ModuleData::doLink() - GTL_ASSERT( not m_llvmLinkedModule ); - m_llvmLinkedModule = m_llvmModule; - m_llvmModule = llvm::CloneModule( m_llvmModule ); -- llvm::Linker linker("", m_llvmLinkedModule); -+ llvm::Linker linker(m_llvmLinkedModule); - std::string errorMessage; - foreach( const llvm::Module* mod, m_linkModuleWith ) - { -@@ -270,18 +270,11 @@ void ModuleData::doLink() - hide.push_back(name); - } - } -- linker.LinkInModule( clone, &errorMessage ); -+ linker.linkInModule( clone, &errorMessage ); - - GTL_DEBUG("Linking error: " << errorMessage ); - delete clone; - } -- foreach( const GTLCore::String& mod, m_linkModuleWithArchives ) -- { -- bool v = false; -- linker.LinkInArchive( llvm::sys::Path( (const std::string&) mod), v); -- } -- -- linker.releaseModule(); - - // Hide symbols - foreach(GTLCore::String name, hide) -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/Type.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/Type.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/Type.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/Type.cpp 2013-05-08 15:39:25.096057217 -0400 -@@ -25,7 +25,7 @@ - - #include - --#include -+#include - - #include "wrappers/StructWrap.h" - #include "SharedPointer.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/Type_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/Type_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/Type_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/Type_p.cpp 2013-05-08 15:39:25.097057221 -0400 -@@ -30,8 +30,8 @@ - - using namespace GTLCore; - --#include --#include -+#include -+#include - - Type::StructDataMember::Information::~Information() - { -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/Value_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/Value_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/Value_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/Value_p.cpp 2013-05-08 15:39:25.097057221 -0400 -@@ -19,8 +19,8 @@ - - #include "Value_p.h" - --#include --#include -+#include -+#include - - #include "Debug.h" - #include "Value.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/VariableNG_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/VariableNG_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/VariableNG_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/VariableNG_p.cpp 2013-05-08 15:39:25.097057221 -0400 -@@ -19,8 +19,8 @@ - - #include "VariableNG_p.h" - --#include --#include -+#include -+#include - - #include "LLVMBackend/CodeGenerator_p.h" - #include "Debug.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/VirtualMachine_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLCore/VirtualMachine_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLCore/VirtualMachine_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLCore/VirtualMachine_p.cpp 2013-05-08 15:39:25.097057221 -0400 -@@ -21,10 +21,10 @@ - - // JIT - #include --#include --#include -+#include -+#include - #include --#include -+#include - #include - #include - #include -@@ -48,7 +48,8 @@ struct VirtualMachine::Private { - VirtualMachine* VirtualMachine::Private::virtualMachine = 0; - int VirtualMachine::Private::optimLevel = 2; - --void gtl_llvm_error_handler(void *user_data, const std::string& reason) -+void gtl_llvm_error_handler(void *user_data, const std::string& reason, -+ bool gen_crash_diag) - { - GTL_ABORT(reason); - } -@@ -58,11 +59,7 @@ VirtualMachine::VirtualMachine() : d(new - { - d->executionEngine = 0; - --#ifdef LLVM_27 -- llvm::llvm_install_error_handler(>l_llvm_error_handler); --#else -- llvm::install_fatal_error_handler(>l_llvm_error_handler); --#endif -+ llvm::install_fatal_error_handler(gtl_llvm_error_handler); - - llvm::llvm_start_multithreaded(); - -diff -up OpenGTL-0.9.18/OpenGTL/GTLFragment/Compiler_p.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLFragment/Compiler_p.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLFragment/Compiler_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLFragment/Compiler_p.cpp 2013-05-08 15:39:25.097057221 -0400 -@@ -19,7 +19,7 @@ - - #include "Compiler_p.h" - --#include -+#include - #include - - #include "GTLCore/AST/Expression.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLFragment/Library.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLFragment/Library.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLFragment/Library.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLFragment/Library.cpp 2013-05-08 15:39:25.098057225 -0400 -@@ -22,9 +22,9 @@ - - #include - --#include -+#include - #include --#include -+#include - - #include "GTLCore/CompilationMessage.h" - #include "GTLCore/Function.h" -diff -up OpenGTL-0.9.18/OpenGTL/GTLFragment/Wrapper.cpp.jx OpenGTL-0.9.18/OpenGTL/GTLFragment/Wrapper.cpp ---- OpenGTL-0.9.18/OpenGTL/GTLFragment/Wrapper.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenGTL/GTLFragment/Wrapper.cpp 2013-05-08 15:39:25.098057225 -0400 -@@ -29,7 +29,7 @@ - - #include "Library.h" - #include --#include -+#include - #include - - using namespace GTLFragment; -diff -up OpenGTL-0.9.18/OpenShiva/OpenShiva/CodeGenerator_p.cpp.jx OpenGTL-0.9.18/OpenShiva/OpenShiva/CodeGenerator_p.cpp ---- OpenGTL-0.9.18/OpenShiva/OpenShiva/CodeGenerator_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenShiva/OpenShiva/CodeGenerator_p.cpp 2013-05-08 15:39:25.098057225 -0400 -@@ -21,14 +21,14 @@ - - #include - --#include --#include --#include --#include --#include --#include --#include --#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include - - #include "GTLCore/LLVMBackend/CodeGenerator_p.h" - #include "GTLCore/LLVMBackend/ExpressionResult_p.h" -diff -up OpenGTL-0.9.18/OpenShiva/OpenShiva/ColorToPixelOverloadOperatorFactory_p.cpp.jx OpenGTL-0.9.18/OpenShiva/OpenShiva/ColorToPixelOverloadOperatorFactory_p.cpp ---- OpenGTL-0.9.18/OpenShiva/OpenShiva/ColorToPixelOverloadOperatorFactory_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenShiva/OpenShiva/ColorToPixelOverloadOperatorFactory_p.cpp 2013-05-08 15:39:25.098057225 -0400 -@@ -28,13 +28,13 @@ - #include "CodeGenerator_p.h" - #include - #include --#include --#include --#include --#include -+#include -+#include -+#include -+#include - #include - #include --#include -+#include - #include - - using namespace OpenShiva; -diff -up OpenGTL-0.9.18/OpenShiva/OpenShiva/Kernel.cpp.jx OpenGTL-0.9.18/OpenShiva/OpenShiva/Kernel.cpp ---- OpenGTL-0.9.18/OpenShiva/OpenShiva/Kernel.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenShiva/OpenShiva/Kernel.cpp 2013-05-08 15:39:25.099057228 -0400 -@@ -22,7 +22,7 @@ - #include - #include - --#include -+#include - - #include "GTLCore/CompilationMessage.h" - #include "GTLCore/Function.h" -@@ -48,7 +48,7 @@ - #include "wrappers/ImageWrap_p.h" - #include "wrappers/RegionWrap_p.h" - #include --#include -+#include - - using namespace OpenShiva; - -diff -up OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelConvertExpressionFactory_p.cpp.jx OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelConvertExpressionFactory_p.cpp ---- OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelConvertExpressionFactory_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelConvertExpressionFactory_p.cpp 2013-05-08 15:39:25.099057228 -0400 -@@ -19,7 +19,8 @@ - - #include "PixelConvertExpressionFactory_p.h" - --#include -+#include -+#include - - #include "GTLCore/Type.h" - #include "GTLCore/AST/ConvertExpression.h" -@@ -34,7 +35,6 @@ - #include - #include - #include --#include - #include - - using namespace OpenShiva; -diff -up OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelVisitor_p.cpp.jx OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelVisitor_p.cpp ---- OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelVisitor_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenShiva/OpenShiva/PixelVisitor_p.cpp 2013-05-08 15:39:25.099057228 -0400 -@@ -20,11 +20,11 @@ - #include "PixelVisitor_p.h" - - // LLVM --#include --#include --#include --#include --#include -+#include -+#include -+#include -+#include -+#include - - #include "GTLCore/LLVMBackend/ExpressionResult_p.h" - #include "GTLCore/LLVMBackend/ExpressionGenerationContext_p.h" -diff -up OpenGTL-0.9.18/OpenShiva/OpenShiva/Wrapper_p.cpp.jx OpenGTL-0.9.18/OpenShiva/OpenShiva/Wrapper_p.cpp ---- OpenGTL-0.9.18/OpenShiva/OpenShiva/Wrapper_p.cpp.jx 2012-12-29 06:27:12.000000000 -0500 -+++ OpenGTL-0.9.18/OpenShiva/OpenShiva/Wrapper_p.cpp 2013-05-08 15:39:25.099057228 -0400 -@@ -22,9 +22,9 @@ - #include - #include - --#include --#include --#include -+#include -+#include -+#include - - #include "GTLCore/Function_p.h" - #include "GTLCore/Macros.h" diff --git a/extra/opengtl/opengtl-0.9.18-memcpy.patch b/extra/opengtl/opengtl-0.9.18-memcpy.patch deleted file mode 100644 index 3e6ecd557..000000000 --- a/extra/opengtl/opengtl-0.9.18-memcpy.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -r 99a2017746c0 Extensions/PngDC/PngDC.cpp ---- a/Extensions/PngDC/PngDC.cpp Wed Jan 30 05:28:12 2013 +1100 -+++ b/Extensions/PngDC/PngDC.cpp Tue Apr 16 01:59:10 2013 +1000 -@@ -20,6 +20,7 @@ - #include "PngDC.h" - - #include -+#include - - #include - diff --git a/extra/seahorse/PKGBUILD b/extra/seahorse/PKGBUILD index 6a0f7a8f5..924f58be1 100644 --- a/extra/seahorse/PKGBUILD +++ b/extra/seahorse/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 198425 2013-10-30 14:47:52Z allan $ +# $Id: PKGBUILD 203359 2014-01-08 18:28:24Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) # Contributor: Jan de Groot # Contributor: Michel Brabants pkgname=seahorse -pkgver=3.10.1 +pkgver=3.10.2 pkgrel=1 pkgdesc="GNOME application for managing PGP keys." arch=(i686 x86_64) @@ -19,7 +19,7 @@ groups=(gnome-extra) install=seahorse.install source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz seahorse-ssh-askpass.sh) -sha256sums=('1df307481988c272d5648a335b2e8bb545b568a00c3f2ca2f3aa732badb46985' +sha256sums=('89cabf19f77a55f220bc61a3b97e4db845a0980f0f1d9c66147cc9a4ced8cd16' '400ea9a6084acc93f1dbd4223b95622bbd48071b763063328efba00de378b68c') build() { diff --git a/libre-testing/ath9k-htc-firmware-git/LICENSE b/libre-testing/ath9k-htc-firmware-git/LICENSE deleted file mode 100644 index 7668bcb97..000000000 --- a/libre-testing/ath9k-htc-firmware-git/LICENSE +++ /dev/null @@ -1,33 +0,0 @@ -Copyright (c) 2013 Qualcomm Atheros, Inc. - -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted (subject to the limitations in the -disclaimer below) 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 Qualcomm Atheros nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - -NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE -GRANTED BY THIS LICENSE. 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. diff --git a/libre-testing/ath9k-htc-firmware-git/PKGBUILD b/libre-testing/ath9k-htc-firmware-git/PKGBUILD deleted file mode 100644 index ceee17e13..000000000 --- a/libre-testing/ath9k-htc-firmware-git/PKGBUILD +++ /dev/null @@ -1,81 +0,0 @@ -# Maintainer: André Silva -# Maintainer: Márcio Silva - -pkgname=ath9k-htc-firmware-git -pkgver=$(LC_ALL=C date -u +%Y%m%d) -pkgrel=1 -pkgdesc='Free firmware files for the Qualcomm Atheros AR7010 and AR9271 USB 802.11n NICs' -arch=('any') -url=('http://wireless.kernel.org/en/users/Drivers/ath9k_htc') -license=('BSD') -makedepends=('git' 'cmake' 'xtensa-unknown-elf-binutils' 'xtensa-unknown-elf-gcc') -conflicts=('ath9k-htc-firmware') -provides=('ath9k-htc-firmware') -source=("git://github.com/olerem/open-ath9k-htc-firmware" - #"git://github.com/qca/open-ath9k-htc-firmware" - 'LICENSE') -md5sums=('SKIP' - '5163b2711bc481c77045850610b7dd31') - -prepare() { - - cd $srcdir/open-ath9k-htc-firmware/target_firmware - mkdir -p build/{k2,magpie} - -} - -build() { - - cd $srcdir/open-ath9k-htc-firmware - - # use suspend_fix branch to fix "ath9k_htc: Target is unresponsive" - git checkout suspend_fix - - export CTARGET="xtensa-unknown-elf" - export CFLAGS="-mtext-section-literals -O2 -pipe --param=ssp-buffer-size=4" - export CXXFLAGS="${CFLAGS}" - - cat > target_firmware/build/toolchain.cmake < -#Contributor: Jussi Timperi - -pkgname=b43-tools-git -pkgver=20110214 -pkgrel=1 -pkgdesc="Tools for the Broadcom 43xx series WLAN chip." -arch=('i686' 'x86_64' 'ppc') -url="http://bu3sch.de/gitweb?p=b43-tools.git;a=summary" -license=('GPL2' 'GPL3') -depends=('python2') -makedepends=('git' 'bison' 'flex' 'python2') -provides=('b43-tools') -source=() -md5sums=() - -_gitroot="git://git.bu3sch.de/b43-tools.git" -_gitname="b43-tools" - -build() { - cd "$srcdir" - msg "Connecting to GIT server...." - - if [ -d $_gitname ] ; then - cd $_gitname && git pull origin - msg "The local files are updated." - else - git clone $_gitroot - fi - - msg "GIT checkout done or server timeout" - msg "Starting make..." - - rm -rf "$srcdir/$_gitname-build" - git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" - cd "$srcdir/$_gitname-build" - - sed -i -e 's/\/man\//\/share\/man\//g' fwcutter/Makefile - - make -C assembler - make -C disassembler - make -C fwcutter - make -C ssb_sprom -} - -package() { - cd $srcdir/b43-tools-build/debug/; python2 install.py install --root "$pkgdir/"; cd .. - - make -C assembler PREFIX="$pkgdir/usr/" install - make -C disassembler PREFIX="$pkgdir/usr/" install - make -C fwcutter PREFIX="$pkgdir/usr/" install - make -C ssb_sprom PREFIX="$pkgdir/usr/" install -} diff --git a/libre-testing/icecat/PKGBUILD b/libre-testing/icecat/PKGBUILD deleted file mode 100644 index b153ad518..000000000 --- a/libre-testing/icecat/PKGBUILD +++ /dev/null @@ -1,180 +0,0 @@ -# Maintainer: Márcio Silva -# Contributor (Parabola): Luke Shumaker -# Contributor (Parabola): fauno -# Contributor (Parabola): vando -# Contributor (Parabola): André Silva - -# Maintainer (ConnochaetOS): Henry Jensen - -# Maintainer (Arch) : Ionut Biru -# Contributor (Arch): Jakub Schmidtke - -# Contributor: Figue -# Thank you very much to the older contributors: -# Contributor: evr -# Contributor: Muhammad 'MJ' Jassim - -# Version Configuration ############################################## - -_pgo=false - -pkgname=icecat -pkgver=17.0.1 -pkgrel=2 - -###################################################################### - -if [[ -z $pkgbase ]]; then pkgbase=$pkgname; fi -if $_pgo; then pkgname+='-pgo'; fi -if [ "$pkgbase" != "$pkgname" ]; then - provides+=("$pkgbase=$pkgver") - conflicts+=("$pkgbase") -fi - -pkgdesc="The GNUzilla web browser, based on Mozilla Firefox." -arch=( - 'i686' - 'mips64el' - 'x86_64' -) -license=( - 'GPL2' - 'LGPL' - 'MPL' -) -depends=( - 'alsa-lib' - 'dbus-glib' - 'desktop-file-utils' - 'gtk2' - 'hicolor-icon-theme' - 'hunspell' - 'libevent' - 'libnotify' - 'libvpx' - 'libxt' - 'mime-types' - 'mozilla-common' - 'mozilla-searchplugins' - 'nss>=3.13.3' - 'sqlite' - 'startup-notification' -) -makedepends=( - 'autoconf2.13' - 'diffutils' - 'imagemagick' - 'imake' - 'libidl2' - 'librsvg' - 'libxslt' - 'mesa' - 'python2' - 'unzip' - 'wireless_tools' - 'zip' -) -[[ $CARCH != mips64el ]] && makedepends+=('yasm') -if $_pgo; then - makedepends+=('xorg-server-xvfb') - options+=(!ccache) -fi -optdepends=('wireless_tools: Location detection via available WiFi networks') -url=http://www.gnu.org/software/gnuzilla/ -install=firefox.install -options=(!emptydirs) -source=(ftp://ftp.gnu.org/gnu/gnuzilla/${pkgver::4}/$pkgname-$pkgver.tar.gz - mozilla-bug-756390.patch::https://bugzilla.mozilla.org/attachment.cgi?id=629706 - bug-xulrunner-copy-stub.patch libre.patch mozconfig.pgo - mozconfig $pkgbase.desktop firefox-install-dir.patch vendor.js shared-libs.patch) -md5sums=('c88a29aa92fc41a07e777a0e63ac5f7e' - '78bbfc17be8ef2104699875300a22316' - '3009b176cc5f9b1e416b1bf7c45b064b' - '6e9f9c6e8c63333e708d7d9e4f4ca161' - 'e4cd438a0b2a42dfb14bc7716e901e5f' - 'd71509923cfede3e634756fee899e492' - 'daa249d183fcf09942ff30db1b279f1e' - '150ac0fb3ac7b2114c8e8851a9e0516c' - '09428128596f92b46caaba5852738f8e' - '52e52f840a49eb1d14be1c0065b03a93') - -build() { - mv $pkgname-$pkgver mozilla-release - cd mozilla-release - - cp ../mozconfig .mozconfig - if $_pgo; then cat ../mozconfig.pgo >> .mozconfig; fi - patch -Np1 -i ../firefox-install-dir.patch - patch -Np1 -i ../shared-libs.patch - patch -Np1 -i ../libre.patch - patch -Np1 -i ../bug-xulrunner-copy-stub.patch - patch -Np1 -i ../mozilla-bug-756390.patch - - # Fix PRE_RELEASE_SUFFIX - sed -i '/^PRE_RELEASE_SUFFIX := ""/s/ ""//' \ - browser/base/Makefile.in - - # This is a bug, we should fix it. - if [[ $CARCH == mips64el ]]; then - # Fix MIPS N32 support. - sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \ - js/src/assembler/wtf/Platform.h - # Disable JIT. - sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ - js/src/assembler/wtf/Platform.h - sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.in - echo 'ac_add_options --disable-methodjit' >> .mozconfig - echo 'ac_add_options --disable-tracejit' >> .mozconfig - echo 'ac_add_options --disable-jemalloc' >> .mozconfig - fi - - export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$pkgbase" - export PYTHON="/usr/bin/python2" - export MOZ_MAKE_FLAGS="$MAKEFLAGS" - unset MAKEFLAGS - - if $_pgo; then - export MOZ_PGO=1 - export DISPLAY=:99 - Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY & - fi - - _fail=0 - make -f client.mk build || _fail=1 - - if $_pgo; then - kill $! || true - fi - return $_fail -} - -package() { - cd mozilla-release - make -j1 -f client.mk DESTDIR="$pkgdir" install - - install -Dm644 ../vendor.js "$pkgdir/usr/lib/$pkgbase/defaults/preferences/vendor.js" - - brandingdir=browser/branding/unofficial - for i in 16 32 48; do - install -Dm644 $brandingdir/default$i.png \ - "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgbase.png" - done - - install -Dm644 ../$pkgbase.desktop \ - "$pkgdir/usr/share/applications/$pkgbase.desktop" - - # Use system-provided dictionaries - rm -rf "$pkgdir"/usr/lib/$pkgbase/{dictionaries,hyphenation} - ln -s /usr/share/hunspell "$pkgdir/usr/lib/$pkgbase/dictionaries" - ln -s /usr/share/hyphen "$pkgdir/usr/lib/$pkgbase/hyphenation" - # use mozilla-searchplugins - rm -rf "$pkgdir"/usr/lib/$pkgbase/searchplugins - ln -s /usr/lib/mozilla/searchplugins "$pkgdir/usr/lib/$pkgbase/searchplugins" - - # We don't want the development stuff - rm -r "$pkgdir"/usr/{include,lib/$pkgbase-devel,share/idl} - - #workaround for now - #https://bugzilla.mozilla.org/show_bug.cgi?id=658850 - ln -sf $pkgbase "$pkgdir/usr/lib/$pkgbase/$pkgbase-bin" -} diff --git a/libre-testing/icecat/bug-xulrunner-copy-stub.patch b/libre-testing/icecat/bug-xulrunner-copy-stub.patch deleted file mode 100644 index 8ccf127df..000000000 --- a/libre-testing/icecat/bug-xulrunner-copy-stub.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/browser/app/Makefile.in -+++ b/browser/app/Makefile.in -@@ -233,7 +233,7 @@ - else - ifdef LIBXUL_SDK - libs:: -- cp $(LIBXUL_DIST)/bin/$(XULRUNNER_STUB_NAME)$(BIN_SUFFIX) $(DIST)/bin/firefox$(BIN_SUFFIX) -+ cp $(LIBXUL_DIST)/bin/$(XULRUNNER_STUB_NAME)$(BIN_SUFFIX) $(DIST)/bin/icecat$(BIN_SUFFIX) - endif - endif - diff --git a/libre-testing/icecat/firefox-install-dir.patch b/libre-testing/icecat/firefox-install-dir.patch deleted file mode 100644 index 9c115f0eb..000000000 --- a/libre-testing/icecat/firefox-install-dir.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -Nur mozilla-release.orig/config/baseconfig.mk mozilla-release/config/baseconfig.mk ---- mozilla-release.orig/config/baseconfig.mk 2012-10-09 07:34:41.762092280 +0000 -+++ mozilla-release/config/baseconfig.mk 2012-10-09 07:40:53.052771576 +0000 -@@ -1,9 +1,9 @@ - INCLUDED_AUTOCONF_MK = 1 - --includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) -+includedir := $(includedir)/$(MOZ_APP_NAME) -+idldir = $(datadir)/idl/$(MOZ_APP_NAME) -+installdir = $(libdir)/$(MOZ_APP_NAME) -+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel - DIST = $(DEPTH)/dist - - # We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't -diff -Nur mozilla-release.orig/js/src/config/baseconfig.mk mozilla-release/js/src/config/baseconfig.mk ---- mozilla-release.orig/js/src/config/baseconfig.mk 2012-10-09 07:34:58.411973276 +0000 -+++ mozilla-release/js/src/config/baseconfig.mk 2012-10-09 07:39:55.143186168 +0000 -@@ -1,7 +1,7 @@ - INCLUDED_AUTOCONF_MK = 1 - --installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) -+installdir = $(libdir)/$(MOZ_APP_NAME) -+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel - - ifneq (,$(filter /%,$(TOP_DIST))) - DIST = $(TOP_DIST) diff --git a/libre-testing/icecat/firefox.install b/libre-testing/icecat/firefox.install deleted file mode 100644 index c1fe8284a..000000000 --- a/libre-testing/icecat/firefox.install +++ /dev/null @@ -1,13 +0,0 @@ -post_install() { - update-desktop-database -q - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - post_install $1 -} - diff --git a/libre-testing/icecat/icecat.desktop b/libre-testing/icecat/icecat.desktop deleted file mode 100644 index 668d5104f..000000000 --- a/libre-testing/icecat/icecat.desktop +++ /dev/null @@ -1,116 +0,0 @@ -[Desktop Entry] -Name=IceCat -GenericName=Web Browser -GenericName[af]=Web Blaaier -GenericName[ar]=متصفح ويب -GenericName[az]=Veb Səyyahı -GenericName[bg]=Браузър -GenericName[bn]=ওয়েব ব্রাউজার -GenericName[br]=Furcher ar Gwiad -GenericName[bs]=WWW Preglednik -GenericName[ca]=Fullejador web -GenericName[cs]=WWW prohlížeč -GenericName[cy]=Porydd Gwe -GenericName[da]=Browser -GenericName[de]=Web-Browser -GenericName[el]=Περιηγητής Ιστού -GenericName[eo]=TTT-legilo -GenericName[es]=Navegador web -GenericName[et]=Veebilehitseja -GenericName[eu]=Web arakatzailea -GenericName[fa]=مرورگر وب -GenericName[fi]=WWW-selain -GenericName[fo]=Alnótsfar -GenericName[fr]=Navigateur web -GenericName[gl]=Navegador Web -GenericName[he]=דפדפן אינטרנט -GenericName[hi]=वेब ब्राउज़र -GenericName[hr]=Web preglednik -GenericName[hu]=Webböngésző -GenericName[is]=Vafri -GenericName[it]=Browser Web -GenericName[ja]=ウェブブラウザ -GenericName[ko]=웹 브라우저 -GenericName[lo]=ເວັບບຣາວເຊີ -GenericName[lt]=Žiniatinklio naršyklė -GenericName[lv]=Web Pārlūks -GenericName[mk]=Прелистувач на Интернет -GenericName[mn]=Веб-Хөтөч -GenericName[nb]=Nettleser -GenericName[nds]=Nettkieker -GenericName[nl]=Webbrowser -GenericName[nn]=Nettlesar -GenericName[nso]=Seinyakisi sa Web -GenericName[pa]=ਵੈਬ ਝਲਕਾਰਾ -GenericName[pl]=Przeglądarka WWW -GenericName[pt]=Navegador Web -GenericName[pt_BR]=Navegador Web -GenericName[ro]=Navigator de web -GenericName[ru]=Веб-браузер -GenericName[se]=Fierpmádatlogan -GenericName[sk]=Webový prehliadač -GenericName[sl]=Spletni brskalnik -GenericName[sr]=Веб претраживач -GenericName[sr@Latn]=Veb pretraživač -GenericName[ss]=Ibrawuza yeWeb -GenericName[sv]=Webbläsare -GenericName[ta]=வலை உலாவி -GenericName[tg]=Тафсиргари вэб -GenericName[th]=เว็บบราวเซอร์ -GenericName[tr]=Web Tarayıcı -GenericName[uk]=Навігатор Тенет -GenericName[uz]=Веб-браузер -GenericName[ven]=Buronza ya Webu -GenericName[vi]=Trình duyệt Web -GenericName[wa]=Betchteu waibe -GenericName[xh]=Umkhangeli zincwadi we Web -GenericName[zh_CN]=网页浏览器 -GenericName[zh_TW]=網頁瀏覽器 -GenericName[zu]=Umcingi we-Web -Comment=Browse the World Wide Web -Comment[ar]=تصفح الشبكة العنكبوتية العالمية -Comment[ast]=Restola pela Rede -Comment[bn]=ইন্টারনেট ব্রাউজ করুন -Comment[ca]=Navegueu per la web -Comment[cs]=Prohlížení stránek World Wide Webu -Comment[da]=Surf på internettet -Comment[de]=Im Internet surfen -Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web) -Comment[es]=Navegue por la web -Comment[et]=Lehitse veebi -Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید -Comment[fi]=Selaa Internetin WWW-sivuja -Comment[fr]=Naviguer sur le Web -Comment[gl]=Navegar pola rede -Comment[he]=גלישה ברחבי האינטרנט -Comment[hr]=Pretražite web -Comment[hu]=A világháló böngészése -Comment[it]=Esplora il web -Comment[ja]=ウェブを閲覧します -Comment[ko]=웹을 돌아 다닙니다 -Comment[ku]=Li torê bigere -Comment[lt]=Naršykite internete -Comment[nb]=Surf på nettet -Comment[nl]=Verken het internet -Comment[nn]=Surf på nettet -Comment[no]=Surf på nettet -Comment[pl]=Przeglądanie stron WWW -Comment[pt]=Navegue na Internet -Comment[pt_BR]=Navegue na Internet -Comment[ro]=Navigați pe Internet -Comment[ru]=Доступ в Интернет -Comment[sk]=Prehliadanie internetu -Comment[sl]=Brskajte po spletu -Comment[sv]=Surfa på webben -Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ -Comment[uk]=Перегляд сторінок Інтернету -Comment[vi]=Để duyệt các trang web -Comment[zh_CN]=浏览互联网 -Comment[zh_TW]=瀏覽網際網路 -Exec=/usr/lib/icecat/icecat %u -Icon=icecat -Terminal=false -Type=Application -MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https; -StartupNotify=true -Categories=Network;WebBrowser; diff --git a/libre-testing/icecat/libre.patch b/libre-testing/icecat/libre.patch deleted file mode 100644 index 497b8cd10..000000000 --- a/libre-testing/icecat/libre.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -urN a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js ---- a/browser/app/profile/firefox.js -+++ b/browser/app/profile/firefox.js -@@ -1150,11 +1150,9 @@ - // (This is intentionally on the high side; see bug 746055.) - pref("image.mem.max_decoded_image_kb", 256000); - --// Example social provider --pref("social.manifest.facebook", "{\"origin\":\"https://www.facebook.com\",\"name\":\"Facebook Messenger\",\"workerURL\":\"https://www.facebook.com/desktop/fbdesktop2/socialfox/fbworker.js.php\",\"iconURL\":\"data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAAX0lEQVQ4jWP4%2F%2F8%2FAyUYTFhHzjgDxP9JxGeQDSBVMxgTbUBCxer%2Fr999%2BQ8DJBuArJksA9A10s8AXIBoA0B%2BR%2FY%2FjD%2BEwoBoA1yT5v3PbdmCE8MAshhID%2FUMoDgzUYIBj0Cgi7ar4coAAAAASUVORK5CYII%3D\",\"sidebarURL\":\"https://www.facebook.com/desktop/fbdesktop2/?socialfox=true\"}"); - // Comma-separated list of nsIURI::prePaths that are allowed to activate - // built-in social functionality. --pref("social.activation.whitelist", "https://www.facebook.com"); -+pref("social.activation.whitelist", ""); - pref("social.sidebar.open", true); - pref("social.sidebar.unload_timeout_ms", 10000); - pref("social.active", false); -diff -urN a/browser/locales/en-US/chrome/browser-region/region.properties b/browser/locales/en-US/chrome/browser-region/region.properties ---- a/browser/locales/en-US/chrome/browser-region/region.properties -+++ b/browser/locales/en-US/chrome/browser-region/region.properties -@@ -10,23 +10,11 @@ - browser.search.order.2=Google - browser.search.order.3=Yahoo - --# This is the default set of web based feed handlers shown in the reader --# selection UI --browser.contentHandlers.types.0.title=Bloglines --browser.contentHandlers.types.0.uri=http://www.bloglines.com/login?r=/sub/%s --browser.contentHandlers.types.1.title=My Yahoo --browser.contentHandlers.types.1.uri=http://add.my.yahoo.com/rss?url=%s --browser.contentHandlers.types.2.title=Google --browser.contentHandlers.types.2.uri=http://fusion.google.com/add?feedurl=%s -- --# Keyword URL (for location bar searches) --keyword.URL=http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q= -- - # URL for site-specific search engines - # TRANSLATION NOTE: {moz:domain} and {searchTerms} are placeholders for the site - # to be searched and the user's search query. Place them in the appropriate location - # for your locale's URL but do not translate them. --browser.search.siteSearchURL=https://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&q=site%3A{moz:domain}+{searchTerms} -+browser.search.siteSearchURL=https://duckduckgo.com/html/?q=site%3A{moz:domain}+{searchTerms} - - # increment this number when anything gets changed in the list below. This will - # cause Firefox to re-read these prefs and inject any new handlers into the -@@ -34,3 +22,11 @@ - # means that it's not possible to update the name of existing handler, so - # don't make any spelling errors here. - gecko.handlerService.defaultHandlersVersion=3 -+ -+# The default set of protocol handlers for irc: -+gecko.handlerService.schemes.irc.0.name=Freenode -+gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net/?channels=%s -+ -+# The default set of protocol handlers for ircs: -+gecko.handlerService.schemes.ircs.0.name=Freenode -+gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net/?channels=%s -diff -Nur a/dom/ipc/test.xul b/dom/ipc/test.xul ---- a/dom/ipc/test.xul -+++ b/dom/ipc/test.xul -@@ -294,6 +294,6 @@ - oncommand="document.getElementById('page').QueryInterface(Components.interfaces.nsIFrameLoaderOwner).frameLoader.delayRemoteDialogs = this.checked;"/> - - -- -+ -