[plexus-ant-factory] Update to maven 3

Stanislav Ochotnicky sochotni at fedoraproject.org
Fri Jul 27 08:55:49 UTC 2012


commit 67d7c32f3a805f28fc6bb5d2f604e030be67ac29
Author: Mikolaj Izdebski <mizdebsk at redhat.com>
Date:   Thu Apr 5 17:10:06 2012 +0200

    Update to maven 3
    
    - Replace nonstandard groups names with standard ones
    - Drop support for non-maven build
    - Add workarounds for RPM bug
    - Cleanup according to Fedora Packaging Guidelines
    - Include missing copyright file in javadoc package

 plexus-ant-factory.spec |  142 ++++++++++++++++-------------------------------
 1 files changed, 47 insertions(+), 95 deletions(-)
---
diff --git a/plexus-ant-factory.spec b/plexus-ant-factory.spec
index 71ca2a6..b99565c 100644
--- a/plexus-ant-factory.spec
+++ b/plexus-ant-factory.spec
@@ -28,158 +28,110 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
 
-%define with_maven %{!?_without_maven:1}%{?_without_maven:0}
-%define without_maven %{?_without_maven:1}%{!?_without_maven:0}
-
 %define parent plexus
 %define subname ant-factory
 
 Name:           %{parent}-%{subname}
 Version:        1.0
-Release:        0.7.a2.1.2%{?dist}
+Release:        0.8.a2.1.2%{?dist}
 Epoch:          0
 Summary:        Plexus Ant component factory
 # Email from copyright holder confirms license.
 License:        ASL 2.0
-Group:          Development/Java
+Group:          Development/Tools
 URL:            http://plexus.codehaus.org/
 Source0:        %{name}-src.tar.bz2
 # svn export http://svn.codehaus.org/plexus/tags/plexus-ant-factory-1.0-alpha-2.1/ plexus-ant-factory/
 # tar cjf plexus-ant-factory-src.tar.bz2 plexus-ant-factory/
 Source1:        %{name}-jpp-depmap.xml
-Source2:        %{name}-build.xml
-Source3:	plexus-ant-factory_license_and_copyright.txt
-
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Source2:        plexus-ant-factory_license_and_copyright.txt
 
 BuildArch:      noarch
 
 BuildRequires:  jpackage-utils >= 0:1.7.2
-%if %{with_maven}
-BuildRequires:    maven2 >= 2.0.4-9
-BuildRequires:    maven2-plugin-compiler
-BuildRequires:    maven2-plugin-install
-BuildRequires:    maven2-plugin-jar
-BuildRequires:    maven2-plugin-javadoc
-BuildRequires:    maven2-plugin-resources
-BuildRequires:    maven-surefire-maven-plugin
-BuildRequires:    maven-surefire-provider-junit
-BuildRequires:    maven-doxia-sitetools
-BuildRequires:    maven2-common-poms >= 1.0-2
-%endif
-BuildRequires:    ant
-BuildRequires:    classworlds
-BuildRequires:    plexus-container-default
-BuildRequires:    plexus-utils
+BuildRequires:  maven
+BuildRequires:  maven-compiler-plugin
+BuildRequires:  maven-install-plugin
+BuildRequires:  maven-jar-plugin
+BuildRequires:  maven-javadoc-plugin
+BuildRequires:  maven-resources-plugin
+BuildRequires:  maven-surefire-maven-plugin
+BuildRequires:  maven-surefire-provider-junit
+BuildRequires:  maven-doxia-sitetools
+BuildRequires:  maven2-common-poms >= 1.0-2
+
+BuildRequires:  ant
+BuildRequires:  classworlds
+BuildRequires:  plexus-container-default
+BuildRequires:  plexus-utils
 
 Requires:    ant
 Requires:    classworlds
 Requires:    plexus-container-default
 Requires:    plexus-utils
 
-Requires(post):    jpackage-utils >= 0:1.7.2
-Requires(postun):  jpackage-utils >= 0:1.7.2
-
 %description
 Ant component class creator for Plexus.
 
