Commit Graph

166 Commits

Author SHA1 Message Date
Brian West
861961bd4d FS-7180: when using system lua, properly link against reanmed library versions on debian for mod_lua 2015-01-20 13:18:12 -06:00
Michael Jerris
07d09b7869 FS-7180: add --enable-sytem-lua configure arg to allow building mod_lua against system lua and allow mod_lua to build against lua 5.1 or 5.2 2015-01-20 11:48:00 -05:00
Humberto Diógenes
ece5cd52db FS-7088 #resolve Set flag to enable core dump from non-root users.
When FreeSWITCH is running as a non-privileged user, we need to enable
PR_SET_DUMPABLE for it to be able to generate core dumps.

Instead of a generic __linux__ check, there's a new configure.ac flag
to check directly for prctl.h, which could also be used in other
places in the code.
2015-01-05 21:06:29 -03:00
Michael Jerris
62a2e10e41 remove hack breaking some cross compile builds. if you really need this, you should be using new enough glibc anyways 2014-11-19 16:06:42 -05:00
Michael Jerris
11e62dd40d Revert "Revert "FS-6967 New mod_say_es_AR to support Argentina Spanish variant.""
This reverts commit d9d9510ce4.
2014-11-10 11:12:15 -05:00
Ken Rice
d9d9510ce4 Revert "FS-6967 New mod_say_es_AR to support Argentina Spanish variant."
This reverts commit e75d0675af.

Revert "Add mod_say_es_ar to debian packaging"
This reverts commit ebb3c8fbfa.

Conflicts:
	configure.ac
2014-11-08 15:53:57 -06:00
Travis Cross
070aaefaeb Fix whitespace inconsistency 2014-11-07 18:18:03 +00:00
Mike Jerris
b7741916eb Merge pull request #49 in FS/freeswitch from ~VIPKILLA/freeswitch-mod_odbc_cdr:master to master
* commit '544c5faf5e6ce6fe2b87523304d1f00e2d201d90':
  Add module mod_odbc_cdr
2014-11-07 08:34:55 -06:00
Mike Jerris
60b51c46cc Merge pull request #50 in FS/freeswitch from ~JMESQUITA/freeswitch:mod_say_es_AR to master
* commit 'e75d0675afd8974687931143709814544299fadc':
  FS-6967 New mod_say_es_AR to support Argentina Spanish variant.
2014-11-06 17:21:08 -06:00
Joao Mesquita
e75d0675af FS-6967 New mod_say_es_AR to support Argentina Spanish variant. 2014-11-06 19:21:13 -03:00
Brian West
5dee5ce1d5 FS-6953 #resolve 2014-11-03 11:40:17 -06:00
E. Schmidbauer
544c5faf5e Add module mod_odbc_cdr 2014-10-08 08:31:35 -04:00
Michael Jerris
acd8d74316 cleanup conditions 2014-10-03 12:48:43 -04:00
Anthony Minessale
9486a645f8 bump 2014-10-01 18:35:04 -05:00
Anthony Minessale
cc44659a7c bump 2014-10-01 18:34:05 -05:00
Travis Cross
13d9e99ae7 Handle gcc quirk with parameter checking
At least some versions of GCC appear to take any -Wno-foo option
without error even if that option is not supported.  But they will
error out if -Wno-error=foo is used.  This sounds like a GCC bug, but
we'll work around it and test for the feature both ways.

Thanks-to: Matteo Brancaleoni <mbrancaleoni@voismart.it>

FS-6850 #resolve
2014-09-25 13:22:16 +00:00
Travis Cross
bb84b0534c Check for libpq in core before building mod_cdr_pg_csv 2014-09-10 22:29:24 +00:00
Moises Silva
fa3a1a0bdd Added mod_bert module 2014-09-09 04:07:02 -04:00
Russell Treleaven
ce96d95c5e add support for cache directory
make configs use specific directory variables instead of just base_dir
so that one configuration can be used for fhs and legacy installations
2014-08-31 20:22:08 -04:00
Travis Cross
1c058e0f45 Check gcc support for -Wno-unused-result
We're using -Wno-unused-result to work around what is arguably a GCC
bug, but this option is not supported on older GCC versions.  So on
those versions we won't pass -Werror either.

