Some fixes backported from upstream:

- Remove dependency on bzip2.
- Remove some OpenBSD build hacks which have been broken for quite
  awhile and are not necessary anyway.
- Update FFmpeg macro for newer versions.

From Brad.
This commit is contained in:
dcoppa 2011-04-03 15:02:11 +00:00
parent a69794a5c1
commit ca0f0d8623
5 changed files with 213 additions and 131 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.41 2011/03/27 10:42:24 dcoppa Exp $
# $OpenBSD: Makefile,v 1.42 2011/04/03 15:02:11 dcoppa Exp $
SHARED_ONLY= Yes
@ -8,7 +8,7 @@ COMMENT= SWF player with Firefox browser plugin
VER= 0.8.9
DISTNAME= gnash-${VER}
REVISION= 0
REVISION= 1
EPOCH= 0
CATEGORIES= www
MASTER_SITES= ${MASTER_SITE_GNU:=gnash/${VER}/}
@ -31,8 +31,7 @@ WANTLIB= SDL X11 agg avcodec avformat avutil boost_program_options-mt \
MODULES= devel/gettext
BUILD_DEPENDS= devel/xulrunner/1.9,-devel
RUN_DEPENDS= devel/desktop-file-utils
LIB_DEPENDS= archivers/bzip2 \
audio/speex \
LIB_DEPENDS= audio/speex \
devel/boost \
devel/libtool,-ltdl \
devel/sdl \
@ -47,7 +46,9 @@ LIB_DEPENDS= archivers/bzip2 \
USE_GMAKE= Yes
USE_LIBTOOL= Yes
LIBTOOL_FLAGS+= --tag=disable-static
CONFIGURE_STYLE= gnu
CONFIGURE_STYLE= autoconf
# Should be 2.67
AUTOCONF_VERSION= 2.65
CONFIGURE_ARGS= --disable-cygnal \
--disable-jemalloc \
--disable-silent-rules \

View File

@ -1,126 +0,0 @@
$OpenBSD: patch-configure,v 1.5 2011/03/23 16:20:03 dcoppa Exp $
--- configure.orig Fri Mar 18 14:50:30 2011
+++ configure Sun Mar 20 13:31:54 2011
@@ -9625,70 +9625,6 @@ $as_echo "$as_me: ffmpeg top lib dir is $top_lib_dir"
if test x"${ac_cv_path_ffmpeg_lib}" != x; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libdts library" >&5
-$as_echo_n "checking for libdts library... " >&6; }
- if test x"$PKG_CONFIG" != x -a x${cross_compiling} = xno; then
- $PKG_CONFIG --exists libdts && libdts=`$PKG_CONFIG --libs-only-l libdts`
- else
- libdts=""
- fi
- if test x"${libdts}" = x; then
- if test -f ${top_lib_dir}/libdts.a -o -f ${top_lib_dir}/libdts.${shlibext}; then
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -ldts"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${top_lib_dir}/libdts" >&5
-$as_echo "${top_lib_dir}/libdts" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- if test x${cross_compiling} = xno; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dts_init in -ldts" >&5
-$as_echo_n "checking for dts_init in -ldts... " >&6; }
-if test "${ac_cv_lib_dts_dts_init+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldts $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dts_init ();
-int
-main ()
-{
-return dts_init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dts_dts_init=yes
-else
- ac_cv_lib_dts_dts_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_dts_dts_init" >&5
-$as_echo "$ac_cv_lib_dts_dts_init" >&6; }
-if test "x$ac_cv_lib_dts_dts_init" = x""yes; then :
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -ldts"
-fi
-
- fi
- fi
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${libdts}" >&5
-$as_echo "${libdts}" >&6; }
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} ${libdts}"
- fi
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libvorbisenc library" >&5
$as_echo_n "checking for libvorbisenc library... " >&6; }
if test x"$PKG_CONFIG" != x -a x${cross_compiling} = xno; then
@@ -29704,51 +29640,6 @@ _ACEOF
fi
done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ber_free in -llber" >&5
-$as_echo_n "checking for ber_free in -llber... " >&6; }
-if test "${ac_cv_lib_lber_ber_free+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-llber $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ber_free ();
-int
-main ()
-{
-return ber_free ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_lber_ber_free=yes
-else
- ac_cv_lib_lber_ber_free=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_lber_ber_free" >&5
-$as_echo "$ac_cv_lib_lber_ber_free" >&6; }
-if test "x$ac_cv_lib_lber_ber_free" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBLBER 1
-_ACEOF
-
- LIBS="-llber $LIBS"
-
-fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BZ2_bzopen in -lbz2" >&5
$as_echo_n "checking for BZ2_bzopen in -lbz2... " >&6; }

