mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-11-04 05:15:22 +00:00 
			
		
		
		
	Make --with-pjproject-bundled the default for Asterisk 15
'--with-pjproject-bundled' is now the default when running ./configure. It can be disabled with '--without-pjproject-bundled'. To make building without an internet connection easier, a new ./configure option '--with-download-cache' was added that sets the cache for externals (like pjproject, the codecs and the DPMA), AND the sounds files. It can also be specified as an environment variable named "AST_DOWNLOAD_CACHE". The existing '--with-sounds-cache' option / SOUNDS_CACHE_DIR env variable and '--with-externals-cache' option / EXTERNALS_CACHE_DIR env variable remain and if specified, will override '--with-downloads-cache'. ASTERISK-27189 Change-Id: Ifa9783fddf44aafadb060c9feba713dfa81d38ce
This commit is contained in:
		
							
								
								
									
										10
									
								
								CHANGES
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								CHANGES
									
									
									
									
									
								
							@@ -34,6 +34,16 @@ app_queue
 | 
			
		||||
   queue position has improved since the last time that we annouced their
 | 
			
		||||
   position. This default is no.
 | 
			
		||||
 | 
			
		||||
Build System
 | 
			
		||||
------------------
 | 
			
		||||
 * '--with-pjproject-bundled' is now the default when running ./configure
 | 
			
		||||
   It can be disabled with '--without-pjproject-bundled'.
 | 
			
		||||
 | 
			
		||||
 * A '--with-download-cache' option is now available which is equivalent to
 | 
			
		||||
   setting '--with-sounds-cache' and '--with-externals-cache' to the same
 | 
			
		||||
   value.  The download cache can also be set via the AST_DOWNLOAD_CACHE
 | 
			
		||||
   environment variable.
 | 
			
		||||
 | 
			
		||||
------------------------------------------------------------------------------
 | 
			
		||||
--- Functionality changes from Asterisk 14.6.0 to Asterisk 14.7.0 ------------
 | 
			
		||||
------------------------------------------------------------------------------
 | 
			
		||||
 
 | 
			
		||||
@@ -33,6 +33,10 @@ Core:
 | 
			
		||||
   ARI. As a result, the 'DataGet' AMI action as well as the 'data get'
 | 
			
		||||
   CLI command have been removed.
 | 
			
		||||
 | 
			
		||||
Build System:
 | 
			
		||||
 - '--with-pjproject-bundled' is now the default when running ./configure
 | 
			
		||||
   It can be disabled with '--without-pjproject-bundled'.
 | 
			
		||||
 | 
			
		||||
From 14.6.0 to 14.7.0:
 | 
			
		||||
 | 
			
		||||
Core:
 | 
			
		||||
 
 | 
			
		||||
@@ -26,7 +26,11 @@ if [[ -z "${tmpdir}" ]] ; then
 | 
			
		||||
fi
 | 
			
		||||
trap "rm -rf ${tmpdir}" EXIT
 | 
			
		||||
 | 
			
		||||
sed -r -e "s/^([^ =]+)\s*=\s*(.*)$/\1=\"\2\"/g" ${ASTTOPDIR}/makeopts >${tmpdir}/makeopts
 | 
			
		||||
# We have to pre-process the makeopts file so it will be parsable by bash
 | 
			
		||||
# Surround values with double quotes
 | 
			
		||||
# Convert make  $(or) functions to bash ${name:-value}
 | 
			
		||||
sed -r  -e "s/^([^ =]+)\s*=\s*(.*)$/\1=\"\2\"/g" \
 | 
			
		||||
	-e 's/^([^ =]+)="\$\(or ([^,]*),([^)]+)\)"/_tmp="\2"\n\1="${_tmp:-\3}"/g'  ${ASTTOPDIR}/makeopts >${tmpdir}/makeopts
 | 
			
		||||
source ${tmpdir}/makeopts
 | 
			
		||||
if [[ -z "${ASTMODDIR}" ]] ; then
 | 
			
		||||
	echo "${module_name}: Unable to parse ${ASTTOPDIR}/makeopts."
 | 
			
		||||
 
 | 
			
		||||
