This is an automatic generated email to let you know that the following patch were queued at the http://git.linuxtv.org/v4l-utils.git tree:
Subject: Add (k)FreeBSD header file generation to kernel sync target Author: Gregor Jasny <[email protected]> Date: Mon Jun 18 18:53:58 2012 +0200 Signed-off-by: Gregor Jasny <[email protected]> Makefile.am | 1 + configure.ac | 1 + contrib/freebsd/Makefile.am | 16 +++++++ contrib/freebsd/bsdify.sh | 46 ++++++++++++++++++++ contrib/freebsd/patches/dvb-audio-header.diff | 13 ++++++ contrib/freebsd/patches/dvb-dmx-header.diff | 19 ++++++++ contrib/freebsd/patches/dvb-frontend-header.diff | 13 ++++++ contrib/freebsd/patches/dvb-net-header.diff | 13 ++++++ contrib/freebsd/patches/dvb-osd-header.diff | 13 ++++++ contrib/freebsd/patches/dvb-video-header.diff | 19 ++++++++ contrib/freebsd/patches/dvb-video-timestamp.diff | 13 ++++++ contrib/freebsd/patches/input-header.diff | 49 ++++++++++++++++++++++ contrib/freebsd/patches/ivtv-header.diff | 14 ++++++ contrib/freebsd/patches/series | 10 ++++ contrib/freebsd/patches/videodev2-header.diff | 49 ++++++++++++++++++++++ 15 files changed, 289 insertions(+), 0 deletions(-) --- http://git.linuxtv.org/v4l-utils.git?a=commitdiff;h=83faf406ad4b187818de79de174a9d32a9a98346 diff --git a/Makefile.am b/Makefile.am index d434bd8..20ae0ef 100644 --- a/Makefile.am +++ b/Makefile.am @@ -54,4 +54,5 @@ sync-with-kernel: $(MAKE) -C utils/v4l2-dbg $@ $(MAKE) -C utils/xc3028-firmware $@ $(MAKE) -C lib/libdvbv5 $@ + $(MAKE) -C contrib/freebsd $@ diff --git a/configure.ac b/configure.ac index 7ebe354..23b5ff0 100644 --- a/configure.ac +++ b/configure.ac @@ -28,6 +28,7 @@ AC_CONFIG_FILES([Makefile utils/xc3028-firmware/Makefile utils/qv4l2/Makefile + contrib/freebsd/Makefile contrib/test/Makefile v4l-utils.spec diff --git a/contrib/freebsd/Makefile.am b/contrib/freebsd/Makefile.am new file mode 100644 index 0000000..9a21e04 --- /dev/null +++ b/contrib/freebsd/Makefile.am @@ -0,0 +1,16 @@ +sync-with-kernel: + rm -rf .pc + + for i in input.h ivtv.h uinput.h videodev2.h dvb/{audio.h,ca.h,dmx.h,frontend.h,net.h,osd.h,version.h,video.h}; do \ + mkdir -p include/linux/$$(dirname $$i); \ + cp $(KERNEL_DIR)/include/linux/$$i include/linux/$$i; \ + done + + mkdir -p include/media + cp $(KERNEL_DIR)/include/media/v4l2-chip-ident.h include/media/ + + for i in ivtv.h uinput.h videodev2.h dvb/{audio.h,ca.h,dmx.h,frontend.h,net.h,osd.h,version.h,video.h}; do \ + sed -e 's/__u8/uint8_t/g' -e 's/__u16/uint16_t/g' -e 's/__u32/uint32_t/g' -e 's/__u64/uint64_t/g' -e 's/__s8/int8_t/g' -e 's/__s16/int16_t/g' -e 's/__s32/int32_t/g' -e 's/__s64/int64_t/g' -e 's/__le32/uint32_t/g' -e 's/__user//g' -i include/linux/$$i; \ + done + + quilt push -a diff --git a/contrib/freebsd/bsdify.sh b/contrib/freebsd/bsdify.sh new file mode 100755 index 0000000..1e24b66 --- /dev/null +++ b/contrib/freebsd/bsdify.sh @@ -0,0 +1,46 @@ +#!/bin/bash + +set -o errexit +set -x + +KERNEL_DIR="${1?'Need kernel directory'}" + +SED=sed + +function replace_types { + $SED \ + -e 's/__u8/uint8_t/g' \ + -e 's/__u16/uint16_t/g' \ + -e 's/__u32/uint32_t/g' \ + -e 's/__u64/uint64_t/g' \ + -e 's/__s8/int8_t/g' \ + -e 's/__s16/int16_t/g' \ + -e 's/__s32/int32_t/g' \ + -e 's/__s64/int64_t/g' \ + -e 's/__le32/uint32_t/g' \ + -e 's/__user//g' \ + -i "${1?'Missing file name'}" +} + +# clean + +rm -rf include .pc + +# copy + +for i in input.h ivtv.h uinput.h videodev2.h dvb/{audio.h,ca.h,dmx.h,frontend.h,net.h,osd.h,version.h,video.h}; do + mkdir -p include/linux/$(dirname $i) + cp $KERNEL_DIR/include/linux/$i include/linux/$i +done + +mkdir -p include/media +cp $KERNEL_DIR/include/media/v4l2-chip-ident.h include/media/ + +# replace kernel types + +for i in ivtv.h uinput.h videodev2.h dvb/{audio.h,ca.h,dmx.h,frontend.h,net.h,osd.h,version.h,video.h}; do + replace_types include/linux/$i +done + + +quilt push -a diff --git a/contrib/freebsd/patches/dvb-audio-header.diff b/contrib/freebsd/patches/dvb-audio-header.diff new file mode 100644 index 0000000..e8fac54 --- /dev/null +++ b/contrib/freebsd/patches/dvb-audio-header.diff @@ -0,0 +1,13 @@ +Index: freebsd/include/linux/dvb/audio.h +=================================================================== +--- freebsd.orig/include/linux/dvb/audio.h ++++ freebsd/include/linux/dvb/audio.h +@@ -24,7 +24,7 @@ + #ifndef _DVBAUDIO_H_ + #define _DVBAUDIO_H_ + +-#include <linux/types.h> ++#include <sys/types.h> + + typedef enum { + AUDIO_SOURCE_DEMUX, /* Select the demux as the main source */ diff --git a/contrib/freebsd/patches/dvb-dmx-header.diff b/contrib/freebsd/patches/dvb-dmx-header.diff new file mode 100644 index 0000000..8b0af15 --- /dev/null +++ b/contrib/freebsd/patches/dvb-dmx-header.diff @@ -0,0 +1,19 @@ +Index: freebsd/include/linux/dvb/dmx.h +=================================================================== +--- freebsd.orig/include/linux/dvb/dmx.h ++++ freebsd/include/linux/dvb/dmx.h +@@ -24,13 +24,8 @@ + #ifndef _DVBDMX_H_ + #define _DVBDMX_H_ + +-#include <linux/types.h> +-#ifdef __KERNEL__ +-#include <linux/time.h> +-#else ++#include <sys/types.h> + #include <time.h> +-#endif +- + + #define DMX_FILTER_SIZE 16 + diff --git a/contrib/freebsd/patches/dvb-frontend-header.diff b/contrib/freebsd/patches/dvb-frontend-header.diff new file mode 100644 index 0000000..1ade398 --- /dev/null +++ b/contrib/freebsd/patches/dvb-frontend-header.diff @@ -0,0 +1,13 @@ +Index: freebsd/include/linux/dvb/frontend.h +=================================================================== +--- freebsd.orig/include/linux/dvb/frontend.h ++++ freebsd/include/linux/dvb/frontend.h +@@ -26,7 +26,7 @@ + #ifndef _DVBFRONTEND_H_ + #define _DVBFRONTEND_H_ + +-#include <linux/types.h> ++#include <sys/types.h> + + typedef enum fe_type { + FE_QPSK, diff --git a/contrib/freebsd/patches/dvb-net-header.diff b/contrib/freebsd/patches/dvb-net-header.diff new file mode 100644 index 0000000..d0ff332 --- /dev/null +++ b/contrib/freebsd/patches/dvb-net-header.diff @@ -0,0 +1,13 @@ +Index: freebsd/include/linux/dvb/net.h +=================================================================== +--- freebsd.orig/include/linux/dvb/net.h ++++ freebsd/include/linux/dvb/net.h +@@ -24,7 +24,7 @@ + #ifndef _DVBNET_H_ + #define _DVBNET_H_ + +-#include <linux/types.h> ++#include <sys/types.h> + + struct dvb_net_if { + uint16_t pid; diff --git a/contrib/freebsd/patches/dvb-osd-header.diff b/contrib/freebsd/patches/dvb-osd-header.diff new file mode 100644 index 0000000..2bf6c93 --- /dev/null +++ b/contrib/freebsd/patches/dvb-osd-header.diff @@ -0,0 +1,13 @@ +Index: freebsd/include/linux/dvb/osd.h +=================================================================== +--- freebsd.orig/include/linux/dvb/osd.h ++++ freebsd/include/linux/dvb/osd.h +@@ -24,7 +24,7 @@ + #ifndef _DVBOSD_H_ + #define _DVBOSD_H_ + +-#include <linux/compiler.h> ++#include <sys/types.h> + + typedef enum { + // All functions return -2 on "not open" diff --git a/contrib/freebsd/patches/dvb-video-header.diff b/contrib/freebsd/patches/dvb-video-header.diff new file mode 100644 index 0000000..216a6d3 --- /dev/null +++ b/contrib/freebsd/patches/dvb-video-header.diff @@ -0,0 +1,19 @@ +Index: freebsd/include/linux/dvb/video.h +=================================================================== +--- freebsd.orig/include/linux/dvb/video.h ++++ freebsd/include/linux/dvb/video.h +@@ -24,13 +24,9 @@ + #ifndef _DVBVIDEO_H_ + #define _DVBVIDEO_H_ + +-#include <linux/types.h> +-#ifdef __KERNEL__ +-#include <linux/compiler.h> +-#else ++#include <sys/types.h> + #include <stdint.h> + #include <time.h> +-#endif + + typedef enum { + VIDEO_FORMAT_4_3, /* Select 4:3 format */ diff --git a/contrib/freebsd/patches/dvb-video-timestamp.diff b/contrib/freebsd/patches/dvb-video-timestamp.diff new file mode 100644 index 0000000..adf8b2d --- /dev/null +++ b/contrib/freebsd/patches/dvb-video-timestamp.diff @@ -0,0 +1,13 @@ +Index: freebsd/include/linux/dvb/video.h +=================================================================== +--- freebsd.orig/include/linux/dvb/video.h ++++ freebsd/include/linux/dvb/video.h +@@ -133,7 +133,7 @@ struct video_event { + #define VIDEO_EVENT_FRAME_RATE_CHANGED 2 + #define VIDEO_EVENT_DECODER_STOPPED 3 + #define VIDEO_EVENT_VSYNC 4 +- __kernel_time_t timestamp; ++ struct timespec timestamp; + union { + video_size_t size; + unsigned int frame_rate; /* in frames per 1000sec */ diff --git a/contrib/freebsd/patches/input-header.diff b/contrib/freebsd/patches/input-header.diff new file mode 100644 index 0000000..30e3875 --- /dev/null +++ b/contrib/freebsd/patches/input-header.diff @@ -0,0 +1,49 @@ +Index: freebsd/include/linux/input.h +=================================================================== +--- freebsd.orig/include/linux/input.h ++++ freebsd/include/linux/input.h +@@ -16,8 +16,44 @@ + #include <sys/time.h> + #include <sys/ioctl.h> + #include <sys/types.h> ++ ++#ifndef HAVE_LINUX_INTEGER_TYPES ++/* XXX remove when depending software has been updated */ ++#ifndef __u64 ++typedef uint64_t __u64; ++#endif ++#ifndef __u32 ++typedef uint32_t __u32; ++#endif ++#ifndef __u16 ++typedef uint16_t __u16; ++#endif ++#ifndef __u8 ++typedef uint8_t __u8; ++#endif ++ ++#ifndef __s64 ++typedef int64_t __s64; ++#endif ++#ifndef __s32 ++typedef int32_t __s32; ++#endif ++#ifndef __s16 ++typedef int16_t __s16; ++#endif ++#ifndef __s8 ++typedef int8_t __s8; ++#endif ++#endif ++ ++#ifdef __FreeBSD__ ++#define __user ++#define _IOC_READ IOC_OUT ++#define _IOC_WRITE IOC_IN ++#else + #include <linux/types.h> + #endif ++#endif + + /* + * The event structure itself diff --git a/contrib/freebsd/patches/ivtv-header.diff b/contrib/freebsd/patches/ivtv-header.diff new file mode 100644 index 0000000..4d9b02c --- /dev/null +++ b/contrib/freebsd/patches/ivtv-header.diff @@ -0,0 +1,14 @@ +Index: freebsd/include/linux/ivtv.h +=================================================================== +--- freebsd.orig/include/linux/ivtv.h ++++ freebsd/include/linux/ivtv.h +@@ -21,8 +21,7 @@ + #ifndef __LINUX_IVTV_H__ + #define __LINUX_IVTV_H__ + +-#include <linux/compiler.h> +-#include <linux/types.h> ++#include <sys/types.h> + #include <linux/videodev2.h> + + /* ivtv knows several distinct output modes: MPEG streaming, diff --git a/contrib/freebsd/patches/series b/contrib/freebsd/patches/series new file mode 100644 index 0000000..991accf --- /dev/null +++ b/contrib/freebsd/patches/series @@ -0,0 +1,10 @@ +input-header.diff +ivtv-header.diff +videodev2-header.diff +dvb-audio-header.diff +dvb-dmx-header.diff +dvb-frontend-header.diff +dvb-net-header.diff +dvb-osd-header.diff +dvb-video-header.diff +dvb-video-timestamp.diff diff --git a/contrib/freebsd/patches/videodev2-header.diff b/contrib/freebsd/patches/videodev2-header.diff new file mode 100644 index 0000000..d82d032 --- /dev/null +++ b/contrib/freebsd/patches/videodev2-header.diff @@ -0,0 +1,49 @@ +Index: freebsd/include/linux/videodev2.h +=================================================================== +--- freebsd.orig/include/linux/videodev2.h ++++ freebsd/include/linux/videodev2.h +@@ -56,14 +56,38 @@ + #ifndef __LINUX_VIDEODEV2_H + #define __LINUX_VIDEODEV2_H + +-#ifdef __KERNEL__ +-#include <linux/time.h> /* need struct timeval */ +-#else + #include <sys/time.h> ++#include <sys/types.h> ++#include <sys/ioctl.h> ++ ++#ifndef HAVE_LINUX_INTEGER_TYPES ++/* XXX remove when depending software has been updated */ ++#ifndef __u64 ++typedef uint64_t __u64; ++#endif ++#ifndef __u32 ++typedef uint32_t __u32; ++#endif ++#ifndef __u16 ++typedef uint16_t __u16; ++#endif ++#ifndef __u8 ++typedef uint8_t __u8; ++#endif ++ ++#ifndef __s64 ++typedef int64_t __s64; ++#endif ++#ifndef __s32 ++typedef int32_t __s32; ++#endif ++#ifndef __s16 ++typedef int16_t __s16; ++#endif ++#ifndef __s8 ++typedef int8_t __s8; ++#endif + #endif +-#include <linux/compiler.h> +-#include <linux/ioctl.h> +-#include <linux/types.h> + + /* + * Common stuff for both V4L1 and V4L2 _______________________________________________ linuxtv-commits mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits
