[pkg-java] r14453 - trunk/maven-shade-plugin/debian

Torsten Werner twerner at alioth.debian.org
Wed Aug 24 20:45:27 UTC 2011


Author: twerner
Date: 2011-08-24 20:45:27 +0000 (Wed, 24 Aug 2011)
New Revision: 14453

Added:
   trunk/maven-shade-plugin/debian/README.source
   trunk/maven-shade-plugin/debian/TODO
   trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.doc-base.api
   trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.install
   trunk/maven-shade-plugin/debian/maven.cleanIgnoreRules
   trunk/maven-shade-plugin/debian/maven.ignoreRules
   trunk/maven-shade-plugin/debian/maven.properties
   trunk/maven-shade-plugin/debian/maven.publishedRules
Removed:
   trunk/maven-shade-plugin/debian/build.properties
   trunk/maven-shade-plugin/debian/maven-settings.xml
Modified:
   trunk/maven-shade-plugin/debian/changelog
   trunk/maven-shade-plugin/debian/control
   trunk/maven-shade-plugin/debian/copyright
   trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java.poms
   trunk/maven-shade-plugin/debian/maven.rules
   trunk/maven-shade-plugin/debian/orig-tar.sh
   trunk/maven-shade-plugin/debian/rules
   trunk/maven-shade-plugin/debian/watch
Log:
* Use Maven for building but ignore test errors.
* Add a documentation package.

Added: trunk/maven-shade-plugin/debian/README.source
===================================================================
--- trunk/maven-shade-plugin/debian/README.source	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/README.source	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,9 @@
+Information about maven-shade-plugin
+------------------------------
+
+This package was debianized using the mh_make command
+from the maven-debian-helper package.
+
+The build system uses Maven but prevents it from downloading
+anything from the Internet, making the build compliant with
+the Debian policy.

Added: trunk/maven-shade-plugin/debian/TODO
===================================================================
--- trunk/maven-shade-plugin/debian/TODO	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/TODO	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1 @@
+- fix test errors

Deleted: trunk/maven-shade-plugin/debian/build.properties
===================================================================
--- trunk/maven-shade-plugin/debian/build.properties	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/build.properties	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,5 +0,0 @@
-javadoc.dir=target/api
-build.directory=target
-maven.test.skip=true
-maven.generate.target=org.codehaus.plexus:plexus-component-metadata:${plexus-component-metadata.version}:generate-metadata
-maven.generate.target2=plugin:descriptor

Modified: trunk/maven-shade-plugin/debian/changelog
===================================================================
--- trunk/maven-shade-plugin/debian/changelog	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/changelog	2011-08-24 20:45:27 UTC (rev 14453)
@@ -4,8 +4,10 @@
   * Switch to source format 3.0.
   * Switch to debhelper level 7.
   * Update Standards-Version: 3.9.1.
+  * Use Maven for building but ignore test errors.
+  * Add a documentation package.
 
- -- Torsten Werner <twerner at debian.org>  Wed, 24 Aug 2011 22:22:31 +0200
+ -- Torsten Werner <twerner at debian.org>  Wed, 24 Aug 2011 22:38:29 +0200
 
 maven-shade-plugin (1.2.1-2) unstable; urgency=low
 

Modified: trunk/maven-shade-plugin/debian/control
===================================================================
--- trunk/maven-shade-plugin/debian/control	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/control	2011-08-24 20:45:27 UTC (rev 14453)
@@ -3,12 +3,11 @@
 Priority: optional
 Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
 Uploaders: Ludovic Claude <ludovic.claude at laposte.net>
