2006-06-24 19:43:31 +00:00
|
|
|
# NOTE: Names of _INCLUDE and _LIB entries in this file must be
|
|
|
|
# the exact uppercase equivalents of the names used for
|
|
|
|
# dependencies in menuselect for the same package.
|
|
|
|
|
2007-01-15 15:08:45 +00:00
|
|
|
CC=@PTHREAD_CC@
|
2006-08-21 02:11:39 +00:00
|
|
|
HOST_CC=cc
|
2010-06-04 19:40:00 +00:00
|
|
|
BUILD_CC=cc
|
2006-04-24 17:11:45 +00:00
|
|
|
CXX=@CXX@
|
|
|
|
|
|
|
|
INSTALL=@INSTALL@
|
2007-12-17 07:25:35 +00:00
|
|
|
AWK=@AWK@
|
2010-01-24 06:40:31 +00:00
|
|
|
BISON=@BISON@
|
|
|
|
FLEX=@FLEX@
|
2006-04-24 17:11:45 +00:00
|
|
|
GREP=@GREP@
|
2012-06-25 17:59:34 +00:00
|
|
|
PYTHON=@PYTHON@
|
2010-09-06 06:57:18 +00:00
|
|
|
MAKE=@GNU_MAKE@
|
2006-04-24 17:11:45 +00:00
|
|
|
AR=@AR@
|
|
|
|
RANLIB=@RANLIB@
|
|
|
|
FIND=@FIND@
|
|
|
|
BASENAME=@BASENAME@
|
|
|
|
SHELL=@SHELL@
|
|
|
|
LN=@LN@
|
2012-10-13 15:06:39 +00:00
|
|
|
DOXYGEN=@DOXYGEN@
|
2006-04-24 17:11:45 +00:00
|
|
|
DOT=@DOT@
|
2006-11-01 22:54:15 +00:00
|
|
|
STRIP=@STRIP@
|
2006-12-01 23:20:17 +00:00
|
|
|
WGET=@WGET@
|
|
|
|
FETCH=@FETCH@
|
|
|
|
DOWNLOAD=@DOWNLOAD@
|
2016-10-03 16:30:43 +00:00
|
|
|
DOWNLOAD_TO_STDOUT=@DOWNLOAD_TO_STDOUT@
|
2017-03-23 17:07:09 +00:00
|
|
|
DOWNLOAD_TIMEOUT=@DOWNLOAD_TIMEOUT@
|
2017-08-08 18:33:50 +00:00
|
|
|
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})
|
2010-07-17 13:10:47 +00:00
|
|
|
XMLLINT=@XMLLINT@
|
2008-11-02 05:55:46 +00:00
|
|
|
XMLSTARLET=@XMLSTARLET@
|
build: Add download capability for external packages
The DPMA and g729a, silk, siren7 and siren14 codecs hosted at
http://downloads.digium.com/pub/telephony/ are now listed in the
"External" sections of the "Resource Modules" and "Codec Translators"
pages in menuselect. Any that are selected will automatically be
downloaded and installed when "make install" is run. Their LICENSE and
README (if avaialble) files will be installed to
ASTVARLIBDIR/documentation/thirdparty/<product_name>.
Example use with codecs:
The codecs/codecs.xml file is a menuselect style xml file that lists
the codecs to be included. Their support levels are 'external', which
triggers the download and install, and defaultenabled is no. Also
because codec_g729a is actually in a directory named codec_g729 on the
download server, the newly added 'member_data' element is used to
override the default of the directory name being the package name. You
can use the 'directory_name' attribute to keep default base URL
(http://downloads.digium.com/pub/telephony/) but use the new directory,
or you use the 'remote_url' attribute to specify a full URL to the
download directory. In this case, you must still follow the same
subdirectory naming conventions as that used for the packages located
at 'http://downloads.digium.com/pub/telephony'.
A new configure option '--with-externals-cache' was added and like
'--with-sounds-cache' it allows the installer to cache tarballs so
they're not downloaded every time.
To assist with the download and install process, each external package
now has a manifest.xml file that, among other things, contains a package
version and checksums for each file in the tarball. The manifest is
saved to both the cache directory and ASTMODDIR and together with the
manifest.xml on the downloads site, tells the install scripts whether
a download and/or update is needed.
bash and xmlstarlet are required for downloader operation. If they're
not installed, the external items in menuselect will be unavailable.
Change-Id: Id3dcf1289ffd3cb0bbd7dfab3cafbb87be60323a
2016-08-02 01:55:33 +00:00
|
|
|
BASH=@BASH@
|
2008-11-19 00:27:45 +00:00
|
|
|
MD5=@MD5@
|
2010-05-18 22:49:13 +00:00
|
|
|
SHA1SUM=@SHA1SUM@
|
|
|
|
OPENSSL=@OPENSSL@
|
2012-01-30 21:21:16 +00:00
|
|
|
LDCONFIG=@LDCONFIG@
|
2012-10-18 20:13:17 +00:00
|
|
|
GIT=@GIT@
|
2016-01-21 22:40:47 +00:00
|
|
|
ALEMBIC=@ALEMBIC@
|
2016-10-03 16:30:43 +00:00
|
|
|
TAR=@TAR@
|
|
|
|
PATCH=@PATCH@
|
|
|
|
SED=@SED@
|
|
|
|
NM=@NM@
|
2016-11-16 18:05:43 +00:00
|
|
|
CAT=@CAT@
|
2017-11-19 15:57:28 +00:00
|
|
|
CUT=@CUT@
|
Makefile: Allow XML documentation to exist outside source files
Moved the xmldoc build logic from the top-level Makefile into
its own script "make_xml_documentation" in the build_tools
directory.
Created a new utility script "get_sourceable_makeopts", also in
the build_tools directory, that dumps the top-level "makeopts"
file in a format that can be "sourced" from shell sscripts.
This allows scripts to easily get the values of common make
build variables such as the location of the GREP, SED, AWK, etc.
utilities as well as the AST* and library *_LIB and *_INCLUDE
variables.
Besides moving logic out of the Makefile, some optimizations
were done like removing "third-party" from the list of
subdirectories to be searched for documentation and changing some
assignments from "=" to ":=" so they're only evaluated once.
The speed increase is noticeable.
The makeopts.in file was updated to include the paths to
REALPATH and DIRNAME. The ./conifgure script was setting them
but makeopts.in wasn't including them.
So...
With this change, you can now place documentation in any"c"
source file AND you can now place it in a separate XML file
altogether. The following are examples of valid locations:
res/res_pjsip.c
Using the existing /*** DOCUMENTATION ***/ fragment.
res/res_pjsip/pjsip_configuration.c
Using the existing /*** DOCUMENTATION ***/ fragment.
res/res_pjsip/pjsip_doc.xml
A fully-formed XML file. The "configInfo", "manager",
"managerEvent", etc. elements that would be in the "c"
file DOCUMENTATION fragment should be wrapped in proper
XML. Example for "somemodule.xml":
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE docs SYSTEM "appdocsxml.dtd">
<docs>
<configInfo>
...
</configInfo>
</docs>
It's the "appdocsxml.dtd" that tells make_xml_documentation
that this is a documentation XML file and not some other XML file.
It also allows many XML-capable editors to do formatting and
validation.
Other than the ".xml" suffix, the name of the file is not
significant.
As a start... This change also moves the documentation that was
in res_pjsip.c to 2 new XML files in res/res_pjsip:
pjsip_config.xml and pjsip_manager.xml. This cut the number of
lines in res_pjsip.c in half. :)
Change-Id: I486c16c0b5a44d7a8870008e10c941fb19b71ade
2022-02-14 13:31:25 +00:00
|
|
|
REALPATH=@REALPATH@
|
|
|
|
DIRNAME=@DIRNAME@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2006-08-21 02:11:39 +00:00
|
|
|
BUILD_PLATFORM=@BUILD_PLATFORM@
|
|
|
|
BUILD_CPU=@BUILD_CPU@
|
|
|
|
BUILD_VENDOR=@BUILD_VENDOR@
|
|
|
|
BUILD_OS=@BUILD_OS@
|
|
|
|
|
|
|
|
HOST_PLATFORM=@HOST_PLATFORM@
|
|
|
|
HOST_CPU=@HOST_CPU@
|
|
|
|
HOST_VENDOR=@HOST_VENDOR@
|
|
|
|
HOST_OS=@HOST_OS@
|
|
|
|
|
2006-09-19 14:04:15 +00:00
|
|
|
OSARCH=@OSARCH@
|
2006-04-24 17:11:45 +00:00
|
|
|
OSREV=@PBX_OSREV@
|
|
|
|
|
2017-06-06 19:54:43 +00:00
|
|
|
BIND8_CFLAGS=@BIND8_CFLAGS@
|
|
|
|
|
2020-01-12 11:37:46 +00:00
|
|
|
CROSS_COMPILING=@CROSS_COMPILING@
|
|
|
|
|
2007-01-15 15:08:45 +00:00
|
|
|
PTHREAD_CFLAGS=@PTHREAD_CFLAGS@
|
|
|
|
PTHREAD_LIBS=@PTHREAD_LIBS@
|
|
|
|
|
2009-08-28 20:01:21 +00:00
|
|
|
CONFIG_CFLAGS=@CONFIG_CFLAGS@
|
|
|
|
CONFIG_LDFLAGS=@CONFIG_LDFLAGS@
|
2014-10-19 17:09:38 +00:00
|
|
|
CONFIG_SIGNED_CHAR=@CONFIG_SIGNED_CHAR@
|
2009-08-28 20:01:21 +00:00
|
|
|
|
2009-03-18 02:21:23 +00:00
|
|
|
GNU_LD=@GNU_LD@
|
2010-07-16 04:45:33 +00:00
|
|
|
HAVE_DYNAMIC_LIST=@PBX_DYNAMIC_LIST@
|
2009-03-18 02:21:23 +00:00
|
|
|
|
2006-05-19 18:54:21 +00:00
|
|
|
prefix = @prefix@
|
|
|
|
exec_prefix = @exec_prefix@
|
|
|
|
|
2006-05-30 16:36:21 +00:00
|
|
|
datarootdir = @datarootdir@
|
2006-05-19 18:54:21 +00:00
|
|
|
datadir = @datadir@
|
|
|
|
includedir = @includedir@
|
|
|
|
infodir = @infodir@
|
|
|
|
libdir = @libdir@
|
|
|
|
libexecdir = @libexecdir@
|
|
|
|
localstatedir = @localstatedir@
|
|
|
|
mandir = @mandir@
|
|
|
|
sbindir = @sbindir@
|
|
|
|
sharedstatedir = @sharedstatedir@
|
|
|
|
sysconfdir = @sysconfdir@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2010-09-28 18:20:20 +00:00
|
|
|
ASTSBINDIR = @astsbindir@
|
|
|
|
ASTETCDIR = @astetcdir@
|
|
|
|
ASTHEADERDIR = @astheaderdir@
|
|
|
|
ASTLIBDIR = @astlibdir@
|
2012-01-30 21:21:16 +00:00
|
|
|
ASTMODDIR = @astmoddir@
|
2010-09-28 18:20:20 +00:00
|
|
|
ASTMANDIR = @astmandir@
|
|
|
|
astvarlibdir = @astvarlibdir@
|
|
|
|
ASTVARLIBDIR = @astvarlibdir@
|
2020-10-29 11:25:27 +00:00
|
|
|
ASTCACHEDIR = @astcachedir@
|
2010-09-28 18:20:20 +00:00
|
|
|
ASTDATADIR = @astdatadir@
|
|
|
|
ASTDBDIR = @astdbdir@
|
|
|
|
ASTKEYDIR = @astkeydir@
|
|
|
|
ASTSPOOLDIR = @astspooldir@
|
|
|
|
ASTLOGDIR = @astlogdir@
|
|
|
|
ASTVARRUNDIR = @astvarrundir@
|
|
|
|
|
2006-04-24 17:11:45 +00:00
|
|
|
AST_DEVMODE=@AST_DEVMODE@
|
2012-03-08 16:21:49 +00:00
|
|
|
AST_DEVMODE_STRICT=@AST_DEVMODE_STRICT@
|
2017-03-30 14:51:14 +00:00
|
|
|
DISABLE_XMLDOC=@DISABLE_XMLDOC@
|
2009-07-30 23:37:31 +00:00
|
|
|
NOISY_BUILD=@NOISY_BUILD@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2010-07-27 21:16:39 +00:00
|
|
|
AST_CODE_COVERAGE=@AST_CODE_COVERAGE@
|
|
|
|
|
2012-01-30 21:21:16 +00:00
|
|
|
AST_ASTERISKSSL=@AST_ASTERISKSSL@
|
|
|
|
|
2007-06-28 21:31:00 +00:00
|
|
|
AST_DECLARATION_AFTER_STATEMENT=@AST_DECLARATION_AFTER_STATEMENT@
|
2012-06-01 16:33:25 +00:00
|
|
|
AST_TRAMPOLINES=@AST_TRAMPOLINES@
|
2008-03-11 14:09:49 +00:00
|
|
|
AST_NO_STRICT_OVERFLOW=@AST_NO_STRICT_OVERFLOW@
|
2017-08-02 19:16:43 +00:00
|
|
|
AST_NO_FORMAT_TRUNCATION=@AST_NO_FORMAT_TRUNCATION@
|
2018-05-07 02:17:34 +00:00
|
|
|
AST_NO_STRINGOP_TRUNCATION=@AST_NO_STRINGOP_TRUNCATION@
|
2008-08-08 18:19:33 +00:00
|
|
|
AST_SHADOW_WARNINGS=@AST_SHADOW_WARNINGS@
|
2012-09-18 15:50:35 +00:00
|
|
|
AST_NESTED_FUNCTIONS=@AST_NESTED_FUNCTIONS@
|
2015-03-12 12:40:23 +00:00
|
|
|
AST_CLANG_BLOCKS=@AST_CLANG_BLOCKS@
|
|
|
|
AST_CLANG_BLOCKS_LIBS=@AST_CLANG_BLOCKS_LIBS@
|
Update configure.ac/Makefile for clang
Created autoconf/ast_check_raii.m4: contains AST_CHECK_RAII which
checks compiler requirements for RAII:
gcc: -fnested-functions support
clang: -fblocks (and if required -lBlocksRuntime)
The original check was implemented in configure.ac and now has it's
own file. This function also sets C_COMPILER_FAMILY to either gcc or
clang for use by makefile
Created autoconf/ast_check_strsep_array_bounds.m4 (contains
AST_CHECK_STRSEP_ARRAY_BOUNDS):
which checks if clang is able to handle the optimized strsep & strcmp
functions (linux). If not, the standard libc implementation should be
used instead. Clang + the optimized macro's work with:
strsep(char *, char []), but not with strsepo(char *, char *).
Instead of replacing all the occurences throughout the source code,
not using the optimized macro version seemed easier
See 'define __strcmp_gc(s1, s2, l2) in bits/string2.h':
llvm-comment: Normally, this array-bounds warning are suppressed for
macros, so that unused paths like the one that accesses __s1[3] are
not warned about. But if you preprocess manually, and feed the
result to another instance of clang, it will warn about all the
possible forks of this particular if statement. Instead of switching
of this optimization, another solution would be to run the preproces-
sing step with -frewrite-includes, which should preserve enough
information so that clang should still be able to suppress the diag-
nostic at the compile step later on.
See also "https://llvm.org/bugs/show_bug.cgi?id=20144"
See also "https://llvm.org/bugs/show_bug.cgi?id=11536"
Makefile.rules: If C_COMPILER_FAMILY=clang then add two warning
suppressions:
-Wno-unused-value
-Wno-parentheses-equality
In an earlier review (reviewboard: 4550 and 4554), they were deemed a
nuisace and less than benefitial.
configure.ac:
Added AST_CHECK_RAII() see earlier
Added AST_CHECK_STRSEP_ARRAY_BOUNDS() see earlier
Removed moved content
ASTERISK-24917
Change-Id: I12ea29d3bda2254ad3908e279b7effbbac6a97cb
2015-04-20 18:03:56 +00:00
|
|
|
C_COMPILER_FAMILY=@AST_C_COMPILER_FAMILY@
|
2013-01-18 21:35:09 +00:00
|
|
|
AST_RPATH=@AST_RPATH@
|
2008-11-29 17:57:39 +00:00
|
|
|
AST_FORTIFY_SOURCE=@AST_FORTIFY_SOURCE@
|
2007-06-28 21:31:00 +00:00
|
|
|
|
2008-11-04 15:07:54 +00:00
|
|
|
ALSA_INCLUDE=@ALSA_INCLUDE@
|
|
|
|
ALSA_LIB=@ALSA_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2010-12-18 00:08:13 +00:00
|
|
|
BFD_INCLUDE=@BFD_INCLUDE@
|
|
|
|
BFD_LIB=@BFD_LIB@
|
|
|
|
|
2009-06-30 16:40:38 +00:00
|
|
|
BLUETOOTH_INCLUDE=@BLUETOOTH_INCLUDE@
|
|
|
|
BLUETOOTH_LIB=@BLUETOOTH_LIB@
|
|
|
|
|
2016-07-19 18:14:21 +00:00
|
|
|
CODEC2_INCLUDE=@CODEC2_INCLUDE@
|
|
|
|
CODEC2_LIB=@CODEC2_LIB@
|
|
|
|
|
2006-08-25 00:13:03 +00:00
|
|
|
CURL_INCLUDE=@CURL_INCLUDE@
|
|
|
|
CURL_LIB=@CURL_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
FREETDS_INCLUDE=@FREETDS_INCLUDE@
|
|
|
|
FREETDS_LIB=@FREETDS_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2009-01-15 20:18:53 +00:00
|
|
|
GENERIC_ODBC_INCLUDE=@GENERIC_ODBC_INCLUDE@
|
|
|
|
GENERIC_ODBC_LIB=@GENERIC_ODBC_LIB@
|
|
|
|
|
2008-03-17 22:10:06 +00:00
|
|
|
GMIME_INCLUDE=@GMIME_INCLUDE@
|
|
|
|
GMIME_LIB=@GMIME_LIB@
|
|
|
|
|
2008-08-03 16:14:14 +00:00
|
|
|
HOARD_LIB=@HOARD_LIB@
|
|
|
|
|
2006-08-21 02:11:39 +00:00
|
|
|
GSM_INTERNAL=@GSM_INTERNAL@
|
2006-07-07 05:32:28 +00:00
|
|
|
GSM_INCLUDE=@GSM_INCLUDE@
|
|
|
|
GSM_LIB=@GSM_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2012-07-23 21:27:56 +00:00
|
|
|
ILBC_INTERNAL=@ILBC_INTERNAL@
|
|
|
|
ILBC_INCLUDE=@ILBC_INCLUDE@
|
|
|
|
ILBC_LIB=@ILBC_LIB@
|
|
|
|
|
2007-03-15 23:56:10 +00:00
|
|
|
GTK2_INCLUDE=@GTK2_INCLUDE@
|
|
|
|
GTK2_LIB=@GTK2_LIB@
|
|
|
|
|
2009-05-28 19:57:18 +00:00
|
|
|
ICAL_INCLUDE=@ICAL_INCLUDE@
|
|
|
|
ICAL_LIB=@ICAL_LIB@
|
|
|
|
|
2008-01-01 22:08:32 +00:00
|
|
|
ICONV_INCLUDE=@ICONV_INCLUDE@
|
|
|
|
ICONV_LIB=@ICONV_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
IKSEMEL_INCLUDE=@IKSEMEL_INCLUDE@
|
|
|
|
IKSEMEL_LIB=@IKSEMEL_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
IMAP_TK_INCLUDE=@IMAP_TK_INCLUDE@
|
|
|
|
IMAP_TK_LIB=@IMAP_TK_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2008-10-06 23:14:33 +00:00
|
|
|
IODBC_INCLUDE=@IODBC_INCLUDE@
|
|
|
|
IODBC_LIB=@IODBC_LIB@
|
|
|
|
|
2008-01-13 18:08:50 +00:00
|
|
|
JACK_INCLUDE=@JACK_INCLUDE@
|
|
|
|
JACK_LIB=@JACK_LIB@
|
|
|
|
|
2018-07-16 20:08:20 +00:00
|
|
|
JANSSON_BUNDLED=@JANSSON_BUNDLED@
|
2013-01-11 22:31:42 +00:00
|
|
|
JANSSON_INCLUDE=@JANSSON_INCLUDE@
|
|
|
|
JANSSON_LIB=@JANSSON_LIB@
|
|
|
|
|
2013-08-23 21:49:47 +00:00
|
|
|
URIPARSER_INCLUDE=@URIPARSER_INCLUDE@
|
|
|
|
URIPARSER_LIB=@URIPARSER_LIB@
|
|
|
|
|
2008-01-22 22:33:20 +00:00
|
|
|
LDAP_INCLUDE=@LDAP_INCLUDE@
|
|
|
|
LDAP_LIB=@LDAP_LIB@
|
|
|
|
|
2012-07-25 12:21:54 +00:00
|
|
|
LIBEDIT_INCLUDE=@LIBEDIT_INCLUDE@
|
|
|
|
LIBEDIT_LIB=@LIBEDIT_LIB@
|
|
|
|
|
2007-11-02 15:36:34 +00:00
|
|
|
LUA_INCLUDE=@LUA_INCLUDE@
|
|
|
|
LUA_LIB=@LUA_LIB@
|
|
|
|
|
2009-06-30 16:40:38 +00:00
|
|
|
MYSQLCLIENT_INCLUDE=@MYSQLCLIENT_INCLUDE@
|
|
|
|
MYSQLCLIENT_LIB=@MYSQLCLIENT_LIB@
|
|
|
|
|
2009-05-28 19:57:18 +00:00
|
|
|
NEON_INCLUDE=@NEON_INCLUDE@
|
|
|
|
NEON_LIB=@NEON_LIB@
|
2010-05-28 17:34:00 +00:00
|
|
|
NEON29_INCLUDE=@NEON_INCLUDE@
|
|
|
|
NEON29_LIB=@NEON_LIB@
|
2009-05-28 19:57:18 +00:00
|
|
|
|
2007-12-19 08:57:45 +00:00
|
|
|
NETSNMP_INCLUDE=@NETSNMP_INCLUDE@
|
2006-07-07 05:32:28 +00:00
|
|
|
NETSNMP_LIB=@NETSNMP_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
NEWT_INCLUDE=@NEWT_INCLUDE@
|
|
|
|
NEWT_LIB=@NEWT_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
OGG_INCLUDE=@OGG_INCLUDE@
|
|
|
|
OGG_LIB=@OGG_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2014-10-27 17:55:43 +00:00
|
|
|
OPUS_INCLUDE=@OPUS_INCLUDE@
|
|
|
|
OPUS_LIB=@OPUS_LIB@
|
|
|
|
|
2017-11-06 09:21:12 +00:00
|
|
|
OPUSFILE_INCLUDE=@OPUSFILE_INCLUDE@
|
|
|
|
OPUSFILE_LIB=@OPUSFILE_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
OSPTK_INCLUDE=@OSPTK_INCLUDE@
|
|
|
|
OSPTK_LIB=@OSPTK_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
PGSQL_INCLUDE=@PGSQL_INCLUDE@
|
|
|
|
PGSQL_LIB=@PGSQL_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
build-system: Allow building with static pjproject
Background here:
http://lists.digium.com/pipermail/asterisk-dev/2016-January/075266.html
From CHANGES:
* To help insure that Asterisk is compiled and run with the same known
version of pjproject, a new option (--with-pjproject-bundled) has been
added to ./configure. When specified, the version of pjproject specified
in third-party/versions.mak will be downloaded and configured. When you
make Asterisk, the build process will also automatically build pjproject
and Asterisk will be statically linked to it. Once a particular version
of pjproject is configured and built, it won't be configured or built
again unless you run a 'make distclean'.
To facilitate testing, when 'make install' is run, the pjsua and pjsystest
utilities and the pjproject python bindings will be installed in
ASTDATADIR/third-party/pjproject.
The default behavior remains building with the shared pjproject
installation, if any.
Building:
All you have to do is include the --with-pjproject-bundled option on
the ./configure command line (and remove any existing --with-pjproject
option if specified). Everything else is automatic.
Behind the scenes:
The top-level Makefile was modified to include 'third-party' in the
list of MOD_SUBDIRS.
The third-party directory was created to contain any third party
packages that may be needed in the future. Its Makefile automatically
iterates over any subdirectories passing on targets.
The third-party/pjproject directory was created to house the pjproject
source distribution. Its Makefile contains targets to download, patch
configure, generate dependencies, compile libs, apps and python bindings,
sanitized build.mak and generate a symbols list.
When bootstrap.sh is run, it automatically includes the configure.m4
file in third-party/pjproject. This file has a macro to download and
conifgure pjproject and get and set PJPROJECT_INCLUDE, PJPROJECT_DIR
and PJPROJECT_BUNDLED. It also tests for the capabilities like
PJ_TRANSACTION_GRP_LOCK by parsing preprocessor output as opposed to
trying to compile. Of course, bootstrap.sh is only run once and the
configure file is incldued in the patch.
When configure is run with the new options, the macro in configure.m4
triggers the download, patch, conifgure and tests. No compilation is
performed at this time. The downloaded tarball is cached in /tmp so
it doesn't get downloaded again on a distclean.
When make is run in the top-level Asterisk source directory, it will
automatically descend all the subdirectories in third_party just as it
does for addons, apps, etc. The top-level Makefile makes sure that
the 'third-party' is built before 'main' so that dependencies from the
other directories are built first.
When main does build, a new shared library (libasteriskpj) is created that
links statically to the pjproject .a files and exports all their symbols.
The asterisk binary links to that, just as it does with libasteriskssl.
When Asterisk is installed, the pjsua and pjsystest apps, and the pjproject
python bindings are installed in ASTDATADIR/third-party/pjproject. This
will facilitate testing, including running the testsuite which will be
updated to check that directory for the pjsua module ahead of the system
python library.
Modules should continue to depend on pjproject if they use pjproject APIs
directly. They should not care about the implementation. No changes to any
res_pjsip modules were made.
Change-Id: Ia7a60c28c2e9ba9537c5570f933c1ebcb20a3103
2016-01-19 03:54:28 +00:00
|
|
|
PJPROJECT_BUNDLED=@PJPROJECT_BUNDLED@
|
2021-11-30 22:35:27 +00:00
|
|
|
PJPROJECT_BUNDLED_OOT=@PJPROJECT_BUNDLED_OOT@
|
2013-03-12 19:08:59 +00:00
|
|
|
PJPROJECT_INCLUDE=@PJPROJECT_INCLUDE@
|
|
|
|
PJPROJECT_LIB=@PJPROJECT_LIB@
|
build-system: Allow building with static pjproject
Background here:
http://lists.digium.com/pipermail/asterisk-dev/2016-January/075266.html
From CHANGES:
* To help insure that Asterisk is compiled and run with the same known
version of pjproject, a new option (--with-pjproject-bundled) has been
added to ./configure. When specified, the version of pjproject specified
in third-party/versions.mak will be downloaded and configured. When you
make Asterisk, the build process will also automatically build pjproject
and Asterisk will be statically linked to it. Once a particular version
of pjproject is configured and built, it won't be configured or built
again unless you run a 'make distclean'.
To facilitate testing, when 'make install' is run, the pjsua and pjsystest
utilities and the pjproject python bindings will be installed in
ASTDATADIR/third-party/pjproject.
The default behavior remains building with the shared pjproject
installation, if any.
Building:
All you have to do is include the --with-pjproject-bundled option on
the ./configure command line (and remove any existing --with-pjproject
option if specified). Everything else is automatic.
Behind the scenes:
The top-level Makefile was modified to include 'third-party' in the
list of MOD_SUBDIRS.
The third-party directory was created to contain any third party
packages that may be needed in the future. Its Makefile automatically
iterates over any subdirectories passing on targets.
The third-party/pjproject directory was created to house the pjproject
source distribution. Its Makefile contains targets to download, patch
configure, generate dependencies, compile libs, apps and python bindings,
sanitized build.mak and generate a symbols list.
When bootstrap.sh is run, it automatically includes the configure.m4
file in third-party/pjproject. This file has a macro to download and
conifgure pjproject and get and set PJPROJECT_INCLUDE, PJPROJECT_DIR
and PJPROJECT_BUNDLED. It also tests for the capabilities like
PJ_TRANSACTION_GRP_LOCK by parsing preprocessor output as opposed to
trying to compile. Of course, bootstrap.sh is only run once and the
configure file is incldued in the patch.
When configure is run with the new options, the macro in configure.m4
triggers the download, patch, conifgure and tests. No compilation is
performed at this time. The downloaded tarball is cached in /tmp so
it doesn't get downloaded again on a distclean.
When make is run in the top-level Asterisk source directory, it will
automatically descend all the subdirectories in third_party just as it
does for addons, apps, etc. The top-level Makefile makes sure that
the 'third-party' is built before 'main' so that dependencies from the
other directories are built first.
When main does build, a new shared library (libasteriskpj) is created that
links statically to the pjproject .a files and exports all their symbols.
The asterisk binary links to that, just as it does with libasteriskssl.
When Asterisk is installed, the pjsua and pjsystest apps, and the pjproject
python bindings are installed in ASTDATADIR/third-party/pjproject. This
will facilitate testing, including running the testsuite which will be
updated to check that directory for the pjsua module ahead of the system
python library.
Modules should continue to depend on pjproject if they use pjproject APIs
directly. They should not care about the implementation. No changes to any
res_pjsip modules were made.
Change-Id: Ia7a60c28c2e9ba9537c5570f933c1ebcb20a3103
2016-01-19 03:54:28 +00:00
|
|
|
PJPROJECT_DIR=@PJPROJECT_DIR@
|
BuildSystem: Check for alternate openssl packages
OpenSSL is one of those packages that often have alternatives
with later versions. For instance, CentOS/EL 7 has an
openssl package at version 1.0.2 but there's an openssl11
package from the epel repository that has 1.1.1. This gets
installed to /usr/include/openssl11 and /usr/lib64/openssl11.
Unfortunately, the existing --with-ssl and --with-crypto
./configure options expect to point to a source tree and
don't work in this situation. Also unfortunately, the
checks in ./configure don't use pkg-config.
In order to make this work with the existing situation, you'd
have to run...
./configure --with-ssl=/usr/lib64/openssl11 \
--with-crypto=/usr/lib64/openssl11 \
CFLAGS=-I/usr/include/openssl11
BUT... those options don't get passed down to bundled pjproject
so when you run make, you have to include the CFLAGS again
which is a big pain.
Oh... To make matters worse, although you can specify
PJPROJECT_CONFIGURE_OPTS on the ./configure command line,
they don't get saved so if you do a make clean, which will
force a re-configure of bundled pjproject, those options
don't get used.
So...
* In configure.ac... Since pkg-config is installed by install_prereq
anyway, we now use it to check for the system openssl >= 1.1.0.
If that works, great. If not, we check for the openssl11
package. If that works, great. If not, we fall back to just
checking for any openssl. If pkg-config isn't installed for some
reason, or --with-ssl=<dir> or --with-crypto=<dir> were specified
on the ./configure command line, we fall back to the existing
logic that uses AST_EXT_LIB_CHECK().
* The whole OpenSSL check process has been moved up before
THIRD_PARTY_CONFIGURE(), which does the initial pjproject
bundled configure, is run. This way the results of the above
checks, which may result in new include or library directories,
is included.
* Although not strictly needed for openssl, We now save the value of
PJPROJECT_CONFIGURE_OPTS in the makeopts file so it can be used
again if a re-configure is triggered.
ASTERISK-29693
Change-Id: I341ab7603e6b156aa15a66f43675ac5029d5fbde
2021-10-19 16:35:26 +00:00
|
|
|
PJPROJECT_CONFIGURE_OPTS=@PJPROJECT_CONFIGURE_OPTS@
|
2013-03-12 19:08:59 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
POPT_INCLUDE=@POPT_INCLUDE@
|
|
|
|
POPT_LIB=@POPT_LIB@
|
2006-05-22 21:12:30 +00:00
|
|
|
|
2007-12-31 15:20:30 +00:00
|
|
|
PORTAUDIO_INCLUDE=@PORTAUDIO_INCLUDE@
|
|
|
|
PORTAUDIO_LIB=@PORTAUDIO_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
PRI_INCLUDE=@PRI_INCLUDE@
|
|
|
|
PRI_LIB=@PRI_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2016-05-09 01:19:50 +00:00
|
|
|
PYTHONDEV_INCLUDE=@PYTHONDEV_INCLUDE@
|
|
|
|
PYTHONDEV_LIB=@PYTHONDEV_LIB@
|
|
|
|
|
2008-07-21 14:47:41 +00:00
|
|
|
RESAMPLE_INCLUDE=@RESAMPLE_INCLUDE@
|
|
|
|
RESAMPLE_LIB=@RESAMPLE_LIB@
|
|
|
|
|
2016-08-12 16:22:40 +00:00
|
|
|
FFTW3_INCLUDE=@FFTW3_INCLUDE@
|
|
|
|
FFTW3_LIB=@FFTW3_LIB@
|
|
|
|
|
2015-07-24 22:04:35 +00:00
|
|
|
RT_LIB=@RT_LIB@
|
|
|
|
|
2006-09-21 19:42:35 +00:00
|
|
|
SS7_INCLUDE=@SS7_INCLUDE@
|
|
|
|
SS7_LIB=@SS7_LIB@
|
2006-09-21 18:41:33 +00:00
|
|
|
|
2016-06-27 19:26:54 +00:00
|
|
|
HAVE_SYSTEMD=@PBX_SYSTEMD@
|
|
|
|
SYSTEMD_INCLUDE=@SYSTEMD_INCLUDE@
|
|
|
|
SYSTEMD_LIB=@SYSTEMD_LIB@
|
|
|
|
|
Add MFC/R2 support for chan_dahdi.
This commit introduces official support for R2 signaling in chan_dahdi. The
modifications to chan_dahdi, and the supporting library, LibOpenR2, were both
written by Moises Silva.
Many users are using this code, or a variant of it, in Asterisk 1.2, 1.4 and 1.6
in Brazil, México and Argentina. An unknown number of users (but at least 1)
are using it in each of the following countries: Colombia, Nepal, Thailand,
Venezuela, Perú, and probably others.
To use this code, LibOpenR2 must be installed from http://www.libopenr2.org/.
Information about configuration can be found in configs/chan_dahdi.conf.sample.
The code committed is the most up to date version, which was being maintained
in svn/asterisk/team/moy/mfcr2/.
I would also like to include a Thank You to the many others that tested this
code beyond those listed in this commit message. These are the names that I
could find in the mantis issue.
(closes issue #12509)
Reported by: moy
Patches:
chan_zap-mfr2.patch uploaded by moy (license 222)
Tested by: moy, korihor, viniciusfontes, Skarmeth, loloski, asbestoshead, titogarrido, heliocoelhojr, konsultex, ncorrare, ecarruda, rtorresduque, PTorres, ychen
Review: http://reviewboard.digium.com/r/40/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@182355 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-16 20:35:58 +00:00
|
|
|
OPENR2_INCLUDE=@OPENR2_INCLUDE@
|
|
|
|
OPENR2_LIB=@OPENR2_LIB@
|
|
|
|
|
2012-02-05 10:58:37 +00:00
|
|
|
COROSYNC_INCLUDE=@COROSYNC_INCLUDE@
|
|
|
|
COROSYNC_LIB=@COROSYNC_LIB@
|
2008-06-10 00:43:06 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
RADIUS_INCLUDE=@RADIUS_INCLUDE@
|
|
|
|
RADIUS_LIB=@RADIUS_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2007-11-17 01:49:26 +00:00
|
|
|
FFMPEG_INCLUDE=@FFMPEG_INCLUDE@
|
|
|
|
FFMPEG_LIB=@FFMPEG_LIB@
|
|
|
|
|
2007-11-21 00:20:08 +00:00
|
|
|
X11_INCLUDE=@X11_INCLUDE@
|
|
|
|
X11_LIB=@X11_LIB@
|
|
|
|
|
2007-11-17 01:49:26 +00:00
|
|
|
SDL_INCLUDE=@SDL_INCLUDE@
|
|
|
|
SDL_LIB=@SDL_LIB@
|
|
|
|
|
|
|
|
SDL_IMAGE_INCLUDE=@SDL_IMAGE_INCLUDE@
|
|
|
|
SDL_IMAGE_LIB=@SDL_IMAGE_LIB@
|
|
|
|
|
2008-06-02 15:43:40 +00:00
|
|
|
SPANDSP_INCLUDE=@SPANDSP_INCLUDE@
|
|
|
|
SPANDSP_LIB=@SPANDSP_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
SPEEX_INCLUDE=@SPEEX_INCLUDE@
|
|
|
|
SPEEX_LIB=@SPEEX_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2008-01-16 01:17:25 +00:00
|
|
|
SPEEXDSP_INCLUDE=@SPEEXDSP_INCLUDE@
|
|
|
|
SPEEXDSP_LIB=@SPEEXDSP_LIB@
|
|
|
|
|
2007-03-13 21:22:33 +00:00
|
|
|
SQLITE3_INCLUDE=@SQLITE3_INCLUDE@
|
|
|
|
SQLITE3_LIB=@SQLITE3_LIB@
|
|
|
|
|
2010-06-08 05:29:08 +00:00
|
|
|
SRTP_LIB=@SRTP_LIB@
|
|
|
|
SRTP_INCLUDE=@SRTP_INCLUDE@
|
|
|
|
|
2008-11-04 15:07:54 +00:00
|
|
|
OPENSSL_INCLUDE=@OPENSSL_INCLUDE@
|
|
|
|
OPENSSL_LIB=@OPENSSL_LIB@
|
2006-04-24 17:11:45 +00:00
|
|
|
|
2013-07-03 16:33:13 +00:00
|
|
|
CRYPT_INCLUDE=@CRYPT_INCLUDE@
|
|
|
|
CRYPT_LIB=@CRYPT_LIB@
|
|
|
|
|
2007-05-24 22:07:50 +00:00
|
|
|
CRYPTO_INCLUDE=@CRYPTO_INCLUDE@
|
|
|
|
CRYPTO_LIB=@CRYPTO_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
TONEZONE_INCLUDE=@TONEZONE_INCLUDE@
|
|
|
|
TONEZONE_LIB=@TONEZONE_LIB@
|
2006-04-25 05:53:58 +00:00
|
|
|
|
2015-03-25 12:32:26 +00:00
|
|
|
UNBOUND_INCLUDE=@UNBOUND_INCLUDE@
|
|
|
|
UNBOUND_LIB=@UNBOUND_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
UNIXODBC_INCLUDE=@UNIXODBC_INCLUDE@
|
|
|
|
UNIXODBC_LIB=@UNIXODBC_LIB@
|
2006-05-08 15:24:52 +00:00
|
|
|
|
2013-06-03 15:57:42 +00:00
|
|
|
UUID_INCLUDE=@UUID_INCLUDE@
|
|
|
|
UUID_LIB=@UUID_LIB@
|
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
VORBIS_INCLUDE=@VORBIS_INCLUDE@
|
|
|
|
VORBIS_LIB=@VORBIS_LIB@
|
2006-05-08 15:24:52 +00:00
|
|
|
|
2014-09-18 15:07:12 +00:00
|
|
|
HAVE_DAHDI=@PBX_DAHDI@
|
2008-06-12 17:27:55 +00:00
|
|
|
DAHDI_INCLUDE=@DAHDI_INCLUDE@
|
2006-07-05 19:59:34 +00:00
|
|
|
|
2006-07-07 05:32:28 +00:00
|
|
|
ZLIB_INCLUDE=@ZLIB_INCLUDE@
|
|
|
|
ZLIB_LIB=@ZLIB_LIB@
|
2006-08-21 02:11:39 +00:00
|
|
|
|
2006-09-27 21:48:01 +00:00
|
|
|
CAP_LIB=@CAP_LIB@
|
|
|
|
CAP_INCLUDE=@CAP_INCLUDE@
|
2007-01-18 21:57:55 +00:00
|
|
|
|
2007-01-19 15:32:17 +00:00
|
|
|
BKTR_INCLUDE=@BKTR_INCLUDE@
|
|
|
|
BKTR_LIB=@BKTR_LIB@
|
|
|
|
|
2008-11-01 21:10:07 +00:00
|
|
|
LIBXML2_INCLUDE=@LIBXML2_INCLUDE@
|
|
|
|
LIBXML2_LIB=@LIBXML2_LIB@
|
|
|
|
|
2013-08-01 17:07:52 +00:00
|
|
|
LIBXSLT_INCLUDE=@LIBXSLT_INCLUDE@
|
|
|
|
LIBXSLT_LIB=@LIBXSLT_LIB@
|
|
|
|
|
2007-11-17 02:57:40 +00:00
|
|
|
# if poll is not present, let the makefile know.
|
|
|
|
POLL_AVAILABLE=@HAS_POLL@
|
2008-11-19 19:37:32 +00:00
|
|
|
TIMERFD_INCLUDE=@TIMERFD_INCLUDE@
|
2016-12-22 15:42:46 +00:00
|
|
|
|
|
|
|
SNDFILE_INCLUDE=@SNDFILE_INCLUDE@
|
|
|
|
SNDFILE_LIB=@SNDFILE_LIB@
|
2017-10-16 21:46:02 +00:00
|
|
|
|
|
|
|
BEANSTALK_INCLUDE=@BEANSTALK_INCLUDE@
|
|
|
|
BEANSTALK_LIB=@BEANSTALK_LIB@
|