app-text/psiconv: Port to EAPI 7

* Fix GCC 10 / -fno-common
* Fix missing headers causing implicit declarations

Closes: https://bugs.gentoo.org/707134
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: David Seifert <soap@gentoo.org>
This commit is contained in:
David Seifert
2020-02-28 01:30:27 +01:00
parent cac6572a08
commit feae48e6ea
3 changed files with 125 additions and 9 deletions

View File

@@ -0,0 +1,92 @@
--- a/extra/checkuid.c
+++ b/extra/checkuid.c
@@ -19,6 +19,7 @@
#include <stdio.h>
+#include <stdlib.h>
unsigned long uid1[32] = { /* bit 0 */ 0x000045A0,
/* bit 1 */ 0x00008B40,
--- a/extra/empty.c
+++ b/extra/empty.c
@@ -20,6 +20,7 @@
#include <psiconv/generate.h>
#include <stdio.h>
+#include <stdlib.h>
void help(void)
{
--- a/extra/rewrite.c
+++ b/extra/rewrite.c
@@ -21,6 +21,7 @@
#include <psiconv/generate.h>
#include <stdio.h>
+#include <stdlib.h>
int main(int argc, char *argv[])
{
--- a/lib/psiconv/error.c
+++ b/lib/psiconv/error.c
@@ -22,6 +22,7 @@
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include "error.h"
--- a/lib/psiconv/generate_layout.c
+++ b/lib/psiconv/generate_layout.c
@@ -23,6 +23,8 @@
#include "generate_routines.h"
#include "error.h"
+#include <string.h>
+
#ifdef DMALLOC
#include <dmalloc.h>
#endif
--- a/lib/psiconv/generate_simple.c
+++ b/lib/psiconv/generate_simple.c
@@ -23,6 +23,8 @@
#include "generate_routines.h"
#include "error.h"
+#include <string.h>
+
#ifdef DMALLOC
#include <dmalloc.h>
#endif
--- a/lib/psiconv/list.c
+++ b/lib/psiconv/list.c
@@ -23,6 +23,7 @@
#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
+#include <string.h>
#include "general.h"
#include "list.h"
#include "error.h"
--- a/lib/psiconv/misc.c
+++ b/lib/psiconv/misc.c
@@ -22,6 +22,7 @@
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include "common.h"
#ifdef DMALLOC
--- a/lib/psiconv/parse_driver.c
+++ b/lib/psiconv/parse_driver.c
@@ -21,6 +21,7 @@
#include "compat.h"
#include <stdlib.h>
+#include <string.h>
#include "parse.h"
#include "parse_routines.h"

View File

@@ -0,0 +1,21 @@
--- a/program/psiconv/psiconv.c
+++ b/program/psiconv/psiconv.c
@@ -41,6 +41,8 @@
#include "gen.h"
#include "psiconv.h"
+psiconv_list fileformat_list;
+
static void print_help(void);
static void print_version(void);
static void strtoupper(char *str);
--- a/program/psiconv/psiconv.h
+++ b/program/psiconv/psiconv.h
@@ -31,6 +31,6 @@
output_function *output;
} *psiconv_fileformat;
-psiconv_list fileformat_list; /* of struct psiconv_fileformat */
+extern psiconv_list fileformat_list; /* of struct psiconv_fileformat */
#endif /* PSICONV_GEN_H */

View File

@@ -1,7 +1,7 @@
# Copyright 1999-2014 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
EAPI=7
inherit toolchain-funcs
@@ -9,20 +9,23 @@ DESCRIPTION="An interpreter for Psion 5(MX) file formats"
HOMEPAGE="http://huizen.dds.nl/~frodol/psiconv"
SRC_URI="http://huizen.dds.nl/~frodol/${PN}/${P}.tar.gz"
SLOT="0"
LICENSE="GPL-2"
IUSE="static-libs"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~mips ~ppc ~sparc ~x86"
src_prepare() {
tc-export AR
}
PATCHES=(
"${FILESDIR}"/${P}-gcc10-fno-common.patch
"${FILESDIR}"/${P}-Wimplicit-function-declaration.patch
)
src_configure() {
econf $(use_enable static-libs static)
tc-export AR
econf --disable-static
}
src_install() {
default
use static-libs || rm -fr "${D}"usr/lib*/lib${PN}.la
# no static archives
find "${D}" -name '*.la' -delete || die
}