-Build-Depends: default-jdk, debhelper (>= 7), cdbs
-Build-Depends-Indep: maven-repo-helper, maven-ant-helper (>> 4), ant, ant-optional,
- junit, libmaven-plugin-tools-java, libplexus-velocity-java, velocity,
- libplexus-component-metadata-java (>= 1.0~beta3.0.7),
- libmaven2-core-java, libplexus-container-default-java, 
- libplexus-utils-java, libasm3-java, libjdom1-java, libmaven-dependency-tree-java
+Build-Depends: debhelper (>= 7), cdbs, default-jdk, maven-debian-helper (>= 1.4)
+Build-Depends-Indep: libplexus-maven-plugin-java, libasm3-java, libjdom1-java (>= 1.0), libmaven-dependency-tree-java,  
+ libmaven2-core-java, libplexus-container-default-java, libplexus-utils-java,  
+ junit, default-jdk-doc, libjdom1-java-doc, libmaven2-core-java-doc, libplexus-container-default-java-doc,  
+ libplexus-utils-java-doc, libmaven-javadoc-plugin-java 
 Standards-Version: 3.9.1
 Vcs-Svn: svn://svn.debian.org/svn/pkg-java/trunk/maven-shade-plugin
 Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/maven-shade-plugin/
@@ -16,8 +15,9 @@
 
 Package: libmaven-shade-plugin-java
 Architecture: all
-Depends: ${misc:Depends}, libmaven2-core-java, libplexus-container-default-java, 
- libplexus-utils-java, libasm3-java, libjdom1-java, libmaven-dependency-tree-java
+Depends: ${misc:Depends}, ${maven:Depends}
+Recommends: ${maven:OptionalDepends}
+Suggests: libmaven-shade-plugin-java-doc
 Description: Maven shade plugin
  Maven is a software project management and comprehension tool. Based on the
  concept of a project object model (POM), Maven can manage a project's build,
@@ -36,3 +36,27 @@
  .
  This package ships the Maven shade plugin which is used to build an Uber-JAR 
  from the current project, including dependencies.
+
+Package: libmaven-shade-plugin-java-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, ${maven:DocDepends}
+Recommends: ${maven:DocOptionalDepends}
+Suggests: libmaven-shade-plugin-java
+Description: Documentation for Maven shade plugin
+ Maven is a software project management and comprehension tool. Based on the
+ concept of a project object model (POM), Maven can manage a project's build,
+ reporting and documentation from a central piece of information.
+ .
+ Maven's primary goal is to allow a developer to comprehend the complete
+ state of a development effort in the shortest period of time. In order to
+ attain this goal there are several areas of concern that Maven attempts
+ to deal with:
+ .
+    * Making the build process easy
+    * Providing a uniform build system
+    * Providing quality project information
+    * Providing guidelines for best practices development
+    * Allowing transparent migration to new features
+ .
+ This package contains the API documentation of libmaven-shade-plugin-java.

Modified: trunk/maven-shade-plugin/debian/copyright
===================================================================
--- trunk/maven-shade-plugin/debian/copyright	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/copyright	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,7 +1,7 @@
 Format-Specification: http://dep.debian.net/deps/dep5/
 Name: Maven Shade Plugin
 Maintainer: Apache Maven team
-Source: http://maven.apache.org/
+Source: http://maven.apache.org/plugins/maven-shade-plugin/
 
 Files: *
 Copyright: 2001-2009, The Apache Software Foundation.
