Commit graph

38 commits

Author SHA1 Message Date
Luigi Rizzo
b80dc41707 Move the last instance of AST_LIBS to the only place it is used,
namely main/Makefile .

I am unclear where decisions on the build environment (CFLAGS,
LDFLAGS, LIBS and so on) should be made - right now they are
split here and there.

As a first step in cleaning up this situation, i am trying to at
least collect all instances of each variable in one place.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88767 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-05 21:27:04 +00:00
Steve Murphy
50d5fd877e Merged revisions 86881 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r86881 | murf | 2007-10-23 14:22:25 -0600 (Tue, 23 Oct 2007) | 1 line

this update to Makefile corrects how ast_expr2f.c should be generated
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86900 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-23 20:44:58 +00:00
Russell Bryant
d99440e2ed Merged revisions 81342 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81342 | russell | 2007-08-29 10:57:29 -0500 (Wed, 29 Aug 2007) | 3 lines

If chan_h323 is not being built, don't use g++ to do the final link of Asterisk.
(in response to a question on the asterisk-dev list)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81343 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 15:59:10 +00:00
Russell Bryant
50d7fc81aa Merged revisions 80362 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80362 | russell | 2007-08-22 15:21:36 -0500 (Wed, 22 Aug 2007) | 34 lines

Merge changes from team/russell/iax_refcount.

This set of changes fixes problems with the handling of iax2_user and iax2_peer
objects.  It was very possible for a thread to still hold a reference to one of
these objects while a reload operation tries to delete them.  The fix here is to
ensure that all references to these objects are tracked so that they can't go away
while still in use.

To accomplish this, I used the astobj2 reference counted object model.  This
code has been in one of Luigi Rizzo's branches for a long time and was primarily
developed by one of his students, Marta Carbone.  I wanted to go ahead and bring
this in to 1.4 because there are other problems similar to the ones fixed by these
changes, so we might as well go ahead and use the new astobj if we're going to go
through all of the work necessary to fix the problems.

As a nice side benefit of these changes, peer and user handling got more efficient.
Using astobj2 lets us not hold the container lock for peers or users nearly as long
while iterating.  Also, by changing a define at the top of chan_iax2.c, the objects
will be distributed in a hash table, drastically increasing lookup speed in these
containers, which will have a very big impact on systems that have a large number of
users or peers.

The use of the hash table will be made the default in trunk.  It is not the default
in 1.4 because it changes the behavior slightly.  Previously, since peers and users
were stored in memory in the same order they were specified in the configuration file,
you could influence peer and user matching order based on the order they are specified
in the configuration.  The hash table does not guarantee any order in the container,
so this behavior will be going away.  It just means that you have to be a little
more careful ensuring that peers and users are matched explicitly and not forcing
chan_iax2 to have to guess which user is the right one based on secret, host, and
access list settings, instead of simply using the username.

If you have any questions, feel free to ask on the asterisk-dev list.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 20:44:23 +00:00
Joshua Colp
602198c402 Merge audiohooks branch into trunk. This is a new API for developers to listen and manipulate the audio going through a channel.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78649 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-08 19:30:52 +00:00
Steve Murphy
94b934c8f6 Merged revisions 72933 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r72933 | murf | 2007-07-02 14:16:31 -0600 (Mon, 02 Jul 2007) | 1 line

support for floating point numbers added to ast_expr2 $\[...\] exprs. Fixes bug 9508, where the expr code fails with fp numbers. The MATH function returns fp numbers by default, so this fix is considered necessary.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02 21:50:15 +00:00
Luigi Rizzo
3caa225108 Make sure that we properly recurse in subdirectories to
check dependencies for libraries.
Because these targets (e.g. minimime/libmmime.a) are real ones,
declaring them .PHONY would cause them to be rebuilt every time
(see e.g. SVN 64355).

As a workaround I am using the following CHECK_SUBDIR target:

  CHECK_SUBDIR:  # do nothing, just make sure that we recurse in the subdir/
  minimime/libmmime.a: CHECK_SUBDIR
	@cd minimime && $(MAKE) libmmime.a

