[mythtv-commits] Ticket #970: MythPlugins configure script on OSX fails with fink and --enable-new-exif option.

MythTV mythtv at cvs.mythtv.org
Mon Jan 9 00:59:03 UTC 2006


#970: MythPlugins configure script on OSX fails with fink and --enable-new-exif
option.
--------------------------------------+-------------------------------------
 Reporter:  dsnider at thesniderpad.com  |       Owner:  ijr 
     Type:  patch                     |      Status:  new 
 Priority:  major                     |   Milestone:      
Component:  mythgallery               |     Version:  head
 Severity:  high                      |  
--------------------------------------+-------------------------------------
 The OSX packager script broke after I installed fink on my mac mini.
 Basically, it fails when compiling mythgallery with the new exif flag.   I
 finally tracked the problem down to the mythplugins configure script, in
 this section of code:

         if test x`which pkg-config 2>/dev/null` != x"" ; then
             if `pkg-config --atleast-version 0.6.9 libexif` ; then
                 echo "#define NEW_LIB_EXIF 1" >> \
                     ./mythgallery/mythgallery/config.h
             fi
         else
             if test x"$newexif" = x"yes" ; then
                 echo "#define NEW_LIB_EXIF 1" >> \
                     ./mythgallery/mythgallery/config.h
             else
                 echo
                 echo "Could not determine libexif version, if it is
 greater"
                 echo "than or equal to 0.6.9 you need to add"
                 echo "--enable-new-exif to the configure flags"
                 echo
             fi
         fi

 Before I installed fink, I did not have pkg-config, so it would go to the
 else statement and and put the proper line in my config.h.  If I now
 manually run the 'pkg-config --atleast-version 0.6.9 libexif', I get a 1
 for the return code, so the NEW_LIB_EXIF doesn't get set.  Fink installed
 pkg-config, however fink has an older version of libexif.  Since the osx-
 packager script downloads the correct version, I do have the "New"
 libraries available for install.

 The configure script should be rewritten as:

          if test x"$newexif" = x"yes" ; then
               echo "#define NEW_LIB_EXIF 1" >> \
                  ./mythgallery/mythgallery/config.h
         else
             if test x`which pkg-config 2>/dev/null` != x"" ; then
                 if `pkg-config --atleast-version 0.6.9 libexif` ; then
                     echo "#define NEW_LIB_EXIF 1" >> \
                        ./mythgallery/mythgallery/config.h
             fi
             else
                 echo
                 echo "Could not determine libexif version, if it is
 greater"
                 echo "than or equal to 0.6.9 you need to add"
                 echo "--enable-new-exif to the configure flags"
                 echo
             fi
         fi

 This way, I can force the NEW_LIB_EXIF with the --enable-new-exif flag.
 If I don't set that flag, the script will still correctly find it with the
 pkg-config line.  The reason I think this is a bug is that with the
 current logic in the configure script, even if you add the flag --enable-
 new-exif, the configure script will disable that flag with the pkg-config
 if statement.   If I manually specify --enable-new-exif, I would expect
 the configure script to honor that setting, if it fails because I don't
 really have it, that's my own fault.  But it shouldn't unset the flag
 because one utility can't find the proper library.

 Just as an FYI, here is the error I was getting:

 distcc g++ -c -pipe -faltivec -Wall -W -O3 -Wall -Wno-switch
 -I/nobackup/myth/.osx-packager/build/include -no-cpp-precomp -pipe -fomit-
 frame-pointer -force_cpusubtype_ALL -Wno-sign-compare -fno-inline-
 functions -DPIC -fPIC  -D_GNU_SOURCE -DPREFIX=\"/nobackup/myth/.osx-
 packager/build\" -DUSING_DBOX2 -DHAVE_DVDNAV -D_FILE_OFFSET_BITS=64
 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_PLUGIN -DQT_SHARED
 -DQT_ACCESSIBILITY_SUPPORT -I/nobackup/myth/.osx-packager/src/qt-mac-
 free-3.3.4/mkspecs/default -I. -I../../../../../build/include
 -I../../../../../build/include -I/usr/kde/3.3/include
 -I../../../../../build/include -I/nobackup/myth/.osx-packager/src/qt-mac-
 free-3.3.4/include
 -I/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers
 -I/System/Library/Frameworks/AGL.framework/Versions/A/Headers -o
 galleryutil.o galleryutil.cpp
 /nobackup/myth/.osx-packager/build/include/libexif/exif-entry.h: In static
    member function `static long int GalleryUtil::getNaturalRotation(const
    char*)':
 /nobackup/myth/.osx-packager/build/include/libexif/exif-entry.h:61: error:
 too
    few arguments to function `const char* exif_entry_get_value(ExifEntry*,
    char*, unsigned int)'
 galleryutil.cpp:67: error: at this point in file
 make[2]: *** [galleryutil.o] Error 1
 make[1]: *** [sub-mythgallery] Error 2
 make: *** [sub-mythgallery] Error 2
 [osx-pkg] Failed system call: " /usr/bin/make " with error code 2
 Died at /usr/local/bin/osx-packager.pl line 722.

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/970>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list