diff options
author | Dave Cobbley <david.j.cobbley@linux.intel.com> | 2018-08-14 20:05:37 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2018-08-23 04:26:31 +0300 |
commit | eb8dc40360f0cfef56fb6947cc817a547d6d9bc6 (patch) | |
tree | de291a73dc37168da6370e2cf16c347d1eba9df8 /meta-openembedded/meta-oe/recipes-core | |
parent | 9c3cf826d853102535ead04cebc2d6023eff3032 (diff) | |
download | openbmc-eb8dc40360f0cfef56fb6947cc817a547d6d9bc6.tar.xz |
[Subtree] Removing import-layers directory
As part of the move to subtrees, need to bring all the import layers
content to the top level.
Change-Id: I4a163d10898cbc6e11c27f776f60e1a470049d8f
Signed-off-by: Dave Cobbley <david.j.cobbley@linux.intel.com>
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-core')
37 files changed, 1689 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker/0001-Comment-rst2man-related-stuff.patch b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker/0001-Comment-rst2man-related-stuff.patch new file mode 100644 index 000000000..f10c49e7c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker/0001-Comment-rst2man-related-stuff.patch @@ -0,0 +1,34 @@ +From a92fd7da3a262e21c0970a3908eb0b4502819a01 Mon Sep 17 00:00:00 2001 +From: Yang Lyu <yangl@axis.com> +Date: Fri, 23 Feb 2018 16:31:49 +0100 +Subject: [PATCH] Comment rst2man related stuff + +--- + meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 56d38e4..3c3b109 100644 +--- a/meson.build ++++ b/meson.build +@@ -15,7 +15,7 @@ add_project_arguments('-DBINDIR="' + join_paths(get_option('prefix'), get_option + cc = meson.get_compiler('c') + conf = configuration_data() + mod_pkgconfig = import('pkgconfig') +-prog_rst2man = find_program('rst2man', 'rst2man.py') ++#prog_rst2man = find_program('rst2man', 'rst2man.py') + + sub_cdvar = subproject('c-dvar', version: '>=1') + sub_clist = subproject('c-list', version: '>=3') +@@ -56,7 +56,7 @@ endif + + conf.set('bindir', join_paths(get_option('prefix'), get_option('bindir'))) + +-subdir('docs') ++#subdir('docs') + subdir('src') + + if use_launcher +-- +2.1.4 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker/0002-Correct-including-directory-for-conf.patch b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker/0002-Correct-including-directory-for-conf.patch new file mode 100644 index 000000000..4909dea12 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker/0002-Correct-including-directory-for-conf.patch @@ -0,0 +1,25 @@ +From 4b79f603b948709906c108796087de7b5643f61a Mon Sep 17 00:00:00 2001 +From: Yang Lyu <yangl@axis.com> +Date: Mon, 26 Feb 2018 12:48:34 +0100 +Subject: [PATCH] Correct including directory for conf + +--- + src/launch/config.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/launch/config.c b/src/launch/config.c +index 6a68699..579471b 100644 +--- a/src/launch/config.c ++++ b/src/launch/config.c +@@ -1022,7 +1022,7 @@ static void config_parser_end_fn(void *userdata, const XML_Char *name) { + state->file, + state->current->include.selinux_root_relative ? + bus_selinux_policy_root() : +- state->file->path, ++ NULL, + state->current->cdata); + if (r) { + state->error = error_trace(r); +-- +2.1.4 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_git.bb b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_git.bb new file mode 100644 index 000000000..b62bccf2c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_git.bb @@ -0,0 +1,32 @@ +SUMMARY = "dbus broker" +DESCRIPTION = "Drop-in replacement for dbus-daemon." + +SECTION = "base" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=7b486c2338d225a1405d979ed2c15ce8" + +DEPENDS = "dbus glib-2.0 expat" + +PV = "9+git${SRCPV}" +SRCREV = "ccd06b284892182af569e69046262331150e3536" + +SRC_URI = "git://github.com/bus1/dbus-broker;protocol=git" +SRC_URI += "file://0001-Comment-rst2man-related-stuff.patch" +SRC_URI += "file://0002-Correct-including-directory-for-conf.patch" + +S = "${WORKDIR}/git" + +inherit meson pkgconfig systemd distro_features_check + +REQUIRED_DISTRO_FEATURES = "systemd" + +SYSTEMD_SERVICE_${PN} = "${BPN}.service" + +FILES_${PN} += "${systemd_system_unitdir}" +FILES_${PN} += "${systemd_user_unitdir}" + +RDEPENDS_${PN} = "dbus" + +BBCLASSEXTEND = "native" + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy/0001-dbus-daemon-proxy-Return-DBUS_HANDLER_RESULT_NOT_YET.patch b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy/0001-dbus-daemon-proxy-Return-DBUS_HANDLER_RESULT_NOT_YET.patch new file mode 100644 index 000000000..2c4ca057f --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy/0001-dbus-daemon-proxy-Return-DBUS_HANDLER_RESULT_NOT_YET.patch @@ -0,0 +1,30 @@ +From 8e6d1f590b1cb437dc67c51298ef1722a7266d35 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 25 Jul 2017 18:37:58 -0700 +Subject: [PATCH] dbus-daemon-proxy: Return DBUS_HANDLER_RESULT_NOT_YET_HANDLED + from master_filter_cb() if DBusConnection is null + +So it can be passed on to other handlers since this could +not be handled here + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + dbus-daemon-proxy.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/dbus-daemon-proxy.c b/dbus-daemon-proxy.c +index 009e4fd..f3f0d80 100644 +--- a/dbus-daemon-proxy.c ++++ b/dbus-daemon-proxy.c +@@ -115,7 +115,7 @@ master_filter_cb (DBusConnection *conn, + guint32 serial; + + if (!dbus_conn) +- return; ++ DBUS_HANDLER_RESULT_NOT_YET_HANDLED; + + if (verbose) + g_print ("New message from server: type='%d' path='%s' iface='%s'" +-- +2.13.3 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb new file mode 100644 index 000000000..42cd032c2 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb @@ -0,0 +1,23 @@ +SUMMARY = "dbus forwarding daemon" +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://dbus-daemon-proxy.c;endline=19;md5=41df6d21fe1c97d6a1cc22a5bf374cba" +DEPENDS = "dbus dbus-glib" +SRCREV = "1226a0a1374628ff191f6d8a56000be5e53e7608" +PV = "0.0.0+gitr${SRCPV}" +PR = "r1.59" + +SRC_URI = "git://github.com/alban/dbus-daemon-proxy \ + file://0001-dbus-daemon-proxy-Return-DBUS_HANDLER_RESULT_NOT_YET.patch \ + " +S = "${WORKDIR}/git" + +inherit pkgconfig + +do_compile() { + ${CC} ${CFLAGS} -o dbus-daemon-proxy dbus-daemon-proxy.c `pkg-config --cflags --libs dbus-glib-1` ${LDFLAGS} +} + +do_install() { + install -d ${D}${bindir} + install -m 0755 dbus-daemon-proxy ${D}${bindir} +} diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch new file mode 100644 index 000000000..6883f9a0b --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch @@ -0,0 +1,27 @@ +From 6bcb58bd69c38b9200e8ec6c382247167571189d Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 1 Jul 2017 16:44:15 -0700 +Subject: [PATCH] pipe.c: Use a string instead of char + +Fixes +error: invalid conversion from 'char' to 'const void*' [-fpermissive] + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/pipe.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/pipe.cpp b/src/pipe.cpp +index 45c2ba6..1303c2d 100644 +--- a/src/pipe.cpp ++++ b/src/pipe.cpp +@@ -83,5 +83,5 @@ ssize_t Pipe::read(void *buffer, unsigned int &nbytes) + void Pipe::signal() + { + // TODO: ignoring return of read/write generates warning; maybe relevant for eventloop work... +- ::write(_fd_write, '\0', 1); ++ ::write(_fd_write, "", 1); + } +-- +2.13.2 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch new file mode 100644 index 000000000..eed84e4a6 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch @@ -0,0 +1,36 @@ +From 93fd4868d71aa7a26cdfd382d1e4c85112f069f9 Mon Sep 17 00:00:00 2001 +From: Peter Williams <peter@newton.cx> +Date: Sat, 19 Dec 2015 21:07:37 -0500 +Subject: [PATCH] src/eventloop.cpp: use portable method for initializing + recursive mutex +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- +Upstream-Status: Backport [https://github.com/andreas-volz/dbus-cplusplus/commit/cdaeaa825db191bd65aad3aaaeb3178738727f05] +Signed-off-by: André Draszik <adraszik@tycoint.com> + src/eventloop.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/eventloop.cpp b/src/eventloop.cpp +index 7fb06a3..f622812 100644 +--- a/src/eventloop.cpp ++++ b/src/eventloop.cpp +@@ -85,8 +85,11 @@ DefaultMutex::DefaultMutex(bool recursive) + { + if (recursive) + { +- pthread_mutex_t recmutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP; +- _mutex = recmutex; ++ pthread_mutexattr_t attr; ++ ++ pthread_mutexattr_init(&attr); ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); ++ pthread_mutex_init(&_mutex, &attr); + } + else + { +-- +2.10.2 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch new file mode 100644 index 000000000..65cd93976 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch @@ -0,0 +1,58 @@ +From c673a76857cbe0ca82fa11aea9b70f94c3e5b041 Mon Sep 17 00:00:00 2001 +From: Peter Williams <peter@newton.cx> +Date: Sat, 19 Dec 2015 21:08:46 -0500 +Subject: [PATCH] tools/generate_proxy.cpp: avoid possibly undefined 'uint' + type +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- +Upstream-Status: Backport [https://github.com/andreas-volz/dbus-cplusplus/commit/43f119a2b3fe951c0f1d88cc61170d4c81a88880] +Signed-off-by: André Draszik <adraszik@tycoint.com> + tools/generate_proxy.cpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tools/generate_proxy.cpp b/tools/generate_proxy.cpp +index bf1094a..ebb75fa 100644 +--- a/tools/generate_proxy.cpp ++++ b/tools/generate_proxy.cpp +@@ -352,7 +352,7 @@ void generate_proxy(Xml::Document &doc, const char *filename) + if (!arg_name.length()) + { + arg_name = "argin"; +- arg_name += toString <uint> (i); ++ arg_name += toString <unsigned int> (i); + } + + // generate extra code to wrap object +@@ -445,7 +445,7 @@ void generate_proxy(Xml::Document &doc, const char *filename) + + if (!arg_name.length()) + { +- arg_name = "argout" + toString <uint> (i); ++ arg_name = "argout" + toString <unsigned int> (i); + } + + if (arg_object.length()) +@@ -569,7 +569,7 @@ void generate_proxy(Xml::Document &doc, const char *filename) + // use a default if no arg name given + if (!arg_name.length()) + { +- arg_name = "arg" + toString <uint> (i); ++ arg_name = "arg" + toString <unsigned int> (i); + } + + body << arg_name << ";" << endl; +@@ -605,7 +605,7 @@ void generate_proxy(Xml::Document &doc, const char *filename) + + if (!arg_name.length()) + { +- arg_name = "arg" + toString <uint> (j); ++ arg_name = "arg" + toString <unsigned int> (j); + } + + if (arg_object.length()) +-- +2.10.2 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch new file mode 100644 index 000000000..f69cefdb7 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch @@ -0,0 +1,30 @@ +From 465d98dbcdcb72375c198010a50b80b953e7d5a6 Mon Sep 17 00:00:00 2001 +From: Yuri <yuri@tsoft.com> +Date: Sat, 28 May 2016 13:20:10 -0700 +Subject: [PATCH] Fixed undefined ssize_t for clang-3.8.0 on FreeBSD. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- +Upstream-Status: Backport [https://github.com/andreas-volz/dbus-cplusplus/commit/463f5a4400d494b831c3b3348c0a21f0faf14f39] +Signed-off-by: André Draszik <adraszik@tycoint.com> + include/dbus-c++/pipe.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/dbus-c++/pipe.h b/include/dbus-c++/pipe.h +index 999f042..682646c 100644 +--- a/include/dbus-c++/pipe.h ++++ b/include/dbus-c++/pipe.h +@@ -30,6 +30,8 @@ + /* STD */ + #include <cstdlib> + ++#include <sys/types.h> ++ + namespace DBus + { + +-- +2.10.2 + diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch new file mode 100644 index 000000000..b108a4cd6 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch @@ -0,0 +1,74 @@ +From 12de53b0f24c478ea4ff6b4e2c55366dbd2f02b1 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <git@andred.net> +Date: Fri, 25 Nov 2016 09:33:20 +0000 +Subject: [PATCH] use POSIX poll.h instead of sys/poll.h +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +POSIX specifies that <poll.h> is the correct header to +include for poll() + http://pubs.opengroup.org/onlinepubs/009695399/functions/poll.html +whereas <sys/poll.h> is only needed for ancient glibc (<2.3), +so let's follow POSIX instead. + +As a side-effect, this silences compilation warnings when +compiling against the musl C-library such as: + +| In file included from ../../libdbus-c++-0.9.0/src/eventloop.cpp:31:0: +| <sysroot>/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp] +| #warning redirecting incorrect #include <sys/poll.h> to <poll.h> +| ^~~~~~~ +| In file included from ../../libdbus-c++-0.9.0/src/eventloop-integration.cpp:39:0: +| <sysroot>/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp] +| #warning redirecting incorrect #include <sys/poll.h> to <poll.h> +| ^~~~~~~ + +Signed-off-by: André Draszik <git@andred.net> +--- +Upstream-Status: Submitted [https://github.com/andreas-volz/dbus-cplusplus/pull/3] +Signed-off-by: André Draszik <adraszik@tycoint.com> + src/eventloop-integration.cpp | 2 +- + src/eventloop.cpp | 2 +- + src/pipe.cpp | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +Index: libdbus-c++-0.9.0/src/eventloop-integration.cpp +=================================================================== +--- libdbus-c++-0.9.0.orig/src/eventloop-integration.cpp ++++ libdbus-c++-0.9.0/src/eventloop-integration.cpp +@@ -36,7 +36,7 @@ + /* STD */ + #include <string.h> + #include <cassert> +-#include <sys/poll.h> ++#include <poll.h> + #include <fcntl.h> + + using namespace DBus; +Index: libdbus-c++-0.9.0/src/eventloop.cpp +=================================================================== +--- libdbus-c++-0.9.0.orig/src/eventloop.cpp ++++ libdbus-c++-0.9.0/src/eventloop.cpp +@@ -28,7 +28,7 @@ + #include <dbus-c++/eventloop.h> + #include <dbus-c++/debug.h> + +-#include <sys/poll.h> ++#include <poll.h> + #include <sys/time.h> + + #include <dbus/dbus.h> +Index: libdbus-c++-0.9.0/src/pipe.cpp +=================================================================== +--- libdbus-c++-0.9.0.orig/src/pipe.cpp ++++ libdbus-c++-0.9.0/src/pipe.cpp +@@ -32,7 +32,7 @@ + + /* STD */ + #include <unistd.h> +-#include <sys/poll.h> ++#include <poll.h> + #include <fcntl.h> + #include <errno.h> + #include <cassert> diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch new file mode 100644 index 000000000..bf6870eb0 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch @@ -0,0 +1,38 @@ + +sniped from ChromiumOS + +https://bugs.gentoo.org/424707 + +From 154f7861d19a2bd5c79c488f9989610971db451b Mon Sep 17 00:00:00 2001 +From: Han Shen <shenhan@google.com> +Date: Thu, 31 May 2012 16:49:35 -0700 +Subject: [PATCH] Fixed dbus-c++ gcc 4.7 building problem. + +Just add "unistd.h" inclusion to eventloop-integration.h. + +BUG=None +TEST=Manually built using gcc 4.7. + +Change-Id: I87bd1f90db6a4c974a5ed8134044e8be2034aff2 +Reviewed-on: https://gerrit.chromium.org/gerrit/24260 +Tested-by: Han Shen <shenhan@google.com> +Reviewed-by: Yunlian Jiang <yunlian@chromium.org> +Commit-Ready: Han Shen <shenhan@chromium.org> +Upstream-Status: Inappropriate [ not author, no upstream ] +Signed-off-by: Thilo Cestonaro <thilo.cestonaro@ts.fujitsu.com> +--- + include/dbus-c++/eventloop-integration.h | 1 + + 1 file changed, 1 insertion(+) + +Index: libdbus-c++-0.9.0/include/dbus-c++/eventloop-integration.h +=================================================================== +--- libdbus-c++-0.9.0.orig/include/dbus-c++/eventloop-integration.h ++++ libdbus-c++-0.9.0/include/dbus-c++/eventloop-integration.h +@@ -26,6 +26,7 @@ + #define __DBUSXX_EVENTLOOP_INTEGRATION_H + + #include <errno.h> ++#include <unistd.h> + #include "api.h" + #include "dispatcher.h" + #include "util.h" diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch new file mode 100644 index 000000000..fa29d3cde --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch @@ -0,0 +1,33 @@ +From: Thilo Cestonaro <thilo.cestonaro@ts.fujitsu.com> +Date: Fri, 18 Nov 2016 10:23:07 +0100 +Subject: Build libdbus-c++ tools for target platform rather than enforced for +host platform. + +Upstream-Status: Inappropriate [no upstream] +Signed-off-by: Thilo Cestonaro <thilo.cestonaro@ts.fujitsu.com> +--- + +diff -Naur libdbus-c++-0.9.0.ori/configure.ac libdbus-c++-0.9.0/configure.ac +--- libdbus-c++-0.9.0.ori/configure.ac 2016-11-15 14:25:36.085882774 +0100 ++++ libdbus-c++-0.9.0/configure.ac 2016-11-15 14:27:08.814568717 +0100 +@@ -64,9 +64,6 @@ + AC_PROG_CC + AC_PROG_CXX + +-CXX_FOR_BUILD=${CXX_FOR_BUILD-${CXX}} +-AC_SUBST(CXX_FOR_BUILD) +- + AM_PROG_LIBTOOL + + PKG_PROG_PKG_CONFIG +diff -Naur libdbus-c++-0.9.0.ori/tools/Makefile.am libdbus-c++-0.9.0/tools/Makefile.am +--- libdbus-c++-0.9.0.ori/tools/Makefile.am 2016-11-15 14:25:36.089882803 +0100 ++++ libdbus-c++-0.9.0/tools/Makefile.am 2016-11-15 14:26:19.454203583 +0100 +@@ -1,7 +1,5 @@ + # hacky, but ... + +-CXX = $(CXX_FOR_BUILD) +- + AM_CPPFLAGS = \ + $(dbus_CFLAGS) \ + $(xml_CFLAGS) \ diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb new file mode 100644 index 000000000..a6d8b86ee --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb @@ -0,0 +1,30 @@ +SUMMARY = "DBus-C++ Library" +DESCRIPTION = "DBus-c++ attempts to provide a C++ API for D-BUS. The library has a glib and an Ecore mainloop integration. It also offers an optional own main loop." +HOMEPAGE = "http://dbus-cplusplus.sourceforge.net" +SECTION = "base" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" +DEPENDS = "dbus expat glib-2.0 libpcre" + +SRC_URI = "${SOURCEFORGE_MIRROR}/project/dbus-cplusplus/dbus-c++/${PV}/${BP}.tar.gz \ + file://fix-missing-unistd.h-include.patch \ + file://remove-CXX_FOR_BUILD-stuff.patch \ + file://0001-src-eventloop.cpp-use-portable-method-for-initializi.patch \ + file://0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch \ + file://0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch \ + file://0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch \ + file://0001-pipe.c-Use-a-string-instead-of-char.patch \ + " +SRC_URI[md5sum] = "e752116f523fa88ef041e63d3dee4de2" +SRC_URI[sha256sum] = "bc11ac297b3cb010be904c72789695543ee3fdf3d75cdc8225fd371385af4e61" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-ecore --disable-examples --disable-tests" +LDFLAGS += "-pthread" + +PACKAGE_BEFORE_PN = "${PN}-tools" + +FILES_${PN}-tools = "${bindir}" + +BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch new file mode 100644 index 000000000..abd7ff416 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch @@ -0,0 +1,34 @@ +Upstream-Status: Inappropriate [configuration] + +Index: eggdbus-0.6/docs/eggdbus/Makefile.am +=================================================================== +--- eggdbus-0.6.orig/docs/eggdbus/Makefile.am ++++ eggdbus-0.6/docs/eggdbus/Makefile.am +@@ -87,11 +87,7 @@ HTML_IMAGES = \ + # Extra options to supply to gtkdoc-fixref + FIXXREF_OPTIONS= + +-if ENABLE_GTK_DOC +-include $(top_srcdir)/gtk-doc.make +-else + CLEANFILES = +-endif + + CLEANFILES += *~ \ + eggdbus-scan.* \ +Index: eggdbus-0.6/docs/tests/Makefile.am +=================================================================== +--- eggdbus-0.6.orig/docs/tests/Makefile.am ++++ eggdbus-0.6/docs/tests/Makefile.am +@@ -65,11 +65,7 @@ HTML_IMAGES = \ + # Extra options to supply to gtkdoc-fixref + FIXXREF_OPTIONS= + +-if ENABLE_GTK_DOC +-include $(top_srcdir)/gtk-doc.make +-else + CLEANFILES = +-endif + + CLEANFILES += *~ \ + tests-scan.* \ diff --git a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch new file mode 100644 index 000000000..a605a34c8 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch @@ -0,0 +1,28 @@ +Upstream-Status: Inappropriate [configuration] + +Index: eggdbus-0.6/src/eggdbus/Makefile.am +=================================================================== +--- eggdbus-0.6.orig/src/eggdbus/Makefile.am ++++ eggdbus-0.6/src/eggdbus/Makefile.am +@@ -130,7 +130,7 @@ BUILT_SOURCES = \ + $(NULL) + + eggdbus-built-sources.stamp : eggdbus-binding-tool Makefile.am org.freedesktop.DBus.xml org.freedesktop.DBus.Peer.xml org.freedesktop.DBus.Properties.xml org.freedesktop.DBus.Introspectable.xml eggdbus-glib-genmarshal +- EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool \ ++ EGG_DBUS_GENMARSHAL=eggdbus-glib-genmarshal eggdbus-binding-tool \ + --namespace EggDBus \ + --dbus-namespace org.freedesktop.DBus \ + --interfaces-only \ +Index: eggdbus-0.6/src/tests/Makefile.am +=================================================================== +--- eggdbus-0.6.orig/src/tests/Makefile.am ++++ eggdbus-0.6/src/tests/Makefile.am +@@ -25,7 +25,7 @@ BUILT_SOURCES = \ + $(NULL) + + test-built-sources.stamp : Makefile.am $(top_builddir)/src/eggdbus/eggdbus-binding-tool com.example.Frob.xml com.example.Tweak.xml com.example.Twiddle.xml +- EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool \ ++ EGG_DBUS_GENMARSHAL=eggdbus-glib-genmarshal eggdbus-binding-tool \ + --namespace "Test" \ + --dbus-namespace "com.example" \ + --include-header testtypes.h \ diff --git a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb new file mode 100644 index 000000000..cc28ec77c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb @@ -0,0 +1,33 @@ +SUMMARY = "An alternative to dbug-glib." +DESCRIPTION = "An alternative to dbus-glib. It is designed specifically to \ +make it comfortable to work with very large and potentially \ +complex D-Bus services like e.g. DeviceKit-disks" + +HOMEPAGE = "http://cgit.freedesktop.org/~david/eggdbus" +LICENSE = "LGPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \ + file://src/eggdbus/eggdbus.h;md5=6b312aef57ed8d738b3f131ad037d6c2" + +DEPENDS = "dbus glib-2.0 dbus-glib eggdbus-native" +DEPENDS_class-native = "dbus-native glib-2.0-native dbus-glib-native" + +SRC_URI = "http://cgit.freedesktop.org/~david/${BPN}/snapshot/${BPN}-${PV}.tar.bz2 \ + file://gtk-doc.patch \ +" +SRC_URI_append_class-target = "file://marshal.patch" +SRC_URI[md5sum] = "0a111faa54dfba2cf432c2c8e8a76e06" +SRC_URI[sha256sum] = "3ad26e271c1a879bafcd181e065fe0ed53b542299a773c3188c9edb25b895ed1" + +inherit autotools gtk-doc + +EXTRA_OECONF = " --disable-man-pages " + +BBCLASSEXTEND = "native" + +PARALLEL_MAKE = "" + +do_configure_prepend() { + # Create ChangeLog to walk around automake error. + # " Makefile.am: error: required file './ChangeLog' not found " + touch ${S}/ChangeLog +} diff --git a/meta-openembedded/meta-oe/recipes-core/ell/ell/0001-ell-fix-build-with-musl-libc.patch b/meta-openembedded/meta-oe/recipes-core/ell/ell/0001-ell-fix-build-with-musl-libc.patch new file mode 100644 index 000000000..a172a93ca --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/ell/ell/0001-ell-fix-build-with-musl-libc.patch @@ -0,0 +1,39 @@ +From 4f8c68757b05d12392cd1a8aed174cb8e56f80e3 Mon Sep 17 00:00:00 2001 +From: "Maxin B. John" <maxin.john@intel.com> +Date: Thu, 5 Apr 2018 17:19:44 +0300 +Subject: [PATCH] ell: fix build with musl libc + +musl libc doesn't implement TEMP_FAILURE_RETRY. Use the +TEMP_FAILURE_RETRY from glibc to fix build. + +Upstream-Status: Submitted [https://lists.01.org/pipermail/ell/2018-April/001209.html] + +Signed-off-by: Maxin B. John <maxin.john@intel.com> +--- + ell/dbus.h | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/ell/dbus.h b/ell/dbus.h +index a7c08d2..3ff5e0f 100644 +--- a/ell/dbus.h ++++ b/ell/dbus.h +@@ -28,6 +28,16 @@ + #include <stddef.h> + #include <stdarg.h> + ++/* taken from glibc unistd.h for musl support */ ++#ifndef TEMP_FAILURE_RETRY ++#define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif ++ + #ifdef __cplusplus + extern "C" { + #endif +-- +2.4.0 + diff --git a/meta-openembedded/meta-oe/recipes-core/ell/ell_0.4.bb b/meta-openembedded/meta-oe/recipes-core/ell/ell_0.4.bb new file mode 100644 index 000000000..1524bd6b9 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/ell/ell_0.4.bb @@ -0,0 +1,19 @@ +SUMMARY = "Embedded Linux Library" +DESCRIPTION = "ELL is a DBUS library which provides DBUS bindings." +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=fb504b67c50331fc78734fed90fb0e09" +SECTION = "libs" + +inherit autotools pkgconfig + +S = "${WORKDIR}/git" +SRCREV = "b4aea06fabb2af1af01f861f8f394c75950b6d47" +SRC_URI = "git://git.kernel.org/pub/scm/libs/ell/ell.git \ + file://0001-ell-fix-build-with-musl-libc.patch \ + " + +do_configure_prepend () { + mkdir ${S}/build-aux +} + +DEPENDS = "dbus" diff --git a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch new file mode 100644 index 000000000..7899022f1 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/0001-Glib-Threads-Private-Fix-gobj.patch @@ -0,0 +1,40 @@ +From 838fe84c2ddcc9af51c34f751defbf3dd0ba8a06 Mon Sep 17 00:00:00 2001 +From: Kjell Ahlstedt <kjellahlstedt@gmail.com> +Date: Wed, 20 Dec 2017 20:00:32 +0100 +Subject: [PATCH] Glib::Threads::Private: Fix gobj() + +Bug 791711 + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- +Upstream-Status: Backport [https://github.com/GNOME/glibmm/commit/37d57ae9572b7d74aa385a30313eceae7f2d3fce] + glib/glibmm/threads.h | 2 +- + glib/src/threads.hg | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/glib/glibmm/threads.h b/glib/glibmm/threads.h +index f7e2b82a..2c0cbe8c 100644 +--- a/glib/glibmm/threads.h ++++ b/glib/glibmm/threads.h +@@ -657,7 +657,7 @@ public: + */ + inline void replace(T* data); + +- GPrivate* gobj() { return gobject_; } ++ GPrivate* gobj() { return &gobject_; } + + private: + GPrivate gobject_; +diff --git a/glib/src/threads.hg b/glib/src/threads.hg +index 86d7a17b..c82a6130 100644 +--- a/glib/src/threads.hg ++++ b/glib/src/threads.hg +@@ -628,7 +628,7 @@ public: + */ + inline void replace(T* data); + +- GPrivate* gobj() { return gobject_; } ++ GPrivate* gobj() { return &gobject_; } + + private: + GPrivate gobject_; diff --git a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch new file mode 100644 index 000000000..d32fe78d3 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch @@ -0,0 +1,39 @@ +From f48a69fd11b2eda6c43ff046c202cbc4dcd4e92d Mon Sep 17 00:00:00 2001 +From: Koen Kooi <koen@dominion.thruhere.net> +Date: Tue, 12 Jul 2011 11:46:37 +0200 + +--- + Makefile.am | 7 +------ + configure.ac | 1 - + 2 files changed, 1 insertion(+), 7 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index a0df8af..c3d5e06 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -23,12 +23,7 @@ src_subdirs = glib/src gio/src + else + src_subdirs = + endif +-if ENABLE_DOCUMENTATION +-doc_subdirs = docs +-else +-doc_subdirs = +-endif +-SUBDIRS = tools $(src_subdirs) glib/glibmm gio/giomm tests examples $(doc_subdirs) ++SUBDIRS = tools $(src_subdirs) glib/glibmm gio/giomm tests + + glibmm_includedir = $(includedir)/$(GLIBMM_MODULE_NAME) + glibmm_include_HEADERS = glib/glibmm.h +diff --git a/configure.ac b/configure.ac +index c20e778..74203be 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -166,7 +166,6 @@ AC_CONFIG_FILES([Makefile + gio/src/Makefile + gio/giomm/Makefile + tests/Makefile +- examples/Makefile + docs/Makefile + docs/reference/Doxyfile + MSVC_Net2013/glibmm/glibmm.rc diff --git a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.54.1.bb b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.54.1.bb new file mode 100644 index 000000000..4706432ab --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.54.1.bb @@ -0,0 +1,37 @@ +SUMMARY = "C++ bindings for the glib library" +HOMEPAGE = "http://www.gtkmm.org/" +SECTION = "libs" +LICENSE = "LGPLv2.1 & GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=42dfffebc56fec7527aac53b7a89d1d8 \ + file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe" + +DEPENDS = "mm-common glib-2.0 libsigc++-2.0 glib-2.0-native" +inherit autotools pkgconfig + +SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" + +SRC_URI = " \ + ftp://ftp.gnome.org/pub/GNOME/sources/glibmm/${SHRT_VER}/glibmm-${PV}.tar.xz \ + file://remove-examples.patch \ + file://0001-Glib-Threads-Private-Fix-gobj.patch \ +" +SRC_URI[md5sum] = "dee5ebe309f5976c3dacfcf5c43a062b" +SRC_URI[sha256sum] = "7cc28c732b04d70ed34f0c923543129083cfb90580ea4a2b4be5b38802bf6a4a" + +do_install_append() { + install -d ${D}${datadir}/glibmm-2.4 + install -d ${D}${datadir}/aclocal + + install -m 0644 glib/glibmmconfig.h ${D}${datadir}/glibmm-2.4/ + install -m 0644 scripts/glibmm_check_perl.m4 ${D}${datadir}/aclocal/ || true + + for i in generate_wrap_init.pl gmmproc; do + sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/glibmm-2.4/proc/$i + done +} + +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${datadir}/glibmm-* ${libdir}/glibmm-2.4/include/ ${libdir}/glibmm-2.4/proc/ ${libdir}/giomm-2.4/include/" + +RDEPENDS_${PN}-dev = "perl" +SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}" diff --git a/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.10.0.bb b/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.10.0.bb new file mode 100644 index 000000000..53bd5de10 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.10.0.bb @@ -0,0 +1,22 @@ +SUMMARY = "A library for loose coupling of C++ method calls" +SECTION = "libs" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499" + +DEPENDS = "mm-common" + +SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.10/libsigc++-${PV}.tar.xz" +SRC_URI[md5sum] = "70bcbde2c900e4925d6ef4bf50954195" +SRC_URI[sha256sum] = "f843d6346260bfcb4426259e314512b99e296e8ca241d771d21ac64f28298d81" + +S = "${WORKDIR}/libsigc++-${PV}" + +inherit autotools + +EXTRA_AUTORECONF = "--exclude=autoheader" + +FILES_${PN}-dev += "${libdir}/sigc++-*/" +FILES_${PN}-doc += "${datadir}/devhelp" + +BBCLASSEXTEND = "native" +SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}" diff --git a/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch b/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch new file mode 100644 index 000000000..0d1a5186a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch @@ -0,0 +1,82 @@ +Index: libxml++-2.40.1/Makefile.am +=================================================================== +--- libxml++-2.40.1.orig/Makefile.am ++++ libxml++-2.40.1/Makefile.am +@@ -24,5 +24,8 @@ dist_noinst_SCRIPTS = autogen.sh + + DISTCLEANFILES = MSVC_Net2010/libxml++/libxml++config.h + ++install-ptest: ++ make -C examples install-ptest ++ + # Optional: auto-generate the ChangeLog file from the git log on make dist + include $(top_srcdir)/build/dist-changelog.am +Index: libxml++-2.40.1/examples/Makefile.am +=================================================================== +--- libxml++-2.40.1.orig/examples/Makefile.am ++++ libxml++-2.40.1/examples/Makefile.am +@@ -19,6 +19,8 @@ AM_CPPFLAGS = -I$(top_builddir) -I$(top_ + AM_CXXFLAGS = $(LIBXMLXX_WXXFLAGS) + LDADD = $(top_builddir)/libxml++/libxml++-$(LIBXMLXX_API_VERSION).la $(LIBXMLXX_LIBS) + ++LOG_DRIVER = $(SHELL) ../macros/test-driver ++ + check_PROGRAMS = \ + dom_build/dom_build \ + dom_parse_entities/dom_parse_entities \ +@@ -37,6 +39,23 @@ check_PROGRAMS = \ + schemavalidation/schemavalidation \ + textreader/textreader + ++check_DOTLIBS = \ ++ dom_build/.libs/dom_build \ ++ dom_parse_entities/.libs/dom_parse_entities \ ++ dom_parser/.libs/dom_parser \ ++ dom_parser_raw/.libs/dom_parser_raw \ ++ dom_read_write/.libs/dom_read_write \ ++ dom_xinclude/.libs/dom_xinclude \ ++ dom_xpath/.libs/dom_xpath \ ++ dtdvalidation/.libs/dtdvalidation \ ++ import_node/.libs/import_node \ ++ sax_exception/.libs/sax_exception \ ++ sax_parser/.libs/sax_parser \ ++ sax_parser_build_dom/.libs/sax_parser_build_dom \ ++ sax_parser_entities/.libs/sax_parser_entities \ ++ schemavalidation/.libs/schemavalidation \ ++ textreader/.libs/textreader ++ + # Shell scripts that call the example programs. + check_SCRIPTS = \ + dom_build/make_check.sh \ +@@ -154,10 +173,10 @@ dist_noinst_DATA = \ + # file are located in different directories. + dom_read_write/make_check.sh: Makefile + echo '# Generated and used by "make check"' >$@ +- echo 'dom_read_write/dom_read_write "$(srcdir)/dom_read_write/example.xml" dom_read_write/example_output.xml >/dev/null' >>$@ ++ echo 'cd dom_read_write && .libs/dom_read_write "example.xml" example_output.xml >/dev/null' >>$@ + chmod +x $@ + +-script_template = cd "$(srcdir)/<!progname!>" && "$(abs_builddir)/<!progname!>/<!progname!>" >/dev/null ++script_template = cd "<!progname!>" && ".libs/<!progname!>" >/dev/null + standard_scripts = $(filter-out dom_read_write/make_check.sh,$(check_SCRIPTS)) + + # All other script files are generated like so: +@@ -169,3 +188,18 @@ $(standard_scripts): Makefile + CLEANFILES = \ + dom_read_write/example_output.xml \ + $(check_SCRIPTS) ++ ++buildtest: all ++ $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(check_SCRIPTS) ++ $(MAKE) $(AM_MAKEFLAGS) buildtest-TESTS ++ ++install-ptest: ++ $(MKDIR_P) $(DESTDIR)/examples ++ cp --parents $(check_DOTLIBS) $(DESTDIR)/examples ++ cp --parents $(check_SCRIPTS) $(DESTDIR)/examples ++ cd $(srcdir) && cp --parents $(dist_noinst_DATA) $(DESTDIR)/examples ++ cp Makefile $(DESTDIR)/examples ++ $(MKDIR_P) $(DESTDIR)/macros ++ cp $(top_srcdir)/build/test-driver $(DESTDIR)/macros ++ sed -i -e 's|^Makefile:|_Makefile:|' $(DESTDIR)/examples/Makefile ++ diff --git a/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/run-ptest b/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/run-ptest new file mode 100644 index 000000000..236f66753 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh +cd examples +make -k check-TESTS diff --git a/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.40.1.bb b/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.40.1.bb new file mode 100644 index 000000000..c001c184c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.40.1.bb @@ -0,0 +1,28 @@ +SUMMARY = "C++ wrapper for libxml library" +DESCRIPTION = "C++ wrapper for libxml library" +HOMEPAGE = "http://libxmlplusplus.sourceforge.net" +BUGTRACKER = "http://bugzilla.gnome.org/buglist.cgi?product=libxml%2B%2B" +SECTION = "libs" +LICENSE = "LGPL-2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 " + +SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" +SRC_URI = "${GNOME_MIRROR}/${BPN}/${SHRT_VER}/${BP}.tar.xz \ + file://libxml++_ptest.patch \ + file://run-ptest \ +" +SRC_URI[md5sum] = "377a87bea899f2b4ff62df2418c3d8a6" +SRC_URI[sha256sum] = "4ad4abdd3258874f61c2e2a41d08e9930677976d303653cd1670d3e9f35463e9" + +DEPENDS = "libxml2 glibmm" + +inherit autotools pkgconfig ptest + +do_compile_ptest() { + oe_runmake -C examples buildtest +} + +FILES_${PN}-doc += "${datadir}/devhelp" +FILES_${PN}-dev += "${libdir}/libxml++-2.6/include/libxml++config.h" + +RDEPENDS_${PN}-ptest += "make" diff --git a/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb b/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb new file mode 100644 index 000000000..2a8de54d2 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb @@ -0,0 +1,33 @@ +SUMMARY = "Configuration files for online package repositories aka feeds" +PR = "r6" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +DISTRO_FEED_PREFIX ?= "remote" +DISTRO_FEED_URI ?= "http://my-distribution.example/remote-feed/" +DISTRO_FEED_ARCHS ?= "all ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}" + +do_compile() { + mkdir -p ${S}/${sysconfdir}/opkg + for feed in ${DISTRO_FEED_ARCHS}; do + echo "src/gz ${DISTRO_FEED_PREFIX}-${feed} ${DISTRO_FEED_URI}/${feed}" > ${S}/${sysconfdir}/opkg/${feed}-feed.conf + done +} +do_install () { + install -d ${D}${sysconfdir}/opkg + install -m 0644 ${S}/${sysconfdir}/opkg/* ${D}${sysconfdir}/opkg/ +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +#def distro_feed_configs(d): +# import bb +# parchs = d.getVar("PACKAGE_EXTRA_ARCHS").split() +# march = d.getVar("MACHINE_ARCH").split() +# archs = [ "all" ] + parchs + march +# confs = [ ( "${sysconfdir}/opkg/%s-feed.conf" % feed ) for feed in archs ] +# return " ".join( confs ) +# +#CONFFILES_${PN} += '${@distro_feed_configs(d)}' + +CONFFILES_${PN} += '${@ " ".join( [ ( "${sysconfdir}/opkg/%s-feed.conf" % feed ) for feed in "all ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}".split() ] ) }' diff --git a/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.11.bb b/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.11.bb new file mode 100644 index 000000000..591caa75d --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.11.bb @@ -0,0 +1,9 @@ +inherit gnomebase + +SRC_URI[archive.md5sum] = "d6f2a43589480d2315672da0b5839b56" +SRC_URI[archive.sha256sum] = "20d1e7466ca4c83c92e29f9e8dfcc8e5721fdf1337f53157bed97be3b73b32a8" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" + +BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb new file mode 100644 index 000000000..b12183b3a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb @@ -0,0 +1,56 @@ +# This recipe is intended as a 'simpler' replacement for packagegroup-base. +# Please communicate your use cases and suggestions to the mailinglist(s) + +SUMMARY = "Basic task to get a device online" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +PR = "r13" + +PACKAGE_ARCH = "${MACHINE_ARCH}" +inherit packagegroup +inherit bluetooth + +# Poke extra recomendations into the list using your machine.conf +# +MACHINE_EXTRA_RRECOMMENDS ?= "" + +# +# Select between dropbear and openssh +# Set TASK_BASIC_SSHDAEMON = "openssh-sshd openssh-sftp openssh-sftp-server" in your DISTRO config to get openssh(d) +# +TASK_BASIC_SSHDAEMON ?= "dropbear openssh-sftp openssh-sftp-server" + +# +# The section below is designed to match with packagegroup-boot, but doesn't depend on it to allow for more freedom +# when writing image recipes. +# It also avoids the choice between connman/networkmanager/ifupdown since that is an image feature, not a +# distro feature. +# +# Util-linux (u)mount is included because the busybox one can't handle /etc/mtab being symlinked to /proc/mounts +# +RDEPENDS_${PN} = "\ + ${TASK_BASIC_SSHDAEMON} \ + avahi-daemon avahi-utils \ +" + +# +# The following section is split in 3: +# 1) Machine features: kernel modules and userspace helpers for those +# 2) Distro features: packages associated with those +# 3) Nice to have: packages that are nice to have, but aren't strictly needed +# +RRECOMMENDS_${PN} = "\ + ${MACHINE_EXTRA_RRECOMMENDS} \ + ${@bb.utils.contains("MACHINE_FEATURES", "usbhost", "usbutils", "", d)} \ + ${@bb.utils.contains("MACHINE_FEATURES", "alsa", "alsa-utils-alsamixer", "", d)} \ + ${@bb.utils.contains("MACHINE_FEATURES", "usbgadget", "kernel-module-g-ether kernel-module-g-serial kernel-module-g-mass-storage", "", d)} \ + \ + ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "${BLUEZ}", "", d)} \ + ${@bb.utils.contains("DISTRO_FEATURES", "wifi", "iw wpa-supplicant", "", d)} \ + \ + tzdata \ + \ + cpufrequtils \ + htop \ +" diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-boot.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-boot.bb new file mode 100644 index 000000000..3ae7a49fe --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-boot.bb @@ -0,0 +1,34 @@ +SUMMARY = "Basic task to get a device booting" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +PR = "r58" + +PACKAGE_ARCH = "${MACHINE_ARCH}" +inherit packagegroup + +# +# those ones can be set in machine config to supply packages needed to get machine booting +# +MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= "" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= "" + +# Make sure we build the kernel +DEPENDS = "virtual/kernel" + +# +# minimal set of packages - needed to boot +# +RDEPENDS_${PN} = "\ + base-files \ + base-passwd \ + busybox \ + netbase \ + ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "keymaps", "", d)} \ + ${MACHINE_ESSENTIAL_EXTRA_RDEPENDS} \ +" + +RRECOMMENDS_${PN} = "\ + kernel \ + ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS} \ +" diff --git a/meta-openembedded/meta-oe/recipes-core/plymouth/files/0001-Make-full-path-to-systemd-tty-ask-password-agent-con.patch b/meta-openembedded/meta-oe/recipes-core/plymouth/files/0001-Make-full-path-to-systemd-tty-ask-password-agent-con.patch new file mode 100644 index 000000000..6a86c76d1 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/plymouth/files/0001-Make-full-path-to-systemd-tty-ask-password-agent-con.patch @@ -0,0 +1,34 @@ +From 746c690f57b52e6fe21cc2a11b5bb71d25af3128 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> +Date: Wed, 13 Dec 2017 16:15:57 +0100 +Subject: [PATCH] Make full path to systemd-tty-ask-password-agent configurable +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@gmail.com> +--- + configure.ac | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index aad673e..6b37179 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -48,7 +48,10 @@ PLYMOUTH_LIBS="-lm -lrt -ldl" + AC_SUBST(PLYMOUTH_CFLAGS) + AC_SUBST(PLYMOUTH_LIBS) + +-AC_PATH_PROG([SYSTEMD_ASK_PASSWORD_AGENT], [systemd-tty-ask-password-agent]) ++AC_ARG_WITH(systemd-tty-ask-password-agent, AS_HELP_STRING([--with-systemd-tty-ask-password-agent],[path of systemd-tty-ask-password-agent]),SYSTEMD_ASK_PASSWORD_AGENT=${withval},SYSTEMD_ASK_PASSWORD_AGENT=/bin/systemd-tty-ask-password-agent) ++AC_SUBST(SYSTEMD_ASK_PASSWORD_AGENT) ++ ++# checked: UDEVADM is not used + AC_PATH_PROG([UDEVADM], [udevadm]) + + AC_ARG_ENABLE(pango, AS_HELP_STRING([--enable-pango],[enable building with pango, disabled there is no encryption prompts]),enable_pango=$enableval,enable_pango=yes) +-- +2.9.5 + diff --git a/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb b/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb new file mode 100644 index 000000000..7e8d6e32a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb @@ -0,0 +1,66 @@ +SUMMARY = "Plymouth is a project from Fedora providing a flicker-free graphical boot process." + +DESCRIPTION = "Plymouth is an application that runs very early in the boot process \ + (even before the root filesystem is mounted!) that provides a \ + graphical boot animation while the boot process happens in the background. \ +" + +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/Plymouth" +SECTION = "base" + +LICENSE = "GPLv2+" + +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +DEPENDS = "libcap libpng cairo dbus udev" +PROVIDES = "virtual/psplash" +RPROVIDES_${PN} = "virtual-psplash virtual-psplash-support" + +SRC_URI = " \ + http://www.freedesktop.org/software/plymouth/releases/${BPN}-${PV}.tar.bz2 \ + file://0001-Make-full-path-to-systemd-tty-ask-password-agent-con.patch \ +" +SRC_URI[md5sum] = "ff420994deb7ea203df678df92e7ab7d" +SRC_URI[sha256sum] = "2f0ce82042cf9c7eadd2517a1f74c8a85fa8699781d9f294a06eade29fbed57f" + +EXTRA_OECONF += " --enable-shared --disable-static --disable-gtk --disable-documentation \ + --with-logo=${LOGO} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--enable-systemd-integration --with-system-root-install --with-systemd-tty-ask-password-agent=${base_bindir}/systemd-tty-ask-password-agent', '', d)} \ +" + +PACKAGECONFIG ??= "pango initrd" +PACKAGECONFIG_append_x86 = " drm" +PACKAGECONFIG_append_x86-64 = " drm" + +PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm" +PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango" +PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+3" +PACKAGECONFIG[initrd] = ",,," + +LOGO ??= "${datadir}/plymouth/bizcom.png" + +inherit autotools pkgconfig systemd + +do_install_append() { + # Remove /var/run from package as plymouth will populate it on startup + rm -fr "${D}${localstatedir}/run" + + if ! ${@bb.utils.contains('PACKAGECONFIG', 'initrd', 'true', 'false', d)}; then + rm -rf "${D}${libexecdir}" + fi +} + +PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'initrd', '${PN}-initrd ', '', d)}" +PACKAGES =+ "${PN}-set-default-theme" + +FILES_${PN}-initrd = "${libexecdir}/plymouth/*" +FILES_${PN}-set-default-theme = "${sbindir}/plymouth-set-default-theme" + +FILES_${PN} += "${systemd_unitdir}/system/*" +FILES_${PN}-dbg += "${libdir}/plymouth/renderers/.debug" + + +RDEPENDS_${PN}-initrd = "bash dracut" +RDEPENDS_${PN}-set-default-theme = "bash" + +SYSTEMD_SERVICE_${PN} = "plymouth-start.service" diff --git a/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb b/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb new file mode 100644 index 000000000..f11ae7e4d --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb @@ -0,0 +1,34 @@ +SUMMARY = "Proxy libintl" +HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/" +SECTION = "libs" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://src/proxy-libintl/COPYING.LIB.txt;md5=bc400bc21422f9a92e76ec2c5167ca2e" + +PR = "r1" +PROVIDES = "virtual/libintl" + +SRC_URI = " \ + http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/${PN}-dev_${PV}_win32.zip \ +" +SRC_URI[md5sum] = "aef407c2b97ee829383aadd867c61d1e" +SRC_URI[sha256sum] = "291ac350cc5eb4a01b0d651ca99fae64cee8a1c06b2005277fab5a4356f9ae91" + +S = "${WORKDIR}" +PACKAGES = "${PN} ${PN}-dev" +FILES_${PN}-dev = "${includedir}/libintl.h ${libdir}/libintl.a" +INSANE_SKIP_${PN}-dev = "staticdev" +ALLOW_EMPTY_${PN} = "1" +CFLAGS_append = " -fPIC -Wall -I ../../include ${@['-DSTUB_ONLY', ''][d.getVar('USE_NLS') != 'no']}" +TARGET_CC_ARCH += "${LDFLAGS}" + +do_compile() { + cd ${WORKDIR}/src/proxy-libintl + oe_runmake ../../lib/libintl.a +} + +do_install() { + install -d ${D}/${includedir} + install -d ${D}/${libdir} + install -m 0644 ${WORKDIR}/include/libintl.h ${D}/${includedir} + install -m 0644 ${WORKDIR}/lib/libintl.a ${D}/${libdir} +} diff --git a/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.5.bb b/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.5.bb new file mode 100644 index 000000000..347c2856f --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.5.bb @@ -0,0 +1,71 @@ +SUMMARY = "Toybox combines common utilities together into a single executable." +HOMEPAGE = "http://www.landley.net/toybox/" +DEPENDS = "attr" + +LICENSE = "BSD-0-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f0b8b3dd6431bcaa245da0a08bd0d511" + +SRC_URI = "http://www.landley.net/toybox/downloads/${BPN}-${PV}.tar.gz" +SRC_URI[md5sum] = "a8bb502a1be941f06dd2644fff25f547" +SRC_URI[sha256sum] = "3ada450ac1eab1dfc352fee915ea6129b9a4349c1885f1394b61bd2d89a46c04" + +SECTION = "base" + +TOYBOX_BIN = "generated/unstripped/toybox" + +EXTRA_OEMAKE = 'HOSTCC="${BUILD_CC}" CPUS=${@oe.utils.cpu_count()}' + +do_configure() { + oe_runmake defconfig + + # Disable killall5 as it isn't managed by update-alternatives + sed -e 's/CONFIG_KILLALL5=y/# CONFIG_KILLALL5 is not set/' -i .config + + # Disable swapon as it doesn't handle the '-a' argument used during boot + sed -e 's/CONFIG_SWAPON=y/# CONFIG_SWAPON is not set/' -i .config +} + +do_compile() { + oe_runmake ${TOYBOX_BIN} + + # Create a list of links needed + ${BUILD_CC} -I . scripts/install.c -o generated/instlist + ./generated/instlist long | sed -e 's#^#/#' > toybox.links +} + +do_install() { + # Install manually instead of using 'make install' + install -d ${D}${base_bindir} + if grep -q "CONFIG_TOYBOX_SUID=y" ${B}/.config; then + install -m 4755 ${B}/${TOYBOX_BIN} ${D}${base_bindir}/toybox + else + install -m 0755 ${B}/${TOYBOX_BIN} ${D}${base_bindir}/toybox + fi + + install -d ${D}${sysconfdir} + install -m 0644 ${B}/toybox.links ${D}${sysconfdir} +} + +inherit update-alternatives + +# If you've chosen to install toybox you probably want it to take precedence +# over busybox where possible but not over other packages +ALTERNATIVE_PRIORITY = "60" + +python do_package_prepend () { + # Read links from /etc/toybox.links and create appropriate + # update-alternatives variables + + dvar = d.getVar('D') + pn = d.getVar('PN') + target = "/bin/toybox" + + f = open('%s/etc/toybox.links' % (dvar), 'r') + for alt_link_name in f: + alt_link_name = alt_link_name.strip() + alt_name = os.path.basename(alt_link_name) + d.appendVar('ALTERNATIVE_%s' % (pn), ' ' + alt_name) + d.setVarFlag('ALTERNATIVE_LINK_NAME', alt_name, alt_link_name) + d.setVarFlag('ALTERNATIVE_TARGET', alt_name, target) + f.close() +} diff --git a/meta-openembedded/meta-oe/recipes-core/usleep/files/GPLv2.patch b/meta-openembedded/meta-oe/recipes-core/usleep/files/GPLv2.patch new file mode 100644 index 000000000..1ee8181f1 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/usleep/files/GPLv2.patch @@ -0,0 +1,347 @@ +Upstream-Status: Inappropriate [licensing] + +diff --git a/COPYING b/COPYING +new file mode 100644 +index 0000000..d511905 +--- /dev/null ++++ b/COPYING +@@ -0,0 +1,339 @@ ++ GNU GENERAL PUBLIC LICENSE ++ Version 2, June 1991 ++ ++ Copyright (C) 1989, 1991 Free Software Foundation, Inc., ++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ++ Everyone is permitted to copy and distribute verbatim copies ++ of this license document, but changing it is not allowed. ++ ++ Preamble ++ ++ The licenses for most software are designed to take away your ++freedom to share and change it. By contrast, the GNU General Public ++License is intended to guarantee your freedom to share and change free ++software--to make sure the software is free for all its users. This ++General Public License applies to most of the Free Software ++Foundation's software and to any other program whose authors commit to ++using it. (Some other Free Software Foundation software is covered by ++the GNU Lesser General Public License instead.) You can apply it to ++your programs, too. ++ ++ When we speak of free software, we are referring to freedom, not ++price. Our General Public Licenses are designed to make sure that you ++have the freedom to distribute copies of free software (and charge for ++this service if you wish), that you receive source code or can get it ++if you want it, that you can change the software or use pieces of it ++in new free programs; and that you know you can do these things. ++ ++ To protect your rights, we need to make restrictions that forbid ++anyone to deny you these rights or to ask you to surrender the rights. ++These restrictions translate to certain responsibilities for you if you ++distribute copies of the software, or if you modify it. ++ ++ For example, if you distribute copies of such a program, whether ++gratis or for a fee, you must give the recipients all the rights that ++you have. You must make sure that they, too, receive or can get the ++source code. And you must show them these terms so they know their ++rights. ++ ++ We protect your rights with two steps: (1) copyright the software, and ++(2) offer you this license which gives you legal permission to copy, ++distribute and/or modify the software. ++ ++ Also, for each author's protection and ours, we want to make certain ++that everyone understands that there is no warranty for this free ++software. If the software is modified by someone else and passed on, we ++want its recipients to know that what they have is not the original, so ++that any problems introduced by others will not reflect on the original ++authors' reputations. ++ ++ Finally, any free program is threatened constantly by software ++patents. We wish to avoid the danger that redistributors of a free ++program will individually obtain patent licenses, in effect making the ++program proprietary. To prevent this, we have made it clear that any ++patent must be licensed for everyone's free use or not licensed at all. ++ ++ The precise terms and conditions for copying, distribution and ++modification follow. ++ ++ GNU GENERAL PUBLIC LICENSE ++ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ++ ++ 0. This License applies to any program or other work which contains ++a notice placed by the copyright holder saying it may be distributed ++under the terms of this General Public License. The "Program", below, ++refers to any such program or work, and a "work based on the Program" ++means either the Program or any derivative work under copyright law: ++that is to say, a work containing the Program or a portion of it, ++either verbatim or with modifications and/or translated into another ++language. (Hereinafter, translation is included without limitation in ++the term "modification".) Each licensee is addressed as "you". ++ ++Activities other than copying, distribution and modification are not ++covered by this License; they are outside its scope. The act of ++running the Program is not restricted, and the output from the Program ++is covered only if its contents constitute a work based on the ++Program (independent of having been made by running the Program). ++Whether that is true depends on what the Program does. ++ ++ 1. You may copy and distribute verbatim copies of the Program's ++source code as you receive it, in any medium, provided that you ++conspicuously and appropriately publish on each copy an appropriate ++copyright notice and disclaimer of warranty; keep intact all the ++notices that refer to this License and to the absence of any warranty; ++and give any other recipients of the Program a copy of this License ++along with the Program. ++ ++You may charge a fee for the physical act of transferring a copy, and ++you may at your option offer warranty protection in exchange for a fee. ++ ++ 2. You may modify your copy or copies of the Program or any portion ++of it, thus forming a work based on the Program, and copy and ++distribute such modifications or work under the terms of Section 1 ++above, provided that you also meet all of these conditions: ++ ++ a) You must cause the modified files to carry prominent notices ++ stating that you changed the files and the date of any change. ++ ++ b) You must cause any work that you distribute or publish, that in ++ whole or in part contains or is derived from the Program or any ++ part thereof, to be licensed as a whole at no charge to all third ++ parties under the terms of this License. ++ ++ c) If the modified program normally reads commands interactively ++ when run, you must cause it, when started running for such ++ interactive use in the most ordinary way, to print or display an ++ announcement including an appropriate copyright notice and a ++ notice that there is no warranty (or else, saying that you provide ++ a warranty) and that users may redistribute the program under ++ these conditions, and telling the user how to view a copy of this ++ License. (Exception: if the Program itself is interactive but ++ does not normally print such an announcement, your work based on ++ the Program is not required to print an announcement.) ++ ++These requirements apply to the modified work as a whole. If ++identifiable sections of that work are not derived from the Program, ++and can be reasonably considered independent and separate works in ++themselves, then this License, and its terms, do not apply to those ++sections when you distribute them as separate works. But when you ++distribute the same sections as part of a whole which is a work based ++on the Program, the distribution of the whole must be on the terms of ++this License, whose permissions for other licensees extend to the ++entire whole, and thus to each and every part regardless of who wrote it. ++ ++Thus, it is not the intent of this section to claim rights or contest ++your rights to work written entirely by you; rather, the intent is to ++exercise the right to control the distribution of derivative or ++collective works based on the Program. ++ ++In addition, mere aggregation of another work not based on the Program ++with the Program (or with a work based on the Program) on a volume of ++a storage or distribution medium does not bring the other work under ++the scope of this License. ++ ++ 3. You may copy and distribute the Program (or a work based on it, ++under Section 2) in object code or executable form under the terms of ++Sections 1 and 2 above provided that you also do one of the following: ++ ++ a) Accompany it with the complete corresponding machine-readable ++ source code, which must be distributed under the terms of Sections ++ 1 and 2 above on a medium customarily used for software interchange; or, ++ ++ b) Accompany it with a written offer, valid for at least three ++ years, to give any third party, for a charge no more than your ++ cost of physically performing source distribution, a complete ++ machine-readable copy of the corresponding source code, to be ++ distributed under the terms of Sections 1 and 2 above on a medium ++ customarily used for software interchange; or, ++ ++ c) Accompany it with the information you received as to the offer ++ to distribute corresponding source code. (This alternative is ++ allowed only for noncommercial distribution and only if you ++ received the program in object code or executable form with such ++ an offer, in accord with Subsection b above.) ++ ++The source code for a work means the preferred form of the work for ++making modifications to it. For an executable work, complete source ++code means all the source code for all modules it contains, plus any ++associated interface definition files, plus the scripts used to ++control compilation and installation of the executable. However, as a ++special exception, the source code distributed need not include ++anything that is normally distributed (in either source or binary ++form) with the major components (compiler, kernel, and so on) of the ++operating system on which the executable runs, unless that component ++itself accompanies the executable. ++ ++If distribution of executable or object code is made by offering ++access to copy from a designated place, then offering equivalent ++access to copy the source code from the same place counts as ++distribution of the source code, even though third parties are not ++compelled to copy the source along with the object code. ++ ++ 4. You may not copy, modify, sublicense, or distribute the Program ++except as expressly provided under this License. Any attempt ++otherwise to copy, modify, sublicense or distribute the Program is ++void, and will automatically terminate your rights under this License. ++However, parties who have received copies, or rights, from you under ++this License will not have their licenses terminated so long as such ++parties remain in full compliance. ++ ++ 5. You are not required to accept this License, since you have not ++signed it. However, nothing else grants you permission to modify or ++distribute the Program or its derivative works. These actions are ++prohibited by law if you do not accept this License. Therefore, by ++modifying or distributing the Program (or any work based on the ++Program), you indicate your acceptance of this License to do so, and ++all its terms and conditions for copying, distributing or modifying ++the Program or works based on it. ++ ++ 6. Each time you redistribute the Program (or any work based on the ++Program), the recipient automatically receives a license from the ++original licensor to copy, distribute or modify the Program subject to ++these terms and conditions. You may not impose any further ++restrictions on the recipients' exercise of the rights granted herein. ++You are not responsible for enforcing compliance by third parties to ++this License. ++ ++ 7. If, as a consequence of a court judgment or allegation of patent ++infringement or for any other reason (not limited to patent issues), ++conditions are imposed on you (whether by court order, agreement or ++otherwise) that contradict the conditions of this License, they do not ++excuse you from the conditions of this License. If you cannot ++distribute so as to satisfy simultaneously your obligations under this ++License and any other pertinent obligations, then as a consequence you ++may not distribute the Program at all. For example, if a patent ++license would not permit royalty-free redistribution of the Program by ++all those who receive copies directly or indirectly through you, then ++the only way you could satisfy both it and this License would be to ++refrain entirely from distribution of the Program. ++ ++If any portion of this section is held invalid or unenforceable under ++any particular circumstance, the balance of the section is intended to ++apply and the section as a whole is intended to apply in other ++circumstances. ++ ++It is not the purpose of this section to induce you to infringe any ++patents or other property right claims or to contest validity of any ++such claims; this section has the sole purpose of protecting the ++integrity of the free software distribution system, which is ++implemented by public license practices. Many people have made ++generous contributions to the wide range of software distributed ++through that system in reliance on consistent application of that ++system; it is up to the author/donor to decide if he or she is willing ++to distribute software through any other system and a licensee cannot ++impose that choice. ++ ++This section is intended to make thoroughly clear what is believed to ++be a consequence of the rest of this License. ++ ++ 8. If the distribution and/or use of the Program is restricted in ++certain countries either by patents or by copyrighted interfaces, the ++original copyright holder who places the Program under this License ++may add an explicit geographical distribution limitation excluding ++those countries, so that distribution is permitted only in or among ++countries not thus excluded. In such case, this License incorporates ++the limitation as if written in the body of this License. ++ ++ 9. The Free Software Foundation may publish revised and/or new versions ++of the General Public License from time to time. Such new versions will ++be similar in spirit to the present version, but may differ in detail to ++address new problems or concerns. ++ ++Each version is given a distinguishing version number. If the Program ++specifies a version number of this License which applies to it and "any ++later version", you have the option of following the terms and conditions ++either of that version or of any later version published by the Free ++Software Foundation. If the Program does not specify a version number of ++this License, you may choose any version ever published by the Free Software ++Foundation. ++ ++ 10. If you wish to incorporate parts of the Program into other free ++programs whose distribution conditions are different, write to the author ++to ask for permission. For software which is copyrighted by the Free ++Software Foundation, write to the Free Software Foundation; we sometimes ++make exceptions for this. Our decision will be guided by the two goals ++of preserving the free status of all derivatives of our free software and ++of promoting the sharing and reuse of software generally. ++ ++ NO WARRANTY ++ ++ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY ++FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN ++OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES ++PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED ++OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ++MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS ++TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE ++PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, ++REPAIR OR CORRECTION. ++ ++ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING ++WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR ++REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, ++INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING ++OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED ++TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY ++YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER ++PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE ++POSSIBILITY OF SUCH DAMAGES. ++ ++ END OF TERMS AND CONDITIONS ++ ++ How to Apply These Terms to Your New Programs ++ ++ If you develop a new program, and you want it to be of the greatest ++possible use to the public, the best way to achieve this is to make it ++free software which everyone can redistribute and change under these terms. ++ ++ To do so, attach the following notices to the program. It is safest ++to attach them to the start of each source file to most effectively ++convey the exclusion of warranty; and each file should have at least ++the "copyright" line and a pointer to where the full notice is found. ++ ++ <one line to give the program's name and a brief idea of what it does.> ++ Copyright (C) <year> <name of author> ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License along ++ with this program; if not, write to the Free Software Foundation, Inc., ++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ++ ++Also add information on how to contact you by electronic and paper mail. ++ ++If the program is interactive, make it output a short notice like this ++when it starts in an interactive mode: ++ ++ Gnomovision version 69, Copyright (C) year name of author ++ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. ++ This is free software, and you are welcome to redistribute it ++ under certain conditions; type `show c' for details. ++ ++The hypothetical commands `show w' and `show c' should show the appropriate ++parts of the General Public License. Of course, the commands you use may ++be called something other than `show w' and `show c'; they could even be ++mouse-clicks or menu items--whatever suits your program. ++ ++You should also get your employer (if you work as a programmer) or your ++school, if any, to sign a "copyright disclaimer" for the program, if ++necessary. Here is a sample; alter the names: ++ ++ Yoyodyne, Inc., hereby disclaims all copyright interest in the program ++ `Gnomovision' (which makes passes at compilers) written by James Hacker. ++ ++ <signature of Ty Coon>, 1 April 1989 ++ Ty Coon, President of Vice ++ ++This General Public License does not permit incorporating your program into ++proprietary programs. If your program is a subroutine library, you may ++consider it more useful to permit linking proprietary applications with the ++library. If this is what you want to do, use the GNU Lesser General ++Public License instead of this License. diff --git a/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.1 b/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.1 new file mode 100644 index 000000000..2d7520f77 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.1 @@ -0,0 +1,25 @@ +.TH USLEEP 1 "Red Hat, Inc" \" -*- nroff -*- +.SH NAME +usleep \- sleep some number of microseconds +.SH SYNOPSIS +.B usleep +[\fInumber\fP] +.SH DESCRIPTION +.B usleep +sleeps some number of microseconds. The default is 1. +.SH OPTIONS +\fI--usage\fP +Show short usage message. +.TP +\fI--help, -?\fP +Print help information. +.TP +\fI-v, --version\fP +Print version information. +.SH BUGS +Probably not accurate on many machines down to the microsecond. Count +on precision only to -4 or maybe -5. +.SH AUTHOR +Donald Barnes <djb@redhat.com> +.br +Erik Troan <ewt@redhat.com> diff --git a/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c b/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c new file mode 100644 index 000000000..a5e7d9d71 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c @@ -0,0 +1,82 @@ +/* + * usleep + * + * Written by Donald Barnes <djb@redhat.com> for Red Hat, Inc. + * + * Copyright (c) 1997-2003 Red Hat, Inc. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License, version 2, + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + */ + + +#include <unistd.h> +#include <stdlib.h> +#include <string.h> +#include <stdio.h> + +#include "popt.h" + +int main(int argc, char **argv) { + unsigned long count; + poptContext optCon; + int showVersion = 0; + int showOot = 0; + int rc; + char * countStr = NULL; + struct poptOption options[] = { + { "version", 'v', POPT_ARG_NONE, &showVersion, 0, + "Display the version of this program, and exit" }, + { "oot", 'o', POPT_ARG_NONE, &showOot, 0, + "oot says hey!" }, + POPT_AUTOHELP + { 0, 0, 0, 0, 0 } + }; + + optCon = poptGetContext("usleep", argc, argv, options,0); + /*poptReadDefaultConfig(optCon, 1);*/ + poptSetOtherOptionHelp(optCon, "[microseconds]"); + + if ((rc = poptGetNextOpt(optCon)) < -1) { + fprintf(stderr, "usleep: bad argument %s: %s\n", + poptBadOption(optCon, POPT_BADOPTION_NOALIAS), + poptStrerror(rc)); + return 2; + } + + if (showVersion) { + printf("usleep version 1.2\n usleep --help for more info\n"); + return 0; + } + + if (showOot) { + printf("oot says hey!\n"); + return 0; + } + + countStr = poptGetArg(optCon); + + if (countStr == NULL) count = 1; + + else if (countStr && poptGetArg(optCon)) { + fprintf(stderr, "%s: exactly one argument (number of microseconds) " + "must be used\n", argv[0]); + return 2; + } + + else count = strtoul(countStr, NULL, 0); + + usleep(count); + return 0; +} diff --git a/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb b/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb new file mode 100644 index 000000000..9e9c7ed8c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb @@ -0,0 +1,24 @@ +SUMMARY = "A user tool to support sleeping some number of microseconds" +SECTION = "base" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" + +S = "${WORKDIR}" +DEPENDS = "popt" + +SRC_URI = "file://usleep.c \ + file://usleep.1 \ + file://GPLv2.patch \ +" + +do_compile() { + ${CC} ${CFLAGS} ${LDFLAGS} usleep.c -o usleep -lpopt +} + +do_install() { + install -d ${D}${base_bindir} + install -d ${D}${mandir}/man1 + + install -m 0755 ${WORKDIR}/usleep ${D}${base_bindir} + install -m 0644 ${WORKDIR}/usleep.1 ${D}${mandir}/man1 +} |