@@ -9,11 +9,12 @@
 
 Files: debian/*
 Copyright: 2009, Ludovic Claude <ludovic.claude at laposte.net>
+           2011, Torsten Werner <twerner at debian.org>
 License: GPL-3+
 
 License: Apache-2.0
   On Debian GNU/Linux system you can find the complete text of the
-  Apache 2.0 license in '/usr/share/common-licenses/Apache-2.0'.
+  Apache-2.0 license in '/usr/share/common-licenses/Apache-2.0'.
 
 License: GPL-3
   On Debian GNU/Linux system you can find the complete text of the

Added: trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.doc-base.api
===================================================================
--- trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.doc-base.api	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.doc-base.api	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,10 @@
+Document: libmaven-shade-plugin-java
+Title: API Javadoc for Maven Shade Plugin
+Author: Maven Shade Plugin developers
+Abstract: This is the API Javadoc provided for the
+ libmaven-shade-plugin-java library.
+Section: Programming
+
+Format: HTML
+Index: /usr/share/doc/libmaven-shade-plugin-java/api/index.html
+Files: /usr/share/doc/libmaven-shade-plugin-java/api/*

Added: trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.install
===================================================================
--- trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.install	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java-doc.install	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,2 @@
+target/apidocs/* usr/share/doc/libmaven-shade-plugin-java/api
+

Modified: trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java.poms
===================================================================
--- trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java.poms	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/libmaven-shade-plugin-java.poms	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1 +1,26 @@
-pom.xml --no-parent
+# List of POM files for the package
+# Format of this file is:
+# <path to pom file> [option]*
+# where option can be:
+#   --ignore: ignore this POM or
+#   --no-parent: remove the <parent> tag from the POM
+#   --package=<package>: an alternative package to use when installing this POM
+#      and its artifact
+#   --has-package-version: to indicate that the original version of the POM is the same as the upstream part
+#      of the version for the package.
+#   --keep-elements=<elem1,elem2>: a list of XML elements to keep in the POM
+#      during a clean operation with mh_cleanpom or mh_installpom
+#   --artifact=<path>: path to the build artifact associated with this POM,
+#      it will be installed when using the command mh_install
+#   --java-lib: install the jar into /usr/share/java to comply with Debian
+#      packaging guidelines
+#   --usj-name=<name>: name to use when installing the library in /usr/share/java
+#   --usj-version=<version>: version to use when installing the library in /usr/share/java
+#   --no-usj-versionless: don't install the versionless link in /usr/share/java
+#   --dest-jar=<path>: the destination for the real jar
+#   it will be installed with mh_install.
+#   --classifier=<classifier>: Optional, the classifier for the jar. Empty by default.
+#   --ignore-pom: don't install the POM with mh_install or mh_installpoms. To use with POM files that are created
+#     temporarily for certain artifacts such as Javadoc jars.
+#
+pom.xml --no-parent --has-package-version

Deleted: trunk/maven-shade-plugin/debian/maven-settings.xml
===================================================================
--- trunk/maven-shade-plugin/debian/maven-settings.xml	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/maven-settings.xml	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,9 +0,0 @@
-<!--
-  This is a minimal settings.xml that switches maven to offline mode
-  and uses the Debian repo as the local repo.
--->
-
-<settings>
-  <localRepository>/usr/share/maven-repo</localRepository>
-  <offline>true</offline>
-</settings>

Added: trunk/maven-shade-plugin/debian/maven.cleanIgnoreRules
===================================================================
--- trunk/maven-shade-plugin/debian/maven.cleanIgnoreRules	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/maven.cleanIgnoreRules	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,17 @@
+# Maven clean ignore rules - ignore some Maven dependencies and plugins
+# during the clean phase of a Maven build
+# Format of this file is:
+# [group] [artifact] [type] [version] [classifier] [scope]
+# where each element can be either
+# - the exact string, for example org.apache for the group, or 3.1
+#   for the version. In this case, the element is simply matched
+#   and left as it is
+# - * (the star character, alone). In this case, anything will
+#   match and be left as it is. For example, using * on the
+#  position of the artifact field will match any artifact id
+# All elements much match before a rule can be applied
+# Example rule: match jar with groupid= junit, artifactid= junit
+# and version starting with 3., this dependency is then removed
+# from the POM before mvn clean is called
+#   junit junit jar s/3\\..*/3.x/
+

