Re: [PATCH] Makefile: update the default build options for AIX

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2008/5/7 Junio C Hamano <gitster@xxxxxxxxx>:
>
> Brandon Casey <casey@xxxxxxxxxxxxxxx> writes:
>
>  > Mike Ralphson wrote:
>  >> 2008/5/7 Brandon Casey <casey@xxxxxxxxxxxxxxx>:
>  >>> Johannes Sixt wrote:
>  >>>  > The #define fopen in git-compat-util.h essentially defeats the effect of
>  >>>  > _LARGE_FILES as far as fopen() calls are concerned: If
>  >>>  > FREAD_READS_DIRECTORIES is not defined, fopen() would be redirected to
>  >>>  > fopen64(), but when it is defined, it is redirected to git_fopen(), which
>  >>>  > in turn uses fopen() instead of fopen64() (due to the #undef in
>  >>>  > compat/fopen.c).
>  >>>  >
>  >>>
>  >>>  How about something like this?
>  >>>
>  >>>  diff --git a/compat/fopen.c b/compat/fopen.c
>  >>>  index ccb9e89..70b0d4d 100644
>  >>>  --- a/compat/fopen.c
>  >>>  +++ b/compat/fopen.c
>  >>>  @@ -1,5 +1,5 @@
>  >>>  +#undef FREAD_READS_DIRECTORIES
>  >>>   #include "../git-compat-util.h"
>  >>>  -#undef fopen
>  >>>   FILE *git_fopen(const char *path, const char *mode)
>  >>>   {
>  >>>         FILE *fp;
>  >>>
>  >>>
>  >>>  -brandon
>  >>>
>  >>
>  >> Ta. I still get all the warnings with that, was that what you were
>  >> trying to solve? The 64 bit specific tests in t5302 do still pass.
>  >
>  > Ah, yes. You would still get the warnings for every other file that
>  > includes git-compat-util.h, except compat/fopen.c. I didn't think
>  > about all of those. :) In this case those are indeed harmless. And now
>  > the git provided git_fopen() will use the compiler selected fopen()
>  > which should avoid any of the gotchas that Hannes brought up.
>
>  In any case, that #undef then #include dance needs a big comment on why it
>  has to be so.
>

Indeed. Please add ascii-art diagrams and don't use long words. I may
then have a chance of understanding how this works, and how I should
have spotted 5 potentially non-harmless warnings among 400 noise ones,
when all I did was get the testsuite from non-passing to passing! 8-)

In reality, thanks to all for pitching in.

Mike
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux