Discussion:
LiS-2.18.1 + kernel-2.6.15
Hai Zaar
2006-01-23 16:22:30 UTC
Permalink
Dear list,

Did anyone try to compile LiS-2.18.1 under latest 2.6.15 kernel?

Tell me if I'm the first one and I'll start posting error messages :)
--
Zaar
Brian F. G. Bidulock
2006-01-23 17:25:10 UTC
Permalink
Hai,

Try 2.18.2 available here: http://www.openss7.org/streams_pkg.html

I haven't tried it on 2.6.15, but have on 2.6.14 (FC4).

Better still, use Linux Fast-STREAMS. I don't really want to maintain
LiS anymore as Linux Fast-STREAMS has proven superior in all aspects.

--brian
Post by Hai Zaar
Dear list,
Did anyone try to compile LiS-2.18.1 under latest 2.6.15 kernel?
Tell me if I'm the first one and I'll start posting error messages :)
--
Zaar
_______________________________________________
Linux-streams mailing list
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
***@openss7.org ¦ world; the unreasonable one persists in ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
Brian F. G. Bidulock
2006-02-01 18:45:35 UTC
Permalink
Hai,

The '-include include/linux/autoconf.h' is completely unexpected by
the configuration script. Is this a debian/gentoo thing? Or, a
2.6.15 thing? At any rate, the configuration script will have to
be changed to change -include include/linux/autoconf.h to
-include ${linux_cv_kbuild}/include/linux/autoconf.h

