diff options
Diffstat (limited to 'recipes/logic-analyzer')
-rw-r--r-- | recipes/logic-analyzer/files/client-makefile.patch | 426 | ||||
-rw-r--r-- | recipes/logic-analyzer/files/cp-run-fix.patch | 26 | ||||
-rw-r--r-- | recipes/logic-analyzer/files/scrolling-capture-dialog.patch | 21 | ||||
-rw-r--r-- | recipes/logic-analyzer/logic-analyzer_0.8.bb | 44 |
4 files changed, 517 insertions, 0 deletions
diff --git a/recipes/logic-analyzer/files/client-makefile.patch b/recipes/logic-analyzer/files/client-makefile.patch new file mode 100644 index 0000000000..7b0b4b88ce --- /dev/null +++ b/recipes/logic-analyzer/files/client-makefile.patch @@ -0,0 +1,426 @@ +Index: LogicAnalyzer/client/Makefile +=================================================================== +--- LogicAnalyzer.orig/client/Makefile 2008-02-09 02:27:13.000000000 +0100 ++++ LogicAnalyzer/client/Makefile 2008-02-09 02:28:34.000000000 +0100 +@@ -1,8 +1,412 @@ +-all: +- jar cfm analyzer.jar \ +- Manifest.txt \ +- org/sump/analyzer/*.class \ +- org/sump/analyzer/tools/*.class \ +- org/sump/analyzer/icons/*.png \ +- org/sump/util/*.class \ +- +\ No newline at end of file ++# ++# Makefile created at Fri Feb 8 23:36:42 2008, by mmake ++# ++ ++# Programs (with common options): ++SHELL = /bin/sh ++CP = cp ++RM = rm -f ++MV = mv -f ++SED = sed ++ETAGS = etags ++XARGS = xargs ++CAT = cat ++FIND = find ++CPP = cpp -C -P ++ ++INSTALL = install ++INSTALL_PROG = $(INSTALL) -m $(MODE_PROGS) ++INSTALL_FILE = $(INSTALL) -m $(MODE_FILES) ++INSTALL_DIR = $(INSTALL) -m $(MODE_DIRS) -d ++ ++# Install modes ++MODE_PROGS = 555 ++MODE_FILES = 444 ++MODE_DIRS = 2755 ++ ++# Build programs ++JAVAC = ecj ++JAVADOC = javadoc ++JAR = fastjar ++ ++# Build flags ++JAVAC_FLAGS = ++JAVADOC_FLAGS = -version -author ++JAR_FLAGS = cvf0 ++JIKES_DEP_FLAG = +M ++ ++# ------------------------------------------------------------------- # ++ ++# Prefix for every install directory ++PREFIX = ++ ++# Where to start installing the class files. Set this to an empty value ++# if you dont want to install classes ++CLASS_DIR = $(PREFIX)classes ++ ++# The directory to install the jar file in. Set this to an empty value ++# if you dont want to install a jar file ++JAR_DIR = $(PREFIX)lib ++ ++# The directory to install the app bundle in. Set this to an empty value ++# if you dont want to install an app bundle ++BUNDLE_DIR = $(PREFIX)lib ++ ++ ++# The directory to install html files generated by javadoc ++DOC_DIR = $(PREFIX)doc/api-docs ++ ++# The directory to install script files in ++SCRIPT_DIR = $(PREFIX)bin ++ ++# ------------------------------------------------------------------- # ++ ++# The name of the jar file to install ++JAR_FILE = analyzer.jar ++ ++# ++# The VERSION variable below should be set to a value ++# that will be tested in the .xjava code and Info.plist. ++# ++VERSION = CHANGE_ME ++ ++# ------------------------------------------------------------------- # ++ ++# The name of the OS X Application Bundle to install ++BUNDLE_FILE = ++ ++# Folder containing App Bundle resources (Info.plist, *.icns, etc.) ++BUNDLE_RESOURCE_DIR = misc/macosx ++ ++# Items to copy to the Resources folder of the bundle ++BUNDLE_RESOURCES = $(addsuffix .icns, $(basename $(APP_FILE)) Document) ++ ++# Location of JavaApplicatonStub ++JAVA_STUB = /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub ++ ++# ------------------------------------------------------------------- # ++ ++# Resource files: ++# Extend the list to install other files of your choice ++RESOURCE_SRC := *.properties *.gif *.au ++ ++# Objects that should go into the jar file. (find syntax) ++JAR_OBJS := \( -name '*.class' -o -name '*.gif' -o -name "*.au" \ ++ -o -name '*.properties' \ ++ -o -name '*.png' \) ++ ++# Include the separate variables file if it exists ++MAKEFILE_VARS = makefile.vars ++VARS = $(wildcard $(MAKEFILE_VARS)) ++ifneq ($(VARS),) ++ include $(MAKEFILE_VARS) ++endif ++ ++ ++# Packages we should compile ++PACKAGES = \ ++ org.sump.analyzer.tools \ ++ org.sump.util \ ++ org.sump.analyzer ++ ++ ++# All packages that can be recursively compiled. ++ALL_PACKAGES = \ ++ org \ ++ org.sump \ ++ $(PACKAGES) ++ ++ ++# Packages to generate docs for. ++JAVADOC_PACKAGES = $(PACKAGES) ++ ++ ++# Resource packages ++RESOURCES = \ ++ doc.resources ++ ++ ++# Directories with shell scripts ++SCRIPTS = ++ ++# ------------------------------------------------------------------- # ++ ++# A marker variable for the top level directory ++TOPLEVEL := . ++ ++# Subdirectories with java files: ++JAVA_DIRS := $(subst .,/,$(PACKAGES)) $(TOPLEVEL) ++ ++# Subdirectories with only resource files: ++RESOURCE_DIRS := $(subst .,/,$(RESOURCES)) ++ ++# All the .xjava source files: ++XJAVA_SRC := $(foreach dir, $(JAVA_DIRS), $(wildcard $(dir)/*.xjava)) ++ ++# All the xjava files to build ++XJAVA_OBJS := $(XJAVA_SRC:.xjava=.java) ++ ++# Directory coresponding to a package ++PACKAGE_DIR = $(subst .,/,$(1)) ++ ++# All the (x)java files in a package ++PACKAGE_SRC = $(shell $(FIND) $(PACKAGE_DIR) \( -name '*.java' -or -name '*.xjava' \) ) ++ ++# All the classes to build in a package ++PACKAGE_OBJS = $(patsubst %.java,%.class,$(PACKAGE_SRC: %.xjava=%.java)) ++ ++# All the .java source files: ++JAVA_SRC := $(foreach dir, $(JAVA_DIRS), $(wildcard $(dir)/*.java)) ++JAVA_SRC := $(XJAVA_OBJS) $(JAVA_SRC) ++ ++# Dependency files: ++DEPEND_OBJS := $(JAVA_SRC:.java=.u) ++ ++# The intermediate java files and main classes we should build: ++JAVA_OBJS := $(XJAVA_OBJS) $(JAVA_SRC:.java=.class) ++ ++# Search for resource files in both JAVA_DIRS and RESOURCE_DIRS ++RESOURCE_OBJS := $(foreach dir, $(JAVA_DIRS) $(RESOURCE_DIRS), \ ++ $(wildcard $(foreach file, $(RESOURCE_SRC), \ ++ $(dir)/$(file)))) ++ ++# All the shell scripts source ++SCRIPT_SRCS := $(foreach dir, $(SCRIPTS), $(wildcard $(dir)/*.sh)) ++# All shell scripts we should install ++SCRIPT_OBJS := $(SCRIPT_SRCS:.sh=) ++ ++# All the files to install into CLASS_DIR ++INSTALL_OBJS := $(foreach dir, $(JAVA_DIRS), $(wildcard $(dir)/*.class)) ++# Escape inner class delimiter $ ++INSTALL_OBJS := $(subst $$,\$$,$(INSTALL_OBJS)) ++# Add the resource files to be installed as well ++INSTALL_OBJS := $(INSTALL_OBJS) $(RESOURCE_OBJS) ++ ++ ++# ------------------------------------------------------------------- # ++ ++ ++define check-exit ++|| exit 1 ++ ++endef ++ ++ ++# ----------- ++# Build Rules ++# ----------- ++ ++%.java: %.xjava ++ $(CPP) -D$(VERSION) $< $@ ++ ++%.class: %.java ++ $(JAVAC) $(JAVAC_FLAGS) $< ++ ++%.jar: $(JAVA_OBJS) $(RESOURCE_OBJS) ++ $(FIND) $(TOPLEVEL) $(JAR_OBJS) -print | $(XARGS) \ ++ $(JAR) $(JAR_FLAGS) $(JAR_FILE) ++ ++%.u: %.java ++ $(JAVAC) $(JIKES_DEP_FLAG) $< ++ ++ ++# ------- ++# Targets ++# ------- ++ ++.PHONY: all jar install uninstall doc clean depend tags bundle \ ++ help $(ALL_PACKAGES) ++ ++all:: $(JAVA_OBJS) ++ ++help: ++ @echo "Usage: make {all|jar|srcjar|bundle|install|uninstall|doc|clean|depend|tags|PACKAGE_NAME}" ++ @echo " all: build all classes" ++ @echo " jar: build jar file" ++ @echo " srcjar: build source jar file" ++ @echo " bundle: build OS X app bundle" ++ @echo " install: install classes into $(CLASS_DIR)" ++ @echo " jar into $(JAR_DIR)" ++ @echo " bundle into $(BUNDLE_DIR)" ++ @echo " javadocs into $(DOC_DIR)" ++ @echo " scripts into $(SCRIPT_DIR)" ++ @echo " uninstall: remove installed files" ++ @echo " doc: generate api docs from javadoc comments" ++ @echo " clean: remove classes and temporary files" ++ @echo " depend: build class dependency info using jikes" ++ @echo " tags: build emacs tags file" ++ @echo " PACKAGE_NAME: builds all classes in this package and any subpackages." ++ ++# Jar target ++ifneq ($(strip $(JAR_FILE)),) ++jar: $(JAR_FILE) ++ifneq ($(strip $(JAR_DIR)),) ++install:: $(JAR_FILE) ++ @echo "===> [Installing jar file, $(JAR_FILE) in $(JAR_DIR)] " ++ $(INSTALL_DIR) $(JAR_DIR) $(check-exit) ++ $(INSTALL_FILE) $(JAR_FILE) $(JAR_DIR) $(check-exit) ++uninstall:: ++ @echo "===> [Removing jar file, $(JAR_FILE) from $(JAR_DIR)] " ++ $(RM) $(JAR_DIR)/$(JAR_FILE) $(check-exit) ++else ++install:: ++ @echo "No jar install dir defined" ++endif ++clean:: ++ $(RM) $(JAR_FILE) ++else ++jar: ++ @echo "No jar file defined" ++endif ++ ++SRC_JAR_FILE := $(basename $(JAR_FILE))-src$(suffix $JAR_FILE) ++ ++# Source jar target ++srcjar : $(SRC_JAR_FILE) ++$(SRC_JAR_FILE): $(JAVA_SRC) $(RESOURCE_OBJS) ++ $(FIND) $(TOPLEVEL) $(JAR_OBJS: .class=.java) -print | $(XARGS) \ ++ $(JAR) $(JAR_FLAGS) $@ ++ ++# Bundle target ++ifneq ($(strip $(BUNDLE_FILE)),) ++bundle: $(BUNDLE_FILE) ++$(BUNDLE_FILE) : $(JAR_FILE) ++ $(INSTALL_DIR) $(BUNDLE_FILE)/Contents/Resources/Java $(check-exit) ++ $(INSTALL_DIR) $(BUNDLE_FILE)/Contents/MacOS $(check-exit) ++ $(INSTALL_PROG) $(JAVA_STUB) $(BUNDLE_FILE)/Contents/MacOS/ \ ++ $(check-exit) ++ ( $(CAT) $(BUNDLE_RESOURCE_DIR)/Info.plist | $(SED) -e \ ++ s/VERSION/$(VERSION)/ >98762infoplist876 ) $(check-exit) ++ $(INSTALL_FILE) 98762infoplist876 \ ++ $(BUNDLE_FILE)/Contents/Info.plist $(check-exit) ++ $(RM) 98762infoplist876 $(check-exit) ++ $(INSTALL_FILE) $(JAR_FILE) $(BUNDLE_FILE)/Contents/Resources/Java ++ checkexit="";for f in $(BUNDLE_RESOURCES); do \ ++ $(INSTALL_FILE) $(BUNDLE_RESOURCE_DIR)$$f $(BUNDLE_FILE)/Contents/Resources/ \ ++ || checkexit=$?; \ ++ done; test -z $$checkexit ++ ++ifneq ($(strip $(BUNDLE_DIR)),) ++# This is probably bad, but I don't know how else to do it ++install:: $(BUNDLE_FILE) ++ @echo "===> [Installing app bundle, $(BUNDLE_FILE) in $(BUNDLE_DIR)] " ++ $(INSTALL_DIR) $(BUNDLE_DIR) $(check-exit) ++ $(CP) -R $(BUNDLE_FILE) $(BUNDLE_DIR) $(check-exit) ++ $(INSTALL_FILE) $(BUNDLE_FILE) $(BUNDLE_DIR) $(check-exit) ++uninstall:: ++ @echo "===> [Removing bundle file, $(BUNDLE_FILE) from $(BUNDLE_DIR)] " ++ $(RM) -r $(BUNDLE_DIR)/$(BUNDLE_FILE) $(check-exit) ++else ++install:: ++ @echo "No bundle install dir defined" ++endif ++clean:: ++ $(RM) -r $(BUNDLE_FILE) ++else ++bundle: ++ @echo "No bundle file defined" ++endif ++ ++ ++# Install target for Classes and Resources ++ifneq ($(strip $(CLASS_DIR)),) ++install:: $(JAVA_OBJS) ++ @echo "===> [Installing classes in $(CLASS_DIR)] " ++ $(INSTALL_DIR) $(CLASS_DIR) $(check-exit) ++ $(foreach dir, $(JAVA_DIRS) $(RESOURCE_DIRS), \ ++ $(INSTALL_DIR) $(CLASS_DIR)/$(dir) $(check-exit)) ++ $(foreach file, $(INSTALL_OBJS), \ ++ $(INSTALL_FILE) $(file) $(CLASS_DIR)/$(file) \ ++ $(check-exit)) ++uninstall:: ++ @echo "===> [Removing class-files from $(CLASS_DIR)] " ++ $(foreach file, $(INSTALL_OBJS), \ ++ $(RM) $(CLASS_DIR)/$(file) \ ++ $(check-exit)) ++else ++# Print a warning here if you like. (No class install dir defined) ++endif ++ ++ ++ ++# Depend target ++ifeq ($(findstring jikes,$(JAVAC)),jikes) ++depend: $(XJAVA_OBJS) $(DEPEND_OBJS) ++ ( $(CAT) $(DEPEND_OBJS) | $(SED) -e '/\.class$$/d' \ ++ -e '/.*$$.*/d' > $(MAKEFILE_DEPEND); $(RM) $(DEPEND_OBJS); ) ++else ++depend: ++ @echo "mmake needs the jikes compiler to build class dependencies" ++endif ++ ++ ++ ++# Doc target ++ifneq ($(strip $(JAVADOC_PACKAGES)),) ++doc: $(JAVA_SRC) ++ @echo "===> [Installing java documentation in $(DOC_DIR)] " ++ $(INSTALL_DIR) $(DOC_DIR) $(check-exit) ++ $(JAVADOC) $(JAVADOC_FLAGS) -d $(DOC_DIR) $(JAVADOC_PACKAGES) ++else ++doc: ++ @echo "You must put your source files in a package to run make doc" ++endif ++ ++ ++ ++# Script target ++ifneq ($(strip $(SCRIPT_OBJS)),) ++all:: $(SCRIPT_OBJS) ++ifneq ($(strip $(SCRIPT_DIR)),) ++install:: $(SCRIPT_OBJS) ++ @echo "===> [Installing shell-scripts in $(SCRIPT_DIR)] " ++ $(INSTALL_DIR) $(SCRIPT_DIR) $(check-exit) ++ $(foreach file, $(SCRIPT_OBJS), \ ++ $(INSTALL_PROG) $(file) $(SCRIPT_DIR) $(check-exit)) ++uninstall:: ++ @echo "===> [Removing shell-scripts from $(SCRIPT_DIR)] " ++ $(foreach file, $(SCRIPT_OBJS), \ ++ $(RM) $(SCRIPT_DIR)/$(file) $(check-exit)) ++else ++# Print a warning here if you like. (No script install dir defined) ++endif ++clean:: ++ rm -f $(SCRIPT_OBJS) ++endif ++ ++ ++ ++# Tag target ++tags: ++ @echo "Tagging" ++ $(ETAGS) $(filter-out $(XJAVA_OBJS), $(JAVA_SRC)) $(XJAVA_SRC) ++ ++ ++ ++# Various cleanup routines ++clean:: ++ $(FIND) . \( -name '*~' -o -name '*.class' \) -print | \ ++ $(XARGS) $(RM) ++ $(FIND) . -name '*.u' -print | $(XARGS) $(RM) ++ ++ifneq ($(strip $(XJAVA_SRC)),) ++clean:: ++ $(RM) $(XJAVA_OBJS) ++endif ++ ++# ---------------------------------------- ++# Include the dependency graph if it exist ++# ---------------------------------------- ++MAKEFILE_DEPEND = makefile.dep ++DEPEND = $(wildcard $(MAKEFILE_DEPEND)) ++ifneq ($(DEPEND),) ++ include $(MAKEFILE_DEPEND) ++endif ++ ++#package targets ++org : $(call PACKAGE_OBJS,org) ++org.sump : $(call PACKAGE_OBJS,org.sump) ++org.sump.analyzer.tools : $(call PACKAGE_OBJS,org.sump.analyzer.tools) ++org.sump.util : $(call PACKAGE_OBJS,org.sump.util) ++org.sump.analyzer : $(call PACKAGE_OBJS,org.sump.analyzer) ++ diff --git a/recipes/logic-analyzer/files/cp-run-fix.patch b/recipes/logic-analyzer/files/cp-run-fix.patch new file mode 100644 index 0000000000..401f3bb6e0 --- /dev/null +++ b/recipes/logic-analyzer/files/cp-run-fix.patch @@ -0,0 +1,26 @@ +Index: LogicAnalyzer/client/org/sump/analyzer/Loader.java +=================================================================== +--- LogicAnalyzer.orig/client/org/sump/analyzer/Loader.java 2008-02-08 23:34:14.000000000 +0100 ++++ LogicAnalyzer/client/org/sump/analyzer/Loader.java 2008-02-08 23:46:40.000000000 +0100 +@@ -90,12 +90,19 @@ + } + } + +- try { +- SwingUtilities.invokeAndWait(w); ++// try { ++ ++ /* Constructing and running the GUI from withing the Swing thread ++ is right and nice but does not work in Classpath (yet): ++ */ ++// SwingUtilities.invokeAndWait(w); ++ w.run(); ++/* + } catch (Exception e) { + System.out.println("Error while invoking application: " + e.getMessage() + "\n"); + e.printStackTrace(); + System.exit(-1); + } ++*/ + } + } diff --git a/recipes/logic-analyzer/files/scrolling-capture-dialog.patch b/recipes/logic-analyzer/files/scrolling-capture-dialog.patch new file mode 100644 index 0000000000..91e9ce0766 --- /dev/null +++ b/recipes/logic-analyzer/files/scrolling-capture-dialog.patch @@ -0,0 +1,21 @@ +Index: LogicAnalyzer/client/org/sump/analyzer/DeviceController.java +=================================================================== +--- LogicAnalyzer.orig/client/org/sump/analyzer/DeviceController.java 2008-02-11 23:34:01.000000000 +0100 ++++ LogicAnalyzer/client/org/sump/analyzer/DeviceController.java 2008-02-11 23:35:17.000000000 +0100 +@@ -43,6 +43,7 @@ + import javax.swing.JProgressBar; + import javax.swing.JTabbedPane; + import javax.swing.JTextField; ++import javax.swing.JScrollPane; + import javax.swing.Timer; + + import org.sump.util.Properties; +@@ -312,7 +313,7 @@ + // if no valid dialog exists, create one + if (dialog == null) { + dialog = new JDialog(frame, "Capture", true); +- dialog.getContentPane().add(this); ++ dialog.getContentPane().add(new JScrollPane(this)); + dialog.setResizable(false); + dialog.setSize(this.getPreferredSize()); + // dialog.pack(); diff --git a/recipes/logic-analyzer/logic-analyzer_0.8.bb b/recipes/logic-analyzer/logic-analyzer_0.8.bb new file mode 100644 index 0000000000..73e8f8ba84 --- /dev/null +++ b/recipes/logic-analyzer/logic-analyzer_0.8.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "A Java-based logical analyzer for home use." +LICENSE = "GPL" +HOMEPAGE = "http://sump.org/projects/analyzer/" + +PR = "r2" + +inherit java + +DEPENDS = "rxtx" +RDEPENDS = "java2-runtime classpath-awt librxtx-java" + +SRC_URI = "\ + http://sump.org/projects/analyzer/downloads/la-src-${PV}.tar.bz2 \ + file://cp-run-fix.patch;patch=1 \ + file://client-makefile.patch;patch=1 \ + file://scrolling-capture-dialog.patch;patch=1 \ + " + +S = "${WORKDIR}/LogicAnalyzer" + +do_compile() { + + oe_runmake -C client all jar \ + JAR=gjar \ + JAVAH="gjavah -classpath \$(CLASSPATH) -d \$(DEST) -jni" \ + JAVAINCLUDEDIR=${STAGING_INCDIR}/classpath \ + JAVAC="javac -d \$(TOP)/ -O -source 1.3 -target 1.3" \ + JAVAC_FLAGS="-sourcepath . -bootclasspath ${STAGING_DATADIR_NATIVE}/classpath/glibj.zip -classpath ${STAGING_DATADIR}/java/RXTXcomm.jar" + + oe_java_simple_wrapper org.sump.analyzer.Loader analyzer.jar RXTXcomm.jar +} + +do_install() { + oe_jarinstall client/analyzer.jar + + install -d ${D}${bindir} + install -m 0555 ${PN} ${D}${bindir} +} + +PACKAGES = "${PN}" + +FILES_${PN} = "${datadir_java}/analyzer.jar ${bindir}/${PN}" + +PACKAGE_ARCH = "all" |