app-text/bact: update EAPI 6 -> 8

Signed-off-by: David Seifert <soap@gentoo.org>
This commit is contained in:
David Seifert 2022-11-21 00:55:52 +01:00
parent e0b7668889
commit 43494336a4
No known key found for this signature in database
GPG Key ID: CE36E117202E3842
3 changed files with 95 additions and 15 deletions

View File

@ -1,7 +1,7 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
inherit toolchain-funcs
@ -12,23 +12,19 @@ SRC_URI="http://chasen.org/~taku/software/bact/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RDEPEND=""
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-makefile.patch
"${FILESDIR}"/${P}-cpp14.patch
)
HTML_DOCS=( index.html bact.css )
PATCHES=( "${FILESDIR}/${P}-cpp14.patch" )
src_compile() {
emake CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
}
src_test() {
emake test
src_configure() {
tc-export CXX
}
src_install() {
dobin bact_learn bact_mkmodel bact_classify
HTML_DOCS=( index.html bact.css )
einstalldocs
}

View File

@ -1,6 +1,7 @@
Fix C++14 compilation errors -- since C++11 make_pair<T1,T2> is resolved to
make_pair(T1&&, T2&&). Types should be deduced.
Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=594312
Bug: https://bugs.gentoo.org/594312
--- a/bact_classify.cpp
+++ b/bact_classify.cpp
@ -42,3 +43,48 @@ Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=594312
ary.push_back ((Darts::DoubleArray::key_type *)it->first.c_str());
alpha.push_back (a);
}
--- a/darts.h
+++ b/darts.h
@@ -394,10 +394,10 @@
{
if (! len) len = LengthFunc() (key);
- register ArrayType b = array[pos].base;
- register ArrayUType p;
+ ArrayType b = array[pos].base;
+ ArrayUType p;
- for (register size_t i = 0; i < len; ++i) {
+ for (size_t i = 0; i < len; ++i) {
p = b + (NodeUType)(key[i]) + 1;
if ((ArrayUType)b == array[p].check) b = array[p].base;
else return -2;
@@ -414,8 +414,8 @@
{
if (! len) len = LengthFunc() (key);
- register ArrayType b = array[pos].base;
- register ArrayUType p;
+ ArrayType b = array[pos].base;
+ ArrayUType p;
for (; pos2 < len; ++pos2) {
p = b + (NodeUType)(key[pos2]) + 1;
@@ -437,12 +437,12 @@
{
if (! len) len = LengthFunc() (key);
- register ArrayType b = array[pos].base;
- register size_t num = 0;
- register ArrayType n;
- register ArrayUType p;
+ ArrayType b = array[pos].base;
+ size_t num = 0;
+ ArrayType n;
+ ArrayUType p;
- for (register size_t i = 0; i < len; ++i) {
+ for (size_t i = 0; i < len; ++i) {
p = b; // + 0;
n = array[p].base;
if ((ArrayUType) b == array[p].check && n < 0) result[num++] = -n-1;

View File

@ -0,0 +1,38 @@
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,6 @@
-CXX = c++
VERSION = 0.13
-CXXFLAGS = -O3 -Wall -Wno-deprecated
+CXXFLAGS += -Wall -Wno-deprecated
EXECPREFIX =
-LDFLAGS =
TARGETS1 = bact_learn${EXEC_PREFIX}
TARGETS2 = bact_classify${EXEC_PREFIX}
TARGETS3 = bact_mkmodel${EXEC_PREFIX}
@@ -10,14 +8,11 @@
all: bact_learn bact_mkmodel bact_classify
-bact_learn: bact_learn.o ${OBJ}
- ${CXX} ${CFLAGS} ${LDFLAGS} -o ${TARGETS1} ${OBJ} bact_learn.o ${LDFLAGS}
+bact_learn: ${OBJ}
-bact_classify: bact_classify.o ${OBJ}
- ${CXX} ${CFLAGS} ${LDFLAGS} -o ${TARGETS2} ${OBJ} bact_classify.o ${LDFLAGS}
+bact_classify: ${OBJ}
-bact_mkmodel: bact_mkmodel.o ${OBJ}
- ${CXX} ${CFLAGS} ${LDFLAGS} -o ${TARGETS3} ${OBJ} bact_mkmodel.o ${LDFLAGS}
+bact_mkmodel: ${OBJ}
clean:
rm -f *.o ${TARGETS1} ${TARGETS2} ${TARGETS3} core *~ *.tar.gz *.exe core* med.model* jp.model*
@@ -33,7 +28,6 @@
scp bact-${VERSION}.tar.gz index.html bact.css chasen.org:public_html/software/bact/
check:
-test:
./bact_learn -T1000 med.train med.model
./bact_mkmodel -i med.model -o med.model.bin -O med.model.O
./bact_classify med.test med.model.bin