conmux: initial import of the Console Multiplexor
Import the Console Multiplexor (CONMUX) subsystem, developed by
the IBM Linux Technology Center. CONMUX is a console abstractor,
presenting any console with a consistent location, naming and
semantic. Access to the console and hardreset of the machine is
the same regardless of the underlying access methodology.
Through this abstraction we create a simple and consistent interface
to disparate consoles simplifying programatic use of the console.
This provides for easy integration of console handling into a
test harness. This allow CONMUX to be used to capture Linux kernel
messages only available on the external system console, as well
as providing a framework for detecting, diagnosing and rescuing
paniced and hung systems.
Signed-off-by: Andy Whitcroft <andyw@uk.ibm.com>
Acked-by: Dustin Kirkland <dustin.kirkland@us.ibm.com>
git-svn-id: http://test.kernel.org/svn/autotest/trunk@425 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/conmux/Makefile b/conmux/Makefile
new file mode 100644
index 0000000..f78d205
--- /dev/null
+++ b/conmux/Makefile
@@ -0,0 +1,47 @@
+# (C) Copyright IBM Corp. 2004, 2005, 2006
+# Author: Andy Whitcroft <andyw@uk.ibm.com>
+#
+# The Console Multiplexor is released under the GNU Public License V2
+BUILD=
+PREFIX=/usr/local/conmux
+BASE=$(BUILD)$(PREFIX)
+BINS=console conmux-attach
+LIBS=Conmux.pm
+SBIN=conmux-registry conmux start
+
+MODULES=helpers drivers
+
+all::
+
+install::
+ @[ -d $(BASE) ] || mkdir -p $(BASE)
+ @[ -d $(BASE)/bin ] || mkdir $(BASE)/bin
+ @[ -d $(BASE)/lib ] || mkdir $(BASE)/lib
+ @[ -d $(BASE)/sbin ] || mkdir $(BASE)/sbin
+ @[ -d $(BASE)/log ] || mkdir $(BASE)/log
+ @[ -d $(BASE)/etc ] || mkdir $(BASE)/etc
+ for f in $(BINS); do \
+ rm -f $(BASE)/bin/$$f; \
+ cp -p $$f $(BASE)/bin/$$f; \
+ chmod 755 $(BASE)/bin/$$f; \
+ done
+ for f in $(SBIN); do \
+ rm -f $(BASE)/sbin/$$f; \
+ cp -p $$f $(BASE)/sbin/$$f; \
+ chmod 755 $(BASE)/sbin/$$f; \
+ done
+ for f in $(LIBS); do \
+ rm -f $(BASE)/lib/$$f; \
+ cp -p $$f $(BASE)/lib/$$f; \
+ chmod 644 $(BASE)/lib/$$f; \
+ done
+
+release::
+ $(MAKE) BUILD=build install
+ (cd build; tar cf - *) | gzip >conmux.tgz
+ rm -rf build
+
+clean::
+ rm -f conmux.tgz
+
+include $(patsubst %, %/module.mk, $(MODULES))