[gnome-continuous-yocto/gnomeostree-3.28-rocko: 8267/8267] continuous: Import current state of meta-gnomeos



commit abe57577e8000d05480bd9ce34bd20d3dd026483
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Sat Dec 16 19:08:17 2017 +0000

    continuous: Import current state of meta-gnomeos
    
    As of commit 5e480082f1adc4bb79bad5f5e0e3b4a916347916.

 .gitignore                                         |    4 +-
 .gitmodules                                        |    4 +
 LAYERS                                             |    9 +
 meta-gnomeos/classes/gnomeos-contents.bbclass      |  235 ++++++++++
 meta-gnomeos/conf/distro/gnomeostreedistro.conf    |   45 ++
 meta-gnomeos/conf/layer.conf                       |    8 +
 .../autoconf-archive/autoconf-archive.inc          |   15 +
 .../autoconf-archive_2016.09.16.bb                 |   13 +
 .../cyrus-sasl/debian_patches_0009_sasldb_al.diff  |   14 +
 .../debian_patches_0014_avoid_pic_overwrite.diff   |   27 ++
 .../recipes-core/cyrus-sasl/cyrus-sasl_2.1.26.bb   |   47 ++
 .../recipes-core/gnome-ostree/gnome-ostree.bb      |   18 +
 meta-gnomeos/recipes-core/icu/icu.inc              |   55 +++
 .../icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch  |   28 ++
 .../icu/icu/0001-i18n-Drop-include-xlocale.h.patch |   31 ++
 .../recipes-core/icu/icu/fix-install-manx.patch    |   48 ++
 .../icu/icu/icu-pkgdata-large-cmd.patch            |   49 +++
 meta-gnomeos/recipes-core/icu/icu_58.2.bb.txt      |   29 ++
 .../recipes-core/images/gnomeos-contents-devel.bb  |   16 +
 .../images/gnomeos-contents-runtime.bb             |    8 +
 .../recipes-core/jpeg/libjpeg-turbo/fix-mips.patch |   45 ++
 .../recipes-core/jpeg/libjpeg-turbo_1.5.1.bb       |   51 +++
 ...-Store-EdDSA-session-key-in-secure-memory.patch |   39 ++
 .../libgcrypt/files/CVE-2017-7526.patch            |  455 ++++++++++++++++++++
 .../libgcrypt/files/add-pkgconfig-support.patch    |  177 ++++++++
 ...x-ICE-failure-on-mips-with-option-O-and-g.patch |   71 +++
 .../files/fix-undefined-reference-to-pthread.patch |   27 ++
 ...ix-building-error-with-O2-in-sysroot-path.patch |   32 ++
 meta-gnomeos/recipes-core/libgcrypt/libgcrypt.inc  |   50 +++
 .../recipes-core/libgcrypt/libgcrypt_1.7.3.bb      |    4 +
 meta-gnomeos/recipes-core/linux/files/9p.cfg       |    7 +
 meta-gnomeos/recipes-core/linux/files/drm.cfg      |    7 +
 meta-gnomeos/recipes-core/linux/files/fhandle.cfg  |    1 +
 meta-gnomeos/recipes-core/linux/files/kvm.cfg      |    6 +
 meta-gnomeos/recipes-core/linux/files/tmpfs.cfg    |    2 +
 meta-gnomeos/recipes-core/linux/files/uinput.cfg   |    3 +
 .../recipes-core/linux/linux-yocto-dev.bbappend    |    8 +
 meta-gnomeos/recipes-core/ninja/ninja_1.7.1.bb     |   29 ++
 .../recipes-core/nss-altfiles/nss-altfiles.bb      |   30 ++
 meta-gnomeos/recipes-core/ostree/ostree.bb         |   23 +
 .../perl-text-csv/perl-module-text-csv_1.32.bb     |   20 +
 .../tasks/task-gnomeos-contents-devel.bb           |  117 +++++
 .../tasks/task-gnomeos-contents-runtime.bb         |  137 ++++++
 meta-oe                                            |    1 +
 44 files changed, 2044 insertions(+), 1 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 94894d4..fc69a5d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,6 +14,8 @@ hob-image-*.bb
 *.orig
 *.rej
 *~
+!meta-gnomeos
+!meta-oe
 !meta-poky
 !meta-yocto
 !meta-yocto-bsp
@@ -24,4 +26,4 @@ documentation/user-manual/user-manual.tgz
 pull-*/
 bitbake/lib/toaster/contrib/tts/backlog.txt
 bitbake/lib/toaster/contrib/tts/log/*
-bitbake/lib/toaster/contrib/tts/.cache/*
\ No newline at end of file
+bitbake/lib/toaster/contrib/tts/.cache/*
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..780311c
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,4 @@
+[submodule "meta-oe"]
+       path = meta-oe
+       url = https://github.com/openembedded/meta-openembedded
+        branch = rocko
diff --git a/LAYERS b/LAYERS
new file mode 100644
index 0000000..6d1bbf4
--- /dev/null
+++ b/LAYERS
@@ -0,0 +1,9 @@
+meta
+meta-yocto
+meta-yocto-bsp
+meta-oe/meta-oe
+meta-oe/meta-python
+meta-oe/meta-ruby
+meta-oe/meta-networking
+meta-oe/meta-filesystems
+meta-gnomeos
diff --git a/meta-gnomeos/classes/gnomeos-contents.bbclass b/meta-gnomeos/classes/gnomeos-contents.bbclass
new file mode 100644
index 0000000..37c5829
--- /dev/null
+++ b/meta-gnomeos/classes/gnomeos-contents.bbclass
@@ -0,0 +1,235 @@
+#
+# Copyright (C) 2011 Colin Walters <walters verbum org>
+#
+inherit image
+
+PACKAGE_INSTALL += " \
+               task-gnomeos-contents-runtime \
+               ldd \
+               libltdl \
+               libicule \
+               "
+
+DEPENDS += "task-gnomeos-contents-runtime makedevs-native \
+       virtual/fakeroot-native \
+       "
+
+do_rootfs[umask] = "022"
+
+IMAGE_FSTYPES = "tar.gz"
+
+def gnomeos_get_devtable_list(d):
+    return bb.which(d.getVar('BBPATH', 1), 'files/device_table-minimal.txt')
+
+# Must call real_do_rootfs() from inside here, rather than as a separate
+# task, so that we have a single fakeroot context for the whole process.
+fakeroot prepare_rootfs () {
+        set -x
+        echo ${DEPLOY_DIR_IMAGE}
+        echo ${WORKDIR}
+        echo ${IMAGE_ROOTFS}
+
+       # Delete all of the legacy sysvinit scripts; we use systemd
+       rm -rf ${IMAGE_ROOTFS}/etc/init.d
+       rm -rf ${IMAGE_ROOTFS}/etc/rc*.d
+
+       # Empty out the default passwd file
+       rm -f ${IMAGE_ROOTFS}/etc/passwd ${IMAGE_ROOTFS}/etc/group \
+         ${IMAGE_ROOTFS}/etc/shadow ${IMAGE_ROOTFS}/etc/gshadow
+       # root has no password by default
+       cat > ${IMAGE_ROOTFS}/etc/passwd << EOF
+root::0:0:root:/root:/bin/sh
+EOF
+       cat > ${IMAGE_ROOTFS}/etc/group << EOF
+root:x:0:root
+EOF
+       touch ${IMAGE_ROOTFS}/etc/shadow ${IMAGE_ROOTFS}/etc/gshadow
+       chmod 0600 ${IMAGE_ROOTFS}/etc/shadow ${IMAGE_ROOTFS}/etc/gshadow
+       # Delete backup files
+       rm -f ${IMAGE_ROOTFS}/etc/passwd- ${IMAGE_ROOTFS}/etc/group- \
+         ${IMAGE_ROOTFS}/etc/shadow- ${IMAGE_ROOTFS}/etc/gshadow-
+
+       # Add "altfiles" NSS module to /etc/nsswitch.conf
+       sed -i -e '/^passwd:/cpasswd: files altfiles' \
+              -e '/^group:/cgroup: files altfiles' \
+               ${IMAGE_ROOTFS}/etc/nsswitch.conf
+
+       # Intersection of defaults between RHEL and Debian
+       cat > ${IMAGE_ROOTFS}/etc/hosts <<EOF
+127.0.0.1   localhost
+::1         localhost6 ip6-localhost
+EOF
+
+       # Ensure we're set up for systemd
+        echo "session optional pam_systemd.so" >> ${IMAGE_ROOTFS}/etc/pam.d/common-session 
+
+       # Adjustments for /etc -> {/var,/run} here
+       ln -sf /run/resolv.conf ${IMAGE_ROOTFS}/etc/resolv.conf
+
+       # Fix un-world-readable config file; no idea why this isn't. 
+       chmod a+r ${IMAGE_ROOTFS}/etc/securetty
+
+       # Clear out the default fstab; everything we need right now is mounted
+       # in the initramfs.
+       cat < /dev/null > ${IMAGE_ROOTFS}/etc/fstab
+
+       # Install defaults
+       rm -f ${IMAGE_ROOTFS}/etc/localtime
+       ln -s ../usr/share/zoneinfo/Europe/London ${IMAGE_ROOTFS}/etc/localtime
+       echo LANG=\"en_US.UTF-8\" > ${IMAGE_ROOTFS}/etc/locale.conf
+       
+       # Do UsrMove for bin and sbin
+        cd ${IMAGE_ROOTFS}/bin
+        for x in *; do
+          if test -L ${x} && test -x ../usr/bin/${x}; then
+           rm ${x}
+         else
+            mv ${x} ../usr/bin/${x}
+          fi
+        done
+        cd -
+       if test -d ${IMAGE_ROOTFS}/bin/.debug; then
+         mkdir -p ${IMAGE_ROOTFS}/usr/bin/.debug
+         mv ${IMAGE_ROOTFS}/bin/.debug/* ${IMAGE_ROOTFS}/usr/bin/.debug
+         rmdir ${IMAGE_ROOTFS}/bin/.debug
+       fi
+       rmdir ${IMAGE_ROOTFS}/bin
+       ln -s usr/bin ${IMAGE_ROOTFS}/bin
+       mv ${IMAGE_ROOTFS}/sbin/* ${IMAGE_ROOTFS}/usr/sbin
+       if test -d ${IMAGE_ROOTFS}/sbin/.debug; then
+         mkdir -p ${IMAGE_ROOTFS}/usr/sbin/.debug
+         mv ${IMAGE_ROOTFS}/sbin/.debug/* ${IMAGE_ROOTFS}/usr/sbin/.debug
+         rmdir ${IMAGE_ROOTFS}/sbin/.debug
+       fi
+       rmdir ${IMAGE_ROOTFS}/sbin
+       ln -s usr/sbin ${IMAGE_ROOTFS}/sbin
+       # Now, we need to fix up any symbolic links that were
+       # trying to do ../usr/
+       for d in ${IMAGE_ROOTFS}/usr/bin ${IMAGE_ROOTFS}/usr/sbin; do
+           find $d -maxdepth 1 -type l | while read f; do
+               target=$(readlink $f)
+               fixed_target=$(echo $target | sed -e 's,^[.][.]/usr,,')
+               ln -sf $fixed_target $f
+           done
+       done
+
+       # Undo libattr/libacl weirdness
+       #rm -f ${IMAGE_ROOTFS}/lib/lib{acl,attr}.{a,la}
+       #rm -f ${IMAGE_ROOTFS}/usr/lib/lib{acl,attr}.so
+       rm -f ${IMAGE_ROOTFS}/lib/libacl.a
+       rm -f ${IMAGE_ROOTFS}/lib/libacl.la
+       rm -f ${IMAGE_ROOTFS}/lib/libattr.a
+       rm -f ${IMAGE_ROOTFS}/lib/libattr.la
+       rm -f ${IMAGE_ROOTFS}/usr/lib/libacl.so
+       rm -f ${IMAGE_ROOTFS}/usr/lib/libattr.so
+
+       # Complete UsrMove for lib
+       mv ${IMAGE_ROOTFS}/lib/* ${IMAGE_ROOTFS}/usr/lib
+       if test -d ${IMAGE_ROOTFS}/lib/.debug; then
+         mkdir -p ${IMAGE_ROOTFS}/usr/lib/.debug
+         mv ${IMAGE_ROOTFS}/lib/.debug/* ${IMAGE_ROOTFS}/usr/lib/.debug
+         rmdir ${IMAGE_ROOTFS}/lib/.debug
+       fi
+       rmdir ${IMAGE_ROOTFS}/lib
+       ln -s usr/lib ${IMAGE_ROOTFS}/lib
+
+       # And now let's take the next logical step, merge /usr/sbin
+       # into /usr/bin.  Rusty Russell will be overjoyed:
+       # http://rusty.ozlabs.org/?p=236
+
+       if test -d ${IMAGE_ROOTFS}/usr/sbin/.debug; then
+         mkdir -p ${IMAGE_ROOTFS}/usr/bin/.debug
+         mv ${IMAGE_ROOTFS}/usr/sbin/.debug/* ${IMAGE_ROOTFS}/usr/bin/.debug
+         rmdir ${IMAGE_ROOTFS}/usr/sbin/.debug
+       fi
+        cd ${IMAGE_ROOTFS}/usr/sbin
+       for x in *; do
+          if test -L ${x} && test -x ../bin/${x}; then
+           rm ${x}
+         else
+           mv ${x} ../bin
+          fi
+       done
+        cd -
+       rmdir ${IMAGE_ROOTFS}/usr/sbin
+       ln -s bin ${IMAGE_ROOTFS}/usr/sbin
+
+       # Remove su; we only support pkexec
+       rm -f ${IMAGE_ROOTFS}/bin/su
+
+       # Remove all .la files
+       find ${IMAGE_ROOTFS}/usr/lib -name \*.la -delete
+
+       # And ensure systemd is /sbin/init
+       ln -s ../lib/systemd/systemd ${IMAGE_ROOTFS}/usr/bin/init
+
+       rm -rf ${WORKDIR}/contents
+       mkdir -m 0755 ${WORKDIR}/contents
+        cd ${WORKDIR}/contents
+
+       # The default toplevel directories used as mount targets
+       for d in dev proc run sys var; do
+           mkdir -m 0755 $d
+       done
+
+       # Special ostree mount
+       mkdir -m 0755 sysroot
+
+       # Some FHS targets; these all live in /var
+       ln -s var/opt opt
+       ln -s var/srv srv
+       ln -s var/mnt mnt
+       ln -s var/roothome root
+
+       # This one is dynamic, so just lives in /run
+       ln -s run/media media
+
+       # Special OSTree link, so it's /ostree both on
+       # the real disk and inside the chroot.
+       ln -s sysroot/ostree ostree
+
+       # /tmp is an empty mountpoint
+       mkdir tmp
+       
+       # By default, /home -> var/home -> ../sysroot/home
+       ln -s var/home home
+
+       # These are the only directories we take from the OE build
+        mv ${IMAGE_ROOTFS}/usr .
+       # Except /usr/local -> ../var/usrlocal
+       rm usr/local -rf
+       ln -s ../var/usrlocal usr/local
+        mv ${IMAGE_ROOTFS}/etc .
+        mv ${IMAGE_ROOTFS}/boot .
+       # Also move the toplevel compat links
+        mv ${IMAGE_ROOTFS}/lib .
+        mv ${IMAGE_ROOTFS}/bin .
+        mv ${IMAGE_ROOTFS}/sbin .
+
+       # Ok, let's globally fix permissions in the OE content;
+       # everything is root owned, all directories are u=rwx,g=rx,og=rx.
+       chown -R -h 0:0 usr etc boot
+       for x in usr etc boot; do
+           find $x  -type d -exec chmod u=rwx,g=rx,og=rx "{}" \;
+       done
+
+       rm -rf ${IMAGE_ROOTFS}
+       mv ${WORKDIR}/contents ${IMAGE_ROOTFS}
+
+       IMAGE_NAME_NODATE=${IMAGE_BASENAME}-${MACHINE}.tar.gz
+       DEST=${WORKDIR}/${IMAGE_NAME_NODATE}
+       (cd ${IMAGE_ROOTFS} && tar -zcv -f ${DEST} .)
+
+       mv ${DEST} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME_NODATE}
+}
+
+fakeroot remove_symlinks () {
+       set -x
+        echo ${DEPLOY_DIR_IMAGE}
+        echo ${WORKDIR}
+        echo ${IMAGE_ROOTFS}
+        rm -rf ${DEPLOY_DIR_IMAGE}/${IMAGE_BASENAME}-${MACHINE}.tar.gz
+}
+
+IMAGE_PREPROCESS_COMMAND += "remove_symlinks;"
+IMAGE_POSTPROCESS_COMMAND += "prepare_rootfs;"
diff --git a/meta-gnomeos/conf/distro/gnomeostreedistro.conf b/meta-gnomeos/conf/distro/gnomeostreedistro.conf
new file mode 100644
index 0000000..af27f9e
--- /dev/null
+++ b/meta-gnomeos/conf/distro/gnomeostreedistro.conf
@@ -0,0 +1,45 @@
+DISTRO = "gnomeostreedistro"
+DISTRO_NAME = "GNOME Continuous"
+DISTRO_VERSION = "0+snapshot-${DATE}"
+SDK_VENDOR = "-gnomesdk"
+SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"
+
+MAINTAINER = "Colin Walters <walters verbum org>"
+
+TARGET_VENDOR = "-gnomeostree"
+
+LOCALCONF_VERSION = "1"
+
+LOCALE_UTF8_ONLY = "1"
+DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf 
pci 3g pam ${DISTRO_FEATURES_LIBC}"
+
+SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${TARGET_ARCH}"
+SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"
+
+QEMU_TARGETS ?= "x86_64"
+
+PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-dev"
+PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
+PREFERRED_VERSION_autoconf_archive = "2015.02.24"
+
+PREMIRRORS ?= "\
+bzr://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
+cvs://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
+git://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
+hg://.*/.*    http://autobuilder.yoctoproject.org/sources/ \n \
+osc://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
+p4://.*/.*    http://autobuilder.yoctoproject.org/sources/ \n \
+svk://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n \
+svn://.*/.*   http://autobuilder.yoctoproject.org/sources/ \n"
+
+MIRRORS =+ "\
+ftp://.*/.*      http://autobuilder.yoctoproject.org/sources/ \n \
+http://.*/.*     http://downloads.yoctoproject.org/mirror/sources/ \n \
+https://.*/.*     http://downloads.yoctoproject.org/mirror/sources/ \n \
+http://.*/.*     http://autobuilder.yoctoproject.org/sources/ \n \
+https://.*/.*    http://autobuilder.yoctoproject.org/sources/ \n"
+
+# The CONNECTIVITY_CHECK_URI's are used to test whether we can succesfully
+# fetch from the network (and warn you if not). To disable the test set
+# the variable to be empty.
+CONNECTIVITY_CHECK_URIS = ""
diff --git a/meta-gnomeos/conf/layer.conf b/meta-gnomeos/conf/layer.conf
new file mode 100644
index 0000000..a555679
--- /dev/null
+++ b/meta-gnomeos/conf/layer.conf
@@ -0,0 +1,8 @@
+BBPATH := "${BBPATH}:${LAYERDIR}"
+
+BBFILES := "${BBFILES} ${LAYERDIR}/packages/*/*.bb ${LAYERDIR}/recipes-*/*/*.bb \
+       ${LAYERDIR}/recipes-*/*/*.bbappend" 
+
+BBFILE_COLLECTIONS += "gnomeos"
+BBFILE_PATTERN_gnomeos := "^${LAYERDIR}/"
+BBFILE_PRIORITY_gnomeos = "6"
diff --git a/meta-gnomeos/recipes-core/autoconf-archive/autoconf-archive.inc 
b/meta-gnomeos/recipes-core/autoconf-archive/autoconf-archive.inc
new file mode 100644
index 0000000..86789c8
--- /dev/null
+++ b/meta-gnomeos/recipes-core/autoconf-archive/autoconf-archive.inc
@@ -0,0 +1,15 @@
+LICENSE = "GPLv3"
+HOMEPAGE = "http://www.gnu.org/software/autoconf-archive/";
+SECTION = "devel"
+
+DEPENDS += "m4-native"
+DEPENDS_virtclass-native = "m4-native gnu-config-native"
+DEPENDS_virtclass-nativesdk = "m4-nativesdk gnu-config-nativesdk"
+
+RDEPENDS_${PN} = "m4 gnu-config"
+RDEPENDS_${PN}_virtclass-native = "m4-native gnu-config-native"
+RDEPENDS_${PN}_virtclass-nativesdk = "m4-nativesdk gnu-config-nativesdk"
+
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
+
+inherit autotools
diff --git a/meta-gnomeos/recipes-core/autoconf-archive/autoconf-archive_2016.09.16.bb 
b/meta-gnomeos/recipes-core/autoconf-archive/autoconf-archive_2016.09.16.bb
new file mode 100644
index 0000000..0a1a771
--- /dev/null
+++ b/meta-gnomeos/recipes-core/autoconf-archive/autoconf-archive_2016.09.16.bb
@@ -0,0 +1,13 @@
+require autoconf-archive.inc
+
+
+PARALLEL_MAKE = ""
+
+LICENSE = "GPLv2 & GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI[md5sum] = "bf19d4cddce260b3c3e1d51d42509071"
+SRC_URI[sha256sum] = "e8f2efd235f842bad2f6938bf4a72240a5e5fcd248e8444335e63beb60fabd82"
+
+EXTRA_OECONF += "ac_cv_path_M4=m4"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl/debian_patches_0009_sasldb_al.diff 
b/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl/debian_patches_0009_sasldb_al.diff
new file mode 100644
index 0000000..8eff5a8
--- /dev/null
+++ b/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl/debian_patches_0009_sasldb_al.diff
@@ -0,0 +1,14 @@
+Author: Fabian Fagerholm <fabbe debian org>
+Description: Fix linking with libsasldb.a when saslauthd is built with sasldb
+support.
+--- a/saslauthd/configure.in
++++ b/saslauthd/configure.in
+@@ -77,7 +77,7 @@ if test "$authsasldb" != no; then
+   AC_DEFINE(AUTH_SASLDB,[],[Include SASLdb Support])
+   SASL_DB_PATH_CHECK()
+   SASL_DB_CHECK()
+-  SASL_DB_LIB="$SASL_DB_LIB ../sasldb/.libs/libsasldb.al"
++  SASL_DB_LIB="$SASL_DB_LIB ../sasldb/.libs/libsasldb.a"
+ fi
+ 
+ AC_ARG_ENABLE(httpform, [  --enable-httpform       enable HTTP form authentication [[no]] ],
diff --git a/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff 
b/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff
new file mode 100644
index 0000000..2e5b175
--- /dev/null
+++ b/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff
@@ -0,0 +1,27 @@
+Author: Fabian Fagerholm <fabbe debian org>
+Description: This patch makes sure the non-PIC version of libsasldb.a, which
+is created out of non-PIC objects, is not going to overwrite the PIC version,
+which is created out of PIC objects. The PIC version is placed in .libs, and
+the non-PIC version in the current directory.  This ensures that both non-PIC
+and PIC versions are available in the correct locations.
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -78,7 +78,7 @@ endif
+ 
+ libsasl2.a: libsasl2.la $(SASL_STATIC_OBJS)
+       @echo adding static plugins and dependencies
+-      $(AR) cru .libs/$@ $(SASL_STATIC_OBJS)
++      $(AR) cru $@ $(SASL_STATIC_OBJS)
+       @for i in ./libsasl2.la ../sasldb/libsasldb.la ../plugins/lib*.la; do \
+       if test ! -f $$i; then continue; fi; . $$i; \
+       for j in $$dependency_libs foo; do \
+--- a/sasldb/Makefile.am
++++ b/sasldb/Makefile.am
+@@ -63,6 +63,6 @@ libsasldb_a_SOURCES =
+ EXTRA_libsasldb_a_SOURCES =
+ 
+ libsasldb.a: libsasldb.la $(SASL_DB_BACKEND_STATIC)
+-      $(AR) cru .libs/$@ $(SASL_DB_BACKEND_STATIC)
++      $(AR) cru $@ $(SASL_DB_BACKEND_STATIC)
+ 
+ 
diff --git a/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl_2.1.26.bb 
b/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl_2.1.26.bb
new file mode 100644
index 0000000..9503cb7
--- /dev/null
+++ b/meta-gnomeos/recipes-core/cyrus-sasl/cyrus-sasl_2.1.26.bb
@@ -0,0 +1,47 @@
+DESCRIPTION = "Generic client/server library for SASL authentication."
+SECTION = "console/network"
+DEPENDS = "openssl virtual/db"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3f55e0974e3d6db00ca6f57f2d206396"
+
+SRC_URI = "ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-${PV}.tar.gz \
+       file://debian_patches_0009_sasldb_al.diff \
+       file://debian_patches_0014_avoid_pic_overwrite.diff \
+       "
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF += "--with-dblib=berkeley \
+                 --with-bdb-libdir=${STAGING_LIBDIR} \
+                 --with-bdb-incdir=${STAGING_INCDIR} \
+                 --without-pam --without-opie --without-des \
+                --disable-gssapi \
+                 andrew_cv_runpath_switch=none"
+
+do_configure_prepend () {
+    rm -f ${S}/acinclude.m4 ${S}/config/libtool.m4
+}
+
+do_compile_prepend () {
+    (cd ${B}/include; \
+    ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} ${S}/include/makemd5.c -o makemd5; \
+    touch makemd5.o makemd5.lo makemd5;\
+    )
+}
+
+pkg_postinst_${PN}-bin () {
+    grep cyrus /etc/passwd || adduser --disabled-password --home=/var/spool/mail --ingroup mail -g "Cyrus 
sasl" cyrus
+    echo "cyrus" | saslpasswd2 -p -c cyrus
+    chgrp mail /etc/sasldb2
+}
+
+SRC_URI[md5sum] = "a7f4e5e559a0e37b3ffc438c9456e425"
+SRC_URI[sha256sum] = "8fbc5136512b59bb793657f36fadda6359cae3b08f01fd16b3d406f1345b7bc3"
+
+PACKAGES =+ "${PN}-bin"
+
+FILES_${PN}           += "${libdir}/sasl2/*.so.*"
+FILES_${PN}-bin       += "${bindir}"
+FILES_${PN}-dev       += "${libdir}/sasl2/*.so ${libdir}/sasl2/*.la"
+FILES_${PN}-dbg       += "${libdir}/sasl2/.debug"
+FILES_${PN}-staticdev += "${libdir}/sasl2/*.a"
diff --git a/meta-gnomeos/recipes-core/gnome-ostree/gnome-ostree.bb 
b/meta-gnomeos/recipes-core/gnome-ostree/gnome-ostree.bb
new file mode 100644
index 0000000..6ba8561
--- /dev/null
+++ b/meta-gnomeos/recipes-core/gnome-ostree/gnome-ostree.bb
@@ -0,0 +1,18 @@
+SUMMARY = "GnomeOSTree manifest and build tool"
+LICENSE = "LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
+
+PV="2012.3"
+PR= "r1"
+
+SRC_URI = "git://git.gnome.org/gnome-ostree;tag=v${PV}"
+S = "${WORKDIR}/git"
+
+DEPENDS += "python python-argparse"
+
+inherit autotools
+
+FILES_${PN} += "${bindir}/ostbuild ${libdir}/ostbuild"
+
+BBCLASSEXTEND = "native"
+
diff --git a/meta-gnomeos/recipes-core/icu/icu.inc b/meta-gnomeos/recipes-core/icu/icu.inc
new file mode 100644
index 0000000..5286274
--- /dev/null
+++ b/meta-gnomeos/recipes-core/icu/icu.inc
@@ -0,0 +1,55 @@
+SUMMARY = "International Component for Unicode libraries"
+DESCRIPTION = "The International Component for Unicode (ICU) is a mature, \
+portable set of C/C++ and Java libraries for Unicode support, software \
+internationalization (I18N) and globalization (G11N), giving applications the \
+same results on all platforms."
+HOMEPAGE = "http://site.icu-project.org/";
+
+LICENSE = "ICU"
+DEPENDS = "icu-native"
+DEPENDS_class-native = ""
+
+S = "${WORKDIR}/icu/source"
+SPDX_S = "${WORKDIR}/icu"
+STAGING_ICU_DIR_NATIVE = "${STAGING_DATADIR_NATIVE}/${BPN}/${PV}"
+
+BINCONFIG = "${bindir}/icu-config"
+
+inherit autotools pkgconfig binconfig
+
+# ICU needs the native build directory as an argument to its --with-cross-build option when
+# cross-compiling. Taken the situation that different builds may share a common sstate-cache
+# into consideration, the native build directory needs to be staged.
+EXTRA_OECONF = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}"
+EXTRA_OECONF_class-native = ""
+EXTRA_OECONF_class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}"
+
+
+# strtod_l() is not supported by musl; also xlocale.h is missing
+# It is not possible to disable its use via configure switches or env vars
+# so monkey patching is needed.
+do_configure_prepend_libc-musl () {
+    sed -i -e 's,DU_HAVE_STRTOD_L=1,DU_HAVE_STRTOD_L=0,' ${S}/configure.ac
+}
+
+PREPROCESS_RELOCATE_DIRS = "${datadir}/${BPN}/${PV}"
+do_install_append_class-native() {
+       mkdir -p ${D}/${STAGING_ICU_DIR_NATIVE}/config
+       cp -r ${B}/config/icucross.mk ${D}/${STAGING_ICU_DIR_NATIVE}/config
+       cp -r ${B}/config/icucross.inc ${D}/${STAGING_ICU_DIR_NATIVE}/config
+       cp -r ${B}/lib ${D}/${STAGING_ICU_DIR_NATIVE}
+       cp -r ${B}/bin ${D}/${STAGING_ICU_DIR_NATIVE}
+       cp -r ${B}/tools ${D}/${STAGING_ICU_DIR_NATIVE}
+}
+
+PACKAGES =+ "libicudata libicuuc libicui18n libicutu libicuio"
+
+FILES_${PN}-dev += "${libdir}/${BPN}/"
+
+FILES_libicudata = "${libdir}/libicudata.so.*"
+FILES_libicuuc = "${libdir}/libicuuc.so.*"
+FILES_libicui18n = "${libdir}/libicui18n.so.*"
+FILES_libicutu = "${libdir}/libicutu.so.*"
+FILES_libicuio = "${libdir}/libicuio.so.*"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-gnomeos/recipes-core/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch 
b/meta-gnomeos/recipes-core/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch
new file mode 100644
index 0000000..2968d57
--- /dev/null
+++ b/meta-gnomeos/recipes-core/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch
@@ -0,0 +1,28 @@
+From 0c82d6aa02c08e41b13c83b14782bd7024e25d59 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj khem gmail com>
+Date: Sat, 15 Feb 2014 21:06:42 +0000
+Subject: [PATCH] Disable LDFLAGSICUDT for Linux
+
+Upstream-Status: Inappropriate [ OE Configuration ]
+
+Signed-off-by: Khem Raj <raj khem gmail com>
+---
+ source/config/mh-linux |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/config/mh-linux b/config/mh-linux
+index 366f0cc..2689aab 100644
+--- a/config/mh-linux
++++ b/config/mh-linux
+@@ -21,7 +21,7 @@ LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN
+ LD_RPATH_PRE = -Wl,-rpath,
+ 
+ ## These are the library specific LDFLAGS
+-LDFLAGSICUDT=-nodefaultlibs -nostdlib
++# LDFLAGSICUDT=-nodefaultlibs -nostdlib
+ 
+ ## Compiler switch to embed a library name
+ # The initial tab in the next line is to prevent icu-config from reading it.
+-- 
+1.7.10.4
+
diff --git a/meta-gnomeos/recipes-core/icu/icu/0001-i18n-Drop-include-xlocale.h.patch 
b/meta-gnomeos/recipes-core/icu/icu/0001-i18n-Drop-include-xlocale.h.patch
new file mode 100644
index 0000000..add0d76
--- /dev/null
+++ b/meta-gnomeos/recipes-core/icu/icu/0001-i18n-Drop-include-xlocale.h.patch
@@ -0,0 +1,31 @@
+From c4254fd8ff1888ca285e3242b812010357ce2b3e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj khem gmail com>
+Date: Sat, 24 Jun 2017 22:52:40 -0700
+Subject: [PATCH] i18n: Drop include <xlocale.h>
+
+glibc 2.26 drops this header
+
+Signed-off-by: Khem Raj <raj khem gmail com>
+---
+Upstream-Status: Pending
+
+ i18n/digitlst.cpp | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+Index: source/i18n/digitlst.cpp
+===================================================================
+--- source.orig/i18n/digitlst.cpp
++++ source/i18n/digitlst.cpp
+@@ -61,11 +61,7 @@
+ #endif
+ 
+ #if U_USE_STRTOD_L
+-# if U_PLATFORM_USES_ONLY_WIN32_API || U_PLATFORM == U_PF_CYGWIN
+-#   include <locale.h>
+-# else
+-#   include <xlocale.h>
+-# endif
++# include <locale.h>
+ #endif
+ 
+ // ***************************************************************************
diff --git a/meta-gnomeos/recipes-core/icu/icu/fix-install-manx.patch 
b/meta-gnomeos/recipes-core/icu/icu/fix-install-manx.patch
new file mode 100644
index 0000000..ec63f50
--- /dev/null
+++ b/meta-gnomeos/recipes-core/icu/icu/fix-install-manx.patch
@@ -0,0 +1,48 @@
+The generic recursive target calls target-local so also adding it to the
+dependency list results in races due to install-local being executed twice in
+parallel.  For example, install-manx can fail if the two install processes race
+and one process tries to chown a file that the other process has just deleted.
+
+Also install-manx should be a phony target, and for clarity use $^ instead of $?
+in the install command.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross burton intel com>
+
+
+diff --git a/Makefile.in b/Makefile.in
+index 9db6c52..3441afa 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -71,7 +71,7 @@ EXTRA_DATA =
+ 
+ ## List of phony targets
+ .PHONY : all all-local all-recursive install install-local install-udata install-udata-files 
install-udata-dlls               \
+-install-recursive clean clean-local clean-recursive distclean         \
++install-recursive install-manx clean clean-local clean-recursive distclean            \
+ distclean-local distclean-recursive doc dist dist-local dist-recursive        \
+ check check-local check-recursive clean-recursive-with-twist install-icu \
+ doc install-doc tests icu4j-data icu4j-data-install update-windows-makefiles xcheck-local xcheck-recursive 
xperf xcheck xperf-recursive \
+@@ -82,10 +82,10 @@ check-exhaustive check-exhaustive-local check-exhaustive-recursive releaseDist
+ 
+ ## List of standard targets
+ all: all-local all-recursive
+-install: install-recursive install-local
++install: install-recursive
+ clean: clean-recursive-with-twist clean-local
+-distclean : distclean-recursive distclean-local
+-dist: dist-recursive dist-local
++distclean : distclean-recursive
++dist: dist-recursive
+ check: all check-recursive
+ check-recursive: all
+ xcheck: all xcheck-recursive
+@@ -352,7 +352,7 @@ config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h
+ 
+ install-manx: $(MANX_FILES)
+       $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION)
+-      $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION)
++      $(INSTALL_DATA) $^ $(DESTDIR)$(mandir)/man$(SECTION)
+ 
+ config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in
+       cd $(top_builddir) \
diff --git a/meta-gnomeos/recipes-core/icu/icu/icu-pkgdata-large-cmd.patch 
b/meta-gnomeos/recipes-core/icu/icu/icu-pkgdata-large-cmd.patch
new file mode 100644
index 0000000..e758a62
--- /dev/null
+++ b/meta-gnomeos/recipes-core/icu/icu/icu-pkgdata-large-cmd.patch
@@ -0,0 +1,49 @@
+pkgdata.cpp: use LARGE_BUFFER_MAX_SIZE for cmd
+
+Use LARGE_BUFFER_MAX_SIZE for cmd rather than SMALL_BUFFER_MAX_SIZE,
+otherwise there was a Segmentation fault error when the command line is
+long, this should be a misplay since other cmd uses
+LARGE_BUFFER_MAX_SIZE.
+
+Upstream-Status: Pending
+
+Signed-off-by: Robert Yang <liezhi yang windriver com>
+Signed-off-by: Jackie Huang <jackie huang windriver com>
+---
+ tools/pkgdata/pkgdata.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/tools/pkgdata/pkgdata.cpp b/tools/pkgdata/pkgdata.cpp
+index 60167dd..506dd32 100644
+--- a/tools/pkgdata/pkgdata.cpp
++++ b/tools/pkgdata/pkgdata.cpp
+@@ -1084,7 +1084,7 @@ normal_symlink_mode:
+ 
+ static int32_t pkg_installLibrary(const char *installDir, const char *targetDir, UBool noVersion) {
+     int32_t result = 0;
+-    char cmd[SMALL_BUFFER_MAX_SIZE];
++    char cmd[LARGE_BUFFER_MAX_SIZE];
+ 
+     sprintf(cmd, "cd %s && %s %s %s%s%s",
+             targetDir,
+@@ -1152,7 +1152,7 @@ static int32_t pkg_installLibrary(const char *installDir, const char *targetDir,
+ 
+ static int32_t pkg_installCommonMode(const char *installDir, const char *fileName) {
+     int32_t result = 0;
+-    char cmd[SMALL_BUFFER_MAX_SIZE] = "";
++    char cmd[LARGE_BUFFER_MAX_SIZE] = "";
+ 
+     if (!T_FileStream_file_exists(installDir)) {
+         UErrorCode status = U_ZERO_ERROR;
+@@ -1184,7 +1184,7 @@ static int32_t pkg_installCommonMode(const char *installDir, const char *fileNam
+ #endif
+ static int32_t pkg_installFileMode(const char *installDir, const char *srcDir, const char *fileListName) {
+     int32_t result = 0;
+-    char cmd[SMALL_BUFFER_MAX_SIZE] = "";
++    char cmd[LARGE_BUFFER_MAX_SIZE] = "";
+ 
+     if (!T_FileStream_file_exists(installDir)) {
+         UErrorCode status = U_ZERO_ERROR;
+-- 
+1.9.1
+
diff --git a/meta-gnomeos/recipes-core/icu/icu_58.2.bb.txt b/meta-gnomeos/recipes-core/icu/icu_58.2.bb.txt
new file mode 100644
index 0000000..47684a6
--- /dev/null
+++ b/meta-gnomeos/recipes-core/icu/icu_58.2.bb.txt
@@ -0,0 +1,29 @@
+require icu.inc
+
+LIC_FILES_CHKSUM = "file://../LICENSE;md5=1b3b75c1777cd49ad5c6a24cd338cfc9"
+
+def icu_download_version(d):
+    pvsplit = d.getVar('PV').split('.')
+    return pvsplit[0] + "_" + pvsplit[1]
+
+ICU_PV = "${@icu_download_version(d)}"
+
+# http://errors.yoctoproject.org/Errors/Details/20486/
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+
+BASE_SRC_URI = "http://download.icu-project.org/files/icu4c/${PV}/icu4c-${ICU_PV}-src.tgz";
+SRC_URI = "${BASE_SRC_URI} \
+           file://icu-pkgdata-large-cmd.patch \
+           file://fix-install-manx.patch \
+           file://0001-i18n-Drop-include-xlocale.h.patch \
+           "
+
+SRC_URI_append_class-target = "\
+           file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \
+          "
+SRC_URI[md5sum] = "fac212b32b7ec7ab007a12dff1f3aea1"
+SRC_URI[sha256sum] = "2b0a4410153a9b20de0e20c7d8b66049a72aef244b53683d0d7521371683da0c"
+
+UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)/"
+UPSTREAM_CHECK_URI = "http://download.icu-project.org/files/icu4c/";
diff --git a/meta-gnomeos/recipes-core/images/gnomeos-contents-devel.bb 
b/meta-gnomeos/recipes-core/images/gnomeos-contents-devel.bb
new file mode 100644
index 0000000..fb5d777
--- /dev/null
+++ b/meta-gnomeos/recipes-core/images/gnomeos-contents-devel.bb
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2011 Colin Walters <walters verbum org>
+#
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+inherit gnomeos-contents
+
+PACKAGE_INSTALL += "\
+               task-gnomeos-contents-devel \
+               libgcc-dev \
+               glibc-dbg \
+               "
+
+DEPENDS += " task-gnomeos-contents-devel "
diff --git a/meta-gnomeos/recipes-core/images/gnomeos-contents-runtime.bb 
b/meta-gnomeos/recipes-core/images/gnomeos-contents-runtime.bb
new file mode 100644
index 0000000..d70a704
--- /dev/null
+++ b/meta-gnomeos/recipes-core/images/gnomeos-contents-runtime.bb
@@ -0,0 +1,8 @@
+#
+# Copyright (C) 2011 Colin Walters <walters verbum org>
+#
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+inherit gnomeos-contents
diff --git a/meta-gnomeos/recipes-core/jpeg/libjpeg-turbo/fix-mips.patch 
b/meta-gnomeos/recipes-core/jpeg/libjpeg-turbo/fix-mips.patch
new file mode 100644
index 0000000..4d41237
--- /dev/null
+++ b/meta-gnomeos/recipes-core/jpeg/libjpeg-turbo/fix-mips.patch
@@ -0,0 +1,45 @@
+Fix a regression that causes the MIPS code from building.
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross burton intel com>
+
+From 7bfb22af123ac10798a9a4c9ec7b23e5065db35e Mon Sep 17 00:00:00 2001
+From: DRC <information libjpeg-turbo org>
+Date: Mon, 26 Sep 2016 17:59:14 -0500
+Subject: [PATCH] Fix broken MIPS build
+
+Regression introduced by 9055fb408dcb585ce9392d395e16630d51002152
+
+Fixes #104
+---
+ ChangeLog.md      | 3 +++
+ simd/jsimd_mips.c | 2 ++
+ 2 files changed, 5 insertions(+)
+
+diff --git a/ChangeLog.md b/ChangeLog.md
+index e2b9df3..71ddcaa 100644
+--- a/ChangeLog.md
++++ b/ChangeLog.md
+@@ -6,6 +6,9 @@
+ 1. Fixed a regression introduced by 1.5.1[7] that prevented libjpeg-turbo from
+ building with Android NDK platforms prior to android-21 (5.0).
+ 
++2. Fixed a regression introduced by 1.5.1[1] that prevented the MIPS DSPR2 SIMD
++code in libjpeg-turbo from building.
++
+ 
+ 1.5.1
+ =====
+diff --git a/simd/jsimd_mips.c b/simd/jsimd_mips.c
+index 63b8115..02e90cd 100644
+--- a/simd/jsimd_mips.c
++++ b/simd/jsimd_mips.c
+@@ -63,6 +63,8 @@ parse_proc_cpuinfo(const char* search_string)
+ LOCAL(void)
+ init_simd (void)
+ {
++  char *env = NULL;
++
+   if (simd_support != ~0U)
+     return;
+ 
diff --git a/meta-gnomeos/recipes-core/jpeg/libjpeg-turbo_1.5.1.bb 
b/meta-gnomeos/recipes-core/jpeg/libjpeg-turbo_1.5.1.bb
new file mode 100644
index 0000000..de2eeaf
--- /dev/null
+++ b/meta-gnomeos/recipes-core/jpeg/libjpeg-turbo_1.5.1.bb
@@ -0,0 +1,51 @@
+SUMMARY = "Hardware accelerated JPEG compression/decompression library"
+DESCRIPTION = "libjpeg-turbo is a derivative of libjpeg that uses SIMD instructions (MMX, SSE2, NEON) to 
accelerate baseline JPEG compression and decompression"
+HOMEPAGE = "http://libjpeg-turbo.org/";
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=05bab7c7ad899d85bfba60da1a1271f2 \
+                    file://jpeglib.h;endline=16;md5=f67d70e547a2662c079781c72f877f72 \
+                    file://djpeg.c;endline=11;md5=b90b6d2b4119f9e5807cd273f525d2af \
+"
+DEPENDS_append_x86-64_class-target = " nasm-native"
+DEPENDS_append_x86_class-target    = " nasm-native"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
+           file://fix-mips.patch"
+SRC_URI[md5sum] = "55deb139b0cac3c8200b75d485fc13f3"
+SRC_URI[sha256sum] = "41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c"
+UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libjpeg-turbo/files/";
+UPSTREAM_CHECK_REGEX = "/libjpeg-turbo/files/(?P<pver>(\d+[\.\-_]*)+)/"
+
+PE= "1"
+
+# Drop-in replacement for jpeg
+PROVIDES = "jpeg"
+RPROVIDES_${PN} += "jpeg"
+RREPLACES_${PN} += "jpeg"
+RCONFLICTS_${PN} += "jpeg"
+
+inherit autotools pkgconfig
+
+# Add nasm-native dependency consistently for all build arches is hard
+EXTRA_OECONF_append_class-native = " --without-simd"
+
+# Work around missing x32 ABI support
+EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--without-simd", "", d)}"
+
+# Work around missing non-floating point ABI support in MIPS
+EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "--without-simd", "", d)}"
+
+# Provide a workaround if Altivec unit is not present in PPC
+EXTRA_OECONF_append_class-target_powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", 
"--without-simd", d)}"
+EXTRA_OECONF_append_class-target_powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", 
"--without-simd", d)}"
+
+PACKAGES =+ "jpeg-tools libturbojpeg"
+
+DESCRIPTION_jpeg-tools = "The jpeg-tools package includes client programs to access libjpeg functionality.  
These tools allow for the compression, decompression, transformation and display of JPEG files and 
benchmarking of the libjpeg library."
+FILES_jpeg-tools = "${bindir}/*"
+
+DESCRIPTION_libturbojpeg = "A SIMD-accelerated JPEG codec which provides only TurboJPEG APIs"
+FILES_libturbojpeg = "${libdir}/libturbojpeg.so.*"
+
+BBCLASSEXTEND = "native"
diff --git 
a/meta-gnomeos/recipes-core/libgcrypt/files/0001-ecc-Store-EdDSA-session-key-in-secure-memory.patch 
b/meta-gnomeos/recipes-core/libgcrypt/files/0001-ecc-Store-EdDSA-session-key-in-secure-memory.patch
new file mode 100644
index 0000000..f6c4ca7
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/files/0001-ecc-Store-EdDSA-session-key-in-secure-memory.patch
@@ -0,0 +1,39 @@
+CVE: CVE-2017-9526
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross burton intel com>
+
+From b3cab278eb9c2ceda79f980bc26460d97f260041 Mon Sep 17 00:00:00 2001
+From: Jo Van Bulck <jo vanbulck cs kuleuven be>
+Date: Thu, 19 Jan 2017 17:00:15 +0100
+Subject: [PATCH] ecc: Store EdDSA session key in secure memory.
+
+* cipher/ecc-eddsa.c (_gcry_ecc_eddsa_sign): use mpi_snew to allocate
+session key.
+--
+
+An attacker who learns the EdDSA session key from side-channel
+observation during the signing process, can easily revover the long-
+term secret key. Storing the session key in secure memory ensures that
+constant time point operations are used in the MPI library.
+
+Signed-off-by: Jo Van Bulck <jo vanbulck cs kuleuven be>
+---
+ cipher/ecc-eddsa.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cipher/ecc-eddsa.c b/cipher/ecc-eddsa.c
+index f91f8489..813e030d 100644
+--- a/cipher/ecc-eddsa.c
++++ b/cipher/ecc-eddsa.c
+@@ -603,7 +603,7 @@ _gcry_ecc_eddsa_sign (gcry_mpi_t input, ECC_secret_key *skey,
+   a = mpi_snew (0);
+   x = mpi_new (0);
+   y = mpi_new (0);
+-  r = mpi_new (0);
++  r = mpi_snew (0);
+   ctx = _gcry_mpi_ec_p_internal_new (skey->E.model, skey->E.dialect, 0,
+                                      skey->E.p, skey->E.a, skey->E.b);
+   b = (ctx->nbits+7)/8;
+-- 
+2.11.0
+
diff --git a/meta-gnomeos/recipes-core/libgcrypt/files/CVE-2017-7526.patch 
b/meta-gnomeos/recipes-core/libgcrypt/files/CVE-2017-7526.patch
new file mode 100644
index 0000000..7180e7a
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/files/CVE-2017-7526.patch
@@ -0,0 +1,455 @@
+Flush+reload side-channel attack on RSA secret keys dubbed "Sliding right
+into disaster".
+
+CVE: CVE-2017-7526
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross burton intel com>
+
+From 56bd068335500207dea2cece9cc662bcd9658951 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe fsij org>
+Date: Tue, 4 Apr 2017 17:38:05 +0900
+Subject: [PATCH 1/5] mpi: Simplify mpi_powm.
+
+* mpi/mpi-pow.c (_gcry_mpi_powm): Simplify the loop.
+
+--
+
+This fix is not a solution for the problem reported (yet).  The
+problem is that the current algorithm of _gcry_mpi_powm depends on
+exponent and some information leaks is possible.
+
+Reported-by: Andreas Zankl <andreas zankl aisec fraunhofer de>
+Signed-off-by: NIIBE Yutaka <gniibe fsij org>
+
+(backport from master commit:
+719468e53133d3bdf12156c5bfdea2bf15f9f6f1)
+
+Signed-off-by: Ross Burton <ross burton intel com>
+---
+ mpi/mpi-pow.c | 105 +++++++++++++++++-----------------------------------------
+ 1 file changed, 30 insertions(+), 75 deletions(-)
+
+diff --git a/mpi/mpi-pow.c b/mpi/mpi-pow.c
+index a780ebd1..7b3dc318 100644
+--- a/mpi/mpi-pow.c
++++ b/mpi/mpi-pow.c
+@@ -609,12 +609,8 @@ _gcry_mpi_powm (gcry_mpi_t res,
+       if (e == 0)
+         {
+           j += c;
+-          i--;
+-          if ( i < 0 )
+-            {
+-              c = 0;
+-              break;
+-            }
++          if ( --i < 0 )
++            break;
+ 
+           e = ep[i];
+           c = BITS_PER_MPI_LIMB;
+@@ -629,38 +625,33 @@ _gcry_mpi_powm (gcry_mpi_t res,
+           c -= c0;
+           j += c0;
+ 
++          e0 = (e >> (BITS_PER_MPI_LIMB - W));
+           if (c >= W)
+-            {
+-              e0 = (e >> (BITS_PER_MPI_LIMB - W));
+-              e = (e << W);
+-              c -= W;
+-            }
++            c0 = 0;
+           else
+             {
+-              i--;
+-              if ( i < 0 )
++              if ( --i < 0 )
+                 {
+-                  e = (e >> (BITS_PER_MPI_LIMB - c));
+-                  break;
++                  e0 = (e >> (BITS_PER_MPI_LIMB - c));
++                  j += c - W;
++                  goto last_step;
++                }
++              else
++                {
++                  c0 = c;
++                  e = ep[i];
++                  c = BITS_PER_MPI_LIMB;
++                  e0 |= (e >> (BITS_PER_MPI_LIMB - (W - c0)));
+                 }
+-
+-              c0 = c;
+-              e0 = (e >> (BITS_PER_MPI_LIMB - W))
+-                | (ep[i] >> (BITS_PER_MPI_LIMB - W + c0));
+-              e = (ep[i] << (W - c0));
+-              c = BITS_PER_MPI_LIMB - W + c0;
+             }
+ 
++          e = e << (W - c0);
++          c -= (W - c0);
++
++        last_step:
+           count_trailing_zeros (c0, e0);
+           e0 = (e0 >> c0) >> 1;
+ 
+-          for (j += W - c0; j; j--)
+-            {
+-              mul_mod (xp, &xsize, rp, rsize, rp, rsize, mp, msize, &karactx);
+-              tp = rp; rp = xp; xp = tp;
+-              rsize = xsize;
+-            }
+-
+           /*
+            *  base_u <= precomp[e0]
+            *  base_u_size <= precomp_size[e0]
+@@ -677,25 +668,23 @@ _gcry_mpi_powm (gcry_mpi_t res,
+               u.d = precomp[k];
+ 
+               mpi_set_cond (&w, &u, k == e0);
+-              base_u_size |= (precomp_size[k] & ((mpi_size_t)0 - (k == e0)) );
++              base_u_size |= ( precomp_size[k] & ((mpi_size_t)0 - (k == e0)) );
+             }
+ 
+-          mul_mod (xp, &xsize, rp, rsize, base_u, base_u_size,
+-                   mp, msize, &karactx);
+-          tp = rp; rp = xp; xp = tp;
+-          rsize = xsize;
++          for (j += W - c0; j >= 0; j--)
++            {
++              mul_mod (xp, &xsize, rp, rsize,
++                       j == 0 ? base_u : rp, j == 0 ? base_u_size : rsize,
++                       mp, msize, &karactx);
++              tp = rp; rp = xp; xp = tp;
++              rsize = xsize;
++            }
+ 
+           j = c0;
++          if ( i < 0 )
++            break;
+         }
+ 
+-    if (c != 0)
+-      {
+-        j += c;
+-        count_trailing_zeros (c, e);
+-        e = (e >> c);
+-        j -= c;
+-      }
+-
+     while (j--)
+       {
+         mul_mod (xp, &xsize, rp, rsize, rp, rsize, mp, msize, &karactx);
+@@ -703,40 +692,6 @@ _gcry_mpi_powm (gcry_mpi_t res,
+         rsize = xsize;
+       }
+ 
+-    if (e != 0)
+-      {
+-        /*
+-         * base_u <= precomp[(e>>1)]
+-         * base_u_size <= precomp_size[(e>>1)]
+-         */
+-        base_u_size = 0;
+-        for (k = 0; k < (1<< (W - 1)); k++)
+-          {
+-            struct gcry_mpi w, u;
+-            w.alloced = w.nlimbs = precomp_size[k];
+-            u.alloced = u.nlimbs = precomp_size[k];
+-            w.sign = u.sign = 0;
+-            w.flags = u.flags = 0;
+-            w.d = base_u;
+-            u.d = precomp[k];
+-
+-            mpi_set_cond (&w, &u, k == (e>>1));
+-            base_u_size |= (precomp_size[k] & ((mpi_size_t)0 - (k == (e>>1))) );
+-          }
+-
+-        mul_mod (xp, &xsize, rp, rsize, base_u, base_u_size,
+-                 mp, msize, &karactx);
+-        tp = rp; rp = xp; xp = tp;
+-        rsize = xsize;
+-
+-        for (; c; c--)
+-          {
+-            mul_mod (xp, &xsize, rp, rsize, rp, rsize, mp, msize, &karactx);
+-            tp = rp; rp = xp; xp = tp;
+-            rsize = xsize;
+-          }
+-      }
+-
+     /* We shifted MOD, the modulo reduction argument, left
+        MOD_SHIFT_CNT steps.  Adjust the result by reducing it with the
+        original MOD.
+-- 
+2.11.0
+
+
+From 6e237c8c48d257dc315e364791d284c6bf3fa703 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe fsij org>
+Date: Sat, 24 Jun 2017 20:46:20 +0900
+Subject: [PATCH 2/5] Same computation for square and multiply.
+
+* mpi/mpi-pow.c (_gcry_mpi_powm): Compare msize for max_u_size.  Move
+the assignment to base_u into the loop.  Copy content refered by RP to
+BASE_U except the last of the loop.
+
+--
+
+Signed-off-by: NIIBE Yutaka <gniibe fsij org>
+(backport from master commit:
+78130828e9a140a9de4dafadbc844dbb64cb709a)
+
+Signed-off-by: Ross Burton <ross burton intel com>
+---
+ mpi/mpi-pow.c | 50 +++++++++++++++++++++++++++++---------------------
+ 1 file changed, 29 insertions(+), 21 deletions(-)
+
+diff --git a/mpi/mpi-pow.c b/mpi/mpi-pow.c
+index 7b3dc318..3cba6903 100644
+--- a/mpi/mpi-pow.c
++++ b/mpi/mpi-pow.c
+@@ -573,6 +573,8 @@ _gcry_mpi_powm (gcry_mpi_t res,
+         MPN_COPY (precomp[i], rp, rsize);
+       }
+ 
++    if (msize > max_u_size)
++      max_u_size = msize;
+     base_u = mpi_alloc_limb_space (max_u_size, esec);
+     MPN_ZERO (base_u, max_u_size);
+ 
+@@ -619,6 +621,10 @@ _gcry_mpi_powm (gcry_mpi_t res,
+         {
+           int c0;
+           mpi_limb_t e0;
++          struct gcry_mpi w, u;
++          w.sign = u.sign = 0;
++          w.flags = u.flags = 0;
++          w.d = base_u;
+ 
+           count_leading_zeros (c0, e);
+           e = (e << c0);
+@@ -652,29 +658,31 @@ _gcry_mpi_powm (gcry_mpi_t res,
+           count_trailing_zeros (c0, e0);
+           e0 = (e0 >> c0) >> 1;
+ 
+-          /*
+-           *  base_u <= precomp[e0]
+-           *  base_u_size <= precomp_size[e0]
+-           */
+-          base_u_size = 0;
+-          for (k = 0; k < (1<< (W - 1)); k++)
+-            {
+-              struct gcry_mpi w, u;
+-              w.alloced = w.nlimbs = precomp_size[k];
+-              u.alloced = u.nlimbs = precomp_size[k];
+-              w.sign = u.sign = 0;
+-              w.flags = u.flags = 0;
+-              w.d = base_u;
+-              u.d = precomp[k];
+-
+-              mpi_set_cond (&w, &u, k == e0);
+-              base_u_size |= ( precomp_size[k] & ((mpi_size_t)0 - (k == e0)) );
+-            }
+-
+           for (j += W - c0; j >= 0; j--)
+             {
+-              mul_mod (xp, &xsize, rp, rsize,
+-                       j == 0 ? base_u : rp, j == 0 ? base_u_size : rsize,
++
++              /*
++               *  base_u <= precomp[e0]
++               *  base_u_size <= precomp_size[e0]
++               */
++              base_u_size = 0;
++              for (k = 0; k < (1<< (W - 1)); k++)
++                {
++                  w.alloced = w.nlimbs = precomp_size[k];
++                  u.alloced = u.nlimbs = precomp_size[k];
++                  u.d = precomp[k];
++
++                  mpi_set_cond (&w, &u, k == e0);
++                  base_u_size |= ( precomp_size[k] & (0UL - (k == e0)) );
++                }
++
++              w.alloced = w.nlimbs = rsize;
++              u.alloced = u.nlimbs = rsize;
++              u.d = rp;
++              mpi_set_cond (&w, &u, j != 0);
++              base_u_size ^= ((base_u_size ^ rsize)  & (0UL - (j != 0)));
++
++              mul_mod (xp, &xsize, rp, rsize, base_u, base_u_size,
+                        mp, msize, &karactx);
+               tp = rp; rp = xp; xp = tp;
+               rsize = xsize;
+-- 
+2.11.0
+
+
+From bf059348dafc1b8d29e07b9426d870ead853db84 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe fsij org>
+Date: Thu, 29 Jun 2017 11:48:44 +0900
+Subject: [PATCH 3/5] rsa: Add exponent blinding.
+
+* cipher/rsa.c (secret): Blind secret D with randomized nonce R for
+mpi_powm computation.
+
+--
+
+Co-authored-by: Werner Koch <wk gnupg org>
+Signed-off-by: NIIBE Yutaka <gniibe fsij org>
+
+The paper describing attack: https://eprint.iacr.org/2017/627
+
+Sliding right into disaster: Left-to-right sliding windows leak
+by Daniel J. Bernstein and Joachim Breitner and Daniel Genkin and
+Leon Groot Bruinderink and Nadia Heninger and Tanja Lange and
+Christine van Vredendaal and Yuval Yarom
+
+  It is well known that constant-time implementations of modular
+  exponentiation cannot use sliding windows. However, software
+  libraries such as Libgcrypt, used by GnuPG, continue to use sliding
+  windows. It is widely believed that, even if the complete pattern of
+  squarings and multiplications is observed through a side-channel
+  attack, the number of exponent bits leaked is not sufficient to
+  carry out a full key-recovery attack against RSA. Specifically,
+  4-bit sliding windows leak only 40% of the bits, and 5-bit sliding
+  windows leak only 33% of the bits.
+
+  In this paper we demonstrate a complete break of RSA-1024 as
+  implemented in Libgcrypt. Our attack makes essential use of the fact
+  that Libgcrypt uses the left-to-right method for computing the
+  sliding-window expansion. We show for the first time that the
+  direction of the encoding matters: the pattern of squarings and
+  multiplications in left-to-right sliding windows leaks significantly
+  more information about exponent bits than for right-to-left. We show
+  how to incorporate this additional information into the
+  Heninger-Shacham algorithm for partial key reconstruction, and use
+  it to obtain very efficient full key recovery for RSA-1024. We also
+  provide strong evidence that the same attack works for RSA-2048 with
+  only moderately more computation.
+
+Exponent blinding is a kind of workaround to add noise.  Signal (leak)
+is still there for non-constant-time implementation.
+
+(backported from master commit:
+8725c99ffa41778f382ca97233183bcd687bb0ce)
+
+Signed-off-by: Ross Burton <ross burton intel com>
+---
+ cipher/rsa.c | 32 +++++++++++++++++++++++++-------
+ 1 file changed, 25 insertions(+), 7 deletions(-)
+
+diff --git a/cipher/rsa.c b/cipher/rsa.c
+index b6c73741..25e29b5c 100644
+--- a/cipher/rsa.c
++++ b/cipher/rsa.c
+@@ -1021,15 +1021,33 @@ secret (gcry_mpi_t output, gcry_mpi_t input, RSA_secret_key *skey )
+       gcry_mpi_t m1 = mpi_alloc_secure( mpi_get_nlimbs(skey->n)+1 );
+       gcry_mpi_t m2 = mpi_alloc_secure( mpi_get_nlimbs(skey->n)+1 );
+       gcry_mpi_t h  = mpi_alloc_secure( mpi_get_nlimbs(skey->n)+1 );
+-
+-      /* m1 = c ^ (d mod (p-1)) mod p */
++      gcry_mpi_t D_blind = mpi_alloc_secure ( mpi_get_nlimbs(skey->n) + 1 );
++      gcry_mpi_t r;
++      unsigned int r_nbits;
++
++      r_nbits = mpi_get_nbits (skey->p) / 4;
++      if (r_nbits < 96)
++        r_nbits = 96;
++      r = mpi_alloc_secure ((r_nbits + BITS_PER_MPI_LIMB-1)/BITS_PER_MPI_LIMB);
++
++      /* d_blind = (d mod (p-1)) + (p-1) * r */
++      /* m1 = c ^ d_blind mod p */
++      _gcry_mpi_randomize (r, r_nbits, GCRY_WEAK_RANDOM);
++      mpi_set_highbit (r, r_nbits - 1);
+       mpi_sub_ui( h, skey->p, 1  );
+-      mpi_fdiv_r( h, skey->d, h );
+-      mpi_powm( m1, input, h, skey->p );
+-      /* m2 = c ^ (d mod (q-1)) mod q */
++      mpi_mul ( D_blind, h, r );
++      mpi_fdiv_r ( h, skey->d, h );
++      mpi_add ( D_blind, D_blind, h );
++      mpi_powm( m1, input, D_blind, skey->p );
++      /* d_blind = (d mod (q-1)) + (q-1) * r */
++      /* m2 = c ^ d_blind mod q */
++      _gcry_mpi_randomize (r, r_nbits, GCRY_WEAK_RANDOM);
++      mpi_set_highbit (r, r_nbits - 1);
+       mpi_sub_ui( h, skey->q, 1  );
+-      mpi_fdiv_r( h, skey->d, h );
+-      mpi_powm( m2, input, h, skey->q );
++      mpi_mul ( D_blind, h, r );
++      mpi_fdiv_r ( h, skey->d, h );
++      mpi_add ( D_blind, D_blind, h );
++      mpi_powm( m2, input, D_blind, skey->q );
+       /* h = u * ( m2 - m1 ) mod q */
+       mpi_sub( h, m2, m1 );
+       if ( mpi_has_sign ( h ) )
+-- 
+2.11.0
+
+
+From 09b9df2675a24e679b7944352ad6385e9e68474f Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe fsij org>
+Date: Thu, 29 Jun 2017 12:36:27 +0900
+Subject: [PATCH 4/5] rsa: Fix exponent blinding.
+
+* cipher/rsa.c (secret): Free D_BLIND.
+
+--
+
+Fixes-commit: a9f612def801c8145d551d995475e5d51a4c988c
+Signed-off-by: NIIBE Yutaka <gniibe fsij org>
+Signed-off-by: Ross Burton <ross burton intel com>
+---
+ cipher/rsa.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/cipher/rsa.c b/cipher/rsa.c
+index 25e29b5c..33f92ebd 100644
+--- a/cipher/rsa.c
++++ b/cipher/rsa.c
+@@ -1057,6 +1057,7 @@ secret (gcry_mpi_t output, gcry_mpi_t input, RSA_secret_key *skey )
+       mpi_mul ( h, h, skey->p );
+       mpi_add ( output, m1, h );
+ 
++      mpi_free ( D_blind );
+       mpi_free ( h );
+       mpi_free ( m1 );
+       mpi_free ( m2 );
+-- 
+2.11.0
+
+
+From 1323fdcf6f2f9fd1da8c5adf396650f15a2a1260 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe fsij org>
+Date: Thu, 29 Jun 2017 12:40:19 +0900
+Subject: [PATCH 5/5] rsa: More fix.
+
+* cipher/rsa.c (secret): Free R.
+
+--
+
+Fixes-commit: a9f612def801c8145d551d995475e5d51a4c988c
+Signed-off-by: NIIBE Yutaka <gniibe fsij org>
+Signed-off-by: Ross Burton <ross burton intel com>
+---
+ cipher/rsa.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/cipher/rsa.c b/cipher/rsa.c
+index 33f92ebd..8d8d157b 100644
+--- a/cipher/rsa.c
++++ b/cipher/rsa.c
+@@ -1057,6 +1057,7 @@ secret (gcry_mpi_t output, gcry_mpi_t input, RSA_secret_key *skey )
+       mpi_mul ( h, h, skey->p );
+       mpi_add ( output, m1, h );
+ 
++      mpi_free ( r );
+       mpi_free ( D_blind );
+       mpi_free ( h );
+       mpi_free ( m1 );
+-- 
+2.11.0
+
diff --git a/meta-gnomeos/recipes-core/libgcrypt/files/add-pkgconfig-support.patch 
b/meta-gnomeos/recipes-core/libgcrypt/files/add-pkgconfig-support.patch
new file mode 100644
index 0000000..69589f5
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/files/add-pkgconfig-support.patch
@@ -0,0 +1,177 @@
+Add and use pkg-config for libgcrypt instead of -config scripts.
+
+Upstream-Status: Denied [upstream have indicated they don't want a pkg-config dependency]
+
+RP 2014/5/22
+
+Rebase to 1.7.0
+Signed-off-by: Hongxu Jia <hongxu jia windriver com>
+---
+ configure.ac        |  1 +
+ src/libgcrypt.m4    | 71 +++--------------------------------------------------
+ src/libgcrypt.pc.in | 33 +++++++++++++++++++++++++
+ 3 files changed, 38 insertions(+), 67 deletions(-)
+ create mode 100644 src/libgcrypt.pc.in
+
+diff --git a/configure.ac b/configure.ac
+index f683e21..566e1c8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2314,6 +2314,7 @@ random/Makefile
+ doc/Makefile
+ src/Makefile
+ src/gcrypt.h
++src/libgcrypt.pc
+ src/libgcrypt-config
+ src/versioninfo.rc
+ tests/Makefile
+diff --git a/src/libgcrypt.m4 b/src/libgcrypt.m4
+index c67cfec..4ea5f2c 100644
+--- a/src/libgcrypt.m4
++++ b/src/libgcrypt.m4
+@@ -29,30 +29,6 @@ dnl is added to the gpg_config_script_warn variable.
+ dnl
+ AC_DEFUN([AM_PATH_LIBGCRYPT],
+ [ AC_REQUIRE([AC_CANONICAL_HOST])
+-  AC_ARG_WITH(libgcrypt-prefix,
+-            AC_HELP_STRING([--with-libgcrypt-prefix=PFX],
+-                           [prefix where LIBGCRYPT is installed (optional)]),
+-     libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="")
+-  if test x"${LIBGCRYPT_CONFIG}" = x ; then
+-     if test x"${libgcrypt_config_prefix}" != x ; then
+-        LIBGCRYPT_CONFIG="${libgcrypt_config_prefix}/bin/libgcrypt-config"
+-     else
+-       case "${SYSROOT}" in
+-         /*)
+-           if test -x "${SYSROOT}/bin/libgcrypt-config" ; then
+-             LIBGCRYPT_CONFIG="${SYSROOT}/bin/libgcrypt-config"
+-           fi
+-           ;;
+-         '')
+-           ;;
+-          *)
+-           AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.])
+-           ;;
+-       esac
+-     fi
+-  fi
+-
+-  AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no)
+   tmp=ifelse([$1], ,1:1.2.0,$1)
+   if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
+      req_libgcrypt_api=`echo "$tmp"     | sed 's/\(.*\):\(.*\)/\1/'`
+@@ -62,48 +38,13 @@ AC_DEFUN([AM_PATH_LIBGCRYPT],
+      min_libgcrypt_version="$tmp"
+   fi
+ 
+-  AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version)
+-  ok=no
+-  if test "$LIBGCRYPT_CONFIG" != "no" ; then
+-    req_major=`echo $min_libgcrypt_version | \
+-               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
+-    req_minor=`echo $min_libgcrypt_version | \
+-               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
+-    req_micro=`echo $min_libgcrypt_version | \
+-               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
+-    libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version`
+-    major=`echo $libgcrypt_config_version | \
+-               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
+-    minor=`echo $libgcrypt_config_version | \
+-               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
+-    micro=`echo $libgcrypt_config_version | \
+-               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
+-    if test "$major" -gt "$req_major"; then
+-        ok=yes
+-    else
+-        if test "$major" -eq "$req_major"; then
+-            if test "$minor" -gt "$req_minor"; then
+-               ok=yes
+-            else
+-               if test "$minor" -eq "$req_minor"; then
+-                   if test "$micro" -ge "$req_micro"; then
+-                     ok=yes
+-                   fi
+-               fi
+-            fi
+-        fi
+-    fi
+-  fi
+-  if test $ok = yes; then
+-    AC_MSG_RESULT([yes ($libgcrypt_config_version)])
+-  else
+-    AC_MSG_RESULT(no)
+-  fi
++  PKG_CHECK_MODULES(LIBGCRYPT, [libgcrypt >= $min_libgcrypt_version], [ok=yes], [ok=no])
++
+   if test $ok = yes; then
+      # If we have a recent libgcrypt, we should also check that the
+      # API is compatible
+      if test "$req_libgcrypt_api" -gt 0 ; then
+-        tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0`
++        tmp=`$PKG_CONFIG --variable=api_version libgcrypt`
+         if test "$tmp" -gt 0 ; then
+            AC_MSG_CHECKING([LIBGCRYPT API version])
+            if test "$req_libgcrypt_api" -eq "$tmp" ; then
+@@ -116,10 +57,8 @@ AC_DEFUN([AM_PATH_LIBGCRYPT],
+      fi
+   fi
+   if test $ok = yes; then
+-    LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
+-    LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
+     ifelse([$2], , :, [$2])
+-    libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
++    libgcrypt_config_host=`$PKG_CONFIG --variable=host libgcrypt`
+     if test x"$libgcrypt_config_host" != xnone ; then
+       if test x"$libgcrypt_config_host" != x"$host" ; then
+   AC_MSG_WARN([[
+@@ -134,8 +73,6 @@ AC_DEFUN([AM_PATH_LIBGCRYPT],
+       fi
+     fi
+   else
+-    LIBGCRYPT_CFLAGS=""
+-    LIBGCRYPT_LIBS=""
+     ifelse([$3], , :, [$3])
+   fi
+   AC_SUBST(LIBGCRYPT_CFLAGS)
+diff --git a/src/libgcrypt.pc.in b/src/libgcrypt.pc.in
+new file mode 100644
+index 0000000..2fc8f53
+--- /dev/null
++++ b/src/libgcrypt.pc.in
+@@ -0,0 +1,33 @@
++# Process this file with autoconf to produce a pkg-config metadata file.
++# Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation
++# Author: Simon Josefsson
++#
++# This file is free software; as a special exception the author gives
++# unlimited permission to copy and/or distribute it, with or without
++# modifications, as long as this notice is preserved.
++#
++# This file is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
++# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
++
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++# API info
++api_version=@LIBGCRYPT_CONFIG_API_VERSION@
++host=@LIBGCRYPT_CONFIG_HOST@
++
++# Misc information.
++symmetric_ciphers=@LIBGCRYPT_CIPHERS@
++asymmetric_ciphers=@LIBGCRYPT_PUBKEY_CIPHERS@
++digests=@LIBGCRYPT_DIGESTS@
++
++Name: libgcrypt
++Description: GNU crypto library
++URL: http://www.gnupg.org
++Version: @VERSION@
++Libs: -L${libdir} -lgcrypt
++Libs.private: -L${libdir} -lgpg-error
++Cflags: -I${includedir} 
+-- 
+2.8.1
+
diff --git a/meta-gnomeos/recipes-core/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch 
b/meta-gnomeos/recipes-core/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch
new file mode 100644
index 0000000..582e62f
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch
@@ -0,0 +1,71 @@
+tests/bench-slope.c: workaround ICE failure on mips with '-O -g'
+
+Hit a ICE and could reduce it to the following minimal example:
+
+1. Only the size of array assigned with 2 caused the issue:
+$ cat > mipgcc-test.c << END
+
+int main (int argc, char **argv)
+{
+        char *pStrArry[ARRAY_SIZE_MAX] = {"hello"};
+        int i = 0;
+
+        while(pStrArry[i] && i<ARRAY_SIZE_MAX)
+        {
+                printf("%s\n", pStrArry[i]);
+                i++;
+        }
+
+        return 0;
+}
+
+END
+
+2. Only -O1 and -g on mips caused the issue:
+$ mips-poky-linux-gcc -O1 -g -o mipgcc-test mipgcc-test.c
+mipgcc-test.c: In function 'main':
+mipgcc-test.c:18:1: internal compiler error: in dwarf2out_var_location, at dwarf2out.c:20810
+ }
+ ^
+Please submit a full bug report,
+with preprocessed source if appropriate.
+See <http://gcc.gnu.org/bugs.html> for instructions
+
+3. The quick workround is trying to enlarge the size of array with larger
+than 2.
+
+4. File a bug to GNU, but it could not be reproduced on there environment.
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60643
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu jia windriver com>
+---
+ tests/bench-slope.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/bench-slope.c b/tests/bench-slope.c
+index bd05064..28c2438 100644
+--- a/tests/bench-slope.c
++++ b/tests/bench-slope.c
+@@ -1197,7 +1197,7 @@ static struct bench_ops hash_ops = {
+ };
+ 
+ 
+-static struct bench_hash_mode hash_modes[] = {
++static struct bench_hash_mode hash_modes[3] = {
+   {"", &hash_ops},
+   {0},
+ };
+@@ -1349,7 +1349,7 @@ static struct bench_ops mac_ops = {
+ };
+ 
+ 
+-static struct bench_mac_mode mac_modes[] = {
++static struct bench_mac_mode mac_modes[3] = {
+   {"", &mac_ops},
+   {0},
+ };
+-- 
+1.8.1.2
+
diff --git a/meta-gnomeos/recipes-core/libgcrypt/files/fix-undefined-reference-to-pthread.patch 
b/meta-gnomeos/recipes-core/libgcrypt/files/fix-undefined-reference-to-pthread.patch
new file mode 100644
index 0000000..e7de8ba
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/files/fix-undefined-reference-to-pthread.patch
@@ -0,0 +1,27 @@
+From cc0e2b403d33892963513a3ba98e4ae5a05a4d3c Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu jia windriver com>
+Date: Sun, 12 Jun 2016 04:44:29 -0400
+Subject: [PATCH] tests/Makefile.am: fix undefined reference to `pthread_create'
+
+Add missing '-lpthread' to CFLAGS
+
+Upstream-Status: Pending
+
+Signed-off-by: Hongxu Jia <hongxu jia windriver com>
+---
+ tests/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index d462f30..bef6dd7 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -62,4 +62,4 @@ EXTRA_DIST = README rsa-16k.key cavs_tests.sh cavs_driver.pl \
+ 
+ LDADD = $(standard_ldadd) $(GPG_ERROR_LIBS)
+ t_lock_LDADD = $(standard_ldadd) $(GPG_ERROR_MT_LIBS)
+-t_lock_CFLAGS = $(GPG_ERROR_MT_CFLAGS)
++t_lock_CFLAGS = $(GPG_ERROR_MT_CFLAGS) -lpthread
+-- 
+2.8.1
+
diff --git 
a/meta-gnomeos/recipes-core/libgcrypt/files/libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch 
b/meta-gnomeos/recipes-core/libgcrypt/files/libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch
new file mode 100644
index 0000000..a3e5403
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/files/libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch
@@ -0,0 +1,32 @@
+Upstream-Status: Pending
+
+libgcrypt: fix building error with '-O2' in sysroot path
+
+Characters like '-O2' or '-Ofast' will be replaced by '-O1' when compiling cipher.
+If we are cross compiling libgcrypt and sysroot contains such characters, we would
+get compile errors because the sysroot path has been modified.
+
+Fix this by adding blank spaces before and after the original matching pattern in the
+sed command.
+
+Signed-off-by: Chen Qi <Qi Chen windriver com>
+---
+ cipher/Makefile.am |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cipher/Makefile.am b/cipher/Makefile.am
+index 76cdc96..9a89792 100644
+--- a/cipher/Makefile.am
++++ b/cipher/Makefile.am
+@@ -69,7 +69,7 @@ rfc2268.c \
+ camellia.c camellia.h camellia-glue.c
+ 
+ if ENABLE_O_FLAG_MUNGING
+-o_flag_munging = sed -e 's/-O\([2-9s][2-9s]*\)/-O1/' -e 's/-Ofast/-O1/g'
++o_flag_munging = sed -e 's/ -O\([2-9s][2-9s]*\) / -O1 /' -e 's/ -Ofast / -O1 /g'
+ else
+ o_flag_munging = cat
+ endif
+-- 
+1.7.9.5
+
diff --git a/meta-gnomeos/recipes-core/libgcrypt/libgcrypt.inc 
b/meta-gnomeos/recipes-core/libgcrypt/libgcrypt.inc
new file mode 100644
index 0000000..51974f8
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/libgcrypt.inc
@@ -0,0 +1,50 @@
+SUMMARY = "General purpose cryptographic library based on the code from GnuPG"
+HOMEPAGE = "http://directory.fsf.org/project/libgcrypt/";
+BUGTRACKER = "https://bugs.g10code.com/gnupg/index";
+SECTION = "libs"
+
+# helper program gcryptrnd and getrandom are under GPL, rest LGPL
+LICENSE = "GPLv2+ & LGPLv2.1+ & GPLv3+"
+LICENSE_${PN} = "LGPLv2.1+"
+LICENSE_${PN}-dev = "GPLv2+ & LGPLv2.1+"
+LICENSE_dumpsexp-dev = "GPLv3+"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
+                    file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff"
+
+DEPENDS = "libgpg-error libcap"
+
+SRC_URI = "https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-${PV}.tar.gz\
+           file://add-pkgconfig-support.patch \
+           file://libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch \
+           file://fix-ICE-failure-on-mips-with-option-O-and-g.patch \
+           file://fix-undefined-reference-to-pthread.patch \
+           file://0001-ecc-Store-EdDSA-session-key-in-secure-memory.patch \
+           file://CVE-2017-7526.patch \
+"
+
+BINCONFIG = "${bindir}/libgcrypt-config"
+
+inherit autotools texinfo binconfig-disabled pkgconfig
+
+EXTRA_OECONF = "--disable-asm --with-capabilities"
+
+do_configure_prepend () {
+       # Else this could be used in preference to the one in aclocal-copy
+       rm -f ${S}/m4/gpg-error.m4
+}
+
+# libgcrypt.pc is added locally and thus installed here
+do_install_append() {
+       install -d ${D}/${libdir}/pkgconfig
+       install -m 0644 ${B}/src/libgcrypt.pc ${D}/${libdir}/pkgconfig/
+}
+
+PACKAGES =+ "dumpsexp-dev"
+
+FILES_${PN}-dev += "${bindir}/hmac256"
+FILES_dumpsexp-dev += "${bindir}/dumpsexp"
+
+ARM_INSTRUCTION_SET = "arm"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnomeos/recipes-core/libgcrypt/libgcrypt_1.7.3.bb 
b/meta-gnomeos/recipes-core/libgcrypt/libgcrypt_1.7.3.bb
new file mode 100644
index 0000000..ddd7c53
--- /dev/null
+++ b/meta-gnomeos/recipes-core/libgcrypt/libgcrypt_1.7.3.bb
@@ -0,0 +1,4 @@
+require libgcrypt.inc
+
+SRC_URI[md5sum] = "bb5b00cb70b1215833857fd690080fbb"
+SRC_URI[sha256sum] = "c98470cf6a781f2af4bdfda710ad39f0f54b5044e8c43b878d4005737d6c213f"
diff --git a/meta-gnomeos/recipes-core/linux/files/9p.cfg b/meta-gnomeos/recipes-core/linux/files/9p.cfg
new file mode 100644
index 0000000..c844bc1
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/files/9p.cfg
@@ -0,0 +1,7 @@
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+CONFIG_NET_9P_RDMA=m
+CONFIG_9P_FS=m
+CONFIG_9P_FSCACHE=y
+CONFIG_9P_FS_POSIX_ACL=y
+CONFIG_9P_FS_SECURITY=y
diff --git a/meta-gnomeos/recipes-core/linux/files/drm.cfg b/meta-gnomeos/recipes-core/linux/files/drm.cfg
new file mode 100644
index 0000000..74e704b
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/files/drm.cfg
@@ -0,0 +1,7 @@
+CONFIG_DRM=m
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+CONFIG_DRM_CIRRUS_QEMU=m
+CONFIG_DRM_QXL=m
+CONFIG_DRM_VMWGFX=m
+CONFIG_DRM_VMWGFX_FBCON=y
+CONFIG_VIDEO_OUTPUT_CONTROL=y
diff --git a/meta-gnomeos/recipes-core/linux/files/fhandle.cfg 
b/meta-gnomeos/recipes-core/linux/files/fhandle.cfg
new file mode 100644
index 0000000..edcdc05
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/files/fhandle.cfg
@@ -0,0 +1 @@
+CONFIG_FHANDLE=y
diff --git a/meta-gnomeos/recipes-core/linux/files/kvm.cfg b/meta-gnomeos/recipes-core/linux/files/kvm.cfg
new file mode 100644
index 0000000..cb880ce
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/files/kvm.cfg
@@ -0,0 +1,6 @@
+CONFIG_HYPERVISOR_GUEST=y
+CONFIG_PARAVIRT=y
+CONFIG_PARAVIRT_TIME_ACCOUNTING=y
+PARAVIRT_SPINLOCKS=y
+CONFIG_KVM_CLOCK=y
+CONFIG_KVM_GUEST=y
diff --git a/meta-gnomeos/recipes-core/linux/files/tmpfs.cfg b/meta-gnomeos/recipes-core/linux/files/tmpfs.cfg
new file mode 100644
index 0000000..8385bb1
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/files/tmpfs.cfg
@@ -0,0 +1,2 @@
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
diff --git a/meta-gnomeos/recipes-core/linux/files/uinput.cfg 
b/meta-gnomeos/recipes-core/linux/files/uinput.cfg
new file mode 100644
index 0000000..fc267df
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/files/uinput.cfg
@@ -0,0 +1,3 @@
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=m
+
diff --git a/meta-gnomeos/recipes-core/linux/linux-yocto-dev.bbappend 
b/meta-gnomeos/recipes-core/linux/linux-yocto-dev.bbappend
new file mode 100644
index 0000000..870cb00
--- /dev/null
+++ b/meta-gnomeos/recipes-core/linux/linux-yocto-dev.bbappend
@@ -0,0 +1,8 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+SRC_URI += "file://kvm.cfg"
+SRC_URI += "file://uinput.cfg"
+SRC_URI += "file://drm.cfg"
+SRC_URI += "file://9p.cfg"
+SRC_URI += "file://tmpfs.cfg"
+SRC_URI += "file://fhandle.cfg"
+PRINC = "7"
diff --git a/meta-gnomeos/recipes-core/ninja/ninja_1.7.1.bb b/meta-gnomeos/recipes-core/ninja/ninja_1.7.1.bb
new file mode 100644
index 0000000..d545342
--- /dev/null
+++ b/meta-gnomeos/recipes-core/ninja/ninja_1.7.1.bb
@@ -0,0 +1,29 @@
+DESCRIPTION = "Ninja is a small build system with a focus on speed."
+HOMEPAGE = "http://ninja-build.com";
+LICENSE = "Apache-2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
+
+DEPENDS = "re2c-native ninja-native"
+
+SRCREV="b49b0fc01bb052b6ac856b1e72be9391e962398e"
+SRC_URI = "git://github.com/ninja-build/ninja.git;branch=release"
+
+S="${WORKDIR}/git"
+
+do_configure[noexec] = "1"
+
+do_compile_class-native() {
+    ./configure.py --bootstrap
+}
+
+do_compile() {
+    ./configure.py
+    ninja
+}
+
+do_install() {
+    install -d ${D}${bindir}
+    install -m 0755 ${S}/ninja ${D}${bindir}/ninja
+}
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnomeos/recipes-core/nss-altfiles/nss-altfiles.bb 
b/meta-gnomeos/recipes-core/nss-altfiles/nss-altfiles.bb
new file mode 100644
index 0000000..a6db2db
--- /dev/null
+++ b/meta-gnomeos/recipes-core/nss-altfiles/nss-altfiles.bb
@@ -0,0 +1,30 @@
+DESCRIPTION = "\
+NSS module to read user/group information from files in \
+alternate locations."
+HOMEPAGE = "https://github.com/aperezdc/nss-altfiles";
+AUTHOR = "Adrian Perez <aperez igalia com>"
+SECTION = "libs"
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fb1949d8d807e528c1673da700aff41f"
+SRC_URI = "http://github.com/downloads/aperezdc/${PN}/${PN}-${PV}.tar.xz";
+SRC_URI[sha256sum] = "53d26e6a4cdb1b662098db5b6dfa71701eeb957299895d021098f135ef3e4ad6"
+
+PV = "2.13.2"
+PR = "r1"
+DEPENDS += "glibc"
+
+# Generate only an extra split-debug package (no -doc/-dev packages)
+#
+PACKAGES = "${PN} ${PN}-dbg"
+
+# The package_rpm would rename generated packages to libnss_altfiles,
+# so override the package names to get nss-altfiles(-dbg)
+#
+PKG_${PN} = "${PN}"
+PKG_${PN}-dbg = "${PN}-dbg"
+
+# The .so has to be installed under /lib for the libc to use it.
+#
+EXTRA_OECONF = "--datadir=/lib --prefix=/"
+
+inherit autotools-brokensep
diff --git a/meta-gnomeos/recipes-core/ostree/ostree.bb b/meta-gnomeos/recipes-core/ostree/ostree.bb
new file mode 100644
index 0000000..47359f5
--- /dev/null
+++ b/meta-gnomeos/recipes-core/ostree/ostree.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Linux-based operating system development and deployment tool"
+LICENSE = "LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=97285cb818cf231e6a36f72c82592235"
+
+PV= "2012.11.23.g0d04738"
+PR= "r0"
+
+SRC_URI = "http://people.gnome.org/~walters/ostree-${PV}.tar.gz";
+SRC_URI[sha256sum] = "530fc9ad7c5dd4d7ed1cababa578288d112d803144d8176a25df45906f568e95"
+#SRC_URI = "git:///src/ostree;tag=40ebccb55ea80437d795eec57cca03ce45cba0cd"
+#S = "${WORKDIR}/git"
+
+DEPENDS += "attr libarchive glib-2.0"
+DEPENDS_virtclass-native += "attr-native libarchive-native glib-2.0-native"
+
+inherit autotools
+
+EXTRA_OECONF = "--without-soup-gnome --with-libarchive"
+
+FILES_${PN} += "${libdir}/ostree/"
+
+BBCLASSEXTEND = "native"
+
diff --git a/meta-gnomeos/recipes-core/perl-text-csv/perl-module-text-csv_1.32.bb 
b/meta-gnomeos/recipes-core/perl-text-csv/perl-module-text-csv_1.32.bb
new file mode 100644
index 0000000..4ab3e02
--- /dev/null
+++ b/meta-gnomeos/recipes-core/perl-text-csv/perl-module-text-csv_1.32.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Perl Text::CSV module"
+DESCRIPTION = "comma-separated values manipulator (using XS or PurePerl)"
+
+SECTION = "libs"
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+RDEPENDS_${PN} += "perl"
+PR = "r0"
+
+LIC_FILES_CHKSUM = "file://README;md5=73eadbd0cbdcdbdd9ef36fcef9e7206d"
+
+SRC_URI = "http://search.mcpan.org/CPAN/authors/id/M/MA/MAKAMAKA/Text-CSV-${PV}.tar.gz";
+
+SRC_URI[md5sum] = "f476205648694a64684be2ab29e44e19"
+SRC_URI[sha256sum] = "b49fea66d75a1419a76b0b2b30144d97e1f69728928c06ed08405874fd8ff9af"
+
+S = "${WORKDIR}/Text-CSV-${PV}"
+
+inherit cpan
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnomeos/recipes-core/tasks/task-gnomeos-contents-devel.bb 
b/meta-gnomeos/recipes-core/tasks/task-gnomeos-contents-devel.bb
new file mode 100644
index 0000000..93f7d25
--- /dev/null
+++ b/meta-gnomeos/recipes-core/tasks/task-gnomeos-contents-devel.bb
@@ -0,0 +1,117 @@
+#
+# Copyright (C) 2011 Colin Walters <walters verbum org>
+#
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+ALLOW_EMPTY_${PN} = "1"
+
+PR = "3"
+
+# We explicitly want -dbg packages
+INSANE_SKIP_${PN} = "debug-deps"
+
+RDEPENDS_${PN} += "     \
+        autoconf \
+        autoconf-archive \
+        automake \
+        bc \
+        binutils \
+        binutils-symlinks \
+        coreutils \
+        cpp \
+        cpp-symlinks \
+        ccache \
+        diffutils \
+        gcc \
+        gcc-symlinks \
+        g++ \
+        g++-symlinks \
+        gettext \
+        make \
+        intltool \
+        libtool \
+        libtool-dev \
+        perl-module-re \
+        perl-module-text-wrap \
+        pkgconfig \
+        findutils \
+        less \
+        ldd \
+        file \
+        elfutils \
+        libdw \
+        libelf \
+        libasm \
+         ninja \
+        valgrind \
+        python-dev \
+        python-setuptools \
+        python3-setuptools \
+        python3-dev \
+        python3-modules \
+        python3-misc \
+        libffi-dev \
+        bison flex \
+        git \
+        git-perltools \
+        gdb \
+        zip \
+        ruby \
+        cmake \
+        llvm3.3-dev \
+        libxml-parser-perl \
+        gettext-dev \
+        pciutils-dev \
+        bzip2-dev \
+        xz-dev \
+        zlib-dev \
+        gdbm-dev \
+        libtool-dev \
+        util-linux-libuuid-dev \
+        libpam-dev \
+        tiff-dev \
+        libjpeg-turbo-dev \
+        libjpeg-turbo-dbg \
+        libpng-dev \
+        libexif-dev \
+        libtool-dev \
+        libsndfile1-dev \
+        alsa-dev \
+        libogg-dev \
+        speexdsp-dev \
+        libvorbis-dev \
+        libssp-dev \
+        libstdc++-dev \
+        libcap-dev \
+        libcap-bin \
+        libgpg-error-dev \
+        gpgme-dev \
+        libtasn1-dev \
+        libtasn1-bin \
+        libgcrypt-dev \
+        attr-dev \
+        acl-dev \
+        gnutls-dev \
+        icu-dev \
+        curl-dev \
+        nspr-dev \
+        ncurses-dev \
+        db-dev \
+        cracklib-dev \
+        e2fsprogs-dev \
+        krb5-dev \
+         llvm3.3-dev \
+        boost-dev \
+        libsqlite3-dev \
+        expat-dev \
+        intltool \
+        texinfo \
+        perl-misc \
+        python-pyparsing \
+        cyrus-sasl-dev \
+        elfutils-dev \
+        fuse-dev \
+        "
diff --git a/meta-gnomeos/recipes-core/tasks/task-gnomeos-contents-runtime.bb 
b/meta-gnomeos/recipes-core/tasks/task-gnomeos-contents-runtime.bb
new file mode 100644
index 0000000..3f94c71
--- /dev/null
+++ b/meta-gnomeos/recipes-core/tasks/task-gnomeos-contents-runtime.bb
@@ -0,0 +1,137 @@
+#
+# Copyright (C) 2011 Colin Walters <walters verbum org>
+#
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+ALLOW_EMPTY_${PN} = "1"
+
+PR = "1"
+
+RDEPENDS_${PN} += "\
+        util-linux-libuuid \
+        util-linux-blkid \
+        e2fsprogs-e2fsck \
+        e2fsprogs-mke2fs \
+        e2fsprogs-tune2fs \
+        btrfs-tools \
+        libffi \
+        gdbm \
+        pciutils \
+        tiff \
+        libjpeg-turbo \
+        libpng \
+        libexif \
+        libstdc++ \
+        gnutls \
+        gpgme \
+        gpgme-pthread \
+        libogg \
+        libssp \
+        glibc-gconvs \
+        glibc-binaries \
+        glibc-localedatas \
+        glibc-charmaps \
+        glibc-utils \
+        glibc-locale \
+        pam-plugin-cracklib \
+        pam-plugin-env \
+        pam-plugin-keyinit \
+        pam-plugin-limits \
+        pam-plugin-localuser \
+        pam-plugin-loginuid \
+        pam-plugin-unix \
+        pam-plugin-rootok \
+        pam-plugin-succeed-if \
+        pam-plugin-permit \
+        pam-plugin-nologin \
+        shadow \
+        ncurses-terminfo-base \
+        cpio \
+        util-linux-uuidgen \
+        util-linux-mount \
+        util-linux-agetty \
+         ttf-dejavu-sans \
+         ttf-dejavu-sans-mono \
+         ttf-dejavu-serif \
+        kbd \
+        kbd-consolefonts \
+        kbd-keymaps \
+        kbd-unimaps \
+        libvorbis \
+        speexdsp \
+        alsa-lib \
+        cracklib \
+        pciutils \
+        base-files \
+        base-passwd \
+        busybox \
+        update-alternatives-cworth \
+        coreutils \
+        sed \
+        findutils \
+        strace \
+        bash \
+        tar \
+        grep \
+        gawk \
+        gzip \
+        less \
+        util-linux \
+        curl \
+        tzdata \
+        tzdata-africa \
+        tzdata-americas \
+        tzdata-antarctica \
+        tzdata-arctic \
+        tzdata-asia \
+        tzdata-atlantic \
+        tzdata-australia \
+        tzdata-europe \
+        tzdata-misc \
+        tzdata-pacific \
+        tzdata-posix \
+        tzdata-right \
+        libsndfile1 \
+        icu \
+        procps \
+        libpam \
+        attr \
+        acl \
+        bzip2 \
+        xz \
+        unzip \
+        ncurses \
+        nspr \
+        parted \
+        dosfstools \
+        python-modules \
+        python-misc \
+        python-six \
+        python3 \
+        python3-modules \
+        python3-misc \
+        openssh \
+        krb5 \
+        module-init-tools \
+        nss-altfiles \
+         llvm3.3 \
+         sqlite3 libsqlite3 \
+         expat \
+         syslinux-extlinux \
+         syslinux-mbr \
+         syslinux-misc \
+        cyrus-sasl \
+        elfutils \
+        libdw \
+        libelf \
+        libasm \
+        fuse \
+        fuse-utils \
+         ca-certificates \
+         libgcrypt \
+        perl-module-text-csv \
+         dnsmasq \
+        "
diff --git a/meta-oe b/meta-oe
new file mode 160000
index 0000000..6e3fc5b
--- /dev/null
+++ b/meta-oe
@@ -0,0 +1 @@
+Subproject commit 6e3fc5b8d904d06e3aa77e9ec9968ab37a798188


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]