diff options
author | Robert Schuster <thebohemian@gmx.net> | 2008-01-29 11:32:23 +0000 |
---|---|---|
committer | Robert Schuster <thebohemian@gmx.net> | 2008-01-29 11:32:23 +0000 |
commit | 77cb724357c5ced429a7c5445c4db6aa18fe84d7 (patch) | |
tree | 320300d3ff443c8a3f87c0ce113317f9660aeb72 /packages/kxml2 | |
parent | 849474e1d48a4c5e44abe5ef901d368ad615086d (diff) |
kxml2: Reworked to be build from source.
xmlpull: Added recipe.
Diffstat (limited to 'packages/kxml2')
-rw-r--r-- | packages/kxml2/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/kxml2/files/makefile.patch | 421 | ||||
-rw-r--r-- | packages/kxml2/kxml2_2.3.0.bb | 44 |
3 files changed, 446 insertions, 19 deletions
diff --git a/packages/kxml2/files/.mtn2git_empty b/packages/kxml2/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/kxml2/files/.mtn2git_empty diff --git a/packages/kxml2/files/makefile.patch b/packages/kxml2/files/makefile.patch new file mode 100644 index 0000000000..9119971a64 --- /dev/null +++ b/packages/kxml2/files/makefile.patch @@ -0,0 +1,421 @@ +Index: kxml2-2/src/Makefile +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ kxml2-2/src/Makefile 2007-11-30 04:17:21.000000000 +0100 +@@ -0,0 +1,416 @@ ++# ++# Makefile created at Fri Nov 30 04:17:22 2007, 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 = javac ++JAVADOC = gjavadoc ++JAR = fastjar ++ ++# Build flags ++JAVAC_FLAGS = -source 1.3 -target 1.1 ++JAVADOC_FLAGS = -version -author ++JAR_FLAGS = cvf ++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 = kxml2-2.3.0.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' \) ++ ++# 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.kxml2.wap.wml \ ++ org.kxml2.wap.wv \ ++ org.kxml2.wap \ ++ org.kxml2.io \ ++ org.kxml2.wap.syncml \ ++ org.kxml2.kdom ++ ++ ++# All packages that can be recursively compiled. ++ALL_PACKAGES = \ ++ org \ ++ org.kxml2 \ ++ $(PACKAGES) ++ ++ ++# Packages to generate docs for. ++JAVADOC_PACKAGES = $(PACKAGES) ++ ++ ++# Resource packages ++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.kxml2 : $(call PACKAGE_OBJS,org.kxml2) ++org.kxml2.wap.wml : $(call PACKAGE_OBJS,org.kxml2.wap.wml) ++org.kxml2.wap.wv : $(call PACKAGE_OBJS,org.kxml2.wap.wv) ++org.kxml2.wap : $(call PACKAGE_OBJS,org.kxml2.wap) ++org.kxml2.io : $(call PACKAGE_OBJS,org.kxml2.io) ++org.kxml2.wap.syncml : $(call PACKAGE_OBJS,org.kxml2.wap.syncml) ++org.kxml2.kdom : $(call PACKAGE_OBJS,org.kxml2.kdom) ++ diff --git a/packages/kxml2/kxml2_2.3.0.bb b/packages/kxml2/kxml2_2.3.0.bb index 7682e84311..994a0a5799 100644 --- a/packages/kxml2/kxml2_2.3.0.bb +++ b/packages/kxml2/kxml2_2.3.0.bb @@ -1,32 +1,38 @@ -DESCRIPTION = "kxml2 is a small XML pull parser" -HOMEPAGE = "http://kxml.sourceforge.net/" -LICENSE = "BSD" +DESCRIPTION = "A small XML pull parser, specially designed for constrained environments such as Applets, Personal Java or MIDP devices" +HOMEPAGE = "http://kxml.sourceforge.net" PRIORITY = "optional" -PR = "r0" +SECTION = "libs" +LICENSE = "BSD CPL LGPL" +PR = "r1" +inherit java-library -JAR = ${PN}-${PV}.jar +DEPENDS = "xmlpull" +RDEPENDS = "libxmlpull-java" -SRC_URI = "http://downloads.sourceforge.net/kxml/${JAR}" +S = "${WORKDIR}" +JAR = "${PN}-${PV}.jar" -do_unpack() { - : -} - -do_install() { +SRC_URI = "\ + http://belnet.dl.sourceforge.net/sourceforge/kxml/${PN}-src-${PV}.zip \ + file://makefile.patch;patch=1 \ + " -install -d ${D}${datadir}/java -install -m 0644 ${DL_DIR}/${JAR} ${D}${datadir}/java +do_compile() { + oe_runmake -C src \ + JAVAC_FLAGS="-sourcepath . -cp ${STAGING_DATADIR}/java/xmlpull.jar" \ + JAR="oefatal \"No jar invocation expected here.\"" \ + oe_runmake -C src \ + JAVAC="oefatal \"No Java compilation expected here.\"" \ + jar } do_stage() { - -install -d ${STAGING_DATADIR}/java -install -m 0644 ${DL_DIR}/${JAR} ${STAGING_DATADIR}/java - + oe_jarinstall -s src/${JAR} ${PN}.jar } - -FILES_${PN} = "${datadir}/java/${JAR}" +do_install() { + oe_jarinstall src/${JAR} ${PN}.jar +} |