142 lines
4.8 KiB
RPMSpec
142 lines
4.8 KiB
RPMSpec
#
|
||
# spec file for package ujmp
|
||
#
|
||
# Copyright (c) 2024 SUSE LLC
|
||
#
|
||
# All modifications and additions to the file contributed by third parties
|
||
# remain the property of their copyright owners, unless otherwise agreed
|
||
# upon. The license for this file, and modifications and additions to the
|
||
# file, is the same license as for the pristine package itself (unless the
|
||
# license for the pristine package is not an Open Source License, in which
|
||
# case the license is the MIT License). An "Open Source License" is a
|
||
# license that conforms to the Open Source Definition (Version 1.9)
|
||
# published by the Open Source Initiative.
|
||
|
||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||
#
|
||
|
||
|
||
Name: ujmp
|
||
Version: 0.3.0
|
||
Release: 0
|
||
Summary: Java Library for dense and sparse matrix computations and linear algebra
|
||
License: LGPL-3.0-only
|
||
Group: Development/Libraries/Java
|
||
URL: https://ujmp.org/
|
||
Source0: https://github.com/ujmp/universal-java-matrix-package/archive/refs/tags/%{version}.tar.gz
|
||
Patch0: 00-java8.patch
|
||
BuildRequires: fdupes
|
||
BuildRequires: maven-local
|
||
BuildRequires: mvn(colt:colt)
|
||
BuildRequires: mvn(com.itextpdf:itextpdf)
|
||
BuildRequires: mvn(com.jcraft:jsch)
|
||
BuildRequires: mvn(com.jcraft:jzlib)
|
||
BuildRequires: mvn(gov.nist.math:jama)
|
||
BuildRequires: mvn(javax.mail:mail)
|
||
BuildRequires: mvn(javax.vecmath:vecmath)
|
||
BuildRequires: mvn(org.apache.commons:commons-math3)
|
||
BuildRequires: mvn(org.apache.pdfbox:pdfbox)
|
||
BuildRequires: mvn(org.eclipse.jetty:jetty-server)
|
||
BuildRequires: mvn(org.jblas:jblas)
|
||
BuildRequires: mvn(org.jfree:jfreechart)
|
||
BuildRequires: mvn(org.json:json)
|
||
BuildRequires: mvn(org.la4j:la4j)
|
||
BuildArch: noarch
|
||
|
||
%description
|
||
The Universal Java Matrix Package (UJMP) is an open source library for dense
|
||
and sparse matrix computations and linear algebra in Java. In addition to the
|
||
basic operations like matrix multiplication, matrix inverse or matrix
|
||
decomposition, it also supports visualization, JDBC import/export and many
|
||
other useful functions such as mean, correlation, standard deviation, mutual
|
||
information, or the replacement of missing values.
|
||
|
||
It’s a swiss army knife for data processing in Java, tailored to machine
|
||
learning applications.
|
||
|
||
In a Nutshell:
|
||
|
||
• Dense and sparse matrices in multiple dimensions
|
||
• Matrix inverse, pseudo inverse, determinant, SVD, LU, QR, Cholesky,
|
||
Eigenvalue decomposition
|
||
• Multi-threaded and lighting fast
|
||
• Handle terabyte-sized matrices on disk
|
||
• Visualize and edit as heatmap, graph, plot
|
||
• Treat every type of data as a matrix
|
||
• TXT, CSV, PNG, JPG, HTML, XLS, XLSX, PDF, LaTeX, Matlab, MDB
|
||
• Free and open source (LGPL)
|
||
|
||
%package javadoc
|
||
Summary: API documentation for %{name}
|
||
Group: Documentation/HTML
|
||
|
||
%description javadoc
|
||
API documentation for %{name}.
|
||
|
||
%prep
|
||
%setup -q -n universal-java-matrix-package-%{version}
|
||
%patch -P 0 -p1
|
||
|
||
mkdir -p .mvn
|
||
|
||
sed -i -e 's/import org.apache.pdfbox.util.PDFTextStripper/import org.apache.pdfbox.text.PDFTextStripper/' \
|
||
ujmp-pdfbox/src/main/java/org/ujmp/pdfbox/{ImportMatrixPDF,PdfUtil}.java
|
||
|
||
sed -i -e 's/setBaseShapesVisible/setDefaultShapesVisible/' \
|
||
ujmp-jfreechart/src/main/java/org/ujmp/jfreechart/MatrixChartPanel.java
|
||
|
||
%pom_xpath_remove 'pom:addClasspath' %{name}
|
||
%pom_xpath_remove 'pom:plugin[pom:artifactId="maven-compiler-plugin"]/pom:configuration' %{name}
|
||
|
||
%pom_disable_module ../%{name}-ehcache %{name}
|
||
%pom_disable_module ../%{name}-ejml %{name}
|
||
%pom_disable_module ../%{name}-elasticsearch %{name}
|
||
%pom_disable_module ../%{name}-examples %{name}
|
||
%pom_disable_module ../%{name}-jung %{name}
|
||
%pom_disable_module ../%{name}-hadoop %{name}
|
||
%pom_disable_module ../%{name}-jackcess %{name}
|
||
%pom_disable_module ../%{name}-jmatio %{name}
|
||
%pom_disable_module ../%{name}-jsci %{name}
|
||
%pom_disable_module ../%{name}-jscience %{name}
|
||
%pom_disable_module ../%{name}-lucene %{name}
|
||
%pom_disable_module ../%{name}-mtj %{name}
|
||
%pom_disable_module ../%{name}-ojalgo %{name}
|
||
%pom_disable_module ../%{name}-parallelcolt %{name}
|
||
%pom_disable_module ../%{name}-poi %{name}
|
||
%pom_disable_module ../%{name}-complete %{name}
|
||
|
||
%pom_remove_plugin :maven-source-plugin %{name}
|
||
|
||
%pom_change_dep :vecmath javax.vecmath:vecmath %{name}-vecmath
|
||
|
||
%pom_remove_dep org.apache.derby:derby %{name}-jdbc
|
||
%pom_remove_dep org.hsqldb:hsqldb %{name}-jdbc
|
||
%pom_remove_dep postgresql:postgresql %{name}-jdbc
|
||
%pom_remove_dep mysql:mysql-connector-java %{name}-jdbc
|
||
%pom_remove_dep com.h2database:h2 %{name}-jdbc
|
||
%pom_remove_dep org.xerial:sqlite-jdbc %{name}-jdbc
|
||
|
||
%build
|
||
pushd %{name}
|
||
%{mvn_build} -f -- \
|
||
%if %{?pkg_vcmp:%pkg_vcmp java-devel >= 9}%{!?pkg_vcmp:0}
|
||
-Dmaven.compiler.release=8 \
|
||
%endif
|
||
-Dsource=8
|
||
popd
|
||
|
||
%install
|
||
pushd %{name}
|
||
%mvn_install
|
||
%fdupes %{buildroot}%{_javadocdir}/%{name}
|
||
popd
|
||
|
||
%files -f %{name}/.mfiles
|
||
%license LICENSE.md
|
||
%doc README.md
|
||
|
||
%files javadoc -f %{name}/.mfiles-javadoc
|
||
%license LICENSE.md
|
||
|
||
%changelog
|