diff --git a/srcpkgs/nvi/patches/nvi-39-add_function_prototypes.patch b/srcpkgs/nvi/patches/nvi-39-add_function_prototypes.patch new file mode 100644 index 00000000000..fe4d39b979d --- /dev/null +++ b/srcpkgs/nvi/patches/nvi-39-add_function_prototypes.patch @@ -0,0 +1,137 @@ +From: Michael Hudson-Doyle +Date: Thu, 11 Apr 2024 11:18:39 +0200 +Subject: Add function prototypes to fix implicit function declaration errors + +Reviewed-By: Tobias Heider +Bug-Debian: https://bugs.debian.org/1066285 +--- + cl/cl.h | 5 +++++ + cl/cl_funcs.c | 6 ++++++ + common/conv.h | 3 +++ + common/multibyte.h | 6 ++++++ + dist/configure | 1 + + 5 files changed, 21 insertions(+) + +diff --git a/cl/cl.h b/cl/cl.h +index 3d71410..4ff232d 100644 +--- a/cl/cl.h ++++ b/cl/cl.h +@@ -26,6 +26,11 @@ + #endif + #endif + ++/* ++ * for setupterm() ++ */ ++#include ++ + typedef struct _cl_private { + char ibuf[256]; /* Input keys. */ + +diff --git a/cl/cl_funcs.c b/cl/cl_funcs.c +index c5fc597..b6174ef 100644 +--- a/cl/cl_funcs.c ++++ b/cl/cl_funcs.c +@@ -31,6 +31,12 @@ static const char sccsid[] = "$Id: cl_funcs.c,v 10.72 2002/03/02 23:18:33 skimo + #include "../vi/vi.h" + #include "cl.h" + ++/* ++ * This is declared by ncurses.h, but only if _XOPEN_SOURCE is set and lots of ++ * other things break if we define that. ++ */ ++extern int waddnwstr (WINDOW *,const wchar_t *,int); ++ + static void cl_rdiv __P((SCR *)); + + static int +diff --git a/common/conv.h b/common/conv.h +index 76b06c1..a7675c4 100644 +--- a/common/conv.h ++++ b/common/conv.h +@@ -21,3 +21,6 @@ struct _conv { + char2wchar_t input2int; + wchar2char_t int2disp; + }; ++ ++extern int conv_enc (SCR *sp, int option, char *enc); ++extern void conv_init (SCR *orig, SCR *sp); +diff --git a/common/multibyte.h b/common/multibyte.h +index 820f4ec..2484521 100644 +--- a/common/multibyte.h ++++ b/common/multibyte.h +@@ -5,6 +5,12 @@ + #include + #include + ++/* ++ * This is declared by wchar.h, but only if _XOPEN_SOURCE is set and lots of ++ * other things break if we define that. ++ */ ++extern int wcwidth (wchar_t c); ++ + typedef wchar_t RCHAR_T; + #define RCHAR_T_MAX ((1 << 24)-1) + typedef wchar_t CHAR_T; +diff --git a/dist/configure b/dist/configure +index b23e167..d7fb54f 100755 +--- a/dist/configure ++++ b/dist/configure +@@ -27385,6 +27385,7 @@ cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + #include <$CURSHEADER> ++#include + int + main () + { +From: OGAWA Hirofumi +Date: Mon, 10 Jun 2024 21:16:51 +0900 +Subject: Add more function prototypes to fix -Wimplicit-function-declaration + +Without this, + + $ nvi a b + # ex command + :next + # error + BDB0171 seek: 1024: (1 * 1024) + 0: Bad file descriptor + +Like the above, nvi fails to open the next file ("b"). + +Reviewed-By: Tobias Heider +Bug-Debian: https://bugs.debian.org/1072923 +--- + dist/configure | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/dist/configure b/dist/configure +index d7fb54f..d78e87d 100755 +--- a/dist/configure ++++ b/dist/configure +@@ -26719,6 +26719,7 @@ _ACEOF + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ ++#include + #include + int + main () +@@ -27507,7 +27508,7 @@ _ACEOF + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ +- ++#include + int + main () + { +@@ -27632,6 +27633,8 @@ _ACEOF + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ ++#include ++#include + main(){char buf[20]; exit(sprintf(buf, "XXX") != 3);} + _ACEOF + rm -f conftest$ac_exeext