From 98bf08bdcf2edd9d397f32650a8bfe62186fbecf Mon Sep 17 00:00:00 2001 From: "Alfred E. Heggestad" Date: Sun, 9 Feb 2014 11:50:07 +0100 Subject: baresip 0.4.10 --- mk/Doxyfile | 240 ++++++++++++++++++++++++++++++ mk/mod.mk | 93 ++++++++++++ mk/modules.mk | 346 +++++++++++++++++++++++++++++++++++++++++++ mk/symbian/baresip.mmp | 87 +++++++++++ mk/symbian/baresip_gcce.pkg | 24 +++ mk/symbian/baresip_reg.rss | 16 ++ mk/symbian/baresip_thumb.pkg | 14 ++ mk/symbian/bld.inf | 12 ++ mk/symbian/ecrt.cpp | 31 ++++ mk/symbian/mod.cpp | 19 +++ mk/symbian/static.c | 14 ++ mk/win32/baresip.vcproj | 259 ++++++++++++++++++++++++++++++++ mk/win32/static.c | 14 ++ 13 files changed, 1169 insertions(+) create mode 100644 mk/Doxyfile create mode 100644 mk/mod.mk create mode 100644 mk/modules.mk create mode 100644 mk/symbian/baresip.mmp create mode 100644 mk/symbian/baresip_gcce.pkg create mode 100644 mk/symbian/baresip_reg.rss create mode 100644 mk/symbian/baresip_thumb.pkg create mode 100644 mk/symbian/bld.inf create mode 100644 mk/symbian/ecrt.cpp create mode 100644 mk/symbian/mod.cpp create mode 100644 mk/symbian/static.c create mode 100644 mk/win32/baresip.vcproj create mode 100644 mk/win32/static.c (limited to 'mk') diff --git a/mk/Doxyfile b/mk/Doxyfile new file mode 100644 index 0000000..2552315 --- /dev/null +++ b/mk/Doxyfile @@ -0,0 +1,240 @@ +# Doxyfile 1.4.7 + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = baresip +PROJECT_NUMBER = 0.4.10 +OUTPUT_DIRECTORY = ../baresip-dox +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +#USE_WINDOWS_ENCODING = NO +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = YES +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the +ALWAYS_DETAILED_SEC = NO +INLINE_INHERITED_MEMB = NO +FULL_PATH_NAMES = NO +STRIP_FROM_PATH = +STRIP_FROM_INC_PATH = +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = YES +MULTILINE_CPP_IS_BRIEF = NO +INHERIT_DOCS = YES +SEPARATE_MEMBER_PAGES = NO +TAB_SIZE = 8 +ALIASES = +OPTIMIZE_OUTPUT_FOR_C = YES +OPTIMIZE_OUTPUT_JAVA = NO +#BUILTIN_STL_SUPPORT = NO +DISTRIBUTE_GROUP_DOC = NO +SUBGROUPING = YES +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- +EXTRACT_ALL = NO +EXTRACT_PRIVATE = NO +EXTRACT_STATIC = NO +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +HIDE_UNDOC_MEMBERS = YES +HIDE_UNDOC_CLASSES = YES +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = NO +CASE_SENSE_NAMES = YES +HIDE_SCOPE_NAMES = NO +SHOW_INCLUDE_FILES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +SORT_BRIEF_DOCS = NO +SORT_BY_SCOPE_NAME = NO +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +GENERATE_DEPRECATEDLIST= YES +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +SHOW_USED_FILES = YES +#SHOW_DIRECTORIES = NO +FILE_VERSION_FILTER = +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = YES +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = YES +WARN_FORMAT = "$file:$line: $text" +WARN_LOGFILE = +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- +INPUT = . +FILE_PATTERNS = *.cpp *.c \ + *.h \ + *.m \ + *.dox +RECURSIVE = YES +EXCLUDE = + +EXCLUDE_SYMLINKS = NO +EXCLUDE_PATTERNS = */.svn/* + +EXAMPLE_PATH = +EXAMPLE_PATTERNS = * +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = YES +INLINE_SOURCES = NO +STRIP_CODE_COMMENTS = YES +REFERENCED_BY_RELATION = YES +REFERENCES_RELATION = YES +#REFERENCES_LINK_SOURCE = YES +#USE_HTAGS = NO +VERBATIM_HEADERS = YES +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- +ALPHABETICAL_INDEX = YES +COLS_IN_ALPHA_INDEX = 5 +IGNORE_PREFIX = +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = html +HTML_FILE_EXTENSION = .html +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +#HTML_ALIGN_MEMBERS = YES +GENERATE_HTMLHELP = NO +CHM_FILE = +HHC_LOCATION = +GENERATE_CHI = NO +BINARY_TOC = NO +TOC_EXPAND = NO +DISABLE_INDEX = NO +ENUM_VALUES_PER_LINE = 4 +GENERATE_TREEVIEW = NO +TREEVIEW_WIDTH = 250 +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- +GENERATE_LATEX = NO +LATEX_OUTPUT = latex +LATEX_CMD_NAME = latex +MAKEINDEX_CMD_NAME = makeindex +COMPACT_LATEX = NO +PAPER_TYPE = a4wide +EXTRA_PACKAGES = +LATEX_HEADER = +PDF_HYPERLINKS = NO +USE_PDFLATEX = NO +LATEX_BATCHMODE = NO +LATEX_HIDE_INDICES = NO +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- +GENERATE_MAN = NO +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_LINKS = NO +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- +GENERATE_XML = NO +XML_OUTPUT = xml +XML_SCHEMA = +XML_DTD = +XML_PROGRAMLISTING = YES +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- +GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- +GENERATE_PERLMOD = NO +PERLMOD_LATEX = NO +PERLMOD_PRETTY = YES +PERLMOD_MAKEVAR_PREFIX = +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = YES +EXPAND_ONLY_PREDEF = YES +SEARCH_INCLUDES = YES +INCLUDE_PATH = include +INCLUDE_FILE_PATTERNS = +PREDEFINED = "DEBUG_MODULE=foo /**< hei */" +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- +TAGFILES = +GENERATE_TAGFILE = +ALLEXTERNALS = NO +EXTERNAL_GROUPS = YES +PERL_PATH = /usr/bin/perl +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- +CLASS_DIAGRAMS = YES +HIDE_UNDOC_RELATIONS = YES +HAVE_DOT = YES +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +GROUP_GRAPHS = YES +UML_LOOK = NO +TEMPLATE_RELATIONS = NO +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +CALL_GRAPH = YES +#CALLER_GRAPH = YES +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DOT_IMAGE_FORMAT = png +DOT_PATH = +DOTFILE_DIRS = +DOT_GRAPH_MAX_NODES = 250 +#MAX_DOT_GRAPH_WIDTH = 1024 +#MAX_DOT_GRAPH_HEIGHT = 1024 +#MAX_DOT_GRAPH_DEPTH = 1000 +DOT_TRANSPARENT = NO +DOT_MULTI_TARGETS = NO +GENERATE_LEGEND = YES +DOT_CLEANUP = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- +SEARCHENGINE = NO diff --git a/mk/mod.mk b/mk/mod.mk new file mode 100644 index 0000000..64ec23c --- /dev/null +++ b/mk/mod.mk @@ -0,0 +1,93 @@ +# +# mod.mk +# +# Copyright (C) 2010 Creytiv.com +# + +$(MOD)_OBJS := $(patsubst %.c,$(BUILD)/modules/$(MOD)/%.o,\ + $(filter %.c,$($(MOD)_SRCS))) +$(MOD)_OBJS += $(patsubst %.cpp,$(BUILD)/modules/$(MOD)/%.o,\ + $(filter %.cpp,$($(MOD)_SRCS))) +$(MOD)_OBJS += $(patsubst %.m,$(BUILD)/modules/$(MOD)/%.o,\ + $(filter %.m,$($(MOD)_SRCS))) +$(MOD)_OBJS += $(patsubst %.S,$(BUILD)/modules/$(MOD)/%.o,\ + $(filter %.S,$($(MOD)_SRCS))) + +-include $($(MOD)_OBJS:.o=.d) + + +$(MOD)_NAME := $(MOD) + + +ifeq ($(STATIC),) + +# +# Dynamically loaded modules +# + +$(MOD)$(MOD_SUFFIX): $($(MOD)_OBJS) + @echo " LD [M] $@" + @$(LD) $(LFLAGS) $(SH_LFLAGS) $(MOD_LFLAGS) $($(basename $@)_OBJS) \ + $($(basename $@)_LFLAGS) -L$(LIBRE_SO) -lre -o $@ + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.c $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " CC [M] $@" + @mkdir -p $(dir $@) + @$(CC) $(CFLAGS) -c $< -o $@ $(DFLAGS) + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.m $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " OC [M] $@" + @mkdir -p $(dir $@) + @$(CC) $(CFLAGS) $(OBJCFLAGS) -c $< -o $@ $(DFLAGS) + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.cpp $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " CXX [M] $@" + @mkdir -p $(dir $@) + @$(CXX) $(CXXFLAGS) -c $< -o $@ $(DFLAGS) + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.S $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " AS [M] $@" + @mkdir -p $(dir $@) + @$(CC) $(CFLAGS) -DMOD_NAME=\"$(MOD)\" -c $< -o $@ $(DFLAGS) + +else + +# +# Static linking of modules +# + +# needed to deref variable now, append to list +MOD_OBJS := $(MOD_OBJS) $($(MOD)_OBJS) +MOD_LFLAGS := $(MOD_LFLAGS) $($(MOD)_LFLAGS) + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.c $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " CC [m] $@" + @mkdir -p $(dir $@) + @$(CC) $(CFLAGS) -DMOD_NAME=\"$(MOD)\" -c $< -o $@ $(DFLAGS) + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.m $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " OC [m] $@" + @mkdir -p $(dir $@) + @$(CC) $(CFLAGS) $(OBJCFLAGS) -DMOD_NAME=\"$(MOD)\" -c $< -o $@ \ + $(DFLAGS) + + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.cpp $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " CXX [m] $@" + @mkdir -p $(dir $@) + @$(CXX) $(CXXFLAGS) -DMOD_NAME=\"$(MOD)\" -c $< -o $@ $(DFLAGS) + +$(BUILD)/modules/$(MOD)/%.o: modules/$(MOD)/%.S $(BUILD) Makefile mk/mod.mk \ + modules/$(MOD)/module.mk mk/modules.mk + @echo " AS [m] $@" + @mkdir -p $(dir $@) + @$(CC) $(CFLAGS) -DMOD_NAME=\"$(MOD)\" -c $< -o $@ $(DFLAGS) + +endif diff --git a/mk/modules.mk b/mk/modules.mk new file mode 100644 index 0000000..64428a4 --- /dev/null +++ b/mk/modules.mk @@ -0,0 +1,346 @@ +# +# modules.mk +# +# Copyright (C) 2010 Creytiv.com +# +# External libraries: +# +# USE_ALSA ALSA audio driver +# USE_AMR Adaptive Multi-Rate (AMR) audio codec +# USE_BV32 BroadVoice32 Wideband Audio codec +# USE_CAIRO Cairo module +# USE_CONS Console input driver +# USE_COREAUDIO MacOSX Coreaudio audio driver +# USE_EVDEV Event Device module +# USE_FFMPEG FFmpeg video codec libraries +# USE_G711 G.711 audio codec +# USE_G722 G.722 audio codec +# USE_G722_1 G.722.1 audio codec +# USE_G726 G.726 audio codec +# USE_GSM GSM audio codec +# USE_GST Gstreamer audio module +# USE_ILBC iLBC audio codec +# USE_ISAC iSAC audio codec +# USE_L16 L16 audio codec +# USE_MPG123 Use mpg123 +# USE_OPUS Opus audio codec +# USE_OSS OSS audio driver +# USE_PLC Packet Loss Concealment +# USE_PORTAUDIO Portaudio audio driver +# USE_SDL libSDL video output +# USE_SILK SILK (Skype) audio codec +# USE_SNDFILE sndfile wav dumper +# USE_SPEEX Speex audio codec +# USE_SPEEX_AEC Speex Acoustic Echo Canceller +# USE_SPEEX_PP Speex preprocessor +# USE_SRTP Secure RTP module +# USE_STDIO stdio input driver +# USE_SYSLOG Syslog module +# USE_UUID UUID module +# USE_V4L Video4Linux module +# USE_V4L2 Video4Linux2 module +# USE_WINWAVE Windows audio driver +# USE_X11 X11 video output +# + + +# Default is enabled +MOD_AUTODETECT := 1 + +ifneq ($(MOD_AUTODETECT),) + +USE_CONS := 1 +USE_G711 := 1 +USE_L16 := 1 + +ifneq ($(OS),win32) + +USE_ALSA := $(shell [ -f $(SYSROOT)/include/alsa/asoundlib.h ] || \ + [ -f $(SYSROOT_ALT)/include/alsa/asoundlib.h ] && echo "yes") +USE_AMR := $(shell [ -d $(SYSROOT)/include/opencore-amrnb ] || \ + [ -d $(SYSROOT_ALT)/include/opencore-amrnb ] || \ + [ -d $(SYSROOT)/local/include/amrnb ] || \ + [ -d $(SYSROOT)/include/amrnb ] && echo "yes") +USE_BV32 := $(shell [ -f $(SYSROOT)/include/bv32/bv32.h ] || \ + [ -f $(SYSROOT)/local/include/bv32/bv32.h ] && echo "yes") +USE_CAIRO := $(shell [ -f $(SYSROOT)/include/cairo/cairo.h ] || \ + [ -f $(SYSROOT_ALT)/include/cairo/cairo.h ] && echo "yes") +USE_DTLS := $(shell [ -f $(SYSROOT)/include/openssl/dtls1.h ] || \ + [ -f $(SYSROOT)/local/include/openssl/dtls1.h ] || \ + [ -f $(SYSROOT_ALT)/include/openssl/dtls1.h ] && echo "yes") +USE_DTLS_SRTP := $(shell [ -f $(SYSROOT)/include/openssl/srtp.h ] || \ + [ -f $(SYSROOT)/local/include/openssl/srtp.h ] || \ + [ -f $(SYSROOT_ALT)/include/openssl/srtp.h ] && echo "yes") +USE_FFMPEG := $(shell [ -f $(SYSROOT)/include/libavcodec/avcodec.h ] || \ + [ -f $(SYSROOT)/local/include/libavcodec/avcodec.h ] || \ + [ -f $(SYSROOT)/include/ffmpeg/libavcodec/avcodec.h ] || \ + [ -f $(SYSROOT)/include/ffmpeg/avcodec.h ] || \ + [ -f $(SYSROOT)/local/ffmpeg/avcodec.h ] || \ + [ -f $(SYSROOT_ALT)/include/libavcodec/avcodec.h ] && echo "yes") +USE_G722 := $(shell [ -f $(SYSROOT)/include/spandsp/g722.h ] || \ + [ -f $(SYSROOT_ALT)/include/spandsp/g722.h ] || \ + [ -f $(SYSROOT)/local/include/spandsp/g722.h ] && echo "yes") +USE_G722_1 := $(shell [ -f $(SYSROOT)/include/g722_1.h ] || \ + [ -f $(SYSROOT_ALT)/include/g722_1.h ] || \ + [ -f $(SYSROOT)/local/include/g722_1.h ] && echo "yes") +USE_G726 := $(shell [ -f $(SYSROOT)/include/spandsp/g726.h ] || \ + [ -f $(SYSROOT_ALT)/include/spandsp/g726.h ] || \ + [ -f $(SYSROOT)/local/include/spandsp/g726.h ] && echo "yes") +USE_GSM := $(shell [ -f $(SYSROOT)/include/gsm.h ] || \ + [ -f $(SYSROOT_ALT)/include/gsm.h ] || \ + [ -f $(SYSROOT)/include/gsm/gsm.h ] || \ + [ -f $(SYSROOT)/local/include/gsm.h ] || \ + [ -f $(SYSROOT)/local/include/gsm/gsm.h ] && echo "yes") +USE_GST := $(shell [ -f $(SYSROOT)/include/gstreamer-0.10/gst/gst.h ] || \ + [ -f $(SYSROOT_ALT)/include/gstreamer-0.10/gst/gst.h ] && echo "yes") +USE_ILBC := $(shell [ -f $(SYSROOT)/include/iLBC_define.h ] || \ + [ -f $(SYSROOT)/local/include/iLBC_define.h ] && echo "yes") +USE_ISAC := $(shell [ -f $(SYSROOT)/include/isac.h ] || \ + [ -f $(SYSROOT)/local/include/isac.h ] && echo "yes") +USE_MPG123 := $(shell [ -f $(SYSROOT)/include/mpg123.h ] || \ + [ -f $(SYSROOT_ALT)/include/mpg123.h ] && echo "yes") +USE_OPUS := $(shell [ -f $(SYSROOT)/include/opus/opus.h ] || \ + [ -f $(SYSROOT_ALT)/include/opus/opus.h ] || \ + [ -f $(SYSROOT)/local/include/opus/opus.h ] && echo "yes") +USE_OSS := $(shell [ -f $(SYSROOT)/include/soundcard.h ] || \ + [ -f $(SYSROOT)/include/linux/soundcard.h ] || \ + [ -f $(SYSROOT)/include/sys/soundcard.h ] && echo "yes") +USE_PLC := $(shell [ -f $(SYSROOT)/include/spandsp/plc.h ] || \ + [ -f $(SYSROOT_ALT)/include/spandsp/plc.h ] || \ + [ -f $(SYSROOT)/local/include/spandsp/plc.h ] && echo "yes") +USE_PORTAUDIO := $(shell [ -f $(SYSROOT)/local/include/portaudio.h ] || \ + [ -f $(SYSROOT)/include/portaudio.h ] || \ + [ -f $(SYSROOT_ALT)/include/portaudio.h ] && echo "yes") +USE_SDL := $(shell [ -f $(SYSROOT)/include/SDL/SDL.h ] || \ + [ -f $(SYSROOT)/local/include/SDL/SDL.h ] || \ + [ -f $(SYSROOT_ALT)/include/SDL/SDl.h ] && echo "yes") +USE_SDL2 := $(shell [ -f $(SYSROOT)/include/SDL2/SDL.h ] || \ + [ -f $(SYSROOT)/local/include/SDL2/SDL.h ] || \ + [ -f $(SYSROOT_ALT)/include/SDL2/SDl.h ] && echo "yes") +USE_SILK := $(shell [ -f $(SYSROOT)/include/silk/SKP_Silk_SDK_API.h ] || \ + [ -f $(SYSROOT_ALT)/include/silk/SKP_Silk_SDK_API.h ] || \ + [ -f $(SYSROOT)/local/include/silk/SKP_Silk_SDK_API.h ] && echo "yes") +USE_SNDFILE := $(shell [ -f $(SYSROOT)/include/sndfile.h ] || \ + [ -f $(SYSROOT_ALT)/include/sndfile.h ] && echo "yes") +USE_STDIO := $(shell [ -f $(SYSROOT)/include/termios.h ] && echo "yes") +HAVE_SPEEXDSP := $(shell \ + [ -f $(SYSROOT)/local/lib/libspeexdsp$(LIB_SUFFIX) ] || \ + [ -f $(SYSROOT)/lib/libspeexdsp$(LIB_SUFFIX) ] || \ + [ -f $(SYSROOT_ALT)/lib/libspeexdsp$(LIB_SUFFIX) ] && echo "yes") +ifeq ($(HAVE_SPEEXDSP),) +HAVE_SPEEXDSP := \ + $(shell find $(SYSROOT)/lib -name libspeexdsp$(LIB_SUFFIX) 2>/dev/null) +endif +USE_SPEEX := $(shell [ -f $(SYSROOT)/include/speex.h ] || \ + [ -f $(SYSROOT)/include/speex/speex.h ] || \ + [ -f $(SYSROOT)/local/include/speex.h ] || \ + [ -f $(SYSROOT)/local/include/speex/speex.h ] || \ + [ -f $(SYSROOT_ALT)/include/speex/speex.h ] && echo "yes") +USE_SPEEX_AEC := $(shell [ -f $(SYSROOT)/include/speex/speex_echo.h ] || \ + [ -f $(SYSROOT)/local/include/speex/speex_echo.h ] || \ + [ -f $(SYSROOT_ALT)/include/speex/speex_echo.h ] && echo "yes") +USE_SPEEX_PP := $(shell [ -f $(SYSROOT)/include/speex_preprocess.h ] || \ + [ -f $(SYSROOT)/local/include/speex_preprocess.h ] || \ + [ -f $(SYSROOT)/local/include/speex/speex_preprocess.h ] || \ + [ -f $(SYSROOT_ALT)/include/speex/speex_preprocess.h ] || \ + [ -f $(SYSROOT)/include/speex/speex_preprocess.h ] && echo "yes") +USE_SRTP := $(shell [ -f $(SYSROOT)/include/srtp/srtp.h ] || \ + [ -f $(SYSROOT_ALT)/include/srtp/srtp.h ] || \ + [ -f $(SYSROOT)/local/include/srtp/srtp.h ] && echo "yes") +USE_SYSLOG := $(shell [ -f $(SYSROOT)/include/syslog.h ] || \ + [ -f $(SYSROOT_ALT)/include/syslog.h ] || \ + [ -f $(SYSROOT)/local/include/syslog.h ] && echo "yes") +USE_UUID := $(shell [ -f $(SYSROOT)/include/uuid/uuid.h ] && echo "yes") +USE_V4L := $(shell [ -f $(SYSROOT)/include/libv4l1.h ] || \ + [ -f $(SYSROOT)/local/include/libv4l1.h ] \ + && echo "yes") +USE_V4L2 := $(shell [ -f $(SYSROOT)/include/libv4l2.h ] || \ + [ -f $(SYSROOT)/local/include/libv4l2.h ] \ + && echo "yes") +USE_X11 := $(shell [ -f $(SYSROOT)/include/X11/Xlib.h ] || \ + [ -f $(SYSROOT)/local/include/X11/Xlib.h ] || \ + [ -f $(SYSROOT_ALT)/include/X11/Xlib.h ] && echo "yes") +USE_VPX := $(shell [ -f $(SYSROOT)/include/vpx/vp8.h ] \ + || [ -f $(SYSROOT)/local/include/vpx/vp8.h ] \ + || [ -f $(SYSROOT_ALT)/include/vpx/vp8.h ] \ + && echo "yes") +endif + +# Platform specific modules +ifeq ($(OS),darwin) +USE_COREAUDIO := yes +USE_OPENGL := yes + +ifneq ($(USE_FFMPEG),) +ifneq ($(shell echo | $(CC) -E -dM - | grep '__LP64__'), ) +LP64 := 1 +endif + +ifndef LP64 +USE_QUICKTIME := yes +endif + +endif + +USE_QTCAPTURE := yes + +endif +ifeq ($(OS),linux) +USE_EVDEV := $(shell [ -f $(SYSROOT)/include/linux/input.h ] && echo "yes") +endif +ifeq ($(OS),win32) +USE_WINWAVE := yes +MODULES += wincons +endif + +endif + +# ------------------------------------------------------------------------- # + +MODULES += $(EXTRA_MODULES) +MODULES += stun turn ice natbd auloop presence +MODULES += menu contact vumeter mwi account natpmp httpd +ifneq ($(HAVE_PTHREAD),) +MODULES += aubridge +endif +ifneq ($(USE_VIDEO),) +MODULES += vidloop selfview vidbridge +endif + + +ifneq ($(USE_ALSA),) +MODULES += alsa +endif +ifneq ($(USE_AMR),) +MODULES += amr +endif +ifneq ($(USE_BV32),) +MODULES += bv32 +endif +ifneq ($(USE_CAIRO),) +MODULES += cairo +ifneq ($(USE_MPG123),) +MODULES += rst +endif +endif +ifneq ($(USE_CONS),) +MODULES += cons +endif +ifneq ($(USE_COREAUDIO),) +MODULES += coreaudio +endif +ifneq ($(USE_QUICKTIME),) +MODULES += quicktime +endif +ifneq ($(USE_QTCAPTURE),) +MODULES += qtcapture +CFLAGS += -DQTCAPTURE_RUNLOOP +endif +ifneq ($(USE_EVDEV),) +MODULES += evdev +endif +ifneq ($(USE_FFMPEG),) +USE_FFMPEG_AVFORMAT := 1 +CFLAGS += -I/usr/include/ffmpeg +CFLAGS += -Wno-shadow -DUSE_FFMPEG +MODULES += avcodec +ifneq ($(USE_FFMPEG_AVFORMAT),) +MODULES += avformat +endif +endif +ifneq ($(USE_G711),) +MODULES += g711 +endif +ifneq ($(USE_G722),) +MODULES += g722 +endif +ifneq ($(USE_G722_1),) +MODULES += g7221 +endif +ifneq ($(USE_G726),) +MODULES += g726 +endif +ifneq ($(USE_GSM),) +MODULES += gsm +endif +ifneq ($(USE_GST),) +MODULES += gst +endif +ifneq ($(USE_ILBC),) +MODULES += ilbc +endif +ifneq ($(USE_ISAC),) +MODULES += isac +endif +ifneq ($(USE_L16),) +MODULES += l16 +endif +ifneq ($(USE_OPENGL),) +MODULES += opengl +endif +ifneq ($(USE_OPENGLES),) +MODULES += opengles +endif +ifneq ($(USE_OPUS),) +MODULES += opus +endif +ifneq ($(USE_OSS),) +MODULES += oss +endif +ifneq ($(USE_PLC),) +MODULES += plc +endif +ifneq ($(USE_PORTAUDIO),) +MODULES += portaudio +endif +ifneq ($(USE_SDL),) +MODULES += sdl +endif +ifneq ($(USE_SDL2),) +MODULES += sdl2 +endif +ifneq ($(USE_SILK),) +MODULES += silk +endif +ifneq ($(USE_SNDFILE),) +MODULES += sndfile +endif +ifneq ($(USE_SPEEX),) +MODULES += speex +endif +ifneq ($(USE_SPEEX_AEC),) +MODULES += speex_aec +endif +ifneq ($(USE_SPEEX_PP),) +MODULES += speex_pp +endif +ifneq ($(USE_SRTP),) +MODULES += srtp +ifneq ($(USE_DTLS_SRTP),) +MODULES += dtls_srtp +endif +endif +ifneq ($(USE_STDIO),) +MODULES += stdio +endif +ifneq ($(USE_SYSLOG),) +MODULES += syslog +endif +ifneq ($(USE_UUID),) +MODULES += uuid +endif +ifneq ($(USE_V4L),) +MODULES += v4l +endif +ifneq ($(USE_V4L2),) +MODULES += v4l2 +endif +ifneq ($(USE_VPX),) +MODULES += vpx +endif +ifneq ($(USE_WINWAVE),) +MODULES += winwave +endif +ifneq ($(USE_X11),) +MODULES += x11 x11grab +endif diff --git a/mk/symbian/baresip.mmp b/mk/symbian/baresip.mmp new file mode 100644 index 0000000..888ae0c --- /dev/null +++ b/mk/symbian/baresip.mmp @@ -0,0 +1,87 @@ +/** + * @file baresip.mmp Symbian makefile for baresip application + * + * Copyright (C) 2010 Creytiv.com + */ +TARGET baresip.exe +TARGETTYPE exe +UID 0x100039CE 0x20011300 + +#ifdef EKA2 +VENDORID 0 +CAPABILITY NetworkServices + +SOURCEPATH . +START RESOURCE baresip_reg.rss +#ifdef WINSCW +TARGETPATH \private\10003a3f\apps +#else +TARGETPATH \private\10003a3f\import\apps +#endif +END +#endif + +MACRO HAVE_PWD_H +MACRO HAVE_UNISTD_H +//MACRO USE_VIDEO + +SOURCEPATH ..\..\src +SOURCE aucodec.c +SOURCE audio.c +SOURCE aufilt.c +SOURCE auplay.c +SOURCE ausrc.c +SOURCE bfcp.c +SOURCE call.c +SOURCE cmd.c +SOURCE conf.c +SOURCE contact.c +SOURCE main.c +SOURCE mctrl.c +SOURCE menc.c +SOURCE mnat.c +SOURCE module.c +SOURCE net.c +SOURCE play.c +SOURCE reg.c +SOURCE rtpkeep.c +SOURCE sdp.c +SOURCE sipreq.c +SOURCE stream.c +SOURCE ua.c +SOURCE ui.c +SOURCE vidcodec.c +SOURCE vidfilt.c + +/* Static modules */ +MACRO STATIC + +SOURCEPATH . +SOURCE static.c + +SOURCEPATH ..\..\modules\cons +SOURCE cons.c + +SOURCEPATH ..\..\modules\g711 +SOURCE g711.c + +SOURCEPATH ..\..\modules\mda +SOURCE mda.c player.cpp recorder.cpp util.cpp +LIBRARY mediaclientaudiostream.lib mediaclientaudioinputstream.lib + +#ifdef EKA2 +SOURCEPATH . +SOURCE ecrt.cpp +#endif + +SYSTEMINCLUDE . ..\..\include +SYSTEMINCLUDE \epoc32\include \epoc32\include\libc \epoc32\include\re +SYSTEMINCLUDE \epoc32\include\rem +LIBRARY estlib.lib euser.lib +LIBRARY esock.lib insock.lib +STATICLIBRARY resdp.lib resipsess.lib resip.lib restun.lib redns.lib re.lib +STATICLIBRARY resipevent.lib rebfcp.lib rem.lib +#ifndef EKA2 +STATICLIBRARY ecrt0.lib +STATICLIBRARY libgcc.a +#endif diff --git a/mk/symbian/baresip_gcce.pkg b/mk/symbian/baresip_gcce.pkg new file mode 100644 index 0000000..f4e47e6 --- /dev/null +++ b/mk/symbian/baresip_gcce.pkg @@ -0,0 +1,24 @@ +; baresip_gcce.pkg +; +;Language - standard language definitions +&EN + +; standard SIS file header +#{"baresip"},(0x20011300),1,0,0 + +;Localised Vendor name +%{"Creytiv.com"} + +;Unique Vendor name +:"Creytiv.com" + +;Supports Series 60 v 3.0 +[0x101F7961], 0, 0, 0, {"S60ProductID"} + +;Files to install +"\epoc32\release\gcce\urel\baresip.exe" -"!:\sys\bin\baresip.exe" + +"\epoc32\data\z\private\10003a3f\import\apps\baresip_reg.rsc" -"!:\private\10003a3f\import\apps\baresip_reg.rsc" + +;required for application to be covered by backup/restore facility +;"backup_registration.xml" -"c:\private\A00001F4\backup_registration.xml" diff --git a/mk/symbian/baresip_reg.rss b/mk/symbian/baresip_reg.rss new file mode 100644 index 0000000..58f91a3 --- /dev/null +++ b/mk/symbian/baresip_reg.rss @@ -0,0 +1,16 @@ +/* + * baresip_reg.rss + */ + +#include + +UID2 KUidAppRegistrationResourceFile +UID3 0x20011300 + +RESOURCE APP_REGISTRATION_INFO + { + app_file="baresip"; + + embeddability=KAppNotEmbeddable; + newfile=KAppDoesNotSupportNewFile; + } diff --git a/mk/symbian/baresip_thumb.pkg b/mk/symbian/baresip_thumb.pkg new file mode 100644 index 0000000..a789a49 --- /dev/null +++ b/mk/symbian/baresip_thumb.pkg @@ -0,0 +1,14 @@ +; baresip_thumb.pkg +; +;Language - standard language definitions +&EN + +; standard SIS file header +#{"baresip"},(0x20011300),1,0,0 + +;Supports Series 80 v 2.0 +(0x101F8ED2), 0, 0, 0, {"Series80ProductID"} + +;Files to install +"\epoc32\release\thumb\urel\baresip.exe" +-"!:\system\apps\baresip\baresip.exe" diff --git a/mk/symbian/bld.inf b/mk/symbian/bld.inf new file mode 100644 index 0000000..e429de1 --- /dev/null +++ b/mk/symbian/bld.inf @@ -0,0 +1,12 @@ +/** + * @file bld.inf Symbian build information + * + * Copyright (C) 2010 Creytiv.com + */ + +PRJ_MMPFILES + +/* Application */ +baresip.mmp + +/* Modules */ diff --git a/mk/symbian/ecrt.cpp b/mk/symbian/ecrt.cpp new file mode 100644 index 0000000..7d5e5d6 --- /dev/null +++ b/mk/symbian/ecrt.cpp @@ -0,0 +1,31 @@ +/** + * @file ecrt.cpp ECRT wrapper for Symbian OS + * + * Copyright (C) 2010 Creytiv.com + */ +#include +#include +#include +#include +#include + +_LIT(KAppName, "baresip"); +extern "C" int main(int argc, char** argv); + + +TInt E32Main() +{ + __UHEAP_MARK; + CTrapCleanup* cleanup = CTrapCleanup::New(); + int ret = 0; + TRAPD(err, ret = main(0, NULL)); + if (err) + printf("main left with error %d\n", err); + if (ret) + printf("main returned %d\n", ret); + __ASSERT_ALWAYS(!err, User::Panic(KAppName, err)); + CloseSTDLIB(); + delete cleanup; + __UHEAP_MARKEND; + return err; +} diff --git a/mk/symbian/mod.cpp b/mk/symbian/mod.cpp new file mode 100644 index 0000000..0ccbe2d --- /dev/null +++ b/mk/symbian/mod.cpp @@ -0,0 +1,19 @@ +/** + * @file mod.cpp Module wrapper for Symbian OS + * + * Copyright (C) 2010 Creytiv.com + */ +#include +#include +#include +#include + +extern "C" { + extern const struct mod_export exports; +} + + +EXPORT_C void *NewModule() +{ + return (void *)&exports; +} diff --git a/mk/symbian/static.c b/mk/symbian/static.c new file mode 100644 index 0000000..8ada5a1 --- /dev/null +++ b/mk/symbian/static.c @@ -0,0 +1,14 @@ +/* static.c - manually updated */ +#include +#include + +extern const struct mod_export exports_cons; +extern const struct mod_export exports_g711; +extern const struct mod_export exports_mda; + +const struct mod_export *mod_table[] = { + &exports_cons, + &exports_g711, + &exports_mda, + NULL +}; diff --git a/mk/win32/baresip.vcproj b/mk/win32/baresip.vcproj new file mode 100644 index 0000000..70095bc --- /dev/null +++ b/mk/win32/baresip.vcproj @@ -0,0 +1,259 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mk/win32/static.c b/mk/win32/static.c new file mode 100644 index 0000000..9fd143e --- /dev/null +++ b/mk/win32/static.c @@ -0,0 +1,14 @@ +/* static.c - manually updated */ +#include +#include + +extern const struct mod_export exports_cons; +extern const struct mod_export exports_g711; +extern const struct mod_export exports_winwave; + +const struct mod_export *mod_table[] = { + &exports_cons, + &exports_g711, + &exports_winwave, + NULL +}; -- cgit v1.2.3