From 8f3a2358da203ec1f7adf25bff5dec1d088a58ea Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Sat, 20 Aug 2011 15:59:20 +0200 Subject: [PATCH 01/18] update .gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 378eac25d..dd07bff2c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -build +build-* From 41746d7ce3f1fed45654f8dad68bf9bdd90460e2 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Mon, 22 Aug 2011 10:42:58 +0200 Subject: [PATCH 02/18] Update dependency on linphone. --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index f7bb65c20..b4219a114 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit f7bb65c20e8809708b74ab73658a9ea1e154c8f0 +Subproject commit b4219a114e00932b6d887e9448868e88a708da4c From f1661c80b901b82824904c8acd3b2c70ec7505c4 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Thu, 25 Aug 2011 15:47:32 +0200 Subject: [PATCH 03/18] update linphone to fix compilation issue --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index b4219a114..e933e1eae 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit b4219a114e00932b6d887e9448868e88a708da4c +Subproject commit e933e1eae12b7f533ce354e11c234b899e2576cf From 63745b55fdb92c7f7439458975b16b628b8aecd7 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Fri, 26 Aug 2011 18:41:46 +0200 Subject: [PATCH 04/18] Compilation chain for ZRTP (no implementation) --- .gitmodules | 3 ++ Classes/LinphoneUI/LinphoneManager.m | 4 ++- linphone.xcodeproj/project.pbxproj | 27 ++++++++++++++- submodules/build/Makefile | 6 ++-- submodules/build/builder-iphone-os.mk | 36 +++++++++++++++----- submodules/build/builders.d/srtp.mk | 30 ++++++++++++++++ submodules/build/builders.d/zrtp.mk | 22 ++++++++++++ submodules/build/iphone-config.site | 24 +++++++++++-- submodules/build/iphone-toolchain.cmake | 13 +++++++ submodules/build/iphone-toolchain.cmake.i386 | 13 +++++++ submodules/externals/zrtpcpp | 1 + submodules/linphone | 2 +- 12 files changed, 164 insertions(+), 17 deletions(-) create mode 100644 submodules/build/builders.d/srtp.mk create mode 100644 submodules/build/builders.d/zrtp.mk create mode 100644 submodules/build/iphone-toolchain.cmake create mode 100644 submodules/build/iphone-toolchain.cmake.i386 create mode 160000 submodules/externals/zrtpcpp diff --git a/.gitmodules b/.gitmodules index adcac5915..3bff82fba 100644 --- a/.gitmodules +++ b/.gitmodules @@ -25,3 +25,6 @@ [submodule "submodules/msamr"] path = submodules/msamr url = git://git.linphone.org/msamr.git +[submodule "submodules/externals/zrtpcpp"] + path = submodules/externals/zrtpcpp + url = git://github.com/wernerd/ZRTPCPP.git diff --git a/Classes/LinphoneUI/LinphoneManager.m b/Classes/LinphoneUI/LinphoneManager.m index 84beb8fd5..71f617f7c 100644 --- a/Classes/LinphoneUI/LinphoneManager.m +++ b/Classes/LinphoneUI/LinphoneManager.m @@ -644,6 +644,7 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach NSString* factoryConfig = [myBundle pathForResource:@"linphonerc"ofType:nil] ; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *confiFileName = [[paths objectAtIndex:0] stringByAppendingString:@"/.linphonerc"]; + NSString *zrtpSecretsFileName = [[paths objectAtIndex:0] stringByAppendingString:@"/zrtp_secrets"]; connectivity=none; signal(SIGPIPE, SIG_IGN); //log management @@ -670,7 +671,8 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach ,self); [[NSUserDefaults standardUserDefaults] synchronize];//sync before loading config - + + linphone_core_set_zrtp_secrets_file(theLinphoneCore, [zrtpSecretsFileName cStringUsingEncoding:[NSString defaultCStringEncoding]]); proxyReachability=SCNetworkReachabilityCreateWithName(nil, "linphone.org"); proxyReachabilityContext.info=self; diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 5f286dc81..d7695a040 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -85,6 +85,8 @@ 22F51EF6107FA66500F98953 /* untitled.plist in Resources */ = {isa = PBXBuildFile; fileRef = 22F51EF5107FA66500F98953 /* untitled.plist */; }; 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; 70571E1A13FABCB000CDD3C2 /* rootca.pem in Resources */ = {isa = PBXBuildFile; fileRef = 70571E1913FABCB000CDD3C2 /* rootca.pem */; }; + F0A486D91404FE53009EC0BE /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F0A486D71404FE53009EC0BE /* libsrtp.a */; }; + F0A486DA1404FE53009EC0BE /* libzrtpcpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F0A486D81404FE53009EC0BE /* libzrtpcpp.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -393,10 +395,13 @@ 22F254801073D99800AC9B3F /* ringback.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = ringback.wav; path = "liblinphone-sdk/apple-darwin/share/sounds/linphone/ringback.wav"; sourceTree = ""; }; 22F51EF5107FA66500F98953 /* untitled.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = untitled.plist; sourceTree = ""; }; 288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; - 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; path = main.m; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* linphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = linphone_Prefix.pch; sourceTree = ""; }; 70571E1913FABCB000CDD3C2 /* rootca.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = rootca.pem; path = Resources/rootca.pem; sourceTree = ""; }; 8D1107310486CEB800E47090 /* linphone-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "linphone-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; + F0A486D71404FE53009EC0BE /* libsrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsrtp.a; path = "liblinphone-sdk/apple-darwin/lib/libsrtp.a"; sourceTree = ""; }; + F0A486D81404FE53009EC0BE /* libzrtpcpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libzrtpcpp.a; path = "liblinphone-sdk/apple-darwin/lib/libzrtpcpp.a"; sourceTree = ""; }; + F0A486DB14050008009EC0BE /* libstdc++.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libstdc++.dylib"; path = "usr/lib/gcc/arm-apple-darwin10/4.0.1/libstdc++.dylib"; sourceTree = SDKROOT; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -429,6 +434,8 @@ 226F2ED61344B0EF00F6EF27 /* libopencore-amrwb.a in Frameworks */, 226F2ED71344B0EF00F6EF27 /* libopencore-amrnb.a in Frameworks */, 226F2ED81344B0EF00F6EF27 /* libmsamr.a in Frameworks */, + F0A486D91404FE53009EC0BE /* libsrtp.a in Frameworks */, + F0A486DA1404FE53009EC0BE /* libzrtpcpp.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -784,6 +791,9 @@ 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { isa = PBXGroup; children = ( + F0A486DB14050008009EC0BE /* libstdc++.dylib */, + F0A486D71404FE53009EC0BE /* libsrtp.a */, + F0A486D81404FE53009EC0BE /* libzrtpcpp.a */, 2214783B1386A2030020F8B8 /* Localizable.strings */, 22A10D9E11F88C1F00373793 /* liblinphone.xcodeproj */, 223148E51178A09900637D6A /* libmsilbc.a */, @@ -1042,6 +1052,9 @@ submodules/externals/osip/include, submodules/externals/exosip/include, submodules/externals/speex/include, + submodules/externals/srtp/include, + submodules/externals/srtp/crypto/include, + submodules/externals/zrtpcpp/src, ); INFOPLIST_FILE = "linphone-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; @@ -1055,6 +1068,8 @@ linphone, "-l", mediastreamer, + "-l", + srtp, ); PRODUCT_NAME = linphone; "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; @@ -1104,6 +1119,9 @@ submodules/externals/osip/include, submodules/externals/exosip/include, submodules/externals/speex/include, + submodules/externals/srtp/include, + submodules/externals/srtp/crypto/include, + submodules/externals/zrtpcpp/src, ); INFOPLIST_FILE = "linphone-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; @@ -1117,6 +1135,8 @@ linphone, "-l", mediastreamer, + "-l", + srtp, ); PRODUCT_NAME = linphone; "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; @@ -1166,6 +1186,9 @@ submodules/externals/osip/include, submodules/externals/exosip/include, submodules/externals/speex/include, + submodules/externals/srtp/include, + submodules/externals/srtp/crypto/include, + submodules/externals/zrtpcpp/src, ); INFOPLIST_FILE = "linphone-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; @@ -1179,6 +1202,8 @@ linphone, "-l", mediastreamer, + "-l", + srtp, ); PRODUCT_NAME = linphone; "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; diff --git a/submodules/build/Makefile b/submodules/build/Makefile index 9c2e11552..ee0e90abe 100644 --- a/submodules/build/Makefile +++ b/submodules/build/Makefile @@ -20,9 +20,9 @@ # ############################################################################ all: - make -f builder-iphone-simulator.mk all \ - && make -f builder-iphone-os.mk all \ - && make -f builder-iphone-os.mk host=armv7-apple-darwin all \ + make -f builder-iphone-os.mk all \ + && make -f builder-iphone-simulator.mk tc_proc=.i386 all \ + && make -f builder-iphone-os.mk host=armv7-apple-darwin all \ && make -f builder-iphone-os.mk delivery-sdk clean: make -f builder-iphone-simulator.mk clean \ diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 0d65d3620..94bf1db18 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -21,6 +21,7 @@ ############################################################################ host?=armv6-apple-darwin +enable_zrtp=no config_site:=iphone-config.site library_mode:= --disable-shared --enable-static linphone_configure_controls= --disable-video \ @@ -28,18 +29,25 @@ linphone_configure_controls= --disable-video \ --disable-nls \ --with-readline=none \ --enable-gtk_ui=no \ + --enable-console_ui=no \ --enable-ssl-hmac=no \ --enable-ssl=yes \ --enable-macaqsnd=no \ --enable-macsnd=no \ --enable-iounit=yes \ --with-gsm=$(prefix) \ + LIBZRTPCPP_CFLAGS="-I$(prefix)/include" \ + LIBZRTPCPP_LIBS="-L$(prefix)/lib -lzrtpcpp -lcrypto" \ SPEEX_CFLAGS="-I$(prefix)/include" \ SPEEXDSP_CFLAGS="-I$(prefix)/include" \ SPEEXDSP_LIBS="-L$(prefix)/lib -lspeexdsp" \ SPEEX_LIBS="-L$(prefix)/lib -lspeexdsp -lspeex " \ OPENSSL_CFLAGS="-I$(prefix)/include" \ OPENSSL_LIBS="-L$(prefix)/lib -lssl -lcrypto" +#ifeq ($(enable_zrtp),"yes") + linphone_configure_controls+= --with-srtp=$(prefix) --enable-zrtp=yes --disable-tests +#endif + #path BUILDER_SRC_DIR?=$(shell pwd)/../ @@ -56,6 +64,10 @@ speex_dir?=externals/speex gsm_dir?=externals/gsm +srtp_dir?=externals/srtp + +zrtpcpp_dir?=externals/zrtpcpp + MSILBC_SRC_DIR:=$(BUILDER_SRC_DIR)/msilbc MSILBC_BUILD_DIR:=$(BUILDER_BUILD_DIR)/msilbc @@ -82,25 +94,28 @@ init: veryclean: veryclean-linphone rm -rf $(BUILDER_BUILD_DIR) -.NOTPARALLEL build-linphone: init build-openssl build-osip2 build-eXosip2 build-speex build-libgsm $(LINPHONE_BUILD_DIR)/Makefile +.NOTPARALLEL build-linphone: init build-openssl build-srtp build-zrtpcpp build-osip2 build-eXosip2 build-speex build-libgsm $(LINPHONE_BUILD_DIR)/Makefile cd $(LINPHONE_BUILD_DIR) && export PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig export CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make newdate && make && make install -clean-linphone: clean-osip2 clean-eXosip2 clean-speex clean-libgsm clean-msilbc clean-libilbc clean-openssl clean-msamr +clean-linphone: clean-osip2 clean-eXosip2 clean-speex clean-libgsm clean-srtp clean-zrtpcpp clean-msilbc clean-libilbc clean-openssl clean-msamr cd $(LINPHONE_BUILD_DIR) && make clean -veryclean-linphone: veryclean-osip2 veryclean-eXosip2 veryclean-speex veryclean-libgsm veryclean-msilbc veryclean-libilbc veryclean-openssl veryclean-msamr +veryclean-linphone: veryclean-osip2 veryclean-eXosip2 veryclean-speex veryclean-srtp veryclean-libgsm veryclean-msilbc veryclean-libilbc veryclean-openssl veryclean-msamr #-cd $(LINPHONE_BUILD_DIR) && make distclean -cd $(LINPHONE_SRC_DIR) && rm -f configure -clean-makefile-linphone: clean-makefile-osip2 clean-makefile-eXosip2 clean-makefile-speex clean-makefile-libilbc clean-makefile-msilbc clean-makefile-openssl clean-makefile-msamr +clean-makefile-linphone: clean-makefile-osip2 clean-makefile-eXosip2 clean-makefile-speex clean-makefile-srtp clean-makefile-zrtpcpp clean-makefile-libilbc clean-makefile-msilbc clean-makefile-openssl clean-makefile-msamr cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile -$(LINPHONE_SRC_DIR)/configure: +$(LINPHONE_SRC_DIR)/configure: build-srtp cd $(LINPHONE_SRC_DIR) && ./autogen.sh $(LINPHONE_BUILD_DIR)/Makefile: $(LINPHONE_SRC_DIR)/configure mkdir -p $(LINPHONE_BUILD_DIR) + echo -e "\033[1mPKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + $(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ + ${linphone_configure_controls}\033[0m" cd $(LINPHONE_BUILD_DIR) && \ PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ $(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \ @@ -177,18 +192,19 @@ $(BUILDER_BUILD_DIR)/$(speex_dir)/Makefile: $(BUILDER_SRC_DIR)/$(speex_dir)/conf $(BUILDER_SRC_DIR)/$(speex_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} --disable-oggtest $(SPEEX_CONFIGURE_OPTION) build-speex: $(BUILDER_BUILD_DIR)/$(speex_dir)/Makefile - cd $(BUILDER_BUILD_DIR)/$(speex_dir)/libspeex && make && make install - cd $(BUILDER_BUILD_DIR)/$(speex_dir)/include && make && make install + cd $(BUILDER_BUILD_DIR)/$(speex_dir)/libspeex && make && make install + cd $(BUILDER_BUILD_DIR)/$(speex_dir)/include && make && make install clean-speex: - cd $(BUILDER_BUILD_DIR)/$(speex_dir) && make clean + cd $(BUILDER_BUILD_DIR)/$(speex_dir) && make clean veryclean-speex: # -cd $(BUILDER_BUILD_DIR)/$(speex_dir) && make distclean -rm -f $(BUILDER_SRC_DIR)/$(speex_dir)/configure clean-makefile-speex: - cd $(BUILDER_BUILD_DIR)/$(speex_dir) && rm -f Makefile + cd $(BUILDER_BUILD_DIR)/$(speex_dir) && rm -f Makefile + #GSM @@ -260,6 +276,8 @@ clean-makefile-libilbc: cd $(LIBILBC_BUILD_DIR) && rm -f Makefile #openssl +#srtp +#zrtp include builders.d/*.mk #sdk generation and distribution diff --git a/submodules/build/builders.d/srtp.mk b/submodules/build/builders.d/srtp.mk new file mode 100644 index 000000000..823892ce5 --- /dev/null +++ b/submodules/build/builders.d/srtp.mk @@ -0,0 +1,30 @@ +srtp_version?="1.4.2" +srtp_url?="http://srtp.sourceforge.net/srtp-$(srtp_version).tgz" + + +$(BUILDER_SRC_DIR)/$(srtp_dir)/configure: + cd $(BUILDER_SRC_DIR)/externals \ + && wget $(stp_url) \ + && tar zxvf srtp-$(srtp_version).tgz + +$(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/configure + mkdir -p $(BUILDER_BUILD_DIR)/$(srtp_dir) + cd $(BUILDER_BUILD_DIR)/$(srtp_dir)/\ + && CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \ + $(BUILDER_SRC_DIR)/$(srtp_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} + +build-srtp: $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile + cp -rf $(BUILDER_SRC_DIR)/$(srtp_dir)/include $(BUILDER_BUILD_DIR)/$(srtp_dir) + cp -rf $(BUILDER_SRC_DIR)/$(srtp_dir)/crypto/include $(BUILDER_BUILD_DIR)/$(srtp_dir) + -cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make uninstall + cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make libsrtp.a && make install + +clean-srtp: + cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make clean + +veryclean-srtp: + -cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make distclean + +clean-makefile-srtp: + cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && rm -f Makefile + diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk new file mode 100644 index 000000000..68912425b --- /dev/null +++ b/submodules/build/builders.d/zrtp.mk @@ -0,0 +1,22 @@ +#I coudn't manage to crosscompile using only -D arguments to cmake +#Thus the use of a toolchain file. +TC = -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake$(tc_proc) +$(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: + mkdir -p $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) + cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\ + && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ + && cmake $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) -Denable-ccrtp=false $(TC) -LH -Wdev -DCMAKE_INSTALL_PREFIX=$(prefix) -DCMAKE_FIND_ROOT_PATH="$(prefix)" +# Used toolchain: $(TC) + +build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile build-openssl + echo "Build ZRTP - prefix $(prefix)" + cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make && make install + +clean-zrtpcpp: + -cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make clean + +clean-makefile-zrtpcpp: clean-zrtpcpp + -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile + -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/CMakeCache.txt + + diff --git a/submodules/build/iphone-config.site b/submodules/build/iphone-config.site index fb13cfd87..039fa76b7 100644 --- a/submodules/build/iphone-config.site +++ b/submodules/build/iphone-config.site @@ -7,12 +7,15 @@ SDK_VERSION=4.0 if test "${host_alias}" = "i386-apple-darwin" ; then PLATFORM=Simulator ARCH=i386 + CMAKE_OPTS="-DCMAKE_SYSTEM_PROCESSOR=i386" elif test "${host_alias}" = "armv6-apple-darwin" ; then ARCH=armv6 PLATFORM=OS + CMAKE_OPTS="-DCMAKE_SYSTEM_PROCESSOR=arm" elif test "${host_alias}" = "armv7-apple-darwin" ; then ARCH=armv7 PLATFORM=OS + CMAKE_OPTS="-DCMAKE_SYSTEM_PROCESSOR=arm" else echo "bad host ${host_alias} must be either i386-apple-darwin or armv6-apple-darwin" exit @@ -23,11 +26,28 @@ SDK_PATH_LIST=`ls -drt /Developer/Platforms/iPhone${PLATFORM}.platform/Developer SDK_BIN_PATH=/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin for SYSROOT_PATH in $SDK_PATH_LIST ; do echo $SYSROOT_PATH ; done ; echo "Selecting SDK path = ${SYSROOT_PATH}" -CC="${SDK_BIN_PATH}/gcc-${GCC_VERSION} -std=c99 -arch ${ARCH} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE" -CXX="${SDK_BIN_PATH}/g++-${GCC_VERSION} -arch ${ARCH} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE" +COMMON_FLAGS=" -arch ${ARCH} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE" +CC="${SDK_BIN_PATH}/gcc-${GCC_VERSION} -std=c99 $COMMON_FLAGS" +CXX="${SDK_BIN_PATH}/g++-${GCC_VERSION} $COMMON_FLAGS" LD="${SDK_BIN_PATH}/ld-${GCC_VERSION} -arch ${ARCH}" AR=${SDK_BIN_PATH}/ar RANLIB=${SDK_BIN_PATH}/ranlib CPPFLAGS="-Dasm=__asm" LDFLAGS="-Wl,-syslibroot,${SYSROOT_PATH} -framework CFNetwork" + +export CC CXX LD CFLAGS="${COMMON_FLAGS} ${CFLAGS}" CXXFLAGS="${COMMON_FLAG} ${CPPFLAGS}" CPPFLAGS="${COMMON_FLAG} ${CPPFLAGS}" LDFLAGS="${LDFLAGS} ${COMMON_FLAGS}" + +# CMAKE options (not working right now so information duplicated in .cmake toolchains). +DEVROOT=/Developer/Platforms/iPhoneOS.platform/Developer +SDKVER=4.3 +export CMAKE_OPTS="${CMAKE_OPTS} \ + -DCMAKE_SYSTEM_NAME=Generic \ + -DSDKVER=${SDKVER} \ + -DDEVROOT=${DEVROOT} \ + -DSDKROOT=${DEVROOT}/SDKs/iPhoneOS${SDKVER}.sdk \ + -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \ + -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \ + -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \ + " + diff --git a/submodules/build/iphone-toolchain.cmake b/submodules/build/iphone-toolchain.cmake new file mode 100644 index 000000000..7f46ad8bb --- /dev/null +++ b/submodules/build/iphone-toolchain.cmake @@ -0,0 +1,13 @@ +SET (CMAKE_SYSTEM_NAME "Generic") +SET (CMAKE_SYSTEM_PROCESSOR "arm") + +SET (SDKVER "4.3") +SET (DEVROOT "/Developer/Platforms/iPhoneOS.platform/Developer") +SET (SDKROOT "${DEVROOT}/SDKs/iPhoneOS${SDKVER}.sdk") + +SET (CMAKE_FIND_ROOT_PATH "${CMAKE_INSTALL_PREFIX}" "${SDKROOT}" "${DEVROOT}") +SET (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +SET (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +SET (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + + diff --git a/submodules/build/iphone-toolchain.cmake.i386 b/submodules/build/iphone-toolchain.cmake.i386 new file mode 100644 index 000000000..0c7c1a5e5 --- /dev/null +++ b/submodules/build/iphone-toolchain.cmake.i386 @@ -0,0 +1,13 @@ +SET (CMAKE_SYSTEM_NAME "Generic") +SET (CMAKE_SYSTEM_PROCESSOR "i386") + +SET (SDKVER "4.3") +SET (DEVROOT "/Developer/Platforms/iPhoneOS.platform/Developer") +SET (SDKROOT "${DEVROOT}/SDKs/iPhoneOS${SDKVER}.sdk") + +SET (CMAKE_FIND_ROOT_PATH "${CMAKE_INSTALL_PREFIX}" "${SDKROOT}" "${DEVROOT}") +SET (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +SET (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +SET (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + + diff --git a/submodules/externals/zrtpcpp b/submodules/externals/zrtpcpp new file mode 160000 index 000000000..3cbbcf29f --- /dev/null +++ b/submodules/externals/zrtpcpp @@ -0,0 +1 @@ +Subproject commit 3cbbcf29f707adaaa00958c6e2c321e79a7b8e83 diff --git a/submodules/linphone b/submodules/linphone index e933e1eae..20709fc5f 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit e933e1eae12b7f533ce354e11c234b899e2576cf +Subproject commit 20709fc5f1b06c04f2311e1f6ec4ff45f76f4de8 From de7f71a1cebc4ffef04f35d99023046219c89ac3 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Mon, 29 Aug 2011 09:11:36 +0200 Subject: [PATCH 05/18] Fix build --- submodules/build/builder-iphone-os.mk | 4 ++-- submodules/build/builders.d/srtp.mk | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 94bf1db18..47516d4e0 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -44,9 +44,9 @@ linphone_configure_controls= --disable-video \ SPEEX_LIBS="-L$(prefix)/lib -lspeexdsp -lspeex " \ OPENSSL_CFLAGS="-I$(prefix)/include" \ OPENSSL_LIBS="-L$(prefix)/lib -lssl -lcrypto" -#ifeq ($(enable_zrtp),"yes") +ifeq ($(enable_zrtp),yes) linphone_configure_controls+= --with-srtp=$(prefix) --enable-zrtp=yes --disable-tests -#endif +endif #path diff --git a/submodules/build/builders.d/srtp.mk b/submodules/build/builders.d/srtp.mk index 823892ce5..05b1b545e 100644 --- a/submodules/build/builders.d/srtp.mk +++ b/submodules/build/builders.d/srtp.mk @@ -1,10 +1,10 @@ -srtp_version?="1.4.2" -srtp_url?="http://srtp.sourceforge.net/srtp-$(srtp_version).tgz" +srtp_version?=1.4.2 +srtp_url?=http://srtp.sourceforge.net/srtp-$(srtp_version).tgz $(BUILDER_SRC_DIR)/$(srtp_dir)/configure: cd $(BUILDER_SRC_DIR)/externals \ - && wget $(stp_url) \ + && wget $(srtp_url) \ && tar zxvf srtp-$(srtp_version).tgz $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/configure From bbdd908e4afaaa3e0a644f7634a4c8524402f272 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 1 Sep 2011 11:16:38 +0200 Subject: [PATCH 06/18] Don't compile ZRTPCPP when zrtp is disabled. --- submodules/build/builders.d/zrtp.mk | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk index 68912425b..49088d1a4 100644 --- a/submodules/build/builders.d/zrtp.mk +++ b/submodules/build/builders.d/zrtp.mk @@ -8,10 +8,17 @@ $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: && cmake $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) -Denable-ccrtp=false $(TC) -LH -Wdev -DCMAKE_INSTALL_PREFIX=$(prefix) -DCMAKE_FIND_ROOT_PATH="$(prefix)" # Used toolchain: $(TC) +ifeq ($(enable_zrtp),yes) + build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile build-openssl echo "Build ZRTP - prefix $(prefix)" cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make && make install +else +build-zrtpcpp: + echo "Build of zrtpcpp disabled" +endif + clean-zrtpcpp: -cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make clean @@ -20,3 +27,5 @@ clean-makefile-zrtpcpp: clean-zrtpcpp -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/CMakeCache.txt + + From 8ee087fac01b36dd6643997e5d756336be88a61e Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 1 Sep 2011 11:17:25 +0200 Subject: [PATCH 07/18] Fix ilbc compilation. (server moved) --- submodules/libilbc-rfc3951 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/libilbc-rfc3951 b/submodules/libilbc-rfc3951 index 8af11e23e..5b6ac8974 160000 --- a/submodules/libilbc-rfc3951 +++ b/submodules/libilbc-rfc3951 @@ -1 +1 @@ -Subproject commit 8af11e23e482c98a40e5661c16974b297a0d0396 +Subproject commit 5b6ac8974d1a5f8059b964b329c565d4afe06358 From c288f87bfb542936d7ca1b417fe3cd6aae9993e5 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Tue, 6 Sep 2011 14:51:14 +0200 Subject: [PATCH 08/18] Patches for srtp and zrtp. --- submodules/build/builder-iphone-os.mk | 5 +- submodules/build/builders.d/openssl.mk | 2 +- .../build/{ => builders.d}/openssl.patch | 0 submodules/build/builders.d/srtp.mk | 5 +- submodules/build/builders.d/srtp.patch | 77 ++++++++ submodules/build/builders.d/zrtp.mk | 3 +- .../build/builders.d/zrtpcpp.CMakeLists.txt | 169 ++++++++++++++++++ 7 files changed, 255 insertions(+), 6 deletions(-) rename submodules/build/{ => builders.d}/openssl.patch (100%) create mode 100644 submodules/build/builders.d/srtp.patch create mode 100755 submodules/build/builders.d/zrtpcpp.CMakeLists.txt diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 47516d4e0..619e211d8 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -21,7 +21,7 @@ ############################################################################ host?=armv6-apple-darwin -enable_zrtp=no +enable_zrtp=yes config_site:=iphone-config.site library_mode:= --disable-shared --enable-static linphone_configure_controls= --disable-video \ @@ -38,6 +38,7 @@ linphone_configure_controls= --disable-video \ --with-gsm=$(prefix) \ LIBZRTPCPP_CFLAGS="-I$(prefix)/include" \ LIBZRTPCPP_LIBS="-L$(prefix)/lib -lzrtpcpp -lcrypto" \ + SRTP_LIBS="-L$(prefix)/lib -lsrtp -lcrypto" \ SPEEX_CFLAGS="-I$(prefix)/include" \ SPEEXDSP_CFLAGS="-I$(prefix)/include" \ SPEEXDSP_LIBS="-L$(prefix)/lib -lspeexdsp" \ @@ -108,7 +109,7 @@ clean-makefile-linphone: clean-makefile-osip2 clean-makefile-eXosip2 clean-makef cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile -$(LINPHONE_SRC_DIR)/configure: build-srtp +$(LINPHONE_SRC_DIR)/configure: cd $(LINPHONE_SRC_DIR) && ./autogen.sh $(LINPHONE_BUILD_DIR)/Makefile: $(LINPHONE_SRC_DIR)/configure diff --git a/submodules/build/builders.d/openssl.mk b/submodules/build/builders.d/openssl.mk index 54a2b517e..0b2e5bf80 100644 --- a/submodules/build/builders.d/openssl.mk +++ b/submodules/build/builders.d/openssl.mk @@ -14,7 +14,7 @@ $(OPENSSL_BUILD_DIR)/Configure: && tar xvzf openssl-$(openssl_version).tar.gz \ && rm -f openssl-$(openssl_version).tar.gz \ && mv openssl-$(openssl_version) openssl \ - && cd openssl && patch -p0 < $(BUILDER_SRC_DIR)/build/openssl.patch + && cd openssl && patch -p0 < $(BUILDER_SRC_DIR)/build/builders.d/openssl.patch $(OPENSSL_BUILD_DIR)/Makefile: $(OPENSSL_BUILD_DIR)/Configure cd $(OPENSSL_BUILD_DIR) \ diff --git a/submodules/build/openssl.patch b/submodules/build/builders.d/openssl.patch similarity index 100% rename from submodules/build/openssl.patch rename to submodules/build/builders.d/openssl.patch diff --git a/submodules/build/builders.d/srtp.mk b/submodules/build/builders.d/srtp.mk index 05b1b545e..38cccdbd9 100644 --- a/submodules/build/builders.d/srtp.mk +++ b/submodules/build/builders.d/srtp.mk @@ -5,7 +5,8 @@ srtp_url?=http://srtp.sourceforge.net/srtp-$(srtp_version).tgz $(BUILDER_SRC_DIR)/$(srtp_dir)/configure: cd $(BUILDER_SRC_DIR)/externals \ && wget $(srtp_url) \ - && tar zxvf srtp-$(srtp_version).tgz + && tar zxvf srtp-$(srtp_version).tgz \ + && cd srtp && patch -p0 < $(BUILDER_SRC_DIR)/build/builders.d/srtp.patch $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/configure mkdir -p $(BUILDER_BUILD_DIR)/$(srtp_dir) @@ -16,7 +17,7 @@ $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/config build-srtp: $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile cp -rf $(BUILDER_SRC_DIR)/$(srtp_dir)/include $(BUILDER_BUILD_DIR)/$(srtp_dir) cp -rf $(BUILDER_SRC_DIR)/$(srtp_dir)/crypto/include $(BUILDER_BUILD_DIR)/$(srtp_dir) - -cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make uninstall + -cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make uninstall && make clean cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make libsrtp.a && make install clean-srtp: diff --git a/submodules/build/builders.d/srtp.patch b/submodules/build/builders.d/srtp.patch new file mode 100644 index 000000000..7dfe02e97 --- /dev/null +++ b/submodules/build/builders.d/srtp.patch @@ -0,0 +1,77 @@ +diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c +--- ../srtp_old/crypto/cipher/aes_icm.c 2011-09-06 10:09:18.000000000 +0200 ++++ ./crypto/cipher/aes_icm.c 2011-09-06 10:19:16.000000000 +0200 +@@ -281,7 +281,7 @@ aes_icm_set_iv(aes_icm_ctx_t *c, void *i + * this is an internal, hopefully inlined function + */ + +-inline void ++static void + aes_icm_advance_ismacryp(aes_icm_ctx_t *c, uint8_t forIsmacryp) { + /* fill buffer with new keystream */ + v128_copy(&c->keystream_buffer, &c->counter); +diff -rupN ../srtp_old/srtp.patch ./srtp.patch +--- ../srtp_old/srtp.patch 2011-09-06 10:14:26.000000000 +0200 ++++ ./srtp.patch 2011-09-06 10:21:47.000000000 +0200 +@@ -1,50 +1,12 @@ +-diff -rupN ../srtp_old/crypto/cipher/aes.c ./crypto/cipher/aes.c +---- ../srtp_old/crypto/cipher/aes.c 2011-09-06 10:09:18.000000000 +0200 +-+++ ./crypto/cipher/aes.c 2011-09-06 10:05:35.000000000 +0200 +-@@ -1358,7 +1358,7 @@ static uint32_t U4[256] = { +- +- extern debug_module_t mod_aes_icm; +- ++diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c ++--- ../srtp_old/crypto/cipher/aes_icm.c 2011-09-06 10:09:18.000000000 +0200 +++++ ./crypto/cipher/aes_icm.c 2011-09-06 10:19:16.000000000 +0200 ++@@ -281,7 +281,7 @@ aes_icm_set_iv(aes_icm_ctx_t *c, void *i ++ * this is an internal, hopefully inlined function ++ */ ++ + -inline void +-+void +- aes_expand_encryption_key(const v128_t *key, +- aes_expanded_key_t expanded_key) { +- int i; +-@@ -1411,7 +1411,7 @@ aes_expand_encryption_key(const v128_t * +- } +- } +- +--inline void +-+void +- aes_expand_decryption_key(const v128_t *key, +- aes_expanded_key_t expanded_key) { +- int i; +-diff -rupN ../srtp_old/crypto/include/aes.h ./crypto/include/aes.h +---- ../srtp_old/crypto/include/aes.h 2011-09-06 10:09:18.000000000 +0200 +-+++ ./crypto/include/aes.h 2011-09-06 10:03:53.000000000 +0200 +-@@ -55,11 +55,11 @@ +- +- typedef v128_t aes_expanded_key_t[11]; +- +--inline void +-+void +- aes_expand_encryption_key(const v128_t *key, +- aes_expanded_key_t expanded_key); +- +--inline void +-+void +- aes_expand_decryption_key(const v128_t *key, +- aes_expanded_key_t expanded_key); +- +-diff -rupN ../srtp_old/crypto/math/datatypes.c ./crypto/math/datatypes.c +---- ../srtp_old/crypto/math/datatypes.c 2011-09-06 10:09:18.000000000 +0200 +-+++ ./crypto/math/datatypes.c 2011-09-06 10:02:55.000000000 +0200 +-@@ -124,7 +124,7 @@ octet_string_hex_string(const void *s, i +- return bit_string; +- } +- +--inline int +-+static int +- hex_char_to_nibble(uint8_t c) { +- switch(c) { +- case ('0'): return 0x0; +++static void ++ aes_icm_advance_ismacryp(aes_icm_ctx_t *c, uint8_t forIsmacryp) { ++ /* fill buffer with new keystream */ ++ v128_copy(&c->keystream_buffer, &c->counter); diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk index 49088d1a4..2dcc70ccf 100644 --- a/submodules/build/builders.d/zrtp.mk +++ b/submodules/build/builders.d/zrtp.mk @@ -2,6 +2,7 @@ #Thus the use of a toolchain file. TC = -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake$(tc_proc) $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: + cp $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt mkdir -p $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\ && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ @@ -10,7 +11,7 @@ $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: ifeq ($(enable_zrtp),yes) -build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile build-openssl +build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile echo "Build ZRTP - prefix $(prefix)" cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make && make install diff --git a/submodules/build/builders.d/zrtpcpp.CMakeLists.txt b/submodules/build/builders.d/zrtpcpp.CMakeLists.txt new file mode 100755 index 000000000..4f20891f6 --- /dev/null +++ b/submodules/build/builders.d/zrtpcpp.CMakeLists.txt @@ -0,0 +1,169 @@ +# Copyright (C) 2009 Werner Dittman +# +# This file is free software; as a special exception the author gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +cmake_minimum_required(VERSION 2.6) + +PROJECT(libzrtpcpp) + +SET(CPACK_PACKAGE_VERSION_MAJOR 2) +SET(CPACK_PACKAGE_VERSION_MINOR 0) +SET(CPACK_PACKAGE_VERSION_PATCH 0) + +set (VERSION 2.0.0) +set (SOVERSION 2) +set (PACKAGE libzrtpcpp) + +if(MSVC60) + set(BUILD_STATIC ON CACHE BOOL "static linking only" FORCE) + MARK_AS_ADVANCED(BUILD_STATIC) +else() + option(BUILD_STATIC "Set to OFF to build shared libraries" ON) +endif() + +# set to true for debug and trace during CMakeLists development +set(CMAKE_VERBOSE_MAKEFILE FALSE) + +MESSAGE( STATUS "Configuring GNU ${PROJECT_NAME} ${VERSION}...") + +# include most of the fine stuff we need +include(cmake/Modules/FindGcryptConfig.cmake) +include(FindPkgConfig) +include(CheckLibraryExists) +include(CheckIncludeFiles) +include(cmake/Modules/AutoArgs.cmake) + +if(${PROJECT_NAME} STREQUAL ${CMAKE_PROJECT_NAME}) + include(cmake/Modules/GeneratePackage.cmake) + + GENERATE_PACKAGING(${PACKAGE} ${VERSION}) +endif() + +# check the -Denable-ccrtp setting, defaults to true +enable_arg(ccrtp true "Enable GNU ccRTP support for GNU ZRTP") +args_help() + +# this caused problems in debian where it has to always be lib.... +set(LIBDIRNAME "lib") +if (NOT EXISTS /etc/debian_version) + if ( "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64" ) + set(LIBDIRNAME "lib64") + endif() +endif() + +# setup the Thread include and lib +find_package(Threads) +if(CMAKE_HAVE_PTHREAD_H) + set(HAVE_PTHREAD_H TRUE) +endif() +set(LIBS ${LIBS} ${CMAKE_THREAD_LIBS_INIT}) + +if(enable_ccrtp) + if (USES_CCRTP_INCLUDE_DIRS) + message(STATUS " Using local commoncpp dependency") + else() + find_package(PkgConfig) + pkg_check_modules(USES_CCRTP libccrtp>=2.0.0) + endif() + include_directories(${USES_CCRTP_INCLUDE_DIRS}) + link_directories(${USES_CRTP_LIBRARY_DIRS}) + add_definitions(${USES_CCRTP_CFLAGS}) + set (LIBS ${LIBS} ${USES_CCRTP_LDFLAGS} ${USES_CCRTP_LIBRARIES}) +endif() + +if (CMAKE_CROSSCOMPILING) + include_directories(${CMAKE_INSTALL_PREFIX}/include) + link_directories(${CMAKE_INSTALL_PREFIX}/lib) + set(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES} ${CMAKE_INSTALL_PREFIX}/include") +## set(CMAKE_REQUIRED_LIBRARIES "${CMAKE_INSTALL_PREFIX}/lib/*") +endif() + + +# now get info about crypto libraries +gcr_check(GCRYPT gcrypt) +#if(GCRYPT_FOUND) +# check_include_files(gcrypt.h HAVE_GCRYPT_H) +# set(LIBS ${LIBS} ${GCRYPT_LIBRARIES}) +# set(BUILD_REQ "libgcrypt-devel") +# set(CRYPTOBACKEND="") +# set(PACKAGE_REQ "libgcrypt") +#else() + pkg_check_modules(OPENSSL libcrypto>=0.9.8) + if (OPENSSL_FOUND) + check_include_files(openssl/bn.h HAVE_OPENSSL_BN_H) + check_include_files(openssl/aes.h HAVE_OPENSSL_AES_H) + check_include_files(openssl/sha.h HAVE_OPENSSL_SHA_H) + set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -lcrypto") + check_library_exists(crypto EVP_CipherInit_ex "${CMAKE_INSTALL_PREFIX}/lib" HAVE_SSL_CRYPT) +# don't test HAVE_SSL_CRYPT_FOUND as it doesn't work + if (HAVE_OPENSSL_BN_H_FOUND) +# AND HAVE_OPENSSL_AES_H_FOUND AND HAVE_OPENSSL_SHA_H_FOUND)) + message(FATAL_ERROR "Openssl crypto library not found") + endif() + set(LIBS ${LIBS} -lcrypto) + set(CRYPTOBACKEND "libcrypto >= 0.9.8") + set(BUILD_REQ "libopenssl-devel >= 0.9.8") + set(PACKAGE_REQ "libopenssl >= 0.9.8") + else() + message(FATAL_ERROR "No crypto library found") + endif() +#endif() + +check_include_files(stdlib.h HAVE_STDLIB_H) +check_include_files(string.h HAVE_STRING_H) + +# necessary and required modules checked, ready to generate config.h +configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h) + +# the following set(...) commands are only to have backward +# compatibility with autoconf stuff to generate the pc file +set(prefix ${CMAKE_INSTALL_PREFIX}) +set(exec_prefix ${prefix}/bin) +set(libdir ${prefix}/lib) +set(includedir ${prefix}/include) +set(PACKAGE pkgconfig) +configure_file(libzrtpcpp.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libzrtpcpp.pc @ONLY) + +configure_file(libzrtpcpp.spec.cmake ${CMAKE_CURRENT_BINARY_DIR}/libzrtpcpp.spec @ONLY) + +include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/src) + +add_definitions(-g -O2 -fno-strict-aliasing) +if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-Wno-long-long -Wno-char-subscripts) + add_definitions(-Wall -ansi -pedantic) + add_definitions(-DNEW_STDCPP) +# add_definitions(-D__EXPORT=) +endif() + +add_subdirectory(src) + +if (enable_ccrtp) + add_subdirectory(demo) +endif() + +if (NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/package/) + MESSAGE(STATUS "package dir not found") + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/package/) +endif() + +########### install files ############### +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libzrtpcpp.pc DESTINATION ${LIBDIRNAME}/pkgconfig) + +if(${PROJECT_NAME} STREQUAL ${CMAKE_PROJECT_NAME}) + + ########### Add uninstall target ############### + configure_file( + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" + IMMEDIATE @ONLY) + add_custom_target(uninstall + "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") + +endif() From bfff840cb2cfc6c97f5b5b59943fd147dfeecfd0 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 7 Sep 2011 16:00:34 +0200 Subject: [PATCH 09/18] Bug fixes on iPhone 3G --- Classes/LinphoneUI/LinphoneManager.h | 1 + Classes/LinphoneUI/LinphoneManager.m | 31 ++++++++++++++++++++++----- linphone-Info.plist | 4 ++-- linphone.xcodeproj/project.pbxproj | 13 ++++++----- submodules/build/builder-iphone-os.mk | 1 - submodules/build/iphone-config.site | 7 ++++-- 6 files changed, 40 insertions(+), 17 deletions(-) diff --git a/Classes/LinphoneUI/LinphoneManager.h b/Classes/LinphoneUI/LinphoneManager.h index 2ba94ed2b..2ed3b0184 100644 --- a/Classes/LinphoneUI/LinphoneManager.h +++ b/Classes/LinphoneUI/LinphoneManager.h @@ -50,6 +50,7 @@ typedef enum _Connectivity { -(void) registerLogView:(id) view; -(void) startLibLinphone; +-(BOOL) isNotIphone3G; -(void) destroyLibLinphone; -(void) enterBackgroundMode; diff --git a/Classes/LinphoneUI/LinphoneManager.m b/Classes/LinphoneUI/LinphoneManager.m index 71f617f7c..5da9509be 100644 --- a/Classes/LinphoneUI/LinphoneManager.m +++ b/Classes/LinphoneUI/LinphoneManager.m @@ -26,6 +26,8 @@ #import #import #import "FastAddressBook.h" +#include + static LinphoneCore* theLinphoneCore=nil; static LinphoneManager* theLinphoneManager=nil; @@ -379,16 +381,17 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach if (linphone_core_get_sip_transports(theLinphoneCore, &transportValue)) { ms_error("cannot get current transport"); } + // Only one port can be set at one time, the others's value is 0 if ([transport isEqualToString:@"tcp"]) { - if (transportValue.tcp_port == 0) transportValue.tcp_port=transportValue.udp_port; + if (transportValue.tcp_port == 0) transportValue.tcp_port=transportValue.udp_port + transportValue.tls_port; transportValue.udp_port=0; transportValue.tls_port=0; } else if ([transport isEqualToString:@"udp"]){ - if (transportValue.udp_port == 0) transportValue.udp_port=transportValue.tcp_port; + if (transportValue.udp_port == 0) transportValue.udp_port=transportValue.tcp_port + transportValue.tls_port; transportValue.tcp_port=0; transportValue.tls_port=0; } else if ([transport isEqualToString:@"tls"]){ - if (transportValue.tls_port == 0) transportValue.tls_port=transportValue.udp_port; + if (transportValue.tls_port == 0) transportValue.tls_port=transportValue.udp_port + transportValue.tcp_port; transportValue.tcp_port=0; transportValue.udp_port=0; } else { @@ -496,8 +499,14 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach } //read codecs from setting bundle and enable them one by one - [self configurePayloadType:"speex" fromPrefKey:@"speex_16k_preference" withRate:16000]; - [self configurePayloadType:"speex" fromPrefKey:@"speex_8k_preference" withRate:8000]; + if ([self isNotIphone3G]) { + [self configurePayloadType:"speex" fromPrefKey:@"speex_16k_preference" withRate:16000]; + [self configurePayloadType:"speex" fromPrefKey:@"speex_8k_preference" withRate:8000]; + } + else + { + ms_message("SPEEX codecs deactivated"); + } [self configurePayloadType:"AMR" fromPrefKey:@"amr_8k_preference" withRate:8000]; [self configurePayloadType:"GSM" fromPrefKey:@"gsm_8k_preference" withRate:8000]; [self configurePayloadType:"iLBC" fromPrefKey:@"ilbc_preference" withRate:8000]; @@ -516,6 +525,18 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach } } +- (BOOL)isNotIphone3G +{ + size_t size; + sysctlbyname("hw.machine", NULL, &size, NULL, 0); + char *machine = malloc(size); + sysctlbyname("hw.machine", machine, &size, NULL, 0); + NSString *platform = [NSString stringWithCString:machine]; + free(machine); + + return ![platform isEqualToString:@"iPhone1,2"]; +} + // no proxy configured alert - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { if (buttonIndex == 1) { diff --git a/linphone-Info.plist b/linphone-Info.plist index 44b4788bb..de193e695 100644 --- a/linphone-Info.plist +++ b/linphone-Info.plist @@ -19,11 +19,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.4.4 + 3.4.5 CFBundleSignature ???? CFBundleVersion - 1.0.6 + 1.0.7 NSMainNibFile PhoneMainView UIApplicationExitsOnSuspend diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index d7695a040..2e2f54bd2 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -86,7 +86,6 @@ 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; 70571E1A13FABCB000CDD3C2 /* rootca.pem in Resources */ = {isa = PBXBuildFile; fileRef = 70571E1913FABCB000CDD3C2 /* rootca.pem */; }; F0A486D91404FE53009EC0BE /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F0A486D71404FE53009EC0BE /* libsrtp.a */; }; - F0A486DA1404FE53009EC0BE /* libzrtpcpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F0A486D81404FE53009EC0BE /* libzrtpcpp.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -400,7 +399,6 @@ 70571E1913FABCB000CDD3C2 /* rootca.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = rootca.pem; path = Resources/rootca.pem; sourceTree = ""; }; 8D1107310486CEB800E47090 /* linphone-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "linphone-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; F0A486D71404FE53009EC0BE /* libsrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsrtp.a; path = "liblinphone-sdk/apple-darwin/lib/libsrtp.a"; sourceTree = ""; }; - F0A486D81404FE53009EC0BE /* libzrtpcpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libzrtpcpp.a; path = "liblinphone-sdk/apple-darwin/lib/libzrtpcpp.a"; sourceTree = ""; }; F0A486DB14050008009EC0BE /* libstdc++.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libstdc++.dylib"; path = "usr/lib/gcc/arm-apple-darwin10/4.0.1/libstdc++.dylib"; sourceTree = SDKROOT; }; /* End PBXFileReference section */ @@ -435,7 +433,6 @@ 226F2ED71344B0EF00F6EF27 /* libopencore-amrnb.a in Frameworks */, 226F2ED81344B0EF00F6EF27 /* libmsamr.a in Frameworks */, F0A486D91404FE53009EC0BE /* libsrtp.a in Frameworks */, - F0A486DA1404FE53009EC0BE /* libzrtpcpp.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -793,7 +790,6 @@ children = ( F0A486DB14050008009EC0BE /* libstdc++.dylib */, F0A486D71404FE53009EC0BE /* libsrtp.a */, - F0A486D81404FE53009EC0BE /* libzrtpcpp.a */, 2214783B1386A2030020F8B8 /* Localizable.strings */, 22A10D9E11F88C1F00373793 /* liblinphone.xcodeproj */, 223148E51178A09900637D6A /* libmsilbc.a */, @@ -910,6 +906,9 @@ /* Begin PBXProject section */ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; + attributes = { + LastUpgradeCheck = 0410; + }; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "linphone" */; compatibilityVersion = "Xcode 3.1"; developmentRegion = English; @@ -1057,7 +1056,7 @@ submodules/externals/zrtpcpp/src, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 3.1.2; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", @@ -1124,7 +1123,7 @@ submodules/externals/zrtpcpp/src, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 3.1.2; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", @@ -1191,7 +1190,7 @@ submodules/externals/zrtpcpp/src, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 3.1.2; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 47516d4e0..c6d8166e5 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -77,7 +77,6 @@ LIBILBC_BUILD_DIR:=$(BUILDER_BUILD_DIR)/libilbc-rfc3951 ifneq (,$(findstring arm,$(host))) SPEEX_CONFIGURE_OPTION := --enable-fixed-point --disable-float-api #SPEEX_CONFIGURE_OPTION := --enable-arm5e-asm --enable-fixed-point -else endif diff --git a/submodules/build/iphone-config.site b/submodules/build/iphone-config.site index 039fa76b7..14f86c1f8 100644 --- a/submodules/build/iphone-config.site +++ b/submodules/build/iphone-config.site @@ -3,19 +3,22 @@ GCC_VERSION=4.2 SDK_VERSION_MAJOR=4 SDK_VERSION=4.0 - +MCPU="" if test "${host_alias}" = "i386-apple-darwin" ; then PLATFORM=Simulator ARCH=i386 CMAKE_OPTS="-DCMAKE_SYSTEM_PROCESSOR=i386" + MCPU="" elif test "${host_alias}" = "armv6-apple-darwin" ; then ARCH=armv6 PLATFORM=OS CMAKE_OPTS="-DCMAKE_SYSTEM_PROCESSOR=arm" + MCPU="-mcpu=arm1176jzf-s" elif test "${host_alias}" = "armv7-apple-darwin" ; then ARCH=armv7 PLATFORM=OS CMAKE_OPTS="-DCMAKE_SYSTEM_PROCESSOR=arm" + MCPU="-mcpu=cortex-a8" else echo "bad host ${host_alias} must be either i386-apple-darwin or armv6-apple-darwin" exit @@ -26,7 +29,7 @@ SDK_PATH_LIST=`ls -drt /Developer/Platforms/iPhone${PLATFORM}.platform/Developer SDK_BIN_PATH=/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin for SYSROOT_PATH in $SDK_PATH_LIST ; do echo $SYSROOT_PATH ; done ; echo "Selecting SDK path = ${SYSROOT_PATH}" -COMMON_FLAGS=" -arch ${ARCH} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE" +COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE" CC="${SDK_BIN_PATH}/gcc-${GCC_VERSION} -std=c99 $COMMON_FLAGS" CXX="${SDK_BIN_PATH}/g++-${GCC_VERSION} $COMMON_FLAGS" LD="${SDK_BIN_PATH}/ld-${GCC_VERSION} -arch ${ARCH}" From d50e11ecbf89c839acf5b6123b2c261af83a41a3 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 8 Sep 2011 12:37:36 +0200 Subject: [PATCH 10/18] Fix srtp patch not applying. --- submodules/build/builders.d/srtp.patch | 117 +++++++++++-------------- 1 file changed, 51 insertions(+), 66 deletions(-) diff --git a/submodules/build/builders.d/srtp.patch b/submodules/build/builders.d/srtp.patch index 7dfe02e97..b02e08b24 100644 --- a/submodules/build/builders.d/srtp.patch +++ b/submodules/build/builders.d/srtp.patch @@ -1,5 +1,26 @@ +diff -rupN ../srtp_old/crypto/cipher/aes.c ./crypto/cipher/aes.c +--- ../srtp_old/crypto/cipher/aes.c 2005-10-08 18:39:25.000000000 +0200 ++++ ./crypto/cipher/aes.c 2011-09-06 10:05:35.000000000 +0200 +@@ -1358,7 +1358,7 @@ static uint32_t U4[256] = { + + extern debug_module_t mod_aes_icm; + +-inline void ++void + aes_expand_encryption_key(const v128_t *key, + aes_expanded_key_t expanded_key) { + int i; +@@ -1411,7 +1411,7 @@ aes_expand_encryption_key(const v128_t * + } + } + +-inline void ++void + aes_expand_decryption_key(const v128_t *key, + aes_expanded_key_t expanded_key) { + int i; diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c ---- ../srtp_old/crypto/cipher/aes_icm.c 2011-09-06 10:09:18.000000000 +0200 +--- ../srtp_old/crypto/cipher/aes_icm.c 2006-03-16 18:11:29.000000000 +0100 +++ ./crypto/cipher/aes_icm.c 2011-09-06 10:19:16.000000000 +0200 @@ -281,7 +281,7 @@ aes_icm_set_iv(aes_icm_ctx_t *c, void *i * this is an internal, hopefully inlined function @@ -10,68 +31,32 @@ diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c aes_icm_advance_ismacryp(aes_icm_ctx_t *c, uint8_t forIsmacryp) { /* fill buffer with new keystream */ v128_copy(&c->keystream_buffer, &c->counter); -diff -rupN ../srtp_old/srtp.patch ./srtp.patch ---- ../srtp_old/srtp.patch 2011-09-06 10:14:26.000000000 +0200 -+++ ./srtp.patch 2011-09-06 10:21:47.000000000 +0200 -@@ -1,50 +1,12 @@ --diff -rupN ../srtp_old/crypto/cipher/aes.c ./crypto/cipher/aes.c ----- ../srtp_old/crypto/cipher/aes.c 2011-09-06 10:09:18.000000000 +0200 --+++ ./crypto/cipher/aes.c 2011-09-06 10:05:35.000000000 +0200 --@@ -1358,7 +1358,7 @@ static uint32_t U4[256] = { -- -- extern debug_module_t mod_aes_icm; -- -+diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c -+--- ../srtp_old/crypto/cipher/aes_icm.c 2011-09-06 10:09:18.000000000 +0200 -++++ ./crypto/cipher/aes_icm.c 2011-09-06 10:19:16.000000000 +0200 -+@@ -281,7 +281,7 @@ aes_icm_set_iv(aes_icm_ctx_t *c, void *i -+ * this is an internal, hopefully inlined function -+ */ -+ - -inline void --+void -- aes_expand_encryption_key(const v128_t *key, -- aes_expanded_key_t expanded_key) { -- int i; --@@ -1411,7 +1411,7 @@ aes_expand_encryption_key(const v128_t * -- } -- } -- ---inline void --+void -- aes_expand_decryption_key(const v128_t *key, -- aes_expanded_key_t expanded_key) { -- int i; --diff -rupN ../srtp_old/crypto/include/aes.h ./crypto/include/aes.h ----- ../srtp_old/crypto/include/aes.h 2011-09-06 10:09:18.000000000 +0200 --+++ ./crypto/include/aes.h 2011-09-06 10:03:53.000000000 +0200 --@@ -55,11 +55,11 @@ -- -- typedef v128_t aes_expanded_key_t[11]; -- ---inline void --+void -- aes_expand_encryption_key(const v128_t *key, -- aes_expanded_key_t expanded_key); -- ---inline void --+void -- aes_expand_decryption_key(const v128_t *key, -- aes_expanded_key_t expanded_key); -- --diff -rupN ../srtp_old/crypto/math/datatypes.c ./crypto/math/datatypes.c ----- ../srtp_old/crypto/math/datatypes.c 2011-09-06 10:09:18.000000000 +0200 --+++ ./crypto/math/datatypes.c 2011-09-06 10:02:55.000000000 +0200 --@@ -124,7 +124,7 @@ octet_string_hex_string(const void *s, i -- return bit_string; -- } -- ---inline int --+static int -- hex_char_to_nibble(uint8_t c) { -- switch(c) { -- case ('0'): return 0x0; -++static void -+ aes_icm_advance_ismacryp(aes_icm_ctx_t *c, uint8_t forIsmacryp) { -+ /* fill buffer with new keystream */ -+ v128_copy(&c->keystream_buffer, &c->counter); +diff -rupN ../srtp_old/crypto/include/aes.h ./crypto/include/aes.h +--- ../srtp_old/crypto/include/aes.h 2005-10-08 18:06:05.000000000 +0200 ++++ ./crypto/include/aes.h 2011-09-06 10:03:53.000000000 +0200 +@@ -55,11 +55,11 @@ + + typedef v128_t aes_expanded_key_t[11]; + +-inline void ++void + aes_expand_encryption_key(const v128_t *key, + aes_expanded_key_t expanded_key); + +-inline void ++void + aes_expand_decryption_key(const v128_t *key, + aes_expanded_key_t expanded_key); + +diff -rupN ../srtp_old/crypto/math/datatypes.c ./crypto/math/datatypes.c +--- ../srtp_old/crypto/math/datatypes.c 2005-10-08 18:38:06.000000000 +0200 ++++ ./crypto/math/datatypes.c 2011-09-06 10:02:55.000000000 +0200 +@@ -124,7 +124,7 @@ octet_string_hex_string(const void *s, i + return bit_string; + } + +-inline int ++static int + hex_char_to_nibble(uint8_t c) { + switch(c) { + case ('0'): return 0x0; From 745a9037ebc06980a692311e33fe23dde5a53423 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 8 Sep 2011 12:39:03 +0200 Subject: [PATCH 11/18] Zrtp should not be compiled by default. --- submodules/build/builder-iphone-os.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 619e211d8..02e216355 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -21,7 +21,7 @@ ############################################################################ host?=armv6-apple-darwin -enable_zrtp=yes +enable_zrtp=no config_site:=iphone-config.site library_mode:= --disable-shared --enable-static linphone_configure_controls= --disable-video \ From 08353ff03892365eebe8f77c19d069efd0846993 Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 8 Sep 2011 14:19:12 +0200 Subject: [PATCH 12/18] Fix second build fail due to zrtp/cmake CMakeFileLists.txt was overwritten for each architecture target. CMake was then confused as the CMakeFileLists.txt was newer than the generated Makefile, cache. CMake would forget the options passed during generation of Makefile, leading to compilation of unwanted ccRrtp. --- submodules/build/builder-iphone-os.mk | 2 +- submodules/build/builders.d/zrtp.mk | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 02e216355..a5b0127fa 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -101,7 +101,7 @@ veryclean: veryclean-linphone clean-linphone: clean-osip2 clean-eXosip2 clean-speex clean-libgsm clean-srtp clean-zrtpcpp clean-msilbc clean-libilbc clean-openssl clean-msamr cd $(LINPHONE_BUILD_DIR) && make clean -veryclean-linphone: veryclean-osip2 veryclean-eXosip2 veryclean-speex veryclean-srtp veryclean-libgsm veryclean-msilbc veryclean-libilbc veryclean-openssl veryclean-msamr +veryclean-linphone: veryclean-osip2 veryclean-eXosip2 veryclean-speex veryclean-srtp veryclean-zrtpcpp veryclean-libgsm veryclean-msilbc veryclean-libilbc veryclean-openssl veryclean-msamr #-cd $(LINPHONE_BUILD_DIR) && make distclean -cd $(LINPHONE_SRC_DIR) && rm -f configure diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk index 2dcc70ccf..83b323a03 100644 --- a/submodules/build/builders.d/zrtp.mk +++ b/submodules/build/builders.d/zrtp.mk @@ -1,8 +1,12 @@ +$(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker_target: $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker + cp $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt + touch $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker + + #I coudn't manage to crosscompile using only -D arguments to cmake #Thus the use of a toolchain file. TC = -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake$(tc_proc) -$(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: - cp $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt +$(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker_target mkdir -p $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\ && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ @@ -13,7 +17,7 @@ ifeq ($(enable_zrtp),yes) build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile echo "Build ZRTP - prefix $(prefix)" - cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make && make install + cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make VERBOSE=1 && make install else build-zrtpcpp: @@ -27,6 +31,7 @@ clean-makefile-zrtpcpp: clean-zrtpcpp -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/CMakeCache.txt - +veryclean-zrtpcpp: + -rm $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker From 434062dadf4caf8e8697277fcfd407abef0f613e Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 8 Sep 2011 15:22:59 +0200 Subject: [PATCH 13/18] Update documentation: cmake required to build zrtp. --- README | 1 + 1 file changed, 1 insertion(+) diff --git a/README b/README index c846c7a2a..4c34e693f 100644 --- a/README +++ b/README @@ -8,6 +8,7 @@ Linphone for iPhone depends on liblinphone sdk. To build this sdk, you must inst -intltool -wget -pkgconfig +-cmake (for ZRTP support) Link macport libtoolize to glibtoolize (sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize) From 5a982c98e47d923440a02ab5e31bb6cd13787f9a Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Thu, 8 Sep 2011 16:16:23 +0200 Subject: [PATCH 14/18] Fix zrtpcpp CmakeFilesList.txt only once copy --- submodules/build/builders.d/zrtp.mk | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk index 83b323a03..97a43f9e9 100644 --- a/submodules/build/builders.d/zrtp.mk +++ b/submodules/build/builders.d/zrtp.mk @@ -1,12 +1,11 @@ -$(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker_target: $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker +$(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker: $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt cp $(BUILDER_SRC_DIR)/build/builders.d/zrtpcpp.CMakeLists.txt $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt - touch $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker #I coudn't manage to crosscompile using only -D arguments to cmake #Thus the use of a toolchain file. TC = -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake$(tc_proc) -$(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker_target +$(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker mkdir -p $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\ && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ @@ -32,6 +31,6 @@ clean-makefile-zrtpcpp: clean-zrtpcpp -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/CMakeCache.txt veryclean-zrtpcpp: - -rm $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker + -rm $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) From 265cd6b105f6cfcff512e91d1f71ae4073155b64 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Fri, 9 Sep 2011 11:15:50 +0200 Subject: [PATCH 15/18] libilbc submodule to avoid file too long issue --- submodules/libilbc-rfc3951 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/libilbc-rfc3951 b/submodules/libilbc-rfc3951 index 5b6ac8974..af32518af 160000 --- a/submodules/libilbc-rfc3951 +++ b/submodules/libilbc-rfc3951 @@ -1 +1 @@ -Subproject commit 5b6ac8974d1a5f8059b964b329c565d4afe06358 +Subproject commit af32518af41f97caee07070234a3475409b9a27d From 2ec412b9696ded0d03f56c17a6f32e97503d51ce Mon Sep 17 00:00:00 2001 From: Guillaume Beraudo Date: Fri, 9 Sep 2011 14:20:33 +0200 Subject: [PATCH 16/18] Srtp version from 1.4.2 to 1.4.4. Required by zrtp.c. --- submodules/build/builders.d/srtp.mk | 16 +++++++---- submodules/build/builders.d/srtp.patch | 38 -------------------------- 2 files changed, 10 insertions(+), 44 deletions(-) diff --git a/submodules/build/builders.d/srtp.mk b/submodules/build/builders.d/srtp.mk index 38cccdbd9..85e338231 100644 --- a/submodules/build/builders.d/srtp.mk +++ b/submodules/build/builders.d/srtp.mk @@ -1,11 +1,15 @@ -srtp_version?=1.4.2 -srtp_url?=http://srtp.sourceforge.net/srtp-$(srtp_version).tgz +srtp_version?=1.4.4 +#srtp_url?=http://srtp.sourceforge.net/srtp-$(srtp_version).tgz +srtp_url=http://sourceforge.net/projects/srtp/files/srtp/$(srtp_version)/srtp-$(srtp_version).tgz/download +srtp_tgz_file=srtp-$(srtp_version).tgz - -$(BUILDER_SRC_DIR)/$(srtp_dir)/configure: +$(BUILDER_SRC_DIR)/externals/$(srtp_tgz_file): cd $(BUILDER_SRC_DIR)/externals \ - && wget $(srtp_url) \ - && tar zxvf srtp-$(srtp_version).tgz \ + && wget $(srtp_url) -O $(srtp_tgz_file) + +$(BUILDER_SRC_DIR)/$(srtp_dir)/configure: $(BUILDER_SRC_DIR)/externals/$(srtp_tgz_file) + cd $(BUILDER_SRC_DIR)/externals \ + && tar zxvf $(srtp_tgz_file) \ && cd srtp && patch -p0 < $(BUILDER_SRC_DIR)/build/builders.d/srtp.patch $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/configure diff --git a/submodules/build/builders.d/srtp.patch b/submodules/build/builders.d/srtp.patch index b02e08b24..c3d127b13 100644 --- a/submodules/build/builders.d/srtp.patch +++ b/submodules/build/builders.d/srtp.patch @@ -1,24 +1,3 @@ -diff -rupN ../srtp_old/crypto/cipher/aes.c ./crypto/cipher/aes.c ---- ../srtp_old/crypto/cipher/aes.c 2005-10-08 18:39:25.000000000 +0200 -+++ ./crypto/cipher/aes.c 2011-09-06 10:05:35.000000000 +0200 -@@ -1358,7 +1358,7 @@ static uint32_t U4[256] = { - - extern debug_module_t mod_aes_icm; - --inline void -+void - aes_expand_encryption_key(const v128_t *key, - aes_expanded_key_t expanded_key) { - int i; -@@ -1411,7 +1411,7 @@ aes_expand_encryption_key(const v128_t * - } - } - --inline void -+void - aes_expand_decryption_key(const v128_t *key, - aes_expanded_key_t expanded_key) { - int i; diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c --- ../srtp_old/crypto/cipher/aes_icm.c 2006-03-16 18:11:29.000000000 +0100 +++ ./crypto/cipher/aes_icm.c 2011-09-06 10:19:16.000000000 +0200 @@ -31,23 +10,6 @@ diff -rupN ../srtp_old/crypto/cipher/aes_icm.c ./crypto/cipher/aes_icm.c aes_icm_advance_ismacryp(aes_icm_ctx_t *c, uint8_t forIsmacryp) { /* fill buffer with new keystream */ v128_copy(&c->keystream_buffer, &c->counter); -diff -rupN ../srtp_old/crypto/include/aes.h ./crypto/include/aes.h ---- ../srtp_old/crypto/include/aes.h 2005-10-08 18:06:05.000000000 +0200 -+++ ./crypto/include/aes.h 2011-09-06 10:03:53.000000000 +0200 -@@ -55,11 +55,11 @@ - - typedef v128_t aes_expanded_key_t[11]; - --inline void -+void - aes_expand_encryption_key(const v128_t *key, - aes_expanded_key_t expanded_key); - --inline void -+void - aes_expand_decryption_key(const v128_t *key, - aes_expanded_key_t expanded_key); - diff -rupN ../srtp_old/crypto/math/datatypes.c ./crypto/math/datatypes.c --- ../srtp_old/crypto/math/datatypes.c 2005-10-08 18:38:06.000000000 +0200 +++ ./crypto/math/datatypes.c 2011-09-06 10:02:55.000000000 +0200 From 2635db3b742abffd8c1504f37d916775257cd207 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Fri, 14 Oct 2011 16:14:54 +0200 Subject: [PATCH 17/18] fix audio for IOS5 --- .gitmodules | 4 +- linphone.xcodeproj/project.pbxproj | 18 + linphonerc | 2 +- submodules/build/Makefile | 2 +- submodules/build/builder-iphone-os.mk | 6 +- submodules/build/builders.d/silk.mk | 59 ++ submodules/build/builders.d/zrtp.mk | 8 +- submodules/build/iphone-config.site | 27 +- submodules/build/iphone-toolchain.cmake | 7 - .../liblinphone.xcodeproj/project.pbxproj | 696 +++++++++++++++++- submodules/linphone | 2 +- 11 files changed, 781 insertions(+), 50 deletions(-) create mode 100644 submodules/build/builders.d/silk.mk diff --git a/.gitmodules b/.gitmodules index 3bff82fba..c9e476364 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +1,9 @@ [submodule "submodules/linphone"] path = submodules/linphone - url = git://git.sv.gnu.org/linphone.git + url = git://git.linphone.org/linphone.git [submodule "submodules/externals/osip"] path = submodules/externals/osip - url = git://git.savannah.gnu.org/osip.git + url = git://git.linphone.org/osip.git [submodule "submodules/externals/exosip"] path = submodules/externals/exosip url = git://git.linphone.org/exosip.git diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 2e2f54bd2..d8240f0ba 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -89,6 +89,13 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + 223136D814433FF50035C1F4 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 22A10D9E11F88C1F00373793 /* liblinphone.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 22DD19BE13A8D7FA0018ECD4; + remoteInfo = mediastream; + }; 22A10DA211F88C1F00373793 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 22A10D9E11F88C1F00373793 /* liblinphone.xcodeproj */; @@ -703,6 +710,7 @@ isa = PBXGroup; children = ( 22A10DA311F88C1F00373793 /* liblinphone.a */, + 223136D914433FF50035C1F4 /* mediastream.app */, ); name = Products; sourceTree = ""; @@ -936,6 +944,13 @@ /* End PBXProject section */ /* Begin PBXReferenceProxy section */ + 223136D914433FF50035C1F4 /* mediastream.app */ = { + isa = PBXReferenceProxy; + fileType = wrapper.application; + path = mediastream.app; + remoteRef = 223136D814433FF50035C1F4 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; 22A10DA311F88C1F00373793 /* liblinphone.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; @@ -1042,6 +1057,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = IN_LINPHONE; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; HEADER_SEARCH_PATHS = ( submodules/linphone/coreapi, submodules/linphone/mediastreamer2/include, @@ -1109,6 +1125,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = IN_LINPHONE; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; HEADER_SEARCH_PATHS = ( submodules/linphone/coreapi, submodules/linphone/mediastreamer2/include, @@ -1176,6 +1193,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = IN_LINPHONE; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; HEADER_SEARCH_PATHS = ( submodules/linphone/coreapi, submodules/linphone/mediastreamer2/include, diff --git a/linphonerc b/linphonerc index 1f719760e..7738b6a8b 100644 --- a/linphonerc +++ b/linphonerc @@ -25,7 +25,7 @@ nortp_timeout=30 [sound] playback_dev_id=AU: Audio Unit Receiver -ringer_dev_id=AU: Audio Unit Speaker +ringer_dev_id=AQ: Audio Queue Device capture_dev_id=AU: Audio Unit Receiver echocancellation=0 diff --git a/submodules/build/Makefile b/submodules/build/Makefile index ee0e90abe..53658e4e4 100644 --- a/submodules/build/Makefile +++ b/submodules/build/Makefile @@ -21,7 +21,7 @@ ############################################################################ all: make -f builder-iphone-os.mk all \ - && make -f builder-iphone-simulator.mk tc_proc=.i386 all \ + && make -f builder-iphone-simulator.mk all \ && make -f builder-iphone-os.mk host=armv7-apple-darwin all \ && make -f builder-iphone-os.mk delivery-sdk clean: diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index dfe132a06..729fc4c44 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -32,10 +32,8 @@ linphone_configure_controls= --disable-video \ --enable-console_ui=no \ --enable-ssl-hmac=no \ --enable-ssl=yes \ - --enable-macaqsnd=no \ - --enable-macsnd=no \ - --enable-iounit=yes \ --with-gsm=$(prefix) \ + --disable-tests \ LIBZRTPCPP_CFLAGS="-I$(prefix)/include" \ LIBZRTPCPP_LIBS="-L$(prefix)/lib -lzrtpcpp -lcrypto" \ SRTP_LIBS="-L$(prefix)/lib -lsrtp -lcrypto" \ @@ -94,7 +92,7 @@ init: veryclean: veryclean-linphone rm -rf $(BUILDER_BUILD_DIR) -.NOTPARALLEL build-linphone: init build-openssl build-srtp build-zrtpcpp build-osip2 build-eXosip2 build-speex build-libgsm $(LINPHONE_BUILD_DIR)/Makefile +.NOTPARALLEL build-linphone: init build-openssl build-srtp build-zrtpcpp build-osip2 build-eXosip2 build-speex build-libgsm $(LINPHONE_BUILD_DIR)/Makefile cd $(LINPHONE_BUILD_DIR) && export PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig export CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make newdate && make && make install clean-linphone: clean-osip2 clean-eXosip2 clean-speex clean-libgsm clean-srtp clean-zrtpcpp clean-msilbc clean-libilbc clean-openssl clean-msamr diff --git a/submodules/build/builders.d/silk.mk b/submodules/build/builders.d/silk.mk new file mode 100644 index 000000000..5e848ab79 --- /dev/null +++ b/submodules/build/builders.d/silk.mk @@ -0,0 +1,59 @@ +############################################################################ +# silk.mk +# Copyright (C) 2011 Belledonne Communications,Grenoble France +# +############################################################################ +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################ + +SILK_BUILD_DIR?=$(BUILDER_BUILD_DIR)/externals/silk + +ifneq (,$(findstring i386,$(host))) + make_options := TARGET_MTUNE=i386 TARGET_ARCH=i386 +endif +ifneq (,$(findstring armv6,$(host))) + make_options := TARGET_ARCH="-arch armv6" +endif +ifneq (,$(findstring armv7,$(host))) + make_options := USE_NEON=yes TARGET_ARCH="armv7 -mno-thumb" +endif + +$(SILK_BUILD_DIR)/Makefile: + mkdir -p $(BUILDER_BUILD_DIR)/externals \ + && cd $(BUILDER_BUILD_DIR)/externals \ + && rm -rf silk \ + && wget http://developer.skype.com/silk/SILK_SDK_SRC_v1.0.8.zip \ + && unzip SILK_SDK_SRC_v1.0.8.zip \ + && rm -f SILK_SDK_SRC_v1.0.8.zip \ + && mv SILK_SDK_SRC_v1.0.8/SILK_SDK_SRC_ARM_v1.0.8 silk \ + && rm -rf SILK_SDK_SRC_v1.0.8 + +build-silk: $(SILK_BUILD_DIR)/Makefile + cd $(SILK_BUILD_DIR) && host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \ + && make all TOOLCHAIN_PREFIX=$$SDK_BIN_PATH/ $(make_options) ADDED_DEFINES+=IPHONE \ + && mkdir -p $(prefix)/include/silk \ + && cp -f $(SILK_BUILD_DIR)/interface/* $(prefix)/include/silk \ + && cp -f lib*.a $(prefix)/lib + +clean-silk: + cd $(SILK_BUILD_DIR) && make clean + +clean-makefile-silk: + +veryclean-silk: + rm -rf $(SILK_BUILD_DIR) + diff --git a/submodules/build/builders.d/zrtp.mk b/submodules/build/builders.d/zrtp.mk index 97a43f9e9..6b988fd6e 100644 --- a/submodules/build/builders.d/zrtp.mk +++ b/submodules/build/builders.d/zrtp.mk @@ -4,12 +4,14 @@ $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker: $(BUILDER_SRC_DIR)/bui #I coudn't manage to crosscompile using only -D arguments to cmake #Thus the use of a toolchain file. -TC = -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake$(tc_proc) $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(zrtpcpp_dir)/CMakeLists.txt.tracker mkdir -p $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\ && host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \ - && cmake $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) -Denable-ccrtp=false $(TC) -LH -Wdev -DCMAKE_INSTALL_PREFIX=$(prefix) -DCMAKE_FIND_ROOT_PATH="$(prefix)" + && cmake $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) -Denable-ccrtp=false -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake \ + -LH -Wdev -DCMAKE_C_COMPILER=$$SDK_BIN_PATH/gcc -DCMAKE_CXX_COMPILER=$$SDK_BIN_PATH/g++ \ + -DCMAKE_SYSTEM_PROCESSOR=$$ARCH -DCMAKE_C_FLAGS="$$COMMON_FLAGS" -DCMAKE_CXX_FLAGS="$$COMMON_FLAGS" \ + -DCMAKE_INSTALL_PREFIX=$(prefix) -DCMAKE_FIND_ROOT_PATH="$(prefix)" # Used toolchain: $(TC) ifeq ($(enable_zrtp),yes) @@ -31,6 +33,6 @@ clean-makefile-zrtpcpp: clean-zrtpcpp -rm -f $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/CMakeCache.txt veryclean-zrtpcpp: - -rm $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) + -rm -rf $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) diff --git a/submodules/build/iphone-config.site b/submodules/build/iphone-config.site index 14f86c1f8..d976c17a5 100644 --- a/submodules/build/iphone-config.site +++ b/submodules/build/iphone-config.site @@ -1,6 +1,5 @@ # -*- shell-script -*- -GCC_VERSION=4.2 SDK_VERSION_MAJOR=4 SDK_VERSION=4.0 MCPU="" @@ -25,32 +24,16 @@ else fi echo "Loading config.site for iPhone platform=${PLATFORM} version=${SDK_VERSION}" -SDK_PATH_LIST=`ls -drt /Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}4*` +SDK_PATH_LIST=`ls -drt /Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*` SDK_BIN_PATH=/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin for SYSROOT_PATH in $SDK_PATH_LIST ; do echo $SYSROOT_PATH ; done ; echo "Selecting SDK path = ${SYSROOT_PATH}" -COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE" -CC="${SDK_BIN_PATH}/gcc-${GCC_VERSION} -std=c99 $COMMON_FLAGS" -CXX="${SDK_BIN_PATH}/g++-${GCC_VERSION} $COMMON_FLAGS" -LD="${SDK_BIN_PATH}/ld-${GCC_VERSION} -arch ${ARCH}" +COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE -D__IOS" +CC="${SDK_BIN_PATH}/gcc -std=c99 $COMMON_FLAGS" +CXX="${SDK_BIN_PATH}/g++ $COMMON_FLAGS" +LD="${SDK_BIN_PATH}/ld -arch ${ARCH}" AR=${SDK_BIN_PATH}/ar RANLIB=${SDK_BIN_PATH}/ranlib CPPFLAGS="-Dasm=__asm" LDFLAGS="-Wl,-syslibroot,${SYSROOT_PATH} -framework CFNetwork" - -export CC CXX LD CFLAGS="${COMMON_FLAGS} ${CFLAGS}" CXXFLAGS="${COMMON_FLAG} ${CPPFLAGS}" CPPFLAGS="${COMMON_FLAG} ${CPPFLAGS}" LDFLAGS="${LDFLAGS} ${COMMON_FLAGS}" - -# CMAKE options (not working right now so information duplicated in .cmake toolchains). -DEVROOT=/Developer/Platforms/iPhoneOS.platform/Developer -SDKVER=4.3 -export CMAKE_OPTS="${CMAKE_OPTS} \ - -DCMAKE_SYSTEM_NAME=Generic \ - -DSDKVER=${SDKVER} \ - -DDEVROOT=${DEVROOT} \ - -DSDKROOT=${DEVROOT}/SDKs/iPhoneOS${SDKVER}.sdk \ - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \ - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \ - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \ - " - diff --git a/submodules/build/iphone-toolchain.cmake b/submodules/build/iphone-toolchain.cmake index 7f46ad8bb..d7add3c91 100644 --- a/submodules/build/iphone-toolchain.cmake +++ b/submodules/build/iphone-toolchain.cmake @@ -1,11 +1,4 @@ SET (CMAKE_SYSTEM_NAME "Generic") -SET (CMAKE_SYSTEM_PROCESSOR "arm") - -SET (SDKVER "4.3") -SET (DEVROOT "/Developer/Platforms/iPhoneOS.platform/Developer") -SET (SDKROOT "${DEVROOT}/SDKs/iPhoneOS${SDKVER}.sdk") - -SET (CMAKE_FIND_ROOT_PATH "${CMAKE_INSTALL_PREFIX}" "${SDKROOT}" "${DEVROOT}") SET (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) SET (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) SET (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) diff --git a/submodules/liblinphone.xcodeproj/project.pbxproj b/submodules/liblinphone.xcodeproj/project.pbxproj index 799c3075f..2e20db1a8 100644 --- a/submodules/liblinphone.xcodeproj/project.pbxproj +++ b/submodules/liblinphone.xcodeproj/project.pbxproj @@ -7,6 +7,31 @@ objects = { /* Begin PBXBuildFile section */ + 2203126F139F61990049A2ED /* ioscapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 22D15AB3139F505400C7713A /* ioscapture.m */; }; + 2203127213A247B50049A2ED /* iosdisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 2203127013A247B40049A2ED /* iosdisplay.h */; }; + 2203127313A247B50049A2ED /* iosdisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 2203127113A247B40049A2ED /* iosdisplay.m */; }; + 2203127613A249F70049A2ED /* filter-template.c in Sources */ = {isa = PBXBuildFile; fileRef = 2203127413A249F70049A2ED /* filter-template.c */; }; + 220ED19A13A8F87700AC21E0 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19713A8F87700AC21E0 /* libspeexdsp.a */; }; + 220ED19B13A8F87700AC21E0 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19813A8F87700AC21E0 /* libspeex.a */; }; + 220ED19C13A8F87700AC21E0 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19913A8F87700AC21E0 /* libortp.a */; }; + 220ED19D13A9033F00AC21E0 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D2AAC07E0554694100DB518D /* liblinphone.a */; }; + 220ED19F13A9038F00AC21E0 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED19E13A9038F00AC21E0 /* CoreVideo.framework */; }; + 220ED1A113A9039600AC21E0 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED1A013A9039600AC21E0 /* CoreAudio.framework */; }; + 220ED1A313A903BF00AC21E0 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED1A213A903BF00AC21E0 /* libgsm.a */; }; + 220ED1A713A9040700AC21E0 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED1A613A9040700AC21E0 /* AudioToolbox.framework */; }; + 220ED1A913A9041800AC21E0 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 220ED1A813A9041800AC21E0 /* AVFoundation.framework */; }; + 220ED1AC13A9062600AC21E0 /* nowebcam.h in Headers */ = {isa = PBXBuildFile; fileRef = 220ED1AA13A9062500AC21E0 /* nowebcam.h */; }; + 220ED1AD13A9062600AC21E0 /* nowebcam.c in Sources */ = {isa = PBXBuildFile; fileRef = 220ED1AB13A9062500AC21E0 /* nowebcam.c */; }; + 221F589C13AB4FC500D603C9 /* msvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F589B13AB4FC500D603C9 /* msvideo.c */; }; + 221F58A013AB50F800D603C9 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 221F589F13AB50F800D603C9 /* CoreMedia.framework */; }; + 221F58A213AB6F8100D603C9 /* pixconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F58A113AB6F8000D603C9 /* pixconv.c */; }; + 221F58A413AB708C00D603C9 /* alldescs.h in Headers */ = {isa = PBXBuildFile; fileRef = 221F58A313AB708C00D603C9 /* alldescs.h */; }; + 221F58A813AB716400D603C9 /* tonedetector.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F58A513AB716300D603C9 /* tonedetector.c */; }; + 221F58A913AB716400D603C9 /* jpegwriter.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F58A613AB716300D603C9 /* jpegwriter.c */; }; + 221F58AA13AB716400D603C9 /* h264dec.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F58A713AB716300D603C9 /* h264dec.c */; }; + 221F58AC13AB71A400D603C9 /* sizeconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F58AB13AB71A400D603C9 /* sizeconv.c */; }; + 221F58AE13ABA42800D603C9 /* scaler.c in Sources */ = {isa = PBXBuildFile; fileRef = 221F58AD13ABA42800D603C9 /* scaler.c */; }; + 221F58E413AF44B300D603C9 /* scaler.h in Headers */ = {isa = PBXBuildFile; fileRef = 221F58E313AF44B300D603C9 /* scaler.h */; }; 222CA63211F6CF7600621220 /* allfilters.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BE11F6CF7600621220 /* allfilters.h */; }; 222CA63311F6CF7600621220 /* dsptools.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5BF11F6CF7600621220 /* dsptools.h */; }; 222CA63411F6CF7600621220 /* dtmfgen.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5C011F6CF7600621220 /* dtmfgen.h */; }; @@ -42,8 +67,6 @@ 222CA65511F6CF7600621220 /* chanadapt.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5E511F6CF7600621220 /* chanadapt.c */; }; 222CA65711F6CF7600621220 /* dsptools.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5E711F6CF7600621220 /* dsptools.c */; }; 222CA65811F6CF7600621220 /* dtmfgen.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5E811F6CF7600621220 /* dtmfgen.c */; }; - 222CA65911F6CF7600621220 /* dxfilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5E911F6CF7600621220 /* dxfilter.cpp */; }; - 222CA65A11F6CF7600621220 /* dxfilter.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA5EA11F6CF7600621220 /* dxfilter.h */; }; 222CA65B11F6CF7600621220 /* equalizer.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5EB11F6CF7600621220 /* equalizer.c */; }; 222CA65C11F6CF7600621220 /* eventqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5EC11F6CF7600621220 /* eventqueue.c */; }; 222CA65D11F6CF7600621220 /* extdisplay.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA5ED11F6CF7600621220 /* extdisplay.c */; }; @@ -150,7 +173,20 @@ 222CA78511F6CFB100621220 /* sipsetup.c in Sources */ = {isa = PBXBuildFile; fileRef = 222CA76311F6CFB100621220 /* sipsetup.c */; }; 222CA78611F6CFB100621220 /* sipsetup.h in Headers */ = {isa = PBXBuildFile; fileRef = 222CA76411F6CFB100621220 /* sipsetup.h */; }; 2252935B12F6CA4700DD9BFB /* ec-calibrator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2252935A12F6CA4700DD9BFB /* ec-calibrator.c */; }; + 2258C44113A9377B0087A596 /* swscale.h in Headers */ = {isa = PBXBuildFile; fileRef = 2258C44013A9377B0087A596 /* swscale.h */; }; + 2258C44513A945520087A596 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2258C44213A945520087A596 /* libswscale.a */; }; + 2258C44613A945520087A596 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2258C44313A945520087A596 /* libavutil.a */; }; + 2258C44713A945520087A596 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2258C44413A945520087A596 /* libavcodec.a */; }; + 2258C44B13A946890087A596 /* videostream.c in Sources */ = {isa = PBXBuildFile; fileRef = 2258C44813A946890087A596 /* videostream.c */; }; + 2258C44C13A946890087A596 /* videoenc.c in Sources */ = {isa = PBXBuildFile; fileRef = 2258C44913A946890087A596 /* videoenc.c */; }; + 2258C44D13A946890087A596 /* videodec.c in Sources */ = {isa = PBXBuildFile; fileRef = 2258C44A13A946890087A596 /* videodec.c */; }; 225D355A124B1FF60008581C /* linphonecall.c in Sources */ = {isa = PBXBuildFile; fileRef = 225D3559124B1FF60008581C /* linphonecall.c */; }; + 229A614D13DDFE3500090183 /* g722_decode.c in Sources */ = {isa = PBXBuildFile; fileRef = 229A614913DDFE3500090183 /* g722_decode.c */; }; + 229A614E13DDFE3500090183 /* g722_encode.c in Sources */ = {isa = PBXBuildFile; fileRef = 229A614A13DDFE3500090183 /* g722_encode.c */; }; + 229A614F13DDFE3500090183 /* g722.h in Headers */ = {isa = PBXBuildFile; fileRef = 229A614B13DDFE3500090183 /* g722.h */; }; + 229A615013DDFE3500090183 /* msg722.c in Sources */ = {isa = PBXBuildFile; fileRef = 229A614C13DDFE3500090183 /* msg722.c */; }; + 229A615313DEE8A500090183 /* libx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 229A615113DEE8A400090183 /* libx264.a */; }; + 229A615413DEE8A500090183 /* libmsx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 229A615213DEE8A400090183 /* libmsx264.a */; }; 229B9D5913043EAB00EFCD1C /* linphonecore_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 229B9D5813043EAB00EFCD1C /* linphonecore_utils.h */; }; 22A10B5611F84E2D00373793 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B4F11F84E2D00373793 /* config.h */; }; 22A10B5711F84E2D00373793 /* gsm.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5011F84E2D00373793 /* gsm.h */; }; @@ -159,11 +195,72 @@ 22A10B5A11F84E2D00373793 /* toast.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5411F84E2D00373793 /* toast.h */; }; 22A10B5B11F84E2D00373793 /* unproto.h in Headers */ = {isa = PBXBuildFile; fileRef = 22A10B5511F84E2D00373793 /* unproto.h */; }; 22A10EE811F8920F00373793 /* mswebcam.c in Sources */ = {isa = PBXBuildFile; fileRef = 22A10EE711F8920F00373793 /* mswebcam.c */; }; + 22B5106913B060E100CD87DA /* nowebcamCIF.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 22B5106813AFD37B00CD87DA /* nowebcamCIF.jpg */; }; + 22DD19C113A8D7FA0018ECD4 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22DD19C013A8D7FA0018ECD4 /* UIKit.framework */; }; + 22DD19C213A8D7FA0018ECD4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; + 22DD19C413A8D7FA0018ECD4 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22DD19C313A8D7FA0018ECD4 /* CoreGraphics.framework */; }; + 22DD19F713A8DFA70018ECD4 /* mediastream.c in Sources */ = {isa = PBXBuildFile; fileRef = 22DD19E713A8D82C0018ECD4 /* mediastream.c */; }; + 22DD21AE13A8E3310018ECD4 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 22DD21A113A8E3310018ECD4 /* InfoPlist.strings */; }; + 22DD21AF13A8E3310018ECD4 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22DD21A313A8E3310018ECD4 /* MainWindow.xib */; }; + 22DD21B013A8E3310018ECD4 /* mediastreamViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22DD21A513A8E3310018ECD4 /* mediastreamViewController.xib */; }; + 22DD21B213A8E3310018ECD4 /* mediastream-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 22DD21A813A8E3310018ECD4 /* mediastream-Info.plist */; }; + 22DD21B313A8E3310018ECD4 /* mediastreamAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 22DD21AB13A8E3310018ECD4 /* mediastreamAppDelegate.m */; }; + 22DD21B413A8E3310018ECD4 /* mediastreamViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22DD21AD13A8E3310018ECD4 /* mediastreamViewController.m */; }; + 22FC56A813CB69FB002FD0F1 /* qualityindicator.c in Sources */ = {isa = PBXBuildFile; fileRef = 22FC56A713CB69FA002FD0F1 /* qualityindicator.c */; }; + 22FC56AA13CB6A4F002FD0F1 /* bitratecontrol.c in Sources */ = {isa = PBXBuildFile; fileRef = 22FC56A913CB6A4F002FD0F1 /* bitratecontrol.c */; }; + 7014533813FA7AEA00A01D86 /* opengles_display.c in Sources */ = {isa = PBXBuildFile; fileRef = 7014533513FA7AEA00A01D86 /* opengles_display.c */; }; + 7014533913FA7AEA00A01D86 /* opengles_display.h in Headers */ = {isa = PBXBuildFile; fileRef = 7014533613FA7AEA00A01D86 /* opengles_display.h */; }; + 7014533A13FA7AEA00A01D86 /* shaders.c in Sources */ = {isa = PBXBuildFile; fileRef = 7014533713FA7AEA00A01D86 /* shaders.c */; }; + 7014533C13FA7ECA00A01D86 /* zrtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 7014533B13FA7ECA00A01D86 /* zrtp.h */; }; + 7014533E13FA841E00A01D86 /* zrtp.c in Sources */ = {isa = PBXBuildFile; fileRef = 7014533D13FA841E00A01D86 /* zrtp.c */; }; + 7066FC0713E82A3600EFC6DC /* vp8.c in Sources */ = {isa = PBXBuildFile; fileRef = 7066FC0613E82A3600EFC6DC /* vp8.c */; }; + 7066FC0A13E830B800EFC6DC /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7066FC0913E830B800EFC6DC /* libvpx.a */; }; + 70E542EE13E147C7002BA2C0 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542ED13E147C7002BA2C0 /* OpenGLES.framework */; }; + 70E542F113E147CE002BA2C0 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F013E147CE002BA2C0 /* QuartzCore.framework */; }; + 70E542FA13E14816002BA2C0 /* shaders.h in Headers */ = {isa = PBXBuildFile; fileRef = 70E542F613E14816002BA2C0 /* shaders.h */; }; + 70E542FC13E14816002BA2C0 /* yuv2rgb.fs.h in Headers */ = {isa = PBXBuildFile; fileRef = 70E542F813E14816002BA2C0 /* yuv2rgb.fs.h */; }; + 70E542FD13E14816002BA2C0 /* yuv2rgb.vs.h in Headers */ = {isa = PBXBuildFile; fileRef = 70E542F913E14816002BA2C0 /* yuv2rgb.vs.h */; }; AA747D9F0F9514B9006C5449 /* liblinphone_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */; }; AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; /* End PBXBuildFile section */ +/* Begin PBXContainerItemProxy section */ + 220ED19513A8F82A00AC21E0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D2AAC07D0554694100DB518D; + remoteInfo = liblinphone; + }; +/* End PBXContainerItemProxy section */ + /* Begin PBXFileReference section */ + 2203127013A247B40049A2ED /* iosdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iosdisplay.h; sourceTree = ""; }; + 2203127113A247B40049A2ED /* iosdisplay.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iosdisplay.m; sourceTree = ""; }; + 2203127413A249F70049A2ED /* filter-template.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "filter-template.c"; sourceTree = ""; }; + 220ED19713A8F87700AC21E0 /* libspeexdsp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeexdsp.a; path = "../liblinphone-sdk/apple-darwin/lib/libspeexdsp.a"; sourceTree = ""; }; + 220ED19813A8F87700AC21E0 /* libspeex.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeex.a; path = "../liblinphone-sdk/apple-darwin/lib/libspeex.a"; sourceTree = ""; }; + 220ED19913A8F87700AC21E0 /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "../liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = ""; }; + 220ED19E13A9038F00AC21E0 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; }; + 220ED1A013A9039600AC21E0 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; + 220ED1A213A903BF00AC21E0 /* libgsm.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libgsm.a; path = "../liblinphone-sdk/apple-darwin/lib/libgsm.a"; sourceTree = ""; }; + 220ED1A413A903E100AC21E0 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = System/Library/Frameworks/AudioUnit.framework; sourceTree = SDKROOT; }; + 220ED1A613A9040700AC21E0 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + 220ED1A813A9041800AC21E0 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; + 220ED1AA13A9062500AC21E0 /* nowebcam.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nowebcam.h; sourceTree = ""; }; + 220ED1AB13A9062500AC21E0 /* nowebcam.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = nowebcam.c; sourceTree = ""; }; + 221F589913AB4EEE00D603C9 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; }; + 221F589B13AB4FC500D603C9 /* msvideo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msvideo.c; sourceTree = ""; }; + 221F589D13AB503F00D603C9 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; }; + 221F589F13AB50F800D603C9 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; + 221F58A113AB6F8000D603C9 /* pixconv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pixconv.c; sourceTree = ""; }; + 221F58A313AB708C00D603C9 /* alldescs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = alldescs.h; path = build/iphone/alldescs.h; sourceTree = ""; }; + 221F58A513AB716300D603C9 /* tonedetector.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = tonedetector.c; sourceTree = ""; }; + 221F58A613AB716300D603C9 /* jpegwriter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jpegwriter.c; sourceTree = ""; }; + 221F58A713AB716300D603C9 /* h264dec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = h264dec.c; sourceTree = ""; }; + 221F58AB13AB71A400D603C9 /* sizeconv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sizeconv.c; sourceTree = ""; }; + 221F58AD13ABA42800D603C9 /* scaler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = scaler.c; sourceTree = ""; }; + 221F58E313AF44B300D603C9 /* scaler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scaler.h; sourceTree = ""; }; 222CA5B911F6CF7600621220 /* .gitignore */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitignore; sourceTree = ""; }; 222CA5BA11F6CF7600621220 /* Makefile.am */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.am; sourceTree = ""; }; 222CA5BB11F6CF7600621220 /* Makefile.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Makefile.in; sourceTree = ""; }; @@ -206,8 +303,6 @@ 222CA5E511F6CF7600621220 /* chanadapt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = chanadapt.c; sourceTree = ""; }; 222CA5E711F6CF7600621220 /* dsptools.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dsptools.c; sourceTree = ""; }; 222CA5E811F6CF7600621220 /* dtmfgen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dtmfgen.c; sourceTree = ""; }; - 222CA5E911F6CF7600621220 /* dxfilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dxfilter.cpp; sourceTree = ""; }; - 222CA5EA11F6CF7600621220 /* dxfilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dxfilter.h; sourceTree = ""; }; 222CA5EB11F6CF7600621220 /* equalizer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = equalizer.c; sourceTree = ""; }; 222CA5EC11F6CF7600621220 /* eventqueue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = eventqueue.c; sourceTree = ""; }; 222CA5ED11F6CF7600621220 /* extdisplay.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = extdisplay.c; sourceTree = ""; }; @@ -333,7 +428,20 @@ 222CA76311F6CFB100621220 /* sipsetup.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sipsetup.c; sourceTree = ""; }; 222CA76411F6CFB100621220 /* sipsetup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sipsetup.h; sourceTree = ""; }; 2252935A12F6CA4700DD9BFB /* ec-calibrator.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "ec-calibrator.c"; path = "linphone/coreapi/ec-calibrator.c"; sourceTree = SOURCE_ROOT; }; + 2258C44013A9377B0087A596 /* swscale.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = swscale.h; sourceTree = ""; }; + 2258C44213A945520087A596 /* libswscale.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libswscale.a; path = "../liblinphone-sdk/apple-darwin/lib/libswscale.a"; sourceTree = ""; }; + 2258C44313A945520087A596 /* libavutil.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavutil.a; path = "../liblinphone-sdk/apple-darwin/lib/libavutil.a"; sourceTree = ""; }; + 2258C44413A945520087A596 /* libavcodec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavcodec.a; path = "../liblinphone-sdk/apple-darwin/lib/libavcodec.a"; sourceTree = ""; }; + 2258C44813A946890087A596 /* videostream.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = videostream.c; sourceTree = ""; }; + 2258C44913A946890087A596 /* videoenc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = videoenc.c; sourceTree = ""; }; + 2258C44A13A946890087A596 /* videodec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = videodec.c; sourceTree = ""; }; 225D3559124B1FF60008581C /* linphonecall.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = linphonecall.c; sourceTree = ""; }; + 229A614913DDFE3500090183 /* g722_decode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = g722_decode.c; sourceTree = ""; }; + 229A614A13DDFE3500090183 /* g722_encode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = g722_encode.c; sourceTree = ""; }; + 229A614B13DDFE3500090183 /* g722.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = g722.h; sourceTree = ""; }; + 229A614C13DDFE3500090183 /* msg722.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msg722.c; sourceTree = ""; }; + 229A615113DEE8A400090183 /* libx264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libx264.a; path = "../liblinphone-sdk/apple-darwin/lib/libx264.a"; sourceTree = ""; }; + 229A615213DEE8A400090183 /* libmsx264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmsx264.a; path = "../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmsx264.a"; sourceTree = ""; }; 229B9D5813043EAB00EFCD1C /* linphonecore_utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = linphonecore_utils.h; sourceTree = ""; }; 22A10B4F11F84E2D00373793 /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = ""; }; 22A10B5011F84E2D00373793 /* gsm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gsm.h; sourceTree = ""; }; @@ -343,12 +451,70 @@ 22A10B5411F84E2D00373793 /* toast.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = toast.h; sourceTree = ""; }; 22A10B5511F84E2D00373793 /* unproto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unproto.h; sourceTree = ""; }; 22A10EE711F8920F00373793 /* mswebcam.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = mswebcam.c; path = linphone/mediastreamer2/src/mswebcam.c; sourceTree = SOURCE_ROOT; }; + 22B5106813AFD37B00CD87DA /* nowebcamCIF.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; name = nowebcamCIF.jpg; path = src/nowebcamCIF.jpg; sourceTree = ""; }; + 22D15AB3139F505400C7713A /* ioscapture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ioscapture.m; sourceTree = ""; }; + 22D15AB5139F579D00C7713A /* qtcapture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = qtcapture.m; sourceTree = ""; }; + 22DD19BE13A8D7FA0018ECD4 /* mediastream.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = mediastream.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 22DD19C013A8D7FA0018ECD4 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + 22DD19C313A8D7FA0018ECD4 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + 22DD19E713A8D82C0018ECD4 /* mediastream.c */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.objc; fileEncoding = 4; path = mediastream.c; sourceTree = ""; }; + 22DD21A213A8E3310018ECD4 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + 22DD21A413A8E3310018ECD4 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainWindow.xib; sourceTree = ""; }; + 22DD21A613A8E3310018ECD4 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/mediastreamViewController.xib; sourceTree = ""; }; + 22DD21A813A8E3310018ECD4 /* mediastream-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "mediastream-Info.plist"; sourceTree = ""; }; + 22DD21A913A8E3310018ECD4 /* mediastream-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "mediastream-Prefix.pch"; sourceTree = ""; }; + 22DD21AA13A8E3310018ECD4 /* mediastreamAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamAppDelegate.h; sourceTree = ""; }; + 22DD21AB13A8E3310018ECD4 /* mediastreamAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamAppDelegate.m; sourceTree = ""; }; + 22DD21AC13A8E3310018ECD4 /* mediastreamViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamViewController.h; sourceTree = ""; }; + 22DD21AD13A8E3310018ECD4 /* mediastreamViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamViewController.m; sourceTree = ""; }; + 22FC56A713CB69FA002FD0F1 /* qualityindicator.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = qualityindicator.c; sourceTree = ""; }; + 22FC56A913CB6A4F002FD0F1 /* bitratecontrol.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = bitratecontrol.c; sourceTree = ""; }; + 7014533513FA7AEA00A01D86 /* opengles_display.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = opengles_display.c; sourceTree = ""; }; + 7014533613FA7AEA00A01D86 /* opengles_display.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = opengles_display.h; sourceTree = ""; }; + 7014533713FA7AEA00A01D86 /* shaders.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = shaders.c; sourceTree = ""; }; + 7014533B13FA7ECA00A01D86 /* zrtp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zrtp.h; sourceTree = ""; }; + 7014533D13FA841E00A01D86 /* zrtp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zrtp.c; sourceTree = ""; }; + 7066FC0613E82A3600EFC6DC /* vp8.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = vp8.c; sourceTree = ""; }; + 7066FC0913E830B800EFC6DC /* libvpx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvpx.a; path = "../liblinphone-sdk/apple-darwin/lib/libvpx.a"; sourceTree = ""; }; + 70E542ED13E147C7002BA2C0 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; + 70E542F013E147CE002BA2C0 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 70E542F613E14816002BA2C0 /* shaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shaders.h; sourceTree = ""; }; + 70E542F813E14816002BA2C0 /* yuv2rgb.fs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yuv2rgb.fs.h; sourceTree = ""; }; + 70E542F913E14816002BA2C0 /* yuv2rgb.vs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yuv2rgb.vs.h; sourceTree = ""; }; AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = liblinphone_Prefix.pch; sourceTree = SOURCE_ROOT; }; AACBBE490F95108600F1A2B1 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; D2AAC07E0554694100DB518D /* liblinphone.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblinphone.a; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 22DD19BB13A8D7FA0018ECD4 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 7066FC0A13E830B800EFC6DC /* libvpx.a in Frameworks */, + 70E542F113E147CE002BA2C0 /* QuartzCore.framework in Frameworks */, + 70E542EE13E147C7002BA2C0 /* OpenGLES.framework in Frameworks */, + 229A615313DEE8A500090183 /* libx264.a in Frameworks */, + 229A615413DEE8A500090183 /* libmsx264.a in Frameworks */, + 221F58A013AB50F800D603C9 /* CoreMedia.framework in Frameworks */, + 2258C44513A945520087A596 /* libswscale.a in Frameworks */, + 2258C44613A945520087A596 /* libavutil.a in Frameworks */, + 2258C44713A945520087A596 /* libavcodec.a in Frameworks */, + 220ED1A913A9041800AC21E0 /* AVFoundation.framework in Frameworks */, + 220ED1A713A9040700AC21E0 /* AudioToolbox.framework in Frameworks */, + 220ED1A313A903BF00AC21E0 /* libgsm.a in Frameworks */, + 220ED19F13A9038F00AC21E0 /* CoreVideo.framework in Frameworks */, + 220ED1A113A9039600AC21E0 /* CoreAudio.framework in Frameworks */, + 220ED19D13A9033F00AC21E0 /* liblinphone.a in Frameworks */, + 220ED19A13A8F87700AC21E0 /* libspeexdsp.a in Frameworks */, + 220ED19B13A8F87700AC21E0 /* libspeex.a in Frameworks */, + 220ED19C13A8F87700AC21E0 /* libortp.a in Frameworks */, + 22DD19C113A8D7FA0018ECD4 /* UIKit.framework in Frameworks */, + 22DD19C213A8D7FA0018ECD4 /* Foundation.framework in Frameworks */, + 22DD19C413A8D7FA0018ECD4 /* CoreGraphics.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2AAC07C0554694100DB518D /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -363,7 +529,7 @@ 034768DFFF38A50411DB9C8B /* Products */ = { isa = PBXGroup; children = ( - D2AAC07E0554694100DB518D /* liblinphone.a */, + 22DD19BE13A8D7FA0018ECD4 /* mediastream.app */, ); name = Products; sourceTree = ""; @@ -371,6 +537,27 @@ 0867D691FE84028FC02AAC07 /* liblinphone */ = { isa = PBXGroup; children = ( + 7066FC0913E830B800EFC6DC /* libvpx.a */, + 70E542F013E147CE002BA2C0 /* QuartzCore.framework */, + 70E542ED13E147C7002BA2C0 /* OpenGLES.framework */, + 229A615113DEE8A400090183 /* libx264.a */, + 229A615213DEE8A400090183 /* libmsx264.a */, + 221F589F13AB50F800D603C9 /* CoreMedia.framework */, + 221F589D13AB503F00D603C9 /* CoreVideo.framework */, + 221F589913AB4EEE00D603C9 /* CoreFoundation.framework */, + 2258C44213A945520087A596 /* libswscale.a */, + 2258C44313A945520087A596 /* libavutil.a */, + 2258C44413A945520087A596 /* libavcodec.a */, + 220ED1A813A9041800AC21E0 /* AVFoundation.framework */, + 220ED1A613A9040700AC21E0 /* AudioToolbox.framework */, + 220ED1A413A903E100AC21E0 /* AudioUnit.framework */, + 220ED1A213A903BF00AC21E0 /* libgsm.a */, + 220ED1A013A9039600AC21E0 /* CoreAudio.framework */, + 220ED19E13A9038F00AC21E0 /* CoreVideo.framework */, + D2AAC07E0554694100DB518D /* liblinphone.a */, + 220ED19713A8F87700AC21E0 /* libspeexdsp.a */, + 220ED19813A8F87700AC21E0 /* libspeex.a */, + 220ED19913A8F87700AC21E0 /* libortp.a */, 22A10B4C11F84DE300373793 /* externals */, 222CA4D011F6CF2D00621220 /* linphone */, 222CA4CF11F6CF2000621220 /* mediastreamer2 */, @@ -387,6 +574,8 @@ isa = PBXGroup; children = ( AACBBE490F95108600F1A2B1 /* Foundation.framework */, + 22DD19C013A8D7FA0018ECD4 /* UIKit.framework */, + 22DD19C313A8D7FA0018ECD4 /* CoreGraphics.framework */, ); name = Frameworks; sourceTree = ""; @@ -411,6 +600,9 @@ 222CA4CF11F6CF2000621220 /* mediastreamer2 */ = { isa = PBXGroup; children = ( + 22B5106813AFD37B00CD87DA /* nowebcamCIF.jpg */, + 221F58A313AB708C00D603C9 /* alldescs.h */, + 22DD19E013A8D82C0018ECD4 /* tests */, 222CA5B811F6CF7600621220 /* include */, 222CA5DC11F6CF7600621220 /* src */, ); @@ -478,6 +670,34 @@ 222CA5DC11F6CF7600621220 /* src */ = { isa = PBXGroup; children = ( + 7014533513FA7AEA00A01D86 /* opengles_display.c */, + 7014533613FA7AEA00A01D86 /* opengles_display.h */, + 7014533713FA7AEA00A01D86 /* shaders.c */, + 7066FC0613E82A3600EFC6DC /* vp8.c */, + 70E542F613E14816002BA2C0 /* shaders.h */, + 70E542F813E14816002BA2C0 /* yuv2rgb.fs.h */, + 70E542F913E14816002BA2C0 /* yuv2rgb.vs.h */, + 229A614913DDFE3500090183 /* g722_decode.c */, + 229A614A13DDFE3500090183 /* g722_encode.c */, + 229A614B13DDFE3500090183 /* g722.h */, + 229A614C13DDFE3500090183 /* msg722.c */, + 22FC56A913CB6A4F002FD0F1 /* bitratecontrol.c */, + 22FC56A713CB69FA002FD0F1 /* qualityindicator.c */, + 221F58AD13ABA42800D603C9 /* scaler.c */, + 221F58AB13AB71A400D603C9 /* sizeconv.c */, + 221F58A513AB716300D603C9 /* tonedetector.c */, + 221F58A613AB716300D603C9 /* jpegwriter.c */, + 221F58A713AB716300D603C9 /* h264dec.c */, + 221F58A113AB6F8000D603C9 /* pixconv.c */, + 221F589B13AB4FC500D603C9 /* msvideo.c */, + 2258C44813A946890087A596 /* videostream.c */, + 2258C44913A946890087A596 /* videoenc.c */, + 2258C44A13A946890087A596 /* videodec.c */, + 2258C44013A9377B0087A596 /* swscale.h */, + 220ED1AA13A9062500AC21E0 /* nowebcam.h */, + 220ED1AB13A9062500AC21E0 /* nowebcam.c */, + 22D15AB5139F579D00C7713A /* qtcapture.m */, + 22D15AB3139F505400C7713A /* ioscapture.m */, 2252935A12F6CA4700DD9BFB /* ec-calibrator.c */, 222CA5DD11F6CF7600621220 /* .gitignore */, 222CA5DE11F6CF7600621220 /* _kiss_fft_guts.h */, @@ -487,8 +707,6 @@ 222CA5E511F6CF7600621220 /* chanadapt.c */, 222CA5E711F6CF7600621220 /* dsptools.c */, 222CA5E811F6CF7600621220 /* dtmfgen.c */, - 222CA5E911F6CF7600621220 /* dxfilter.cpp */, - 222CA5EA11F6CF7600621220 /* dxfilter.h */, 222CA5EB11F6CF7600621220 /* equalizer.c */, 222CA5EC11F6CF7600621220 /* eventqueue.c */, 222CA5ED11F6CF7600621220 /* extdisplay.c */, @@ -526,6 +744,10 @@ 222CA62311F6CF7600621220 /* ulaw.c */, 222CA62411F6CF7600621220 /* vfw-missing.h */, 222CA62911F6CF7600621220 /* void.c */, + 2203127013A247B40049A2ED /* iosdisplay.h */, + 2203127113A247B40049A2ED /* iosdisplay.m */, + 2203127413A249F70049A2ED /* filter-template.c */, + 221F58E313AF44B300D603C9 /* scaler.h */, ); path = src; sourceTree = ""; @@ -544,6 +766,7 @@ 222CA6A311F6CF9F00621220 /* ortp */ = { isa = PBXGroup; children = ( + 7014533B13FA7ECA00A01D86 /* zrtp.h */, 222CA6A411F6CF9F00621220 /* .gitignore */, 222CA6A511F6CF9F00621220 /* b64.h */, 222CA6A611F6CF9F00621220 /* event.h */, @@ -569,6 +792,7 @@ 222CA6B611F6CF9F00621220 /* src */ = { isa = PBXGroup; children = ( + 7014533D13FA841E00A01D86 /* zrtp.c */, 222CA6B711F6CF9F00621220 /* .gitignore */, 222CA6B811F6CF9F00621220 /* avprofile.c */, 222CA6B911F6CF9F00621220 /* b64.c */, @@ -688,6 +912,31 @@ path = externals/gsm/inc; sourceTree = ""; }; + 22DD19E013A8D82C0018ECD4 /* tests */ = { + isa = PBXGroup; + children = ( + 22DD21A013A8E3310018ECD4 /* ios */, + 22DD19E713A8D82C0018ECD4 /* mediastream.c */, + ); + path = tests; + sourceTree = ""; + }; + 22DD21A013A8E3310018ECD4 /* ios */ = { + isa = PBXGroup; + children = ( + 22DD21A113A8E3310018ECD4 /* InfoPlist.strings */, + 22DD21A313A8E3310018ECD4 /* MainWindow.xib */, + 22DD21A513A8E3310018ECD4 /* mediastreamViewController.xib */, + 22DD21A813A8E3310018ECD4 /* mediastream-Info.plist */, + 22DD21A913A8E3310018ECD4 /* mediastream-Prefix.pch */, + 22DD21AA13A8E3310018ECD4 /* mediastreamAppDelegate.h */, + 22DD21AB13A8E3310018ECD4 /* mediastreamAppDelegate.m */, + 22DD21AC13A8E3310018ECD4 /* mediastreamViewController.h */, + 22DD21AD13A8E3310018ECD4 /* mediastreamViewController.m */, + ); + path = ios; + sourceTree = ""; + }; 32C88DFF0371C24200C91783 /* Other Sources */ = { isa = PBXGroup; children = ( @@ -733,7 +982,6 @@ 222CA64C11F6CF7600621220 /* rfc3984.h in Headers */, 222CA64D11F6CF7600621220 /* waveheader.h in Headers */, 222CA64E11F6CF7600621220 /* _kiss_fft_guts.h in Headers */, - 222CA65A11F6CF7600621220 /* dxfilter.h in Headers */, 222CA65E11F6CF7600621220 /* ffmpeg-priv.h in Headers */, 222CA65F11F6CF7600621220 /* g711common.h in Headers */, 222CA66511F6CF7600621220 /* kiss_fft.h in Headers */, @@ -776,12 +1024,41 @@ 22A10B5A11F84E2D00373793 /* toast.h in Headers */, 22A10B5B11F84E2D00373793 /* unproto.h in Headers */, 229B9D5913043EAB00EFCD1C /* linphonecore_utils.h in Headers */, + 2203127213A247B50049A2ED /* iosdisplay.h in Headers */, + 220ED1AC13A9062600AC21E0 /* nowebcam.h in Headers */, + 2258C44113A9377B0087A596 /* swscale.h in Headers */, + 221F58A413AB708C00D603C9 /* alldescs.h in Headers */, + 221F58E413AF44B300D603C9 /* scaler.h in Headers */, + 229A614F13DDFE3500090183 /* g722.h in Headers */, + 70E542FA13E14816002BA2C0 /* shaders.h in Headers */, + 70E542FC13E14816002BA2C0 /* yuv2rgb.fs.h in Headers */, + 70E542FD13E14816002BA2C0 /* yuv2rgb.vs.h in Headers */, + 7014533913FA7AEA00A01D86 /* opengles_display.h in Headers */, + 7014533C13FA7ECA00A01D86 /* zrtp.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ + 22DD19BD13A8D7FA0018ECD4 /* mediastream */ = { + isa = PBXNativeTarget; + buildConfigurationList = 22DD19DA13A8D7FA0018ECD4 /* Build configuration list for PBXNativeTarget "mediastream" */; + buildPhases = ( + 22DD19BA13A8D7FA0018ECD4 /* Sources */, + 22DD19BB13A8D7FA0018ECD4 /* Frameworks */, + 22DD19BC13A8D7FA0018ECD4 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 220ED19613A8F82A00AC21E0 /* PBXTargetDependency */, + ); + name = mediastream; + productName = mediastream; + productReference = 22DD19BE13A8D7FA0018ECD4 /* mediastream.app */; + productType = "com.apple.product-type.application"; + }; D2AAC07D0554694100DB518D /* liblinphone */ = { isa = PBXNativeTarget; buildConfigurationList = 1DEB921E08733DC00010E9CD /* Build configuration list for PBXNativeTarget "liblinphone" */; @@ -813,6 +1090,7 @@ Japanese, French, German, + en, ); mainGroup = 0867D691FE84028FC02AAC07 /* liblinphone */; productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; @@ -820,11 +1098,37 @@ projectRoot = ""; targets = ( D2AAC07D0554694100DB518D /* liblinphone */, + 22DD19BD13A8D7FA0018ECD4 /* mediastream */, ); }; /* End PBXProject section */ +/* Begin PBXResourcesBuildPhase section */ + 22DD19BC13A8D7FA0018ECD4 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 22DD21AE13A8E3310018ECD4 /* InfoPlist.strings in Resources */, + 22DD21AF13A8E3310018ECD4 /* MainWindow.xib in Resources */, + 22DD21B013A8E3310018ECD4 /* mediastreamViewController.xib in Resources */, + 22DD21B213A8E3310018ECD4 /* mediastream-Info.plist in Resources */, + 22B5106913B060E100CD87DA /* nowebcamCIF.jpg in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ + 22DD19BA13A8D7FA0018ECD4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 22DD19F713A8DFA70018ECD4 /* mediastream.c in Sources */, + 22DD21B313A8E3310018ECD4 /* mediastreamAppDelegate.m in Sources */, + 22DD21B413A8E3310018ECD4 /* mediastreamViewController.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2AAC07B0554694100DB518D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -835,7 +1139,6 @@ 222CA65511F6CF7600621220 /* chanadapt.c in Sources */, 222CA65711F6CF7600621220 /* dsptools.c in Sources */, 222CA65811F6CF7600621220 /* dtmfgen.c in Sources */, - 222CA65911F6CF7600621220 /* dxfilter.cpp in Sources */, 222CA65B11F6CF7600621220 /* equalizer.c in Sources */, 222CA65C11F6CF7600621220 /* eventqueue.c in Sources */, 222CA65D11F6CF7600621220 /* extdisplay.c in Sources */, @@ -909,11 +1212,69 @@ 22A10EE811F8920F00373793 /* mswebcam.c in Sources */, 225D355A124B1FF60008581C /* linphonecall.c in Sources */, 2252935B12F6CA4700DD9BFB /* ec-calibrator.c in Sources */, + 2203126F139F61990049A2ED /* ioscapture.m in Sources */, + 2203127313A247B50049A2ED /* iosdisplay.m in Sources */, + 2203127613A249F70049A2ED /* filter-template.c in Sources */, + 220ED1AD13A9062600AC21E0 /* nowebcam.c in Sources */, + 2258C44B13A946890087A596 /* videostream.c in Sources */, + 2258C44C13A946890087A596 /* videoenc.c in Sources */, + 2258C44D13A946890087A596 /* videodec.c in Sources */, + 221F589C13AB4FC500D603C9 /* msvideo.c in Sources */, + 221F58A213AB6F8100D603C9 /* pixconv.c in Sources */, + 221F58A813AB716400D603C9 /* tonedetector.c in Sources */, + 221F58A913AB716400D603C9 /* jpegwriter.c in Sources */, + 221F58AA13AB716400D603C9 /* h264dec.c in Sources */, + 221F58AC13AB71A400D603C9 /* sizeconv.c in Sources */, + 221F58AE13ABA42800D603C9 /* scaler.c in Sources */, + 22FC56A813CB69FB002FD0F1 /* qualityindicator.c in Sources */, + 22FC56AA13CB6A4F002FD0F1 /* bitratecontrol.c in Sources */, + 229A614D13DDFE3500090183 /* g722_decode.c in Sources */, + 229A614E13DDFE3500090183 /* g722_encode.c in Sources */, + 229A615013DDFE3500090183 /* msg722.c in Sources */, + 7066FC0713E82A3600EFC6DC /* vp8.c in Sources */, + 7014533813FA7AEA00A01D86 /* opengles_display.c in Sources */, + 7014533A13FA7AEA00A01D86 /* shaders.c in Sources */, + 7014533E13FA841E00A01D86 /* zrtp.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + 220ED19613A8F82A00AC21E0 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = D2AAC07D0554694100DB518D /* liblinphone */; + targetProxy = 220ED19513A8F82A00AC21E0 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 22DD21A113A8E3310018ECD4 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 22DD21A213A8E3310018ECD4 /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 22DD21A313A8E3310018ECD4 /* MainWindow.xib */ = { + isa = PBXVariantGroup; + children = ( + 22DD21A413A8E3310018ECD4 /* en */, + ); + name = MainWindow.xib; + sourceTree = ""; + }; + 22DD21A513A8E3310018ECD4 /* mediastreamViewController.xib */ = { + isa = PBXVariantGroup; + children = ( + 22DD21A613A8E3310018ECD4 /* en */, + ); + name = mediastreamViewController.xib; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + /* Begin XCBuildConfiguration section */ 1DEB921F08733DC00010E9CD /* Debug */ = { isa = XCBuildConfiguration; @@ -928,6 +1289,41 @@ GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + ); + GCC_UNROLL_LOOPS = NO; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + ); INSTALL_PATH = /usr/local/lib; PRODUCT_NAME = linphone; }; @@ -942,6 +1338,41 @@ GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + ); + GCC_UNROLL_LOOPS = NO; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + ); INSTALL_PATH = /usr/local/lib; PRODUCT_NAME = linphone; }; @@ -1012,6 +1443,7 @@ HAVE_EXOSIP_GET_SOCKET, MS2_INTERNAL, ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ( @@ -1030,6 +1462,240 @@ }; name = Release; }; + 229A615513DF03B200090183 /* DistributionAdhoc */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __MACIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + ); + OTHER_LDFLAGS = "-ObjC"; + PREBINDING = NO; + SDKROOT = iphoneos; + VALID_ARCHS = "armv6 armv7 i386"; + }; + name = DistributionAdhoc; + }; + 229A615613DF03B200090183 /* DistributionAdhoc */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + DSTROOT = /tmp/liblinphone.dst; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = liblinphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + TARGET_OS_IPHONE, + ); + GCC_UNROLL_LOOPS = NO; + HEADER_SEARCH_PATHS = ( + linphone/mediastreamer2/build/iphone, + linphone/mediastreamer2/include, + linphone/oRTP/include, + externals/gsm/, + externals/osip/include, + externals/exosip/include, + externals/speex/include, + externals/ffmpeg, + external/ffmpeg/swscale, + "../liblinphone-sdk/apple-darwin/include", + ); + INSTALL_PATH = /usr/local/lib; + PRODUCT_NAME = linphone; + }; + name = DistributionAdhoc; + }; + 229A615713DF03B200090183 /* DistributionAdhoc */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "linphone/mediastreamer2/tests/ios/mediastream-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + HAVE_X264, + "TARGET_OS_IPHONE=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_VERSION = com.apple.compilers.llvmgcc42; + INFOPLIST_FILE = "linphone/mediastreamer2/tests/ios/mediastream-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", + ); + OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; + PRODUCT_NAME = "$(TARGET_NAME)"; + VALIDATE_PRODUCT = YES; + WRAPPER_EXTENSION = app; + }; + name = DistributionAdhoc; + }; + 22DD19DB13A8D7FA0018ECD4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "linphone/mediastreamer2/tests/ios/mediastream-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + HAVE_X264, + "TARGET_OS_IPHONE=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_VERSION = com.apple.compilers.llvmgcc42; + INFOPLIST_FILE = "linphone/mediastreamer2/tests/ios/mediastream-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", + ); + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + 22DD19DC13A8D7FA0018ECD4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "linphone/mediastreamer2/tests/ios/mediastream-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, + MS2_INTERNAL, + VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, + HAVE_X264, + "TARGET_OS_IPHONE=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_VERSION = com.apple.compilers.llvmgcc42; + INFOPLIST_FILE = "linphone/mediastreamer2/tests/ios/mediastream-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", + "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", + ); + OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; + PRODUCT_NAME = "$(TARGET_NAME)"; + VALIDATE_PRODUCT = YES; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -1038,6 +1704,7 @@ buildConfigurations = ( 1DEB921F08733DC00010E9CD /* Debug */, 1DEB922008733DC00010E9CD /* Release */, + 229A615613DF03B200090183 /* DistributionAdhoc */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -1047,6 +1714,17 @@ buildConfigurations = ( 1DEB922308733DC00010E9CD /* Debug */, 1DEB922408733DC00010E9CD /* Release */, + 229A615513DF03B200090183 /* DistributionAdhoc */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 22DD19DA13A8D7FA0018ECD4 /* Build configuration list for PBXNativeTarget "mediastream" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 22DD19DB13A8D7FA0018ECD4 /* Debug */, + 22DD19DC13A8D7FA0018ECD4 /* Release */, + 229A615713DF03B200090183 /* DistributionAdhoc */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/submodules/linphone b/submodules/linphone index 20709fc5f..ba992227d 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 20709fc5f1b06c04f2311e1f6ec4ff45f76f4de8 +Subproject commit ba992227d5ec5521e4fb33a724067560fff24e65 From 95d7808e58d7ef5c235ac9f3456517e254851dd0 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Fri, 14 Oct 2011 17:25:02 +0200 Subject: [PATCH 18/18] update osip refference --- submodules/externals/osip | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/externals/osip b/submodules/externals/osip index 7dbd4b443..9e8c64cff 160000 --- a/submodules/externals/osip +++ b/submodules/externals/osip @@ -1 +1 @@ -Subproject commit 7dbd4b443eed178480b76498173e7bffc7e73d00 +Subproject commit 9e8c64cff496d2794fe352a6a3907e0e36988931