ref: commit b874048efc
2014-08-28 13:37:37 +00:00
Travis Cross
b874048efc Handle gcc's overzealous unused-result warning
Modern static analyzers warn when a variable is set but not used.  GCC
warns when the result of a function marked as
`__attribute__((warn_unused_result))` is not set to some variable,
even when the function is cast to `(void)`, which is the recognized
way of indicating the intent to ignore the result.  We treat all
warnings as errors.

The combination of behaviors here makes it difficult if we really
don't care about the result of the function; the obvious workarounds
are precluded.

GCC's maintainers don't consider this to be a bug:

  Why do you think this is a bug?  warn_unused_result is for cases where
  "not checking the result is either a security problem or always a
  bug".

  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509#c1

GLIBC however marks functions like `read` and `write` with this
attribute.  While it certainly in most cases is correct to act on
their return value, in some cases we really just don't care.

So when we see that we're building with GCC, and that we're building
with all warnings enabled, we'll just pass -Wno-unused-result to
disable the warning.

ref: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509
ref: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
2014-08-22 20:13:39 +00:00
Travis Cross
1933c7cb8a Fix build on Debian sid/jessie
Debian has packaged libpq version 9.4beta2.  We were parsing the minor
version as "4beta2" and then trying to treat it as a constant integer,
which obviously doesn't work.

There's not really a perfect way to handle versions like this, so
we'll just pretend it's 9.4.0.
2014-07-31 04:05:47 +00:00
Charlie Root
a1d73dfd09 Fix configure check for libjpeg to not break other checks 2014-07-23 14:52:07 -05:00
Travis Cross
a537d80372 Add new module: mod_prefix
mod_prefix is an in-memory data store optimized for fast lookups
according to the longest prefix match (LPM) rule.

Tables of key-value string pairs in JSON format can be loaded at
startup via configuration and at runtime via the API.

The implementation uses a bitwise trie (aka binary prefix tree), so
arbitrary string keys are supported.
2014-07-22 15:28:31 +00:00
Travis Cross
02ee686d85 Remove remaining traces of mod_spidermonkey 2014-07-18 19:07:38 +00:00
Michael Jerris
6706378b38 we have already removed the module from tree, no need to bootstrap/configure the lib still, or to have it in tree at all for that matter 2014-07-18 14:15:26 -04:00
Michael Jerris
b186ca9f74 FS-6542: add pkg_config path for portaudio on mac via homebrew 2014-07-18 12:53:54 -04:00
Travis Cross
a0e19e1c7f Use system portaudio library
This removes our in-tree version of portaudio-19 and migrates
mod_portaudio and mod_portaudio_stream to use the system version of
the library.  Our detection of the system library relies on
pkg-config.
2014-07-17 21:15:53 +00:00
Anthony Minessale
a2921e269c update verto with some fixes and enhancements with reconnection 2014-07-18 01:04:04 +05:00
Anthony Minessale
abe4261a92 bump 2014-07-15 20:34:48 +05:00
Anthony Minessale
d9f51f556f bump 2014-07-15 20:33:32 +05:00
Anthony Minessale
810717cae0 check for proper openal symbol to enable functionality 2014-06-30 01:23:07 +05:00
Michael Jerris
94f359904d remove dual-arch cflags and ldflags that we get on osx, we don't support fat binary stuff yet 2014-06-17 19:22:34 +00:00
Michael Jerris
548be28694 FS-6602: check for libperl libstalled and linkable too 2014-06-17 11:44:18 -05:00
Michael Jerris
5dd7791307 FS-6602: fixed check for EXTERN.h 2014-06-17 11:17:55 -05:00
Michael Jerris
82dbc5d2b9 FS-6604: install to archlib not sitelibexp 2014-06-17 10:35:17 -05:00
Michael Jerris
b8629901a2 fix dep check for building perl mods 2014-06-17 09:44:24 -05:00
Michael Jerris
09ae3a9841 don't require more libs than we really need when linking embedded perl modules 2014-06-12 17:34:41 -05:00
Michael Jerris
1ffb1ee0d0 WIP 2014-06-11 12:48:46 -05:00
Travis Cross
79a888de2c Revert addition of PERL_GCC_PEDANTIC to CFLAGS
Brian and I decided to handle this by just stripping -ansi -pedantic
from the mod_perl build instead.

