184 lines
6 KiB
RPMSpec
184 lines
6 KiB
RPMSpec
Name: apfloat-java
|
|
Version: 1.8.2
|
|
Release: 3%{?dist}
|
|
Summary: High performance arbitrary precision arithmetic library for Java
|
|
License: LGPLv2+
|
|
URL: http://www.apfloat.org/apfloat_java/
|
|
Source0: http://www.apfloat.org/apfloat_java/apfloat-%{version}.zip
|
|
Source1: http://repo1.maven.org/maven2/org/apfloat/apfloat/%{version}/apfloat-%{version}.pom
|
|
Source2: http://repo1.maven.org/maven2/org/apfloat/apfloat-calc/%{version}/apfloat-calc-%{version}.pom
|
|
Source3: http://repo1.maven.org/maven2/org/apfloat/apfloat-samples/%{version}/apfloat-samples-%{version}.pom
|
|
Source4: http://repo1.maven.org/maven2/org/apfloat/apfloat-parent/%{version}/apfloat-parent-%{version}.pom
|
|
# Apfloat Java all files without license headers
|
|
# Thise is the upstream reply
|
|
Source100: ReApfloatJavalicenseheaders.eml
|
|
|
|
BuildRequires: maven-local
|
|
BuildRequires: mvn(junit:junit)
|
|
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
|
|
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
|
|
BuildRequires: mvn(org.codehaus.mojo:javacc-maven-plugin)
|
|
|
|
BuildArch: noarch
|
|
|
|
%description
|
|
Apfloat is a high performance arbitrary precision arithmetic library.
|
|
You can perform calculations with a precision of millions of digits
|
|
with it. It's as simple to use as Java's BigDecimal or BigInteger classes,
|
|
but performs a lot better with extreme precision numbers (more than a few
|
|
hundred digits). Also, a full suite of mathematical functions for arbitrary
|
|
precision numbers are available: all those existing in java.lang.Math and
|
|
more.
|
|
|
|
%package calc
|
|
Summary: Apfloat Calc
|
|
|
|
%description calc
|
|
Interactive arbitrary precision calculator application.
|
|
|
|
%package javadoc
|
|
Summary: Javadoc for %{name}
|
|
|
|
%description javadoc
|
|
This package contains javadoc for %{name}.
|
|
|
|
%package parent
|
|
Summary: Apfloat Parent POM
|
|
|
|
%description parent
|
|
Administrative Parent POM for Apfloat.
|
|
|
|
%package samples
|
|
Summary: Apfloat Samples
|
|
|
|
%description samples
|
|
Sample programs for apfloat for calculating pi.
|
|
|
|
%prep
|
|
%setup -q -c
|
|
# Extract missing services resources
|
|
%jar -xf lib/apfloat.jar
|
|
# Cleanup
|
|
find . -name "*.jar" -print -delete
|
|
find . -name "*.class" -print -delete
|
|
rm -r applet docs org lib
|
|
|
|
# Prepare source directories structures
|
|
mkdir -p apfloat/src/main/java/org/apfloat
|
|
mv source/org/apfloat/*.java apfloat/src/main/java/org/apfloat
|
|
mv source/org/apfloat/internal apfloat/src/main/java/org/apfloat
|
|
mv source/org/apfloat/spi apfloat/src/main/java/org/apfloat
|
|
mkdir -p apfloat/src/main/resources/META-INF
|
|
mv META-INF/services apfloat/src/main/resources/META-INF
|
|
rm -r META-INF
|
|
|
|
mkdir -p apfloat-calc/src/main/java/org/apfloat
|
|
mv source/org/apfloat/calc apfloat-calc/src/main/java/org/apfloat
|
|
# re-generate
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/CalculatorParser.java
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/CalculatorParserConstants.java
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/CalculatorParserTokenManager.java
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/ParseException.java
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/SimpleCharStream.java
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/Token.java
|
|
rm apfloat-calc/src/main/java/org/apfloat/calc/TokenMgrError.java
|
|
|
|
mkdir -p apfloat-samples/src/main/java/org/apfloat
|
|
mv source/org/apfloat/samples apfloat-samples/src/main/java/org/apfloat
|
|
|
|
cp -p %SOURCE1 apfloat/pom.xml
|
|
cp -p %SOURCE2 apfloat-calc/pom.xml
|
|
cp -p %SOURCE3 apfloat-samples/pom.xml
|
|
cp -p %SOURCE4 pom.xml
|
|
|
|
%pom_disable_module apfloat-applet
|
|
%pom_disable_module apfloat-jscience
|
|
|
|
# Disable classpath entries in manifest files
|
|
%pom_xpath_remove -r "pom:addClasspath" apfloat-calc apfloat-samples
|
|
%pom_xpath_remove "pom:classpathLayoutType" apfloat-calc
|
|
%pom_xpath_remove "pom:customClasspathLayout" apfloat-calc
|
|
# Fix encoding
|
|
%pom_xpath_set -r "pom:properties/pom:project.build.sourceEncoding" UTF-8
|
|
%pom_xpath_set -r "pom:plugin[pom:artifactId='maven-javadoc-plugin']/pom:configuration/pom:docencoding" UTF-8 apfloat-calc apfloat-samples
|
|
# Disable signatures
|
|
%pom_remove_plugin -r :maven-gpg-plugin
|
|
%pom_xpath_remove "pom:properties/pom:gpg.useagent"
|
|
|
|
# Uanavailable resources
|
|
%pom_remove_plugin :maven-antrun-plugin apfloat
|
|
%pom_xpath_remove "pom:build/pom:filters" apfloat
|
|
|
|
# OSGi support
|
|
%pom_xpath_set "pom:project/pom:packaging" bundle apfloat
|
|
%pom_add_plugin org.apache.felix:maven-bundle-plugin:2.5.4 apfloat '
|
|
<extensions>true</extensions>
|
|
<configuration>
|
|
<instructions>
|
|
<Bundle-Version>${project.version}</Bundle-Version>
|
|
</instructions>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>bundle-manifest</id>
|
|
<phase>process-classes</phase>
|
|
<goals>
|
|
<goal>manifest</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>'
|
|
|
|
for p in apfloat-calc \
|
|
apfloat-samples; do
|
|
%pom_xpath_inject "pom:project" "<packaging>bundle</packaging>" ${p}
|
|
%pom_add_plugin org.apache.felix:maven-bundle-plugin:2.5.4 ${p} '
|
|
<extensions>true</extensions>
|
|
<configuration>
|
|
<instructions>
|
|
<Bundle-Version>${project.version}</Bundle-Version>
|
|
</instructions>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>bundle-manifest</id>
|
|
<phase>process-classes</phase>
|
|
<goals>
|
|
<goal>manifest</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>'
|
|
done
|
|
|
|
# fix non ASCII chars
|
|
native2ascii -encoding UTF8 apfloat/src/main/java/org/apfloat/GCDHelper.java \
|
|
apfloat/src/main/java/org/apfloat/GCDHelper.java
|
|
|
|
%build
|
|
|
|
%mvn_build -s
|
|
|
|
%install
|
|
%mvn_install
|
|
|
|
%files -f .mfiles-apfloat
|
|
%doc readme.html
|
|
%license lgpl.txt
|
|
|
|
%files calc -f .mfiles-apfloat-calc
|
|
%files javadoc -f .mfiles-javadoc
|
|
%license lgpl.txt
|
|
|
|
%files parent -f .mfiles-apfloat-parent
|
|
%license lgpl.txt
|
|
|
|
%files samples -f .mfiles-apfloat-samples
|
|
|
|
%changelog
|
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.2-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
|
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.2-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
|
|
* Wed Oct 28 2015 gil cattaneo <puntogil@libero.it> 1.8.2-1
|
|
- initial rpm
|