Commit Graph

28 Commits

Author SHA1 Message Date
Luigi Rizzo f92cdf3831 make the code match documentation - now you can specify multiple
words in MODULE_PREFIX.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93580 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 08:56:16 +00:00
Kevin P. Fleming 100ef27af9 Merged revisions 93180 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r93180 | kpfleming | 2007-12-16 22:44:51 -0800 (Sun, 16 Dec 2007) | 23 lines

In http://lists.digium.com/pipermail/asterisk-dev/2007-December/031145.html,
rizzo brought up some issues related to the way that the metadata required
for menuselect and the rest of the build system is extracted from the source
files. Since I had a few hours to kill on an airplane today, I decided to
improve this situation... so now the system caches the extracted metadata
and uses it to build the menuselect 'tree' as much as it can. The result
of this is that when a single source file is changed, only the metadata for
that file needs to be extracted again, and the rest is used from the cache
files. I also reduced the number of forked processes required to do the
metadata extraction; it was actually possible to do most of what we needed
in the Makefiles themselves without using any shell scripts at all! On my
laptop, these changes resulted in an 80% decrease in the time required
for the 'menuselect.makeopts' automatic check to occur after editing a single
source file.

While doing this work I also cleaned up a few minor things in the Makefiles,
adding a check for 'awk' to the configure script and changed all remaining
places we use 'grep' or 'awk' to use the ones found by the configure script,
and changed the 'prep_tarball' script to build the menuselect metadata so
that tarballs of Asterisk will include it and won't require the user to
wait while it is extracted after unpacking.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-17 07:25:35 +00:00
Luigi Rizzo 5490889153 Put into Makefile.moddir_rules the common instructions used to
generate loadable and embedded module lists.

Individual Makefiles now are a lot simpler, possibly as simple as this:

    -include $(ASTTOPDIR)/menuselect.makeopts $(ASTTOPDIR)/menuselect.makedeps
    MODULE_PREFIX=cdr_
    all: _all
    include $(ASTTOPDIR)/Makefile.moddir_rules

and also more flexible because in a single directory we can combine
various types of modules (app_, cdr_, func_, ... ) by simply
listing them in the MODULE_PREFIX variable.

The individual Makefiles can also create list of modules to be
excluded by listing them in the variablel MODULE_EXCLUDE (see an
example in channels/Makefile).

With this change it becomes trivial to integrate a directory with
locally created/modified sources into the main build.




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-10 03:50:38 +00:00
Luigi Rizzo 1e1a9e30d8 make the install target a bit less noisy
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-10 02:06:40 +00:00
Luigi Rizzo daf8d1f1b8 another place where ../ should have been ASTTOPDIR
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92023 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-09 21:32:30 +00:00
Luigi Rizzo 6938f4b2b0 Fix building of modules under cygwin.
After this commit we can actually load modules under windows,
and we can start debugging more interesting problems related
to the load order and functionality of modules.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89454 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20 16:12:10 +00:00
Luigi Rizzo a7a0ca9f93 initial makefile changes to build loadable modules under cygwin
(not complete yet - still need to sort out dependecies on res_*)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89443 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20 07:42:38 +00:00
Luigi Rizzo 560fe89e1b as discussed some time ago on the -dev list, create embedde object
with a .eo suffix even if they are coming from .cc sources.
This simplifies the handling in the build scripts.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 17:27:26 +00:00
Luigi Rizzo fb4d88cc99 and this is the last one to have asterisk compile (not run yet)
natively under cygwin.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89375 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 11:10:16 +00:00
Luigi Rizzo 17bf109dbe compatibility fix for mingw32
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89352 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 02:50:52 +00:00
Luigi Rizzo a32019aba6 comment out an unused variable. Remove it in a few days
if no problems arise.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-05 20:50:26 +00:00
Luigi Rizzo cddb1a2532 merge two rules with the same right hand;
document a bit what is done here.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88587 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-05 17:27:02 +00:00
Kevin P. Fleming a4b8ca220d clean up assembler and preprocessor files if they are here too
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87467 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-29 22:24: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
Kevin P. Fleming 1bec2f5bfa give embedded modules a helping hand by backing up and restoring their global variables when they are loaded and unloaded
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-22 02:36:00 +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
Kevin P. Fleming e92c34cc38 Merged revisions 44055 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

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

fix a few build system bugs, and convert Makefiles to be compatible with GNU make 3.80

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44056 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 22:48:43 +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
Kevin P. Fleming 58ca54e68a revert this since, since some unnamed platforms are silly about it :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43213 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:54:46 +00:00
Kevin P. Fleming c80d09559f minor performance improvement for platforms where -fPIC and -fpic are actually different (has no effect on x86/x86-64)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 15:54:57 +00:00
Kevin P. Fleming be29512d1e more makefile tweaks to keep targets from being run when they don't need to be
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42505 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-09 03:27:21 +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 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
Kevin P. Fleming 000ba592b2 more Makefile cleanup and consistency stuff
don't reuse LIBS variable from top-level Makefile (oops)
build Asterisk binary after subdirs (preparing for embedded modules)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37661 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-15 19:59:35 +00:00
Kevin P. Fleming 396ef6f9e7 use LDFLAGS and LIBS properly, and allow dependencies to provide LDFLAGS if needed (although none do today)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37653 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-15 16:40:05 +00:00
Kevin P. Fleming 4f826452cf make the build output less noisy (optional, can be controlled by the NOISY_BUILD variable in the top-level Makefile)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-06 23:18:45 +00:00
Kevin P. Fleming 748431f7b6 move rules file to prepare for generic rules file
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37222 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-06 21:04:28 +00:00