On 02/08/2014 07:50 PM, Slávek Banko wrote: > On Wednesday 05 of February 2014 19:18:12 David C. Rankin wrote: >> On 02/05/2014 12:07 PM, David C. Rankin wrote: >>> On 02/05/2014 10:41 AM, David C. Rankin wrote: >>>> On 02/05/2014 10:19 AM, David C. Rankin wrote: >>>>> On 02/05/2014 10:00 AM, David C. Rankin wrote: >>>>>> Should be: >>>>>> >>>>>> extern "C" >>>>>> { >>>>>> #ifdef HAVE_LIBCDIO_090 >>>>>> #include <cdio/paranoia/cdda.h> >>>>> >>>>> I think this whole issue is that HAVE_LIBCDIO_090 is NOT seen in >>>>> paranoia.h. If we can get that test to evaluate to 'true', I think >>>>> kaffeine will build. >>>> >>>> That is indeed the case. I just built kaffeine with: >>>> >>>> cd kaffeine >>>> >>>> # fix kaffeine/kaffeine/configure.in.in >>>> sed -i 's|\[cdio/cdda.h\]|[cdio/paranoia/cdda.h]|' >>>> kaffeine/configure.in.in >>>> >>>> # set all paranoia.h 'cdio/' includes to 'cdia/paranoia/' >>>> sed -i 's|<cdio/cdda.h>|<cdio/paranoia/cdda.h>|' \ >>>> kaffeine/src/input /disc/paranoia.h >>>> sed -i 's|<cdio/paranoia.h>|<cdio/paranoia/paranoia.h>|' \ >>>> kaffeine/src/input /disc/paranoia.h >>>> >>>> # fix missing '/' in kaffeine/kaffeine/src/input/disc/paranoia.h >>>> sed -i 's|paranoiacdda|paranoia/cdda|' >>>> kaffeine/src/input/disc/paranoia.h >>>> >>>> Kaffeine built fine. So we have to: >>>> >>>> (1) fix the missing '/' at line 36 in paranoia.h: >>>> >>>> 33 extern "C" >>>> 34 { >>>> 35 #ifdef HAVE_LIBCDIO_090 >>>> 36 #include <cdio/paranoiacdda.h> >>>> ^ >>>> >>>> (2) find a way to get HAVE_LIBCDIO_090 test true in paranoia.h >>>> >>>> How do we fix #2? >>> >>> Slavek - you will have to fix. I've exhausted my autofoo tricks and I >>> cannot get #2 to test true. I tried moving the KDE_CHECK_HEADER to >>> kaffeine/kaffeine/configure.in.in - but it still fails to include the >>> correct header. Maybe we are missing a AC_SUBST or something to update >>> the -I/path/to/cdio/paranoia? >>> >>> Here is the latest patch that does everything we need done to the >>> existing code -- except getting #ifdef HAVE_LIBCDIO_090 to include the >>> correct headers :( >> >> The darn build has the correct -I statement, but not the correct >> preprocessor change kaffeine/kaffeine/src/input/disc/paranoia.h: >> >> Why the heck is the preprocessor check failing in this code block beginning >> at line 33? >> >> extern "C" >> { >> #ifdef HAVE_LIBCDIO_090 >> #include <cdio/paranoia/cdda.h> >> #include <cdio/paranoia/paranoia.h> >> #else // HAVE_LIBCDIO_090 >> #include <cdio/cdda.h> >> #include <cdio/paranoia.h> >> #endif // HAVE_LIBCDIO_090 >> } >> >> For some reason the build doesn't get the new header and fails at: >> >> /bin/sh ../../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H >> -I. <snip> >> -I/usr/include/cdio/paranoia >> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --> this is Correct! But it gets the old >> paranoia.h <snip> >> In file included from disc.h:39:0, >> from disc.cpp:42, >> from libkaffeinedisc_la.all_cpp.cpp:2: >> paranoia.h:39:23: fatal error: cdio/cdda.h: No such file or directory >> #include <cdio/cdda.h> >> >> The preprocessor check should make it '#include <cdio/paranoia/cdda.h>'. >> Why is the preprocessor check failing??? > > It would be fixed in the current GIT tree - see commit 597daea6. > Please, test it and then close an bug report 1853. > > Slavek > Slavek, Can you cherrypick commit 597daea6 to 3.5.13-sru? -- David C. Rankin, J.D.,P.E.