%define repo_dir m2_home_local/repository
%define maven_settings_file %{_builddir}/%{name}/settings.xml
+### preamble {{{
Name: maven
Version: 2.0.8
Release: %{bootstrap_release %rel}
Patch19: %{name}-plugins-disableenforcer.patch
Patch20: %{name}-commons-cli-1.1.patch
+# Patches added by PLD
+Patch100: %{name}-no-easymock.patch
+
### PLDIZED DEPENDENCIES {{{
### BRs {{{
BuildRequires: ant >= 1.6.5
BuildRequires: ant-junit
BuildRequires: antlr >= 2.7.4
BuildRequires: ant-nodeps
+BuildRequires: java(servlet)
BuildRequires: java-bsh >= 1.3.0
+BuildRequires: java-classworlds >= 1.1
BuildRequires: java-commons-beanutils >= 1.7.0
BuildRequires: java-commons-cli >= 1.0
BuildRequires: java-commons-collections >= 3.1
BuildRequires: java-dom4j >= 1.6.1
BuildRequires: java-gnu-regexp >= 1.1.4
BuildRequires: java-httpunit >= 1.6
+BuildRequires: java-jaxen >= 1.1
BuildRequires: java-jdom >= 1.0
+BuildRequires: java-jsch >= 0.1.20
+BuildRequires: java-jtidy >= 1.0
BuildRequires: java-junit >= 3.8.2
BuildRequires: java-oro >= 2.0.8
+BuildRequires: java-plexus-utils >= 1.2
BuildRequires: java-qdox >= 1.5
BuildRequires: java-rhino >= 1.5
+BuildRequires: java-velocity >= 1.4
BuildRequires: java-xalan >= 2.6.0
BuildRequires: java-xerces >= 2.7.1
BuildRequires: java-xmlunit
BuildRequires: java-xom
%{buildrequires_jdk}
BuildRequires: jpackage-utils >= 0:1.7.2
+BuildRequires: maven-common-poms
BuildRequires: rpmbuild(macros) >= 1.557
BuildRequires: sed >= 4.0
%if %{with itests}
BuildRequires: java-log4j >= 1.2.13
BuildRequires: java(xml-commons-apis) >= 1.3.02
+BuildRequires: saxon
%endif
### }}}
### Rs {{{
Requires: ant >= 1.6.5
Requires: antlr >= 2.7.4
+Requires: java(servlet)
Requires: java-bsh >= 1.3.0
+Requires: java-classworlds >= 1.
Requires: java-commons-beanutils >= 1.7.0
Requires: java-commons-cli >= 1.0
Requires: java-commons-collections >= 3.1
Requires: java-httpunit >= 1.6
Requires: java-jdom >= 1.0
Requires: java-junit >= 3.8.2
+Requires: java-jsch >= 0.1.20
+Requires: java-jtidy >= 1.0
Requires: java-oro >= 2.0.8
+Requires: java-plexus-utils >= 1.2
Requires: java-qdox >= 1.5
Requires: java-rhino >= 1.5
Requires: java-xalan >= 2.6.0
Requires: java-xerces >= 2.7.1
Requires: java-xmlunit
Requires: java-xom
+Requires: maven-common-poms
+Requires(post): java-classworlds >= 1.1
Requires(post): java-commons-cli >= 1.0
Requires(post): java-commons-lang >= 2.1
Requires(post): java-commons-logging >= 1.0.4
Requires(post): java-jdom >= 1.0
+Requires(post): java-jsch >= 0.1.20
+Requires(post): java-plexus-utils >= 1.2
Requires(post): jpackage-utils >= 0:1.7.2
Requires(postun): jpackage-utils >= 0:1.7.2
### }}}
### END OF PLDIZED DEPENDENCIES }}}
-### DEPENDENCIES NOT PACKAGED FOR PLD {{{
-BuildRequires: java-velocity >= 1.4
-Requires: velocity >= 1.4
-### }}}
-
### DEPENDENCIES THAT NEEDS INVESTIGATION {{{
# Is java(mail) enough?
BuildRequires: glassfish-javamail
Requires: glassfish-javamail
-# java(servlet)?
-BuildRequires: tomcat5-servlet-2.4-api
-Requires: tomcat5-servlet-2.4-api
# C library??? Or some java bindings?
BuildRequires: xmlrpc
Requires: xmlrpc
#BuildRequires: cglib >= 2.1.0
BuildRequires: checkstyle4 >= 4.1
BuildRequires: checkstyle4-optional >= 4.1
-BuildRequires: classworlds >= 1.1
-BuildRequires: jaxen >= 1.1
#BuildRequires: jmock >= 1.0.1
BuildRequires: jline >= 0.8.1
-BuildRequires: jsch >= 0.1.20
-BuildRequires: jtidy >= 1.0
-BuildRequires: maven2-common-poms >= 1.0-5
BuildRequires: maven-jxr >= 1.0-2
BuildRequires: maven-wagon >= 1.0-0.1.b2
BuildRequires: maven-doxia >= 1.0-0.a9
BuildRequires: plexus-container-default >= 1.0
BuildRequires: plexus-i18n >= 1.0
BuildRequires: plexus-interactivity >= 1.0
-BuildRequires: plexus-utils >= 1.2
BuildRequires: plexus-velocity >= 1.1.2
BuildRequires: pmd >= 3.6
-BuildRequires: saxon-scripts
BuildRequires: saxpath
%if %{without bootstrap}
Requires: aqute-bndlib
#Requires: cglib >= 2.1.0
Requires: checkstyle4 >= 4.1
-Requires: classworlds >= 1.
-Requires(post): classworlds >= 1.1
#Requires: tomcat5-parent
Requires: jaxen >= 1.1
#Requires: jmock >= 1.0.1
Requires: jline >= 0.8.1
-Requires: jsch >= 0.1.20
-Requires(post): jsch >= 0.1.20
-Requires: jtidy >= 1.0
-Requires: maven2-common-poms >= 1.0-5
Requires: maven-jxr >= 1.0
Requires: maven-wagon >= 1.0-0.1.b2
Requires(post): maven-wagon >= 1.0-0.1.b2
Requires: plexus-i18n >= 1.0
Requires: plexus-interactivity >= 1.0
Requires(post): plexus-interactivity >= 1.0
-Requires: plexus-utils >= 1.2
-Requires(post): plexus-utils >= 1.2
Requires: plexus-velocity >= 1.1.2
Requires: pmd >= 3.6
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildArch: noarch
+### }}}
+### descriptions and subpackages {{{
%description
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,
%package javadoc
Summary: Javadoc for %{name}
Group: Development/Documentation
-Requires(post): /bin/rm,/bin/ln
-Requires(postun): /bin/rm
%description javadoc
%{summary}.
Requires: ant >= 1.6.5
Requires: ant-junit
Requires: ant-nodeps
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: maven-wagon >= 1.0-0.1.b2
-Requires: plexus-utils >= 1.2
-Requires: xalan-j2 >= 2.6.0
+Requires: java-plexus-utils >= 1.2
+Requires: java-xalan >= 2.6.0
Requires: xml-commons-apis >= 1.3.02
Requires: plexus-container-default
Requires: %{name} = %{version}-%{release}
Requires: maven-doxia >= 1.0-0.a9
Requires: maven-doxia-sitetools >= 1.0
%endif
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: modello >= 1.0-0.a8.3
%endif
Requires: plexus-archiver >= 1.0
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: maven-shared-file-management >= 1.0
Requires: maven-shared-archiver
Requires: plexus-container-default
Requires: maven-shared-plugin-testing-tools
Requires: maven-shared-test-tools
Requires: jmock >= 1.0.1
-Requires: jdom >= 1.0
-Requires: jaxen >= 1.1
+Requires: java-jdom >= 1.0
+Requires: java-jaxen >= 1.1
Requires: saxpath
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
%description plugin-assembly
Builds an assembly (distribution) of sources and/or binaries.
Requires: plexus-velocity >= 1.1.2
Requires: plexus-mail-sender
Requires: glassfish-javamail
-Requires: jakarta-commons-lang
+Requires: java-commons-lang
Requires: velocity
Requires: maven-shared-reporting-impl
Requires: checkstyle4-optional >= 4.1
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: plexus-velocity >= 1.1.2
Requires: plexus-resources
Requires: maven-shared-reporting-impl
%package plugin-clean
Summary: Clean plugin for maven
Group: Development/Build Tools
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
%description plugin-clean
Cleans up files generated during build.
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-compiler >= 1.5.1
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
%description plugin-compiler
Compiles Java sources.
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-archiver >= 1.0
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: maven-shared-file-management >= 1.0-4
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: plexus-container-default
Requires: maven-shared-dependency-analyzer
Requires: maven-shared-dependency-tree
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils
+Requires: java-plexus-utils
%description plugin-doap
The Maven DOAP Plugin generates a Description of a Project (DOAP) file from
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils
+Requires: java-plexus-utils
Requires: maven-shared-plugin-tools-beanshell >= 2.2
Requires: maven-shared-plugin-tools-java >= 2.2
Requires: commons-httpclient
-Requires: jakarta-commons-logging >= 1.0.4
+Requires: java-commons-logging >= 1.0.4
Requires: maven-shared-file-management >= 1.0-4
Requires: maven-shared-plugin-tools-api
Requires: maven-shared-reporting-impl
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: maven-shared-verifier
-Requires: xmlunit
+Requires: java-xmlunit
%description plugin-ear
Generates an EAR from the current project.
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: plexus-archiver >= 1.0
Requires: jmock >= 1.0.1
-Requires: jdom >= 1.0
-Requires: jaxen >= 1.1
+Requires: java-jdom >= 1.0
+Requires: java-jaxen >= 1.1
Requires: saxpath
Requires: plexus-interactivity >= 1.0
Requires: maven-shared-plugin-testing-tools
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: jakarta-commons-lang
-Requires: plexus-utils
-Requires: jakarta-commons-lang
-Requires: junit >= 3.8.2
+Requires: java-commons-lang
+Requires: java-plexus-utils
+Requires: java-commons-lang
+Requires: java-junit >= 3.8.2
%description plugin-gpg
The Maven GPG Plugin signs all of the project's attached artifacts with GnuPG.
%package plugin-idea
Summary: Idea plugin for maven
Group: Development/Build Tools
-Requires: dom4j >= 1.6.1
+Requires: java-dom4j >= 1.6.1
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: maven-wagon >= 1.0-0.1.b2
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: jmock >= 1.0.1
%description plugin-idea
Requires: maven-shared-file-management >= 1.0-4
Requires: maven-shared-io
%endif
-Requires: bsh
+Requires: java-bsh
%description plugin-invoker
The Maven Invoker Plugin is used to run a set of Maven projects and makes
%package plugin-jar
Summary: Jar plugin for maven
Group: Development/Build Tools
-Requires: jakarta-commons-lang >= 2.1
+Requires: java-commons-lang >= 2.1
Requires: %{name} = %{version}-%{release}
Requires: maven-shared-archiver >= 2.3
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
%description plugin-jar
Builds a JAR from the current project.
%package plugin-javadoc
Summary: Javadoc plugin for maven
Group: Development/Build Tools
-Requires: jakarta-commons-lang >= 2.1
+Requires: java-commons-lang >= 2.1
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
%if %{without bootstrap}
Requires: modello >= 1.0-0.a8.3
%endif
Requires: plexus-archiver >= 1.0
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: maven-shared-reporting-impl
%description plugin-javadoc
%package plugin-one
Summary: One plugin for maven
Group: Development/Build Tools
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-archiver >= 1.0
-Requires: plexus-utils >= 1.2
-Requires: junit >= 3.8.2
+Requires: java-plexus-utils >= 1.2
+Requires: java-junit >= 3.8.2
Requires: maven-shared-model-converter
%description plugin-one
Requires: maven-shared-plugin-tools-java >= 2.2
Requires: maven-shared-reporting-impl
Requires: maven-doxia >= 1.0-0.a9
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: plexus-container-default
%description plugin-plugin
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: plexus-resources
Requires: pmd >= 3.3
-Requires: jaxen >= 1.1
-Requires: xom
+Requires: java-jaxen >= 1.1
+Requires: java-xom
Requires: maven-shared-reporting-impl
%description plugin-pmd
%package plugin-project-info-reports
Summary: Project-info-reports plugin for maven
Group: Development/Build Tools
-Requires: httpunit >= 1.6
-Requires: jakarta-commons-validator >= 1.1.4
+Requires: java-httpunit >= 1.6
+Requires: java-commons-validator >= 1.1.4
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-i18n >= 1.0
%package plugin-remote-resources
Summary: Remote Resources plugin for maven
Group: Development/Build Tools
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-container-default
-Requires: plexus-utils
+Requires: java-plexus-utils
Requires: plexus-velocity
Requires: velocity
%if %{without bootstrap}
%package plugin-repository
Summary: Repository plugin for maven
Group: Development/Build Tools
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-archiver >= 1.0
%package plugin-resources
Summary: Resources plugin for maven
Group: Development/Build Tools
-#Requires: jakarta-commons-io >= 1.1
-Requires: plexus-utils >= 1.2
+#Requires: java-commons-io >= 1.1
+Requires: java-plexus-utils >= 1.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: maven-doxia >= 1.0-0.a9
Requires: maven-doxia-sitetools >= 1.0
%endif
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
%description plugin-site
Generates a site for the current project.
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: plexus-archiver >= 1.0
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
Requires: plexus-container-default >= 1.0
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
%description plugin-source
Builds a JAR of sources for use in IDEs and distribution to the repository.
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
Requires: maven-wagon
-Requires: plexus-utils
-Requires: junit >= 3.8.2
+Requires: java-plexus-utils
+Requires: java-junit >= 3.8.2
%description plugin-stage
Maven Stage Plugin copies artifacts from one repository to another.
%package plugin-verifier
Summary: Verifier plugin for maven
Group: Development/Build Tools
-Requires: junit >= 3.8.2
+Requires: java-junit >= 3.8.2
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
%if %{without bootstrap}
Requires: modello >= 1.0-0.a8.3
%endif
-Requires: plexus-utils >= 1.2
+Requires: java-plexus-utils >= 1.2
%description plugin-verifier
Useful for integration tests - verifies the existence of certain conditions.
Group: Development/Build Tools
Requires: %{name} = %{version}-%{release}
Requires(postun): %{name} = %{version}-%{release}
-Requires: plexus-utils >= 1.2
-Requires: junit >= 3.8.2
+Requires: java-plexus-utils >= 1.2
+Requires: java-junit >= 3.8.2
%description plugin-war
Builds a WAR from the current project.
This package is not meant to be installed but so its contents
can be extracted through rpm2cpio.
%endif
+### }}}
+### prep {{{
%prep
#rpm -ql maven-surefire
cp -p %{SOURCE11} maven/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/artifact/repository/layout/MavenJPackageDepmap.java
cp -p %{SOURCE7} %{maven_settings_file}
-sed -i -e "s|<url>__INTERNAL_REPO_PLACEHOLDER__</url>|<url>file://`pwd`/m2_repo/repository</url>|g" %{maven_settings_file}
+sed -i -e "s|<url>__INTERNAL_REPO_PLACEHOLDER__</url>|<url>file://$(pwd)/m2_repo/repository</url>|g" %{maven_settings_file}
%if %{with bootstrap}
-sed -i -e "s|<url>__EXTERNAL_REPO_PLACEHOLDER__</url>|<url>file://`pwd`/external_repo</url>|g" %{maven_settings_file}
+sed -i -e "s|<url>__EXTERNAL_REPO_PLACEHOLDER__</url>|<url>file://$(pwd)/external_repo</url>|g" %{maven_settings_file}
%else
sed -i -e "s|<url>__EXTERNAL_REPO_PLACEHOLDER__</url>|<url>file://%{_datadir}/%{name}/repository</url>|g" %{maven_settings_file}
%endif
-sed -i -e "s|__INTERNAL_REPO_PLACEHOLDER__|file://`pwd`/m2_repo/repository|g" maven/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
+sed -i -e "s|__INTERNAL_REPO_PLACEHOLDER__|file://$(pwd)/m2_repo/repository|g" maven/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
%if %{with bootstrap}
-sed -i -e "s|__EXTERNAL_REPO_PLACEHOLDER__|file://`pwd`/external_repo|g" maven/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
+sed -i -e "s|__EXTERNAL_REPO_PLACEHOLDER__|file://$(pwd)/external_repo|g" maven/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
%else
sed -i -e "s|__EXTERNAL_REPO_PLACEHOLDER__|file://%{_datadir}/%{name}/repository|g" maven/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
%endif
# Copy the empty dependency jar/pom in place
mkdir -p m2_repo/repository/JPP/maven2/default_poms
-cp -p %{SOURCE13} m2_repo/repository/JPP/maven2/default_poms/JPP.maven-empty-dep.pom
+cp -p %{SOURCE13} m2_repo/repository/JPP/maven2/default_poms/JPP.maven2-empty-dep.pom
cp -p %{SOURCE14} m2_repo/repository/JPP/maven2/empty-dep.jar
+# Patches added by PLD
+find -name pom.xml -o -name '*.pom' | xargs sed -i 's#<version>1\.2_Java1\.3</version>#<version>1.2</version>#g'
+%patch100 -p1
+### }}}
+
+### build {{{
%build
+
+export JAVA_HOME=%{java_home}
+
# Fix maven-remote-resources-plugin
# we now use plexus-velocity 1.1.7 which has the correct descriptor with a hint.
rm -f maven-plugins/maven-remote-resources-plugin/src/main/resources/META-INF/plexus/components.xml
# Wire in jdom dependency
cp -p maven/maven-artifact/pom.xml maven/maven-artifact/pom.xml.withoutjdom
-saxon -o maven/maven-artifact/pom.xml maven/maven-artifact/pom.xml.withoutjdom /usr/share/java-utils/xml/mavenjpp-mapdeps.xsl map=%{SOURCE12}
-saxon -o m2_repo/repository/JPP/maven2/poms/JPP.maven2-artifact.pom maven/maven-artifact/pom.xml.withoutjdom /usr/share/java-utils/xml/mavenjpp-mapdeps.xsl map=%{SOURCE12}
+saxon -o maven/maven-artifact/pom.xml maven/maven-artifact/pom.xml.withoutjdom /usr/share/java-utils/xml/maven2jpp-mapdeps.xsl map=%{SOURCE12}
+saxon -o m2_repo/repository/JPP/maven2/poms/JPP.maven2-artifact.pom maven/maven-artifact/pom.xml.withoutjdom /usr/share/java-utils/xml/maven2jpp-mapdeps.xsl map=%{SOURCE12}
# for uber jar
cp -p maven/maven-core/pom.xml maven/maven-core/pom.xml.withoutjdom
-saxon -o maven/maven-core/pom.xml maven/maven-core/pom.xml.withoutjdom /usr/share/java-utils/xml/mavenjpp-mapdeps.xsl map=%{SOURCE12}
+saxon -o maven/maven-core/pom.xml maven/maven-core/pom.xml.withoutjdom /usr/share/java-utils/xml/maven2jpp-mapdeps.xsl map=%{SOURCE12}
cp -p maven/bootstrap/bootstrap-installer/pom.xml maven/bootstrap/bootstrap-installer/pom.xml.withoutjdom
-saxon -o maven/bootstrap/bootstrap-installer/pom.xml maven/bootstrap/bootstrap-installer/pom.xml.withoutjdom /usr/share/java-utils/xml/mavenjpp-mapdeps.xsl map=%{SOURCE12}
+saxon -o maven/bootstrap/bootstrap-installer/pom.xml maven/bootstrap/bootstrap-installer/pom.xml.withoutjdom /usr/share/java-utils/xml/maven2jpp-mapdeps.xsl map=%{SOURCE12}
mkdir -p maven/maven-plugins/maven-assembly-plugin/target/generated-resources/plexus/META-INF/plexus/components.xml
touch maven/maven-plugins/maven-assembly-plugin/target/generated-resources/plexus/META-INF/plexus/components.xml
# Build maven
-export MAVEN_REPO_LOCAL=`pwd`/%{repo_dir}
+export MAVEN_REPO_LOCAL=$(pwd)/%{repo_dir}
export M2_SETTINGS_FILE=%{maven_settings_file}
# In bootstrap mode, we want it looking at default poms only (controlled via
# breaking build.
export MAVEN_OPTS="$MAVEN_OPTS -Dmaven.repo.local=$MAVEN_REPO_LOCAL -Dmaven2.ignore.versions -Dmaven2.offline.mode -Dmaven.test.failure.ignore=true -Dmaven2.jpp.depmap.file=%{SOURCE17}"
-export M2_HOME=`pwd`/maven/home/apache-%{name}-%{version}
+export M2_HOME=$(pwd)/maven/home/apache-%{name}-%{version}
%if %{with bootstrap}
-export MAVEN_OPTS="$MAVEN_OPTS -Dmaven2.jpp.default.repo=`pwd`/external_repo"
+export MAVEN_OPTS="$MAVEN_OPTS -Dmaven2.jpp.default.repo=$(pwd)/external_repo"
%else
export MAVEN_OPTS="$MAVEN_OPTS -Dmaven2.jpp.default.repo=%{_datadir}/%{name}/repository"
%endif
[ -z "$JAVA_HOME" ] && JAVA_HOME=%{_jvmdir}/java
export JAVA_HOME
-mkdir bootstrap/lib
-ln -s $(build-classpath jdom) bootstrap/lib/jdom.jar
-export CLASSPATH=`pwd`/bootstrap/lib/jdom.jar
+mkdir -p bootstrap/lib
+ln -sf $(build-classpath jdom) bootstrap/lib/jdom.jar
+export CLASSPATH=$(pwd)/bootstrap/lib/jdom.jar
export JDOMCLASS=$CLASSPATH
-./bootstrap.sh --prefix=`pwd`/home --settings=%{maven_settings_file}
+sh -x ./bootstrap.sh --prefix=$(pwd)/home --settings=%{maven_settings_file}
unset CLASSPATH
cd - # cd %{name} }}}
# plugin which makes this necessary. See:
# http://jira.codehaus.org/browse/MJAVADOC-157
-(cd maven
+(cd maven # {{{
for dir in `find -maxdepth 1 -type d`; do
if [ "$dir" == "./maven-core-it-runner" ]; then
$M2_HOME/bin/mvn -s %{maven_settings_file} $MAVEN_OPTS -Dmaven2.usejppjars org.apache.maven.plugins:maven-javadoc-plugin:2.3-SNAPSHOT:javadoc
cd - # }}}
done
-)
-(cd maven-plugins
+) # }}}
+
+(cd maven-plugins # {{{
for dir in `find -maxdepth 1 -type d`; do
if [ "$dir" == "./maven-clover-plugin" ]; then
$M2_HOME/bin/mvn -s %{maven_settings_file} $MAVEN_OPTS -Dmaven2.usejppjars org.apache.maven.plugins:maven-javadoc-plugin:2.3-SNAPSHOT:javadoc
cd - # }}}
done
-)
+) # }}}
+### }}}
+### install {{{
%install
rm -rf $RPM_BUILD_ROOT
-export M2_HOME=`pwd`/maven/home/apache-%{name}-%{version}
+export M2_HOME=$(pwd)/maven/home/apache-%{name}-%{version}
# Repository
install -dm 755 $RPM_BUILD_ROOT%{_datadir}/%{name}/repository
cp -p %{buildroot}%{_javadir}/%{name}/${jar} %{buildroot}%{repodirlib}/maven-${jar}
done
%endif
+### }}}
%clean
rm -rf $RPM_BUILD_ROOT
%defattr(0644,root,root,0755)
%{_javadir}/repository.jboss.com
%endif
-
-%changelog
-* Fri Mar 12 2010 David Walluck <dwalluck@redhat.com> 0:2.0.8-26
-- more merging with RHEL-4-EP-5 0:2.0.8-10.40
-
-* Fri Mar 12 2010 David Walluck <dwalluck@redhat.com> 0:2.0.8-25
-- update java source files from RHEL-4-EP-5 0:2.0.8-10.40
-
-* Thu Mar 11 2010 David Walluck <dwalluck@redhat.com> 0:2.0.8-24
-- merge some patches from RHEL-4-EP-5 0:2.0.8-10.40
-
-* Wed Sep 02 2009 Ralph Apel <r.apel@r-apel.de> 0:2.0.8-23
-- rebuild without_bootstrap
-
-* Wed Sep 02 2009 Ralph Apel <r.apel@r-apel.de> 0:2.0.8-22
-- try to relax maven-surefire requirements
-- drop excessive BRs in bootstrap mode
-
-* Thu Jun 11 2009 David Walluck <dwalluck@redhat.com> 0:2.0.8-21
-- add repolib
-
-* Fri May 22 2009 David Walluck <dwalluck@redhat.com> 0:2.0.8-20
-- update maven-surefire BuildRequires
-
-* Mon May 04 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-19
-- Rebuild
-
-* Tue Apr 21 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-18
-- Build model-all.jar for model-v3 needed by maven-shared-model-converter, Merged from RHEL-4-EP-5 0:2.0.8-10.17
-
-* Tue Apr 21 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-17
-- rebuild in non-bootstrap mode with plexus-cdc alpha10
-
-* Tue Apr 21 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-16
-- rebuild in bootstrap mode with plexus-cdc alpha10
-
-* Thu Apr 02 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-15
-- fix jpp depmap issues of maven-shared-plugin-tools-api, maven-shared-plugin-tools-beanshell, maven-shared-plugin-tools-java
-- cp maven-assembly-plugin/../components.xml manually to fix java.io.FileNotFoundException
-- rebuild in non-bootstrap mode
-
-* Thu Apr 02 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-14
-- rebuild in bootstrap mode to fix PluginDescriptor issue
-
-* Wed Apr 01 2009 Fernando Nasser <fnasser@redhat.com> - 0:2.0.8-13
-- Build in bootstrap mode
-
-* Mon Mar 23 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-12
-- add maven2-plugins-jpprepolayout.patch
-
-* Mon Mar 23 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-11
-- rebuild in non-bootstrap mode
-
-* Mon Mar 23 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-10
-- remove Obsoletes: maven-surefire-plugin
-
-* Tue Mar 16 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-9
-- Merge from RHEL-4-EP-5, add missing BRs/Reqs, add patches
-
-* Tue Mar 11 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-8
-- Add missing Requires: maven-shared-plugin-tools-java, maven-shared-plugin-tools-beanshell for subpackage plugin-plugin
-
-* Tue Mar 10 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-7
-- Add Requires: tomcat5, excalibur-avalon-logkit, excalibur-avalon-framework
-
-* Wed Mar 05 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-6
-- Provides: maven2-bootstrap >= 2.0.7
-
-* Wed Mar 05 2009 Yong Yang <yyang@redhat.com> - 0:2.0.8-5
-- Add Obsoletes maven2-bootstrap <= 2.0.7, maven-release, maven-surefire-plugin
-
-* Wed Mar 04 2009 Deepak Bhole <dbhole@redhat.com> - 0:2.0.8-4
-- Add patch for commons-cli 1.1
-
-* Fri Feb 20 2009 Yong Yang <yyang@redhat.com> 2.0.8-3
-- add new maven-parent jpp depmap
-
-* Wed Feb 18 2009 Yong Yang <yyang@redhat.com> 2.0.8-2
-- Import from dbhloes maven2 2.0.8 list, Initializing build with bootstrap mode on JPP6
-- Fix many BRs, jpp depmaps
-
-* Tue Mar 20 2007 Deepak Bhole <dbhole@redhat.com> 0:2.0.4-10jpp.6
-- Build without bootstrap
-
-* Tue Mar 20 2007 Deepak Bhole <dbhole@redhat.com> 2.0.4-10jpp.5
-- Force gcj_support to 0
-
-* Tue Mar 20 2007 Deepak Bhole <dbhole@redhat.com> 2.0.4-10jpp.4
-- Build without gcj for now
-
-* Fri Mar 16 2007 Deepak Bhole <dbhole@redhat.com> 0:2.0.4-10jpp.3
-- Added gcj support
-- Fix up per Fedora spec
-- Added source locations/generation methods for binary %%SOURCEes
-- Added workaround for gcj bug that causes plugin reload to fail
-
-* Wed Dec 13 2006 Deepak Bhole <dbhole@redhat.com> 2.0.4-10jpp.2
-- Build without bootstrap
-
-* Mon Dec 04 2006 Deepak Bhole <dbhole@redhat.com> 2.0.4-10jpp.1
-- Synch with jpp
-- From dbhole@redhat:
- - Added a new mapping system
- - Added a jpp howto
- - Added support for plugin mixing
- - Wired in /usr/share/maven2/repository as one of the default repos
- - Moved poms over to maven2-common-poms
- - Reverted to original plugin groupid's
- - Installer maven-{artifact-ant,embedder,meeper,script}
-- From r.apel@r-apel.de:
- - Fix maven-site-plugin pom in maven2-jpp-mapping.patch
- - Add maven-shared-file-management to plugin-assembly Requires
- - Add post/postun Requires for javadoc
-
-* Wed Jul 12 2006 Fernando Nasser <fnasser@redhat.com> - 0:2.0.4-4jpp_1rh
-- Merge with upstream
-
-* Mon Jul 10 2006 Deepak Bhole <dbhole@redhat.com> - 0:2.0.4-4jpp
-- Additional fixes (mostly to the dependency transformer xsl) for itests.
-- Added a --with regereratedpoms switch.
-
-* Wed Jul 05 2006 Deepak Bhole <dbhole@redhat.com> - 0:2.0.4-3jpp
-- Added partial support for it tests, and appropriate fixes.
-
-* Thu Jun 29 2006 Fernando Nasser <fnasser@redhat.com> - 0:2.0.4-2jpp_2rh
-- Rebuild
-
-* Tue Jun 27 2006 Fernando Nasser <fnasser@redhat.com> - 0:2.0.4-2jpp_1rh
-- Full build
-
-* Mon Jun 26 2006 Fernando Nasser <fnasser@redhat.com> - 0:2.0.4-2jpp_0rh
-- Merge with upstream
-- Bootstrap building
-
-* Thu Jun 22 2006 Deepak Bhole <dbhole@redhat.com> - 0:2.0.4-2jpp
-- Fixes for Tuscany building
-
-* Fri Jun 02 2006 Deepak Bhole <dbhole@redhat.com> - 0:2.0.4-1jpp
-- Upgrade to 2.0.4
-
-* Wed May 31 2006 Fernando Nasser <fnasser@redhat.com> - 0:2.0.2-1jpp_1rh
-- First Red Hat build
-
-* Wed Feb 22 2006 Deepak Bhole <dbhole@redhat.com> - 0:2.0.2-1jpp
-- Initial build.
-# vim:foldmethod=marker