summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2007-04-04 14:01:47 +0200
committerDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2007-04-04 14:01:47 +0200
commit60a408c3446733dc752979c1eab579c25a4a4897 (patch)
treef897ecb51396ecf9f61c0f4219bf6f5a6287d380
parent15d6933ee064a25f1b9753841fb87f261ea3e736 (diff)
parentbdbfc75de59531f8a4d8d85b7e0e58c95365cbd7 (diff)
downloadxine-lib-60a408c3446733dc752979c1eab579c25a4a4897.tar.gz
xine-lib-60a408c3446733dc752979c1eab579c25a4a4897.tar.bz2
Merge from main repo.
-rw-r--r--ChangeLog1
-rw-r--r--configure.ac12
-rw-r--r--src/audio_out/audio_sun_out.c12
-rw-r--r--src/input/input_dvb.c7
-rw-r--r--src/input/input_dvd.c12
-rw-r--r--src/libmusepack/diff_against_svn.patch20
-rw-r--r--src/libmusepack/musepack/internal.h2
7 files changed, 47 insertions, 19 deletions
diff --git a/ChangeLog b/ChangeLog
index f55a02252..37c1d2ecc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -50,6 +50,7 @@ xine-lib (1.1.5) (Unreleased)
* Send an event when the amp level is modified. Patch by Reinhard Nissl.
* Add support for H.264 video stream in PES packets. Patch by Reinhard Nissl.
* Support multiple audio PID in MPEG TS. Patch by Julian Scheel.
+ * Improvement in portability to OpenBSD, thanks to Pascal S. de Kloe.
xine-lib (1.1.4)
* Mark string-type configuration items according to whether they're plain
diff --git a/configure.ac b/configure.ac
index dc3663bf9..bd5ad93f4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1618,6 +1618,12 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
AC_MSG_RESULT($have_sunaudio)
AM_CONDITIONAL(HAVE_SUNAUDIO, test "x$have_sunaudio" = "xyes")
+if "x$have_sunaudio" = "xyes"; then
+ dnl NetBSD and OpenBSD don't have this, but check for it
+ dnl rather than assuming that it doesn't happen elsewhere.
+ AC_CHECK_MEMBERS([audio_info_t.output_muted])
+fi
+
dnl ---------------------------------------------
dnl IRIX style audio interface
@@ -1643,7 +1649,8 @@ dnl ---------------------------------------------
dnl cdrom ioctls
dnl ---------------------------------------------
-AC_CHECK_HEADERS(sys/cdio.h linux/cdrom.h)
+AC_CHECK_HEADERS([linux/cdrom.h sys/dvdio.h], [break])
+AC_CHECK_HEADERS([sys/cdio.h])
AM_CHECK_CDROM_IOCTLS(
[AC_DEFINE(HAVE_CDROM_IOCTLS,1,[Define this if you have CDROM ioctls])],
[AC_MSG_RESULT([*** (S)VCD support will be disabled ***])])
@@ -2859,9 +2866,6 @@ if test "x$enable_libmad" = "xyes"; then
echo " - MAD (MPG 1/2/3) (internal library)"
fi
fi
-if test "x$have_wavpack" = "xyes"; then
- echo " - wavpack"
-fi
if test "x$enable_libdts" = "xyes"; then
if test "x$have_dts" = "xyes"; then
echo " - DTS (external library)"
diff --git a/src/audio_out/audio_sun_out.c b/src/audio_out/audio_sun_out.c
index 93361d2f3..5923eb658 100644
--- a/src/audio_out/audio_sun_out.c
+++ b/src/audio_out/audio_sun_out.c
@@ -126,10 +126,10 @@ typedef struct sun_driver_s {
#ifdef __svr4__
#if SW_SAMPLE_COUNT
struct timeval tv0;
- uint_t sample0;
+ size_t sample0;
#endif
- uint_t last_samplecnt;
+ size_t last_samplecnt;
#endif
} sun_driver_t;
@@ -604,8 +604,8 @@ static int ao_sun_delay(ao_driver_t *this_gen)
/* compute "current sample" based on real time */
{
struct timeval tv1;
- uint_t cur_sample;
- uint_t msec;
+ size_t cur_sample;
+ size_t msec;
gettimeofday(&tv1, NULL);
@@ -807,7 +807,7 @@ static int ao_sun_get_property (ao_driver_t *this_gen, int property) {
this->mixer_volume = info.play.gain * 100 / AUDIO_MAX_GAIN;
}
return this->mixer_volume;
-#if !defined(__NetBSD__) /* audio_info.output_muted is missing on NetBSD */
+#ifdef HAVE_AUDIO_INFO_T_OUTPUT_MUTED
case AO_PROP_MUTE_VOL:
if (ioctl(this->audio_fd, AUDIO_GETINFO, &info) < 0)
return 0;
@@ -836,7 +836,7 @@ static int ao_sun_set_property (ao_driver_t *this_gen, int property, int value)
if (ioctl(this->audio_fd, AUDIO_SETINFO, &info) < 0)
return ~value;
return value;
-#if !defined(__NetBSD__) /* audio_info.output_muted is missing on NetBSD */
+#ifdef HAVE_AUDIO_INFO_T_OUTPUT_MUTED
case AO_PROP_MUTE_VOL:
info.output_muted = value != 0;
if (ioctl(this->audio_fd, AUDIO_SETINFO, &info) < 0)
diff --git a/src/input/input_dvb.c b/src/input/input_dvb.c
index 39507ac15..10d6eca55 100644
--- a/src/input/input_dvb.c
+++ b/src/input/input_dvb.c
@@ -986,8 +986,13 @@ static int tuner_tune_it (tuner_t *this, struct dvb_frontend_parameters
if (poll(pfd,1,3000)){
if (pfd[0].revents & POLLIN){
- if (ioctl(this->fd_frontend, FE_GET_EVENT, &event) == -EOVERFLOW){
+#ifdef EOVERFLOW
+ if (ioctl(this->fd_frontend, FE_GET_EVENT, &event) == -EOVERFLOW) {
print_error("EOVERFLOW");
+#else
+ if (ioctl(this->fd_frontend, FE_GET_EVENT, &event) == -EINVAL) {
+ print_error("EINVAL");
+#endif
return 0;
}
if (event.parameters.frequency <= 0)
diff --git a/src/input/input_dvd.c b/src/input/input_dvd.c
index 944ae88bd..de47de0d5 100644
--- a/src/input/input_dvd.c
+++ b/src/input/input_dvd.c
@@ -64,21 +64,17 @@
#endif /* WIN32 */
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(HAVE_LINUX_CDROM_H)
+#include <linux/cdrom.h>
+#elif defined(HAVE_SYS_DVDIO_H)
#include <sys/dvdio.h>
#include <sys/cdio.h> /* CDIOCALLOW etc... */
-#elif defined(HAVE_LINUX_CDROM_H)
-#include <linux/cdrom.h>
#elif defined(HAVE_SYS_CDIO_H)
#include <sys/cdio.h>
-#else
-
-#ifdef WIN32
+#elif defined(WIN32)
#include <io.h> /* read() */
#else
#warning "This might not compile due to missing cdrom ioctls"
-#endif /* WIN32 */
-
#endif
/* DVDNAV includes */
diff --git a/src/libmusepack/diff_against_svn.patch b/src/libmusepack/diff_against_svn.patch
index aca00556c..1d44efb95 100644
--- a/src/libmusepack/diff_against_svn.patch
+++ b/src/libmusepack/diff_against_svn.patch
@@ -1,5 +1,6 @@
Use xine's inttypes.
The file config_types.h is generated from config_types.h.in in musepack SVN.
+Check for previous swap32 definition before writing a new swap32 function.
Index: src/libmusepack/musepack/config_types.h
===================================================================
@@ -33,3 +34,22 @@ diff -u -r1.1 synth_filter.c
/* C O N S T A N T S */
#undef _
+diff -r d25b274e6e6a src/libmusepack/musepack/internal.h
+--- a/src/libmusepack/musepack/internal.h Wed Apr 04 13:41:11 2007 +0200
++++ b/src/libmusepack/musepack/internal.h Wed Apr 04 13:42:45 2007 +0200
+@@ -8,6 +8,7 @@ enum {
+ MPC_DECODER_SYNTH_DELAY = 481
+ };
+
++#ifndef swap32
+ /// Big/little endian 32 bit byte swapping routine.
+ static inline
+ mpc_uint32_t swap32(mpc_uint32_t val) {
+@@ -16,6 +17,7 @@ mpc_uint32_t swap32(mpc_uint32_t val) {
+ (mpc_uint32_t)src[0] |
+ ((mpc_uint32_t)src[1] << 8) | ((mpc_uint32_t)src[2] << 16) | ((mpc_uint32_t)src[3] << 24);
+ }
++#endif
+
+ /// Searches for a ID3v2-tag and reads the length (in bytes) of it.
+ /// \param reader supplying raw stream data
diff --git a/src/libmusepack/musepack/internal.h b/src/libmusepack/musepack/internal.h
index 42a0e7156..f86b45bb3 100644
--- a/src/libmusepack/musepack/internal.h
+++ b/src/libmusepack/musepack/internal.h
@@ -8,6 +8,7 @@ enum {
MPC_DECODER_SYNTH_DELAY = 481
};
+#ifndef swap32
/// Big/little endian 32 bit byte swapping routine.
static inline
mpc_uint32_t swap32(mpc_uint32_t val) {
@@ -16,6 +17,7 @@ mpc_uint32_t swap32(mpc_uint32_t val) {
(mpc_uint32_t)src[0] |
((mpc_uint32_t)src[1] << 8) | ((mpc_uint32_t)src[2] << 16) | ((mpc_uint32_t)src[3] << 24);
}
+#endif
/// Searches for a ID3v2-tag and reads the length (in bytes) of it.
/// \param reader supplying raw stream data