View File

@ -0,0 +1,46 @@
$OpenBSD: patch-configure_ac,v 1.3 2011/04/03 15:02:11 dcoppa Exp $
--- configure.ac.orig Fri Mar 18 09:49:55 2011
+++ configure.ac Fri Apr 1 21:34:04 2011
@@ -191,7 +191,6 @@ case "${host}" in
esac
-AM_CONDITIONAL(PLUGIN_LINK_UNDEFINED, test x$openbsd_os = xopenbsd)
AM_CONDITIONAL(WIN32, test x$windows = xyes)
AM_CONDITIONAL(HAIKU, test x$haiku = xyes)
AM_CONDITIONAL(AMIGAOS4, test x$amigaos4 = xyes)
@@ -636,7 +635,7 @@ AC_ARG_ENABLE(gui,
[ dnl Run the following code if no --enable-gui is given
build_fb=auto
build_sdl=auto
- if test x"${openbsd_os}" = x"openbsd"; then
+ if test x"${openbsd}" = xyes; then
build_gtk=yes
build_dump=auto
else if test x"${haiku}" = xyes; then
@@ -1936,11 +1935,7 @@ AC_CHECK_HEADERS(signal.h)
AC_CHECK_HEADERS(unistd.h)
AC_CHECK_HEADERS(sys/time.h)
AC_CHECK_HEADERS(ieeefp.h)
-dnl libcurl3-dev on Ubuntu has a dependency on lber, and Gnash won't link
-dnl on most machines without it. While it isn't diretly used by Gnash at all,
-dnl it's to work around an Ubuntu packaging bug.
-AC_CHECK_LIB(lber, ber_free)
-AC_CHECK_LIB(bz2, BZ2_bzopen)
+AC_CHECK_LIB(bz2, BZ2_bzopen, [AC_SUBST(BZ2_LIBS, -lbz2)])
AC_CHECK_LIB(c, getpwnam, AC_DEFINE(HAVE_GETPWNAM, 1, [Has getpwnam] ))
dnl X11 is needed for fltk (at least),
@@ -2147,11 +2142,7 @@ AC_SUBST(WINDRES)
GNASH_PKG_FIND(z, [zlib.h], [zlib compression library], compress)
GNASH_PKG_FIND(jpeg, [jpeglib.h], [jpeg images], jpeg_mem_init)
-if test x"${openbsd_os}" = x"yes"; then
- GNASH_PKG_FIND(libpng, [png.h], [png images], png_info_init)
-else
- GNASH_PKG_FIND(png, [png.h], [png images], png_info_init)
-fi
+GNASH_PKG_FIND(png, [png.h], [png images], png_info_init)
GNASH_PKG_FIND(gif, [gif_lib.h], [gif images], DGifOpen)
if test x"${GIF_LIBS}" = x ; then
GNASH_PKG_FIND(ungif, [gif_lib.h], [gif images], DGifOpen)

View File

@ -0,0 +1,18 @@
$OpenBSD: patch-macros_curl_m4,v 1.1 2011/04/03 15:02:12 dcoppa Exp $
--- macros/curl.m4.orig Fri Apr 1 20:04:45 2011
+++ macros/curl.m4 Fri Apr 1 20:05:19 2011
@@ -118,6 +118,14 @@ AC_DEFUN([GNASH_PATH_CURL],
if test x"${ac_cv_path_curl_lib}" != x ; then
CURL_LIBS="${ac_cv_path_curl_lib}"
+ dnl libcurl3-dev on Ubuntu has a dependency on lber, and Gnash won't link
+ dnl on most machines without it. (Ubuntu packaging bug.)
+ save_LIBS="$LIBS"
+ LIBS="$LIBS $CURL_LIBS"
+ AC_TRY_LINK_FUNC(curl_easy_init, [echo "ok!"],
+ [AC_CHECK_LIB(lber, ber_free, [CURL_LIBS="$CURL_LIBS -llber"])])
+ dnl FIXME: complain if that didn't do the trick?
+ LIBS="$save_LIBS"
else
CURL_LIBS=""
fi

View File

@ -0,0 +1,143 @@
$OpenBSD: patch-macros_ffmpeg_m4,v 1.1 2011/04/03 15:02:12 dcoppa Exp $
--- macros/ffmpeg.m4.orig Sat Feb 26 13:11:08 2011
+++ macros/ffmpeg.m4 Fri Apr 1 23:43:14 2011
@@ -22,6 +22,7 @@ AC_DEFUN([GNASH_PATH_FFMPEG],
backupLIBS="$LIBS"
backupCFLAGS="$CFLAGS"
avcodec_h=""
+ avcodec_version_h=""
ffmpeg_top_incl=""
dnl If the user specify an path to include headers from, we assume it's the full
@@ -46,6 +47,9 @@ AC_DEFUN([GNASH_PATH_FFMPEG],
else
AC_MSG_ERROR([${with_ffmpeg_incl} directory does not contain the avcodec.h header])
fi
+ if test -f ${with_ffmpeg_incl}/version.h; then
+ avcodec_version_h=${with_ffmpeg_incl}/version.h
+ fi
fi
])
@@ -66,6 +70,9 @@ AC_DEFUN([GNASH_PATH_FFMPEG],
if test -f ${ffmpeg_top_incl}/${i}/avcodec.h; then
ac_cv_path_ffmpeg_incl="-I`(cd ${ffmpeg_top_incl}; pwd)`"
avcodec_h="${ffmpeg_top_incl}/${i}/avcodec.h"
+ if test -f ${ffmpeg_top_incl}/${i}/version.h; then
+ avcodec_version_h=${ffmpeg_top_incl}/${i}/version.h
+ fi
break
fi
done
@@ -182,14 +189,24 @@ AC_DEFUN([GNASH_PATH_FFMPEG],
dnl a modified form of grepping may be better, making sure all old kinds of
dnl version numbering fail gracefully.
+ versionfile=""
+
dnl Check avcodec version number, if it was found
- if test x"${avcodec_h}" != x; then
+ if test x"${avcodec_version_h}" != x; then
+ versionfile=${avcodec_version_h}
+ else
+ if test x"${avcodec_h}" != x; then
+ versionfile=${avcodec_h}
+ fi
+ fi
+ if test x"${versionfile}" != x; then
+
AC_MSG_CHECKING([ffmpeg version])
- ffmpeg_major_version=`$EGREP "define LIBAVCODEC_VERSION_MAJOR " ${avcodec_h} | sed -e "s%[[^0-9]]%%g"`
- ffmpeg_minor_version=`$EGREP "define LIBAVCODEC_VERSION_MINOR " ${avcodec_h} | sed -e "s%[[^0-9]]%%g"`
- ffmpeg_micro_version=`$EGREP "define LIBAVCODEC_VERSION_MICRO " ${avcodec_h} | sed -e "s%[[^0-9]]%%g"`
+ ffmpeg_major_version=`$EGREP "define LIBAVCODEC_VERSION_MAJOR " ${versionfile} | sed -e "s%[[^0-9]]%%g"`
+ ffmpeg_minor_version=`$EGREP "define LIBAVCODEC_VERSION_MINOR " ${versionfile} | sed -e "s%[[^0-9]]%%g"`
+ ffmpeg_micro_version=`$EGREP "define LIBAVCODEC_VERSION_MICRO " ${versionfile} | sed -e "s%[[^0-9]]%%g"`
if test x"${ffmpeg_major_version}" != x ; then
@@ -198,15 +215,15 @@ AC_DEFUN([GNASH_PATH_FFMPEG],
else
dnl #define LIBAVCODEC_VERSION_TRIPLET 51,50,1
- ffmpeg_version=`$EGREP "define LIBAVCODEC_VERSION_TRIPLET " ${avcodec_h} | awk '{print $'3'}' | sed -e "s%,%.%g"`
+ ffmpeg_version=`$EGREP "define LIBAVCODEC_VERSION_TRIPLET " ${versionfile} | awk '{print $'3'}' | sed -e "s%,%.%g"`
if test x"${ffmpeg_version}" = x ; then
dnl NOTE: the [0-9]*d. pattern discards deb-heads rubbish prefix
- ffmpeg_version=`$EGREP "define LIBAVCODEC_VERSION " ${avcodec_h} | awk '{print $'3'}' | sed -e "s%^[[0-9]]d\.%%"`
+ ffmpeg_version=`$EGREP "define LIBAVCODEC_VERSION " ${versionfile} | awk '{print $'3'}' | sed -e "s%^[[0-9]]d\.%%"`
if test x"${ffmpeg_version}" = x ; then
- ffmpeg_version=`$EGREP "define LIBAVCODEC_BUILD " ${avcodec_h} | awk '{print $'3'}'`
+ ffmpeg_version=`$EGREP "define LIBAVCODEC_BUILD " ${versionfile} | awk '{print $'3'}'`
fi
fi
@@ -384,32 +401,6 @@ dnl AC_EGREP_HEADER(avcodec_decode_audio2, ${avcodec
dnl
if test x"${ac_cv_path_ffmpeg_lib}" != x; then
- dnl Look for the DTS library, which is required on some systems. {
- dnl
- dnl TODO: skip this if -ldts is already in due to pkg-config
- dnl
- AC_MSG_CHECKING([for libdts library])
- if test x"$PKG_CONFIG" != x -a x${cross_compiling} = xno; then
- $PKG_CONFIG --exists libdts && libdts=`$PKG_CONFIG --libs-only-l libdts`
- else
- libdts=""
- fi
- if test x"${libdts}" = x; then
- if test -f ${top_lib_dir}/libdts.a -o -f ${top_lib_dir}/libdts.${shlibext}; then
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -ldts"
- AC_MSG_RESULT(${top_lib_dir}/libdts)
- else
- AC_MSG_RESULT(no)
- if test x${cross_compiling} = xno; then
- AC_CHECK_LIB(dts, dts_init, [ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -ldts"])
- fi
- fi
- else
- AC_MSG_RESULT(${libdts})
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} ${libdts}"
- fi
- dnl End of DTS library looking }
-
dnl Look for the VORBISENC library, which is required on some systems. {
AC_MSG_CHECKING([for libvorbisenc library])
if test x"$PKG_CONFIG" != x -a x${cross_compiling} = xno; then
@@ -525,22 +516,16 @@ dnl AC_EGREP_HEADER(avcodec_decode_audio2, ${avcodec
libgsm=""
fi
- dnl OpenBSD seems to have a problem with libgsm.
- if test x$openbsd_os != xopenbsd; then
- if test x"${libgsm}" = x; then
- if test -f ${top_lib_dir}/libgsm.a -o -f ${top_lib_dir}/libgsm.${shlibext}; then
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -lgsm"
- AC_MSG_RESULT(${top_lib_dir}/libgsm)
- else
- AC_MSG_RESULT(no)
- if test x${cross_compiling} = xno; then
- AC_CHECK_LIB(gsm, gsm_destroy, [ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -lgsm"])
- fi
+ if test x"${libgsm}" = x; then
+ if test -f ${top_lib_dir}/libgsm.a -o -f ${top_lib_dir}/libgsm.${shlibext}; then
+ ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -lgsm"
+ AC_MSG_RESULT(${top_lib_dir}/libgsm)
+ else
+ AC_MSG_RESULT(no)
+ if test x${cross_compiling} = xno; then
+ AC_CHECK_LIB(gsm, gsm_destroy, [ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} -lgsm"])
fi
fi
- else
- AC_MSG_RESULT(${libgsm})
- ac_cv_path_ffmpeg_lib="${ac_cv_path_ffmpeg_lib} ${libgsm}"
fi
dnl End of GSM library looking }