Altering the produced Makefile does not help: the configure script
has already found the wrong result on many of its tests using the
mangled CPPFLAGS. I'll see if I can put a brief patch together for
you. (I haven't really tested Debian Sarge yet, but will eventually.)

--brian
Brian, sorry for the delay, but I'd like to continue the topic...
./configure && make
<snip>
make[2]: Entering directory `/usr/src/LiS-2.18.2'
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include/sys/LiS -DLIS=1
-D__LIS_INTERNAL__ -imacros ./config.h -imacros
./include/sys/LiS/config.h -I./include -I./include -nostdinc
-iwithprefix include -DLINUX -D__KERNEL__
-I/lib/modules/2.6.15-gentoo-r1/build/include -Iinclude2
-I/lib/modules/2.6.15-gentoo-r1/build/include -include
include/linux/autoconf.h
-I/lib/modules/2.6.15-gentoo-r1/build/include/asm-i386/mach-default
-DKBUILD_BASENAME=streams -DMODULE -D__NO_VERSION__ -DEXPORT_SYMTAB
-DLIS_OBJNAME=`echo libLiShead_a-head | sed -e 's/^.*-//'` -Wall
-Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -ffreestanding -O2 -g -fomit-frame-pointer -pipe
-msoft-float -mpreferred-stack-boundary=2 -march=i686 -mcpu=pentium4
-mregparm=3 -MT libLiShead_a-head.o -MD -MP -MF
".deps/libLiShead_a-head.Tpo" -c -o libLiShead_a-head.o `test -f
'head/head.c' || echo './'`head/head.c; \
then mv -f ".deps/libLiShead_a-head.Tpo" ".deps/libLiShead_a-head.Po";
else rm -f ".deps/libLiShead_a-head.Tpo"; exit 1; fi
<command line>:16:1: include/linux/autoconf.h: No such file or directory
make[2]: *** [libLiShead_a-head.o] Error 1
Hmm. It looks like it should be
'-include /linux/autoconf.h', since just before you do
-I/lib/modules/2.6.15-gentoo-r1/build/include.
If temporary fix Makefile, adjusting KERNEL_CPPFLAGS to actually hold
head/head.c
head/dki.c
head/mod.c
head/buffcall.c
head/event.c
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include/sys/LiS -DLIS=1
-D__LIS_INTERNAL__ -imacros ./config.h -imacros
./include/sys/LiS/config.h -I./include -I./include -nostdinc
-iwithprefix include -DLINUX -D__KERNEL__
-I/lib/modules/2.6.15-gentoo-r1/build/include -Iinclude2
-I/lib/modules/2.6.15-gentoo-r1/build/include -include
linux/autoconf.h
-I/lib/modules/2.6.15-gentoo-r1/build/include/asm-i386/mach-default
-DKBUILD_BASENAME=streams -DMODULE -D__NO_VERSION__ -DEXPORT_SYMTAB
-DLIS_OBJNAME=`echo libLiShead_a-linux-mdep | sed -e 's/^.*-//'`
-Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -ffreestanding -O2 -g -fomit-frame-pointer -pipe
-msoft-float -mpreferred-stack-boundary=2 -march=i686 -mcpu=pentium4
-mregparm=3 -MT libLiShead_a-linux-mdep.o -MD -MP -MF
".deps/libLiShead_a-linux-mdep.Tpo" -c -o libLiShead_a-linux-mdep.o
`test -f 'head/linux-mdep.c' || echo './'`head/linux-mdep.c; \
then mv -f ".deps/libLiShead_a-linux-mdep.Tpo"
".deps/libLiShead_a-linux-mdep.Po"; else rm -f
".deps/libLiShead_a-linux-mdep.Tpo"; exit 1; fi
head/linux-mdep.c:1131: error: structure has no member named `refcount'
head/linux-mdep.c:3646: warning: implicit declaration of function `verify_area'
head/linux-mdep.c:4200: error: incompatible types in assignment
make[2]: *** [libLiShead_a-linux-mdep.o] Error 1
make[2]: Leaving directory `/usr/src/LiS-2.18.2'
make[1]: *** [all-recursive] Error 1
I've attached config.log.
Post by Brian F. G. Bidulock
Hai,
Try 2.18.2 available here: http://www.openss7.org/streams_pkg.html
I haven't tried it on 2.6.15, but have on 2.6.14 (FC4).
Better still, use Linux Fast-STREAMS. I don't really want to maintain
LiS anymore as Linux Fast-STREAMS has proven superior in all aspects.
I probably would use Fast-STREAMS, If I were starting.new project.
LiS, and each time I upgrade the kernel - nightmare comes back - I
have to make them work with new LiS (and they were originally compiled
against LiS-2.16.x)
Post by Brian F. G. Bidulock
--brian
Post by Hai Zaar
Dear list,
Did anyone try to compile LiS-2.18.1 under latest 2.6.15 kernel?
Tell me if I'm the first one and I'll start posting error messages :)
--
Zaar
_______________________________________________
Linux-streams mailing list
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
--
Zaar
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
***@openss7.org ¦ world; the unreasonable one persists in ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
Hai Zaar
2006-02-01 22:15:35 UTC
Permalink
Thanks for input.
Post by Brian F. G. Bidulock
Hai,
The '-include include/linux/autoconf.h' is completely unexpected by
the configuration script. Is this a debian/gentoo thing? Or, a
2.6.15 thing?
I've output I've send you was produced on Gentoo. But I get exactly
the same behavior on my other LFS-based
(http://www.LinuxFromScratch.org) distribution.
Post by Brian F. G. Bidulock
At any rate, the configuration script will have to
be changed to change -include include/linux/autoconf.h to
-include ${linux_cv_kbuild}/include/linux/autoconf.h
I've tried to figure out where KERNEL_CPPFLAGS comes from, but I did
not come to any conclusion.
Post by Brian F. G. Bidulock
Altering the produced Makefile does not help: the configure script
has already found the wrong result on many of its tests using the
mangled CPPFLAGS. I'll see if I can put a brief patch together for
you. (I haven't really tested Debian Sarge yet, but will eventually.)
I will joyfully help to test it on Gentoo and/or LFS, if you like.
Post by Brian F. G. Bidulock
--brian
Brian, sorry for the delay, but I'd like to continue the topic...
./configure && make
<snip>
make[2]: Entering directory `/usr/src/LiS-2.18.2'
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include/sys/LiS -DLIS=1
-D__LIS_INTERNAL__ -imacros ./config.h -imacros
./include/sys/LiS/config.h -I./include -I./include -nostdinc
-iwithprefix include -DLINUX -D__KERNEL__
-I/lib/modules/2.6.15-gentoo-r1/build/include -Iinclude2
-I/lib/modules/2.6.15-gentoo-r1/build/include -include
include/linux/autoconf.h
-I/lib/modules/2.6.15-gentoo-r1/build/include/asm-i386/mach-default
-DKBUILD_BASENAME=streams -DMODULE -D__NO_VERSION__ -DEXPORT_SYMTAB
-DLIS_OBJNAME=`echo libLiShead_a-head | sed -e 's/^.*-//'` -Wall
-Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -ffreestanding -O2 -g -fomit-frame-pointer -pipe
-msoft-float -mpreferred-stack-boundary=2 -march=i686 -mcpu=pentium4
-mregparm=3 -MT libLiShead_a-head.o -MD -MP -MF
".deps/libLiShead_a-head.Tpo" -c -o libLiShead_a-head.o `test -f
'head/head.c' || echo './'`head/head.c; \
then mv -f ".deps/libLiShead_a-head.Tpo" ".deps/libLiShead_a-head.Po";
else rm -f ".deps/libLiShead_a-head.Tpo"; exit 1; fi
<command line>:16:1: include/linux/autoconf.h: No such file or directory
make[2]: *** [libLiShead_a-head.o] Error 1
Hmm. It looks like it should be
'-include /linux/autoconf.h', since just before you do
-I/lib/modules/2.6.15-gentoo-r1/build/include.
If temporary fix Makefile, adjusting KERNEL_CPPFLAGS to actually hold
head/head.c
head/dki.c
head/mod.c
head/buffcall.c
head/event.c
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include/sys/LiS -DLIS=1
-D__LIS_INTERNAL__ -imacros ./config.h -imacros
./include/sys/LiS/config.h -I./include -I./include -nostdinc
-iwithprefix include -DLINUX -D__KERNEL__
-I/lib/modules/2.6.15-gentoo-r1/build/include -Iinclude2
-I/lib/modules/2.6.15-gentoo-r1/build/include -include
linux/autoconf.h
-I/lib/modules/2.6.15-gentoo-r1/build/include/asm-i386/mach-default
-DKBUILD_BASENAME=streams -DMODULE -D__NO_VERSION__ -DEXPORT_SYMTAB
-DLIS_OBJNAME=`echo libLiShead_a-linux-mdep | sed -e 's/^.*-//'`
-Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -ffreestanding -O2 -g -fomit-frame-pointer -pipe
-msoft-float -mpreferred-stack-boundary=2 -march=i686 -mcpu=pentium4
-mregparm=3 -MT libLiShead_a-linux-mdep.o -MD -MP -MF
".deps/libLiShead_a-linux-mdep.Tpo" -c -o libLiShead_a-linux-mdep.o
`test -f 'head/linux-mdep.c' || echo './'`head/linux-mdep.c; \
then mv -f ".deps/libLiShead_a-linux-mdep.Tpo"
".deps/libLiShead_a-linux-mdep.Po"; else rm -f
".deps/libLiShead_a-linux-mdep.Tpo"; exit 1; fi
head/linux-mdep.c:1131: error: structure has no member named `refcount'
head/linux-mdep.c:3646: warning: implicit declaration of function `verify_area'
head/linux-mdep.c:4200: error: incompatible types in assignment
make[2]: *** [libLiShead_a-linux-mdep.o] Error 1
make[2]: Leaving directory `/usr/src/LiS-2.18.2'
make[1]: *** [all-recursive] Error 1
I've attached config.log.
Post by Brian F. G. Bidulock
Hai,
Try 2.18.2 available here: http://www.openss7.org/streams_pkg.html
I haven't tried it on 2.6.15, but have on 2.6.14 (FC4).
Better still, use Linux Fast-STREAMS. I don't really want to maintain
LiS anymore as Linux Fast-STREAMS has proven superior in all aspects.
I probably would use Fast-STREAMS, If I were starting.new project.
LiS, and each time I upgrade the kernel - nightmare comes back - I
have to make them work with new LiS (and they were originally compiled
against LiS-2.16.x)
Post by Brian F. G. Bidulock
--brian
Post by Hai Zaar
Dear list,
Did anyone try to compile LiS-2.18.1 under latest 2.6.15 kernel?
Tell me if I'm the first one and I'll start posting error messages :)
--
Zaar
_______________________________________________
Linux-streams mailing list
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
--
Zaar
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
--
Zaar
Hai Zaar
2006-02-09 15:24:40 UTC
Permalink
Dear, Brian,
Post by Hai Zaar
Post by Brian F. G. Bidulock
Altering the produced Makefile does not help: the configure script
has already found the wrong result on many of its tests using the
mangled CPPFLAGS. I'll see if I can put a brief patch together for
you. (I haven't really tested Debian Sarge yet, but will eventually.)
I will joyfully help to test it on Gentoo and/or LFS, if you like.
Any news about the patch?

BTW, LiS-2.18.1 suffers from the similar issue on 2.6.15. BUT, the
old 2.18.0 (with some patch I've sent 4 month about for 2.6.11)
compiles fine under 2.6.15!

--
Zaar
Brian F. G. Bidulock
2006-02-13 08:23:01 UTC
Permalink
Hai,
Post by Hai Zaar
Dear, Brian,
Post by Hai Zaar
Post by Brian F. G. Bidulock
Altering the produced Makefile does not help: the configure script
has already found the wrong result on many of its tests using the
mangled CPPFLAGS. I'll see if I can put a brief patch together for
you. (I haven't really tested Debian Sarge yet, but will eventually.)
I will joyfully help to test it on Gentoo and/or LFS, if you like.
Any news about the patch?
BTW, LiS-2.18.1 suffers from the similar issue on 2.6.15. BUT, the
old 2.18.0 (with some patch I've sent 4 month about for 2.6.11)
What patch? I didn't see it.
Post by Hai Zaar
compiles fine under 2.6.15!
But it won't run. Try running the 2.18.2 testsuite against it!
Post by Hai Zaar
--
Zaar
_______________________________________________
Linux-streams mailing list
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
Apply the attached patch to the m4/kernel.m4 file in any of the recent
distribution packages and the, in the source directory, type:

autoconf -fiv

to reconfigure the package this you will need autoconf 2.59 or better,
automake 1.9.5 or better, libtool 1.5.14 or better, gettext 0.14.1 or
better, and texinfo 4.6. See also, README-cvs in the package for
instructions on preparing the source directory.

If the patch works well for you, it will be in the next release.

--brian
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
***@openss7.org ¦ world; the unreasonable one persists in ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦

Index: m4/kernel.m4
===================================================================
RCS file: /u2/cvsroot/LiS/m4/kernel.m4,v
retrieving revision 0.9.2.117
diff -u -r0.9.2.117 kernel.m4
--- m4/kernel.m4 29 Dec 2005 10:42:14 -0000 0.9.2.117
+++ m4/kernel.m4 13 Feb 2006 08:13:00 -0000
@@ -1737,6 +1737,12 @@
linux_cv_k_cppflags=`echo "$linux_cv_k_cppflags" | sed -e "s| -Iinclude/asm| -I${ksrcdir}/include/asm|g"`
linux_cv_k_cppflags=`echo "$linux_cv_k_cppflags" | sed -e "s| -Iarch/| -I${ksrcdir}/arch/|g"`
dnl
+dnl Recent 2.6.15+ kernels include autoconf.h from the build directory instead of the source
+dnl directory. I suppose the idea is to allow your to configure in a separate directory as
+dnl well as build. Given 100 years, kbuild might catch up to autoconf.
+dnl
+ linux_cv_k_cppflags=`echo "$linux_cv_k_cppflags" | sed -e "s| -include include/linux/autoconf.h| -include ${kbuilddir}/include/linux/autoconf.h|"`
+dnl
dnl Non-kbuild (2.4 kernel) always needs include directories to be in the
dnl build directory.
dnl
Hai Zaar
2006-02-13 14:25:06 UTC
Permalink
Well, both 2.18.1 and 2.18.2 compile fine both on Gentoo (2.6.15) and
my other LFS-based distro (2.6.15 as well).
I've not made real tests to see whether its working, but I do not
think there would be any issues - its a flags change after all.

Many thanks for your help! I really appreciate it.
Post by Brian F. G. Bidulock
Hai,
Post by Hai Zaar
Dear, Brian,
Post by Hai Zaar
Post by Brian F. G. Bidulock
Altering the produced Makefile does not help: the configure script
has already found the wrong result on many of its tests using the
mangled CPPFLAGS. I'll see if I can put a brief patch together for
you. (I haven't really tested Debian Sarge yet, but will eventually.)
I will joyfully help to test it on Gentoo and/or LFS, if you like.
Any news about the patch?
BTW, LiS-2.18.1 suffers from the similar issue on 2.6.15. BUT, the
old 2.18.0 (with some patch I've sent 4 month about for 2.6.11)
What patch? I didn't see it.
Post by Hai Zaar
compiles fine under 2.6.15!
But it won't run. Try running the 2.18.2 testsuite against it!
Post by Hai Zaar
--
Zaar
_______________________________________________
Linux-streams mailing list
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
Apply the attached patch to the m4/kernel.m4 file in any of the recent
autoconf -fiv
to reconfigure the package this you will need autoconf 2.59 or better,
automake 1.9.5 or better, libtool 1.5.14 or better, gettext 0.14.1 or
better, and texinfo 4.6. See also, README-cvs in the package for
instructions on preparing the source directory.
If the patch works well for you, it will be in the next release.
--brian
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
Index: m4/kernel.m4
===================================================================
RCS file: /u2/cvsroot/LiS/m4/kernel.m4,v
retrieving revision 0.9.2.117
diff -u -r0.9.2.117 kernel.m4
--- m4/kernel.m4 29 Dec 2005 10:42:14 -0000 0.9.2.117
+++ m4/kernel.m4 13 Feb 2006 08:13:00 -0000
@@ -1737,6 +1737,12 @@
linux_cv_k_cppflags=`echo "$linux_cv_k_cppflags" | sed -e "s| -Iinclude/asm| -I${ksrcdir}/include/asm|g"`
linux_cv_k_cppflags=`echo "$linux_cv_k_cppflags" | sed -e "s| -Iarch/| -I${ksrcdir}/arch/|g"`
dnl
+dnl Recent 2.6.15+ kernels include autoconf.h from the build directory instead of the source
+dnl directory. I suppose the idea is to allow your to configure in a separate directory as
+dnl well as build. Given 100 years, kbuild might catch up to autoconf.
+dnl
+ linux_cv_k_cppflags=`echo "$linux_cv_k_cppflags" | sed -e "s| -include include/linux/autoconf.h| -include ${kbuilddir}/include/linux/autoconf.h|"`
+dnl
dnl Non-kbuild (2.4 kernel) always needs include directories to be in the
dnl build directory.
dnl
--
Zaar
Brian F. G. Bidulock
2006-02-13 20:56:04 UTC
Permalink
Hai,

Good, the change will be in the next release. I have several bug fixes
and the ioctl32 stuff to work into the LiS and LfS releases and then I
will re-release the packages in a few days. I also need to test builds
for SuSE 10, LE 2006, current EL4 updates, OpenSuSE and Sarge.

--brian
Post by Hai Zaar
Well, both 2.18.1 and 2.18.2 compile fine both on Gentoo (2.6.15) and
my other LFS-based distro (2.6.15 as well).
I've not made real tests to see whether its working, but I do not
think there would be any issues - its a flags change after all.
Many thanks for your help! I really appreciate it.
--
Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦
***@openss7.org ¦ world; the unreasonable one persists in ¦
http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦
¦ Therefore all progress depends on the ¦
¦ unreasonable man. -- George Bernard Shaw ¦
Loading...