From fd776f36f01f5e6b6e446ce599fce001b7b17cf3 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Wed, 12 Feb 2014 14:52:58 +0100 Subject: [PATCH] Build all autotools projects out-of-tree and share download directories between build architectures. --- builders/linphone/build.sh.cmake | 5 ---- builders/linphone/configure.sh.cmake | 6 ++--- builders/ms2.cmake | 23 ++++++++++++++++ builders/ms2/build.sh.cmake | 18 +++++++++++++ builders/ms2/configure.sh.cmake | 22 +++++++++++++++ builders/ms2/install.sh.cmake | 18 +++++++++++++ builders/opus/build.sh.cmake | 5 ---- builders/opus/configure.sh.cmake | 6 ++--- builders/ortp.cmake | 23 ++++++++++++++++ builders/ortp/build.sh.cmake | 18 +++++++++++++ builders/ortp/configure.sh.cmake | 22 +++++++++++++++ builders/ortp/install.sh.cmake | 18 +++++++++++++ builders/xml2/build.sh.cmake | 5 ---- builders/xml2/configure.sh.cmake | 4 +-- cmake/LinphoneCMakeBuilder.cmake | 40 +++++++++++++++++++++------- configs/config-bb10.cmake | 8 +++++- configs/config-default.cmake | 18 +++++++++++-- configs/config-desktop.cmake | 6 +++++ 18 files changed, 230 insertions(+), 35 deletions(-) create mode 100644 builders/ms2.cmake create mode 100755 builders/ms2/build.sh.cmake create mode 100755 builders/ms2/configure.sh.cmake create mode 100755 builders/ms2/install.sh.cmake create mode 100644 builders/ortp.cmake create mode 100755 builders/ortp/build.sh.cmake create mode 100755 builders/ortp/configure.sh.cmake create mode 100755 builders/ortp/install.sh.cmake diff --git a/builders/linphone/build.sh.cmake b/builders/linphone/build.sh.cmake index 544d095..a44a714 100755 --- a/builders/linphone/build.sh.cmake +++ b/builders/linphone/build.sh.cmake @@ -15,9 +15,4 @@ export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_linphone_EXTRA_LDFLAGS@ export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" -if [ "x@LINPHONE_BUILDER_AUTOTOOLS_ONCE@" = "xno" ] && [ -f config.h ] -then - make clean -fi - make V=@AUTOTOOLS_VERBOSE_MAKEFILE@ diff --git a/builders/linphone/configure.sh.cmake b/builders/linphone/configure.sh.cmake index 9d44cef..97883fa 100755 --- a/builders/linphone/configure.sh.cmake +++ b/builders/linphone/configure.sh.cmake @@ -15,8 +15,8 @@ export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_linphone_EXTRA_LDFLAGS@ export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" -if [ "x@LINPHONE_BUILDER_AUTOTOOLS_ONCE@" = "xno" ] || [ ! -f config.h ] +if [ ! -f config.h ] then - ./autogen.sh - ./configure "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_linphone_CONFIGURE_OPTIONS@ + @ep_source@/autogen.sh + @ep_source@/configure "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_linphone_CONFIGURE_OPTIONS@ fi diff --git a/builders/ms2.cmake b/builders/ms2.cmake new file mode 100644 index 0000000..8ff9864 --- /dev/null +++ b/builders/ms2.cmake @@ -0,0 +1,23 @@ +############################################################################ +# ms2.cmake +# Copyright (C) 2014 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. +# +############################################################################ + +linphone_builder_add_autotools_project(ms2) diff --git a/builders/ms2/build.sh.cmake b/builders/ms2/build.sh.cmake new file mode 100755 index 0000000..be3c82d --- /dev/null +++ b/builders/ms2/build.sh.cmake @@ -0,0 +1,18 @@ +#!/bin/sh + +export CC=@LINPHONE_BUILDER_TOOLCHAIN_CC@ +export CXX=@LINPHONE_BUILDER_TOOLCHAIN_CXX@ +export LD=@LINPHONE_BUILDER_TOOLCHAIN_LD@ +export AR=@LINPHONE_BUILDER_TOOLCHAIN_AR@ +export RANLIB=@LINPHONE_BUILDER_TOOLCHAIN_RANLIB@ +export STRIP=@LINPHONE_BUILDER_TOOLCHAIN_STRIP@ +export NM=@LINPHONE_BUILDER_TOOLCHAIN_NM@ + +export CPPFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CPPFLAGS@ @EP_ms2_EXTRA_CPPFLAGS@" +export CFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CFLAGS@ @EP_ms2_EXTRA_CFLAGS@" +export CXXFLAGS="@LINPHONE_BUILD_TOOLCHAIN_CXXFLAGS@ @EP_ms2_EXTRA_CXXFLAGS@" +export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_ms2_EXTRA_LDFLAGS@" + +export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" + +make V=@AUTOTOOLS_VERBOSE_MAKEFILE@ diff --git a/builders/ms2/configure.sh.cmake b/builders/ms2/configure.sh.cmake new file mode 100755 index 0000000..9c42c5e --- /dev/null +++ b/builders/ms2/configure.sh.cmake @@ -0,0 +1,22 @@ +#!/bin/sh + +export CC=@LINPHONE_BUILDER_TOOLCHAIN_CC@ +export CXX=@LINPHONE_BUILDER_TOOLCHAIN_CXX@ +export LD=@LINPHONE_BUILDER_TOOLCHAIN_LD@ +export AR=@LINPHONE_BUILDER_TOOLCHAIN_AR@ +export RANLIB=@LINPHONE_BUILDER_TOOLCHAIN_RANLIB@ +export STRIP=@LINPHONE_BUILDER_TOOLCHAIN_STRIP@ +export NM=@LINPHONE_BUILDER_TOOLCHAIN_NM@ + +export CPPFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CPPFLAGS@ @EP_ms2_EXTRA_CPPFLAGS@" +export CFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CFLAGS@ @EP_ms2_EXTRA_CFLAGS@" +export CXXFLAGS="@LINPHONE_BUILD_TOOLCHAIN_CXXFLAGS@ @EP_ms2_EXTRA_CXXFLAGS@" +export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_ms2_EXTRA_LDFLAGS@" + +export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" + +if [ ! -f mediastreamer-config.h ] +then + @ep_source@/autogen.sh + @ep_source@/configure "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_ms2_CONFIGURE_OPTIONS@ +fi diff --git a/builders/ms2/install.sh.cmake b/builders/ms2/install.sh.cmake new file mode 100755 index 0000000..5281fd6 --- /dev/null +++ b/builders/ms2/install.sh.cmake @@ -0,0 +1,18 @@ +#!/bin/sh + +export CC=@LINPHONE_BUILDER_TOOLCHAIN_CC@ +export CXX=@LINPHONE_BUILDER_TOOLCHAIN_CXX@ +export LD=@LINPHONE_BUILDER_TOOLCHAIN_LD@ +export AR=@LINPHONE_BUILDER_TOOLCHAIN_AR@ +export RANLIB=@LINPHONE_BUILDER_TOOLCHAIN_RANLIB@ +export STRIP=@LINPHONE_BUILDER_TOOLCHAIN_STRIP@ +export NM=@LINPHONE_BUILDER_TOOLCHAIN_NM@ + +export CPPFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CPPFLAGS@ @EP_ms2_EXTRA_CPPFLAGS@" +export CFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CFLAGS@ @EP_ms2_EXTRA_CFLAGS@" +export CXXFLAGS="@LINPHONE_BUILD_TOOLCHAIN_CXXFLAGS@ @EP_ms2_EXTRA_CXXFLAGS@" +export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_ms2_EXTRA_LDFLAGS@" + +export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" + +make V=@CMAKE_VERBOSE_MAKEFILE@ install diff --git a/builders/opus/build.sh.cmake b/builders/opus/build.sh.cmake index 000259c..72b51bf 100755 --- a/builders/opus/build.sh.cmake +++ b/builders/opus/build.sh.cmake @@ -15,9 +15,4 @@ export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_opus_EXTRA_LDFLAGS@" export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" -if [ "x@LINPHONE_BUILDER_AUTOTOOLS_ONCE@" = "xno" ] && [ -f config.h ] -then - make clean -fi - make V=@AUTOTOOLS_VERBOSE_MAKEFILE@ diff --git a/builders/opus/configure.sh.cmake b/builders/opus/configure.sh.cmake index b994e9e..80b7029 100755 --- a/builders/opus/configure.sh.cmake +++ b/builders/opus/configure.sh.cmake @@ -15,8 +15,8 @@ export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_opus_EXTRA_LDFLAGS@" export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" -if [ "x@LINPHONE_BUILDER_AUTOTOOLS_ONCE@" = "xno" ] || [ ! -f config.h ] +if [ ! -f config.h ] then - ./autogen.sh - ./configure "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_opus_CONFIGURE_OPTIONS@ + @ep_source@/autogen.sh + @ep_source@/configure "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_opus_CONFIGURE_OPTIONS@ fi diff --git a/builders/ortp.cmake b/builders/ortp.cmake new file mode 100644 index 0000000..7bc2800 --- /dev/null +++ b/builders/ortp.cmake @@ -0,0 +1,23 @@ +############################################################################ +# ortp.cmake +# Copyright (C) 2014 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. +# +############################################################################ + +linphone_builder_add_autotools_project(ortp) diff --git a/builders/ortp/build.sh.cmake b/builders/ortp/build.sh.cmake new file mode 100755 index 0000000..d4788d9 --- /dev/null +++ b/builders/ortp/build.sh.cmake @@ -0,0 +1,18 @@ +#!/bin/sh + +export CC=@LINPHONE_BUILDER_TOOLCHAIN_CC@ +export CXX=@LINPHONE_BUILDER_TOOLCHAIN_CXX@ +export LD=@LINPHONE_BUILDER_TOOLCHAIN_LD@ +export AR=@LINPHONE_BUILDER_TOOLCHAIN_AR@ +export RANLIB=@LINPHONE_BUILDER_TOOLCHAIN_RANLIB@ +export STRIP=@LINPHONE_BUILDER_TOOLCHAIN_STRIP@ +export NM=@LINPHONE_BUILDER_TOOLCHAIN_NM@ + +export CPPFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CPPFLAGS@ @EP_ortp_EXTRA_CPPFLAGS@" +export CFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CFLAGS@ @EP_ortp_EXTRA_CFLAGS@" +export CXXFLAGS="@LINPHONE_BUILD_TOOLCHAIN_CXXFLAGS@ @EP_ortp_EXTRA_CXXFLAGS@" +export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_ortp_EXTRA_LDFLAGS@" + +export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" + +make V=@AUTOTOOLS_VERBOSE_MAKEFILE@ diff --git a/builders/ortp/configure.sh.cmake b/builders/ortp/configure.sh.cmake new file mode 100755 index 0000000..101bebf --- /dev/null +++ b/builders/ortp/configure.sh.cmake @@ -0,0 +1,22 @@ +#!/bin/sh + +export CC=@LINPHONE_BUILDER_TOOLCHAIN_CC@ +export CXX=@LINPHONE_BUILDER_TOOLCHAIN_CXX@ +export LD=@LINPHONE_BUILDER_TOOLCHAIN_LD@ +export AR=@LINPHONE_BUILDER_TOOLCHAIN_AR@ +export RANLIB=@LINPHONE_BUILDER_TOOLCHAIN_RANLIB@ +export STRIP=@LINPHONE_BUILDER_TOOLCHAIN_STRIP@ +export NM=@LINPHONE_BUILDER_TOOLCHAIN_NM@ + +export CPPFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CPPFLAGS@ @EP_ortp_EXTRA_CPPFLAGS@" +export CFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CFLAGS@ @EP_ortp_EXTRA_CFLAGS@" +export CXXFLAGS="@LINPHONE_BUILD_TOOLCHAIN_CXXFLAGS@ @EP_ortp_EXTRA_CXXFLAGS@" +export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_ortp_EXTRA_LDFLAGS@" + +export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" + +if [ ! -f ortp-config.h ] +then + @ep_source@/autogen.sh + @ep_source@/configure "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_ortp_CONFIGURE_OPTIONS@ +fi diff --git a/builders/ortp/install.sh.cmake b/builders/ortp/install.sh.cmake new file mode 100755 index 0000000..d76d460 --- /dev/null +++ b/builders/ortp/install.sh.cmake @@ -0,0 +1,18 @@ +#!/bin/sh + +export CC=@LINPHONE_BUILDER_TOOLCHAIN_CC@ +export CXX=@LINPHONE_BUILDER_TOOLCHAIN_CXX@ +export LD=@LINPHONE_BUILDER_TOOLCHAIN_LD@ +export AR=@LINPHONE_BUILDER_TOOLCHAIN_AR@ +export RANLIB=@LINPHONE_BUILDER_TOOLCHAIN_RANLIB@ +export STRIP=@LINPHONE_BUILDER_TOOLCHAIN_STRIP@ +export NM=@LINPHONE_BUILDER_TOOLCHAIN_NM@ + +export CPPFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CPPFLAGS@ @EP_ortp_EXTRA_CPPFLAGS@" +export CFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_CFLAGS@ @EP_ortp_EXTRA_CFLAGS@" +export CXXFLAGS="@LINPHONE_BUILD_TOOLCHAIN_CXXFLAGS@ @EP_ortp_EXTRA_CXXFLAGS@" +export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_ortp_EXTRA_LDFLAGS@" + +export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" + +make V=@CMAKE_VERBOSE_MAKEFILE@ install diff --git a/builders/xml2/build.sh.cmake b/builders/xml2/build.sh.cmake index 3fa8996..cb38c92 100755 --- a/builders/xml2/build.sh.cmake +++ b/builders/xml2/build.sh.cmake @@ -15,9 +15,4 @@ export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_xml2_EXTRA_LDFLAGS@" export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" -if [ "x@LINPHONE_BUILDER_AUTOTOOLS_ONCE@" = "xno" ] && [ -f config.h ] -then - make clean -fi - make V=@AUTOTOOLS_VERBOSE_MAKEFILE@ diff --git a/builders/xml2/configure.sh.cmake b/builders/xml2/configure.sh.cmake index c01c071..fcfffa1 100755 --- a/builders/xml2/configure.sh.cmake +++ b/builders/xml2/configure.sh.cmake @@ -15,7 +15,7 @@ export LDFLAGS="@LINPHONE_BUILDER_TOOLCHAIN_LDFLAGS@ @EP_xml2_EXTRA_LDFLAGS@" export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@" -if [ "x@LINPHONE_BUILDER_AUTOTOOLS_ONCE@" = "xno" ] || [ ! -f config.h ] +if [ ! -f config.h ] then - ./autogen.sh "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_xml2_CONFIGURE_OPTIONS@ + @ep_source@/autogen.sh "--prefix=@CMAKE_INSTALL_PREFIX@" "--host=@LINPHONE_BUILDER_TOOLCHAIN_HOST@" @EP_xml2_CONFIGURE_OPTIONS@ fi diff --git a/cmake/LinphoneCMakeBuilder.cmake b/cmake/LinphoneCMakeBuilder.cmake index 19582ca..780e1dd 100644 --- a/cmake/LinphoneCMakeBuilder.cmake +++ b/cmake/LinphoneCMakeBuilder.cmake @@ -22,6 +22,9 @@ include(ExternalProject) +set(ep_base ${CMAKE_CURRENT_SOURCE_DIR}/WORK) +set_property(DIRECTORY PROPERTY EP_BASE ${ep_base}) + option(LINPHONE_BUILDER_AUTOTOOLS_ONCE "Run configure stage only once for subprojects built with the autotools." OFF) @@ -153,15 +156,29 @@ macro(linphone_builder_apply_extra_flags EXTRA_CFLAGS EXTRA_CXXFLAGS EXTRA_LDFLA endmacro(linphone_builder_apply_extra_flags) +macro(linphone_builder_set_ep_directories PROJNAME) + set(ep_source "${ep_base}/Source/EP_${PROJNAME}") + if(NOT "${LINPHONE_BUILDER_TOOLCHAIN}" STREQUAL "") + set(ep_tmp "${ep_base}/tmp-${LINPHONE_BUILDER_TOOLCHAIN}/${PROJNAME}") + set(ep_build "${ep_base}/Build-${LINPHONE_BUILDER_TOOLCHAIN}/${PROJNAME}") + else() + set(ep_tmp "${ep_base}/tmp/${PROJNAME}") + set(ep_build "${ep_base}/Build/${PROJNAME}") + endif() +endmacro(linphone_builder_set_ep_directories) + macro(linphone_builder_add_cmake_project PROJNAME) set(EP_${PROJNAME}_SOURCE_DIR "" CACHE PATH "Build ${PROJNAME} from a local source path instead of cloning a repository.") + linphone_builder_set_ep_directories(${PROJNAME}) linphone_builder_apply_extra_flags("${EP_${PROJNAME}_EXTRA_CFLAGS}" "${EP_${PROJNAME}_EXTRA_CXXFLAGS}" "${EP_${PROJNAME}_EXTRA_LDFLAGS}") linphone_builder_expand_external_project_vars() if(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") ExternalProject_Add(EP_${PROJNAME} DEPENDS ${EP_${PROJNAME}_DEPENDENCIES} + TMP_DIR ${ep_tmp} + BINARY_DIR ${ep_build} SOURCE_DIR ${EP_${PROJNAME}_SOURCE_DIR} PATCH_COMMAND ${EP_${PROJNAME}_PATCH_COMMAND} CMAKE_GENERATOR ${CMAKE_GENERATOR} @@ -171,17 +188,20 @@ macro(linphone_builder_add_cmake_project PROJNAME) else(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") ExternalProject_Add(EP_${PROJNAME} DEPENDS ${EP_${PROJNAME}_DEPENDENCIES} - GIT_REPOSITORY ${EP_${PROJNAME}_GIT_REPOSITORY} - GIT_TAG ${EP_${PROJNAME}_GIT_TAG} - PATCH_COMMAND ${EP_${PROJNAME}_PATCH_COMMAND} - CMAKE_GENERATOR ${CMAKE_GENERATOR} - CMAKE_ARGS ${EP_${PROJNAME}_CMAKE_OPTIONS} + TMP_DIR ${ep_tmp} + BINARY_DIR ${ep_build} + GIT_REPOSITORY ${EP_${PROJNAME}_GIT_REPOSITORY} + GIT_TAG ${EP_${PROJNAME}_GIT_TAG} + PATCH_COMMAND ${EP_${PROJNAME}_PATCH_COMMAND} + CMAKE_GENERATOR ${CMAKE_GENERATOR} + CMAKE_ARGS ${EP_${PROJNAME}_CMAKE_OPTIONS} CMAKE_CACHE_ARGS ${LINPHONE_BUILDER_EP_ARGS} - ) - endif(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") + ) + endif(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") endmacro(linphone_builder_add_cmake_project) macro(linphone_builder_add_autotools_project PROJNAME) + linphone_builder_set_ep_directories(${PROJNAME}) linphone_builder_apply_extra_flags("${EP_${PROJNAME}_EXTRA_CFLAGS}" "${EP_${PROJNAME}_EXTRA_CXXFLAGS}" "${EP_${PROJNAME}_EXTRA_LDFLAGS}") linphone_builder_expand_external_project_vars() @@ -192,17 +212,20 @@ macro(linphone_builder_add_autotools_project PROJNAME) if(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") ExternalProject_Add(EP_${PROJNAME} DEPENDS ${EP_${PROJNAME}_DEPENDENCIES} + TMP_DIR ${ep_tmp} + BINARY_DIR ${ep_build} SOURCE_DIR ${EP_${PROJNAME}_SOURCE_DIR} PATCH_COMMAND ${EP_${PROJNAME}_PATCH_COMMAND} CMAKE_GENERATOR ${CMAKE_GENERATOR} CONFIGURE_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/EP_${PROJNAME}_configure.sh BUILD_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/EP_${PROJNAME}_build.sh INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/EP_${PROJNAME}_install.sh - BUILD_IN_SOURCE 1 ) else(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") ExternalProject_Add(EP_${PROJNAME} DEPENDS ${EP_${PROJNAME}_DEPENDENCIES} + TMP_DIR ${ep_tmp} + BINARY_DIR ${ep_build} GIT_REPOSITORY ${EP_${PROJNAME}_GIT_REPOSITORY} GIT_TAG ${EP_${PROJNAME}_GIT_TAG} PATCH_COMMAND ${EP_${PROJNAME}_PATCH_COMMAND} @@ -210,7 +233,6 @@ macro(linphone_builder_add_autotools_project PROJNAME) CONFIGURE_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/EP_${PROJNAME}_configure.sh BUILD_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/EP_${PROJNAME}_build.sh INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/EP_${PROJNAME}_install.sh - BUILD_IN_SOURCE 1 ) endif(NOT "${EP_${PROJNAME}_SOURCE_DIR}" STREQUAL "") endmacro(linphone_builder_add_autotools_project PROJNAME) diff --git a/configs/config-bb10.cmake b/configs/config-bb10.cmake index 84c6e6b..eea2ae4 100644 --- a/configs/config-bb10.cmake +++ b/configs/config-bb10.cmake @@ -48,5 +48,11 @@ set(EP_speex_CMAKE_OPTIONS "${CMAKE_SHARED_LIBRARIES} ${EP_speex_CMAKE_OPTIONS}" # opus set(EP_opus_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_opus_CONFIGURE_OPTIONS} --enable-fixed-point --disable-asm") +# oRTP +set(EP_ortp_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_ortp_CONFIGURE_OPTIONS} --disable-zrtp --enable-broken-srtp") + +# mediastreamer2 +set(EP_ms2_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_ms2_CONFIGURE_OPTIONS} --disable-nls --disable-theora --disable-sdl --disable-x11 --disable-video --disable-alsa --enable-qsa --enable-relativeprefix=yes") + # linphone -set(EP_linphone_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_linphone_CONFIGURE_OPTIONS} --disable-nls --with-readline=none --enable-gtk_ui=no --enable-console_ui=no --disable-theora --disable-sdl --disable-x11 --disable-tutorials --disable-tools --disable-msg-storage --disable-video --disable-zrtp --enable-broken-srtp --disable-alsa --enable-qsa --enable-relativeprefix=yes") +set(EP_linphone_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_linphone_CONFIGURE_OPTIONS} --disable-nls --with-readline=none --enable-gtk_ui=no --enable-console_ui=no --disable-x11 --disable-tutorials --disable-tools --disable-msg-storage --disable-video --disable-zrtp --disable-alsa --enable-relativeprefix=yes") diff --git a/configs/config-default.cmake b/configs/config-default.cmake index c458919..c8c6f90 100644 --- a/configs/config-default.cmake +++ b/configs/config-default.cmake @@ -31,6 +31,8 @@ set(LINPHONE_BUILDER_BUILDERS gsm speex opus + ortp + ms2 linphone ) @@ -76,8 +78,20 @@ set(EP_opus_GIT_REPOSITORY "git://git.opus-codec.org/opus.git") set(EP_opus_GIT_TAG "v1.0.3") set(EP_opus_CONFIGURE_OPTIONS "--disable-extra-programs --disable-doc") +# oRTP +set(EP_ortp_GIT_REPOSITORY "git://git.linphone.org/ortp.git") +set(EP_ortp_GIT_TAG "master") +set(EP_ortp_CONFIGURE_OPTIONS "--disable-strict") +set(EP_ortp_DEPENDENCIES EP_srtp) + +# mediastreamer2 +set(EP_ms2_GIT_REPOSITORY "git://git.linphone.org/mediastreamer2.git") +set(EP_ms2_GIT_TAG "master") +set(EP_ms2_CONFIGURE_OPTIONS "--disable-strict --enable-external-ortp") +set(EP_ms2_DEPENDENCIES EP_ortp EP_gsm EP_speex EP_opus) + # linphone set(EP_linphone_GIT_REPOSITORY "git://git.linphone.org/linphone.git") set(EP_linphone_GIT_TAG "master") -set(EP_linphone_CONFIGURE_OPTIONS "--disable-strict --enable-bellesip") -set(EP_linphone_DEPENDENCIES EP_bellesip EP_xml2 EP_gsm EP_speex EP_opus EP_srtp) +set(EP_linphone_CONFIGURE_OPTIONS "--disable-strict --enable-bellesip --enable-external-ortp --enable-external-mediastreamer") +set(EP_linphone_DEPENDENCIES EP_bellesip EP_ortp EP_ms2 EP_xml2) diff --git a/configs/config-desktop.cmake b/configs/config-desktop.cmake index f63031a..1f9da8f 100644 --- a/configs/config-desktop.cmake +++ b/configs/config-desktop.cmake @@ -47,5 +47,11 @@ set(EP_speex_CMAKE_OPTIONS "${CMAKE_SHARED_LIBRARIES} ${EP_speex_CMAKE_OPTIONS}" # opus set(EP_opus_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_opus_CONFIGURE_OPTIONS}") +# oRTP +set(EP_ortp_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_ortp_CONFIGURE_OPTIONS}") + +# mediastreamer2 +set(EP_ms2_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_ms2_CONFIGURE_OPTIONS}") + # linphone set(EP_linphone_CONFIGURE_OPTIONS "${AUTOTOOLS_SHARED_LIBRARIES} ${EP_linphone_CONFIGURE_OPTIONS}") -- 2.21.0