commit: e535df72eeecfcae9a0f18dd392d2659e25e1a81
Author: Aisha Tammy <gentoo <AT> aisha <DOT> cc>
AuthorDate: Fri Sep 25 22:56:51 2020 +0000
Commit: Aisha Tammy <gentoo <AT> aisha <DOT> cc>
CommitDate: Fri Sep 25 22:56:51 2020 +0000
URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=e535df72
dev-libs/simclist: various fixes and options
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>
dev-libs/simclist/metadata.xml | 14 ++++++---
dev-libs/simclist/simclist-1.6.ebuild | 42 --------------------------
dev-libs/simclist/simclist-1.6_p1.ebuild | 52 ++++++++++++++++++++++++++++++++
3 files changed, 61 insertions(+), 47 deletions(-)
diff --git a/dev-libs/simclist/metadata.xml b/dev-libs/simclist/metadata.xml
index 27a2343d7..8426fdb21 100644
--- a/dev-libs/simclist/metadata.xml
+++ b/dev-libs/simclist/metadata.xml
@@ -6,9 +6,13 @@
<name>Gentoo Science Project</name>
</maintainer>
<longdescription>
-SimCList is a high quality C (C++ embeddable) library for handling
-lists. It exploits several advanced techniques for improving
-performance, including freelists, sentinels, automatic sort algorithm
-selection, sort randomization, mid pointer and optional multithreading.
-</longdescription>
+ SimCList is a high quality C (C++ embeddable) library for
handling
+ lists. It exploits several advanced techniques for improving
+ performance, including freelists, sentinels, automatic sort
algorithm
+ selection, sort randomization, mid pointer and optional
multithreading.
+ </longdescription>
+ <use>
+ <flag name="dump">Disable building of dump and restore
functionalities</flag>
+ <flag name="hash">Allow list_hash() to work exclusively on
memory locations</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-libs/simclist/simclist-1.6.ebuild
b/dev-libs/simclist/simclist-1.6.ebuild
deleted file mode 100644
index 179cabbcb..000000000
--- a/dev-libs/simclist/simclist-1.6.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit cmake-utils
-
-DESCRIPTION="SimCList is a high quality C (C++ embeddable) library for
handling lists"
-HOMEPAGE="http://mij.oltrelinux.com/devel/simclist"
-SRC_URI="${HOMEPAGE}/${P/_/}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc examples"
-
-S="${WORKDIR}/${P/_/}"
-
-DEPEND="doc? ( app-doc/doxygen )"
-RDEPEND=""
-
-src_compile(){
- cmake-utils_src_compile
- if use doc; then
- doxygen || die "doxygen failed"
- fi
-}
-
-src_install() {
- mkdir -p "${D}"/usr/include
- cp simclist.h "${D}"/usr/include/
- cd "${BUILD_DIR}"
- dolib libsimclist.so
- cd "${S}"
- if use doc; then
- dohtml -r doc/html/*
- fi
- if use examples; then
- docinto examples
- dodoc examples/*
- fi
-}
diff --git a/dev-libs/simclist/simclist-1.6_p1.ebuild
b/dev-libs/simclist/simclist-1.6_p1.ebuild
new file mode 100644
index 000000000..2b7eb84f1
--- /dev/null
+++ b/dev-libs/simclist/simclist-1.6_p1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="SimCList is a high quality C (C++ embeddable) library for
handling lists"
+HOMEPAGE="https://mij.oltrelinux.com/devel/simclist"
+COMMIT=6aef848d1743af66045a6f413cd3b8b1f1578c15
+SRC_URI="https://github.com/mij/simclist/archive/${COMMIT}.tar.gz ->
${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${COMMIT}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug doc dump hash threads"
+
+BDEPEND="doc? ( app-doc/doxygen )"
+
+CMAKE_IN_SOURCE_BUILD=1
+
+src_prepare() {
+ sed -i -e "/-O2/d" CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DSIMCLIST_DEBUG=$(usex debug)
+ -DSIMCLIST_THREADING=$(usex threads)
+ -DSIMCLIST_NO_DUMPRESTORE=$(usex dump)
+ -DSIMCLIST_ALLOW_LOCATIONBASED_HASHES=$(usex hash)
+ )
+ cmake_src_configure
+}
+
+src_compile(){
+ cmake_src_compile
+ if use doc; then
+ doxygen || die "doxygen failed"
+ fi
+}
+
+src_install() {
+ doheader simclist.h
+ dolib.so libsimclist.so
+
+ if use doc ; then
+ dodoc -r doc/html/*
+ fi
+}