[3091] in linux-net channel archive

home help back first fref pref prev next nref lref last post

Re: ppp-2.2.0f doesn't compile under pre2.0.10

daemon@ATHENA.MIT.EDU (Tony Nugent)
Sun Jun 2 19:04:58 1996

Date: 	Mon, 3 Jun 1996 08:38:47 +1000
From: Tony Nugent <tonyn@sctnugen.ppp.gu.edu.au>
To: linux-ppp@vger.rutgers.edu, salteroy@sover.net
Cc: linux-kernel@vger.rutgers.edu, linux-net@vger.rutgers.edu,
        longyear@netcom.com, longyear@sii.com

Todd M. Roy <salteroy@sover.net> wrote in linux-ppp:

[Crossposted to linux-kernel and linux-net.]

> Subject: ppp-2.2.0f doesn't compile under pre2.0.10

>    I just tried to compile 2.2.0f under pre2.0.10 and got this
> error.  The last time I tried (successfully) I think was pre2.0.5
> with 2.2.0f-beta5.  beta5 also gave me the same problem with
> pre2.0.10.  Thanks in advance.  Fortunatly, the previously compiled
> version is still running under 2.0.10.
>
> -- todd --
>
> cc -O2   -D_linux_=1 -DHAVE_PATHS_H   -c sys-linux.c -o sys-linux.o
> In file included from /usr/include/linux/netdevice.h:31,
>                  from /usr/include/net/if_arp.h:1,
>                  from sys-linux.c:70:
> /usr/include/linux/interrupt.h:9: warning: `struct pt_regs' declared inside parameter list
> /usr/include/linux/interrupt.h:9: warning: its scope is only this definition or declaration,
> /usr/include/linux/interrupt.h:9: warning: which is probably not what you want.
> /usr/include/linux/interrupt.h:23: syntax error before `void'
> /usr/include/linux/interrupt.h: In function `start_bh_atomic':
> /usr/include/linux/interrupt.h:76: `intr_count' undeclared (first use this function)
> /usr/include/linux/interrupt.h:76: (Each undeclared identifier is reported only once
> /usr/include/linux/interrupt.h:76: for each function it appears in.)
> /usr/include/linux/interrupt.h: In function `end_bh_atomic':
> /usr/include/linux/interrupt.h:83: `intr_count' undeclared (first use this function)
> make: *** [sys-linux.o] Error 1

I can confirm this with linux-1.99.10 (pre2.0.10), gcc-2.7.2,
binutils-2.6.0.14, and libc-5.3.12.

:-(

In a following message, Todd also wrote this:

> Subject: Re: previous problem, a patch, very experimental.

> Well, I answered my own question, and have a "patch"
> to sys-linux.c
>
> I added:
>
> extern unsigned long intr_count;
> #define asmlinkage
>
> to the top.
>
> It compiled (still complaints about the structure in interrupt.h tho)
> linked, and even is running, even as I type this.

I did this instead:

========8<-----------cut-here------------>8====================
diff -u ppp-2.2.0f/pppd/sys-linux.c.orig ppp-2.2.0f/pppd/sys-linux.c
--- ppp-2.2.0f/pppd/sys-linux.c.orig       Sat Apr 13 15:02:53 1996
+++ ppp-2.2.0f/pppd/sys-linux.c    Mon Jun  3 08:02:55 1996
@@ -56,6 +56,10 @@
 #include <fcntl.h>
 #include <ctype.h>

+#ifdef _linux_
+#include <linux/sched.h>
+#endif
+
 /* This is in netdevice.h. However, this compile will fail miserably
    if you attempt to include netdevice.h because it has so many references
    to __memcpy functions which it should not attempt to do. So, since I
========8<-----------cut-here------------>8====================

This works with _no_ complaints at all.

Why did I add <linux/shed.h> ??

[/usr/src/linux-1.99.10/include/linux]/% find -type f |xargs grep -n intr_count /dev/null
include/linux/sched.h:14:extern unsigned long intr_count;
include/linux/interrupt.h:76:   intr_count++;
include/linux/interrupt.h:83:   intr_count--;
include/linux/modules/ksyms.ver:121:#define intr_count _set_ver(intr_count, aaedaa28)

However, in this case it might a kernel problem in that
<linux/sched.h> should be #include'd by <linux/interrupt.h>

The use of autoconf to create a configure script is badly needed for
pppd :)

Cheers                               .
Tony                             _--_|\
    tony@sctnugen.ppp.gu.edu.au /     *\ T.Nugent@sct.gu.edu.au
    ae.nugent@student.qut.edu.au\_.--._/  tnugent@cit.gu.edu.au
    Brisbane, Queensland              v               Australia
   -=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-
       Men are seldom more innocently employed than when they are honestly
                                  making money.
                          -- Samuel Johnson (1709-1784)


home help back first fref pref prev next nref lref last post