Reorder libraries so that Yate libraries and modules can be linked using --as-needed avoiding underlinking or overlinking.

Reported by Mandriva (bug report #206).


git-svn-id: http://yate.null.ro/svn/yate/trunk@3143 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
paulc 2010-03-24 13:46:12 +00:00
parent 586922d77d
commit 15904daef1
16 changed files with 41 additions and 27 deletions

View File

@ -315,7 +315,7 @@ config.status: @srcdir@/configure
Makefile: @srcdir@/Makefile.in $(MKDEPS)
./config.status
yate: libyate.so $(OBJS) $(LIBS)
yate: $(OBJS) $(LIBS) libyate.so
$(LINK) -o $@ $(LIBTHR) $^ @LIBS@
libyate.so: $(YLIB)

View File

@ -13,7 +13,8 @@ DEFS :=
LIBTHR:= @THREAD_LIB@
INCLUDES := -I.. -I@top_srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L.. -lyate @LIBS@
INCFILES := @top_srcdir@/yatengine.h @top_srcdir@/yatephone.h ../yateversn.h
MKDEPS := ../config.status
@ -132,7 +133,7 @@ Makefile: @srcdir@/Makefile.in $(MKDEPS)
cd .. && ./config.status
yate-%: @srcdir@/main-%.cpp $(MKDEPS) ../libyate.so $(INCFILES)
$(COMPILE) -o $@ $(LOCALFLAGS) $< $(LIBTHR) $(LDFLAGS) $(LOCALLIBS) @LIBS@
$(COMPILE) -o $@ $(LOCALFLAGS) $< $(LIBTHR) $(LDFLAGS) $(LOCALLIBS) $(YATELIBS)
yate-qt4: $(QTCLIENT)
yate-qt4: LDFLAGS := $(QTCLIENT) $(LDFLAGS)

View File

@ -11,7 +11,8 @@ DEFS:=
INCLUDES:=-I. -I@srcdir@ -I@top_srcdir@ @QT4_INC@
CXXFLAGS:=$(CXXFLAGS) @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @top_srcdir@/yatecbase.h @srcdir@/qt4client.h
PROJECT = libqt4client.a

View File

@ -115,4 +115,4 @@ Makefile: @srcdir@/Makefile.in $(MKDEPS)
cd .. && ./config.status
../$(YLIB): $(LIBOBJS) $(LIBS)
$(LINK) -shared -o $@ -Wl,--soname=$(YLIB) $(LIBTHR) $^ $(LIBAUX)
$(LINK) -shared -o $@ -Wl,--soname=$(YLIB) $^ $(LIBTHR) $(LIBAUX)

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yateiax.h
PROGS=

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@/../yxml -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/../yxml/yatexml.h @srcdir@/xmpputils.h @srcdir@/yatejabber.h @srcdir@/yatejingle.h
PROGS=
@ -57,7 +58,7 @@ Makefile: @srcdir@/Makefile.in ../../config.status
cd ../.. && ./config.status
../../$(LIBD_VER): $(OBJS) $(YXML)
$(LINK) -shared -o $@ -Wl,--soname=$(LIBD_VER) $^ @LIBS@ @RESOLV_LIB@
$(LINK) -shared -o $@ -Wl,--soname=$(LIBD_VER) $^ $(YATELIBS) @RESOLV_LIB@
../../$(LIBD_DEV): ../../$(LIBD_VER)
cd ../.. && ln -sf $(LIBD_VER) $(LIBD_DEV)

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatemgcp.h
PROGS=
@ -56,7 +57,7 @@ Makefile: @srcdir@/Makefile.in ../../config.status
cd ../.. && ./config.status
../../$(LIBD_VER): $(OBJS)
$(LINK) -shared -o $@ -Wl,--soname=$(LIBD_VER) $^ @LIBS@
$(LINK) -shared -o $@ -Wl,--soname=$(LIBD_VER) $^ $(YATELIBS)
../../$(LIBD_DEV): ../../$(LIBD_VER)
cd ../.. && ln -sf $(LIBD_VER) $(LIBD_DEV)

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatemodem.h
PROGS=

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatepbx.h
PROGS=

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatertp.h
PROGS=

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yatemime.h @top_srcdir@/yatephone.h @srcdir@/yatesdp.h
PROGS=

View File

@ -9,7 +9,8 @@ DEFS :=
LIBTHR := @THREAD_LIB@
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatesig.h
PROGS= yate-ss7test
@ -64,13 +65,13 @@ Makefile: @srcdir@/Makefile.in ../../config.status
cd ../.. && ./config.status
../../$(LIBD_VER): $(OBJS)
$(LINK) -shared -o $@ -Wl,--soname=$(LIBD_VER) $^ @LIBS@
$(LINK) -shared -o $@ -Wl,--soname=$(LIBD_VER) $^ $(YATELIBS)
../../$(LIBD_DEV): ../../$(LIBD_VER)
cd ../.. && ln -sf $(LIBD_VER) $(LIBD_DEV)
yate-%: @srcdir@/main-%.cpp $(MKDEPS) $(LIBS) ../../libyate.so $(INCFILES)
$(COMPILE) -o $@ $(LOCALFLAGS) $< $(LIBTHR) $(LDFLAGS) $(LOCALLIBS) @LIBS@
$(COMPILE) -o $@ $(LOCALFLAGS) $< $(LIBTHR) $(LDFLAGS) $(LOCALLIBS) $(YATELIBS)
$(LIBS): $(OBJS)
$(AR) rcs $@ $^

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatesip.h @srcdir@/util.h
PROGS=

View File

@ -8,7 +8,8 @@ AR := ar
DEFS :=
INCLUDES := -I@top_srcdir@ -I../.. -I@srcdir@
CFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS := -L../.. -lyate @LIBS@
INCFILES := @top_srcdir@/yateclass.h @srcdir@/yatexml.h
PROGS=

View File

@ -15,7 +15,8 @@ DEFS :=
INCLUDES := -I.. -I@top_srcdir@
CFLAGS := @CFLAGS@ @MODULE_CFLAGS@ @INLINE_FLAGS@
CPPFLAGS := @CFLAGS@ @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS:= -L.. -lyate @LIBS@
MODFLAGS:= @MODULE_LDFLAGS@
MODRELAX:= @MODULE_LDRELAX@
MODSTRIP:= @MODULE_SYMBOLS@
@ -204,22 +205,22 @@ Makefile: @srcdir@/Makefile.in $(MKDEPS)
cd .. && ./config.status
lib%.so: %.o
$(LINK) -shared -o $@ $^ @LIBS@
$(LINK) -shared -o $@ $^ $(YATELIBS)
server/%.yate: @srcdir@/server/%.cpp $(MKDEPS) $(INCFILES)
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) @LIBS@
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) $(YATELIBS)
client/%.yate: @srcdir@/client/%.cpp $(MKDEPS) $(INCFILES)
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) @LIBS@
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) $(YATELIBS)
qt4/%.yate: @srcdir@/qt4/%.cpp $(MKDEPS) $(INCFILES)
$(MODCOMP) -o $@ $(LOCALFLAGS) @QT4_INC@ -I@top_srcdir@/clients/qt4 $< $(LOCALLIBS) @QT4_LIB@ @LIBS@
$(MODCOMP) -o $@ $(LOCALFLAGS) @QT4_INC@ -I@top_srcdir@/clients/qt4 $< $(LOCALLIBS) @QT4_LIB@ $(YATELIBS)
qt4/%.moc: @srcdir@/qt4/%.h $(MKDEPS) $(INCFILES)
mkdir -p qt4 && $(MOC) $(DEFS) $(INCLUDES) @QT4_INC@ -I@top_srcdir@/clients/qt4 -I@srcdir@/qt4 -o $@ $<
%.yate: @srcdir@/%.cpp $(MKDEPS) $(INCFILES)
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) @LIBS@
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) $(YATELIBS)
# Take special care of the modules that depend on optional libs

View File

@ -6,7 +6,8 @@ SED := sed
DEFS :=
INCLUDES := -I@top_srcdir@
CFLAGS := -O0 @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= @LDFLAGS@ -L../.. -lyate
LDFLAGS:= @LDFLAGS@
YATELIBS:= -L../.. -lyate @LIBS@
MODFLAGS:= @MODULE_LDFLAGS@
MODSTRIP:= @MODULE_SYMBOLS@
@ -49,4 +50,4 @@ lib%.so: %.o
$(LINK) -shared -o $@ $^
%.yate: @srcdir@/%.cpp $(MKDEPS) $(INCFILES)
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS)
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) $(YATELIBS)