summaryrefslogtreecommitdiff
path: root/recipes/gpio-event
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gpio-event')
-rw-r--r--recipes/gpio-event/gpio-event.bb64
-rw-r--r--recipes/gpio-event/gpio-event/makefile.patch26
2 files changed, 90 insertions, 0 deletions
diff --git a/recipes/gpio-event/gpio-event.bb b/recipes/gpio-event/gpio-event.bb
new file mode 100644
index 0000000000..da436b2b4d
--- /dev/null
+++ b/recipes/gpio-event/gpio-event.bb
@@ -0,0 +1,64 @@
+# FIXME, consider using kernel staging directory instead of KERNEL_SOURCE which is
+# located in the work directory. see module.bbclass
+
+DESCRIPTION = "gpio-event driver and userspace program"
+PRIORITY = "optional"
+SECTION = "base"
+LICENSE = "GPL"
+RDEPENDS = "kernel (${KERNEL_VERSION})"
+DEPENDS = "virtual/kernel"
+
+PR = "r4"
+
+SRC_URI = "http://davehylands.com/gumstix-wiki/gpio-event/gpio-event-2.6.21-1444-select.tar.gz \
+ file://makefile.patch;patch=1 \
+ "
+
+S = "${WORKDIR}/gpio-event"
+
+inherit module-base
+
+addtask builddir after do_fetch before do_unpack
+addtask movesrc after do_unpack before do_patch
+
+EXTRA_OEMAKE = 'CROSS_COMPILE="${CROSS_COMPILE}" \
+ KERNELDIR="${KERNEL_SOURCE}" \
+ CC="${CC}" \
+ '
+
+PARALLEL_MAKE = ""
+
+do_builddir () {
+ mkdir -p ${S}
+}
+
+do_movesrc () {
+ cd ${WORKDIR}
+ mv gpio-event*.c gpio-event*.h Makefile ${S}
+}
+
+do_configure () {
+ echo "Nothing to configure for gpio-event"
+}
+
+do_compile () {
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+ cd ${S}
+ oe_runmake
+}
+
+do_install () {
+ # install programs to bindir
+ install -m 0755 -d ${D}${bindir}
+ install -m 0755 ${S}/gpio-event ${D}${bindir}
+
+ # kernel module installs with other modules
+ install -m 0755 -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/extra/
+ # use cp instead of install so the driver doesn't get stripped
+ cp ${S}/gpio-event-drv.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/extra/
+}
+
+PACKAGES = "${PN}"
+FILES_${PN} = "${bindir}/gpio-event"
+FILES_${PN} += "${base_libdir}/modules/${KERNEL_VERSION}/extra/gpio-event-drv.ko"
+
diff --git a/recipes/gpio-event/gpio-event/makefile.patch b/recipes/gpio-event/gpio-event/makefile.patch
new file mode 100644
index 0000000000..e1b7fe31b9
--- /dev/null
+++ b/recipes/gpio-event/gpio-event/makefile.patch
@@ -0,0 +1,26 @@
+--- gpio-event/Makefile.orig 2008-03-09 13:59:07.000000000 -0600
++++ gpio-event/Makefile 2008-03-09 13:59:51.000000000 -0600
+@@ -19,10 +19,10 @@
+
+ PWD := $(shell pwd)
+
+-GUMSTIX_BUILDROOT = $(PWD)/../cx-1575
+-BUILD_ARM = $(wildcard $(GUMSTIX_BUILDROOT)/build_arm*)
+-KERNELDIR ?= $(wildcard $(BUILD_ARM)/linux-*)
+-CROSS_COMPILE = $(BUILD_ARM)/staging_dir/bin/arm-linux-
++#GUMSTIX_BUILDROOT = $(PWD)/../cx-1575
++#BUILD_ARM = $(wildcard $(GUMSTIX_BUILDROOT)/build_arm*)
++#KERNELDIR ?= $(wildcard $(BUILD_ARM)/linux-*)
++#CROSS_COMPILE = $(BUILD_ARM)/staging_dir/bin/arm-linux-
+
+ default: user-apps kernel-module
+
+@@ -31,7 +31,7 @@
+ user-apps: gpio-event
+
+ TARGET_ARCH=-Os -march=armv5te -mtune=xscale -Wa,-mcpu=xscale
+-CC = $(CROSS_COMPILE)gcc
++#CC = $(CROSS_COMPILE)gcc
+
+ CPPFLAGS +=
+ CFLAGS += -Wall