124 lines
2.7 KiB
Makefile
124 lines
2.7 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 :=
|
|
|
|
CC := g++ -Wall
|
|
SED := sed
|
|
DEFS :=
|
|
INCLUDES := -I@top_srcdir@
|
|
CFLAGS := -O2 @MODULE_CFLAGS@
|
|
LDFLAGS:= -L.. -lyate
|
|
MODFLAGS:= @MODULE_LDFLAGS@
|
|
INCFILES := @top_srcdir@/telengine.h @top_srcdir@/telephony.h @top_srcdir@/yateversn.h
|
|
|
|
SUBDIRS :=
|
|
PROGS := cdrbuild.yate cdrfile.yate \
|
|
regexroute.yate \
|
|
tonegen.yate wavefile.yate \
|
|
rmanager.yate extmodule.yate
|
|
LIBS :=
|
|
|
|
ifneq (@HAVE_PGSQL@,no)
|
|
PROGS := $(PROGS) pgsqlroute.yate cdrpgsql.yate register.yate
|
|
endif
|
|
|
|
ifneq (@HAVE_PRI@,no)
|
|
PROGS := $(PROGS) zapchan.yate
|
|
endif
|
|
|
|
ifneq (@HAVE_H323@,no)
|
|
PROGS := $(PROGS) h323chan.yate
|
|
endif
|
|
|
|
ifeq (@HAVE_EXOSIP@_@HAVE_ORTP@_@HAVE_GLIB2@,yes_yes_yes)
|
|
PROGS := $(PROGS) sipchan.yate
|
|
endif
|
|
|
|
ifneq (@HAVE_IAX2@,no)
|
|
PROGS := $(PROGS) iaxchan.yate
|
|
endif
|
|
|
|
ifneq (@HAVE_GSM@,no)
|
|
PROGS := $(PROGS) gsmcodec.yate
|
|
endif
|
|
|
|
LOCALFLAGS =
|
|
LOCALLIBS =
|
|
COMPILE = $(CC) $(DEFS) $(DEBUG) $(INCLUDES) $(CFLAGS)
|
|
LINK = $(CC) $(LDFLAGS)
|
|
MODLINK = $(CC) $(MODFLAGS) $(LDFLAGS)
|
|
MODCOMP = $(COMPILE) $(MODFLAGS) $(LDFLAGS)
|
|
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
moddir = @libdir@/yate
|
|
|
|
.PHONY: all
|
|
all: do-all $(LIBS) $(PROGS)
|
|
|
|
.PHONY: strip
|
|
strip: all do-strip
|
|
strip --strip-debug --discard-locals $(PROGS)
|
|
|
|
.PHONY: clean
|
|
clean: do-clean
|
|
@echo rm $(PROGS) $(LIBS) *.o core
|
|
@rm $(PROGS) $(LIBS) *.o core 2>/dev/null; true
|
|
|
|
.PHONY: install
|
|
install: all do-install
|
|
@mkdir -p "$(DESTDIR)$(moddir)/" && \
|
|
install $(PROGS) "$(DESTDIR)$(moddir)/"
|
|
|
|
.PHONY: uninstall
|
|
uninstall: do-uninstall
|
|
@-for i in $(PROGS) ; do \
|
|
rm "$(DESTDIR)$(moddir)/$$i" ; \
|
|
done; \
|
|
rmdir "$(DESTDIR)$(moddir)"
|
|
|
|
%.o: @srcdir@/%.cpp $(INCFILES)
|
|
$(COMPILE) -c $<
|
|
|
|
%.o: @srcdir@/%.c
|
|
$(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 ../config.status
|
|
cd .. && ./config.status
|
|
|
|
lib%.so: %.o
|
|
$(LINK) -shared -o $@ $^
|
|
|
|
%.yate: @srcdir@/%.cpp $(INCFILES)
|
|
$(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS)
|
|
|
|
|
|
# Take special care of the modules that depend on optional libs
|
|
|
|
zapchan.yate: LOCALFLAGS = -lpri
|
|
|
|
h323chan.yate: LOCALFLAGS = -DPHAS_TEMPLATES -D_REENTRANT -DP_HAS_SEMAPHORES @H323_INC@ @H323_LIB@
|
|
|
|
pgsqlroute.yate cdrpgsql.yate register.yate: LOCALFLAGS = @PGSQL_INC@ -lpq
|
|
|
|
sipchan.yate: LOCALFLAGS = @EXOSIP_INC@ @ORTP_INC@ @GLIB2_INC@ @EXOSIP_LIB@ @ORTP_LIB@ @GLIB2_LIB@
|
|
|
|
iaxchan.yate: LOCALFLAGS = @IAX2_INC@ @IAX2_LIB@
|
|
|
|
gsmcodec.yate: LOCALLIBS = -lgsm
|