197 lines
7.2 KiB
RPMSpec
197 lines
7.2 KiB
RPMSpec
%global base_name launcher
|
|
%global short_name commons-%{base_name}
|
|
|
|
Name: apache-%{short_name}
|
|
Version: 1.1
|
|
Release: 7.20100521svn936225%{?dist}
|
|
Summary: A cross platform Java application launcher
|
|
Group: Development/Libraries
|
|
License: ASL 2.0
|
|
URL: http://commons.apache.org/%{base_name}/
|
|
|
|
# The last release of this package was many years ago and in that time there
|
|
# have only been two extremely minor changes to the source code, [1] and [2].
|
|
# It seems a new release is unlikely to be forthcoming in the near future.
|
|
#
|
|
# [1] - http://svn.apache.org/viewvc/commons/proper/launcher/trunk/src/java/org/apache/commons/launcher/ChildMain.java?r1=138801&r2=138803
|
|
# [2] - http://svn.apache.org/viewvc/commons/proper/launcher/trunk/src/java/org/apache/commons/launcher/Launcher.java?r1=138801&r2=138802
|
|
#
|
|
# During that time however, support for the maven 2 build system has been
|
|
# added. So in order to make my life easier as a maintainer, with regard to
|
|
# supporting OSGi manifests and installing poms, etc, I have elected to package
|
|
# a maven2 supporting snapshot instead of maintaining patches in our SRPM. As
|
|
# an added bonus, the snapshot also has more accurate javadocs.
|
|
#
|
|
# How to generate source tarball from source control:
|
|
# $ svn export -r 936225 http://svn.apache.org/repos/asf/commons/proper/launcher/trunk/ commons-launcher-1.1-src
|
|
# $ tar -zcf commons-launcher-1.1-src.tar.gz commons-launcher-1.1-src
|
|
Source0: %{short_name}-%{version}-src.tar.gz
|
|
|
|
# remove unnecessary build dependency on ant-optional (ant no longer ships this jar)
|
|
Patch0: %{short_name}-pom.patch
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
BuildArch: noarch
|
|
|
|
BuildRequires: java-devel >= 1:1.6.0
|
|
BuildRequires: jpackage-utils
|
|
BuildRequires: maven-antrun-plugin
|
|
BuildRequires: maven-assembly-plugin
|
|
BuildRequires: maven-compiler-plugin
|
|
BuildRequires: maven-idea-plugin
|
|
BuildRequires: maven-install-plugin
|
|
BuildRequires: maven-jar-plugin
|
|
BuildRequires: maven-javadoc-plugin
|
|
BuildRequires: maven-resources-plugin
|
|
BuildRequires: maven-doxia-sitetools
|
|
BuildRequires: maven-plugin-bundle
|
|
BuildRequires: maven-surefire-maven-plugin
|
|
BuildRequires: maven-surefire-provider-junit
|
|
Requires: java >= 1:1.6.0
|
|
Requires: jpackage-utils
|
|
Requires(post):jpackage-utils
|
|
Requires(postun):jpackage-utils
|
|
|
|
Provides: jakarta-%{short_name} = %{version}-%{release}
|
|
Obsoletes: jakarta-%{short_name} < %{version}-%{release}
|
|
|
|
%description
|
|
Commons-launcher eliminates the need for a batch or shell script to launch a
|
|
Java class. Some situations where elimination of a batch or shell script may
|
|
be desirable are:
|
|
|
|
* You want to avoid having to determining where certain application paths are
|
|
e.g. your application's home directory, etc. Determining this dynamically in
|
|
a Windows batch scripts is very tricky on some versions of Windows or when
|
|
soft links are used on Unix platforms.
|
|
|
|
* You want to avoid having to handle native file and path separators or native
|
|
path quoting issues.
|
|
|
|
* You need to enforce certain system properties.
|
|
|
|
* You want to allow users to pass in custom JVM arguments or system properties
|
|
without having to parse and reorder arguments in your script. This can be
|
|
tricky and/or messy in batch and shell scripts.
|
|
|
|
* You want to bootstrap system properties from a configuration file instead
|
|
hard-coding them in your batch and shell scripts.
|
|
|
|
* You want to provide localized error messages which is very tricky to do in
|
|
batch and shell scripts.
|
|
|
|
%package javadoc
|
|
Summary: API documentation for %{name}
|
|
Group: Documentation
|
|
Requires: jpackage-utils
|
|
Obsoletes: jakarta-%{short_name}-javadoc < %{version}-%{release}
|
|
|
|
%description javadoc
|
|
%{summary}.
|
|
|
|
%prep
|
|
%setup -q -n %{short_name}-%{version}-src
|
|
|
|
# apply patches
|
|
%patch0 -p0 -b .orig
|
|
|
|
sed -i 's/\r//' README.txt LICENSE.txt NOTICE.txt
|
|
sed -i "s|\<groupId\>ant\<\/groupId\>|<groupId>org.apache.ant</groupId>|g" build.xml
|
|
|
|
%build
|
|
export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
|
|
mkdir -p $MAVEN_REPO_LOCAL
|
|
|
|
mvn-jpp -Dmaven.repo.local=$MAVEN_REPO_LOCAL install javadoc:javadoc
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
|
|
# jars
|
|
install -pD -T target/%{short_name}-%{version}.jar \
|
|
%{buildroot}%{_javadir}/%{short_name}-%{version}.jar
|
|
(cd %{buildroot}%{_javadir} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed "s|%{short_name}|%{name}|g"`; done)
|
|
(cd %{buildroot}%{_javadir} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
|
|
|
|
# javadocs
|
|
install -d -m 755 %{buildroot}%{_javadocdir}/%{name}-%{version}
|
|
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}-%{version}
|
|
ln -s %{name}-%{version} %{buildroot}%{_javadocdir}/%{name}
|
|
|
|
# pom
|
|
install -pD -T -m 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{short_name}.pom
|
|
%add_to_maven_depmap org.apache.commons %{short_name} %{version} JPP %{short_name}
|
|
|
|
# following line is only for backwards compatibility. New packages
|
|
# should use proper groupid org.apache.commons
|
|
%add_to_maven_depmap %{short_name} %{short_name} %{version} JPP %{short_name}
|
|
|
|
%clean
|
|
rm -rf %{buildroot}
|
|
|
|
%post
|
|
%update_maven_depmap
|
|
|
|
%postun
|
|
%update_maven_depmap
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc LICENSE.txt NOTICE.txt README.txt
|
|
%{_mavendepmapfragdir}/*
|
|
%{_mavenpomdir}/*
|
|
%{_javadir}/*
|
|
|
|
%files javadoc
|
|
%defattr(-,root,root,-)
|
|
%{_javadocdir}/%{name}-%{version}
|
|
%{_javadocdir}/%{name}
|
|
|
|
%changelog
|
|
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-7.20100521svn936225
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
|
|
* Wed Dec 8 2010 Alexander Kurtakov <akurtako@redhat.com> 1.1-6.20100521svn936225
|
|
- Fix build due to changed ant groupId.
|
|
|
|
* Fri May 21 2010 Mat Booth <fedora@matbooth.co.uk> - 1.1-5.20100521svn936225
|
|
- Version like a post release snapshot, not a pre release snapshot.
|
|
- Correct dep-map names.
|
|
|
|
* Sat May 15 2010 Mat Booth <fedora@matbooth.co.uk>
|
|
- Rename package (jakarta-commons-launcher->apache-commons-launcher).
|
|
- Update to 1.2 snapshot.
|
|
- Rewrite spec file to build using upstream-preferred maven instead of ant.
|
|
- Install pom and add to maven dep-map.
|
|
- Require Java 1.6 because javadoc generation fails on GCJ.
|
|
- Drop GCJ AOT support.
|
|
- Use global instead of define.
|
|
|
|
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.1-4.4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
|
|
|
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.1-3.4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
|
|
|
* Wed Jul 9 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0:1.1-2.4
|
|
- drop repotag
|
|
- fix license tag
|
|
|
|
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0:1.1-2jpp.3
|
|
- Autorebuild for GCC 4.3
|
|
|
|
* Fri Sep 07 2007 Matt Wringe <mwringe@redhat.com> - 0:1.1-1jpp.3
|
|
- Fix unowned directory
|
|
|
|
* Fri Feb 09 2007 Matt Wringe <mwringe@redhat.com> - 0:1.1-1jpp.2
|
|
- Fix macro naming for post and postun
|
|
|
|
* Tue Feb 06 2007 Matt Wringe <mwringe@redhat.com> - 0:1.1-1jpp.1
|
|
- Merge with upstream jpp spec file
|
|
- Add missing jpackage utils requirements on pre and postun
|
|
- Add missing requires on java
|
|
- Fix some rpmlint issues
|
|
|
|
* Fri Nov 17 2006 Jason Corley <jason.corley@gmail.com> - 0:1.1-1jpp
|
|
- 1.1
|