[FFmpeg-devel] UINT64_C definition

Reimar Döffinger Reimar.Doeffinger at gmx.de
Thu Dec 5 20:52:12 CET 2013


On Wed, Dec 04, 2013 at 07:12:45AM -0500, Don Moir wrote:
> 
> ----- Original Message ----- From: "Ronald S. Bultje"
> <rsbultje at gmail.com>
> To: "FFmpeg development discussions and patches" <ffmpeg-devel at ffmpeg.org>
> Sent: Thursday, December 05, 2013 9:36 AM
> Subject: Re: [FFmpeg-devel] UINT64_C definition
> 
> 
> >Hi Don,
> >
> >
> >On Wed, Dec 4, 2013 at 7:51 AM, Don Moir <donmoir at comcast.net> wrote:
> >
> >>I use c++ and for me at least UINT64_C and INT64_C are defined in
> >>inttypes.h.
> >>
> >>The check for UINT64_C in common.h is done before the #include
> >><inttypes.h> so get error. Not sure where it is supposed to be defined and
> >>easy work around but letting you know.
> >
> >
> >CXXFLAGS+=-D__STDC_CONSTANT_MACROS=1
> >
> >Ronald
> 
> Would this be appropriate and possibly more convienent? Works fine
> this way without additional BS since you are doing the test anyway
> or is there another reason to use CXXFLAGS? Only real reason for
> change is to reduce propagation for things like this to everyone
> using c++. No point in using CXXFLAGS or is there?
> 
> in common.h
> 
> Change from:
> 
> #if defined(__cplusplus) && !defined(__STDC_CONSTANT_MACROS) && !defined(UINT64_C)
> #error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS
> #endif
> 
> To:
> 
> #if defined(__cplusplus) && !defined(__STDC_CONSTANT_MACROS)
> #define __STDC_CONSTANT_MACROS
> #endif

This was discussed about 20 times.
It doesn't work, defining a macro after the header that needs it was
included isn't going to do any good. And the only place that will
always come before the header needing it is the command-line.


More information about the ffmpeg-devel mailing list