# $Id: Makefile,v 1.9 2005/10/27 17:53:35 stevek Exp $

#
# Makefile, based on the Asterisk Makefile, Coypright (C) 1999, Mark Spencer
#
# Copyright (C) 2002,2003 Junghanns.NET GmbH
#
# Klaus-Peter Junghanns <kapejod@ns1.jnetdns.de>
#
# This program is free software and may be modified and 
# distributed under the terms of the GNU Public License.
#

.EXPORT_ALL_VARIABLES:

#
# app_conference defines which can be passed on the command-line
#

DESTDIR :=
INSTALL_MODULES_DIR := /usr/lib/asterisk/modules
INSTALL_CONFIG_DIR  := /etc/asterisk

ASTERISK_INCLUDE_DIR := /usr/include/asterisk

# turn app_conference debugging on or off ( 0 == OFF, 1 == ON )
APP_CONFERENCE_DEBUG := 1

# 0 = OFF 1 = astdsp 2 = speex
SILDET := 2

#
# app_conference objects to build
#

OBJS = app_conference.o conference.o member.o frame.o cli.o
SHAREDOS = app_conference.so

#
# standard compile settings
#

PROC = $(shell uname -m)
INSTALL = install
CC = gcc

# skip asterisk includes if they are in /usr/include/asterisk
ifneq ($(shell dirname $(ASTERISK_INCLUDE_DIR)), /usr/include)
INCLUDE = -I$(ASTERISK_INCLUDE_DIR)
endif

LIBS = -ldl -lpthread -lm
DEBUG := -g 

CFLAGS += -pipe -fPIC -Wall -Wmissing-prototypes -Wmissing-declarations $(DEBUG) $(INCLUDE) -D_REENTRANT -D_GNU_SOURCE

CFLAGS += $(shell if uname -m | grep -q ppc; then echo "-fsigned-char"; fi)
CFLAGS += -DCRYPTO

ifeq ($(APP_CONFERENCE_DEBUG), 1)
CFLAGS += -DAPP_CONFERENCE_DEBUG
endif

#
# additional flag values for silence detection
#

ifeq ($(SILDET), 2)
OBJS += libspeex/preprocess.o libspeex/misc.o libspeex/smallft.o
CFLAGS += -Ilibspeex -DSILDET=2
endif

ifeq ($(SILDET), 1)
CFLAGS += -DSILDET=1
endif

OSARCH=$(shell uname -s)
ifeq (${OSARCH},Darwin)
SOLINK=-dynamic -bundle -undefined suppress -force_flat_namespace
else
SOLINK=-shared -Xlinker -x
endif

#
# targets
#

all: $(SHAREDOS) 

clean:
	rm -f *.so *.o $(OBJS)

app_conference.so : $(OBJS)
	$(CC) -shared -Xlinker -x -o $@ $(OBJS)

vad_test: vad_test.o libspeex/preprocess.o libspeex/misc.o libspeex/smallft.o
	$(CC) $(PROFILE) -o $@ $^ -lm

install: all
	if [ ! -d ${DESTDIR}${INSTALL_MODULES_DIR} ]; then \
		$(INSTALL) -m 755 -d ${DESTDIR}${INSTALL_MODULES_DIR} ; \
	fi
	for x in $(SHAREDOS); do \
		$(INSTALL) -m 755 $$x ${DESTDIR}$(INSTALL_MODULES_DIR) ; \
	done
	cp -f *.gsm /var/lib/asterisk/sounds
	cp -f *.wav /var/lib/asterisk/sounds


#config: all
#	if [ ! -d ${DESTDIR}${INSTALL_CONFIG_DIR} ]; then \
#		$(INSTALL) -m 755 -d ${DESTDIR}${INSTALL_CONFIG_DIR} ; \
#	fi
#	$(INSTALL) -m 640 conf.conf ${DESTDIR}${INSTALL_CONFIG_DIR}

