On Fri, 13 Dec 2013 06:43:25 +0200, Niko Sauer wrote: > > Let me try to explain. In the code snippet above, the two conditionals > > build a logical AND, so that in order to build with LCMS2, both > > HAVE_LCMS and HAVE_LCMS2 must be defined. If HAVE_LCMS were undefined, > > the HAVE_LCMS2 condition would not be reached. Then lcms2.h could > > not be included, and the source code would not compile. > > > > exif-common.c: In function ‘exif_build_formatted_ColorProfile’: > > exif-common.c:417:2: error: unknown type name ‘cmsUInt8Number’ > > cmsUInt8Number profileID[17]; > > ^ > > exif-common.c:417:17: warning: unused variable ‘profileID’ > > [-Wunused-variable] > > cmsUInt8Number profileID[17]; > > ^ > > make[1]: *** [exif-common.o] Error 1 > > > This is quite strange.
Why is it strange? ;) Can we agree that it's a logical AND? Can we also agree that HAVE_LCMS must be defined or else the HAVE_LCMS2 conditional block won't ever be reached? There are also code sections that are conditional on just HAVE_LCMS, so they would never be built if only HAVE_LCMS2 is defined. If you build Geeqie with that patch, after you run "configure", what values do you get for HAVE_LCMS and HAVE_LCMS2? Here, HAVE_LCMS is undefined, because "configure" finds LCMS2 and takes that one. The adjusted patch is this: http://pkgs.fedoraproject.org/cgit/geeqie.git/plain/geeqie-1.1-lcms2.patch > Are we talking about the same patch? Of course. > The one I refer to is > > https://gitorious.org/geeqie/emikulic-geeqie/commit/1548a68d26046b6aa467e56ca2c8f5444b95a23b.patch > > If I don't erase that (infernal) line, the compiler looks at lcms.h > instead of lcms2.h. Why would it do that? > If you erase that line, precisely the opposite > happens. The type cmsUInt8 is defined in lcms2.h. lcms2.h won't even be included in exif-common.c, if HAVE_LCMS is undefined. ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ Geeqie-devel mailing list Geeqie-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geeqie-devel