- Pull security fix for the new lirc_clientd from upstream CVS, and while

at it, some other useful post-0.8.0pre1 changes.
- Kernel >= 2.6.15 patchwork based on initial patch from Andy Burns
    (#172404).
- Disable lirc_cmdir kernel module (unknown symbols).
- Adapt to modular X.Org packaging.
Wed Nov 9 2005 Ville Skyttä <ville.skytta at iki.fi> - 0.8.0-0.1.pre1
- 0.8.0pre1, usage message patch applied upstream.
Sun Oct 30 2005 Ville Skyttä <ville.skytta at iki.fi> - 0.7.3-0.1.pre1
- 0.7.3pre1, "no device" crash fix applied upstream.
- Fix lircd and lircmd usage messages.
epel8
Ville Skyttä 19 years ago
parent 9956455323
commit b0fc0d577b

@ -1 +1 @@
lirc-0.7.2.tar.bz2
lirc-0.8.0pre1.tar.bz2

@ -0,0 +1,72 @@
Index: drivers/lirc_dev/lirc_dev.c
===================================================================
RCS file: /cvsroot/lirc/lirc/drivers/lirc_dev/lirc_dev.c,v
retrieving revision 1.44
diff -u -r1.44 lirc_dev.c
--- drivers/lirc_dev/lirc_dev.c 8 Aug 2005 06:04:48 -0000 1.44
+++ drivers/lirc_dev/lirc_dev.c 29 Nov 2005 01:15:17 -0000
@@ -382,7 +382,11 @@
S_IFCHR|S_IRUSR|S_IWUSR,
DEV_LIRC "/%u", ir->p.minor);
#endif
- (void) class_device_create(lirc_class, MKDEV(IRCTL_DEV_MAJOR, ir->p.minor),
+ (void) class_device_create(lirc_class,
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15)
+ NULL,
+#endif
+ MKDEV(IRCTL_DEV_MAJOR, ir->p.minor),
NULL, "lirc%u", ir->p.minor);
if(p->sample_rate || p->get_queue) {
Index: drivers/lirc_imon/lirc_imon.c
===================================================================
RCS file: /cvsroot/lirc/lirc/drivers/lirc_imon/lirc_imon.c,v
retrieving revision 1.8
diff -u -r1.8 lirc_imon.c
--- drivers/lirc_imon/lirc_imon.c 29 Oct 2005 14:18:53 -0000 1.8
+++ drivers/lirc_imon/lirc_imon.c 29 Nov 2005 01:15:18 -0000
@@ -72,7 +72,7 @@
#define VFD_MINOR_BASE 144 /* Same as LCD */
#define DEVFS_MODE S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH
-#define DEVFS_NAME "usb/lcd%d"
+#define DEVFS_NAME "lcd%d"
#define BUF_CHUNK_SIZE 4
#define BUF_SIZE 128
@@ -216,7 +216,9 @@
static struct usb_class_driver imon_class = {
.name = DEVFS_NAME,
.fops = &vfd_fops,
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,15)
.mode = DEVFS_MODE,
+#endif
.minor_base = VFD_MINOR_BASE,
};
#endif
Index: drivers/lirc_sasem/lirc_sasem.c
===================================================================
RCS file: /cvsroot/lirc/lirc/drivers/lirc_sasem/lirc_sasem.c,v
retrieving revision 1.11
diff -u -r1.11 lirc_sasem.c
--- drivers/lirc_sasem/lirc_sasem.c 29 Oct 2005 14:18:53 -0000 1.11
+++ drivers/lirc_sasem/lirc_sasem.c 29 Nov 2005 01:15:19 -0000
@@ -81,7 +81,7 @@
#define VFD_MINOR_BASE 144 /* Same as LCD */
#define DEVFS_MODE S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH
-#define DEVFS_NAME "usb/lcd%d"
+#define DEVFS_NAME "lcd%d"
#define BUF_CHUNK_SIZE 8
#define BUF_SIZE 128
@@ -204,7 +204,9 @@
static struct usb_class_driver sasem_class = {
.name = DEVFS_NAME,
.fops = &vfd_fops,
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,15)
.mode = DEVFS_MODE,
+#endif
.minor_base = VFD_MINOR_BASE,
};
#endif

