ports/126678: sysutils/screen build error on FreeBSD-current
NAKAJI Hiroyuki
nakaji at jp.freebsd.org
Wed Aug 20 10:10:02 UTC 2008
>Number: 126678
>Category: ports
>Synopsis: sysutils/screen build error on FreeBSD-current
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Aug 20 10:10:02 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: NAKAJI Hiroyuki
>Release: FreeBSD 8.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD roddy.4407.kankyo-u.ac.jp 8.0-CURRENT FreeBSD 8.0-CURRENT #127: Wed Jun 25 19:24:08 JST 2008 root at roddy.4407.kankyo-u.ac.jp:/usr/obj/usr/src/sys/RODDY i386
>Description:
Because of the difference of the execvpe() which is defined in screen
itself and FreeBSD-current's unistd.h, screen-4.0.3_5 cannot build on
FreeBSD 8.0-CURRENT.
===> Building for screen-4.0.3_5
cc -c -I. -I. -O2 -pipe -DCOLORS256 -fno-strict-aliasing screen.c
In file included from screen.c:244:
extern.h:149: error: conflicting types for 'execvpe'
/usr/include/unistd.h:338: error: previous declaration of 'execvpe' was here
*** Error code 1
Stop in /usr/ports/sysutils/screen/work/screen-4.0.3.
*** Error code 1
Stop in /usr/ports/sysutils/screen.
*** Error code 1
Stop in /usr/ports/sysutils/screen.
*** Error code 1
Stop in /usr/ports/sysutils/screen.
>How-To-Repeat:
cd /usr/ports/sysutils/screen
make all
>Fix:
I'm not sure "${OSVERSION} >= 800039" is ok.
===> Generating patch
===> Viewing diff with more
diff -ruN --exclude=CVS /usr/ports/sysutils/screen/Makefile /home/nakaji/work/ports/sysutils/screen/Makefile
--- /usr/ports/sysutils/screen/Makefile 2008-07-26 08:24:34.000000000 +0900
+++ /home/nakaji/work/ports/sysutils/screen/Makefile 2008-08-20 19:01:18.000000000 +0900
@@ -76,6 +76,10 @@
post-patch:
@${RM} ${WRKSRC}/doc/screen.info*
@${REINPLACE_CMD} -e 's|/dev/ptmx|/nonexistent|' ${WRKSRC}/configure
+.if ${OSVERSION} >= 800039
+ @${PATCH} ${PATCH_ARGS} < ${FILESDIR}/execvpe.diff
+.endif
+
post-install:
@${MKDIR} ${EXAMPLESDIR}
diff -ruN --exclude=CVS /usr/ports/sysutils/screen/files/execvpe.diff /home/nakaji/work/ports/sysutils/screen/files/execvpe.diff
--- /usr/ports/sysutils/screen/files/execvpe.diff 1970-01-01 09:00:00.000000000 +0900
+++ /home/nakaji/work/ports/sysutils/screen/files/execvpe.diff 2008-08-20 18:45:30.000000000 +0900
@@ -0,0 +1,28 @@
+--- extern.h.orig 2003-08-22 21:27:57.000000000 +0900
++++ extern.h 2008-08-20 17:50:14.000000000 +0900
+@@ -146,7 +146,6 @@
+ #ifdef ZMODEM
+ extern void zmodem_abort __P((struct win *, struct display *));
+ #endif
+-extern void execvpe __P((char *, char **, char **));
+
+ /* utmp.c */
+ #ifdef UTMPOK
+--- window.c.orig 2008-08-20 17:52:02.000000000 +0900
++++ window.c 2008-08-20 17:50:46.000000000 +0900
+@@ -1387,6 +1387,7 @@
+ return pid;
+ }
+
++#if 0
+ void
+ execvpe(prog, args, env)
+ char *prog, **args, **env;
+@@ -1432,6 +1433,7 @@
+ if (eaccess)
+ errno = EACCES;
+ }
++#endif
+
+ #ifdef PSEUDOS
+
===> Done
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list