Closed
Bug 936801
Opened 11 years ago
Closed 11 years ago
nsLDAPConnection.cpp fails to compile with multiple errors possibly caused by mozilla-central Bug 869869 Part 1
Categories
(MailNews Core :: LDAP Integration, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
Thunderbird 28.0
People
(Reporter: philip.chee, Assigned: schien)
References
Details
(Keywords: regression)
Attachments
(2 files, 1 obsolete file)
3.68 KB,
patch
|
Details | Diff | Splinter Review | |
1.57 KB,
patch
|
schien
:
review+
|
Details | Diff | Splinter Review |
https://tbpl.mozilla.org/php/getParsedLog.php?id=30295004&tree=Thunderbird-Trunk#error0 e:/builds/moz2_slave/tb-c-cen-w32-00000000000000000/build/mozilla/other-licenses/snappy/src/snappy.cc(962) : warning C4018: '<=' : signed/unsigned mismatch nsLDAPConnection.cpp c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(96) : warning C4005: 'AF_IPX' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(452) : see previous definition of 'AF_IPX' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(129) : warning C4005: 'AF_MAX' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(471) : see previous definition of 'AF_MAX' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(173) : warning C4005: 'SO_DONTLINGER' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(394) : see previous definition of 'SO_DONTLINGER' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(217) : error C2011: 'sockaddr' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(477) : see declaration of 'sockaddr' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(414) : error C2059: syntax error : 'constant' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(414) : error C3805: 'constant': unexpected token, expected either '}' or a ',' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(549) : warning C4005: 'IN_CLASSA' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(279) : see previous definition of 'IN_CLASSA' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(555) : warning C4005: 'IN_CLASSB' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(285) : see previous definition of 'IN_CLASSB' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(561) : warning C4005: 'IN_CLASSC' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(291) : see previous definition of 'IN_CLASSC' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(572) : warning C4005: 'INADDR_ANY' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(296) : see previous definition of 'INADDR_ANY' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(574) : warning C4005: 'INADDR_BROADCAST' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(298) : see previous definition of 'INADDR_BROADCAST' c:\Program Files (x86)\Windows Kits\8.0\include\shared\ws2def.h(608) : error C2011: 'sockaddr_in' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(304) : see declaration of 'sockaddr_in' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(125) : error C2011: 'fd_set' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(60) : see declaration of 'fd_set' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(145) : warning C4005: 'FD_CLR' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(89) : see previous definition of 'FD_CLR' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(160) : warning C4005: 'FD_SET' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(94) : see previous definition of 'FD_SET' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(169) : error C2011: 'timeval' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(103) : see declaration of 'timeval' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(225) : error C2011: 'hostent' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(159) : see declaration of 'hostent' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(238) : error C2011: 'netent' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(172) : see declaration of 'netent' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(245) : error C2011: 'servent' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(179) : see declaration of 'servent' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(257) : error C2011: 'protoent' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(191) : see declaration of 'protoent' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(353) : error C2011: 'WSAData' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(314) : see declaration of 'WSAData' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(451) : error C2011: 'sockproto' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(486) : see declaration of 'sockproto' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(493) : error C2011: 'linger' : 'struct' type redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(523) : see declaration of 'linger' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(506) : warning C4005: 'SOMAXCONN' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(536) : see previous definition of 'SOMAXCONN' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(536) : warning C4005: 'FD_READ' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(554) : see previous definition of 'FD_READ' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(539) : warning C4005: 'FD_WRITE' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(555) : see previous definition of 'FD_WRITE' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(542) : warning C4005: 'FD_OOB' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(556) : see previous definition of 'FD_OOB' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(545) : warning C4005: 'FD_ACCEPT' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(557) : see previous definition of 'FD_ACCEPT' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(548) : warning C4005: 'FD_CONNECT' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(558) : see previous definition of 'FD_CONNECT' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(551) : warning C4005: 'FD_CLOSE' : macro redefinition c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(559) : see previous definition of 'FD_CLOSE' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1577) : error C2375: 'accept' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(734) : see declaration of 'accept' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1599) : error C2375: 'bind' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(739) : see declaration of 'bind' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1618) : error C2375: 'closesocket' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(744) : see declaration of 'closesocket' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1637) : error C2375: 'connect' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(746) : see declaration of 'connect' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1658) : error C2375: 'ioctlsocket' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(751) : see declaration of 'ioctlsocket' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1679) : error C2375: 'getpeername' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(756) : see declaration of 'getpeername' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1700) : error C2375: 'getsockname' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(761) : see declaration of 'getsockname' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1723) : error C2375: 'getsockopt' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(766) : see declaration of 'getsockopt' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1744) : error C2375: 'htonl' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(773) : see declaration of 'htonl' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1761) : error C2375: 'htons' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(775) : see declaration of 'htons' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1778) : error C2375: 'inet_addr' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(777) : see declaration of 'inet_addr' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1795) : error C2375: 'inet_ntoa' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(779) : see declaration of 'inet_ntoa' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1896) : error C2375: 'listen' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(781) : see declaration of 'listen' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1914) : error C2375: 'ntohl' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(785) : see declaration of 'ntohl' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1931) : error C2375: 'ntohs' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(787) : see declaration of 'ntohs' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1951) : error C2375: 'recv' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(789) : see declaration of 'recv' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(1976) : error C2375: 'recvfrom' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(795) : see declaration of 'recvfrom' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2002) : error C2375: 'select' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(803) : see declaration of 'select' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2026) : error C2375: 'send' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(810) : see declaration of 'send' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2051) : error C2375: 'sendto' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(816) : see declaration of 'sendto' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2077) : error C2375: 'setsockopt' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(824) : see declaration of 'setsockopt' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2099) : error C2375: 'shutdown' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(831) : see declaration of 'shutdown' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2120) : error C2375: 'socket' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(835) : see declaration of 'socket' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2144) : error C2375: 'gethostbyaddr' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(842) : see declaration of 'gethostbyaddr' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2163) : error C2375: 'gethostbyname' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(847) : see declaration of 'gethostbyname' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2181) : error C2375: 'gethostname' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(849) : see declaration of 'gethostname' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2221) : error C2375: 'getservbyport' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(853) : see declaration of 'getservbyport' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2240) : error C2375: 'getservbyname' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(857) : see declaration of 'getservbyname' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2258) : error C2375: 'getprotobynumber' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(861) : see declaration of 'getprotobynumber' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2275) : error C2375: 'getprotobyname' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(863) : see declaration of 'getprotobyname' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2296) : error C2375: 'WSAStartup' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(867) : see declaration of 'WSAStartup' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2315) : error C2375: 'WSACleanup' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(871) : see declaration of 'WSACleanup' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2332) : error C2375: 'WSASetLastError' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(873) : see declaration of 'WSASetLastError' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2349) : error C2375: 'WSAGetLastError' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(875) : see declaration of 'WSAGetLastError' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2366) : error C2375: 'WSAIsBlocking' : redefinition; different linkage c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock.h(877) : see declaration of 'WSAIsBlocking' c:\Program Files (x86)\Windows Kits\8.0\include\um\winsock2.h(2383) : error C2375: 'WSAUnhookBlockingHook' : redefinition; different linkage
Reporter | ||
Comment 1•11 years ago
|
||
http://logbot.glob.com.au/?c=mozilla%23maildev&s=8+Nov+2013&e=8+Nov+2013#c111226 11:33 RattyAway https://tbpl.mozilla.org/php/getP...p;tree=Thunderbird-Trunk#error0 11:34 RattyAway Standard8: sorry to bother you but a clobber didn't fix this error https://tbpl.mozilla.org/php/getP...p;tree=Thunderbird-Trunk#error0 11:35 Standard8 *ouch 11:36 Standard8 RattyAway: I guess some windows includes have changed recently 11:36 Standard8 RattyAway: got a regression range? 11:37 RattyAway Standard8: sorry having dinner plus need to do things tonight 11:41 * Standard8 suspects http://hg.mozilla.org/mozilla-central/rev/4021b7b381f1#l3.12 11:45 Standard8 looks like nsLDAPConnection.cpp has both winsock.h and winsock2.h includes, that are probably conflicting 11:45 Standard8 I don't know how to fix that without experimenting, and I don't really have a windows build atm
Assignee | ||
Comment 2•11 years ago
|
||
Using forward declaration to avoid include hazard. Philip, can you help test if this patch can solve the Thunderbird build error?
Attachment #829816 -
Flags: feedback?(philip.chee)
Reporter | ||
Comment 3•11 years ago
|
||
Comment on attachment 829816 [details] [diff] [review] netaddr-forward-declaration.patch (In reply to Shih-Chiang Chien [:schien] from comment #2) > Created attachment 829816 [details] [diff] [review] > netaddr-forward-declaration.patch > > Using forward declaration to avoid include hazard. Philip, can you help test > if this patch can solve the Thunderbird build error? Tested. Compiles successfully. Thanks muchly. f=me
Attachment #829816 -
Flags: feedback?(philip.chee) → feedback+
Assignee | ||
Comment 4•11 years ago
|
||
Hi Philip, how should I get this patch landed in time for your Thunderbird build? Just follow the regular Gecko review process, landed on m-c, and you guys will merge this patch to Thunderbird build system?
Assignee | ||
Comment 5•11 years ago
|
||
Comment on attachment 829816 [details] [diff] [review] netaddr-forward-declaration.patch Using forward declaration to avoid include hazard in Thunderbird. https://tbpl.mozilla.org/?tree=Try&rev=9826ac1e65ee
Attachment #829816 -
Flags: review?(mcmanus)
Assignee | ||
Updated•11 years ago
|
Assignee: nobody → schien
Reporter | ||
Comment 6•11 years ago
|
||
(In reply to Shih-Chiang Chien [:schien] from comment #4) > Hi Philip, how should I get this patch landed in time for your Thunderbird > build? > Just follow the regular Gecko review process, landed on m-c, and you > guys will merge this patch to Thunderbird build system? Yes that's essentially it. The Thunderbird build process will automatically pull from mozilla-*. Bug 869869 landed on mozilla28 so this can ride the train as usual.
Status: NEW → ASSIGNED
Flags: needinfo?(mbanner)
Comment 7•11 years ago
|
||
Just for the record, I worked out what changes would have been needed to the LDAP SDK to get Thunderbird to build, had it been necessary to go down that route.
Updated•11 years ago
|
Flags: needinfo?(mbanner)
Updated•11 years ago
|
Attachment #829816 -
Flags: review?(mcmanus) → review+
Reporter | ||
Comment 8•11 years ago
|
||
(In reply to neil@parkwaycc.co.uk from comment #7) > Created attachment 830059 [details] [diff] [review] > JFTR > > Just for the record, I worked out what changes would have been needed to the > LDAP SDK to get Thunderbird to build, had it been necessary to go down that > route. I think we should take your changes to the ldap c-sdk. "Version 2.1 (winsock2.h) of Winsock was supplied in an add-on package for Windows 95. It was an integral component of Windows 98, Windows NT 4.0, and all subsequent Windows releases. Recent versions of Winsock 2.x have been delivered with new Windows releases or as part of service packs." Since the minimum version of windows we support is XP SP2, I think replacing winsock.h with winsock2.h should not cause any problems. Are there any other consumers other than comm-central?
Assignee | ||
Comment 9•11 years ago
|
||
update hg comment string, carry r+.
Attachment #829816 -
Attachment is obsolete: true
Attachment #830546 -
Flags: review+
Assignee | ||
Updated•11 years ago
|
Keywords: checkin-needed
Comment 10•11 years ago
|
||
Accidentally pushed this directly to mozilla-central :) but no problem anyway, I'll watch the tree https://hg.mozilla.org/mozilla-central/rev/6102c7a86726
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 28.0
Updated•11 years ago
|
Blocks: 869869
Keywords: regression
You need to log in
before you can comment on or make changes to this bug.
Description
•