@@ -14,7 +14,11 @@ if [[ -z "${tmpdir}" ]] ; then
 | 
			
		||||
fi
 | 
			
		||||
trap "rm -rf ${tmpdir}" EXIT
 | 
			
		||||
 | 
			
		||||
sed -r -e "s/^([^ =]+)\s*=\s*(.*)$/\1=\"\2\"/g" ${ASTTOPDIR}/makeopts >${tmpdir}/makeopts
 | 
			
		||||
# We have to pre-process the makeopts file so it will be parsable by bash
 | 
			
		||||
# Surround values with double quotes
 | 
			
		||||
# Convert make  $(or) functions to bash ${name:-value}
 | 
			
		||||
sed -r  -e "s/^([^ =]+)\s*=\s*(.*)$/\1=\"\2\"/g" \
 | 
			
		||||
	-e 's/^([^ =]+)="\$\(or ([^,]*),([^)]+)\)"/_tmp="\2"\n\1="${_tmp:-\3}"/g'  ${ASTTOPDIR}/makeopts >${tmpdir}/makeopts
 | 
			
		||||
source ${tmpdir}/makeopts
 | 
			
		||||
if [[ -z "${ASTMODDIR}" ]] ; then
 | 
			
		||||
	echo "${module_name}: Unable to parse ${ASTTOPDIR}/makeopts."
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										39
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										39
									
								
								configure
									
									
									
									
										vendored
									
									
								
							@@ -1228,6 +1228,7 @@ AST_NESTED_FUNCTIONS
 | 
			
		||||
AST_CODE_COVERAGE
 | 
			
		||||
EXTERNALS_CACHE_DIR
 | 
			
		||||
SOUNDS_CACHE_DIR
 | 
			
		||||
AST_DOWNLOAD_CACHE
 | 
			
		||||
AST_DEVMODE_STRICT
 | 
			
		||||
AST_DEVMODE
 | 
			
		||||
NOISY_BUILD
 | 
			
		||||
@@ -1381,6 +1382,7 @@ ac_user_opts='
 | 
			
		||||
enable_option_checking
 | 
			
		||||
with_gnu_ld
 | 
			
		||||
enable_dev_mode
 | 
			
		||||
with_download_cache
 | 
			
		||||
with_sounds_cache
 | 
			
		||||
with_externals_cache
 | 
			
		||||
enable_coverage
 | 
			
		||||
@@ -2128,12 +2130,15 @@ Optional Packages:
 | 
			
		||||
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
 | 
			
		||||
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
 | 
			
		||||
  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
 | 
			
		||||
  --with-download-cache=PATH
 | 
			
		||||
                          use cached sound AND external module tarfiles in
 | 
			
		||||
                          PATH
 | 
			
		||||
  --with-sounds-cache=PATH
 | 
			
		||||
                          use cached sound tarfiles in PATH
 | 
			
		||||
  --with-externals-cache=PATH
 | 
			
		||||
                          use cached external module tarfiles in PATH
 | 
			
		||||
  --with-pjproject-bundled
 | 
			
		||||
                          Use bundled pjproject libraries
 | 
			
		||||
                          Use bundled pjproject libraries (default)
 | 
			
		||||
  --with-asound=PATH      use Advanced Linux Sound Architecture files in PATH
 | 
			
		||||
  --with-bfd=PATH         use Debug symbol decoding files in PATH
 | 
			
		||||
  --with-execinfo=PATH    use Stack Backtrace files in PATH
 | 
			
		||||
@@ -9055,6 +9060,30 @@ fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Check whether --with-download-cache was given.
 | 
			
		||||
if test "${with_download_cache+set}" = set; then :
 | 
			
		||||
  withval=$with_download_cache;
 | 
			
		||||
	case ${withval} in
 | 
			
		||||
	n|no)
 | 
			
		||||
		unset AST_DOWNLOAD_CACHE
 | 
			
		||||
		;;
 | 
			
		||||
	*)
 | 
			
		||||
		if test "x${withval}" = "x"; then
 | 
			
		||||
			:
 | 
			
		||||
		else
 | 
			
		||||
			AST_DOWNLOAD_CACHE="${withval}"
 | 
			
		||||
		fi
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
 | 
			
		||||
else
 | 
			
		||||
  :
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Check whether --with-sounds-cache was given.
 | 
			
		||||
if test "${with_sounds_cache+set}" = set; then :
 | 
			
		||||
  withval=$with_sounds_cache;
 | 
			
		||||
@@ -9254,7 +9283,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 | 
			
		||||
	CFLAGS="$save_CFLAGS"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
PJPROJECT_BUNDLED=no
 | 
			
		||||
PJPROJECT_BUNDLED=yes
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -9317,11 +9346,11 @@ $as_echo "configuring" >&6; }
 | 
			
		||||
		PJPROJECT_CONFIGURE_OPTS+=" --host=$host"
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	export TAR PATCH SED NM EXTERNALS_CACHE_DIR DOWNLOAD_TO_STDOUT DOWNLOAD_TIMEOUT DOWNLOAD MD5 CAT
 | 
			
		||||
	export TAR PATCH SED NM EXTERNALS_CACHE_DIR AST_DOWNLOAD_CACHE DOWNLOAD_TO_STDOUT DOWNLOAD_TIMEOUT DOWNLOAD MD5 CAT
 | 
			
		||||
	export NOISY_BUILD
 | 
			
		||||
	${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} \
 | 
			
		||||
		PJPROJECT_CONFIGURE_OPTS="$PJPROJECT_CONFIGURE_OPTS" \
 | 
			
		||||
		EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR}" \
 | 
			
		||||
		EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR:-${AST_DOWNLOAD_CACHE}}" \
 | 
			
		||||
		configure
 | 
			
		||||
	if test $? -ne 0 ; then
 | 
			
		||||
		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
 | 
			
		||||
@@ -9334,7 +9363,7 @@ $as_echo "$as_me: Unable to configure ${PJPROJECT_DIR}" >&6;}
 | 
			
		||||
	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for bundled pjproject" >&5
 | 
			
		||||
$as_echo_n "checking for bundled pjproject... " >&6; }
 | 
			
		||||
 | 
			
		||||
	PJPROJECT_INCLUDE=$(${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} PJPROJECT_CONFIGURE_OPTS="$PJPROJECT_CONFIGURE_OPTS" EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR}" echo_cflags)
 | 
			
		||||
	PJPROJECT_INCLUDE=$(${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} PJPROJECT_CONFIGURE_OPTS="$PJPROJECT_CONFIGURE_OPTS" EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR:-${AST_DOWNLOAD_CACHE}}" echo_cflags)
 | 
			
		||||
	PJPROJECT_CFLAGS="$PJPROJECT_INCLUDE"
 | 
			
		||||
	PBX_PJPROJECT=1
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -407,6 +407,7 @@ AC_SUBST(NOISY_BUILD)
 | 
			
		||||
AC_SUBST(AST_DEVMODE)
 | 
			
		||||
AC_SUBST(AST_DEVMODE_STRICT)
 | 
			
		||||
 | 
			
		||||
AST_OPTION_ONLY([download-cache], [AST_DOWNLOAD_CACHE], [cached sound AND external module tarfiles], [])
 | 
			
		||||
AST_OPTION_ONLY([sounds-cache], [SOUNDS_CACHE_DIR], [cached sound tarfiles], [])
 | 
			
		||||
AST_OPTION_ONLY([externals-cache], [EXTERNALS_CACHE_DIR], [cached external module tarfiles], [])
 | 
			
		||||
 | 
			
		||||
@@ -424,12 +425,12 @@ AC_SUBST(AST_CODE_COVERAGE)
 | 
			
		||||
AST_CHECK_RAII()
 | 
			
		||||
AST_CHECK_STRSEP_ARRAY_BOUNDS()
 | 
			
		||||
 | 
			
		||||
PJPROJECT_BUNDLED=no
 | 
			
		||||
PJPROJECT_BUNDLED=yes
 | 
			
		||||
AH_TEMPLATE(m4_bpatsubst([[HAVE_PJPROJECT_BUNDLED]], [(.*)]), [Define to 1 when using the bundled pjproject.])
 | 
			
		||||
 | 
			
		||||
