[Serusers] hi

Andrei Pelinescu-Onciul pelinescu-onciul at fokus.fraunhofer.de
Mon Nov 24 15:27:39 CET 2003


On Nov 24, 2003 at 10:54, Evgeniy <evgeniy at riscom.net> wrote:
> On Friday 21 November 2003 16:55, you wrote:
> > On Nov 21, 2003 at 15:58, Evgeniy <evgeniy at riscom.net> wrote:
> > [...]
> >
> > > > It works for me on openbsd 3.2.
> > >
> > > OpenBSD 3.4 have changed binary format from aout to elf
> > > maybe problem is here ?
> > > i can send full install log or create ssh access to my system.
> >
> > Hmm, it seems that it changed the symbols which are exported. Maybe
> > different link flags? (the symbols from ser are used by the modules, so
> > they must be exported; adding -E to the gcc link command for ser takes
> > care of this for all arhitectures, until now...).

Hmmm, I think I should read my own comments from time to time :
    LDFLAGS=        # openbsd ld doesn't like -O2 or -E
:-)

So because I clear LDFLAGS on openbsd, ser won't be compiled with -Wl,-E
on 3.4 and the symbols won't be exported.
> 
> i did
> this is the result log

Thanks.

Try the attached patch
(patch -p0  < ~/sip_router/makefile_defs_openbsd.3.4.patch from your
 ser sources dir).

I try to detect openbsd release number and set LDFLAGS based on it.
If this works for you I will commit it on the cvs.
If not please send me the last make line (something like:
gcc -Wl,-O2 -Wl,-E   action.o crc.o data_lump.o      ...)



Andrei
-------------- next part --------------
Index: Makefile.defs
===================================================================
RCS file: /cvsroot/ser/sip_router/Makefile.defs,v
retrieving revision 1.248
diff -u -r1.248 Makefile.defs
--- Makefile.defs	2003/11/11 15:32:36	1.248
+++ Makefile.defs	2003/11/24 14:01:02
@@ -50,6 +50,7 @@
 OS = $(shell uname -s | sed -e s/SunOS/solaris/ | tr "[A-Z]" "[a-z]")
 ARCH = $(shell uname -m |sed -e s/i.86/i386/ -e s/sun4u/sparc64/  \
 			-e s/armv4l/arm/)
+OSREL = $(shell uname -r)
 
 # TLS support
 TLS ?= 
@@ -711,8 +712,13 @@
 	YACC=yacc
 	# no sched_yield on openbsd unless linking with c_r (not recommended)
 	LIBS= -lfl 
-	LDFLAGS=        # openbsd ld doesn't like -O2 or -E
+	OPENBSD_IS_AOUT= $(shell echo "$(OSREL)" | \
+				sed -e 's/^3\.[0-3][^0-9]*$$/yes/' |sed -e 's/^[0-2]\..*/yes/')
+	
+ifeq ($(OPENBSD_IS_AOUT), yes)
+		LDFLAGS=        # openbsd ld doesn't like -O2 or -E
 endif
+endif   # if opensd
 	
 ifeq ($(OS), netbsd)
 	DEFS+=-DHAVE_SOCKADDR_SA_LEN -DHAVE_GETHOSTBYNAME2 \


More information about the sr-users mailing list