Added: trunk/maven-shade-plugin/debian/maven.ignoreRules
===================================================================
--- trunk/maven-shade-plugin/debian/maven.ignoreRules	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/maven.ignoreRules	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,16 @@
+# Maven ignore rules - ignore some Maven dependencies and plugins
+# Format of this file is:
+# [group] [artifact] [type] [version] [classifier] [scope]
+# where each element can be either
+# - the exact string, for example org.apache for the group, or 3.1
+#   for the version. In this case, the element is simply matched
+#   and left as it is
+# - * (the star character, alone). In this case, anything will
+#   match and be left as it is. For example, using * on the
+#  position of the artifact field will match any artifact id
+# All elements much match before a rule can be applied
+# Example rule: match jar with groupid= junit, artifactid= junit
+# and version starting with 3., this dependency is then removed
+# from the POM
+#   junit junit jar s/3\\..*/3.x/
+

Added: trunk/maven-shade-plugin/debian/maven.properties
===================================================================
--- trunk/maven-shade-plugin/debian/maven.properties	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/maven.properties	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,5 @@
+# Include here properties to pass to Maven during the build.
+# For example:
+# maven.test.skip=true
+
+maven.test.failure.ignore=true

Added: trunk/maven-shade-plugin/debian/maven.publishedRules
===================================================================
--- trunk/maven-shade-plugin/debian/maven.publishedRules	                        (rev 0)
+++ trunk/maven-shade-plugin/debian/maven.publishedRules	2011-08-24 20:45:27 UTC (rev 14453)
@@ -0,0 +1,19 @@
+# Maven published rules - additional rules to publish, to help
+# the packaging work of Debian maintainers using mh_make
+# Format of this file is:
+# [group] [artifact] [type] [version] [classifier] [scope]
+# where each element can be either
+# - the exact string, for example org.apache for the group, or 3.1
+#   for the version. In this case, the element is simply matched
+#   and left as it is
+# - * (the star character, alone). In this case, anything will
+#   match and be left as it is. For example, using * on the
+#  position of the artifact field will match any artifact id
+# - a regular expression of the form s/match/replace/
+#   in this case, elements that match are transformed using
+#   the regex rule.
+# All elements much match before a rule can be applied
+# Example rule: match jar with groupid= junit, artifactid= junit
+# and version starting with 3., replacing the version with 3.x
+#   junit junit jar s/3\\..*/3.x/
+

Modified: trunk/maven-shade-plugin/debian/maven.rules
===================================================================
--- trunk/maven-shade-plugin/debian/maven.rules	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/maven.rules	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,6 +1,22 @@
-# keep the version for all Maven plugins as versionless plugins don't work
-* * maven-plugin *
-s/jdom/org.jdom/ jdom jar s/1\..*/debian/
-asm * * s/3\..*/3.x/
-org.codehaus.plexus plexus-container-default jar s/1\.0-alpha.*/1.0-alpha/
-junit junit jar s/3\..*/3.x/
+# Maven rules - transform Maven dependencies and plugins
+# Format of this file is:
+# [group] [artifact] [type] [version] [classifier] [scope]
+# where each element can be either
+# - the exact string, for example org.apache for the group, or 3.1
+#   for the version. In this case, the element is simply matched
+#   and left as it is
+# - * (the star character, alone). In this case, anything will
+#   match and be left as it is. For example, using * on the
+#  position of the artifact field will match any artifact id
+# - a regular expression of the form s/match/replace/
+#   in this case, elements that match are transformed using
+#   the regex rule.
+# All elements much match before a rule can be applied
+# Example rule: match jar with groupid= junit, artifactid= junit
+# and version starting with 3., replacing the version with 3.x
+#   junit junit jar s/3\\..*/3.x/
+
+s/jdom/org.jdom/ jdom jar s/1\..*/debian/ * *
+junit junit jar s/3\..*/3.x/ * *
+org.codehaus.plexus plexus-container-default jar s/1\.0-alpha.*/1.0-alpha/ * *
+asm * * s/3\..*/3.x/ * *

Modified: trunk/maven-shade-plugin/debian/orig-tar.sh
===================================================================
--- trunk/maven-shade-plugin/debian/orig-tar.sh	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/orig-tar.sh	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,16 +1,16 @@
 #!/bin/sh -e
 
