[maven-file-management] 09/21: * Use Maven to build package. * Add new documentation package.
Emmanuel Bourg
ebourg-guest at moszumanska.debian.org
Wed Jul 19 15:38:44 UTC 2017
This is an automated email from the git hooks/post-receive script.
ebourg-guest pushed a commit to branch master
in repository maven-file-management.
commit f83a76de6661a42044b45510587b31849ac177cb
Author: Torsten Werner <twerner at debian.org>
Date: Mon Aug 22 20:56:33 2011 +0000
* Use Maven to build package.
* Add new documentation package.
---
debian/README.source | 9 +++++
debian/build.properties | 14 --------
debian/build.xml | 30 ----------------
debian/changelog | 5 +--
debian/control | 42 ++++++++++++++++++----
debian/copyright | 42 +++++++---------------
.../libmaven-file-management-java-doc.doc-base.api | 10 ++++++
debian/libmaven-file-management-java-doc.install | 2 ++
debian/libmaven-file-management-java.poms | 27 +++++++++++++-
debian/maven.cleanIgnoreRules | 17 +++++++++
debian/maven.ignoreRules | 16 +++++++++
debian/maven.properties | 4 +++
debian/maven.publishedRules | 19 ++++++++++
debian/maven.rules | 22 +++++++++++-
debian/orig-tar.sh | 14 ++++----
debian/rules | 20 ++---------
debian/watch | 3 +-
17 files changed, 187 insertions(+), 109 deletions(-)
diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000..b7a36f9
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,9 @@
+Information about maven-file-management
+------------------------------
+
+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.
diff --git a/debian/build.properties b/debian/build.properties
deleted file mode 100644
index bb2dd2d..0000000
--- a/debian/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-javadoc.dir=target/api
-build.directory=target
-maven.test.skip=true
-classpath.compile=\
- /usr/share/java/plexus-container-default-alpha.jar:\
- /usr/share/java/plexus-utils.jar:\
- /usr/share/java/plexus-classworlds.jar:\
- /usr/share/java/google-collections.jar:\
- /usr/share/java/xbean-reflect.jar:\
- /usr/share/java/maven-core.jar:\
- /usr/share/java/maven-model.jar:\
- /usr/share/java/maven-shared-io.jar:\
- /usr/share/java/maven-plugin-api.jar
-
diff --git a/debian/build.xml b/debian/build.xml
deleted file mode 100644
index c4f1790..0000000
--- a/debian/build.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="pkg-java" default="package" basedir="..">
-
- <property file="debian/build.properties"/>
- <property file="/usr/share/maven-ant-helper/maven-defaults.properties"/>
- <property name="maven.build.xml" value="/usr/share/maven-ant-helper/maven-build.xml"/>
-
- <target name="clean">
- <ant target="clean" antfile="${maven.build.xml}" dir=""/>
- </target>
-
- <target name="generate-sources">
- <taskdef name="modello" classname="ModelloTask"/>
- <modello model="src/main/mdo/fileset.mdo" plugin="xpp3-reader" output="target/generated-sources" version="1.1.0"/>
- <modello model="src/main/mdo/fileset.mdo" plugin="xpp3-writer" output="target/generated-sources" version="1.1.0"/>
- <modello model="src/main/mdo/fileset.mdo" plugin="java" output="target/generated-sources" version="1.1.0"/>
- <modello model="src/main/mdo/fileset.mdo" plugin="xsd" output="target/generated-sources" version="1.1.0"/>
- </target>
-
- <target name="package" depends="generate-sources">
- <ant target="package" antfile="${maven.build.xml}" dir="">
- <property name="classpath.compile" value="${classpath.compile}" />
- </ant>
- </target>
-
- <target name="javadoc">
- <ant target="javadoc" antfile="${maven.build.xml}" dir=""/>
- </target>
-</project>
diff --git a/debian/changelog b/debian/changelog
index 95766d5..bdc15e8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,12 @@
maven-file-management (1.2.1-3) unstable; urgency=low
- UNRELEASED
* Switch to source format 3.0.
* Update Standards-Version: 3.9.1.
* Switch to debhelper level 7.
+ * Use Maven to build package.
+ * Add new documentation package.
- -- Torsten Werner <twerner at debian.org> Mon, 22 Aug 2011 22:33:40 +0200
+ -- Torsten Werner <twerner at debian.org> Mon, 22 Aug 2011 22:55:26 +0200
maven-file-management (1.2.1-2) unstable; urgency=low
diff --git a/debian/control b/debian/control
index fe956b3..599a4b9 100644
--- a/debian/control
+++ b/debian/control
@@ -3,11 +3,11 @@ Section: java
Priority: optional
Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
Uploaders: Torsten Werner <twerner at debian.org>, Ludovic Claude <ludovic.claude at laposte.net>
-Build-Depends: debhelper (>= 7), cdbs, default-jdk
-Build-Depends-Indep: maven-repo-helper, maven-ant-helper (>> 4), ant, ant-optional,
- libmaven-shared-io-java, libplexus-classworlds-java, libmodello-java,
- libgoogle-collections-java, libxbean-java, libplexus-utils-java,
- libplexus-container-default-java, libmaven2-core-java
+Build-Depends: debhelper (>= 7), cdbs, default-jdk, maven-debian-helper (>= 1.4)
+Build-Depends-Indep: libmodello-maven-plugin-java, libmaven-shared-io-java, libmaven2-core-java,
+ libplexus-container-default-java, libplexus-utils-java, junit, default-jdk-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-file-management
Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/maven-file-management/
@@ -15,8 +15,9 @@ Homepage: http://maven.apache.org/shared/file-management/
Package: libmaven-file-management-java
Architecture: all
-Depends: ${misc:Depends}, libmaven2-core-java, libmaven-shared-io-java,
- libplexus-classworlds-java, libplexus-containers-java
+Depends: ${misc:Depends}, ${maven:Depends}
+Recommends: ${maven:OptionalDepends}
+Suggests: libmaven-file-management-java-doc
Description: Maven File Management API
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,
@@ -35,3 +36,30 @@ Description: Maven File Management API
.
The Maven File Management API provides an API to collect files from a given
directory using several include/exclude rules.
+
+Package: libmaven-file-management-java-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, ${maven:DocDepends}
+Recommends: ${maven:DocOptionalDepends}
+Suggests: libmaven-file-management-java
+Description: Documentation for Maven File Management API
+ 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
+ .
+ The Maven File Management API provides an API to collect files from a given
+ directory using several include/exclude rules.
+ .
+ This package contains the API documentation of libmaven-file-management-java.
diff --git a/debian/copyright b/debian/copyright
index 006e793..dbea38e 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1,32 +1,16 @@
-This package was debianized by Torsten Werner <twerner at debian.org>.
+Format: http://dep.debian.net/deps/dep5/
+Upstream-Name: Maven File Management API
+Upstream-Contact: Joakim Erdfelt <joakim at erdfelt.com> as
+Source: http://maven.apache.org/shared/file-management/
-The Debian packaging is Copyright (c) 2008 Torsten Werner and is
-licensed under the GNU General Public License version 3. On Debian
-systems, the complete text of the GNU General Public License can be
-found in '/usr/share/common-licenses/GPL-3'.
+Files: *
+Copyright: 2006-2007, The Apache Software Foundation.
+License: Apache-2.0
-The package was downloaded from <http://maven.apache.org>.
+Files: debian/*
+Copyright: 2008-2011, Torsten Werner <Torsten Werner <twerner at debian.org>>
+License: Apache-2.0
-Copyright: 2006-2007 The Apache Software Foundation.
-
-License:
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
-The full text of the license can be found in
-`/usr/share/common-licenes/Apache-2.0'.
+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'
diff --git a/debian/libmaven-file-management-java-doc.doc-base.api b/debian/libmaven-file-management-java-doc.doc-base.api
new file mode 100644
index 0000000..8dbd864
--- /dev/null
+++ b/debian/libmaven-file-management-java-doc.doc-base.api
@@ -0,0 +1,10 @@
+Document: libmaven-file-management-java
+Title: API Javadoc for Maven File Management API
+Author: Maven File Management API developers
+Abstract: This is the API Javadoc provided for the
+ libmaven-file-management-java library.
+Section: Programming
+
+Format: HTML
+Index: /usr/share/doc/libmaven-file-management-java/api/index.html
+Files: /usr/share/doc/libmaven-file-management-java/api/*
diff --git a/debian/libmaven-file-management-java-doc.install b/debian/libmaven-file-management-java-doc.install
new file mode 100644
index 0000000..e05438e
--- /dev/null
+++ b/debian/libmaven-file-management-java-doc.install
@@ -0,0 +1,2 @@
+target/apidocs/* usr/share/doc/libmaven-file-management-java/api
+
diff --git a/debian/libmaven-file-management-java.poms b/debian/libmaven-file-management-java.poms
index 43e746b..31a0ccf 100644
--- a/debian/libmaven-file-management-java.poms
+++ b/debian/libmaven-file-management-java.poms
@@ -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
diff --git a/debian/maven.cleanIgnoreRules b/debian/maven.cleanIgnoreRules
new file mode 100644
index 0000000..b47b61d
--- /dev/null
+++ b/debian/maven.cleanIgnoreRules
@@ -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/
+
diff --git a/debian/maven.ignoreRules b/debian/maven.ignoreRules
new file mode 100644
index 0000000..0088a40
--- /dev/null
+++ b/debian/maven.ignoreRules
@@ -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/
+
diff --git a/debian/maven.properties b/debian/maven.properties
new file mode 100644
index 0000000..7c29bd7
--- /dev/null
+++ b/debian/maven.properties
@@ -0,0 +1,4 @@
+# Include here properties to pass to Maven during the build.
+# For example:
+# maven.test.skip=true
+
diff --git a/debian/maven.publishedRules b/debian/maven.publishedRules
new file mode 100644
index 0000000..822f087
--- /dev/null
+++ b/debian/maven.publishedRules
@@ -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/
+
diff --git a/debian/maven.rules b/debian/maven.rules
index 8577380..dd5be86 100644
--- a/debian/maven.rules
+++ b/debian/maven.rules
@@ -1 +1,21 @@
-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/
+
+junit junit jar s/3\..*/3.x/ * *
+org.apache.maven.shared file-management jar s/.*/debian/ * *
+org.codehaus.plexus plexus-container-default jar s/1\.0-alpha.*/1.0-alpha/ * *
diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh
index 8454374..0f0af47 100755
--- a/debian/orig-tar.sh
+++ b/debian/orig-tar.sh
@@ -1,16 +1,16 @@
#!/bin/sh -e
-TAR=../maven-file-management_$2.orig.tar.gz
-DIR=maven-file-management-$2
-TAG=file-management-$2
+VERSION=$2
+TAR=../maven-file-management_$VERSION.orig.tar.gz
+DIR=maven-file-management-$VERSION
+TAG=$(echo "file-management-$VERSION" | sed -re's/~(alpha|beta)/-\1-/')
-svn export http://svn.apache.org/repos/asf/maven/shared/tags/$TAG $DIR
-tar -c -z -f $TAR $DIR
+svn export http://svn.apache.org/repos/asf/maven/shared/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
diff --git a/debian/rules b/debian/rules
index c007db1..b76c54a 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,23 +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)
-JAVA_HOME := /usr/lib/jvm/default-java
-DEB_JARS := ant-nodeps maven-ant-helper
-DEB_ANT_BUILD_TARGET := package #javadoc
-DEB_ANT_BUILDFILE := debian/build.xml
-DEB_ANT_ARGS := -Dversion=$(VERSION) -Dpackage=$(PACKAGE)
-API_DOCS := build/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/file-management-$(VERSION).jar
-
-clean::
- -rm -rf debian/tmp
+ uscan --download-version $(DEB_UPSTREAM_VERSION) --force-download --rename
diff --git a/debian/watch b/debian/watch
index 3f9c1ae..b0a665a 100644
--- a/debian/watch
+++ b/debian/watch
@@ -1,3 +1,4 @@
version=3
+opts="uversionmangle=s/-(alpha|beta)-/~$1/" \
http://svn.apache.org/repos/asf/maven/shared/tags/ \
- file-management-(.*)/ debian debian/orig-tar.sh
+ file-management-(\d.*)/ debian debian/orig-tar.sh
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/maven-file-management.git
More information about the pkg-java-commits
mailing list