@ -0,0 +1,405 @@
--- lirc-0.8.0pre1/configure.in.orig 2005-11-05 18:52:50.000000000 +0200
+++ lirc-0.8.0pre1/configure.in 2005-11-29 00:23:03.000000000 +0200
@@ -137,6 +137,7 @@
AC_MSG_RESULT()
possible_drivers="(none) \
+ (userspace)
(bte) \
(bw6130) \
(creative) \
@@ -164,7 +165,7 @@
if test x${no_kernel} != xyes; then
possible_drivers="${possible_drivers} \
- (any) \
+ (all) \
(lirc_dev) \
(lirc_dev lirc_atiusb) \
(lirc_dev lirc_bt829) \
@@ -301,9 +302,9 @@
HW_DEFAULT="hw_null"
fi
-if test "$driver" = "any"; then
+if test "$driver" = "userspace" -o "$driver" = "all"; then
AC_DEFINE(LIRC_DRIVER_ANY)
- lirc_driver="any"
+ lirc_driver=$driver
any_possible_drivers=`echo ${possible_drivers} | sed -e's/ /-/g' \
-e's/)-(/ /g' -e's/(//g' -e's/)//g' \
@@ -1039,7 +1040,7 @@
AC_MSG_ERROR([*** you need to first install the caraca package
before you can use this driver])
;;
- any|lirc_*)
+ all|lirc_*)
AC_MSG_ERROR([*** you need to have the Linux kernel source installed
for this driver])
;;
@@ -1078,6 +1079,7 @@
if test "$lirc_driver" = "none" || \
test "$lirc_driver" = "alsa_usb" || \
+ test "$lirc_driver" = "userspace" || \
test "$lirc_driver" = "atilibusb" || \
test "$lirc_driver" = "audio" || \
test "$lirc_driver" = "audio_alsa" || \
@@ -1085,7 +1087,7 @@
test "$lirc_driver" = "irman" || \
test "$lirc_driver" = "irman_sw"; then
lirc_driver=
-elif test "$lirc_driver" = "any"; then
+elif test "$lirc_driver" = "all"; then
lirc_driver="lirc_dev \
lirc_atiusb \
lirc_bt829 \
@@ -1316,7 +1318,7 @@
])
echo
-if test "$driver" = "any"; then
+if test "$driver" = "all"; then
echo "All kernel modules will be built."
elif test "$driver" = "mediafocusI"; then
echo "You will have to use the MediaFocus driver from:"
--- lirc-0.8.0pre1/drivers/lirc_bt829/lirc_bt829.c.orig 2005-02-19 17:12:58.000000000 +0200
+++ lirc-0.8.0pre1/drivers/lirc_bt829/lirc_bt829.c 2005-11-29 00:21:39.000000000 +0200
@@ -65,7 +65,8 @@
}while(0)
static int atir_minor;
-static unsigned long pci_addr_phys, pci_addr_lin;
+static unsigned long pci_addr_phys;
+static unsigned char *pci_addr_lin;
static struct lirc_plugin atir_plugin;
@@ -81,7 +82,7 @@
my_dev = (struct pci_dev *)pci_find_device(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_264VT,NULL);
if ( my_dev ) {
printk(KERN_ERR "ATIR: Using device: %s\n",
- pci_pretty_name(my_dev));
+ pci_name(my_dev));
pci_addr_phys = 0;
if ( my_dev->resource[0].flags & IORESOURCE_MEM ) {
pci_addr_phys = my_dev->resource[0].start;
@@ -161,7 +162,7 @@
static int atir_init_start(void)
{
- pci_addr_lin = (unsigned long)ioremap(pci_addr_phys + DATA_PCI_OFF,0x400);
+ pci_addr_lin = ioremap(pci_addr_phys + DATA_PCI_OFF,0x400);
if ( pci_addr_lin == 0 ) {
printk(KERN_INFO "atir: pci mem must be mapped\n");
return 0;
@@ -363,7 +364,8 @@
static unsigned int read_index(unsigned char index)
{
- unsigned int addr, value;
+ unsigned char *addr;
+ unsigned int value;
// addr = pci_addr_lin + DATA_PCI_OFF + ((index & 0xFF) << 2);
addr = pci_addr_lin + ((index & 0xFF) << 2);
value = readl(addr);
@@ -372,7 +374,7 @@
static void write_index(unsigned char index,unsigned int reg_val)
{
- unsigned int addr;
+ unsigned char *addr;
addr = pci_addr_lin + ((index & 0xFF) << 2);
writel(reg_val,addr);
}
--- lirc-0.8.0pre1/drivers/kcompat.h.orig 2005-10-29 17:18:53.000000000 +0300
+++ lirc-0.8.0pre1/drivers/kcompat.h 2005-11-29 00:21:39.000000000 +0200
@@ -187,9 +187,12 @@
#define local_irq_restore(flags) do{ restore_flags(flags); } while(0)
#endif
-#if !defined(pci_pretty_name)
-#define pci_pretty_name(dev) ((dev)->name)
-#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,4,22)
+static inline char *pci_name(struct pci_dev *pdev)
+{
+ return pdev->slot_name;
+}
+#endif//Kernel<2.4.22
/*************************** I2C specific *****************************/
#include <linux/i2c.h>
--- lirc-0.8.0pre1/tools/lirc_client.h.orig 2005-11-01 21:12:16.000000000 +0200
+++ lirc-0.8.0pre1/tools/lirc_client.h 2005-11-29 00:21:39.000000000 +0200
@@ -14,6 +14,8 @@
#ifndef LIRC_CLIENT_H
#define LIRC_CLIENT_H
+#include <stddef.h>
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -91,6 +93,7 @@
int lirc_code2charprog(struct lirc_config *config,char *code,char **string,
char **prog);
size_t lirc_getsocketname(const char *filename, char *buf, size_t size);
+const char *lirc_getmode(struct lirc_config *config);
/* new interface for transmit */
int lirc_send_command(int sockfd, const char *command, char *buf, size_t *buf_len, int *ret_status);
--- lirc-0.8.0pre1/tools/lirc_client.c.orig 2005-11-01 21:12:16.000000000 +0200
+++ lirc-0.8.0pre1/tools/lirc_client.c 2005-11-29 00:21:39.000000000 +0200
@@ -1723,7 +1723,7 @@
char *new_buffer;
packet_size+=PACKET_SIZE;
- new_buffer=(char *) realloc(lirc_buffer,packet_size);
+ new_buffer=(char *) realloc(lirc_buffer,packet_size+1);
if(new_buffer==NULL)
{
return(-1);
@@ -1767,6 +1767,33 @@
return strlen(filename)+2;
}
+const char *lirc_getmode(struct lirc_config *config)
+{
+ if(config->sockfd!=-1)
+ {
+ static char buf[LIRC_PACKET_SIZE];
+ size_t buf_len = LIRC_PACKET_SIZE;
+ int success;
+ int ret;
+
+ ret = lirc_send_command(config->sockfd, "GETMODE\n",
+ buf, &buf_len, &success);
+ if(success == LIRC_RET_SUCCESS)
+ {
+ if(ret > 0)
+ {
+ return buf;
+ }
+ else
+ {
+ return NULL;
+ }
+ }
+ return NULL;
+ }
+ return config->current_mode;
+}
+
static const char *lirc_read_string(int fd)
{
static char buffer[LIRC_PACKET_SIZE+1]="";
--- lirc-0.8.0pre1/tools/lirc_clientd.c.orig 2005-11-01 21:12:16.000000000 +0200
+++ lirc-0.8.0pre1/tools/lirc_clientd.c 2005-11-29 00:21:39.000000000 +0200
@@ -67,6 +67,7 @@
static int code_func(int fd,char *message,char *arguments);
static int ident_func(int fd,char *message,char *arguments);
+static int getmode_func(int fd,char *message,char *arguments);
static int send_result(int fd, char *message, const char *result);
static int send_success(int fd,char *message);
@@ -74,6 +75,7 @@
{
{"CODE",code_func},
{"IDENT",ident_func},
+ {"GETMODE",getmode_func},
{NULL,NULL}
/*
{"DEBUG",debug},
@@ -114,7 +116,10 @@
do {} while(0)
#endif
-const char *progname="lirc_clientd " VERSION;
+#define logprintf syslog
+#define logperror(prio,s) if((s)!=NULL) syslog(prio,"%s: %m\n",(char *) s); else syslog(prio,"%m\n")
+
+const char *progname="lirc_clientd";
static sig_atomic_t term=0;
static int termsig;
@@ -122,53 +127,12 @@
static struct client_data clis[MAX_CLIENTS];
static int daemonized=0;
-static FILE *lf=NULL;
-static const char *hostname="";
static struct lirc_config *config;
static int send_error(int fd,char *message,char *format_str, ...);
static int handle_input();
-void logprintf(int prio,char *format_str, ...)
-{
- time_t current;
- char *currents;
- va_list ap;
-
- current=time(&current);
- currents=ctime(&current);
-
- if(lf) fprintf(lf,"%15.15s %s %s: ",currents+4,hostname,progname);
- if(!daemonized) fprintf(stderr,"%s: ",progname);
- va_start(ap,format_str);
- if(lf)
- {
- if(prio==LOG_WARNING) fprintf(lf,"WARNING: ");
- vfprintf(lf,format_str,ap);
- fputc('\n',lf);fflush(lf);
- }
- if(!daemonized)
- {
- if(prio==LOG_WARNING) fprintf(stderr,"WARNING: ");
- vfprintf(stderr,format_str,ap);
- fputc('\n',stderr);fflush(stderr);
- }
- va_end(ap);
-}
-
-void logperror(int prio,const char *s)
-{
- if(s!=NULL)
- {
- logprintf(prio,"%s: %s",s,strerror(errno));
- }
- else
- {
- logprintf(prio,"%s",strerror(errno));
- }
-}
-
static inline int max(int a,int b)
{
return(a>b ? a:b);
@@ -554,6 +518,16 @@
return(send_success(fd,message));
}
+static int getmode_func(int fd,char *message,char *arguments)
+{
+ LOGPRINTF(2, "GETMODE %s", arguments);
+ if(lirc_getmode(config))
+ {
+ return send_result(fd, message, lirc_getmode(config));
+ }
+ return(send_success(fd,message));
+}
+
static int send_result(int fd, char *message, const char *result)
{
char *count = "1\n";
@@ -938,7 +912,7 @@
printf("\t -o --output=socket\t\toutput socket filename\n");
return(EXIT_SUCCESS);
case 'v':
- printf("%s\n",progname);
+ printf("%s %s\n",progname,VERSION);
return(EXIT_SUCCESS);
case 'p':
if(oatoi(optarg)==-1)
@@ -988,7 +962,6 @@
return EXIT_FAILURE;
}
- LOGPRINTF(3, "fork");
/* fork */
if(daemon(0,0)==-1)
{
@@ -1001,8 +974,7 @@
}
daemonized=1;
- lf = fopen("/tmp/lirc_clientd.log", "a");
-
+ openlog(progname, LOG_CONS|LOG_PID, LOG_USER);
umask(0);
signal(SIGPIPE,SIG_IGN);
@@ -1013,8 +985,10 @@
sigaction(SIGINT,&act,NULL);
sigaction(SIGHUP,&act,NULL);
+ logprintf(LOG_NOTICE, "%s started", progname);
loop(socket, lircdfd);
+ closelog();
shutdown(socket, 2);
close(socket);
lirc_freeconfig(config);
--- lirc-0.8.0pre1/configure.orig 2005-11-05 18:55:58.000000000 +0200
+++ lirc-0.8.0pre1/configure 2005-11-29 00:24:39.000000000 +0200
@@ -7995,6 +7995,7 @@
echo "$ac_t""" 1>&6
possible_drivers="(none) \
+ (userspace) \
(bte) \
(bw6130) \
(creative) \
@@ -8022,7 +8023,7 @@
if test x${no_kernel} != xyes; then
possible_drivers="${possible_drivers} \
- (any) \
+ (all) \
(lirc_dev) \
(lirc_dev lirc_atiusb) \
(lirc_dev lirc_bt829) \
@@ -8568,12 +8569,12 @@
HW_DEFAULT="hw_null"
fi
-if test "$driver" = "any"; then
+if test "$driver" = "userspace" -o "$driver" = "all"; then
cat >> confdefs.h <<\EOF
#define LIRC_DRIVER_ANY 1
EOF
- lirc_driver="any"
+ lirc_driver=$driver
any_possible_drivers=`echo ${possible_drivers} | sed -e's/ /-/g' \
-e's/)-(/ /g' -e's/(//g' -e's/)//g' \
@@ -9332,7 +9333,7 @@
{ echo "configure: error: *** you need to first install the caraca package
before you can use this driver" 1>&2; exit 1; }
;;
- any|lirc_*)
+ all|lirc_*)
{ echo "configure: error: *** you need to have the Linux kernel source installed
for this driver" 1>&2; exit 1; }
;;
@@ -9370,6 +9371,7 @@
if test "$lirc_driver" = "none" || \
test "$lirc_driver" = "alsa_usb" || \
+ test "$lirc_driver" = "userspace" || \
test "$lirc_driver" = "atilibusb" || \
test "$lirc_driver" = "audio" || \
test "$lirc_driver" = "audio_alsa" || \
@@ -9377,7 +9379,7 @@
test "$lirc_driver" = "irman" || \
test "$lirc_driver" = "irman_sw"; then
lirc_driver=
-elif test "$lirc_driver" = "any"; then
+elif test "$lirc_driver" = "all"; then
lirc_driver="lirc_dev \
lirc_atiusb \
lirc_bt829 \
@@ -10245,7 +10247,7 @@
echo
-if test "$driver" = "any"; then
+if test "$driver" = "all"; then
echo "All kernel modules will be built."
elif test "$driver" = "mediafocusI"; then
echo "You will have to use the MediaFocus driver from:"

@ -1,39 +0,0 @@
The gpio driver doesn't compile against kernel-devel due to missing
drivers/media/video/{bttv,bttvp}.h.
--- lirc-0.7.2/configure.drivers 2005-08-14 17:14:08.000000000 +0300
+++ lirc-0.7.2/configure 2005-08-14 17:25:56.000000000 +0300
@@ -8027,7 +8027,6 @@
(lirc_dev lirc_atiusb) \
(lirc_dev lirc_bt829) \
(lirc_dev lirc_cmdir) \
- (lirc_dev lirc_gpio) \
(lirc_dev lirc_i2c) \
(lirc_dev lirc_igorplugusb) \
(lirc_dev lirc_imon) \
@@ -9382,7 +9381,6 @@
lirc_atiusb \
lirc_bt829 \
lirc_cmdir \
- lirc_gpio \
lirc_i2c \
lirc_igorplugusb \
lirc_imon \
--- lirc-0.7.2/configure.in.drivers 2005-08-14 13:23:48.000000000 +0300
+++ lirc-0.7.2/configure.in 2005-08-14 17:28:15.000000000 +0300
@@ -169,7 +169,6 @@
(lirc_dev lirc_atiusb) \
(lirc_dev lirc_bt829) \
(lirc_dev lirc_cmdir) \
- (lirc_dev lirc_gpio) \
(lirc_dev lirc_i2c) \
(lirc_dev lirc_igorplugusb) \
(lirc_dev lirc_imon) \
@@ -1090,7 +1089,6 @@
lirc_atiusb \
lirc_bt829 \
lirc_cmdir \
- lirc_gpio \
lirc_i2c \
lirc_igorplugusb \
lirc_imon \

@ -1,11 +0,0 @@
--- daemons/lircd.c~ 2005-07-10 11:34:12.000000000 +0300
+++ daemons/lircd.c 2005-08-14 19:29:50.000000000 +0300
@@ -1974,7 +1974,7 @@
"no peers are specified\n",progname);
return(EXIT_FAILURE);
}
- if(strcmp(hw.device, lircdfile)==0)
+ if(hw.device != NULL && strcmp(hw.device, lircdfile)==0)
{
fprintf(stderr, "%s: refusing to connect to myself\n",
progname);

@ -1,96 +0,0 @@
--- lirc-0.7.2/Makefile.am.orig 2003-05-07 19:31:48.000000000 +0300
+++ lirc-0.7.2/Makefile.am 2005-08-14 18:39:49.000000000 +0300
@@ -9,7 +9,7 @@
EXTRA_DIST = setup.sh setup-driver.sh setup.data data2setup.sh ANNOUNCE TODO
## daemons/ and tools/ should appear before doc/ for help2man to work.
-SUBDIRS = drivers daemons tools doc
+SUBDIRS = daemons tools doc
## From automake documentation:
## Note that EXTRA_DIST can only handle files in the current
--- lirc-0.7.2/configure.orig 2005-08-14 18:39:36.000000000 +0300
+++ lirc-0.7.2/configure 2005-08-14 18:40:14.000000000 +0300
@@ -7995,6 +7995,7 @@
echo "$ac_t""" 1>&6
possible_drivers="(none) \
+ (any) \
(bte) \
(bw6130) \
(creative) \
@@ -8020,26 +8021,6 @@
(uirt2_raw) \
(udp)"
-if test x${no_kernel} != xyes; then
- possible_drivers="${possible_drivers} \
- (any) \
- (lirc_dev) \
- (lirc_dev lirc_atiusb) \
- (lirc_dev lirc_bt829) \
- (lirc_dev lirc_cmdir) \
- (lirc_dev lirc_i2c) \
- (lirc_dev lirc_igorplugusb) \
- (lirc_dev lirc_imon) \
- (lirc_dev lirc_it87) \
- (lirc_dev lirc_mceusb) \
- (lirc_dev lirc_mceusb2) \
- (lirc_dev lirc_parallel) \
- (lirc_dev lirc_sasem) \
- (lirc_dev lirc_serial) \
- (lirc_dev lirc_sir) \
- (lirc_dev lirc_streamzap)"
-fi
-
if test -n "${LIBUSB_CONFIG}"; then
cat >> confdefs.h <<\EOF
#define HAVE_LIBUSB 1
--- lirc-0.7.2/Makefile.in.orig 2005-08-14 13:27:43.000000000 +0300
+++ lirc-0.7.2/Makefile.in 2005-08-14 18:39:49.000000000 +0300
@@ -113,7 +113,7 @@
EXTRA_DIST = setup.sh setup-driver.sh setup.data data2setup.sh ANNOUNCE TODO
-SUBDIRS = drivers daemons tools doc
+SUBDIRS = daemons tools doc
DISTCLEANFILES = configure.sh .setup.config
--- lirc-0.7.2/configure.in.orig 2005-08-14 18:39:36.000000000 +0300
+++ lirc-0.7.2/configure.in 2005-08-14 18:40:08.000000000 +0300
@@ -137,6 +137,7 @@
AC_MSG_RESULT()
possible_drivers="(none) \
+ (any) \
(bte) \
(bw6130) \
(creative) \
@@ -162,26 +163,6 @@
(uirt2_raw) \
(udp)"
-if test x${no_kernel} != xyes; then
- possible_drivers="${possible_drivers} \
- (any) \
- (lirc_dev) \
- (lirc_dev lirc_atiusb) \
- (lirc_dev lirc_bt829) \
- (lirc_dev lirc_cmdir) \
- (lirc_dev lirc_i2c) \
- (lirc_dev lirc_igorplugusb) \
- (lirc_dev lirc_imon) \
- (lirc_dev lirc_it87) \
- (lirc_dev lirc_mceusb) \
- (lirc_dev lirc_mceusb2) \
- (lirc_dev lirc_parallel) \
- (lirc_dev lirc_sasem) \
- (lirc_dev lirc_serial) \
- (lirc_dev lirc_sir) \
- (lirc_dev lirc_streamzap)"
-fi
-
if test -n "${LIBUSB_CONFIG}"; then
AC_DEFINE(HAVE_LIBUSB)
possible_drivers="${possible_drivers} (atilibusb)"

@ -4,6 +4,7 @@
# Other TODO:
# - move to -devel (?): irw, *mode2, others?
# note: xmode2 inflicts a dependency on X, and smode2 on svgalib
# - does someone actually need xmode2/smode2 for something?
# - don't run as root and/or create dedicated group, reduce fifo permissions?
# - Fixup /etc/lirc(m)d.conf %%ghost'ification, existence after erase etc.
# - Verify that the kernel modules work and correct /dev entries get created
@ -14,26 +15,26 @@
%define mdir /lib/modules/%{kver}/extra
Name: lirc
Version: 0.7.2
Release: 3%{?dist}
Version: 0.8.0
Release: 0.2.pre1%{?dist}
Summary: The Linux Infrared Remote Control package
Group: System Environment/Daemons
License: GPL
URL: http://www.lirc.org/
Source0: http://download.sourceforge.net/lirc/%{name}-%{version}.tar.bz2
#Source0: http://download.sourceforge.net/lirc/%{name}-%{version}.tar.bz2
Source0: http://lirc.sf.net/software/snapshots/lirc-0.8.0pre1.tar.bz2
Source1: %{name}.init
Source2: %{name}.sysconfig
Patch0: %{name}-optflags.patch
Patch1: %{name}-gpio.patch
Patch2: %{name}-nomodules.patch
Patch3: %{name}-nodev-crash.patch
Patch1: %{name}-cvs20051129.patch
Patch2: %{name}-0.8.0pre1-2615usb.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%if 0%{!?_with_modules:1}
BuildRequires: %{__perl}
BuildRequires: alsa-lib-devel
BuildRequires: xorg-x11-devel
BuildRequires: libXt-devel
BuildRequires: libusb-devel
BuildRequires: portaudio-devel >= 18
Build%{?_with_svgalib:Requires}%{!?_with_svgalib:Conflicts}: svgalib-devel
@ -77,13 +78,18 @@ LIRC kernel modules built for kernel
%prep
%setup -q
%setup -q -n %{name}-%{version}pre1
%patch0 -p1
%patch1 -p1
# patch2 needs to be applied on top of patch1
%{!?_with_modules:%patch2 -p1}
%patch3 -p0
%patch2
echo %{kver} | grep -q _FC5 && \
sed -i -e s/2,6,15/2,6,14/ drivers/lirc_{dev,imon,sasem}/lirc_*.c # *cough*
chmod 644 contrib/*
# cmdir: unknown symbols
# gpio: missing drivers/media/video/{bttv,bttvp}.h in kernel-devel
for drv in cmdir gpio ; do
sed -i -e "/^\\s*(lirc_dev lirc_$drv)/d" -e "/^\\s*lirc_$drv/d" configure*
done
touch -r aclocal.m4 configure.in # avoid autofoo re-run
@ -94,10 +100,15 @@ touch -r aclocal.m4 configure.in # avoid autofoo re-run
--enable-debug \
--enable-sandboxed \
--with-syslog=LOG_DAEMON \
%if 0%{?_with_modules:1}
--with-kerneldir=%{ksrc} \
--with-moduledir=%{mdir}/%{name} \
--with-driver=any
make %{?_smp_mflags} %{?_with_modules:-C drivers}
--with-driver=all
make %{?_smp_mflags} -C drivers
%else
--with-driver=userspace
make %{?_smp_mflags}
%endif
%install
@ -164,7 +175,7 @@ depmod -ae -F /boot/System.map-%{kver} %{kver} >/dev/null || :
%ghost %config(noreplace) %{_sysconfdir}/lirc*d.conf
%config(noreplace) %{_sysconfdir}/sysconfig/lirc
%{_initrddir}/lirc
%{_bindir}/ir*
%{_bindir}/*ir*
%{_bindir}/*mode2
%{_sbindir}/lirc*d
%{_libdir}/liblirc_client.so.*
@ -187,6 +198,20 @@ depmod -ae -F /boot/System.map-%{kver} %{kver} >/dev/null || :
%changelog
* Tue Nov 29 2005 Ville Skyttä <ville.skytta at iki.fi> - 0.8.0-0.2.pre1
- Pull security fix for the new lirc_clientd from upstream CVS, and
while at it, some other useful post-0.8.0pre1 changes.
- Kernel >= 2.6.15 patchwork based on initial patch from Andy Burns (#172404).
- Disable lirc_cmdir kernel module (unknown symbols).
- Adapt to modular X.Org packaging.
* Wed Nov 9 2005 Ville Skyttä <ville.skytta at iki.fi> - 0.8.0-0.1.pre1
- 0.8.0pre1, usage message patch applied upstream.
* Sun Oct 30 2005 Ville Skyttä <ville.skytta at iki.fi> - 0.7.3-0.1.pre1
- 0.7.3pre1, "no device" crash fix applied upstream.
- Fix lircd and lircmd usage messages.
* Wed Aug 31 2005 Ville Skyttä <ville.skytta at iki.fi> - 0.7.2-3
- Make the init script startup earlier and shutdown later by default.

@ -1 +1 @@
4510cf711f5c146f80c5bdfd61ca3f4a lirc-0.7.2.tar.bz2
d115ec757ee1f3b25071f24c8256ee31 lirc-0.8.0pre1.tar.bz2

Loading…
Cancel
Save