Gustavo The cogent control lines are now:-------------------------------------------KERNEL_DIR:=/lib/modules/$(shell uname -r)/buildSUBLEVEL:=$(shell echo $(KERNEL_DIR) | cut -d. -f3 | cut -d. -f1 | cut -d- -f1)# slusb support ends at 2.6.24AGE:=$(shell if [ "$(SUBLEVEL)" -gt 24 ] ;then echo NEW;fi) ARCH64:=$(shell uname -m | sed -e '/amd64/s//x86_64/' | grep -c x86_64) ifeq ($(ARCH64), 0)obj-m:= slamr.oendif ifneq ($(AGE), NEW)obj-m:= $(obj-m) slusb.oendif--------------------------Thus (thanks to Jacques & you) for the definitionAGE:=$(shell if [ "$(SUBLEVEL)" -gt 24 ] ;then echo NEW;fi)For SUBLEVEL 24 or lessNEW is not output into $(AGE)Then there is read in the 2nd condintionalifneg (, NEW)which is true. Soand the following line is readobj-m:= $(obj-m) slusb.owhich specifiesobj-m:= slamr.o slusb.owith the result that both slamr.ko and slusb.ko are compiled forSUBLEVEL 24 or less While for SUBLEVEL 25 or greaterThere is output NEW to the definition of $(AGE)Then there is readifneg (NEW, NEW)which is FALSE so the following lineobj-m:= $(obj-m) slusb.ois skippedSo the original is usedobj-m:= slamr.oSo only slamr.ko is compiled, I worked this through starting with slmodem-2.9.11-20080417,under a 2.6.26-2-generic boot (sleepily at 11 PM) I tested variants of the conditional lines with:drivers/ $ make KERNEL_DIR=/usr/src/2.6.24-19-genericUntil the fix was thereunder made for the slamr.c problemThen it was extended to the SUBLEVEL greater 2.6.24 case MarvS On Sun, Jun 29, 2008 at 12:31 AM, Gustavo Fernando Padovan<gfpadovan@xxxxxxxxx> wrote:> On Sun, Jun 29, 2008 at 1:17 AM, Marvin Stodolsky> <marvin.stodolsky@xxxxxxxxx> wrote:>> The fix is using in the subfolder drivers/Makefile>>>> ifeq ($(ARCH64), 0)>> obj-m:= slamr.o>> endif>>>> ifneq ($(AGE), NEW)>> obj-m:= $(obj-m) slusb.o> But why this interfere o compilation? The kernel is 2.6.25, thus this> line doesn't import because ifneq ($(AGE), NEW) is false.>> endif>>>> Which for reasons still obscure to me worked better than Guztavo's>> initial suggestion:>>>> ifeq ($(ARCH64), 0)>> obj-m:= slarm.o>> endif>> ifneq ($(AGE),NEW)>> obj-m:= slusb.o>> endif>>>> I just did trial and error tests, comparing compiles under 2.6.24 and 2.6.26>> For 2.6.25 and later versions, slusb compiles fail, and must be>> omitted or the ERROR aborts the compile of the desired slamr.ko. This>> is the role of the>> ifneq ($(AGE),NEW)>>>> MarvS>>>>>>>>>>>>>>>>>> ---------- Forwarded message ---------->> From: Marvin Stodolsky <marvin.stodolsky@xxxxxxxxx>>> Date: Sat, Jun 28, 2008 at 11:28 PM>> Subject: Re: FC9, compile error>> To: Daniel Kirsten <Daniel.Kirsten@xxxxxxx>, Antonio Olivares>> <olivares14031@xxxxxxxxx>, Gustavo Fernando Padovan>> <gfpadovan@xxxxxxxxx>>>>>>> Daniel,>> Try replacing the subfolder drivers/Makefile with the attached Makefile>> Small change in the conditional, eliminating slusb.ko compilation.>> See below.>> Report back>>>> MarvS>> ==================>> drivers$ make>> doing kernel-ver::>> cc -I/lib/modules/2.6.26-2-generic/build/include -o kernel-ver kernel-ver.c>> make all KERNEL_VER=2.6.26-2-generic>> make[1]: Entering directory `/usr/src/modules/slmodem-2.9.11-20080417/drivers'>> obj-m=slamr.o>> slamr-objs=amrmo_init.o sysdep_amr.o amrlibs.o>> make modules -C /lib/modules/2.6.26-2-generic/build>> SUBDIRS=/usr/src/modules/slmodem-2.9.11-20080417/drivers>> make[2]: Entering directory `/usr/src/linux-headers-2.6.26-2-generic'>> CC [M] /usr/src/modules/slmodem-2.9.11-20080417/drivers/amrmo_init.o>> CC [M] /usr/src/modules/slmodem-2.9.11-20080417/drivers/sysdep_amr.o>> LD [M] /usr/src/modules/slmodem-2.9.11-20080417/drivers/slamr.o>> Building modules, stage 2.>> MODPOST 1 modules>> WARNING: could not find>> /usr/src/modules/slmodem-2.9.11-20080417/drivers/.amrlibs.o.cmd for>> /usr/src/modules/slmodem-2.9.11-20080417/drivers/amrlibs.o>> CC /usr/src/modules/slmodem-2.9.11-20080417/drivers/slamr.mod.o>> LD [M] /usr/src/modules/slmodem-2.9.11-20080417/drivers/slamr.ko>> make[2]: Leaving directory `/usr/src/linux-headers-2.6.26-2-generic'>> finished all:>> make[1]: Leaving directory `/usr/src/modules/slmodem-2.9.11-20080417/drivers'>> marv@marvlap:/usr/src/modules/slmodem-2.9.11-20080417/drivers$ ls *.ko>> slamr.ko>>>>>>>>>>>> On Sat, Jun 28, 2008 at 5:19 PM, Daniel Kirsten <Daniel.Kirsten@xxxxxxx> wrote:>>> Hallo,>>>>>> I tried to compile slmodem-2.9.11-20080625 against a>>> 2.6.25.6-55 kernel (recent Fedora 9 kernel). I got the>>> following problem:>>>>>>>>>>>>>>> make -C modem all>>> make[1]: Entering directory `/root/slmodem/slmodem-2.9.11-20080625/modem'>>> rebuild profile...>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_main.o -c modem_main.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_cmdline.o -c modem_cmdline.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem.o -c modem.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_datafile.o -c modem_datafile.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_at.o -c modem_at.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_timer.o -c modem_timer.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_pack.o -c modem_pack.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_ec.o -c modem_ec.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_comp.o -c modem_comp.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_param.o -c modem_param.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_debug.o -c modem_debug.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o homolog_data.o -c homolog_data.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o dp_sinus.o -c dp_sinus.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o dp_dummy.o -c dp_dummy.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o sysdep_common.o -c sysdep_common.c>>> gcc -o slmodemd modem_main.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_test.o -c modem_test.c>>> gcc -o modem_test modem_test.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o>>> make[1]: Leaving directory `/root/slmodem/slmodem-2.9.11-20080625/modem'>>> make -C drivers KERNEL_DIR=/lib/modules/2.6.25.6-55.dk08.fc9.i686/build>>> make[1]: Entering directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> cc -I/lib/modules/2.6.25.6-55.dk08.fc9.i686/build/include -o kernel-ver kernel-ver.c>>> make all KERNEL_VER=2.6.25.6-55.dk08.fc9.i686>>> make[2]: Entering directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> make modules -C /lib/modules/2.6.25.6-55.dk08.fc9.i686/build SUBDIRS=/root/slmodem/slmodem-2.9.11-20080625/drivers>>> make[3]: Entering directory `/root/rpmbuild/BUILD/kernel-2.6.25/linux-2.6.25.i686'>>> make[4]: *** No rule to make target `/root/slmodem/slmodem-2.9.11-20080625/drivers/slarm.c', needed by `/root/slmodem/slmodem-2.9.11-20080625/drivers/slarm.o'. Stop.>>> make[3]: *** [_module_/root/slmodem/slmodem-2.9.11-20080625/drivers] Error 2>>> make[3]: Leaving directory `/root/rpmbuild/BUILD/kernel-2.6.25/linux-2.6.25.i686'>>> make[2]: *** [all] Error 2>>> make[2]: Leaving directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> make[1]: *** [all] Error 2>>> make[1]: Leaving directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> make: *** [drivers] Error 2>>>>>>>>> --> ----------------------------------------------> Gustavo Fernando Padovan> Engenharia de Computação 2006> LAS - Laboratório de Administração e Segurança de Sistemas> Instituto de Computação - UNICAMP>> gfpadovan@xxxxxxxxx> ra061316@xxxxxxxxxxxxxxxxxxxxxx> pao@xxxxxxxxxx> ------------------------------------------->> Seja Livre, use Software Livre>