git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: cygwin-latest: compile errors related to sockaddr_storage, dirent->d_type and dirent->d_ino

From
Junio C Hamano <junkio@cox.net>
Date
Jan 19, 2006, 08:59 UTC
Message-ID
<7vlkxciodu.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<20060119052914.GC8121@trixie.casa.cgf.cx>
Christopher Faylor <me@cgf.cx> writes:
> "They" probably would like to hear about any irregularities that are found.
> "They" probably don't like it when people treat an open source project as
> if it was some unresponsive proprietary enterprise which does not listen
> to or accept patches.

First of all, thanks for joining our discussion. Being able to hear from somebody from other project firsthand (not just listen to somebody talking in his own changelogs and code comments, but in actual e-mail exchange discussion) lets us put faces and names to the entity "so far just one of the external projects to us".

>>For reasons unknown, cygwin decided to use our sockaddr_storage.

I haven't looked at the proposed patch by Alex, so would not comment on this part, but I'd appreciate your input.

>>For the other, probably unrelated, reasons, they decided to leave
>>declarations of DT_* macros in dirent.h without providing dirent->d_type.

I was wondering what the justification for keeping DT_* without d_type myself. What is the preferred resolution on this one from your point of view? I suspect removing d_type while leaving DT_* was just a transient error and you would want to remove DT_* as well, in which case the patch on this issue by Alex would become unnecessary.

Show 11 quoted lines
>>And on top of that, they removed dirent->d_ino (or probably replaced it
>>by __ino32, if at all).  BTW, can we somehow avoid using d_ino?  It is
>>referenced only in fsck-objects.c Anyway, to workaround this I put
>>
>>COMPAT_CFLAGS += -Dd_ino=__ino32
>>
>>It helps, but surely is not the solution.
>
> I don't see how it could help since __ino32 is not actually filled in
> with anything.  In fact, I'll rename the field to __invalid_ino32 to
> make that clear.

I think renaming __invalid_* makes sense. I'll see how we would work this around on the git side to make things more portable.

Previous: Christopher FaylorNext: Christopher Faylor
Message 3 of 27 in “cygwin-latest: compile errors related to sockaddr_storage, dirent->d_type and dirent->d_ino”
  1. Alex RiesenJan 18, 2006
  2. Christopher FaylorJan 19, 2006
  3. Junio C HamanoJan 19, 2006
  4. Christopher FaylorJan 19, 2006
  5. Christopher FaylorJan 19, 2006
  6. Linus TorvaldsJan 19, 2006
  7. Christopher FaylorJan 19, 2006
  8. Linus TorvaldsJan 19, 2006
  9. Christopher FaylorJan 19, 2006
  10. fsck-objects: support platforms without d_ino in struct dirent.Junio C Hamano, Jan 20, 2006
  11. Christopher FaylorJan 20, 2006
  12. Alex RiesenJan 19, 2006
  13. Christopher FaylorJan 19, 2006
  14. Alex RiesenJan 19, 2006
  15. Christopher FaylorJan 19, 2006
  16. Petr BaudisJan 19, 2006
  17. Alex RiesenJan 19, 2006
  18. Petr BaudisJan 19, 2006
  19. Alex RiesenJan 19, 2006
  20. Junio C HamanoJan 20, 2006
  21. Alex RiesenJan 20, 2006
  22. DT_UNKNOWN: do not fully trust existence of DT_UNKNOWNJunio C Hamano, Jan 20, 2006
  23. Alex RiesenJan 20, 2006
  24. Junio C HamanoJan 20, 2006
  25. Alex RiesenJan 20, 2006
  26. Junio C HamanoJan 21, 2006
  27. Alex RiesenJan 23, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.