ppc32 kernel/zaptel missing symbol & turn off -fstack-protector

Patrick fedora at puzzled.xs4all.nl
Wed Feb 22 22:13:10 UTC 2006


On Wed, 2006-02-22 at 20:25 +0100, Arjan van de Ven wrote:
> > One of the developers of Asterisk told me it is cause by
> > -fstack-protector. This indeed shows up during the compilation of the
> > zaptel kernel modules.
> > 
> > A sugesstion was to turn off -fstack-protector. Anyone have a hint how I
> > do that in e.g. the rpm spec file?
> 
> 
> if this rpm is using RPM cflags to build kernel modules it's terminally
> broken..... kernel modules HAVE to use the EXACT flags the kernel
> provides, but that is fully automatic if you have a "correct" 2.6 module
> makefile (see Documentation/kbuild/ for details)

Thanks for the input. I may be a bit in over my head since I'm not
exactly sure what you mean. Fwiw compilation of the zaptel modules works
fine on FC4. Afaict the flags used in the zaptel Makefile are:

CFLAGS+=-I. $(RPM_OPT_FLAGS) -Wall -DBUILDING_TONEZONE
LCFLAGS=-fPIC $(CFLAGS) -DBUILDING_TONEZONE
KFLAGS=-I$(KINCLUDES) -O6
KFLAGS+=-DMODULE -D__KERNEL__ -DEXPORT_SYMTAB -I$(KSRC)/drivers/net \
        -Wall -I. -Wstrict-prototypes -fomit-frame-pointer -I
$(KSRC)/drivers/net/wan -I$(KINCLUDES)/net
ifneq (,$(wildcard $(KINCLUDES)/linux/modversions.h))
  KFLAGS+=-DMODVERSIONS -include $(KINCLUDES)/linux/modversions.h
endif
KFLAGS_PPC:=$(shell if uname -m | grep -q ppc; then echo "-msoft-float
-fsigned-char"; fi)
KFLAGS+=$(KFLAGS_PPC)
KFLAGS+=$(shell if uname -r | grep -q 2.4; then if uname -m | grep -q
x86_64; then echo "-mcmodel=kernel"; fi; fi)

Is there anything in here that needs fixing or would the solution be
something way more elaborate?

Thanks and regards,
Patrick




More information about the test mailing list