# # Asterisk -- A telephony toolkit for Linux. # # Makefile for CDR backends (dynamically loaded) # # Copyright (C) 1999, Mark Spencer # # Mark Spencer # # This program is free software, distributed under the terms of # the GNU General Public License # .EXPORT_ALL_VARIABLES: OSARCH=$(shell uname -s) OSREV=$(shell uname -r) #Overwite config files on "make samples" OVERWRITE=y MODS=format_mp3/format_mp3.so app_saycountpl.so CFLAGS+=-fPIC CFLAGS+=-I../asterisk CFLAGS+=-D_GNU_SOURCE INSTALL=install INSTALL_PREFIX= ASTLIBDIR=$(INSTALL_PREFIX)/usr/lib/asterisk MODULES_DIR=$(ASTLIBDIR)/modules ifeq ($(OSARCH),FreeBSD) # XXX FreeBSD paths PREFIX?=/usr/local ASTETCDIR=$(INSTALL_PREFIX)$(PREFIX)/etc/asterisk else ifneq ($(OSARCH),SunOS) ASTETCDIR=$(INSTALL_PREFIX)/etc/asterisk else ASTETCDIR=$(INSTALL_PREFIX)/etc/opt/asterisk endif endif # FreeBSD # # MySQL stuff... Autoconf anyone?? # MODS+=$(shell if [ -d /usr/local/mysql/include ] || [ -d /usr/include/mysql ] || [ -d /usr/local/include/mysql ] || [ -d /opt/mysql/include ]; then echo "cdr_addon_mysql.so app_addon_sql_mysql.so res_config_mysql.so"; fi) CFLAGS+=$(shell if [ -d /usr/local/mysql/include ]; then echo "-I/usr/local/mysql/include"; fi) CFLAGS+=$(shell if [ -d /usr/include/mysql ]; then echo "-I/usr/include/mysql"; fi) CFLAGS+=$(shell if [ -d /usr/local/include/mysql ]; then echo "-I/usr/local/include/mysql"; fi) CFLAGS+=$(shell if [ -d /opt/mysql/include/mysql ]; then echo "-I/opt/mysql/include/mysql"; fi) MLFLAGS= MLFLAGS+=$(shell if [ -d /usr/lib/mysql ]; then echo "-L/usr/lib/mysql"; fi) MLFLAGS+=$(shell if [ -d /usr/lib64/mysql ]; then echo "-L/usr/lib64/mysql"; fi) MLFLAGS+=$(shell if [ -d /usr/local/mysql/lib ]; then echo "-L/usr/local/mysql/lib"; fi) MLFLAGS+=$(shell if [ -d /usr/local/lib/mysql ]; then echo "-L/usr/local/lib/mysql"; fi) MLFLAGS+=$(shell if [ -d /opt/mysql/lib/mysql ]; then echo "-L/opt/mysql/lib/mysql"; fi) OSARCH=$(shell uname -s) ifeq (${OSARCH},Darwin) SOLINK=-dynamic -bundle -undefined suppress -force_flat_namespace else SOLINK=-shared -Xlinker -x endif ifeq (${OSARCH},SunOS) SOLINK=-shared -fpic -L$(CROSS_COMPILE_TARGET)/usr/local/ssl/lib endif all: depend $(MODS) @echo " +---- Asterisk-Addons Build Complete ----+" @echo " + +" @echo " + Addons has successfully been built . +" @echo " + If you would like to install it : +" @echo " + +" @echo " + $(MAKE) install +" @echo " +---------------------------------------------+" format_mp3/format_mp3.so: $(MAKE) -C format_mp3 all install: all for x in $(MODS); do $(INSTALL) -m 755 $$x $(DESTDIR)$(MODULES_DIR) ; done @echo " +---- Asterisk-Addons Installation Complete ----+" @echo " + +" @echo " + Addons has successfully been installed. +" @echo " + If you would like to install the sample +" @echo " + configuration files (overwriting any +" @echo " + existing config files), run: +" @echo " + +" @echo " + $(MAKE) samples +" @echo " +-----------------------------------------------+" clean: rm -f *.so *.o .depend $(MAKE) -C format_mp3 clean %.so : %.o $(CC) $(SOLINK) -o $@ $< ifneq ($(wildcard .depend),) include .depend endif cdr_addon_mysql.so: cdr_addon_mysql.o $(CC) $(SOLINK) -o $@ $< -lmysqlclient -lz $(MLFLAGS) res_config_mysql.so: res_config_mysql.o $(CC) $(SOLINK) -o $@ $< -lmysqlclient -lz $(MLFLAGS) app_addon_sql_mysql.so: app_addon_sql_mysql.o $(CC) $(SOLINK) -o $@ $< -lmysqlclient -lz $(MLFLAGS) depend: .depend .depend: ./mkdep $(CFLAGS) `ls *.c` samples: mkdir -p $(DESTDIR)$(ASTETCDIR) for x in configs/*.sample; do \ if [ -f $(DESTDIR)$(ASTETCDIR)/`basename $$x .sample` ]; then \ if [ "$(OVERWRITE)" = "y" ]; then \ if cmp -s $(DESTDIR)$(ASTETCDIR)/`basename $$x .sample` $$x ; then \ echo "Config file $$x is unchanged"; \ continue; \ fi ; \ mv -f $(DESTDIR)$(ASTETCDIR)/`basename $$x .sample` $(DESTDIR)$(ASTETCDIR)/`basename $$x .sample`.old ; \ else \ echo "Skipping config file $$x"; \ continue; \ fi ;\ fi ; \ $(INSTALL) -m 644 $$x $(DESTDIR)$(ASTETCDIR)/`basename $$x .sample` ;\ done update: @if [ -d .svn ]; then \ echo "Updating from Subversion..." ; \ svn update -q; \ elif [ -d CVS ]; then \ echo "Updating from CVS..." ; \ cvs -q -z3 update -Pd; \ else \ echo "Not under version control"; \ fi