From e8641a572f2a623531b5ca8c7f3daf78752a764a Mon Sep 17 00:00:00 2001 From: Michal Srb Date: Tue, 10 Jun 2014 08:44:27 +0200 Subject: [PATCH] Update docs --- javapackages-tools.spec | 7 +- update-docs.patch | 227 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 233 insertions(+), 1 deletion(-) create mode 100644 update-docs.patch diff --git a/javapackages-tools.spec b/javapackages-tools.spec index 1c8e5f3..0f98f32 100644 --- a/javapackages-tools.spec +++ b/javapackages-tools.spec @@ -1,6 +1,6 @@ Name: javapackages-tools Version: 4.0.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Macros and scripts for Java packaging support @@ -15,6 +15,7 @@ Patch3: 0006-maven.req-Fix-self-dependency-detection-code.patch Patch4: 0008-Fix-javapackages-metadata.xml.patch Patch5: 0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch Patch6: add-support-for-xmvn.resolver.disableEffectivePom-property.patch +Patch7: update-docs.patch BuildArch: noarch @@ -145,6 +146,7 @@ This package provides non-essential macros and scripts to support Java packaging %patch4 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 %build %configure @@ -185,6 +187,9 @@ popd %doc LICENSE %changelog +* Tue Jun 10 2014 Michal Srb - 4.0.0-6 +- Update docs + * Sat Jun 07 2014 Fedora Release Engineering - 4.0.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild diff --git a/update-docs.patch b/update-docs.patch new file mode 100644 index 0000000..411e173 --- /dev/null +++ b/update-docs.patch @@ -0,0 +1,227 @@ +diff --git a/doc/ant.txt b/doc/ant.txt +index 06ba3f3..fc500c3 100644 +--- a/doc/ant.txt ++++ b/doc/ant.txt +@@ -22,7 +22,7 @@ Repository for it, ship it as another source and install it. + [source,spec] + ------------- + BuildRequires: ant +-BuildRequires: maven-local ++BuildRequires: javapackages-local + ... + %build + ant test +diff --git a/doc/core_java_packages.txt b/doc/core_java_packages.txt +index 34e0728..2baf4b2 100644 +--- a/doc/core_java_packages.txt ++++ b/doc/core_java_packages.txt +@@ -51,9 +51,39 @@ non-zero epoch in order to keep version ordering correct. + ======= + + ++==== Java Packages Tools ++ ++Java Packages Tools are packaged as severas binary RPM packages ++ ++*`maven-local`*:: ++ ++ This package provides a complete environment which is required to ++ build Java packages using Apache Maven build system. This ++ includes a default system version of Java Development Kit (JDK), ++ Maven, a number of Maven plugins commonly used to build packages, ++ various macros and utlilty tools. `maven-local` is usually ++ declared as build dependency of Maven packages. ++ ++*`ivy-local`*:: ++ ++ Analogously to `maven-local`, this package provides an environment ++ required to build Java packages using Apache Ivy as dependency ++ manager. ++ ++*`javapackages-local`*:: ++ ++ Package providing a basic environment necessary to geterate and ++ install metadata for system artifact repository. ++ ++*`javapackages-tools`*:: ++ ++ Package owning basic Java directories and providing runtime ++ support for Java packages. The great majority of Java packages ++ depend on `javapackages-tools`. ++ ++ + TODO + +-* Java Packages Tools + * Ant + ** extra tasks and /etc/ant.d + * Maven +diff --git a/doc/directory_layout.txt b/doc/directory_layout.txt +index 862ccd4..907777d 100644 +--- a/doc/directory_layout.txt ++++ b/doc/directory_layout.txt +@@ -34,13 +34,6 @@ short description. + Maven are installed. Each POM must have name that strictly + corresponds to JAR file in `%{_javadir}` or `%{_jnidir}`. + +-*`%{_mavendepmapfragdir}`* -- `/usr/share/maven-fragments`:: +- +- Directory containing package metadata in XML format. Typically +- each binary package installs there a single XML file containing +- various information (metadata) about artifacts associated with +- that package. +- + + .Other directories + [glossary] +diff --git a/doc/generic_java_build.txt b/doc/generic_java_build.txt +index 6fb09bb..5c29c95 100644 +--- a/doc/generic_java_build.txt ++++ b/doc/generic_java_build.txt +@@ -11,49 +11,18 @@ POM or JAR file, we may use the `%add_maven_depmap` macro. However, if package + is build in standard way (i.e.: `%mvn_build` and `%mvn_install`), then calling + `%add_maven_depmap` is neither needed nor recommended. This macro is usually + useful only for packages that use other build tool than Maven (e.g.: ant, +-gradle). It creates files in `%{_mavendepmapfragdir}` that map +-groupId:artifactId pairs to JAR files under `%{_javadir}`. These files are +-called depmap fragments. The macro can read the groupId and artifactId from the +-POM file or maintainer can pass this information as an argument. All fragments +-in `%{_mavendepmapfragdir}` directory are read by XMvn, allowing the +-locally installed JAR and POM files to be used as a maven repository. +- +-Note that -- unless you use the `-f` option as shown below -- all +-depmap fragments for a given package are written to the same file, +-`%{_mavendepmapfragdir}/%{name}`. You should be sure to include this +-file in the `%files` section of your RPM. ++gradle). + + For the macro to work properly, all JAR files must be copied into `%{_javadir}` +-and all POM files must be copied into `%{_mavenpomdir}` and given file names of +-the following form, where `jarname` is the name of the JAR without the .jar +-suffix: ++and all POM files must be copied into `%{_mavenpomdir}`. + +-[source,spec] +--------- +-%{_mavenpomdir}/JPP[.subdirectory]-jarname.pom +--------- +- +-Note that the subdirectory is only necessary if the JAR file is put into a +-subdirectory of `%{_javadir}`. For example: +- +-* For junit, the JAR is `%{_javadir}/junit.jar`, so the POM would be +- `%{_mavenpomdir}/JPP-junit.pom`. +-* For plexus-ant-factory, the JAR is `%{_javadir}/plexus/ant-factory.jar`, so +- the POM would named `%{_mavenpomdir}/JPP.plexus-ant-factory.pom`. +- +-If a POM is installed with no corresponding JAR file -- for example, for parent +-POM files -- the same convention should be followed: +- +-* The Apache commons parent POM is installed in +- `%{_mavenpomdir}/JPP-commons-parent.pom`. +- +-In its simplest form (a POM without a JAR file), `%add_maven_depmap` looks like ++In simplest form (a POM without a JAR file), `%add_maven_depmap` looks like + this: + + .Parent POM + [source,spec] + -------- +-%add_maven_depmap JPP-%{name}.pom ++%add_maven_depmap %{name}.pom + -------- + + This will read the POM file in question and provide a mapping between the +@@ -65,7 +34,7 @@ For a POM that maps directly to a JAR file, the following is the correct form: + .Standard invocation + [source,spec] + -------- +-%add_maven_depmap JPP-%{name}.pom %{name}.jar ++%add_maven_depmap %{name}.pom %{name}.jar + -------- + + In addition to creating the POM mapping, this will also ensure that the correct +@@ -82,7 +51,7 @@ mapping between Maven artifact and corresponding JAR file: + .Providing additional artifact mappings + [source,spec] + -------- +-%add_maven_depmap JPP-%{name}.pom %{name}.jar -a "org.apache.commons:commons-lang" ++%add_maven_depmap %{name}.pom %{name}.jar -a "org.apache.commons:commons-lang" + -------- + This form also adds additional mappings for given POM/JAR file. For example, if + the POM file indicates that it contains groupId commons-lang, artifactId +@@ -94,16 +63,16 @@ require different IDs than those reflected in the installed POM. + .Multiple subpackages + [source,spec] + -------- +-%add_maven_depmap JPP-%{name}.pom %{name}.jar -f "XXX" ++%add_maven_depmap %{name}.pom %{name}.jar -f "XXX" + -------- +-This form stores dependency mapping inside `%{_mavendepmapfragdir}/%{name}-XXX` +-instead of standard location. This is useful for packages with multiple +-subpackages where each has its own JAR files. ++This form stores metadata information in file with suffix "XXX". This ++is useful for packages with multiple subpackages where each has its own ++JAR files. + + .Multiple artifacts in a subdirectory + [source,spec] + -------- +-%add_maven_depmap JPP.%{name}-sub.pom %{name}/sub.jar ++%add_maven_depmap %{name}-sub.pom %{name}/sub.jar + -------- + + This form should be used when a package consists of multiple JAR files that are +diff --git a/doc/index.txt b/doc/index.txt +index f9af27e..22c9ab2 100644 +--- a/doc/index.txt ++++ b/doc/index.txt +@@ -63,22 +63,6 @@ References + 'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999. + ISBN 1-56592-580-7. + +- +-[glossary] +-Glossary +--------- +-Glossaries are optional. Glossaries entries are an example of a style +-of AsciiDoc labeled lists. +- +-[glossary] +-[[Xdepmap]]depmap:: +- Depmap is a special file telling Maven relationships between +- groupId,artifactId and JAR file on the filesystem +- +-A second glossary term:: +- The corresponding (indented) definition. +- +- + ifdef::backend-docbook[] + [index] + Example Index +diff --git a/doc/maven.txt b/doc/maven.txt +index 7539d00..63c8cc8 100644 +--- a/doc/maven.txt ++++ b/doc/maven.txt +@@ -35,7 +35,7 @@ BuildRequires: maven-local + + The macros `%mvn_build` and `%mvn_install` automatically handle building of the + JAR files and their subsequent installation to the correct directory. The +-corresponding POM and <> files are also installed. ++corresponding POM and metadata files are also installed. + + [[packaging_maven_project]] + === Packaging Maven project +diff --git a/doc/mvn_macros.txt b/doc/mvn_macros.txt +index c1b9aa2..1115cc8 100644 +--- a/doc/mvn_macros.txt ++++ b/doc/mvn_macros.txt +@@ -66,7 +66,7 @@ If the project consists of multiple artifacts, it is recommended to install each + artifact to the separate subpackage. The macro `%mvn_build -s` will generate + separate `.mfiles` file for every artifact in the project. This file contains + list of files related to specific artifact (typically JAR file, POM file and +-depmap). It can be later used in `%files` section of the spec file. ++metadata). It can be later used in `%files` section of the spec file. + + .Creating one subpackage for each generated artifact + [source,spec]