RE: Centos 4.3/4.4 unable to compile any LIRC version (0.7.2, 0.8.0, CVS)

View: New views
4 Messages — Rating Filter:   Alert me  

RE: Centos 4.3/4.4 unable to compile any LIRC version (0.7.2, 0.8.0, CVS)

by Tim Nichols-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I ran into this problem today regarding the LIRC source not building on
CentOS 4.3/4.4 or Rhel4 with recent kernels.  I found that the recent
kernel has two new functions and macros (named class_create and
class_destroy) which conflict with the same lirc functions.  I updated
code from todays CVS tree (2006/09/27) which seems to have fixed the
problem.  Essentially I renamed the lirc functions to be prepended with
"lirc_" and updated any references.  The cvs diff output is below:




Index: drivers/kcompat.h
===================================================================
RCS file: /cvsroot/lirc/lirc/drivers/kcompat.h,v
retrieving revision 5.27
diff -r5.27 kcompat.h
29c29
< static inline lirc_class_t *class_create(struct module *owner, char *name)
---
> static inline lirc_class_t *lirc_class_create(struct module *owner,
char *name)
34c34
< static inline void class_destroy(lirc_class_t *cls)
---
> static inline void lirc_class_destroy(lirc_class_t *cls)
129,130c129,130
< #define class_destroy(x) do { } while(0)
< #define class_create(x,y) NULL
---
> #define lirc_class_destroy(x) do { } while(0)
> #define lirc_class_create(x,y) NULL
Index: drivers/lirc_dev/lirc_dev.c
===================================================================
RCS file: /cvsroot/lirc/lirc/drivers/lirc_dev/lirc_dev.c,v
retrieving revision 1.48
diff -r1.48 lirc_dev.c
875c875
<       lirc_class = class_create(THIS_MODULE, "lirc");
---
>       lirc_class = lirc_class_create(THIS_MODULE, "lirc");
877c877
<               printk(KERN_ERR "lirc_dev: class_create failed\n");
---
>               printk(KERN_ERR "lirc_dev: lirc_class_create failed\n");
915c915
<       class_destroy(lirc_class);
---
>       lirc_class_destroy(lirc_class);


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

Re: Centos 4.3/4.4 unable to compile any LIRC version (0.7.2, 0.8.0, CVS)

by Blammo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 9/27/06, Tim Nichols <tnichols@...> wrote:
> I ran into this problem today regarding the LIRC source not building on
> CentOS 4.3/4.4 or Rhel4 with recent kernels.  I found that the recent
> kernel has two new functions and macros (named class_create and
> class_destroy) which conflict with the same lirc functions.  I updated
> code from todays CVS tree (2006/09/27) which seems to have fixed the
> problem.  Essentially I renamed the lirc functions to be prepended with
> "lirc_" and updated any references.  The cvs diff output is below:

Latest CVS from today still hasn't implemented both of these changes,
and still fails under Centos4/x/RHEL4. Been through the archives.. any
reason this isn't fixed?

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

Re: Centos 4.3/4.4 unable to compile any LIRC version (0.7.2, 0.8.0, CVS)

by Christoph Bartelmus :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi!

Blammo "blammo.doh@..." wrote:
>> I ran into this problem today regarding the LIRC source not building on
>> CentOS 4.3/4.4 or Rhel4 with recent kernels.  I found that the recent
>> kernel has two new functions and macros (named class_create and
>> class_destroy) which conflict with the same lirc functions.  I updated
>> code from todays CVS tree (2006/09/27) which seems to have fixed the
>> problem.  Essentially I renamed the lirc functions to be prepended with
>> "lirc_" and updated any references.  The cvs diff output is below:

> Latest CVS from today still hasn't implemented both of these changes,
> and still fails under Centos4/x/RHEL4. Been through the archives.. any
> reason this isn't fixed?

Because if you used official kernel versions you would find that they do  
not have this problem.
You are problably using a patched kernel with backports from later  
kernel releases.
LIRC will only support official kernel releases.

Christoph

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

Re: Centos 4.3/4.4 unable to compile any LIRC version (0.7.2, 0.8.0, CVS)

by Blammo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 12 Dec 2006 03:32:00 +0000, Christoph Bartelmus <lirc@...> wrote:

> Blammo "blammo.doh@..." wrote:
> >> I ran into this problem today regarding the LIRC source not building on
> >> CentOS 4.3/4.4 or Rhel4 with recent kernels.  I found that the recent
> >> kernel has two new functions and macros (named class_create and
> >> class_destroy) which conflict with the same lirc functions.  I updated
> >> code from todays CVS tree (2006/09/27) which seems to have fixed the
> >> problem.  Essentially I renamed the lirc functions to be prepended with
> >> "lirc_" and updated any references.  The cvs diff output is below:
>
> > Latest CVS from today still hasn't implemented both of these changes,
> > and still fails under Centos4/x/RHEL4. Been through the archives.. any
> > reason this isn't fixed?
>
> Because if you used official kernel versions you would find that they do
> not have this problem.
> You are problably using a patched kernel with backports from later
> kernel releases.
> LIRC will only support official kernel releases.

While I can appreciate the difficulty of supporting multiple streams
of kernel, and even understand a bit of the attitude, it would seem to
me, if the change doesn't HARM the compilation on "official" kernels,
and HELPS the code to compile for a potentially large installed base,
making the change to CVS might be beneficial.

But thanks for the clarification, and to the Original Poster for the solution...

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV