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

Reply via email to