Yocto 2.3

Move OpenBMC to Yocto 2.3(pyro).

Tested: Built and verified Witherspoon and Palmetto images
Change-Id: I50744030e771f4850afc2a93a10d3507e76d36bc
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Resolves: openbmc/openbmc#2461
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
new file mode 100644
index 0000000..353987e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
@@ -0,0 +1,16 @@
+require ${BPN}.inc
+
+DEPENDS = "zlib-native jpeg-native libpng-native libxext-native libxft-native"
+
+inherit native
+
+EXTRA_OECMAKE += " \
+    -DOPTION_BUILD_SHARED_LIBS=OFF \
+    -DOPTION_USE_THREADS=OFF \
+    -DOPTION_USE_XDBE=OFF \
+    -DOPTION_USE_XFT=OFF \
+    -DOPTION_BUILD_EXAMPLES=OFF \
+    -DOPTION_USE_XINERAMA=OFF \
+    -DOPTION_USE_XFIXES=OFF \
+    -DOPTION_USE_XCURSOR=OFF \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
new file mode 100644
index 0000000..542fd66
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
@@ -0,0 +1,34 @@
+require ${BPN}.inc
+
+DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft  ${BPN}-native"
+
+inherit binconfig lib_package gtk-icon-cache mime
+
+EXTRA_OECMAKE = " \
+    -DOPTION_BUILD_SHARED_LIBS=ON \
+    -DOPTION_USE_THREADS=ON \
+    -DOPTION_USE_XDBE=ON \
+    -DOPTION_USE_XFT=ON \
+    -DFLTK_CONFIG_PATH=${libdir}/cmake \
+"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
+
+PACKAGECONFIG[examples] = "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF,"
+PACKAGECONFIG[opengl] = "-DOPTION_USE_GL=ON,-DOPTION_USE_GL=OFF,virtual/libgl"
+PACKAGECONFIG[xinerama] = "-DOPTION_USE_XINERAMA=ON,-DOPTION_USE_XINERAMA=OFF,libxinerama"
+PACKAGECONFIG[xfixes] = "-DOPTION_USE_XFIXES=ON,-DOPTION_USE_XFIXES=OFF,libxfixes"
+PACKAGECONFIG[xcursor] = "-DOPTION_USE_XCURSOR=ON,-DOPTION_USE_XCURSOR=OFF,libxcursor"
+
+do_install_append() {
+    sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/fltk-config
+}
+
+python populate_packages_prepend () {
+    if (d.getVar('DEBIAN_NAMES')):
+        d.setVar('PKG_${BPN}', 'libfltk${PV}')
+}
+
+LEAD_SONAME = "libfltk.so"
+
+FILES_${PN} += "${datadir}/mime"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
new file mode 100644
index 0000000..dbe700a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
@@ -0,0 +1,21 @@
+SUMMARY = "FLTK is a cross-platform C++ GUI toolkit"
+HOMEPAGE = "http://www.fltk.org"
+SECTION = "libs"
+LICENSE = "LGPLv2 & FLTK"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
+
+SRC_URI = " \
+    http://fltk.org/pub/fltk/1.3.4/${BP}-source.tar.gz \
+    file://disable_test.patch \
+    file://fltk-no-freetype-config.patch \
+    file://0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch \
+    file://0002-always-build-fluid-and-export-pointers.patch \
+"
+
+PV = "1.3.4-1"
+SRC_URI[md5sum] = "d7fcd27ab928648e1a1366dd2e273970"
+SRC_URI[sha256sum] = "7fb2c8882433ce694e6900c94fda505e8f4ed3fa9c7e597007098a33b85c53f4"
+
+inherit cmake pkgconfig
+
+TARGET_CC_ARCH += "${LDFLAGS} -DXFT_MAJOR=2"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
new file mode 100644
index 0000000..e6e68a0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
@@ -0,0 +1,39 @@
+From e76a062338063615c069fedc5a143cc38c34d9b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Tue, 28 Feb 2017 01:00:21 +0100
+Subject: [PATCH] Fl_Preferences.cxx: do not use dlopen in case glibc's headers
+ are missing
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx: In static member function ‘static int Fl_Plugin_Manager::load(const char*)’:
+| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx:1741:27: error: ‘RTLD_LAZY’ was not declared in this scope
+|      dl = dlopen(filename, RTLD_LAZY);
+|                            ^~~~~~~~~
+| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx:1741:36: error: ‘dlopen’ was not declared in this scope
+|      dl = dlopen(filename, RTLD_LAZY);
+|                                     ^
+| src/CMakeFiles/fltk.dir/build.make:1217: recipe for target 'src/CMakeFiles/fltk.dir/Fl_Preferences.cxx.o' failed
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ src/Fl_Preferences.cxx | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Fl_Preferences.cxx b/src/Fl_Preferences.cxx
+index 1233bb1..7857b9b 100644
+--- a/src/Fl_Preferences.cxx
++++ b/src/Fl_Preferences.cxx
+@@ -1737,7 +1737,7 @@ int Fl_Plugin_Manager::load(const char *filename) {
+   HMODULE dl = LoadLibrary(filename);
+ #else
+   void * dl = NULL;
+-# if HAVE_DLSYM
++# if HAVE_DLSYM && HAVE_DLFCN_H
+     dl = dlopen(filename, RTLD_LAZY);
+ # endif
+ #endif
+-- 
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
new file mode 100644
index 0000000..cca977c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
@@ -0,0 +1,31 @@
+From 16010cb1a69ea2326d8102b7f1e34b65aca4b278 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Tue, 28 Feb 2017 01:20:42 +0100
+Subject: [PATCH] always build fluid and export pointers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ CMake/export.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMake/export.cmake b/CMake/export.cmake
+index 968186a..95e04eb 100644
+--- a/CMake/export.cmake
++++ b/CMake/export.cmake
+@@ -21,7 +21,7 @@
+ # final config and export
+ #######################################################################
+ # Set the fluid executable path
+-if(CMAKE_CROSSCOMPILING)
++if(FALSE)
+    find_file(FLUID_PATH
+       NAMES fluid fluid.exe
+       PATHS ENV PATH
+-- 
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch
deleted file mode 100644
index 014184d..0000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 14c22398f8370e33a798360ed0dad513af8f1470 Mon Sep 17 00:00:00 2001
-From: AlbrechtS <AlbrechtS@ea41ed52-d2ee-0310-a9c1-e6b18d33e121>
-Date: Sun, 15 Mar 2015 19:32:33 +0000
-Subject: [PATCH] Fix 'boolean' issue with jpeg-9 library compatibility (STR
- #2920).
-
-According to comments in STR #2920 and my own tests this is also
-compatible with older jpeg libraries (at least jpeg-8).
-
-Upstream-Status: Backport
-
----
- src/Fl_JPEG_Image.cxx |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/Fl_JPEG_Image.cxx b/src/Fl_JPEG_Image.cxx
-index 47120a7..6cebe88 100644
---- a/src/Fl_JPEG_Image.cxx
-+++ b/src/Fl_JPEG_Image.cxx
-@@ -155,7 +155,7 @@ Fl_JPEG_Image::Fl_JPEG_Image(const char *filename)	// I - File to load
-   
-   jpeg_create_decompress(&dinfo);
-   jpeg_stdio_src(&dinfo, fp);
--  jpeg_read_header(&dinfo, 1);
-+  jpeg_read_header(&dinfo, TRUE);
-   
-   dinfo.quantize_colors      = (boolean)FALSE;
-   dinfo.out_color_space      = JCS_RGB;
-@@ -337,7 +337,7 @@ Fl_JPEG_Image::Fl_JPEG_Image(const char *name, const unsigned char *data)
-   
-   jpeg_create_decompress(&dinfo);
-   jpeg_mem_src(&dinfo, data);
--  jpeg_read_header(&dinfo, 1);
-+  jpeg_read_header(&dinfo, TRUE);
-   
-   dinfo.quantize_colors      = (boolean)FALSE;
-   dinfo.out_color_space      = JCS_RGB;
--- 
-1.7.9.5
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
index 4d13ffc..2a9915b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
@@ -1,20 +1,40 @@
---- a/configure.in.orig	2015-11-26 14:30:17.893426966 +0800
-+++ b/configure.in	2015-11-26 14:33:00.285424099 +0800
-@@ -969,12 +969,12 @@ case $host_os_gui in
-         AC_ARG_ENABLE(xft, [  --enable-xft            turn on Xft support [[default=yes]]])
+From 699420d306cadbb5285942e09f4383d84b01985d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Fri, 13 Jan 2017 13:21:23 +0100
+Subject: [PATCH] replace freetype-config by pkg-config
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ configure.ac | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f0efd48..3af5ecb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1006,12 +1006,12 @@ case $host_os_gui in
  
+ 	xft_found=no
  	if test x$enable_xft != xno; then
--            AC_PATH_PROG(FTCONFIG,freetype-config)
-+            AC_PATH_PROG(PKGCONFIG,pkg-config)
+-	    AC_PATH_PROG(FTCONFIG, freetype-config)
++	    AC_PATH_PROG(PKGCONFIG,pkg-config)
  
 -	    if test "x$FTCONFIG" != x; then
--	        CPPFLAGS="`$FTCONFIG --cflags` $CPPFLAGS"
--	        CFLAGS="`$FTCONFIG --cflags` $CFLAGS"
--	        CXXFLAGS="`$FTCONFIG --cflags` $CXXFLAGS"
+-		CPPFLAGS="`$FTCONFIG --cflags` $CPPFLAGS"
+-		CFLAGS="`$FTCONFIG --cflags` $CFLAGS"
+-		CXXFLAGS="`$FTCONFIG --cflags` $CXXFLAGS"
 +	    if test "x$PKGCONFIG" != x; then
 +	        CPPFLAGS="`$PKGCONFIG --cflags xft` $CPPFLAGS"
 +	        CFLAGS="`$PKGCONFIG --cflags xft` $CFLAGS"
 +	        CXXFLAGS="`$PKGCONFIG --cflags xft` $CXXFLAGS"
  
- 	        AC_CHECK_LIB(fontconfig, FcPatternCreate)
+ 		AC_CHECK_LIB(fontconfig, FcPatternCreate)
  		AC_CHECK_HEADER(X11/Xft/Xft.h,
+-- 
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb
deleted file mode 100644
index 117ecc3..0000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb
+++ /dev/null
@@ -1,49 +0,0 @@
-SUMMARY = "FLTK is a cross-platform C++ GUI toolkit"
-HOMEPAGE = "http://www.fltk.org"
-SECTION = "libs"
-LICENSE = "LGPLv2 & FLTK"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
-
-DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft"
-
-SRC_URI = "http://fltk.org/pub/fltk/${PV}/${BP}-source.tar.gz \
-           file://disable_test.patch \
-           file://fltk-no-freetype-config.patch \
-           file://fix-boolean-issue-with-jpeg9.patch \
-"
-
-SRC_URI[md5sum] = "9ccdb0d19dc104b87179bd9fd10822e3"
-SRC_URI[sha256sum] = "f8398d98d7221d40e77bc7b19e761adaf2f1ef8bb0c30eceb7beb4f2273d0d97"
-
-inherit autotools-brokensep binconfig pkgconfig lib_package
-
-TARGET_CC_ARCH += "${LDFLAGS} -DXFT_MAJOR=2"
-
-EXTRA_OECONF = "--enable-shared \
-                --enable-threads \
-                --enable-xdbe \
-                --enable-xft \
-"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}"
-
-PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl"
-PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,libxinerama"
-PACKAGECONFIG[xfixes] = "--enable-xfixes,--disable-xfixes,libxfixes"
-PACKAGECONFIG[xcursor] = "--enable-xcursor,--disable-xcursor,libxcursor"
-
-do_configure() {
-    oe_runconf
-}
-
-do_install_append_class-target() {
-    sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/fltk-config
-}
-
-python populate_packages_prepend () {
-    if (d.getVar('DEBIAN_NAMES', 1)):
-        d.setVar('PKG_${BPN}', 'libfltk${PV}')
-}
-
-LEAD_SONAME = "libfltk.so"
-