which seems to do a better job than .PHONY (probably because
.PHONY forces the rebuild even if the recursive make does not think
it is necessary).

If this turns out to be the correct approach, we can then
merge it back into 1.4



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-29 20:33:35 +00:00
Joshua Colp
42c63dd2ed Add the adsistub file to the Asterisk makefile, fix a stub definition, and no longer make the symbols from res_adsi global since they don't need to be.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65233 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-20 14:48:31 +00:00
Jason Parker
ee7301ac68 With libmmime.a as a .PHONY target, asterisk gets rebuilt every time, but without proper ASTCFLAGS.
This caused a problem with the buildinfo.o file not being able to find asterisk/build.h

This was affecting DESTDIR, but I *think* that if asterisk had never been installed before, it would've failed also.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64355 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-14 21:51:03 +00:00
Russell Bryant
b6b1bf3213 Merge changes from team/russell/events
This set of changes introduces a new generic event API for use within Asterisk.
I am still working on a way for events to be shared between servers, but this
part is ready and can already be used inside of Asterisk.

This set of changes introduces the first use of the API, as well.  I have
restructured the way that MWI (message waiting indication) is handled.  It is
now event based instead of polling based.  For example, if there are a bunch
of SIP phones subscribed to mailboxes, then chan_sip will not have to
constantly poll the mailboxes for changes.  app_voicemail will generate events
when changes occur.

See UPGRADE.txt and CHANGES for some more information on the effects of these
changes from the user perspective.  For developer information, see the text in
include/asterisk/event.h.

As always, additional feedback is welcome on the asterisk-dev mailing list.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62292 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-28 21:01:44 +00:00
Russell Bryant
0a9750ef9f Merged revisions 60603 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r60603 | russell | 2007-04-06 15:58:43 -0500 (Fri, 06 Apr 2007) | 13 lines

To be able to achieve the things that we would like to achieve with the
Asterisk GUI project, we need a fully functional HTTP interface with access
to the Asterisk manager interface.  One of the things that was intended to be
a part of this system, but was never actually implemented, was the ability for
the GUI to be able to upload files to Asterisk.  So, this commit adds this in
the most minimally invasive way that we could come up with.

A lot of work on minimime was done by Steve Murphy.  He fixed a lot of bugs in
the parser, and updated it to be thread-safe.  The ability to check
permissions of active manager sessions was added by Dwayne Hubbard.  Then,
hacking this all together and do doing the modifications necessary to the HTTP
interface was done by me.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-06 21:16:38 +00:00
Jason Parker
90b75256d9 Merged revisions 59573 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r59573 | qwell | 2007-03-30 17:50:31 -0500 (Fri, 30 Mar 2007) | 2 lines

Add linux-uclibc host arch..."thingy".  Sorry, I don't know what it's called...

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59574 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-30 22:54:01 +00:00
Russell Bryant
ef5aba253e Merged revisions 53464 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r53464 | russell | 2007-02-07 14:07:39 -0600 (Wed, 07 Feb 2007) | 4 lines

The clean target actually needs to run "distclean" on editline.  This is
because we need to make sure that its configure script gets executed again,
because the CFLAGS we want to pass to editline may have changed.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@53465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-07 20:09:58 +00:00
Russell Bryant
f351f4278a Merged revisions 52695 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r52695 | russell | 2007-01-29 16:58:09 -0600 (Mon, 29 Jan 2007) | 2 lines

Add a missing quotation mark.  This was pointed out by jcmoore on #asterisk-dev.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@52696 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-29 22:58:35 +00:00
Russell Bryant
5dfed82cb9 Merged revisions 52647 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r52647 | russell | 2007-01-29 15:36:56 -0600 (Mon, 29 Jan 2007) | 3 lines

