|
|
|
@ -27,8 +27,10 @@ HOST_CC=gcc
|
|
|
|
|
|
|
|
|
|
ifeq ($(CROSS_COMPILE),)
|
|
|
|
|
OSARCH=$(shell uname -s)
|
|
|
|
|
OSREV=$(shell uname -r)
|
|
|
|
|
else
|
|
|
|
|
OSARCH=$(CROSS_ARCH)
|
|
|
|
|
OSREV=${CROSS_REV)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
######### More GSM codec optimization
|
|
|
|
@ -40,7 +42,7 @@ endif
|
|
|
|
|
#Overwite config files on "make samples"
|
|
|
|
|
OVERWRITE=y
|
|
|
|
|
|
|
|
|
|
#Tell gcc to optimize the asterisk's code
|
|
|
|
|
#Tell gcc to optimize the code
|
|
|
|
|
OPTIMIZE+=-O6
|
|
|
|
|
|
|
|
|
|
#Include debug symbols in the executables (-g) and profiling info (-pg)
|
|
|
|
@ -159,12 +161,14 @@ PROC?=$(shell uname -m)
|
|
|
|
|
else
|
|
|
|
|
PROC=$(CROSS_PROC)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq ($(PROC),x86_64)
|
|
|
|
|
# You must have GCC 3.4 to use k8, otherwise use athlon
|
|
|
|
|
PROC=k8
|
|
|
|
|
#PROC=athlon
|
|
|
|
|
OPTIONS+=-m64
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq ($(PROC),sparc64)
|
|
|
|
|
#The problem with sparc is the best stuff is in newer versions of gcc (post 3.0) only.
|
|
|
|
|
#This works for even old (2.96) versions of gcc and provides a small boost either way.
|
|
|
|
@ -194,11 +198,12 @@ endif
|
|
|
|
|
|
|
|
|
|
ifeq ($(findstring BSD,${OSARCH}),BSD)
|
|
|
|
|
PROC=$(shell uname -m)
|
|
|
|
|
CFLAGS+=-I$(CROSS_COMPILE_TARGET)/usr/local/include -L$(CROSS_COMPILE_TARGET)/usr/local/lib
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
PWD=$(shell pwd)
|
|
|
|
|
|
|
|
|
|
GREP=grep
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},SunOS)
|
|
|
|
|
GREP=/usr/xpg4/bin/grep
|
|
|
|
|
M4=/usr/local/bin/m4
|
|
|
|
@ -211,45 +216,64 @@ CFLAGS+=$(OPTIMIZE)
|
|
|
|
|
ifneq ($(PROC),ultrasparc)
|
|
|
|
|
CFLAGS+=$(shell if $(CC) -march=$(PROC) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=$(PROC)"; fi)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq ($(PROC),ppc)
|
|
|
|
|
CFLAGS+=-fsigned-char
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
CFLAGS+=$(shell if [ -f $(CROSS_COMPILE_TARGET)/usr/include/osp/osp.h ]; then echo "-DOSP_SUPPORT -I$(CROSS_COMPILE_TARGET)/usr/include/osp" ; fi)
|
|
|
|
|
ifneq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/osp/osp.h),)
|
|
|
|
|
CFLAGS+=-DOSP_SUPPORT -I$(CROSS_COMPILE_TARGET)/usr/include/osp
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},FreeBSD)
|
|
|
|
|
OSVERSION=$(shell make -V OSVERSION -f $(CROSS_COMPILE_TARGET)/usr/share/mk/bsd.port.subdir.mk)
|
|
|
|
|
CFLAGS+=$(shell if test ${OSVERSION} -lt 500016 ; then echo "-D_THREAD_SAFE"; fi)
|
|
|
|
|
LIBS+=$(shell if test ${OSVERSION} -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) -L$(CROSS_COMPILE_TARGET)/usr/local/lib
|
|
|
|
|
INCLUDE+=-I$(CROSS_COMPILE_TARGET)/usr/local/include
|
|
|
|
|
CFLAGS+=$(shell if [ -d $(CROSS_COMPILE_TARGET)/usr/local/include/spandsp ]; then echo "-I$(CROSS_COMPILE_TARGET)/usr/local/include/spandsp"; fi)
|
|
|
|
|
BSDVERSION=$(shell make -V OSVERSION -f $(CROSS_COMPILE_TARGET)/usr/share/mk/bsd.port.subdir.mk)
|
|
|
|
|
CFLAGS+=$(shell if test ${BSDVERSION} -lt 500016 ; then echo "-D_THREAD_SAFE"; fi)
|
|
|
|
|
LIBS+=$(shell if test ${BSDVERSION} -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi)
|
|
|
|
|
ifneq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/local/include/spandsp),)
|
|
|
|
|
CFLAGS+=" -I$(CROSS_COMPILE_TARGET)/usr/local/include/spandsp"
|
|
|
|
|
endif
|
|
|
|
|
MPG123TARG=freebsd
|
|
|
|
|
endif # FreeBSD
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},NetBSD)
|
|
|
|
|
CFLAGS+=-pthread
|
|
|
|
|
INCLUDE+=-I$(CROSS_COMPILE_TARGET)/usr/local/include -I$(CROSS_COMPILE_TARGET)/usr/pkg/include
|
|
|
|
|
INCLUDE+=-I$(CROSS_COMPILE_TARGET)/usr/pkg/include
|
|
|
|
|
MPG123TARG=netbsd
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},OpenBSD)
|
|
|
|
|
CFLAGS+=-pthread
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},SunOS)
|
|
|
|
|
CFLAGS+=-Wcast-align -DSOLARIS
|
|
|
|
|
INCLUDE+=-Iinclude/solaris-compat -I$(CROSS_COMPILE_TARGET)/usr/local/ssl/include
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
CFLAGS+=$(shell if [ -f $(CROSS_COMPILE_TARGET)/usr/include/linux/zaptel.h ]; then echo "-DZAPTEL_OPTIMIZATIONS"; fi)
|
|
|
|
|
CFLAGS+=$(shell if [ -f $(CROSS_COMPILE_TARGET)/usr/local/include/zaptel.h ]; then echo "-DZAPTEL_OPTIMIZATIONS"; fi)
|
|
|
|
|
ifneq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/linux/zaptel.h)$(wildcard $(CROSS_COMPILE_TARGET)/usr/local/include/zaptel.h),)
|
|
|
|
|
CFLAGS+=-DZAPTEL_OPTIMIZATIONS
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
LIBEDIT=editline/libedit.a
|
|
|
|
|
|
|
|
|
|
ASTERISKVERSION=$(shell if [ -f .version ]; then cat .version; else if [ -d CVS ]; then if [ -f CVS/Tag ] ; then echo "CVS-`sed 's/^T//g' CVS/Tag`-`date +"%D-%T"`"; else echo "CVS-HEAD"; fi; fi; fi)
|
|
|
|
|
ASTERISKVERSIONNUM=$(shell if [ -d CVS ]; then echo 999999 ; else if [ -f .version ] ; then awk -F. '{printf "%02d%02d%02d", $$1, $$2, $$3}' .version ; else echo 000000 ; fi ; fi)
|
|
|
|
|
# Set the following two variables to match your httpd installation.
|
|
|
|
|
ifneq ($(wildcard .version),)
|
|
|
|
|
ASTERISKVERSION=$(shell cat .version)
|
|
|
|
|
ASTERISKVERSIONNUM=$(shell awk -F. '{printf "%02d%02d%02d", $$1, $$2, $$3}' .version)
|
|
|
|
|
RPMVERSION=$(shell sed 's/[-\/:]/_/g' .version)
|
|
|
|
|
else
|
|
|
|
|
RPMVERSION=unknown
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
RPMVERSION=$(shell if [ -f .version ]; then sed 's/[-\/:]/_/g' .version; else echo "unknown" ; fi)
|
|
|
|
|
ifneq ($(wildcard CVS),)
|
|
|
|
|
ASTERISKVERSIONNUM=999999
|
|
|
|
|
ifneq ($(wildcard CVS/Tag),)
|
|
|
|
|
ASTERISKVERSION=$(shell echo "CVS-`sed 's/^T//g' CVS/Tag`-`date +"%D-%T"`")
|
|
|
|
|
else
|
|
|
|
|
ASTERISKVERSION=CVS HEAD
|
|
|
|
|
endif
|
|
|
|
|
else
|
|
|
|
|
ASTERISKVERSIONNUM=000000
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
CFLAGS+= $(DEBUG_THREADS)
|
|
|
|
|
CFLAGS+= $(TRACE_FRAMES)
|
|
|
|
@ -258,30 +282,39 @@ CFLAGS+= $(BUSYDETECT)
|
|
|
|
|
CFLAGS+= $(OPTIONS)
|
|
|
|
|
CFLAGS+= -fomit-frame-pointer
|
|
|
|
|
SUBDIRS=res channels pbx apps codecs formats agi cdr funcs utils stdtime
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},Linux)
|
|
|
|
|
LIBS=-ldl -lpthread
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
LIBS+=-lncurses -lm
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},Linux)
|
|
|
|
|
LIBS+=-lresolv #-lnjamd
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},Darwin)
|
|
|
|
|
LIBS+=-lresolv
|
|
|
|
|
CFLAGS+=-D__Darwin__
|
|
|
|
|
AUDIO_LIBS=-framework CoreAudio
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},FreeBSD)
|
|
|
|
|
LIBS+=-lcrypto
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},NetBSD)
|
|
|
|
|
LIBS+=-lpthread -lcrypto -lm -L$(CROSS_COMPILE_TARGET)/usr/local/lib -L$(CROSS_COMPILE_TARGET)/usr/pkg/lib -lncurses
|
|
|
|
|
LIBS+=-lpthread -lcrypto -lm -L$(CROSS_COMPILE_TARGET)/usr/pkg/lib -lncurses
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},OpenBSD)
|
|
|
|
|
LIBS=-lcrypto -lpthread -lm -lncurses
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},SunOS)
|
|
|
|
|
LIBS+=-lpthread -ldl -lnsl -lsocket -lresolv -L$(CROSS_COMPILE_TARGET)/usr/local/ssl/lib
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
LIBS+=-lssl
|
|
|
|
|
|
|
|
|
|
OBJS=io.o sched.o logger.o frame.o loader.o config.o channel.o \
|
|
|
|
@ -292,6 +325,7 @@ OBJS=io.o sched.o logger.o frame.o loader.o config.o channel.o \
|
|
|
|
|
astmm.o enum.o srv.o dns.o aescrypt.o aestab.o aeskey.o \
|
|
|
|
|
utils.o config_old.o plc.o jitterbuf.o dnsmgr.o devicestate.o \
|
|
|
|
|
netsock.o slinfactory.o ast_expr2.o ast_expr2f.o
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},Darwin)
|
|
|
|
|
OBJS+=poll.o dlfcn.o
|
|
|
|
|
ASTLINK=-Wl,-dynamic
|
|
|
|
@ -300,6 +334,7 @@ else
|
|
|
|
|
ASTLINK=-Wl,-E
|
|
|
|
|
SOLINK=-shared -Xlinker -x
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
ifeq (${OSARCH},SunOS)
|
|
|
|
|
OBJS+=strcompat.o
|
|
|
|
|
ASTLINK=
|
|
|
|
|