This is the mail archive of the
mailing list for the Cygwin project.
Re: cannot build cygwin-2.0.2 because of net.cc (or because of some header.h)
- From: Takashi Yano <takashi dot yano at nifty dot ne dot jp>
- To: cygwin at cygwin dot com
- Date: Fri, 22 May 2015 19:37:04 +0900
- Subject: Re: cannot build cygwin-2.0.2 because of net.cc (or because of some header.h)
- Authentication-results: sourceware.org; auth=none
- References: <B8FA2086-BAFE-4B3E-9D52-2BE106CB9360 at Denis-Excoffier dot org> <20150521201509 dot 9b9bfcffb07b3d9337de9e10 at nifty dot ne dot jp>
On Thu, 21 May 2015 20:15:09 +0900
Takashi Yano <email@example.com> wrote:
> On Mon, 11 May 2015 17:52:04 +0200
> Denis Excoffier wrote:
> > In order to successfully build cygwin-2.0.2-1 (for x86, both XP and W7) i had to apply
> > the following patch (below). No such problem with cygwin-2.0.1-1.
> In my case, the same problem is caused by upgrading
> w32api-headers to 4.0.2-1. It does not result from
> difference between cygwin-2.0.2-1 and cygwin-2.0.1-1.
I have looked into this problem. The cause is as follows.
netioapi.h in w32api-headers 3.3.0-2 was using a macro-name
_INC_NETIOAPI for include-guard. By defining _INC_NETIOAPI,
net.cc avoids including netioapi.h, which conflicts with
if_nametoindex() and if_indextoname() in it.
However, the macro-name for include-guard in netioapi.h of
w32api-headers 4.0.2-1 has been changed to _NETIOAPI_H_.
As a result, net.cc fails to avoid including netioapi.h,
which causes confliction.
Thus, defining _NETIOAPI_H_ in net.cc resolves the problem.
diff --git a/winsup/cygwin/net.cc b/winsup/cygwin/net.cc
index eaf6eb8..d6a631b 100644
@@ -19,6 +19,7 @@ details. */
TODO: Convert if_nametoindex to cygwin_if_nametoindex and call
system functions on Vista and later. */
/* 2014-04-24: Current Mingw headers define sockaddr_in6 using u_long (8 byte)
Takashi Yano <firstname.lastname@example.org>
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple