[tapkee/f18] Initial import (#1010565)
Björn Esser
besser82 at fedoraproject.org
Mon Sep 23 13:09:58 UTC 2013
commit a3af7b68517908deef2b2dc6d1fbf0a32c002206
Author: Björn Esser <bjoern.esser at gmail.com>
Date: Mon Sep 23 15:07:57 2013 +0200
Initial import (#1010565)
.gitignore | 5 ++
sources | 3 +
tapkee.spec | 228 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 236 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..090749b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*~
+*.rpm
+*.tar*
+*.zip
+results_*/
diff --git a/sources b/sources
index e69de29..2932583 100644
--- a/sources
+++ b/sources
@@ -0,0 +1,3 @@
+4577b49f2973c90bf9ba69aa8166b786 gtest-1.6.0.zip
+5b1f84b2bfc487e4a6b950a1bbd090d0 tapkee-1.0.tar.gz
+63d381df5344be8d24a53c4d0147e143 tapkee-data-1.0.tar.gz
diff --git a/tapkee.spec b/tapkee.spec
new file mode 100644
index 0000000..34f3959
--- /dev/null
+++ b/tapkee.spec
@@ -0,0 +1,228 @@
+# Do not check any files in docdir for Requires.
+%global __requires_exclude_from ^%{_docdir}/.*$
+
+Name: tapkee
+Version: 1.0
+Release: 1%{?dist}
+Summary: C++ template library for efficient dimension reduction
+
+# The detailed license-breakdown of the sources is:
+#
+# BSD (3 clause)
+# --------------
+# * (ex. the following files)
+#
+#
+# BSD with advertising
+# --------------------
+# include/external/barnes_hut_sne/*
+#
+#
+# LGPL (v3 or later)
+# ------------------
+# include/neighbors/covertree*.hpp
+#
+#
+# MIT/X11 (BSD like)
+# ------------------
+# src/ezoptionparser.hpp
+#
+License: BSD and BSD with advertising and LGPLv3+ and MIT
+URL: http://%{name}.lisitsyn.me/
+Source0: https://github.com/lisitsyn/%{name}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Source1: https://github.com/lisitsyn/%{name}_data/archive/master.tar.gz#/%{name}-data-%{version}.tar.gz
+Source99: http://googletest.googlecode.com/files/gtest-1.6.0.zip
+
+BuildRequires: arpack-devel
+BuildRequires: cmake
+BuildRequires: doxygen
+BuildRequires: eigen3-devel
+BuildRequires: fdupes
+BuildRequires: graphviz
+
+# copylib - Wildcard-exception granted by FPC.
+# See: https://fedorahosted.org/fpc/ticket/174
+Provides: bundled(gnulib)
+
+%description
+Tapkee is a C++ template library for dimensionality reduction with
+some bias on spectral methods. The Tapkee origins from the code
+developed during GSoC 2011 as the part of the Shogun machine learning
+toolbox. The project aim is to provide efficient and flexible
+standalone library for dimensionality reduction which can be easily
+integrated to existing codebases. Tapkee leverages capabilities of
+effective Eigen3 linear algebra library and optionally makes use of
+the ARPACK eigensolver. The library uses CoverTree and VP-tree
+data-structures to compute nearest neighbors. To achieve greater
+flexibility we provide a callback interface which decouples dimension
+reduction algorithms from the data representation and storage schemes.
+
+Tapkee provides implementations of the following dimension reduction
+methods:
+
+ * Locally Linear Embedding and Kernel Locally Linear Embedding
+ (LLE/KLLE)
+ * Neighborhood Preserving Embedding (NPE)
+ * Local Tangent Space Alignment (LTSA)
+ * Linear Local Tangent Space Alignment (LLTSA)
+ * Hessian Locally Linear Embedding (HLLE)
+ * Laplacian eigenmaps
+ * Locality Preserving Projections
+ * Diffusion map
+ * Isomap and landmark Isomap
+ * Multidimensional scaling and landmark Multidimensional scaling
+ (MDS/lMDS)
+ * Stochastic Proximity Embedding (SPE)
+ * PCA and randomized PCA
+ * Kernel PCA (kPCA)
+ * Random projection
+ * Factor analysis
+ * t-SNE
+ * Barnes-Hut-SNE
+
+
+%package cli
+Summary: CLI-tool for efficient dimension reduction
+
+%description cli
+Tapkee is a cli-tool for efficient dimension reduction and provides
+implementations of the following dimension reduction methods:
+
+ * Locally Linear Embedding and Kernel Locally Linear Embedding
+ (LLE/KLLE)
+ * Neighborhood Preserving Embedding (NPE)
+ * Local Tangent Space Alignment (LTSA)
+ * Linear Local Tangent Space Alignment (LLTSA)
+ * Hessian Locally Linear Embedding (HLLE)
+ * Laplacian eigenmaps
+ * Locality Preserving Projections
+ * Diffusion map
+ * Isomap and landmark Isomap
+ * Multidimensional scaling and landmark Multidimensional scaling
+ (MDS/lMDS)
+ * Stochastic Proximity Embedding (SPE)
+ * PCA and randomized PCA
+ * Kernel PCA (kPCA)
+ * Random projection
+ * Factor analysis
+ * t-SNE
+ * Barnes-Hut-SNE
+
+
+%package devel
+Summary: C++ template library for efficient dimension reduction
+
+BuildArch: noarch
+Requires: arpack-devel
+Requires: eigen3-devel
+
+Provides: %{name} = %{version}-%{release}
+
+%description devel
+Tapkee is a C++ template library for dimensionality reduction with
+some bias on spectral methods. The Tapkee origins from the code
+developed during GSoC 2011 as the part of the Shogun machine learning
+toolbox. The project aim is to provide efficient and flexible
+standalone library for dimensionality reduction which can be easily
+integrated to existing codebases. Tapkee leverages capabilities of
+effective Eigen3 linear algebra library and optionally makes use of
+the ARPACK eigensolver. The library uses CoverTree and VP-tree
+data-structures to compute nearest neighbors. To achieve greater
+flexibility we provide a callback interface which decouples dimension
+reduction algorithms from the data representation and storage schemes.
+
+Tapkee provides implementations of the following dimension reduction
+methods:
+
+ * Locally Linear Embedding and Kernel Locally Linear Embedding
+ (LLE/KLLE)
+ * Neighborhood Preserving Embedding (NPE)
+ * Local Tangent Space Alignment (LTSA)
+ * Linear Local Tangent Space Alignment (LLTSA)
+ * Hessian Locally Linear Embedding (HLLE)
+ * Laplacian eigenmaps
+ * Locality Preserving Projections
+ * Diffusion map
+ * Isomap and landmark Isomap
+ * Multidimensional scaling and landmark Multidimensional scaling
+ (MDS/lMDS)
+ * Stochastic Proximity Embedding (SPE)
+ * PCA and randomized PCA
+ * Kernel PCA (kPCA)
+ * Random projection
+ * Factor analysis
+ * t-SNE
+ * Barnes-Hut-SNE
+
+
+%package doc
+Summary: Documentation files for %{name}
+BuildArch: noarch
+
+%description doc
+This package contains the documentation files and some brief examples
+for %{name}.
+
+
+%prep
+%setup -q
+
+# Setup data for examples.
+%setup -q -D -T -a 1
+rm -rf data/
+mv -f %{name}_data-master examples/data
+
+# Setup gtest-1.6.0 for testsuite.
+%setup -q -D -T -a 99
+mkdir -p build
+
+
+%build
+pushd build
+%cmake \
+ -DBUILD_TESTS=ON \
+ -DPRECOMPUTED=ON \
+ -DUSE_GCOV=ON \
+ ..
+make %{?_smp_mflags}
+popd
+
+# Build autodocs.
+doxygen doc/Doxyfile
+%fdupes doc
+
+
+%install
+pushd build
+%make_install
+popd
+
+# Install that cli-tool.
+mkdir -p %{buildroot}/%{_bindir}
+install -pm 0755 bin/%{name}_cli %{buildroot}/%{_bindir}/%{name}
+
+# Remove build-system files from examples.
+find examples -depth -type f -name 'CMakeLists.txt' -print0 | xargs -0 rm -rf
+
+
+%check
+pushd build
+ctest -vv
+popd
+
+
+%files cli
+%doc *LICENSE* README*
+%{_bindir}/%{name}
+
+%files devel
+%doc *LICENSE* README*
+%{_includedir}/*
+
+%files doc
+%doc AUTHORS *LICENSE* README* doc/html doc/methods examples
+
+
+%changelog
+* Fri Sep 20 2013 Björn Esser <bjoern.esser at gmail.com> - 1.0-1
+- Initial rpm release (#1010565)
More information about the scm-commits
mailing list