diff options
author | nox <nox@FreeBSD.org> | 2012-06-29 01:49:51 +0800 |
---|---|---|
committer | nox <nox@FreeBSD.org> | 2012-06-29 01:49:51 +0800 |
commit | 349357b0704a96b648afe1e0544148c5e82d6e63 (patch) | |
tree | 6193c8acce2779177b80527b251aa2a630490640 /multimedia | |
parent | ac91c810bc8351eda5fa2f1e3ce83eb11c0f2254 (diff) | |
download | freebsd-ports-gnome-349357b0704a96b648afe1e0544148c5e82d6e63.tar.gz freebsd-ports-gnome-349357b0704a96b648afe1e0544148c5e82d6e63.tar.zst freebsd-ports-gnome-349357b0704a96b648afe1e0544148c5e82d6e63.zip |
- Fix two linux/dvb ioctls in multimedia/v4l_compat , multimedia/webcamd ,
and multimedia/linux_dvbwrapper : CA_GET_SLOT_INFO and CA_GET_MSG
need to be _IOWR not _IOR.
- Bump PORTREVISION for multimedia/vdr too since it uses one of the ioctls.
(This fixes the CI slot of at last the TT CT-3650 DVB-C/T tuner.)
Approved by: hselasky (maintainer of multimedia/webcamd)
Diffstat (limited to 'multimedia')
-rw-r--r-- | multimedia/linux_dvbwrapper-kmod/Makefile | 1 | ||||
-rw-r--r-- | multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c | 6 | ||||
-rw-r--r-- | multimedia/v4l_compat/Makefile | 1 | ||||
-rw-r--r-- | multimedia/v4l_compat/files/patch-dvb-ca.h | 20 | ||||
-rw-r--r-- | multimedia/vdr/Makefile | 1 | ||||
-rw-r--r-- | multimedia/webcamd/Makefile | 1 | ||||
-rw-r--r-- | multimedia/webcamd/files/patch-media_tree-include-linux-dvb-ca.h | 20 |
7 files changed, 47 insertions, 3 deletions
diff --git a/multimedia/linux_dvbwrapper-kmod/Makefile b/multimedia/linux_dvbwrapper-kmod/Makefile index 47e03abfdaf7..cd3ca3a06522 100644 --- a/multimedia/linux_dvbwrapper-kmod/Makefile +++ b/multimedia/linux_dvbwrapper-kmod/Makefile @@ -7,6 +7,7 @@ PORTNAME= linux_dvbwrapper-kmod PORTVERSION= 1.0 +PORTREVISION= 1 CATEGORIES= multimedia kld DISTFILES= # none diff --git a/multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c b/multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c index c1f1b680fe9b..c99ecdb29905 100644 --- a/multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c +++ b/multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: /tmp/pcvs/ports/multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c,v 1.2 2011-09-27 17:37:18 nox Exp $"); +__FBSDID("$FreeBSD: /tmp/pcvs/ports/multimedia/linux_dvbwrapper-kmod/files/linux_dvbwrapper.c,v 1.3 2012-06-28 17:49:51 nox Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -263,13 +263,13 @@ linux_ioctl_dvb(struct thread *td, struct linux_ioctl_args *args) case LINUX_FE_GET_FRONTEND: case LINUX_FE_GET_EVENT: case LINUX_CA_GET_CAP: - case LINUX_CA_GET_SLOT_INFO: case LINUX_CA_GET_DESCR_INFO: - case LINUX_CA_GET_MSG: args->cmd = (args->cmd & ~IOC_DIRMASK) | IOC_OUT; break; case LINUX_DMX_GET_STC: + case LINUX_CA_GET_SLOT_INFO: + case LINUX_CA_GET_MSG: case LINUX_NET_GET_IF: net_add_if: args->cmd = (args->cmd & ~IOC_DIRMASK) | IOC_INOUT; diff --git a/multimedia/v4l_compat/Makefile b/multimedia/v4l_compat/Makefile index b9c3de8d5b9d..0933530c53d6 100644 --- a/multimedia/v4l_compat/Makefile +++ b/multimedia/v4l_compat/Makefile @@ -7,6 +7,7 @@ PORTNAME= v4l_compat PORTVERSION= 1.0.${DUMMYDATE} +PORTREVISION= 1 CATEGORIES= multimedia MASTER_SITES= LOCAL/kwm diff --git a/multimedia/v4l_compat/files/patch-dvb-ca.h b/multimedia/v4l_compat/files/patch-dvb-ca.h new file mode 100644 index 000000000000..bc42f2e9cdca --- /dev/null +++ b/multimedia/v4l_compat/files/patch-dvb-ca.h @@ -0,0 +1,20 @@ +--- dvb/ca.h.orig ++++ dvb/ca.h +@@ -80,9 +80,17 @@ typedef struct ca_pid { + + #define CA_RESET _IO('o', 128) + #define CA_GET_CAP _IOR('o', 129, ca_caps_t) ++ ++/* At least CA_GET_SLOT_INFO and CA_GET_MSG need to be _IOWR not _IOR. ++ * This is wrong on Linux too but there the driver doesn't care. ++ * + #define CA_GET_SLOT_INFO _IOR('o', 130, ca_slot_info_t) + #define CA_GET_DESCR_INFO _IOR('o', 131, ca_descr_info_t) + #define CA_GET_MSG _IOR('o', 132, ca_msg_t) ++ */ ++#define CA_GET_SLOT_INFO _IOWR('o', 130, ca_slot_info_t) ++#define CA_GET_DESCR_INFO _IOR('o', 131, ca_descr_info_t) ++#define CA_GET_MSG _IOWR('o', 132, ca_msg_t) + #define CA_SEND_MSG _IOW('o', 133, ca_msg_t) + #define CA_SET_DESCR _IOW('o', 134, ca_descr_t) + #define CA_SET_PID _IOW('o', 135, ca_pid_t) diff --git a/multimedia/vdr/Makefile b/multimedia/vdr/Makefile index 2a78cdb9c764..7f7a617becf7 100644 --- a/multimedia/vdr/Makefile +++ b/multimedia/vdr/Makefile @@ -7,6 +7,7 @@ PORTNAME= vdr PORTVERSION= 1.7.28 +PORTREVISION= 1 CATEGORIES= multimedia MASTER_SITES= ftp://ftp.tvdr.de/vdr/Developer/ diff --git a/multimedia/webcamd/Makefile b/multimedia/webcamd/Makefile index 20c271a0007c..72b591f57f26 100644 --- a/multimedia/webcamd/Makefile +++ b/multimedia/webcamd/Makefile @@ -7,6 +7,7 @@ PORTNAME= webcamd PORTVERSION= 3.6.0.1 +PORTREVISION= 1 CATEGORIES= multimedia MASTER_SITES= http://www.selasky.org/hans_petter/distfiles/ \ http://hselasky.homeunix.org:8192/distfiles/ diff --git a/multimedia/webcamd/files/patch-media_tree-include-linux-dvb-ca.h b/multimedia/webcamd/files/patch-media_tree-include-linux-dvb-ca.h new file mode 100644 index 000000000000..8841d967f0c4 --- /dev/null +++ b/multimedia/webcamd/files/patch-media_tree-include-linux-dvb-ca.h @@ -0,0 +1,20 @@ +--- media_tree/include/linux/dvb/ca.h.orig ++++ media_tree/include/linux/dvb/ca.h +@@ -80,9 +80,17 @@ typedef struct ca_pid { + + #define CA_RESET _IO('o', 128) + #define CA_GET_CAP _IOR('o', 129, ca_caps_t) ++ ++/* At least CA_GET_SLOT_INFO and CA_GET_MSG need to be _IOWR not _IOR. ++ * This is wrong on Linux too but there the driver doesn't care. ++ * + #define CA_GET_SLOT_INFO _IOR('o', 130, ca_slot_info_t) + #define CA_GET_DESCR_INFO _IOR('o', 131, ca_descr_info_t) + #define CA_GET_MSG _IOR('o', 132, ca_msg_t) ++ */ ++#define CA_GET_SLOT_INFO _IOWR('o', 130, ca_slot_info_t) ++#define CA_GET_DESCR_INFO _IOR('o', 131, ca_descr_info_t) ++#define CA_GET_MSG _IOWR('o', 132, ca_msg_t) + #define CA_SEND_MSG _IOW('o', 133, ca_msg_t) + #define CA_SET_DESCR _IOW('o', 134, ca_descr_t) + #define CA_SET_PID _IOW('o', 135, ca_pid_t) |