summaryrefslogtreecommitdiffstats
path: root/package/heyu
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-01-07 01:08:49 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-01-07 01:08:49 +0000
commit1e23af6c69cd04f757b32789be7e52d2a9ca76d4 (patch)
tree14d9b59137c3512f4b8c07108f18794607bb5b3b /package/heyu
parent839e5b8db5dd7e2887e3f9ef5de7dec6366ec9bc (diff)
Added heyu, thanks to Geoffrey Kruse, closes #131
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@2851 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/heyu')
-rw-r--r--package/heyu/Config.in8
-rw-r--r--package/heyu/Makefile33
-rw-r--r--package/heyu/files/x10.conf24
-rw-r--r--package/heyu/ipkg/files/heyu.conffiles1
-rw-r--r--package/heyu/ipkg/heyu.control7
-rw-r--r--package/heyu/patches/01-avoid_configure.patch194
6 files changed, 267 insertions, 0 deletions
diff --git a/package/heyu/Config.in b/package/heyu/Config.in
new file mode 100644
index 000000000..c8e178391
--- /dev/null
+++ b/package/heyu/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_HEYU
+ prompt "heyu.............................. X10 home automation control using a CM11A"
+ tristate
+ default m if CONFIG_DEVEL
+ help
+ X10 home automation control using the CM11A serial device.
+
+ See http://heyu.tanj.com/heyu2/ for details.
diff --git a/package/heyu/Makefile b/package/heyu/Makefile
new file mode 100644
index 000000000..9262b46ea
--- /dev/null
+++ b/package/heyu/Makefile
@@ -0,0 +1,33 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=heyu
+PKG_VERSION:=2.0beta.2
+PKG_RELEASE:=2
+PKG_MD5SUM:=b7bd60580f74998ae7733e4711942c74
+PKG_SOURCE_URL:=http://heyu.tanj.com/heyu2/
+PKG_SOURCE:=heyu-$(PKG_VERSION).tgz
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_CAT:=zcat
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,HEYU,$(PKG_NAME),$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+ touch $@
+
+$(PKG_BUILD_DIR)/.built:
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ CC=$(TARGET_CC) LD=$(TARGET_CROSS)ld \
+ CFLAGS="$(TARGET_CFLAGS) -I$(PKG_BUILD_DIR) -DSYSV -DPOSIX -DHAS_ITIMER -DLINUX -DHASSELECT -DHASTZ"
+ touch $@
+
+$(IPKG_HEYU):
+ install -d -m0755 $(IDIR_HEYU)/etc/$(PKG_NAME)
+ install -m0644 ./files/x10.conf $(IDIR_HEYU)/etc/$(PKG_NAME)/x10.conf
+ install -d -m0755 $(IDIR_HEYU)/usr/bin
+ install -m0644 $(PKG_BUILD_DIR)/heyu $(IDIR_HEYU)/usr/bin/
+ $(RSTRIP) $(IDIR_HEYU)
+ $(IPKG_BUILD) $(IDIR_HEYU) $(PACKAGE_DIR)
diff --git a/package/heyu/files/x10.conf b/package/heyu/files/x10.conf
new file mode 100644
index 000000000..3cacaf5e8
--- /dev/null
+++ b/package/heyu/files/x10.conf
@@ -0,0 +1,24 @@
+# this file should contain x10 appliance aliases, one per line, as:
+# appliance-name housecode modulenumber
+# for example:
+# mydesklamp A 4
+# atticfan B 3
+# sumppump C 3
+# manythings J 1-4
+#
+# IMPORTANT! disable the serial console if you need to use heyu
+# on /dev/tts/0. Read http://forum.openwrt.org/viewtopic.php?id=1767
+#
+# NOTE: using /dev/tts/1 requires the setserial package to
+# set the port to use irq 3, otherwise performance will be
+# unbearable as it is polled.
+#
+TTY /dev/tts/1
+#
+# give your location - for computing sunrise and sunset times
+# Boston, MA USA:
+#LATITUDE N42:20
+#LONGITUDE W71:05
+# Menlo Park, CA USA:
+LATITUDE N37:43
+LONGITUDE W122:20
diff --git a/package/heyu/ipkg/files/heyu.conffiles b/package/heyu/ipkg/files/heyu.conffiles
new file mode 100644
index 000000000..f3c36bc00
--- /dev/null
+++ b/package/heyu/ipkg/files/heyu.conffiles
@@ -0,0 +1 @@
+/etc/heyu/x10.conf
diff --git a/package/heyu/ipkg/heyu.control b/package/heyu/ipkg/heyu.control
new file mode 100644
index 000000000..c2800f601
--- /dev/null
+++ b/package/heyu/ipkg/heyu.control
@@ -0,0 +1,7 @@
+Package: heyu
+Priority: optional
+Section: misc
+Maintainer: Gregory P. Smith <greg@electricrain.com>
+Source: buildroot internal
+Description: X10 home automation control using the CM11A
+Depends: setserial
diff --git a/package/heyu/patches/01-avoid_configure.patch b/package/heyu/patches/01-avoid_configure.patch
new file mode 100644
index 000000000..894397ad8
--- /dev/null
+++ b/package/heyu/patches/01-avoid_configure.patch
@@ -0,0 +1,194 @@
+diff -urN orig/heyu-2.0beta.2/Makefile heyu-2.0beta.2/Makefile
+--- orig/heyu-2.0beta.2/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ heyu-2.0beta.2/Makefile 2006-01-07 01:53:25.000000000 +0100
+@@ -0,0 +1,183 @@
++# Makefile for HEYU, a program to control an X10 CM11A computer interface.
++# This makefile is generated by the Configure program.
++#
++BIN = /usr/bin
++MAN = /usr/man/man1
++MAN5 = /usr/man/man5
++GROUP = sys
++OWNER = root
++
++# set DFLAGS equal to:
++# -DSYSV if using SYSTEM V
++# -DVOID if compiler doesn't understand 'void'
++
++#This makefile is built for linux
++DFLAGS = -DSYSV -DPOSIX -DHAS_ITIMER -DLINUX -DHASSELECT -DHASTZ
++LIBS = -lm -lc
++# # The rest of the makefile should need no changes
++
++## Makefile template for Heyu, a program to control an X10 CM11A computer
++## interface. From this point on the Makefile is copied from Makefile.in
++## by the Configure program
++
++SRCS = date.c erase.c info.c message.c relay.c \
++ monitor.c reset.c setclock.c stop.c \
++ tty.c turn.c x10.c xread.c xwrite.c status.c cm11a.c \
++ eeprom.c preset.c process.c sun.c cmd.c config.c x10state.c \
++ poll.c modules.c
++
++OBJS = date.o erase.o info.o message.o relay.o \
++ monitor.o reset.o setclock.o stop.o \
++ tty.o turn.o x10.o xread.o xwrite.o status.o cm11a.o \
++ eeprom.o preset.o process.o sun.o cmd.o config.o x10state.o \
++ poll.o modules.o
++
++OTHERSRC = README README2 Makefile x10config.sample protocol.txt eeprom.h \
++ x10.sched.sample monit x10biff heyu.1 x10.h x10config.5 \
++ history.txt version.h heyufaq.txt x10sched.5 process.h sun.h \
++ x10scripts.5 Configure Makefile.in install.sh INSTALL LICENSE
++
++EVERYTHING = $(OTHERSRC) $(SRCS)
++
++all: heyu
++
++heyu: $(OBJS) version.h
++ $(CC) $(LDFLAGS) -o heyu $(OBJS) $(LIBS)
++ @echo `id` >usergroup.tmp
++ @echo ${HOME} >userhome.tmp
++ @echo "** Now become root and run 'make install' **"
++
++$(OBJS): x10.h process.h sun.h
++
++eeprom.o: eeprom.h
++
++install: $(BIN)/heyu $(MAN)/heyu.1 $(MAN5)/x10config.5 $(MAN5)/x10sched.5 \
++ $(MAN5)/x10scripts.5
++
++uninstall:
++ rm -f $(BIN)/heyu
++ rm -f $(MAN)/heyu.1
++ rm -f $(MAN5)/x10config.5
++ rm -f $(MAN5)/x10sched.5
++ rm -f $(MAN5)/x10scripts.5
++
++$(BIN)/heyu: heyu
++ mkdir -p -m 755 $(BIN)
++ cp heyu $(BIN)
++ chgrp $(GROUP) $(BIN)/heyu
++ chmod 755 $(BIN)/heyu
++ chown $(OWNER) $(BIN)/heyu
++ ./install.sh
++
++$(MAN)/heyu.1: heyu.1
++ mkdir -p -m 755 $(MAN)
++ cp heyu.1 $(MAN)
++ chmod 644 $(MAN)/heyu.1
++
++$(MAN5)/x10config.5: x10config.5
++ mkdir -p -m 755 $(MAN5)
++ cp x10config.5 $(MAN5)
++ chmod 644 $(MAN5)/x10config.5
++
++$(MAN5)/x10sched.5: x10sched.5
++ mkdir -p -m 755 $(MAN5)
++ cp x10sched.5 $(MAN5)
++ chmod 644 $(MAN5)/x10sched.5
++
++$(MAN5)/x10scripts.5: x10scripts.5
++ mkdir -p -m 755 $(MAN5)
++ cp x10scripts.5 $(MAN5)
++ chmod 644 $(MAN5)/x10scripts.5
++
++lint:
++ lint $(DFLAGS) $(SRCS)
++
++shar: x10_heyu.shar.1 x10_heyu.shar.2
++
++x10.o: x10.c version.h
++
++ci: $(SRCS) index.html Makefile
++ @ for FL in $+ ; do \
++ if test -w $$FL ; then \
++ ci -l $$FL ;\
++ fi ;\
++ done
++
++x10_heyu.shar.1:
++ shar $(OTHERSRC) >x10_heyu.shar.1
++
++x10_heyu.shar.2:
++ shar $(SRCS) > x10_heyu.shar.2
++
++bigshar:
++ shar $(EVERYTHING) > x10_heyu.shar
++
++tar: x10_heyu.tgz
++
++x10_heyu.tgz: $(EVERYTHING)
++ rm -fr heyu.dir
++ mkdir heyu.dir
++ cp -p $(EVERYTHING) heyu.dir
++ cp Makefile.dist heyu.dir/Makefile
++ tar -czvf x10_heyu.tgz heyu.dir
++
++heyudistro: $(EVERYTHING)
++ rm -rf distro.dir
++ mkdir distro.dir
++ cp -p $(EVERYTHING) distro.dir
++ cp -p release_notes.txt distro.dir
++ rm distro.dir/Makefile
++
++
++beta: x10_beta.tgz
++
++x10_beta.tgz: $(EVERYTHING)
++ rm -fr heyu.beta
++ mkdir heyu.beta
++ cp -p $(EVERYTHING) heyu.beta
++ cp Makefile.dist heyu.dir/Makefile
++ tar -czvf x10_beta.tgz heyu.beta
++
++zip: x10_heyu.zip
++
++x10_heyu.zip: $(EVERYTHING)
++ rm -f x10_heyu.zip
++ zip -kl x10_heyu.zip $(EVERYTHING)
++
++touch:
++ touch $(OTHERSRC)
++ touch $(SRCS)
++
++clean:
++ rm -f *.o
++
++clobber: clean
++ rm -f heyu
++
++upload: heyu index.html x10_heyu.tgz x10_heyu.zip
++ /bin/sh -c ./upload.sh
++
++rcsdiffrw:
++ @-for x in `$(MAKE) rw` ;\
++ do \
++ echo ;\
++ echo $$x ;\
++ echo ========= ;\
++ rcsdiff $$x ;\
++ done 2>&1 ;\
++ echo ;\
++ echo all done
++
++list:
++ @ls $(EVERYTHING) | more
++
++rw:
++ @ls -l $(EVERYTHING) | \
++ egrep '^[^l].w' | \
++ sed 's;.* ;;' # strip to last space
++
++populate: $(EVERYTHING)
++
++$(EVERYTHING):
++## co -r$(revision) $@
++
+diff -urN orig/heyu-2.0beta.2/local.h heyu-2.0beta.2/local.h
+--- orig/heyu-2.0beta.2/local.h 1970-01-01 01:00:00.000000000 +0100
++++ heyu-2.0beta.2/local.h 2006-01-07 01:54:13.000000000 +0100
+@@ -0,0 +1,3 @@
++#define USESIGINT 1'
++#define SPOOLDIR "/tmp"
++#define LOCKDIR "/tmp"