* emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue
@ 2014-10-08 11:53 Nelson H. F. Beebe
2014-10-08 15:50 ` Glenn Morris
2014-10-08 16:52 ` bug#18666: " Paul Eggert
0 siblings, 2 replies; 7+ messages in thread
From: Nelson H. F. Beebe @ 2014-10-08 11:53 UTC (permalink / raw)
To: emacs-devel; +Cc: beebe
An emacs-24.3.94 build on Debian GNU/kFreeBSD 7 (wheezy) x86-64 with
CC=c99 fails with this error:
/usr/bin/c99 -c -Demacs -I. -I. -I../lib -I./../lib \
-I/usr/include/freetype2 \
-I/usr/include/freetype2 -MMD -MF deps/process.d -MP \
-I/usr/uumath/include process.c
process.c:177:1: error: static declaration of `accept4' follows
non-static declarationmake[1]: Leaving directory
`/local/build/c99/emacs-24.3.94/src'
The problem is this code in the indicated system header file:
#ifdef __USE_GNU
/* Similar to 'accept' but takes an additional parameter to specify flags.
This function is a cancellation point and therefore not marked with
__THROW. */
extern int accept4 (int __fd, __SOCKADDR_ARG __addr,
socklen_t *__restrict __addr_len, int __flags);
#endif
The solution was simple:
% diff src/process.c.~1~ src/process.c
176c176
< static int
---
> /* static */ int
I restarted the build, and it completed successfully, as did the final
"make install" step.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe@math.utah.edu -
- 155 S 1400 E RM 233 beebe@acm.org beebe@computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue
2014-10-08 11:53 emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue Nelson H. F. Beebe
@ 2014-10-08 15:50 ` Glenn Morris
2014-10-08 16:52 ` bug#18666: " Paul Eggert
1 sibling, 0 replies; 7+ messages in thread
From: Glenn Morris @ 2014-10-08 15:50 UTC (permalink / raw)
To: Nelson H. F. Beebe; +Cc: emacs-devel
Filed as http://debbugs.gnu.org/18666 .
Please report bugs to the bug list.
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#18666: emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue
2014-10-08 11:53 emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue Nelson H. F. Beebe
2014-10-08 15:50 ` Glenn Morris
@ 2014-10-08 16:52 ` Paul Eggert
2014-10-08 11:53 ` Nelson H. F. Beebe
1 sibling, 1 reply; 7+ messages in thread
From: Paul Eggert @ 2014-10-08 16:52 UTC (permalink / raw)
To: Nelson H. F. Beebe, 18666
[-- Attachment #1: Type: text/plain, Size: 620 bytes --]
On 10/08/2014 04:53 AM, Nelson H. F. Beebe wrote:
> The solution was simple:
>
> % diff src/process.c.~1~ src/process.c
> 176c176
> < static int
> ---
> > /* static */ int
>
Thanks, but I'd rather not do that, as it might override some system's
accept4 function which other parts of that system's library might depend on.
Does the attached alternative patch work for you? Or, to save you some
time, since I can log into the Utah VMs perhaps you can give me the
current list of VMs so that I can try it out myself? I don't know which
VM is the one that illustrates the problem.
Thanks.
[-- Attachment #2: kfreebsd.diff --]
[-- Type: text/x-patch, Size: 304 bytes --]
=== modified file 'src/process.c'
--- src/process.c 2014-05-03 20:13:10 +0000
+++ src/process.c 2014-10-08 16:42:40 +0000
@@ -173,6 +173,9 @@
return fd;
}
+#undef accept4
+#define accept4 process_accept4
+
static int
accept4 (int sockfd, struct sockaddr *addr, socklen_t *addrlen, int flags)
{
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#18666: emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue
@ 2014-10-08 11:53 ` Nelson H. F. Beebe
2014-10-08 17:10 ` Wolfgang Jenkner
2014-10-10 16:15 ` Glenn Morris
0 siblings, 2 replies; 7+ messages in thread
From: Nelson H. F. Beebe @ 2014-10-08 11:53 UTC (permalink / raw)
To: 18666
Package: emacs
Version: 24.3.94
Severity: important
An emacs-24.3.94 build on Debian GNU/kFreeBSD 7 (wheezy) x86-64 with
CC=c99 fails with this error:
/usr/bin/c99 -c -Demacs -I. -I. -I../lib -I./../lib \
-I/usr/include/freetype2 \
-I/usr/include/freetype2 -MMD -MF deps/process.d -MP \
-I/usr/uumath/include process.c
process.c:177:1: error: static declaration of `accept4' follows
non-static declarationmake[1]: Leaving directory
`/local/build/c99/emacs-24.3.94/src'
The problem is this code in the indicated system header file:
#ifdef __USE_GNU
/* Similar to 'accept' but takes an additional parameter to specify flags.
This function is a cancellation point and therefore not marked with
__THROW. */
extern int accept4 (int __fd, __SOCKADDR_ARG __addr,
socklen_t *__restrict __addr_len, int __flags);
#endif
The solution was simple:
% diff src/process.c.~1~ src/process.c
176c176
< static int
---
> /* static */ int
I restarted the build, and it completed successfully, as did the final
"make install" step.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe@math.utah.edu -
- 155 S 1400 E RM 233 beebe@acm.org beebe@computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#18666: emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue
2014-10-08 11:53 ` Nelson H. F. Beebe
@ 2014-10-08 17:10 ` Wolfgang Jenkner
2014-10-10 16:15 ` Glenn Morris
1 sibling, 0 replies; 7+ messages in thread
From: Wolfgang Jenkner @ 2014-10-08 17:10 UTC (permalink / raw)
To: Nelson H. F. Beebe; +Cc: 18666
On Wed, Oct 08 2014, Nelson H. F. Beebe wrote:
> An emacs-24.3.94 build on Debian GNU/kFreeBSD 7 (wheezy) x86-64 with
So it runs a FreeBSD 9 kernel[1].
> CC=c99 fails with this error:
>
> /usr/bin/c99 -c -Demacs -I. -I. -I../lib -I./../lib \
> -I/usr/include/freetype2 \
> -I/usr/include/freetype2 -MMD -MF deps/process.d -MP \
> -I/usr/uumath/include process.c
> process.c:177:1: error: static declaration of `accept4' follows
> non-static declarationmake[1]: Leaving directory
> `/local/build/c99/emacs-24.3.94/src'
>
> The problem is this code in the indicated system header file:
>
> #ifdef __USE_GNU
> /* Similar to 'accept' but takes an additional parameter to specify flags.
>
> This function is a cancellation point and therefore not marked with
> __THROW. */
> extern int accept4 (int __fd, __SOCKADDR_ARG __addr,
> socklen_t *__restrict __addr_len, int __flags);
> #endif
On FreeBSD 10, accept(2) states[2] in HISTORY
The accept4() system call appeared in FreeBSD 10.0.
So I guess the bug is that the declaration is nevertheless visible in
the glibc header file used on your Debian system.
The other possibility is that the Debian developers implemented it on
their own, but it somehow fails the configure test (you could check
config.log).
I found a short mailing list thread about this[3].
[1] https://wiki.debian.org/Debian_GNU/kFreeBSD_FAQ#Q._What_version_of_kFreeBSD_is_supported.3F
[2] https://www.freebsd.org/cgi/man.cgi?query=accept4&apropos=0&sektion=0&manpath=FreeBSD+10.0-RELEASE&arch=default&format=html
[3] https://lists.debian.org/debian-bsd/2013/09/msg00157.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#18666: emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue
2014-10-08 11:53 ` Nelson H. F. Beebe
2014-10-08 17:10 ` Wolfgang Jenkner
@ 2014-10-10 16:15 ` Glenn Morris
2014-10-10 18:03 ` Paul Eggert
1 sibling, 1 reply; 7+ messages in thread
From: Glenn Morris @ 2014-10-10 16:15 UTC (permalink / raw)
To: Paul Eggert; +Cc: 18666
Experience suggests there might be no answer to your question (unless
you got one off-list), so if you think there is a safe way to solve this
in emacs-24, I suggest you just go for it and mark this as done.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-10-10 18:03 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-08 11:53 emacs-24.3.94: Debian GNU/kFreeBSD 7 (wheezy) build issue Nelson H. F. Beebe
2014-10-08 15:50 ` Glenn Morris
2014-10-08 16:52 ` bug#18666: " Paul Eggert
2014-10-08 11:53 ` Nelson H. F. Beebe
2014-10-08 17:10 ` Wolfgang Jenkner
2014-10-10 16:15 ` Glenn Morris
2014-10-10 18:03 ` Paul Eggert
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.