AC_ARG_WITH([pjproject-bundled],
 | 
			
		||||
	[AS_HELP_STRING([--with-pjproject-bundled],
 | 
			
		||||
		[Use bundled pjproject libraries])],
 | 
			
		||||
		[Use bundled pjproject libraries (default)])],
 | 
			
		||||
	[case "${withval}" in
 | 
			
		||||
	      n|no) PJPROJECT_BUNDLED=no ;;
 | 
			
		||||
	      *) PJPROJECT_BUNDLED=yes ;;
 | 
			
		||||
 
 | 
			
		||||
@@ -29,8 +29,9 @@ FETCH=@FETCH@
 | 
			
		||||
DOWNLOAD=@DOWNLOAD@
 | 
			
		||||
DOWNLOAD_TO_STDOUT=@DOWNLOAD_TO_STDOUT@
 | 
			
		||||
DOWNLOAD_TIMEOUT=@DOWNLOAD_TIMEOUT@
 | 
			
		||||
SOUNDS_CACHE_DIR=@SOUNDS_CACHE_DIR@
 | 
			
		||||
EXTERNALS_CACHE_DIR=@EXTERNALS_CACHE_DIR@
 | 
			
		||||
AST_DOWNLOAD_CACHE=@AST_DOWNLOAD_CACHE@
 | 
			
		||||
SOUNDS_CACHE_DIR=$(or @SOUNDS_CACHE_DIR@,${AST_DOWNLOAD_CACHE})
 | 
			
		||||
EXTERNALS_CACHE_DIR=$(or @EXTERNALS_CACHE_DIR@,${AST_DOWNLOAD_CACHE})
 | 
			
		||||
RUBBER=@RUBBER@
 | 
			
		||||
CATDVI=@CATDVI@
 | 
			
		||||
KPATHSEA=@KPATHSEA@
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								third-party/pjproject/configure.m4
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								third-party/pjproject/configure.m4
									
									
									
									
										vendored
									
									
								
							@@ -49,11 +49,11 @@ AC_DEFUN([_PJPROJECT_CONFIGURE],
 | 
			
		||||
		PJPROJECT_CONFIGURE_OPTS+=" --host=$host"
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	export TAR PATCH SED NM EXTERNALS_CACHE_DIR DOWNLOAD_TO_STDOUT DOWNLOAD_TIMEOUT DOWNLOAD MD5 CAT
 | 
			
		||||
	export TAR PATCH SED NM EXTERNALS_CACHE_DIR AST_DOWNLOAD_CACHE DOWNLOAD_TO_STDOUT DOWNLOAD_TIMEOUT DOWNLOAD MD5 CAT
 | 
			
		||||
	export NOISY_BUILD
 | 
			
		||||
	${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} \
 | 
			
		||||
		PJPROJECT_CONFIGURE_OPTS="$PJPROJECT_CONFIGURE_OPTS" \
 | 
			
		||||
		EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR}" \
 | 
			
		||||
		EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR:-${AST_DOWNLOAD_CACHE}}" \
 | 
			
		||||
		configure
 | 
			
		||||
	if test $? -ne 0 ; then
 | 
			
		||||
		AC_MSG_RESULT(failed)
 | 
			
		||||
@@ -63,7 +63,7 @@ AC_DEFUN([_PJPROJECT_CONFIGURE],
 | 
			
		||||
 | 
			
		||||
	AC_MSG_CHECKING(for bundled pjproject)
 | 
			
		||||
 | 
			
		||||
	PJPROJECT_INCLUDE=$(${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} PJPROJECT_CONFIGURE_OPTS="$PJPROJECT_CONFIGURE_OPTS" EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR}" echo_cflags)
 | 
			
		||||
	PJPROJECT_INCLUDE=$(${GNU_MAKE} --quiet --no-print-directory -C ${PJPROJECT_DIR} PJPROJECT_CONFIGURE_OPTS="$PJPROJECT_CONFIGURE_OPTS" EXTERNALS_CACHE_DIR="${EXTERNALS_CACHE_DIR:-${AST_DOWNLOAD_CACHE}}" echo_cflags)
 | 
			
		||||
	PJPROJECT_CFLAGS="$PJPROJECT_INCLUDE"
 | 
			
		||||
	PBX_PJPROJECT=1
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user