You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/media-libs/libdv/files/libdv-1.0.0-solaris.patch

154 lines
4.2 KiB

* grobian@gentoo.org: patches for Solaris, include sys/filio.h for
_IOWR, need -lrt for sched_* funcs
https://sourceforge.net/tracker/index.php?func=detail&aid=2603455&group_id=4393&atid=304393
--- a/configure.ac
+++ b/configure.ac
@@ -208,6 +208,8 @@
AC_CHECK_LIB(m, sqrt)
+# Solaris has sched_* in -lrt
+AC_CHECK_LIB(rt, sched_get_priority_max)
dnl Don't bother with popt on non-gcc build, because we make heavy use of
dnl gcc struct initialization extension in our popt code. (Could be fixed)
@@ -231,7 +231,7 @@
AC_PATH_X
AC_HEADER_STDC
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h linux/videodev.h sys/soundcard.h \
-endian.h machine/endian.h inttypes.h)
+endian.h machine/endian.h inttypes.h sys/filio.h)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
--- a/configure
+++ b/configure
@@ -20895,6 +20895,92 @@
fi
+{ echo "$as_me:$LINENO: checking for sched_get_priority_max in -lrt" >&5
+echo $ECHO_N "checking for sched_get_priority_max in -lrt... $ECHO_C" >&6; }
+if test "${ac_cv_lib_rt_sched_get_priority_max+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lrt $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* 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 sched_get_priority_max ();
+int
+main ()
+{
+return sched_get_priority_max ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_rt_sched_get_priority_max=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_rt_sched_get_priority_max=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_rt_sched_get_priority_max" >&5
+echo "${ECHO_T}$ac_cv_lib_rt_sched_get_priority_max" >&6; }
+if test $ac_cv_lib_rt_sched_get_priority_max = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBRT 1
+_ACEOF
+
+ LIBS="-lrt $LIBS"
+
+fi
+
REQUIRES_NOPKGCONFIG=""
if test "$GCC" = "yes"; then
@@ -21461,7 +21461,7 @@
for ac_header in fcntl.h sys/time.h unistd.h linux/videodev.h sys/soundcard.h \
-endian.h machine/endian.h inttypes.h
+endian.h machine/endian.h inttypes.h sys/filio.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
--- a/config.h.in
+++ b/config.h.in
@@ -30,6 +30,9 @@
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
+/* Define to 1 if you have the <sys/filio.h> header file. */
+#undef HAVE_SYS_FILIO_H
+
/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM
--- a/encodedv/dvconnect.c
+++ b/encodedv/dvconnect.c
@@ -31,6 +31,9 @@
#include <stdio.h>
#include <sys/ioctl.h>
+#ifdef HAVE_SYS_FILIO_H
+#include <sys/filio.h>
+#endif
#include <sys/mman.h>
#include <sys/time.h>
#include <unistd.h>