Revert "Since we can't tell if the system perl was built with
pedantic, we have a problem because we default debug enabled which
uses AX_CFLAGS_WARN_ALL_ANSI, For the GNU CC compiler it will be
-Wall (and -ansi -pedantic) The result is added to the shellvar being
CFLAGS by default.  Which then gets included for building mod_perl,
Either way I think this is the correct corse of action to overcome
these new builds of mod_perl."

This reverts commit cb94340e26.
2014-05-30 15:40:46 +00:00
Brian West
cb94340e26 Since we can't tell if the system perl was built with pedantic, we have a problem because we default debug enabled which uses AX_CFLAGS_WARN_ALL_ANSI, For the GNU CC compiler it will be -Wall (and -ansi -pedantic) The result is added to the shellvar being CFLAGS by default. Which then gets included for building mod_perl, Either way I think this is the correct corse of action to overcome these new builds of mod_perl. 2014-05-29 21:13:07 -05:00
Anthony Minessale
5138f4d5a7 add new stub module mod_rtc dummy signaling-free media engine endpoint 2014-05-28 07:31:24 +05:00
Chris Rienzo
b5816d3477 mod_graylog2: native GELF logging 2014-05-23 16:53:42 -04:00
Travis Cross
9d99c34682 Break on missing ldns lib at configure time
Previously we would detect the missing LDNS system library at
configure time, but would only break during the build of mod_enum.

With this change, if mod_enum is enabled in modules.conf and the
system doesn't have a usable LDNS library we break during configure.
2014-05-22 17:56:48 +00:00
Ken Rice
285e7dc3d0 slight tweat to pgsql version detection using awk instead of sed for bsd portability 2014-05-19 12:38:09 -05:00
Travis Cross
c006db6fc6 Fix test for pkg-config 2014-05-12 13:50:21 +00:00
Travis Cross
04dc901641 Check for pkg-config at $PKG_CONFIG in configure
This allows someone without pkg-config in their PATH to set where
pkg-config is located.
2014-05-09 22:12:11 +00:00
Anthony Minessale
dcaa08760c bump 2014-05-10 02:48:17 +05:00
Anthony Minessale
7e0995d069 bump 2014-05-10 02:47:01 +05:00
Travis Cross
c96c733e9f Test for pkg-config in configure
We depend on pkg-config, but we weren't explicitly testing for it, so
the absence of pkg-config would cause the sqlite test to fail, which
was confusing.
2014-05-09 20:35:17 +00:00
Michael Jerris
31069f33a2 generate the modules list vars from modules.conf into a file instead of on the fly every time 2014-05-08 15:59:49 -04:00
Michael Jerris
d6fe10979d remove opezap from tree, it has been replaced by freetdm 2014-05-06 11:05:54 -04:00
Travis Cross
0a56e643b1 Avoid training :'s in paths
When the path was empty, path_push_unique would cause a training colon
to be added.  This was a known issue that didn't cause any harm, but
while we're here, we'll clean this up.
2014-05-05 21:39:51 +00:00
Travis Cross
aef982dd09 Work around Mac's broken sed
sed on Mac is apparently incredibly broken and incapable of adding
newlines.  `printf 'x' | sed 's/x/\n/'` results in 'n' on Mac rather
than a newline.  GNU sed even in --posix mode does not agree with this
behavior.  None the less, we can work around it here.
2014-05-05 21:32:30 +00:00
Travis Cross
c44404d45d Add a fallback test for ldns system library
Some systems don't have the pkg-config file, or don't have it in the
right place.  Breaking build on those systems does have the positive
effect of getting people to file bugs with those distros, but we
should at least keep things working on Debian wheezy while getting
Debian to accept the fix to ldns.
2014-05-02 18:22:20 +00:00
Michael Jerris
7da28a2481 FS-353: look for ldns pkg-config for homebrew, you will need to update your homebrew ldns package if you installed it prior to this commit, they just fixed the pkg-config file being installed 2014-05-02 13:26:43 -04:00
Travis Cross
a3e1b7df49 Protect cross-compiling from polluted PKG_CONFIG_PATH 2014-05-01 22:23:59 +00:00
Travis Cross
cd650f6055 Use system ldns library
This library is used only by mod_enum and is available on most
platforms.  The version in our tree has many code quality problems
that are generating noise when doing static analysis.  Suffice it to
say we want rid of it as our responsibility.

