yate/modules/Makefile.in

191 lines
4.5 KiB
Makefile

# Makefile
# This file holds the make rules for the Telephony Engine modules
# override DESTDIR at install time to prefix the install directory
DESTDIR :=
# override DEBUG at compile time to enable full debug or remove it all
DEBUG :=
CXX := @CXX@ -Wall
SED := sed
DEFS :=
INCLUDES := -I.. -I@top_srcdir@
CFLAGS := -O2 @MODULE_CPPFLAGS@ @INLINE_FLAGS@
LDFLAGS:= -L.. -lyate
MODFLAGS:= @MODULE_LDFLAGS@
MODSTRIP:= @MODULE_SYMBOLS@
INCFILES := @top_srcdir@/yateclass.h @top_srcdir@/yatengine.h @top_srcdir@/yatephone.h ../yateversn.h
SUBDIRS := skin gtk2
MKDEPS := ../config.status
PROGS := cdrbuild.yate cdrfile.yate \
regexroute.yate regfile.yate accfile.yate register.yate \
tonegen.yate wavefile.yate conference.yate moh.yate \
callgen.yate rmanager.yate pbx.yate dumbchan.yate \
extmodule.yate osschan.yate \
ysipchan.yate yrtpchan.yate
LIBS :=
ifneq (@HAVE_PGSQL@,no)
PROGS := $(PROGS) pgsqldb.yate
endif
ifneq (@HAVE_MYSQL@,no)
PROGS := $(PROGS) mysqldb.yate
endif
ifneq (@HAVE_RESOLV@,no)
# coming soon
# PROGS := $(PROGS) enumroute.yate
endif
ifeq (@HAVE_PRI@_@HAVE_ZAP@,yes_yes)
PROGS := $(PROGS) zapchan.yate
endif
ifeq (@HAVE_PRI_CB@_@HAVE_WANPIPE@,yes_yes)
PROGS := $(PROGS) wpchan.yate
endif
ifneq (@HAVE_H323@,no)
PROGS := $(PROGS) h323chan.yate
endif
ifneq (@HAVE_IAX2@,no)
PROGS := $(PROGS) iaxchan.yate
endif
ifneq (@HAVE_GSM@,no)
PROGS := $(PROGS) gsmcodec.yate
endif
ifneq (@HAVE_ILBC@,no)
PROGS := $(PROGS) ilbccodec.yate
endif
ifeq (@HAVE_GTK2@_@HAVE_GMOZ@,yes_yes)
PROGS := $(PROGS) gtk2/gtk2mozilla.yate
endif
LOCALFLAGS =
LOCALLIBS =
COMPILE = $(CXX) $(DEFS) $(DEBUG) $(INCLUDES) $(CFLAGS)
LINK = $(CXX) $(LDFLAGS)
MODLINK = $(CXX) $(MODFLAGS) $(MODSTRIP) $(LDFLAGS)
MODCOMP = $(COMPILE) $(MODFLAGS) $(MODSTRIP) $(LDFLAGS)
basedir = @libdir@/yate
prefix = @prefix@
exec_prefix = @exec_prefix@
moddir = $(basedir)/modules
.PHONY: all
all: do-all $(LIBS) $(PROGS)
.PHONY: strip
strip: all do-strip
strip --strip-debug --discard-locals $(PROGS)
.PHONY: clean
clean: do-clean
@-$(RM) $(PROGS) $(LIBS) *.o core 2>/dev/null
.PHONY: install
install: all do-install
@mkdir -p "$(DESTDIR)$(moddir)/" && \
for i in $(PROGS) ; do \
install -D "$$i" "$(DESTDIR)$(moddir)/$$i" ; \
done;
.PHONY: uninstall
uninstall: do-uninstall
@-for i in $(PROGS) ; do \
rm "$(DESTDIR)$(moddir)/$$i" ; \
done; \
$(if $(SUBDIRS),\
for i in $(SUBDIRS) ; do \
rmdir "$(DESTDIR)$(moddir)/$$i" ; \
done; \
)
@-rmdir "$(DESTDIR)$(moddir)"
@-rmdir "$(DESTDIR)$(basedir)"
%.o: @srcdir@/%.cpp $(MKDEPS) $(INCFILES)
$(COMPILE) -c $<
do-all do-strip do-clean do-install do-uninstall:
$(if $(SUBDIRS),\
@target=`echo $@ | $(SED) -e 's/^do-//'`; \
for i in $(SUBDIRS) ; do \
if test -f ./$$i/Makefile ; then \
$(MAKE) -C ./$$i $${target} || exit 1;\
fi; \
done \
)
Makefile: @srcdir@/Makefile.in $(MKDEPS)
cd .. && ./config.status
lib%.so: %.o
$(LINK) -shared -o $@ $^
%.yate: @srcdir@/%.cpp $(MKDEPS) $(INCFILES)
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS)
# Take special care of the modules that depend on optional libs
zapchan.yate: libypri.o
zapchan.yate: LOCALFLAGS = libypri.o -lpri
wpchan.yate: libypri.o
wpchan.yate: LOCALFLAGS = libypri.o -lpri
h323chan.yate: LOCALFLAGS = -DPHAS_TEMPLATES -D_REENTRANT -DP_HAS_SEMAPHORES @H323_INC@
h323chan.yate: LOCALLIBS = @H323_LIB@
pgsqldb.yate: LOCALFLAGS = @PGSQL_INC@
pgsqldb.yate: LOCALLIBS = -lpq
mysqldb.yate: LOCALFLAGS = @MYSQL_INC@
mysqldb.yate: LOCALLIBS = @MYSQL_LIB@
enumroute.yate: LOCALLIBS = -lresolv
iaxchan.yate: @IAX2_DEP@
iaxchan.yate: LOCALLIBS = @IAX2_DEP@
iaxchan.yate: LOCALFLAGS = @IAX2_INC@ @IAX2_LIB@
ilbccodec.yate: ../contrib/ilbc/libilbc.a
ilbccodec.yate: LOCALLIBS = ../contrib/ilbc/libilbc.a
ilbccodec.yate: LOCALFLAGS = @ILBC_INC@
gsmcodec.yate: LOCALLIBS = -lgsm
gsmcodec.yate: LOCALFLAGS = @GSM_INC@
ysipchan.yate: ../contrib/ysip/libyatesip.a
ysipchan.yate: LOCALFLAGS = -I@top_srcdir@/contrib/ysip
ysipchan.yate: LOCALLIBS = ../contrib/ysip/libyatesip.a
yrtpchan.yate: ../contrib/yrtp/libyatertp.a
yrtpchan.yate: LOCALFLAGS = -I@top_srcdir@/contrib/yrtp
yrtpchan.yate: LOCALLIBS = ../contrib/yrtp/libyatertp.a
gtk2/gtk2mozilla.yate: @top_srcdir@/contrib/gtk2/gtk2client.h
gtk2/gtk2mozilla.yate: LOCALFLAGS = @GTK2_INC@ @GMOZ_INC@ -I@top_srcdir@/contrib/gtk2
gtk2/gtk2mozilla.yate: LOCALLIBS = @GMOZ_LIB@
../contrib/iax/libiax.a:
$(MAKE) -C ../contrib/iax
../contrib/ilbc/libilbc.a:
$(MAKE) -C ../contrib/ilbc
../contrib/ysip/libyatesip.a:
$(MAKE) -C ../contrib/ysip
../contrib/yrtp/libyatertp.a:
$(MAKE) -C ../contrib/yrtp