Opened 20 years ago

Last modified 20 years ago

#970 closed patch

MythPlugins configure script on OSX fails with fink and --enable-new-exif option. — at Initial Version

Reported by: dsnider@… Owned by: Isaac Richards
Priority: major Milestone: unknown
Component: mythgallery Version: head
Severity: high Keywords:
Cc: Ticket locked: no

Description

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 xwhich 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 xwhich 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.

Change History (1)

by dsnider@…, 20 years ago

Attachment: configure.diff added

unified diff with patch for configure script.

Note: See TracTickets for help on using tickets.