From aa3abae744e9e51f8151041c5a2d8a8c29ec915d Mon Sep 17 00:00:00 2001 From: Thiago Santos Date: Wed, 25 Aug 2010 11:19:31 -0300 Subject: [PATCH] configure: Add check for log2 Adds check for log2 and only use it in exif library if it is available. --- configure.ac | 4 ++++ gst-libs/gst/tag/gstexiftag.c | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/configure.ac b/configure.ac index 2f6c82b42a..7116766538 100644 --- a/configure.ac +++ b/configure.ac @@ -219,6 +219,10 @@ dnl *** checks for functions *** AC_CHECK_FUNCS([localtime_r gmtime_r]) dnl *** checks for math functions *** +LIBS_SAVE=$LIBS +LIBS="$LIBS $LIBM" +AC_CHECK_FUNCS(log2) +LIBS=$LIBS_SAVE dnl *** checks for types/defines *** diff --git a/gst-libs/gst/tag/gstexiftag.c b/gst-libs/gst/tag/gstexiftag.c index 894453b54c..6ba3b838cc 100644 --- a/gst-libs/gst/tag/gstexiftag.c +++ b/gst-libs/gst/tag/gstexiftag.c @@ -2210,7 +2210,11 @@ serialize_shutter_speed (GstExifWriter * writer, const GstTagList * taglist, gst_util_fraction_to_double (gst_value_get_fraction_numerator (value), gst_value_get_fraction_denominator (value), &num); +#ifdef HAVE_LOG2 num = -log2 (num); +#else + num = -log (num) / M_LN2; +#endif /* now the value */ gst_exif_writer_write_signed_rational_tag_from_double (writer, @@ -2256,7 +2260,11 @@ serialize_aperture_value (GstExifWriter * writer, const GstTagList * taglist, GST_WARNING ("Failed to get focal ratio from from tag list"); return; } +#ifdef HAVE_LOG2 num = 2 * log2 (num); +#else + num = 2 * (log (num) / M_LN2); +#endif /* now the value */ gst_exif_writer_write_rational_tag_from_double (writer,