FS-353
2014-05-01 22:01:59 +00:00
James Le Cuirot
4bdb7129ba Ungetlib libmemcached
Tested with several libmemcached versions between 0.31 and
1.0.18. Unfortunately the API is extremely volatile and awkward to
use. Packaging scripts still need addressing.

FS-353
2014-04-11 22:55:36 +00:00
James Le Cuirot
c86b939fb3 Show message in configure when YAML isn't there
FS-353

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-04-11 22:52:51 +00:00
Michael Jerris
03844dcbe5 FS-6425: try to fix clear configure with openssl in brew dir 2014-04-03 15:33:54 -04:00
Michael Jerris
0fd1e16444 try to push sysroot in correctly c++ 2014-04-02 08:00:20 -04:00
Anthony Minessale
3a2736291e add mod_basic 2014-03-31 18:08:59 -05:00
James Le Cuirot
4bdef6e605 Fix detection of libedit on BSD
Since libedit originates from NetBSD, this and other BSDs use the
official version while Linux distributions tend to use the
autotoolized fork. The official version does not install a .pc file so
we cannot rely exclusively on pkg-config for detection.

FS-6408

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-03-31 21:59:42 +00:00
James Le Cuirot
ec044e62e2 Add -I flags to CPPFLAGS
Don't use CFLAGS or CXXFLAGS for this because AC_CHECK_HEADER only
uses CPPFLAGS.

FS-6408

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-03-31 21:59:41 +00:00
Michael Jerris
1e51e86845 working cross configure for arm gnueabi 2014-03-31 10:34:46 -04:00
Michael Jerris
0876df6a11 a bit more open in type of arm 2014-03-31 09:56:45 -04:00
Michael Jerris
ab2cab2660 also push PKG_CONFIG_SYSROOT_DIR and set some test results that can not be figured out during cross compile explicitly for arm-linux-gnueabi*|arm-*-linux-gnueabi* 2014-03-31 09:48:02 -04:00
Michael Jerris
2d2cb445c0 push sysroot down to other libs and things that don't use libtool as well, so you don't need to specify it in a bunch of different ways when using it. 2014-03-31 08:27:11 -04:00
Michael Jerris
7dba19ceeb make cross compile a bit easier, as this setitng needs to be set manually, and we never use this feature 2014-03-28 17:00:53 -04:00
Travis Cross
0fe2039219 Require libedit-dev be available unless disabled
Previously we enabled libedit support opportunistically if it was
neither enabled nor disabled explicitly.  But this can result in
people being confused by libedit features not being available when
they really just need to install dependencies.  With this change,
we'll break on configure if libedit-dev isn't there.  If the user
really wants to build without libedit they just need to explicitly
disable it.

Cc: Ken Rice <krice@freeswitch.org>
2014-03-28 15:48:20 +00:00
Michael Jerris
1681b04129 FS-6406: --resolve add a way to specify build compiler for cross compile 2014-03-26 17:15:24 -04:00
Travis Cross
f9d065cda3 Use system libyaml for mod_yaml
FS-353
2014-03-26 19:27:22 +00:00
Travis Cross
b0bcc011ea Deprecate mod_spidermonkey
We consider mod_spidermonkey to be completely replaced by mod_v8 (and
more generally by mod_lua) at this point.  We've barely supported
mod_spidermonkey for years.  Everyone should stop using it.

