chewi       15/06/15 21:09:06

  Modified:             ChangeLog java-utils-2.eclass
  Log:
  Add java-pkg_addres function for adding resource files to an existing
  jar.

Revision  Changes    Path
1.1665               eclass/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1665&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1665&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1664&r2=1.1665

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1664
retrieving revision 1.1665
diff -u -r1.1664 -r1.1665
--- ChangeLog   15 Jun 2015 19:09:28 -0000      1.1664
+++ ChangeLog   15 Jun 2015 21:09:06 -0000      1.1665
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1664 2015/06/15 
19:09:28 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1665 2015/06/15 
21:09:06 chewi Exp $
+
+  15 Jun 2015; James Le Cuirot <[email protected]> java-utils-2.eclass:
+  Add java-pkg_addres function for adding resource files to an existing jar.
 
   15 Jun 2015; Justin Lecher <[email protected]> intel-sdp.eclass:
   Don't install uninstall informations, bug 551638; make use of path_exists()



1.163                eclass/java-utils-2.eclass

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/java-utils-2.eclass?rev=1.163&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/java-utils-2.eclass?rev=1.163&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/java-utils-2.eclass?r1=1.162&r2=1.163

Index: java-utils-2.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/java-utils-2.eclass,v
retrieving revision 1.162
retrieving revision 1.163
diff -u -r1.162 -r1.163
--- java-utils-2.eclass 24 May 2015 22:44:37 -0000      1.162
+++ java-utils-2.eclass 15 Jun 2015 21:09:06 -0000      1.163
@@ -6,7 +6,7 @@
 #
 # Licensed under the GNU General Public License, v2
 #
-# $Header: /var/cvsroot/gentoo-x86/eclass/java-utils-2.eclass,v 1.162 
2015/05/24 22:44:37 chewi Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/java-utils-2.eclass,v 1.163 
2015/06/15 21:09:06 chewi Exp $
 
 # @ECLASS: java-utils-2.eclass
 # @MAINTAINER:
@@ -217,6 +217,37 @@
        dosym "${dest}" "${JAVA_PKG_SHAREPATH}/examples" || die
 }
 
+# @FUNCTION: java-pkg_addres
+# @USAGE: <jar> <dir> [<find arguments> ...]
+# @DESCRIPTION:
+# Adds resource files to an existing jar.
+# It is important that the directory given is actually the root of the
+# corresponding resource tree. The target directory as well as
+# sources.lst, MANIFEST.MF, *.class, *.jar, and *.java files are
+# automatically excluded. Symlinks are always followed. Additional
+# arguments are passed through to find.
+#
+# @CODE
+#      java-pkg_addres ${PN}.jar resources ! -name "*.html"
+# @CODE
+#
+# @param $1 - jar file
+# @param $2 - resource tree directory
+# @param $* - arguments to pass to find
+java-pkg_addres() {
+       debug-print-function ${FUNCNAME} $*
+
+       [[ ${#} -lt 2 ]] && die "at least two arguments needed"
+
+       local jar=$(realpath "$1" || die "realpath $1 failed")
+       local dir="$2"
+       shift 2
+
+       pushd "${dir}" > /dev/null || die "pushd ${dir} failed"
+       find -L -type f ! -path "./target/*" ! -path "./sources.lst" ! -name 
"MANIFEST.MF" ! -regex ".*\.\(class\|jar\|java\)" "${@}" -print0 | xargs -0 jar 
uf "${jar}" || die "jar failed"
+       popd > /dev/null || die "popd failed"
+}
+
 # @FUNCTION: java-pkg_dojar
 # @USAGE: <jar1> [<jar2> ...]
 # @DESCRIPTION:




Reply via email to