-%if %{with_maven}
 %package javadoc
 Summary:        Javadoc for %{name}
-Group:          Development/Documentation
-# for /bin/rm and /bin/ls
-Requires(pre):    coreutils
-Requires(post):   coreutils
+Group:          Documentation
+Requires:       jpackage-utils
 
 %description javadoc
 Javadoc for %{name}.
-%endif
 
 %prep
 %setup -q -n %{name}
-cp %{SOURCE3} .
-
-%if %{without_maven}
-    cp -p %{SOURCE2} build.xml
-%endif
+cp %{SOURCE2} .
 
 
 %build
-
-%if %{with_maven}
-    export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
-    mkdir -p $MAVEN_REPO_LOCAL
-
-    mvn-jpp \
-        -e \
-        -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
-        install javadoc:javadoc
-
-%else
-
-    mkdir lib
-    build-jar-repository \
-                             -s -p \
-                            lib ant ant-launcher \
-                            classworlds \
-                            plexus/container-default \
-                            plexus/utils
-    ant -Dmaven.mode.offline=true
-
-%endif
+mvn-rpmbuild -e install javadoc:aggregate
 
 %install
-rm -rf $RPM_BUILD_ROOT
-# jars
-install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/plexus
-install -pm 644 target/*.jar \
-      $RPM_BUILD_ROOT%{_javadir}/%{parent}/%{subname}-%{version}.jar
-%add_to_maven_depmap org.codehaus.plexus %{name} 1.0-alpha-1 JPP/%{parent} %{subname}
 
-(cd $RPM_BUILD_ROOT%{_javadir}/%{parent} && for jar in *-%{version}*; \
-  do ln -sf ${jar} `echo $jar| sed  "s|-%{version}||g"`; done)
+# jars
+install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{parent}
+install -pm 644 target/%{name}-%{version}*.jar \
+      $RPM_BUILD_ROOT%{_javadir}/%{parent}/%{subname}.jar
 
 # pom
-install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/maven2/poms
+install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir}
 install -pm 644 pom.xml \
-          $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{parent}-%{subname}.pom
+          $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.%{parent}-%{subname}.pom
+%add_maven_depmap JPP.%{parent}-%{subname}.pom %{parent}/%{subname}.jar
 
 # javadoc
-%if %{with_maven}
-    install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
-
-    cp -pr target/site/apidocs/* \
-        $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}/
-
-    ln -s %{name}-%{version} \
-                $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink
-%endif
+install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
+cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%post
-%update_maven_depmap
-
-%postun
-%update_maven_depmap
+%pre javadoc
+# workaround for rpm bug, can be removed in F-20
+[ $1 -gt 1 ] && [ -L %{_javadocdir}/%{name} ] && \
+rm -rf $(readlink -f %{_javadocdir}/%{name}) %{_javadocdir}/%{name} || :
 
 %files
-%defattr(-,root,root,-)
 %doc plexus-ant-factory_license_and_copyright.txt
 %dir %{_javadir}/plexus
-%{_javadir}/plexus
-%{_datadir}/maven2
-%{_mavendepmapfragdir}
+%{_javadir}/%{parent}/%{subname}.jar
+%{_mavenpomdir}/JPP.%{parent}-%{subname}.pom
+%{_mavendepmapfragdir}/%{name}
 
-%if %{with_maven}
 %files javadoc
-%defattr(-,root,root,-)
+%doc plexus-ant-factory_license_and_copyright.txt
 %doc %{_javadocdir}/*
-%endif
 
 
 %changelog
+* Fri Jul  27 2012 Mikolaj Izdebski <mizdebsk at redhat.com> - 0:1.0-0.8.a2.1.2
+- Update to maven 3
+- Replace nonstandard groups names with standard ones
+- Drop support for non-maven build
+- Add workarounds for RPM bug
+- Cleanup according to Fedora Packaging Guidelines
+- Include missing copyright file in javadoc package
+
 * Sat Jul 21 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:1.0-0.7.a2.1.2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
 


More information about the scm-commits mailing list