pulseaudio build error (curious/strange)

Andriy Gapon avg at icyb.net.ua
Sat Aug 22 19:46:32 UTC 2009


on 22/08/2009 19:59 Christoph Mallon said the following:
> You are right, the macro code cannot work by design of the preprocssor:
> #define TEMP_PACKAGE_VERSION PACKAGE_VERSION tells TEMP_PACKAGE_VERSION
> to expand to PACKAGE_VERSION. This will in turn expand to whatever
> PACKAGE_VERSION is defined _at the point where TEMP_PACKAGE_VERSION is
> used_. PACKAGE_VERSION is later defined to expand to TEMP_PACKAGE_VERSION.
> So when using PACKAGE_VERSION, it will first expand to
> TEMP_PACKAGE_VERSION, which in turn expands to PACKAGE_VERSION. The
> preprocessors forbids recursion on macros, therefore macro expansion
> stops right there, because in this chain of expansion we already
> expanded PACKAGE_VERSION. So in the end we get the word PACKAGE_VERSION
> in the preprocessed source code.
> Long story short: The above preprocessing directives cannot work.
> Do you know, where/why PACKAGE_BUGREPORT is defined?

Christoph,

thank you for the detailed explanation!
PACKAGE_BUGREPORT is defined in config.h of pulseaudio.
I think it's supposed to be defined to an (email) address where bug reports
should go.

-- 
Andriy Gapon


More information about the freebsd-ports mailing list