From b48b7b4109868a8c0ddda090992e936e821c7ea6 Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Wed, 17 Aug 2016 15:04:38 -0500 Subject: Squashed 'import-layers/meta-openembedded/' content from commit 247b126 Change-Id: I40827e9ce5fba63f1cca2a0be44976ae8383b4c0 git-subtree-dir: import-layers/meta-openembedded git-subtree-split: 247b1267bbe95719cd4877d2d3cfbaf2a2f4865a Signed-off-by: Patrick Williams --- .../recipes-core/dbus/dbus-daemon-proxy_git.bb | 22 ++ .../recipes-core/eggdbus/eggdbus/gtk-doc.patch | 34 ++ .../recipes-core/eggdbus/eggdbus/marshal.patch | 28 ++ .../meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb | 33 ++ .../fakeroot/fakeroot-native_1.18.4.bb | 15 + .../recipes-core/fakeroot/fakeroot_1.18.4.bb | 30 ++ .../glib-2.0/glibmm/remove-examples.patch | 30 ++ .../meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb | 31 ++ .../libsigc++-2.0/libsigc++-2.0_2.2.11.bb | 21 ++ .../libxml/libxml++/libxml++_ptest.patch | 82 +++++ .../meta-oe/recipes-core/libxml/libxml++/run-ptest | 3 + .../meta-oe/recipes-core/libxml/libxml++_2.38.1.bb | 28 ++ .../meta-oe/recipes-core/llvm/llvm-common.bb | 22 ++ .../recipes-core/llvm/llvm-common/llvm-config | 10 + .../meta-oe/recipes-core/llvm/llvm.inc | 162 ++++++++++ ...r-output-from-configure-if-CFLAGS-is-set-.patch | 52 +++ .../llvm/llvm3.3/arm_fenv_uclibc.patch | 14 + .../meta-oe/recipes-core/llvm/llvm3.3_3.3.bb | 22 ++ .../recipes-core/meta/distro-feed-configs.bb | 33 ++ .../recipes-core/mm-common/mm-common_0.9.8.bb | 12 + .../packagegroups/packagegroup-basic.bb | 56 ++++ .../packagegroups/packagegroup-boot.bb | 34 ++ .../packagegroups/packagegroup-cli-tools.bb | 45 +++ .../recipes-core/plymouth/plymouth_0.9.2.bb | 61 ++++ .../create-as-shared-lib.patch | 31 ++ .../proxy-libintl-20100902/soname.patch | 23 ++ .../proxy-libintl-20100902/stub-only.patch | 72 +++++ .../proxy-libintl/proxy-libintl_20100902.bb | 34 ++ .../meta-oe/recipes-core/toybox/toybox_0.6.0.bb | 65 ++++ .../meta-oe/recipes-core/usleep/files/GPLv2.patch | 347 +++++++++++++++++++++ .../meta-oe/recipes-core/usleep/files/usleep.1 | 25 ++ .../meta-oe/recipes-core/usleep/files/usleep.c | 82 +++++ .../meta-oe/recipes-core/usleep/usleep_1.0.bb | 26 ++ 33 files changed, 1585 insertions(+) create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/run-ptest create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.1.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common/llvm-config create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/Remove-error-output-from-configure-if-CFLAGS-is-set-.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/arm_fenv_uclibc.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-boot.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.6.0.bb create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/GPLv2.patch create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.1 create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c create mode 100644 import-layers/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb (limited to 'import-layers/meta-openembedded/meta-oe/recipes-core') diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb new file mode 100644 index 000000000..205e1d1a1 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb @@ -0,0 +1,22 @@ +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" + +ASNEEDED_pn-dbus-daemon-proxy = "" + +SRC_URI = "git://git.collabora.co.uk/git/user/alban/dbus-daemon-proxy" +S = "${WORKDIR}/git" + +do_compile() { + ${CC} ${LDFLAGS} `pkg-config --cflags --libs dbus-glib-1` -o dbus-daemon-proxy dbus-daemon-proxy.c +} + +do_install() { + install -d ${D}${bindir} + install -m 0755 dbus-daemon-proxy ${D}${bindir} +} + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch new file mode 100644 index 000000000..abd7ff416 --- /dev/null +++ b/import-layers/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/import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch new file mode 100644 index 000000000..a605a34c8 --- /dev/null +++ b/import-layers/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/import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb new file mode 100644 index 000000000..cc28ec77c --- /dev/null +++ b/import-layers/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/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb new file mode 100644 index 000000000..a27a60b48 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb @@ -0,0 +1,15 @@ +require fakeroot_${PV}.bb + +S = "${WORKDIR}/fakeroot-${PV}" + +inherit native + +EXTRA_OECONF = "--program-prefix=" + +# Compatability for the rare systems not using or having SYSV +python () { + if d.getVar('HOST_NONSYSV', True) and d.getVar('HOST_NONSYSV', True) != '0': + d.setVar('EXTRA_OECONF', ' --with-ipc=tcp --program-prefix= ') +} + +RDEPENDS_${PN} = "util-linux-native" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb new file mode 100644 index 000000000..37b3c1870 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb @@ -0,0 +1,30 @@ +SUMMARY = "Gives a fake root environment" +HOMEPAGE = "http://fakeroot.alioth.debian.org" +SECTION = "base" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" + +SRC_URI = "\ + ${DEBIAN_MIRROR}/main/f/fakeroot/fakeroot_${PV}.orig.tar.bz2 \ +" + +inherit autotools + +do_configure_prepend() { + mkdir -p ${S}/build-aux +} + +do_install_append() { + install -d ${D}${includedir}/fakeroot + install -m 644 *.h ${D}${includedir}/fakeroot +} + +# fakeroot needs getopt which is provided by the util-linux package +RDEPENDS_${PN} = "util-linux" + + +SRC_URI[md5sum] = "706171d8d520b1ca1576ac73f2ceb4f3" +SRC_URI[sha256sum] = "0a359efa3e9496c33234b3e9c89306a09bb4da9d33de43c261f1d8447e6ebea2" + +# http://errors.yoctoproject.org/Errors/Details/35143/ +PNBLACKLIST[fakeroot] ?= "BROKEN: QA Issue: -dev package contains non-symlink .so" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch new file mode 100644 index 000000000..a5944c288 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm/remove-examples.patch @@ -0,0 +1,30 @@ +Index: glibmm-2.22.1/Makefile.am +=================================================================== +--- glibmm-2.22.1.orig/Makefile.am ++++ glibmm-2.22.1/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 +Index: glibmm-2.22.1/configure.ac +=================================================================== +--- glibmm-2.22.1.orig/configure.ac ++++ glibmm-2.22.1/configure.ac +@@ -136,7 +136,6 @@ AC_CONFIG_FILES([Makefile + gio/src/Makefile + gio/giomm/Makefile + tests/Makefile +- examples/Makefile + docs/Makefile + docs/reference/Doxyfile + MSVC_Net2005/glibmm/glibmm.rc diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb new file mode 100644 index 000000000..d9cffff7b --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb @@ -0,0 +1,31 @@ +SUMMARY = "C++ bindings for the glib library" +HOMEPAGE = "http://www.gtkmm.org/" +SECTION = "libs" +LICENSE = "LGPLv2.1 & GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \ + file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe" + +DEPENDS = "mm-common glib-2.0 libsigc++-2.0" +inherit autotools pkgconfig + +SHRT_VER = "${@d.getVar('PV',1).split('.')[0]}.${@d.getVar('PV',1).split('.')[1]}" + +SRC_URI = " \ + ftp://ftp.gnome.org/pub/GNOME/sources/glibmm/${SHRT_VER}/glibmm-${PV}.tar.xz \ + file://remove-examples.patch \ +" +SRC_URI[md5sum] = "32ee4150b436d097fe2506d0b0b13a75" +SRC_URI[sha256sum] = "1b0ac0425d24895507c0e0e8088a464c7ae2d289c47afa1c11f63278fc672ea8" + +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 +} + +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" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb new file mode 100644 index 000000000..546305f27 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb @@ -0,0 +1,21 @@ +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.2/libsigc++-${PV}.tar.xz" +SRC_URI[md5sum] = "815d0c6d61601f51bbcaeef6826606b0" +SRC_URI[sha256sum] = "9834045f74f56752c2c6b3cdc195c30ab8314ad22dc8e626d6f67f940f1e4957" + +S = "${WORKDIR}/libsigc++-${PV}" + +inherit autotools + +EXTRA_AUTORECONF = "--exclude=autoheader" + +FILES_${PN}-dev += "${libdir}/sigc++-*/" +FILES_${PN}-doc += "${datadir}/devhelp" + +BBCLASSEXTEND = "native" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch new file mode 100644 index 000000000..82960f112 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch @@ -0,0 +1,82 @@ +diff --git a/Makefile.am b/Makefile.am +index d4aadb1..0e36756 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -253,5 +253,8 @@ post-html: docs/index.html + rsync $(rsync_args) -r docs/index.html $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project) + rsync $(rsync_args) -r examples $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project) + ++install-ptest: ++ make -C examples install-ptest ++ + # Optional: auto-generate the ChangeLog file from the git log on make dist + include $(top_srcdir)/macros/dist-changelog.am +diff --git a/examples/Makefile.am b/examples/Makefile.am +index d9541ca..c27e088 100644 +--- a/examples/Makefile.am ++++ b/examples/Makefile.am +@@ -19,6 +19,8 @@ AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I. $(LIBXMLXX_CFLAGS) + 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 \ +@@ -36,6 +38,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 \ +@@ -147,10 +166,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)/" && "$(abs_builddir)//" >/dev/null ++script_template = cd "" && ".libs/" >/dev/null + standard_scripts = $(filter-out dom_read_write/make_check.sh,$(check_SCRIPTS)) + + # All other script files are generated like so: +@@ -162,3 +181,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 $(srcdir)/../macros/test-driver $(DESTDIR)/macros ++ sed -i -e 's|^Makefile:|_Makefile:|' $(DESTDIR)/examples/Makefile ++ diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/run-ptest b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/run-ptest new file mode 100644 index 000000000..236f66753 --- /dev/null +++ b/import-layers/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/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.1.bb new file mode 100644 index 000000000..20313fe56 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.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 = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 " + +SHRT_VER = "${@d.getVar('PV',True).split('.')[0]}.${@d.getVar('PV',True).split('.')[1]}" +SRC_URI = "${GNOME_MIRROR}/${BPN}/${SHRT_VER}/${BP}.tar.xz \ + file://libxml++_ptest.patch \ + file://run-ptest \ +" +SRC_URI[md5sum] = "6b16aac575725a9bc0e9d96489e9251f" +SRC_URI[sha256sum] = "882529189b03db6c69925b3f579ab1941feb4f02b5fe2612504ee7e498a4a05f" + +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/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common.bb new file mode 100644 index 000000000..618cc1e9d --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common.bb @@ -0,0 +1,22 @@ +SUMMARY = "Helper script for OE's llvm support" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \ + file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420 \ +" + +SRC_URI = "file://llvm-config" + +ALLOW_EMPTY_${PN} = "1" +SYSROOT_PREPROCESS_FUNCS_append_class-target = " llvm_common_sysroot_preprocess" + +llvm_common_sysroot_preprocess() { + install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/ + install -m 0755 ${WORKDIR}/llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/ +} + +do_install_class-native() { + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/llvm-config ${D}${bindir} +} + +BBCLASSEXTEND = "native" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common/llvm-config b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common/llvm-config new file mode 100644 index 000000000..a9a416d93 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm-common/llvm-config @@ -0,0 +1,10 @@ +#!/bin/sh +# Wrapper script for real llvm-config. Simply calls + +if [ $WANT_LLVM_RELEASE ]; then + exec `dirname $0`/${TARGET_PREFIX}llvm-config$WANT_LLVM_RELEASE ${@} +else + echo "The variable WANT_LLVM_RELEASE is not defined and exported" + echo "by your build recipe. Go figure." + exit 1 +fi diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc new file mode 100644 index 000000000..fa971f38c --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc @@ -0,0 +1,162 @@ +# LLVM does not provide ABI stability between different versions. For this +# reason OE makes it possible to build and install different llvm versions +# at the same time. +# +# This is true for the normal recipes as well as the native ones. +# +# All regular installation directories are prefixed with 'llvm${LLVM_RELEASE}' +# e.g. "${STAGING_BINDIR}/llvm2.5" or "${STAGING_INCDIR}/llvm2.5" +# +# For your program or library that makes use of llvm you do should not need to +# modify anything as long as it uses the results of various llvm-config +# invocations. If you need customizations something is wrong and it needs to be +# fixed (report bug). +# +# However the *recipe* for your program/library *must* declare +# export WANT_LLVM_RELEASE = "" +# The version number is picked up by a generic wrapper script which just calls +# the variant of the specified version. + +DESCRIPTION = "The Low Level Virtual Machine" +HOMEPAGE = "http://llvm.org" + +# 3-clause BSD-like +# University of Illinois/NCSA Open Source License +LICENSE = "NCSA" +LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=d0a3ef0d3e0e8f5cf59e5ffc273ab1f8" + +DEPENDS = "libffi libxml2-native llvm-common" + +inherit perlnative pythonnative autotools + +LLVM_RELEASE = "${PV}" +LLVM_DIR = "llvm${LLVM_RELEASE}" + +SRC_URI = "http://llvm.org/releases/${PV}/llvm-${PV}.src.tar.gz" +S = "${WORKDIR}/llvm-${PV}.src" + +LLVM_BUILD_DIR = "${WORKDIR}/llvm-${PV}.build" +LLVM_INSTALL_DIR = "${WORKDIR}/llvm-install" + +EXTRA_OECONF += "--disable-assertions \ + --enable-debug-runtime \ + --disable-expensive-checks \ + --enable-bindings=none \ + --enable-keep-symbols \ + --enable-libffi \ + --enable-optimized \ + --enable-shared \ + --enable-targets=host-only" +EXTRA_OEMAKE += "REQUIRES_RTTI=1 VERBOSE=1" + +do_configure_prepend() { + # Remove RPATHs + sed -i 's:$(RPATH) -Wl,$(\(ToolDir\|LibDir\|ExmplDir\))::g' ${S}/Makefile.rules + + # Drop "svn" suffix from version string + sed -i 's/${PV}svn/${PV}/g' ${S}/configure + + # Fix paths in llvm-config + sed -i "s|sys::path::parent_path(CurrentPath))\.str()|sys::path::parent_path(sys::path::parent_path(CurrentPath))).str()|g" ${S}/tools/llvm-config/llvm-config.cpp + sed -ri "s#/(bin|include|lib)(/?\")#/\1/${LLVM_DIR}\2#g" ${S}/tools/llvm-config/llvm-config.cpp + + # Fix the hardcoded libdir in llvm-config + sed -i 's:/lib\>:/${baselib}:g' ${S}/tools/llvm-config/llvm-config.cpp + + # Fails to build unless using separate directory from source + mkdir -p ${LLVM_BUILD_DIR} + cd ${LLVM_BUILD_DIR} +} + +do_compile() { + cd ${LLVM_BUILD_DIR} + + # Fix libdir for multilib + sed -i 's:(PROJ_prefix)/lib:(PROJ_prefix)/${baselib}:g' Makefile.config + + oe_runmake \ + AR="${BUILD_AR}" \ + CC="${BUILD_CC}" \ + CFLAGS="${BUILD_CFLAGS}" \ + CXX="${BUILD_CXX}" \ + CXXFLAGS="${BUILD_CXXFLAGS}" \ + CPP="${BUILD_CPP}" \ + CPPFLAGS="${BUILD_CPPFLAGS}" \ + NM="${BUILD_NM}" \ + RANLIB="${BUILD_RANLIB}" \ + PATH="${STAGING_BINDIR_NATIVE}:$PATH" \ + cross-compile-build-tools + oe_runmake +} + +do_install() { + cd ${LLVM_BUILD_DIR} + oe_runmake DESTDIR=${LLVM_INSTALL_DIR} install + + mv ${LLVM_INSTALL_DIR}${bindir}/${HOST_SYS}-llvm-config-host ${LLVM_INSTALL_DIR}/llvm-config-host + + install -d ${D}${bindir}/${LLVM_DIR} + mv ${LLVM_INSTALL_DIR}${bindir}/* ${D}${bindir}/${LLVM_DIR}/ + + install -d ${D}${includedir}/${LLVM_DIR} + mv ${LLVM_INSTALL_DIR}${includedir}/* ${D}${includedir}/${LLVM_DIR}/ + + install -d ${D}${libdir}/${LLVM_DIR} + mv ${LLVM_INSTALL_DIR}${libdir}/* ${D}${libdir}/${LLVM_DIR}/ + ln -s ${LLVM_DIR}/libLLVM-${PV}.so ${D}${libdir}/libLLVM-${PV}.so + + install -d ${D}${docdir}/${LLVM_DIR} + mv ${LLVM_INSTALL_DIR}${prefix}/docs/llvm/* ${D}${docdir}/${LLVM_DIR} +} + +SYSROOT_PREPROCESS_FUNCS += "llvm_sysroot_preprocess" + +llvm_sysroot_preprocess() { + install -d ${SYSROOT_DESTDIR}${bindir_crossscripts} + mv ${LLVM_INSTALL_DIR}/llvm-config-host ${SYSROOT_DESTDIR}${bindir_crossscripts}/llvm-config${PV} +} + +PACKAGES += "${PN}-bugpointpasses ${PN}-llvmhello" +ALLOW_EMPTY_${PN} = "1" +ALLOW_EMPTY_${PN}-staticdev = "1" +FILES_${PN} = "" +FILES_${PN}-staticdev = "" +FILES_${PN}-dbg = " \ + ${bindir}/${LLVM_DIR}/.debug \ + ${libdir}/${LLVM_DIR}/.debug/BugpointPasses.so \ + ${libdir}/${LLVM_DIR}/.debug/LLVMHello.so \ + /usr/src/debug \ +" + +FILES_${PN}-dev = " \ + ${bindir}/${LLVM_DIR} \ + ${includedir}/${LLVM_DIR} \ +" +RRECOMMENDS_${PN}-dev += "${PN}-bugpointpasses ${PN}-llvmhello" + +FILES_${PN}-bugpointpasses = "\ + ${libdir}/${LLVM_DIR}/BugpointPasses.so \ +" +FILES_${PN}-llvmhello = "\ + ${libdir}/${LLVM_DIR}/LLVMHello.so \ +" + +PACKAGES_DYNAMIC = "^libllvm${LLVM_RELEASE}-.*$" +NOAUTOPACKAGEDEBUG = "1" + +INSANE_SKIP_${MLPREFIX}libllvm${LLVM_RELEASE}-llvm-${LLVM_RELEASE} += "dev-so" + +python llvm_populate_packages() { + libdir = bb.data.expand('${libdir}', d) + libllvm_libdir = bb.data.expand('${libdir}/${LLVM_DIR}', d) + split_dbg_packages = do_split_packages(d, libllvm_libdir+'/.debug', '^lib(.*)\.so$', 'libllvm${LLVM_RELEASE}-%s-dbg', 'Split debug package for %s', allow_dirs=True) + split_packages = do_split_packages(d, libdir, '^lib(.*)\.so$', 'libllvm${LLVM_RELEASE}-%s', 'Split package for %s', allow_dirs=True, allow_links=True, recursive=True) + split_staticdev_packages = do_split_packages(d, libllvm_libdir, '^lib(.*)\.a$', 'libllvm${LLVM_RELEASE}-%s-staticdev', 'Split staticdev package for %s', allow_dirs=True) + if split_packages: + pn = d.getVar('PN', True) + d.appendVar('RDEPENDS_' + pn, ' '+' '.join(split_packages)) + d.appendVar('RDEPENDS_' + pn + '-dbg', ' '+' '.join(split_dbg_packages)) + d.appendVar('RDEPENDS_' + pn + '-staticdev', ' '+' '.join(split_staticdev_packages)) +} + +PACKAGESPLITFUNCS_prepend = "llvm_populate_packages " diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/Remove-error-output-from-configure-if-CFLAGS-is-set-.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/Remove-error-output-from-configure-if-CFLAGS-is-set-.patch new file mode 100644 index 000000000..44387e898 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/Remove-error-output-from-configure-if-CFLAGS-is-set-.patch @@ -0,0 +1,52 @@ +From d4bf7a3853dab12c11cbfc8088fd76f548a8d017 Mon Sep 17 00:00:00 2001 +From: Patrik Hagglund +Date: Tue, 24 Sep 2013 11:38:45 +0000 +Subject: [PATCH] Remove error output from configure if CFLAGS is set (r174313). + +This fixes PR16724. + +git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191289 91177308-0d34-0410-b5e6-96231b3b80d8 + +https://github.com/llvm-mirror/llvm/commit/d4bf7a3853dab12c11cbfc8088fd76f548a8d017 + +Upstream-Status: Backport + +Signed-off-by: Andre McCurdy +--- + autoconf/configure.ac | 4 ++-- + configure | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/autoconf/configure.ac b/autoconf/configure.ac +index f9c365c..45f2fe4 100644 +--- a/autoconf/configure.ac ++++ b/autoconf/configure.ac +@@ -61,8 +61,8 @@ fi + + dnl Default to empty (i.e. assigning the null string to) CFLAGS and CXXFLAGS, + dnl instead of the autoconf default (for example, '-g -O2' for CC=gcc). +-${CFLAGS=} +-${CXXFLAGS=} ++: ${CFLAGS=} ++: ${CXXFLAGS=} + + dnl We need to check for the compiler up here to avoid anything else + dnl starting with a different one. +diff --git a/configure b/configure +index f3a6594..9090cda 100755 +--- a/configure ++++ b/configure +@@ -1992,8 +1992,8 @@ echo "$as_me: error: Already configured in ${srcdir}" >&2;} + fi + fi + +-${CFLAGS=} +-${CXXFLAGS=} ++: ${CFLAGS=} ++: ${CXXFLAGS=} + + ac_ext=c + ac_cpp='$CPP $CPPFLAGS' +-- +1.9.1 + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/arm_fenv_uclibc.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/arm_fenv_uclibc.patch new file mode 100644 index 000000000..c3ae49464 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3/arm_fenv_uclibc.patch @@ -0,0 +1,14 @@ +Index: llvm-2.9/include/llvm/Support/FEnv.h +=================================================================== +--- llvm-2.9.orig/include/llvm/Support/FEnv.h 2010-11-29 20:44:50.000000000 +0100 ++++ llvm-2.9/include/llvm/Support/FEnv.h 2011-11-18 18:42:22.580161297 +0100 +@@ -17,6 +17,9 @@ + + #include "llvm/Config/config.h" + #include ++ ++#undef HAVE_FENV_H ++ + #ifdef HAVE_FENV_H + #include + #endif diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb new file mode 100644 index 000000000..60a222185 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb @@ -0,0 +1,22 @@ +require llvm.inc + +DEPENDS += "zlib" +EXTRA_OECONF += "--enable-zlib" + +SRC_URI += "file://Remove-error-output-from-configure-if-CFLAGS-is-set-.patch" + +SRC_URI_append_libc-uclibc = " file://arm_fenv_uclibc.patch " + +SRC_URI[md5sum] = "40564e1dc390f9844f1711c08b08e391" +SRC_URI[sha256sum] = "68766b1e70d05a25e2f502e997a3cb3937187a3296595cf6e0977d5cd6727578" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[r600] = "--enable-experimental-targets=R600,,," + +# Fails to build with thumb-1 (qemuarm) +# | {standard input}: Assembler messages: +# | {standard input}:22: Error: selected processor does not support Thumb mode `stmdb sp!,{r0,r1,r2,r3,lr}' +# | {standard input}:31: Error: lo register required -- `ldmia sp!,{r0,r1,r2,r3,lr}' +# | {standard input}:32: Error: lo register required -- `ldr pc,[sp],#4' +# | make[3]: *** [/home/jenkins/oe/world/shr-core/tmp-glibc/work/armv5te-oe-linux-gnueabi/llvm3.3/3.3-r0/llvm-3.3.build/lib/Target/ARM/Release/ARMJITInfo.o] Error 1 +ARM_INSTRUCTION_SET = "arm" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb new file mode 100644 index 000000000..ea5ca3848 --- /dev/null +++ b/import-layers/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", 1 ).split() +# march = d.getVar( "MACHINE_ARCH", 1 ).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/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb new file mode 100644 index 000000000..943343b60 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb @@ -0,0 +1,12 @@ +inherit gnomebase + +GNOME_COMPRESS_TYPE="xz" + +SRC_URI[archive.md5sum] = "00fd5c6850cd5fecc2e02b04d0dd1637" +SRC_URI[archive.sha256sum] = "c9ab5fd3872fbe245fbc35347acf4a95063111f81d54c43df3af662dad0a03d5" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" + +BBCLASSEXTEND = "native" + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb new file mode 100644 index 000000000..21dd1deb6 --- /dev/null +++ b/import-layers/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://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" + +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/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-boot.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-boot.bb new file mode 100644 index 000000000..a542ae420 --- /dev/null +++ b/import-layers/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://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" + +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/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb new file mode 100644 index 000000000..2a4b067ba --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb @@ -0,0 +1,45 @@ +SUMMARY = "A set of useful command line tools" +SUMMARY_${PN}-debug = "A set of command line tools useful for debugging" +SECTION = "console" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" +PV = "1.0" +PR = "r21" + +inherit packagegroup allarch + +PACKAGES += "${PN}-debug" + +RDEPENDS_${PN} = "\ + dbus-daemon-proxy \ + dosfstools \ + htop \ + iptables \ + lsof \ + mbuffer \ + mtd-utils \ + nano \ + nfs-utils-client \ + nmon \ + powertop \ + screen \ + socat \ + sysstat \ +" + +RDEPENDS_${PN}-debug = "\ + evtest \ + devmem2 \ + i2c-tools \ + gdb \ + procps \ + pxaregs \ + s3c24xx-gpio \ + s3c64xx-gpio \ + serial-forward \ + strace \ +" + +RRECOMMENDS_${PN}-debug = "\ + ltrace \ +" diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb new file mode 100644 index 000000000..9ca850281 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb @@ -0,0 +1,61 @@ +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" +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', '', d)} \ + " + +PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm" +PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango" +PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+" + +PACKAGECONFIG ??= "pango" + +LOGO ??= "${datadir}/plymouth/bizcom.png" + +PACKAGECONFIG_append_x86 = " drm" +PACKAGECONFIG_append_x86-64 = " drm" + +inherit autotools pkgconfig systemd + + +do_install_append() { + install -d ${D}${systemd_unitdir}/system + install -m 644 ${B}/systemd-units/*.service ${D}${systemd_unitdir}/system + install -m 644 ${B}/systemd-units/systemd-ask-password-plymouth.path ${D}${systemd_unitdir}/system + # Remove /var/run from package as plymouth will populate it on startup + rm -fr "${D}${localstatedir}/run" +} + +PACKAGES =+ "${PN}-initrd ${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/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch new file mode 100644 index 000000000..306e3b821 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch @@ -0,0 +1,31 @@ +--- a/src/proxy-libintl/Makefile.org 2009-09-12 23:19:04.989421607 -0700 ++++ a/src/proxy-libintl/Makefile 2009-09-12 23:21:14.100640001 -0700 +@@ -4,20 +4,20 @@ ZIPFILE = proxy-libintl-$(TIMESTAMP).zip + CC = gcc + CFLAGS = -Wall -I ../../include + +-all : ../../lib/libintl.a ../../lib/intl.lib ++all : ../../lib/libintl.so ../../lib/intl.lib + +-../../lib/libintl.a : libintl.o +- ar rc $@ libintl.o ++../../lib/libintl.so : libintl.o ++ $(CC) -shared -o $@ libintl.o + +-../../lib/intl.lib : ../../lib/libintl.a +- cp ../../lib/libintl.a $@ +- strip --strip-unneeded $@ ++../../lib/intl.lib : ../../lib/libintl.so ++ cp ../../lib/libintl.so $@ ++ $(STRIP) --strip-unneeded $@ + + libintl.o : libintl.c + $(CC) $(CFLAGS) -c libintl.c + + clean : +- rm -f *.o ../../lib/libintl.a ../../$(ZIPFILE) ++ rm -f *.o ../../lib/libintl.so ../../$(ZIPFILE) + + dist : clean all +- cd ../..; zip $(ZIPFILE) include/libintl.h lib/{libintl.a,intl.lib} src/proxy-libintl/{README.txt,COPYING.LIB.txt,Makefile,libintl.[ch]}; manifestify $(ZIPFILE) ++ cd ../..; zip $(ZIPFILE) include/libintl.h lib/{libintl.so,intl.lib} src/proxy-libintl/{README.txt,COPYING.LIB.txt,Makefile,libintl.[ch]}; manifestify $(ZIPFILE) diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch new file mode 100644 index 000000000..0df232d25 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch @@ -0,0 +1,23 @@ +Index: proxy-libintl-20080418-r6/src/proxy-libintl/Makefile +=================================================================== +--- proxy-libintl-20080418-r6.orig/src/proxy-libintl/Makefile 2010-07-25 08:40:22.893620001 -0700 ++++ proxy-libintl-20080418-r6/src/proxy-libintl/Makefile 2010-07-25 10:51:29.573620000 -0700 +@@ -6,16 +6,13 @@ CFLAGS = -Wall -I ../../include + + all : ../../lib/libintl.so ../../lib/intl.lib + +-../../lib/libintl.so : libintl.o +- $(CC) -shared -o $@ libintl.o ++../../lib/libintl.so : libintl.c ++ $(CC) $(CFLAGS) -shared -Wl,-soname -Wl,libintl.so -o $@ $< + + ../../lib/intl.lib : ../../lib/libintl.so + cp ../../lib/libintl.so $@ + $(STRIP) --strip-unneeded $@ + +-libintl.o : libintl.c +- $(CC) $(CFLAGS) -c libintl.c +- + clean : + rm -f *.o ../../lib/libintl.so ../../$(ZIPFILE) + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch new file mode 100644 index 000000000..7186b13c0 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch @@ -0,0 +1,72 @@ +Index: proxy-libintl/src/proxy-libintl/libintl.c +=================================================================== +--- proxy-libintl.orig/src/proxy-libintl/libintl.c ++++ proxy-libintl/src/proxy-libintl/libintl.c +@@ -18,9 +18,12 @@ + */ + + #ifdef _WIN32 +-#include ++# include + #else +-#include ++# include ++# if !STUB_ONLY ++# include ++# endif + typedef void* HMODULE; + #endif + +@@ -65,11 +68,13 @@ static char * (*p_bind_textdomain_codese + static int + use_intl_dll (HMODULE dll) + { +-#ifdef _WIN32 +-#define LOOKUP(fn) p_##fn = (void *) GetProcAddress (dll, #fn); if (p_##fn == NULL) return 0 +-#else +-#define LOOKUP(fn) p_##fn = (void *) dlsym (dll, #fn); if (p_##fn == NULL) return 0 +-#endif ++#if !STUB_ONLY ++# ifdef _WIN32 ++# define LOOKUP(fn) p_##fn = (void *) GetProcAddress (dll, #fn); if (p_##fn == NULL) return 0 ++# else ++# define LOOKUP(fn) p_##fn = (void *) dlsym (dll, #fn); if (p_##fn == NULL) return 0 ++# endif /* _WIN32 */ ++ + + LOOKUP (gettext); + LOOKUP (dgettext); +@@ -82,7 +87,7 @@ use_intl_dll (HMODULE dll) + LOOKUP (bind_textdomain_codeset); + + #undef LOOKUP +- ++#endif /* !STUB_ONLY */ + return 1; + } + +@@ -171,13 +176,17 @@ setup (void) + + if (!beenhere) + { +-#ifdef _WIN32 +- HMODULE intl_dll = LoadLibrary ("intl.dll"); +-#elif defined(__APPLE__) && defined(__MACH__) +- HMODULE intl_dll = dlopen ("libintl.dylib", RTLD_LAZY); +-#else +- HMODULE intl_dll = dlopen ("libintl.so", RTLD_LAZY); +-#endif ++#if !STUB_ONLY ++# ifdef _WIN32 ++ HMODULE intl_dll = LoadLibrary ("intl.dll"); ++# elif defined(__APPLE__) && defined(__MACH__) ++ HMODULE intl_dll = dlopen ("libintl.dylib", RTLD_LAZY); ++# else ++ HMODULE intl_dll = dlopen ("libintl.so", RTLD_LAZY); ++# endif ++#else /* !STUB_ONLY */ ++ HMODULE intl_dll = NULL; ++#endif /* STUB_ONLY */ + + if (intl_dll != NULL && + use_intl_dll (intl_dll)) diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb new file mode 100644 index 000000000..a46a91c8b --- /dev/null +++ b/import-layers/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', 1) != '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/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.6.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.6.0.bb new file mode 100644 index 000000000..da03200b2 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.6.0.bb @@ -0,0 +1,65 @@ +SUMMARY = "Toybox combines common utilities together into a single executable." +HOMEPAGE = "http://www.landley.net/toybox/" + +SRC_URI = "http://www.landley.net/toybox/downloads/${BPN}-${PV}.tar.gz" + +SRC_URI[md5sum] = "7f4a6c89e56c48e3350e611f5b36c2cf" +SRC_URI[sha256sum] = "b6e2694d19ac08f1c3416d5b2a02a31d445db2ed98dec89761430cdff2c9710d" + + +LICENSE = "BSD-0-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f0b8b3dd6431bcaa245da0a08bd0d511" + +SECTION = "base" + +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 +} + +do_compile() { + oe_runmake toybox_unstripped + + # Create a list of links needed + oe_runmake 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_unstripped ${D}${base_bindir}/toybox + else + install -m 0755 ${B}/toybox_unstripped ${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', True) + pn = d.getVar('PN', True) + 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/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/GPLv2.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/GPLv2.patch new file mode 100644 index 000000000..1ee8181f1 --- /dev/null +++ b/import-layers/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. ++ ++ ++ Copyright (C) ++ ++ 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. ++ ++ , 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/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.1 b/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.1 new file mode 100644 index 000000000..2d7520f77 --- /dev/null +++ b/import-layers/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 +.br +Erik Troan diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c b/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c new file mode 100644 index 000000000..a5e7d9d71 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/files/usleep.c @@ -0,0 +1,82 @@ +/* + * usleep + * + * Written by Donald Barnes 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 +#include +#include +#include + +#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/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb new file mode 100644 index 000000000..2ef4b7c02 --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-core/usleep/usleep_1.0.bb @@ -0,0 +1,26 @@ +SUMMARY = "A user tool to support sleeping some number of microseconds" +SECTION = "base" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" + +PR = "r0" + +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 +} -- cgit v1.2.3