]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
BuildSystem: Check for header file of OGG.
authorAlexander Traud <pabstraud@compuserve.com>
Sat, 17 Mar 2018 15:54:09 +0000 (16:54 +0100)
committerAlexander Traud <pabstraud@compuserve.com>
Sat, 17 Mar 2018 15:54:09 +0000 (16:54 +0100)
Asterisk uses various symbols of the shared library libogg within the module
format_ogg_vorbis. However, the source code of that module did not include the
header file of libogg explicitly but implicitly. Because that header was not
included before Asterisk 14, the script ./configure was told not to check for
it.

Anyway, even Asterisk 13 LTS uses symbols of libogg. Therefore, that header
should be included explicitly. Therefore, ./configure should check for that
header.

Change-Id: I98c50d56311b68880d1084fcc62c35ab2f8692db

configure
configure.ac
formats/format_ogg_vorbis.c

index eeb746758489f3d3eb80839cc43ffa7d4a336181..52f2392ef645fcefd8fd5f9d2805f14022d9922c 100755 (executable)
--- a/configure
+++ b/configure
@@ -23568,9 +23568,9 @@ if test "x${PBX_OGG}" != "x1" -a "${USE_OGG}" != "no"; then
 
       ast_ext_lib_check_save_CFLAGS="${CFLAGS}"
       CFLAGS="${CFLAGS} "
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ogg_sync_init in -logg" >&5
-$as_echo_n "checking for ogg_sync_init in -logg... " >&6; }
-if ${ac_cv_lib_ogg_ogg_sync_init+:} false; then :
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ogg_stream_init in -logg" >&5
+$as_echo_n "checking for ogg_stream_init in -logg... " >&6; }
+if ${ac_cv_lib_ogg_ogg_stream_init+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
@@ -23584,27 +23584,27 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 #ifdef __cplusplus
 extern "C"
 #endif
-char ogg_sync_init ();
+char ogg_stream_init ();
 int
 main ()
 {
-return ogg_sync_init ();
+return ogg_stream_init ();
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ogg_ogg_sync_init=yes
+  ac_cv_lib_ogg_ogg_stream_init=yes
 else
-  ac_cv_lib_ogg_ogg_sync_init=no
+  ac_cv_lib_ogg_ogg_stream_init=no
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ogg_ogg_sync_init" >&5
-$as_echo "$ac_cv_lib_ogg_ogg_sync_init" >&6; }
-if test "x$ac_cv_lib_ogg_ogg_sync_init" = xyes; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ogg_ogg_stream_init" >&5
+$as_echo "$ac_cv_lib_ogg_ogg_stream_init" >&6; }
+if test "x$ac_cv_lib_ogg_ogg_stream_init" = xyes; then :
   AST_OGG_FOUND=yes
 else
   AST_OGG_FOUND=no
       fi
       OGG_INCLUDE="${OGG_INCLUDE} "
 
-         # no header, assume found
-         OGG_HEADER_FOUND="1"
+         # check for the header
+         ast_ext_lib_check_saved_CPPFLAGS="${CPPFLAGS}"
+         CPPFLAGS="${CPPFLAGS} ${OGG_INCLUDE}"
+         ac_fn_c_check_header_mongrel "$LINENO" "ogg/ogg.h" "ac_cv_header_ogg_ogg_h" "$ac_includes_default"
+if test "x$ac_cv_header_ogg_ogg_h" = xyes; then :
+  OGG_HEADER_FOUND=1
+else
+  OGG_HEADER_FOUND=0
+fi
+
+
+         CPPFLAGS="${ast_ext_lib_check_saved_CPPFLAGS}"
 
       if test "x${OGG_HEADER_FOUND}" = "x0" ; then
          OGG_LIB=""
index c920bae1091ec40ea59e52828f736c25a67da1a0..bc243de1bffbe495b9be74e2b0a3833b5593a04f 100644 (file)
@@ -2141,7 +2141,7 @@ AST_EXT_LIB_CHECK([NEWT], [newt], [newtBell], [newt.h])
 
 AST_EXT_LIB_CHECK([UNIXODBC], [odbc], [SQLConnect], [sql.h], [])
 
-AST_EXT_LIB_CHECK([OGG], [ogg], [ogg_sync_init], [])
+AST_EXT_LIB_CHECK([OGG], [ogg], [ogg_stream_init], [ogg/ogg.h])
 
 # Non-glibc platforms require libexecinfo for backtrace support
 AST_EXT_LIB_CHECK([BKTR], [execinfo], [backtrace], [execinfo.h])
index cb0798ae26fe631a6a262a68b6cbd3f416c9e415..9d906e0fd23c2fe5ac5a1e1306618ae8a54b33ab 100644 (file)
@@ -35,6 +35,7 @@
 
 ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 
+#include <ogg/ogg.h>
 #include <vorbis/codec.h>
 #include <vorbis/vorbisenc.h>
 #include <vorbis/vorbisfile.h>