ASTLDFLAGS needs to be passed to the editline configure script as LDFLAGS.
(issue #8928, zandbelt)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@52648 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-29 21:37:31 +00:00
Joshua Colp
9826fc599b Merged revisions 52049 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r52049 | file | 2007-01-24 13:20:05 -0500 (Wed, 24 Jan 2007) | 2 lines

Merge in dialing API and the app_page that uses it. (issue #BE-118)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@52050 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-24 18:23:07 +00:00
Luigi Rizzo
80243d0f0c forgot to add AST_LIBS += $(BKTR_LIB)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@51301 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-19 16:51:31 +00:00
Russell Bryant
fa16f36aae Merged revisions 51262 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r51262 | russell | 2007-01-18 15:54:23 -0600 (Thu, 18 Jan 2007) | 5 lines

Ensure that the locations given to the Asterisk configure script for ncurses,
curses, termcap, or tinfo are further passed along to the editline configure
script.  This fixes some cross-compilation environments.
(issue #8637, reported by ovi, patch by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@51263 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-18 21:57:55 +00:00
Kevin P. Fleming
74f401d05f Merged revisions 50867 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r50867 | kpfleming | 2007-01-15 09:03:06 -0600 (Mon, 15 Jan 2007) | 2 lines

use the ACX_PTHREAD macro from the Autoconf macro archive for setting up compiler pthreads support... should improve portability to platforms with unusual pthreads requirements

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@50869 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-15 15:08:45 +00:00
Kevin P. Fleming
4764795b37 Merged revisions 49553 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49553 | kpfleming | 2007-01-04 16:51:01 -0600 (Thu, 04 Jan 2007) | 2 lines

add support for tracking thread-local-storage objects that exist via 'threadstorage' CLI commands

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49578 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-04 23:18:36 +00:00
Kevin P. Fleming
920de98f68 Merged revisions 48554 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48554 | kpfleming | 2006-12-18 05:59:24 -0600 (Mon, 18 Dec 2006) | 3 lines

remove some now-unnecessary explicit includes of autoconfig.h
clean up per-file dependencies during 'make clean'

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48555 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-18 11:59:48 +00:00
Kevin P. Fleming
89c41e2403 Merged revisions 48525 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r48525 | kpfleming | 2006-12-16 15:14:34 -0600 (Sat, 16 Dec 2006) | 2 lines

simplify dependency tracking system, using the compiler's built-in method for generating them, and only doing dependency tracking if developer mode is enabled via the configure script

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-16 21:24:52 +00:00
Joshua Colp
9335b4bc1c Merged revisions 46780 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46780 | file | 2006-11-01 13:39:47 -0500 (Wed, 01 Nov 2006) | 2 lines

Force poll() emulation for Darwin to always be on. It's too broken to consider being used. This resolves the console issue OSX users have been seeing. I would have liked to autoconf this but I haven't been able to come up with a test case that works. Que sera.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46782 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-01 18:41:49 +00:00
Luigi Rizzo
c15f7953c8 Fix a few issues in the previous (disabled) HTTPS code,
and support linux as well (using fopencookie(), which should
be available in glibc).

Update configure.ac to check for funopen (BSD) and fopencookie(glibc),
and while we are at it also for gethostbyname_r
(the generated files need to be updated, or you need
to run bootstrap.sh yourself).

Document the new options in http.conf.sample
(names are only tentative, better ones are welcome).

At this point we can safely enable the option.
Anyone willing to try this on Sun and Apple platforms ?



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-22 19:09:25 +00:00
Joshua Colp
e85da9be41 Let's have build.h created a bit earlier so that func_version can use it and not stop the build on a fresh machine that has never had Asterisk installed on it before...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-22 04:44:43 +00:00
Luigi Rizzo
8d6d166b14 merge compile fixes from 44080:
- with AST_DEVMODE, building codecs/lpc10 fails because of lots
  of warnings, and the configure step in editline fails as well.
  Fix this by removing the -Werror in these steps.

- on FreeBSD (but probably on other platforms as well), the final   
  link of asterisk fails because AST_LIBS was not exported to the
  subdirs Makefiles. Add a proper fix in the top-level Makefile
  (a possible alternative way is to add "export AST_LIBS" near
  the beginning of the file).
  With this fix, i believe that some of the platform-specific
  conditionals in main/Makefile are redundant (because they should
  be already dealt with in the top level Makefile) but i don't
  have a platform to check.




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44081 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-30 16:37:21 +00:00
Kevin P. Fleming
89050169c8 Merged revisions 43996-43997,44008,44011-44012 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43996 | kpfleming | 2006-09-29 11:47:05 -0500 (Fri, 29 Sep 2006) | 2 lines

another cross-compile fix

........
r43997 | kpfleming | 2006-09-29 11:52:27 -0500 (Fri, 29 Sep 2006) | 2 lines

support --without-curl in configure script

........
r44008 | kpfleming | 2006-09-29 13:25:49 -0500 (Fri, 29 Sep 2006) | 2 lines

don't abuse CFLAGS and LDFLAGS for build of Asterisk components, because they are also then used for non-Asterisk components (like menuselect); use our own variables instead

........
r44011 | kpfleming | 2006-09-29 13:40:17 -0500 (Fri, 29 Sep 2006) | 2 lines

missed one conversion to ASTCFLAGS

........
r44012 | kpfleming | 2006-09-29 13:49:07 -0500 (Fri, 29 Sep 2006) | 2 lines

yet another place where we were not using the correct CFLAGS by default

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44013 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 18:54:21 +00:00
Joshua Colp
4116cfc387 Add ability to set high ToS bits as non-root on Linux using libcap (issue #7047 reported by maddison)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43830 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-27 21:48:01 +00:00
Kevin P. Fleming
f1d824aaba Merged revisions 43450 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43450 | kpfleming | 2006-09-21 16:21:29 -0500 (Thu, 21 Sep 2006) | 2 lines

add another attempt to strip non-API symbols from the final binary... script will need to be extended to work on non-Linux systems

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43451 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 21:22:34 +00:00
Kevin P. Fleming
7e4c790a3e Merged revisions 43405 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43405 | kpfleming | 2006-09-21 11:08:03 -0500 (Thu, 21 Sep 2006) | 2 lines

remove this change... it requires binutils 2.17

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43406 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 16:09:31 +00:00
Kevin P. Fleming
9ae105df1d don't let symbols from included static libraries (like codec/ilbc) pollute the global namespace when those modules are embedded
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43360 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 20:13:42 +00:00
Matthew Fredrickson
2cc96500bd Mergeing in Paul Cadach's chan_h323 changes *holds breath*
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 17:07:22 +00:00
Kevin P. Fleming
5cf1c12796 it appears that current Mac OS/X does not need the poll compatibility module at all, and platforms that do need it also need -DPOLLCOMPAT (or they wouldn't have compiled at all)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:20:24 +00:00
Jason Parker
f18cbf77df Many Solaris fixes - this moves some of the stuff from utils.c to strcompat.c
Every OS uses strcompat now - this was done on purpose.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-15 17:16:00 +00:00
Kevin P. Fleming
d12f54f90b GNU make already knows how to quietly ignore non-existent files in 'include' directives
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 23:58:47 +00:00
Kevin P. Fleming
3ba8e0a973 ensure that cross-compiler info is removed from the enviroment before configuring menuselect
ensure that the user's LDFLAGS take precedence when linking the final binary


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41178 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 17:05:38 +00:00
Kevin P. Fleming
aa7b32d175 more optimizations for embedded systems:
when LOADABLE_MODULES is off, don't export symbols from the main binary
  when LOADABLE_MODULES is off, and the compiler/linker support it, strip out code not used in the final binary


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 16:45:35 +00:00
Kevin P. Fleming
0a27d8bfe5 merge new_loader_completion branch, including (at least):
- restructured build tree and makefiles to eliminate recursion problems
  - support for embedded modules
  - support for static builds
  - simpler cross-compilation support
  - simpler module/loader interface (no exported symbols)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00