[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