japanese/mh: include errno.h for errno

errno must be accessed by a macro from errno.h.

Due to the sheer number of instances use REINPLACE_CMD to replace most
instances of "extern int errno;" with "#include <errno.h>".  In a few
places the errno decleration was a function-scope global where
including a header didn't make sense patch those out (the files already
included errno.h).  This isn't the most elegant, but it's the least of
the issues with this code.

PR:		281787
Approved by:	portmgr (build fix blanket), mikael
This commit is contained in:
Brooks Davis 2024-10-01 00:03:36 +01:00
parent d4400f87b2
commit 993ca87fed
5 changed files with 53 additions and 1 deletions

View file

@ -1,6 +1,6 @@
PORTNAME= mh PORTNAME= mh
PORTVERSION= ${VERSION}.j${JP_VERSION} PORTVERSION= ${VERSION}.j${JP_VERSION}
PORTREVISION= 7 PORTREVISION= 8
CATEGORIES= japanese mail CATEGORIES= japanese mail
MASTER_SITES= ftp://ftp.laic.u-hyogo.ac.jp/pub/net/mh/ MASTER_SITES= ftp://ftp.laic.u-hyogo.ac.jp/pub/net/mh/
DISTNAME= ${PORTNAME}-${VERSION}-JP-${JP_VERSION} DISTNAME= ${PORTNAME}-${VERSION}-JP-${JP_VERSION}
@ -47,6 +47,9 @@ post-patch:
print; \ print; \
}' ${i}.rf > ${i}.tmp && ${MV} ${i}.tmp ${i}.rf) }' ${i}.rf > ${i}.tmp && ${MV} ${i}.tmp ${i}.rf)
.endfor .endfor
${FIND} ${WRKSRC} -type f \! -name \*.orig | \
xargs grep -l "extern[ ]*int[ ]*errno" | \
xargs ${REINPLACE_CMD} -e "s/^extern[ ]*int[ ]*errno;/#include <errno.h>/"
post-install: post-install:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/* ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/*

View file

@ -0,0 +1,10 @@
--- sbr/ruserpass.c.orig
+++ sbr/ruserpass.c
@@ -66,7 +66,6 @@
char myname[MAXHOSTNAMELEN], *mydomain;
int t, i, c, usedefault = 0;
struct stat stb;
- extern int errno;
hdir = getenv("HOME");
if (hdir == NULL)

View file

@ -0,0 +1,19 @@
--- uip/mshcmds.c.orig
+++ uip/mshcmds.c
@@ -29,8 +29,6 @@
/* */
-extern int errno;
-
/* BURST */
static char delim3[] = "-------";/* from burst.c */
@@ -3529,7 +3527,6 @@
(void) strcpy (tmpfil, m_scratch ("", invo_name));
if ((out = fopen (tmpfil, "w")) == NULL) {
int olderr;
- extern int errno;
char newfil[80];
olderr = errno;

View file

@ -0,0 +1,10 @@
--- zotnet/mf/muinc.c.orig
+++ zotnet/mf/muinc.c
@@ -81,7 +81,6 @@
{
int count,
fd;
- extern int errno;
for (count = 2; count > 0; count--)
if ((fd = lkopen (file, 1)) == NOTOK)

View file

@ -0,0 +1,10 @@
--- zotnet/mf/uminc.c.orig
+++ zotnet/mf/uminc.c
@@ -86,7 +86,6 @@
int clear,
count,
fd;
- extern int errno;
struct stat stbuf;
for (clear = FALSE, count = 2; count > 0; count--)