Project import
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..842db03
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,109 @@
+#
+# Copyright (c) 2010-2011 Nest, Inc.
+# All rights reserved.
+#
+# This document is the property of Nest. It is considered
+# confidential and proprietary information.
+#
+# This document may not be reproduced or transmitted in any form,
+# in whole or in part, without the express written permission of
+# Nest.
+#
+# Description:
+# This file is the make file for beep, a basic application that
+# allows for driving a Linux input subsystem-compatible speaker or
+# piezo by specifying pitch, duration and repetitions.
+#
+
+
+include pre.mak
+
+PackageName := beep
+
+PackageExtension := tar.gz
+PackageSeparator := -
+
+PackagePatchArgs :=
+
+PackageArchive := $(PackageName).$(PackageExtension)
+PackageSourceDir := $(PackageName)$(PackageSeparator)$(PackageVersion)
+
+PackageBuildMakefile = $(call GenerateBuildPaths,Makefile)
+
+LicenseSourceFile := $(PackageSourceDir)/COPYING
+
+CleanPaths += $(PackageLicenseFile)
+
+LinuxHeaderDir := $(call GenerateResultPaths,sw/tps/linux,include)
+
+SOURCEDIRS = $(PackageSourceDir)
+$(PackageSourceDir)_RULE_TARGET = $(BuildDirectory)/configure
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(LicenseSourceFile): $(BuildDirectory)/source
+
+$(PackageLicenseFile): $(LicenseSourceFile)
+ $(copy-result)
+
+# Extract the source from the archive and apply patches, if any.
+
+$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths)
+ $(expand-and-patch-package)
+
+# Prepare the sources.
+
+$(BuildDirectory)/source: | $(PackageSourceDir)
+ $(Verbose)touch $@
+
+# Patch the sources, if necessary.
+
+$(BuildDirectory)/patch: $(BuildDirectory)/source
+ $(Verbose)touch $@
+
+# Generate the package build makefile.
+
+$(PackageBuildMakefile): | $(PackageSourceDir) $(BuildDirectory)
+ $(call create-links,$(CURDIR)/$(PackageSourceDir),$(BuildDirectory))
+
+# Configure the source for building.
+
+$(BuildDirectory)/configure: $(BuildDirectory)/source $(PackageBuildMakefile)
+ $(Verbose)touch $@
+
+# Build the source.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+$(BuildDirectory)/build: $(BuildDirectory)/configure | $(BuildDirectory)
+ $(Verbose)unset MAKEFLAGS && \
+ $(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+ INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+ CC="$(CC)" CXX="$(CXX)" AR=$(AR) NM=$(NM) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+ CFLAGS="-I$(LinuxHeaderDir)" \
+ default
+ $(Verbose)touch $@
+
+# Stage the build to a temporary installation area.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+$(BuildDirectory)/stage: $(BuildDirectory)/build | $(ResultDirectory)
+ $(Verbose)unset MAKEFLAGS && \
+ $(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+ INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+ INSTALL_PREFIX=$(ResultDirectory) \
+ install
+ $(Verbose)touch $@
+
+.PHONY: stage
+stage: $(BuildDirectory)/stage
+
+clean:
+ $(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir)
+ $(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory)
+ $(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak
diff --git a/beep.patches/beep-50.description b/beep.patches/beep-50.description
new file mode 100644
index 0000000..74c828f
--- /dev/null
+++ b/beep.patches/beep-50.description
@@ -0,0 +1 @@
+This patch allows beep to be compiled against a different set of Linux headers outside of the normal tool chain by supporting CFLAGS and also allows beep to be installed in a non-root location.
diff --git a/beep.patches/beep-50.patch b/beep.patches/beep-50.patch
new file mode 100644
index 0000000..229bbb6
--- /dev/null
+++ b/beep.patches/beep-50.patch
@@ -0,0 +1,33 @@
+diff -aruN a/Makefile b/Makefile
+--- a/Makefile 2010-08-03 06:57:27.000000000 -0700
++++ b/Makefile 2010-11-04 08:16:03.930197265 -0700
+@@ -1,19 +1,22 @@
+ CC=gcc
+-FLAGS=-Wall
++FLAGS=-Wall ${CFLAGS}
+ EXEC_NAME=beep
+-INSTALL_DIR=/usr/bin
++INSTALL_PREFIX=
++BIN_DIR=${INSTALL_PREFIX}/usr/bin
+ MAN_FILE=beep.1.gz
+-MAN_DIR=/usr/man/man1
++MAN_DIR=${INSTALL_PREFIX}/usr/man/man1
+
+-default : beep
++default : ${EXEC_NAME}
+
+ clean :
+ rm ${EXEC_NAME}
+
+-beep : beep.c
++${EXEC_NAME} : beep.c
+ ${CC} ${FLAGS} -o ${EXEC_NAME} beep.c
+
+-install :
+- cp ${EXEC_NAME} ${INSTALL_DIR}
++install :
++ -mkdir -p ${BIN_DIR}
++ cp ${EXEC_NAME} ${BIN_DIR}
+ # rm -f /usr/man/man1/beep.1.bz2
++ -mkdir -p ${MAN_DIR}
+ cp ${MAN_FILE} ${MAN_DIR}
diff --git a/beep.patches/beep-51.description b/beep.patches/beep-51.description
new file mode 100644
index 0000000..ce84b8f
--- /dev/null
+++ b/beep.patches/beep-51.description
@@ -0,0 +1,6 @@
+This patch replaces CLOCK_TICK_RATE with PIT_TICK_RATE, in name only.
+The use of PIT_TICK_RATE is historic with the KIOCSOUND and KDMKTONE
+ioctls; howwever, it used to be the platform-dependent CLOCK_TICK_RATE
+between kernel version 2.6.12 and 2.6.36, which was a minor but
+unfortunate ABI change that ended up polluting, at least in name, beep
+as well.
diff --git a/beep.patches/beep-51.patch b/beep.patches/beep-51.patch
new file mode 100644
index 0000000..d7731d8
--- /dev/null
+++ b/beep.patches/beep-51.patch
@@ -0,0 +1,23 @@
+diff -aruN a/beep.c b/beep.c
+--- a/beep.c 2010-08-03 06:57:27.000000000 -0700
++++ b/beep.c 2010-11-09 17:17:01.000000000 -0800
+@@ -44,8 +44,8 @@
+ resets the counter to the original value, and starts over. The end
+ result of this is a tone at approximately the desired frequency. :)
+ */
+-#ifndef CLOCK_TICK_RATE
+-#define CLOCK_TICK_RATE 1193180
++#ifndef PIT_TICK_RATE
++#define PIT_TICK_RATE 1193180
+ #endif
+
+ #define VERSION_STRING "beep-1.3"
+@@ -100,7 +100,7 @@
+ void do_beep(int freq) {
+ if (console_type == BEEP_TYPE_CONSOLE) {
+ if(ioctl(console_fd, KIOCSOUND, freq != 0
+- ? (int)(CLOCK_TICK_RATE/freq)
++ ? (int)(PIT_TICK_RATE/freq)
+ : freq) < 0) {
+ printf("\a"); /* Output the only beep we can, in an effort to fall back on usefulness */
+ perror("ioctl");
diff --git a/beep.tar.gz b/beep.tar.gz
new file mode 100644
index 0000000..30a7e2c
--- /dev/null
+++ b/beep.tar.gz
Binary files differ
diff --git a/beep.url b/beep.url
new file mode 100644
index 0000000..9f1b697
--- /dev/null
+++ b/beep.url
@@ -0,0 +1 @@
+http://johnath.com/beep/beep-1.3.tar.gz
diff --git a/beep.version b/beep.version
new file mode 100644
index 0000000..7e32cd5
--- /dev/null
+++ b/beep.version
@@ -0,0 +1 @@
+1.3