Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=0f8b070e62002452c82888338029ec84d0af645b

commit 0f8b070e62002452c82888338029ec84d0af645b
Author: Miklos Vajna <vmik...@frugalware.org>
Date:   Sun Apr 3 23:27:39 2011 +0200

hal-0.5.14-14-i686

- add hack to build with kernel-2.6.38 headers
- added tmpfiles.d config

diff --git a/source/apps/hal/FrugalBuild b/source/apps/hal/FrugalBuild
index d859ca9..cafff3e 100644
--- a/source/apps/hal/FrugalBuild
+++ b/source/apps/hal/FrugalBuild
@@ -4,7 +4,7 @@

pkgname=hal
pkgver=0.5.14
-pkgrel=13
+pkgrel=14
pkgdesc="Hardware Abstraction Layer"
url="http://www.freedesktop.org/wiki/Software/hal";
depends=('dbus-glib>=0.74' 'udev>=132' 'util-linux' 'glib2' 'libcap>=2.19' 
'dbus>=1.2.12-4' \
@@ -26,6 +26,7 @@ 
source=(http://hal.freedesktop.org/releases/$pkgname-$pkgver.tar.gz \
fix_libusbdetection.diff \
hal.conf.patch \
do_not_check_hal_on_bus.patch \
+       kernel2638.diff \
org.freedesktop.Hal.service \
haldaemon.service)
sha1sums=('95bdc8141b0bce197d0d47f5bec491b08c6e3853' \
@@ -36,6 +37,7 @@ sha1sums=('95bdc8141b0bce197d0d47f5bec491b08c6e3853' \
'f47dcd1b596605db17ae24942d40f6210cbe6b6d' \
'effad668dfcf46e20be068625fc3a027a26ae935' \
'15d78abf9f61a2d3b2fc76d1c44c11a57e7dc2a3' \
+          '97abfd8528692d3f7e04670831ec28f54bbe4d6c' \
'baf7bb113d0bf766961d5b7af0863ff260e9f916' \
'25d1b5976690438134e4a53c4ac3aa71469d2050')
build()
@@ -65,14 +67,19 @@ build()
--enable-console-kit \
--host=${CHOST} \
--build=${CHOST}
-       # TODO: package pm-tools and libsmbios ..
Fmakeinstall
Frm /etc/hotplug.d
-       Fmkdir /media
Frcd hald
Ffile /usr/share/dbus-1/system-services/org.freedesktop.Hal.service
Ffile /lib/systemd/system/haldaemon.service
Fln /dev/null /lib/systemd/system/hald.service
+       Frm /var/run
+       Fmkdir /etc/tmpfiles.d
+       cat > $Fdestdir/etc/tmpfiles.d/hal.conf << EOF
+d $Flocalstatedir/run/hald 0755 root root -
+d $Flocalstatedir/run/hald/hald-runner 0755 root root -
+d $Flocalstatedir/run/hald/hald-local 0755 root root -
+EOF
}

# optimization OK
diff --git a/source/apps/hal/kernel2638.diff b/source/apps/hal/kernel2638.diff
new file mode 100644
index 0000000..4b8ddd4
--- /dev/null
+++ b/source/apps/hal/kernel2638.diff
@@ -0,0 +1,339 @@
+diff --git a/hald/linux/probing/probe-video4linux.c 
b/hald/linux/probing/probe-video4linux.c
+index cf913c0..54aefcb 100644
+--- a/hald/linux/probing/probe-video4linux.c
++++ b/hald/linux/probing/probe-video4linux.c
+@@ -30,7 +30,7 @@
+ #include <sys/types.h>
+ #include <sys/time.h>
+ #include <sys/ioctl.h>
+-#include <linux/videodev.h>
++#include "videodev.h"
+ #include <linux/videodev2.h>
+ #include <errno.h>
+ #include <fcntl.h>
+diff --git a/hald/linux/probing/videodev.h b/hald/linux/probing/videodev.h
+new file mode 100644
+index 0000000..c51a5f9
+--- /dev/null
++++ b/hald/linux/probing/videodev.h
+@@ -0,0 +1,320 @@
++/*
++ *    Video for Linux version 1 - OBSOLETE
++ *
++ *    Header file for v4l1 drivers and applications, for
++ *    Linux kernels 2.2.x or 2.4.x.
++ *
++ *    Provides header for legacy drivers and applications
++ *
++ *    See http://linuxtv.org for more info
++ *
++ */
++#ifndef __LINUX_VIDEODEV_H
++#define __LINUX_VIDEODEV_H
++
++#include <linux/types.h>
++#include <linux/ioctl.h>
++#include <linux/videodev2.h>
++
++
++#define VID_TYPE_CAPTURE      1       /* Can capture */
++#define VID_TYPE_TUNER                2       /* Can tune */
++#define VID_TYPE_TELETEXT     4       /* Does teletext */
++#define VID_TYPE_OVERLAY      8       /* Overlay onto frame buffer */
++#define VID_TYPE_CHROMAKEY    16      /* Overlay by chromakey */
++#define VID_TYPE_CLIPPING     32      /* Can clip */
++#define VID_TYPE_FRAMERAM     64      /* Uses the frame buffer memory */
++#define VID_TYPE_SCALES               128     /* Scalable */
++#define VID_TYPE_MONOCHROME   256     /* Monochrome only */
++#define VID_TYPE_SUBCAPTURE   512     /* Can capture subareas of the image */
++#define VID_TYPE_MPEG_DECODER 1024    /* Can decode MPEG streams */
++#define VID_TYPE_MPEG_ENCODER 2048    /* Can encode MPEG streams */
++#define VID_TYPE_MJPEG_DECODER        4096    /* Can decode MJPEG streams */
++#define VID_TYPE_MJPEG_ENCODER        8192    /* Can encode MJPEG streams */
++
++struct video_capability
++{
++      char name[32];
++      int type;
++      int channels;   /* Num channels */
++      int audios;     /* Num audio devices */
++      int maxwidth;   /* Supported width */
++      int maxheight;  /* And height */
++      int minwidth;   /* Supported width */
++      int minheight;  /* And height */
++};
++
++
++struct video_channel
++{
++      int channel;
++      char name[32];
++      int tuners;
++      __u32  flags;
++#define VIDEO_VC_TUNER                1       /* Channel has a tuner */
++#define VIDEO_VC_AUDIO                2       /* Channel has audio */
++      __u16  type;
++#define VIDEO_TYPE_TV         1
++#define VIDEO_TYPE_CAMERA     2
++      __u16 norm;                     /* Norm set by channel */
++};
++
++struct video_tuner
++{
++      int tuner;
++      char name[32];
++      unsigned long rangelow, rangehigh;      /* Tuner range */
++      __u32 flags;
++#define VIDEO_TUNER_PAL               1
++#define VIDEO_TUNER_NTSC      2
++#define VIDEO_TUNER_SECAM     4
++#define VIDEO_TUNER_LOW               8       /* Uses KHz not MHz */
++#define VIDEO_TUNER_NORM      16      /* Tuner can set norm */
++#define VIDEO_TUNER_STEREO_ON 128     /* Tuner is seeing stereo */
++#define VIDEO_TUNER_RDS_ON      256     /* Tuner is seeing an RDS datastream 
*/
++#define VIDEO_TUNER_MBS_ON      512     /* Tuner is seeing an MBS datastream 
*/
++      __u16 mode;                     /* PAL/NTSC/SECAM/OTHER */
++#define VIDEO_MODE_PAL                0
++#define VIDEO_MODE_NTSC               1
++#define VIDEO_MODE_SECAM      2
++#define VIDEO_MODE_AUTO               3
++      __u16 signal;                   /* Signal strength 16bit scale */
++};
++
++struct video_picture
++{
++      __u16   brightness;
++      __u16   hue;
++      __u16   colour;
++      __u16   contrast;
++      __u16   whiteness;      /* Black and white only */
++      __u16   depth;          /* Capture depth */
++      __u16   palette;        /* Palette in use */
++#define VIDEO_PALETTE_GREY    1       /* Linear greyscale */
++#define VIDEO_PALETTE_HI240   2       /* High 240 cube (BT848) */
++#define VIDEO_PALETTE_RGB565  3       /* 565 16 bit RGB */
++#define VIDEO_PALETTE_RGB24   4       /* 24bit RGB */
++#define VIDEO_PALETTE_RGB32   5       /* 32bit RGB */
++#define VIDEO_PALETTE_RGB555  6       /* 555 15bit RGB */
++#define VIDEO_PALETTE_YUV422  7       /* YUV422 capture */
++#define VIDEO_PALETTE_YUYV    8
++#define VIDEO_PALETTE_UYVY    9       /* The great thing about standards is 
... */
++#define VIDEO_PALETTE_YUV420  10
++#define VIDEO_PALETTE_YUV411  11      /* YUV411 capture */
++#define VIDEO_PALETTE_RAW     12      /* RAW capture (BT848) */
++#define VIDEO_PALETTE_YUV422P 13      /* YUV 4:2:2 Planar */
++#define VIDEO_PALETTE_YUV411P 14      /* YUV 4:1:1 Planar */
++#define VIDEO_PALETTE_YUV420P 15      /* YUV 4:2:0 Planar */
++#define VIDEO_PALETTE_YUV410P 16      /* YUV 4:1:0 Planar */
++#define VIDEO_PALETTE_PLANAR  13      /* start of planar entries */
++#define VIDEO_PALETTE_COMPONENT 7     /* start of component entries */
++};
++
++struct video_audio
++{
++      int     audio;          /* Audio channel */
++      __u16   volume;         /* If settable */
++      __u16   bass, treble;
++      __u32   flags;
++#define VIDEO_AUDIO_MUTE      1
++#define VIDEO_AUDIO_MUTABLE   2
++#define VIDEO_AUDIO_VOLUME    4
++#define VIDEO_AUDIO_BASS      8
++#define VIDEO_AUDIO_TREBLE    16
++#define VIDEO_AUDIO_BALANCE   32
++      char    name[16];
++#define VIDEO_SOUND_MONO      1
++#define VIDEO_SOUND_STEREO    2
++#define VIDEO_SOUND_LANG1     4
++#define VIDEO_SOUND_LANG2     8
++      __u16   mode;
++      __u16   balance;        /* Stereo balance */
++      __u16   step;           /* Step actual volume uses */
++};
++
++struct video_clip
++{
++      __s32   x,y;
++      __s32   width, height;
++      struct  video_clip *next;       /* For user use/driver use only */
++};
++
++struct video_window
++{
++      __u32   x,y;                    /* Position of window */
++      __u32   width,height;           /* Its size */
++      __u32   chromakey;
++      __u32   flags;
++      struct  video_clip *clips;      /* Set only */
++      int     clipcount;
++#define VIDEO_WINDOW_INTERLACE        1
++#define VIDEO_WINDOW_CHROMAKEY        16      /* Overlay by chromakey */
++#define VIDEO_CLIP_BITMAP     -1
++/* bitmap is 1024x625, a '1' bit represents a clipped pixel */
++#define VIDEO_CLIPMAP_SIZE    (128 * 625)
++};
++
++struct video_capture
++{
++      __u32   x,y;                    /* Offsets into image */
++      __u32   width, height;          /* Area to capture */
++      __u16   decimation;             /* Decimation divider */
++      __u16   flags;                  /* Flags for capture */
++#define VIDEO_CAPTURE_ODD             0       /* Temporal */
++#define VIDEO_CAPTURE_EVEN            1
++};
++
++struct video_buffer
++{
++      void    *base;
++      int     height,width;
++      int     depth;
++      int     bytesperline;
++};
++
++struct video_mmap
++{
++      unsigned        int frame;              /* Frame (0 - n) for double 
buffer */
++      int             height,width;
++      unsigned        int format;             /* should be VIDEO_PALETTE_* */
++};
++
++struct video_key
++{
++      __u8    key[8];
++      __u32   flags;
++};
++
++struct video_mbuf
++{
++      int     size;           /* Total memory to map */
++      int     frames;         /* Frames */
++      int     offsets[VIDEO_MAX_FRAME];
++};
++
++#define       VIDEO_NO_UNIT   (-1)
++
++struct video_unit
++{
++      int     video;          /* Video minor */
++      int     vbi;            /* VBI minor */
++      int     radio;          /* Radio minor */
++      int     audio;          /* Audio minor */
++      int     teletext;       /* Teletext minor */
++};
++
++struct vbi_format {
++      __u32   sampling_rate;  /* in Hz */
++      __u32   samples_per_line;
++      __u32   sample_format;  /* VIDEO_PALETTE_RAW only (1 byte) */
++      __s32   start[2];       /* starting line for each frame */
++      __u32   count[2];       /* count of lines for each frame */
++      __u32   flags;
++#define       VBI_UNSYNC      1       /* can distingues between top/bottom 
field */
++#define       VBI_INTERLACED  2       /* lines are interlaced */
++};
++
++/* video_info is biased towards hardware mpeg encode/decode */
++/* but it could apply generically to any hardware compressor/decompressor */
++struct video_info
++{
++      __u32   frame_count;    /* frames output since decode/encode began */
++      __u32   h_size;         /* current unscaled horizontal size */
++      __u32   v_size;         /* current unscaled veritcal size */
++      __u32   smpte_timecode; /* current SMPTE timecode (for current GOP) */
++      __u32   picture_type;   /* current picture type */
++      __u32   temporal_reference;     /* current temporal reference */
++      __u8    user_data[256]; /* user data last found in compressed stream */
++      /* user_data[0] contains user data flags, user_data[1] has count */
++};
++
++/* generic structure for setting playback modes */
++struct video_play_mode
++{
++      int     mode;
++      int     p1;
++      int     p2;
++};
++
++/* for loading microcode / fpga programming */
++struct video_code
++{
++      char    loadwhat[16];   /* name or tag of file being passed */
++      int     datasize;
++      __u8    *data;
++};
++
++#define VIDIOCGCAP            _IOR('v',1,struct video_capability)     /* Get 
capabilities */
++#define VIDIOCGCHAN           _IOWR('v',2,struct video_channel)       /* Get 
channel info (sources) */
++#define VIDIOCSCHAN           _IOW('v',3,struct video_channel)        /* Set 
channel  */
++#define VIDIOCGTUNER          _IOWR('v',4,struct video_tuner)         /* Get 
tuner abilities */
++#define VIDIOCSTUNER          _IOW('v',5,struct video_tuner)          /* Tune 
the tuner for the current channel */
++#define VIDIOCGPICT           _IOR('v',6,struct video_picture)        /* Get 
picture properties */
++#define VIDIOCSPICT           _IOW('v',7,struct video_picture)        /* Set 
picture properties */
++#define VIDIOCCAPTURE         _IOW('v',8,int)                         /* 
Start, end capture */
++#define VIDIOCGWIN            _IOR('v',9, struct video_window)        /* Get 
the video overlay window */
++#define VIDIOCSWIN            _IOW('v',10, struct video_window)       /* Set 
the video overlay window - passes clip list for hardware smarts , chromakey etc 
*/
++#define VIDIOCGFBUF           _IOR('v',11, struct video_buffer)       /* Get 
frame buffer */
++#define VIDIOCSFBUF           _IOW('v',12, struct video_buffer)       /* Set 
frame buffer - root only */
++#define VIDIOCKEY             _IOR('v',13, struct video_key)          /* 
Video key event - to dev 255 is to all - cuts capture on all DMA windows with 
this key (0xFFFFFFFF == all) */
++#define VIDIOCGFREQ           _IOR('v',14, unsigned long)             /* Set 
tuner */
++#define VIDIOCSFREQ           _IOW('v',15, unsigned long)             /* Set 
tuner */
++#define VIDIOCGAUDIO          _IOR('v',16, struct video_audio)        /* Get 
audio info */
++#define VIDIOCSAUDIO          _IOW('v',17, struct video_audio)        /* 
Audio source, mute etc */
++#define VIDIOCSYNC            _IOW('v',18, int)                       /* Sync 
with mmap grabbing */
++#define VIDIOCMCAPTURE                _IOW('v',19, struct video_mmap)         
/* Grab frames */
++#define VIDIOCGMBUF           _IOR('v',20, struct video_mbuf)         /* 
Memory map buffer info */
++#define VIDIOCGUNIT           _IOR('v',21, struct video_unit)         /* Get 
attached units */
++#define VIDIOCGCAPTURE                _IOR('v',22, struct video_capture)      
/* Get subcapture */
++#define VIDIOCSCAPTURE                _IOW('v',23, struct video_capture)      
/* Set subcapture */
++#define VIDIOCSPLAYMODE               _IOW('v',24, struct video_play_mode)    
/* Set output video mode/feature */
++#define VIDIOCSWRITEMODE      _IOW('v',25, int)                       /* Set 
write mode */
++#define VIDIOCGPLAYINFO               _IOR('v',26, struct video_info)         
/* Get current playback info from hardware */
++#define VIDIOCSMICROCODE      _IOW('v',27, struct video_code)         /* Load 
microcode into hardware */
++#define       VIDIOCGVBIFMT           _IOR('v',28, struct vbi_format)         
/* Get VBI information */
++#define       VIDIOCSVBIFMT           _IOW('v',29, struct vbi_format)         
/* Set VBI information */
++
++
++#define BASE_VIDIOCPRIVATE    192             /* 192-255 are private */
++
++/* VIDIOCSWRITEMODE */
++#define VID_WRITE_MPEG_AUD            0
++#define VID_WRITE_MPEG_VID            1
++#define VID_WRITE_OSD                 2
++#define VID_WRITE_TTX                 3
++#define VID_WRITE_CC                  4
++#define VID_WRITE_MJPEG                       5
++
++/* VIDIOCSPLAYMODE */
++#define VID_PLAY_VID_OUT_MODE         0
++      /* p1: = VIDEO_MODE_PAL, VIDEO_MODE_NTSC, etc ... */
++#define VID_PLAY_GENLOCK              1
++      /* p1: 0 = OFF, 1 = ON */
++      /* p2: GENLOCK FINE DELAY value */
++#define VID_PLAY_NORMAL                       2
++#define VID_PLAY_PAUSE                        3
++#define VID_PLAY_SINGLE_FRAME         4
++#define VID_PLAY_FAST_FORWARD         5
++#define VID_PLAY_SLOW_MOTION          6
++#define VID_PLAY_IMMEDIATE_NORMAL     7
++#define VID_PLAY_SWITCH_CHANNELS      8
++#define VID_PLAY_FREEZE_FRAME         9
++#define VID_PLAY_STILL_MODE           10
++#define VID_PLAY_MASTER_MODE          11
++      /* p1: see below */
++#define               VID_PLAY_MASTER_NONE    1
++#define               VID_PLAY_MASTER_VIDEO   2
++#define               VID_PLAY_MASTER_AUDIO   3
++#define VID_PLAY_ACTIVE_SCANLINES     12
++      /* p1 = first active; p2 = last active */
++#define VID_PLAY_RESET                        13
++#define VID_PLAY_END_MARK             14
++
++
++#endif /* __LINUX_VIDEODEV_H */
++
++/*
++ * Local variables:
++ * c-basic-offset: 8
++ * End:
++ */
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to