We're keeping this around for awhile in case people are relying on C
extensions to mod_spidermonkey and need time to migrate.  This module
may or may not be part of a v1.4 release depending on whether we find
anyone cares.  It definitely will not be part of the next release
after v1.4.
2014-03-26 18:01:49 +00:00
Travis Cross
bcfb72cb2b Lower required version of sqlite for CentOS 6
Apparently CentOS 6 has only v3.6.20 of sqlite, so we'll accommodate
that barring evidence we shouldn't.  Please test and report back.
2014-03-24 13:55:44 +00:00
Travis Cross
3964aa1fdf Lower required version of sqlite
We've really only tested 3.8.3.1, so you might want to consider using
that.  We'll lower this down to 3.7.13 for Debian wheezy.  Please
test.
2014-03-24 13:55:43 +00:00
Michael Jerris
169a264c33 FS-353: sqlite pkg-config path for mac homebrew 2014-03-24 09:09:52 -04:00
Anthony Minessale
487128950d Use the system version of APR / APR-util if possible
Autodetect whether the system libapr / libaprutil has our
necessary modifications and use it if it does.
2014-03-24 12:54:50 +00:00
Travis Cross
cde20f6fe6 Require sqlite as a system dependency
This purges sqlite from our tree and requires it to be present on the
system for building and running FreeSWITCH.

FS-353
2014-03-24 12:54:49 +00:00
James Le Cuirot
8574988c3a Completely unbundle libedit
FS-353

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-03-24 12:39:59 +00:00
Peter Olsson
c8fa0f0c4b mod_v8: Use parallel build by default. Use configure flag "--disable-parallel-build-v8" to disable it. It's disabled by default for Debian build scripts, since parallel build has some issues with cowbuilder. 2014-03-23 09:25:41 +01:00
Michael Jerris
230b217810 fix perl detection 2014-03-21 18:20:16 -04:00
Brian West
719d37dbf8 first 1/2 of automake for esl phpmod 2014-03-21 16:01:35 -05:00
Brian West
4e734db296 we need to do these in subdirectories because a number of the modules build a different ESL.so 2014-03-21 15:45:40 -05:00
Brian West
91d308dfac fully automake esl perlmod 2014-03-21 15:34:52 -05:00
Brian West
5014b80d53 1/2 of automake for esl perl, at least we have configure detecting things now 2014-03-21 14:59:01 -05:00
Travis Cross
ad094b7a8b Allow older versions of curl to be used
...at your own risk.  cURL has had some serious security issues over
the years, so if you're using an ancient version, I hope that you're
receiving security patches from your vendor.

The version set here is to accommodate CentOS 6.
2014-03-20 21:46:07 +00:00
Michael Jerris
d1045b12e1 FS-353: add PKG_CONFIG_PATH for keg only curl from homebrew on mac 2014-03-20 17:40:21 -04:00
Travis Cross
03132e3fd5 Export paths touched by path_push_unique()
FS-353
2014-03-20 21:28:26 +00:00
Travis Cross
3b1278a37a Add curl auto PKG_CONFIG_PATH handling for OS X
FS-353
2014-03-20 21:15:40 +00:00
Travis Cross
1470622292 Require libcurl as a system dependency
This purges libcurl from our tree and requires it to be present on the
system for building and running FreeSWITCH.

FS-353
2014-03-20 21:15:29 +00:00
Travis Cross
c9bdf3b415 Match darwin13 in configure.ac
Mike and Seven said this is desirable.
2014-03-20 20:24:22 +00:00
Michael Jerris
74da7aaf10 FS-353: allow people to use 5 year old and with known segfault issues pcre because centos6 can't seem to use a lib less that 5 years old, use with older libs at your own risk 2014-03-20 12:46:52 -04:00
James Le Cuirot
b283db6319 Completely unbundle speex
FS-353

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-03-20 15:28:25 +00:00
James Le Cuirot
e85f06ee2f Completely unbundle pcre
FS-353

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-03-20 15:28:23 +00:00
Michael Jerris
3ec53f0b67 ESL-86: esl automake of at least the core parts 2014-03-20 10:38:47 -04:00
Brian West
b8f1a1779f Support Intel ICC 2014-03-19 14:34:07 -05:00
Brian West
07a10a1cc5 FS-6375 our LDFLAGS should preceed libcurl detected LDFLAGS 2014-03-19 12:03:34 +00:00
Brian West
6452f12b33 FS-6375: now withless for the dev to remember 2014-03-19 11:41:36 +00:00
Brian West
4dddcafc82 FS-6375 correct copy and paste error 2014-03-19 09:10:44 +00:00