-TAR=../maven-shade-plugin_$2.orig.tar.gz
-DIR=maven-shade-plugin-$2
-TAG=maven-shade-plugin-$2
+VERSION=$2
+TAR=../maven-shade-plugin_$VERSION.orig.tar.gz
+DIR=maven-shade-plugin-$VERSION
+TAG=$(echo "maven-shade-plugin-$VERSION" | sed -re's/~(alpha|beta)/-\1-/')
 
-svn export http://svn.apache.org/repos/asf/maven/plugins/tags/$TAG $DIR
+svn export http://svn.apache.org/repos/asf/maven/plugins/tags/${TAG}/ $DIR
 GZIP=--best tar -c -z -f $TAR --exclude '*.jar' --exclude '*.class' $DIR
 rm -rf $DIR ../$TAG
 
 # move to directory 'tarballs'
 if [ -r .svn/deb-layout ]; then
   . .svn/deb-layout
-  mv $TAR $origDir
-  echo "moved $TAR to $origDir"
+  mv $TAR $origDir && echo "moved $TAR to $origDir"
 fi

Modified: trunk/maven-shade-plugin/debian/rules
===================================================================
--- trunk/maven-shade-plugin/debian/rules	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/rules	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,26 +1,9 @@
 #!/usr/bin/make -f
 
 include /usr/share/cdbs/1/rules/debhelper.mk
-include /usr/share/cdbs/1/class/ant.mk
+include /usr/share/cdbs/1/class/maven.mk
 
-PACKAGE              := $(DEB_SOURCE_PACKAGE)
-VERSION              := $(DEB_UPSTREAM_VERSION)
-# Need to specify the exact version of the Plexus plugin (from plexus-component-metadata package) used here
-PLEXUS_PLUGIN_VERSION:= 1.0-beta-3.0.7
-JAVA_HOME            := /usr/lib/jvm/default-java
-DEB_JARS             := ant-nodeps maven-core maven-model maven-plugin-api maven-project maven-artifact maven-artifact-manager \
- maven-dependency-tree file-management plexus-utils plexus-container-default-alpha jdom1 asm3 asm3-commons
-DEB_ANT_BUILD_TARGET := package #javadoc
-DEB_ANT_BUILDFILE    := /usr/share/maven-ant-helper/maven-build.xml
-DEB_ANT_ARGS         := -Dbasedir=$(realpath .) -Dpackage=$(PACKAGE) -Dversion=$(VERSION) -Dplexus-component-metadata.version=$(PLEXUS_PLUGIN_VERSION)
-API_DOCS             := target/api
+JAVA_HOME := /usr/lib/jvm/default-java
 
 get-orig-source:
-	-uscan --download-version $(DEB_UPSTREAM_VERSION) --force-download --rename
-
-binary-post-install/lib$(PACKAGE)-java::
-	mh_installpoms -plib$(PACKAGE)-java
-	mh_installjar -plib$(PACKAGE)-java -l pom.xml target/$(PACKAGE)-$(VERSION).jar
-
-clean::
-	-rm -rf debian/tmp
+	uscan --download-version $(DEB_UPSTREAM_VERSION) --force-download --rename

Modified: trunk/maven-shade-plugin/debian/watch
===================================================================
--- trunk/maven-shade-plugin/debian/watch	2011-08-24 20:26:00 UTC (rev 14452)
+++ trunk/maven-shade-plugin/debian/watch	2011-08-24 20:45:27 UTC (rev 14453)
@@ -1,3 +1,4 @@
 version=3
-http://svn.apache.org/repos/asf/maven/plugins/tags/ \
-  maven-shade-plugin-(.*)/ debian debian/orig-tar.sh
+opts="uversionmangle=s/-(alpha|beta)-/~$1/" \
+  http://svn.apache.org/repos/asf/maven/plugins/tags/ \
+  maven-shade-plugin-(\d.*)/ debian debian/orig-tar.sh




More information about the pkg-java-commits mailing list