git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johannes Sixt <j.sixt@viscovery.net>
To: Mike Ralphson <mike.ralphson@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>,
	git@vger.kernel.org, Brandon Casey <casey@nrlssc.navy.mil>
Subject: Re: [PATCH] Makefile: update the default build options for AIX
Date: Wed, 07 May 2008 15:14:26 +0200	[thread overview]
Message-ID: <4821AB32.8090700@viscovery.net> (raw)
In-Reply-To: <e2b179460805070551x7a0072e0w4d406ef4112849ce@mail.gmail.com>

Mike Ralphson schrieb:
> 2008/5/7 Johannes Sixt <j.sixt@viscovery.net>:
>>  I'm trying this patch on AIX 4.3.3 (sigh!) with gcc3. I get this:
>>
>>  git-compat-util.h:209:1: warning: "fopen" redefined
>>  In file included from git-compat-util.h:51,
>>                  from builtin.h:4,
>>                  from git.c:1:
>>  /usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/3.2.1/include/stdio.h:110:1:
>>  warning: this is the location of the previous definition
>>
>>  Line 110 in ...include/stdio.h is inside a #ifdef _LARGE_FILES section and
>>  says:
>>
>>  #define fopen fopen64
>>
>>  Did you also get this warning? Is _LARGE_FILES support solved in a
>>  different way on 5.3?
> 
> The warning (I get rather a lot of them) is caused by the
> compat/fopen.c included when FREAD_READS_DIRECTORIES is defined. I
> tried moving the #undef fopen to git-compat-util.h but that resulted
> in a broken build and me reaching the end of my limited ability with
> c.
> 
> In file included from cache.h:4,
>                  from daemon.c:1:
> git-compat-util.h:209:1: warning: "fopen" redefined
> In file included from git-compat-util.h:51,
>                  from cache.h:4,
>                  from daemon.c:1:
> /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.3.0.0/3.3.2/include/stdio.h:110:1:
> warning: this is the location of the previous definition

So you we in the same boat.

> The warnings are harmless, though untidy.
> I don't believe it's anything to do with _LARGE_FILES. Could you try
> building first with one commented out, then the other? I don't think I
> have access to a 4.3.3 box any more.

Untidy, yes; harmless: not necessarily. It has a lot to do with _LARGE_FILES.

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).

This might be dangerous if some other function of the f*64() family uses
the FILE* that the fopen() call returned. I don't know if there is such a
usage pattern somewhere in git.

Why did you need _LARGE_FILES in the first place?

-- Hannes

  parent reply	other threads:[~2008-05-07 13:15 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-07  8:35 [PATCH] Makefile: update the default build options for AIX Mike Ralphson
2008-05-07 11:57 ` Johannes Sixt
2008-05-07 12:51   ` Mike Ralphson
2008-05-07 13:05     ` Mike Ralphson
2008-05-07 13:14     ` Johannes Sixt [this message]
2008-05-07 14:20       ` Mike Ralphson
2008-05-07 14:38       ` Brandon Casey
2008-05-07 15:15         ` Mike Ralphson
2008-05-07 15:39           ` Johannes Sixt
2008-05-07 15:40           ` Brandon Casey
2008-05-07 16:04             ` Junio C Hamano
2008-05-07 16:20               ` Mike Ralphson
2008-05-07 17:36                 ` Brandon Casey
2008-05-07 17:34               ` [PATCH] compat/fopen.c: avoid clobbering the system defined fopen macro Brandon Casey
2008-05-08  7:27                 ` Mike Ralphson
2008-05-08  7:34                   ` Johannes Sixt
2008-05-08  7:59                     ` Mike Ralphson
2008-05-08 10:37                   ` H.Merijn Brand
2008-05-16 10:19   ` [PATCH] Makefile: update the default build options for AIX Mike Ralphson
2008-05-16 13:37     ` Johannes Sixt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4821AB32.8090700@viscovery.net \
    --to=j.sixt@viscovery.net \
    --cc=casey@nrlssc.navy.mil \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=mike.ralphson@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).