asterisk/build_tools
Corey Farrell a10a3aff6a Build System: Improve ccache matching for different menuselect options.
Changing any Menuselect option in the `Compiler Flags` section causes a
full rebuild of the Asterisk source tree.  Every enabled option causes
a #define to be added to buildopts.h, thus breaking ccache caching for
every source file that includes "asterisk.h".  In most cases each option
only applies to one or two files.  Now we only define those options for
the specific sources which use them, this causes much better cache
matching when working with multiple builds.  For example testing code
with an without MALLOC_DEBUG will now use just over half the ccache
size, only main/astmm.o will have two builds cached instead of every
file.

Reorder main/Makefile so _ASTCFLAGS set on specific object files are all
together, sorted by filename.  Stop adding -DMALLOC_DEBUG to CFLAGS of
bundled pjproject, this define is no longer used by any header so only
serves to break cache.

The only code change is a slight adjustment to how main/astmm.c is
initialized.  Initialization functions always exist so main/asterisk.c
can call them unconditionally.  Additionally rename the astmm
initialization functions so they are not exported.

Change-Id: Ie2085237a964f6e1e6fff55ed046e2afff83c027
2018-08-01 12:01:15 -04:00
..
.gitignore Add .gitignore and .gitreview files 2015-04-11 19:43:43 -06:00
cflags-devmode.xml menuselect: Remove unused dev-mode option TRACE_FRAMES. 2018-01-12 13:00:26 -05:00
cflags.xml module: Remove deprecated modules and update support levels. 2018-07-18 18:15:53 +00:00
download_externals Merge "BuildSystem: Use the detected name for MD5 everywhere." 2018-01-18 10:17:49 -06:00
find_missing_support_level Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
get_documentation remove empty awk pattern (//) 2009-10-28 20:50:52 +00:00
get_documentation.py Fixes to various issues reported by pyflakes 2016-12-21 11:02:20 +02:00
get_makeopts Merged revisions 139909 via svnmerge from 2008-08-25 21:32:10 +00:00
get_moduleinfo res_pjsip_dlg_options: Fix MODULEINFO section. 2015-05-02 02:22:31 -05:00
install_subst install_subst: helper script for installing with path substitution 2014-02-14 08:52:07 +00:00
list_valid_installed_externals BuildSystem: Remove unused variables. 2018-01-28 12:20:26 +01:00
make_build_h make_build_h: handle backslashes in external strings 2017-01-26 21:17:20 -06:00
make_buildopts_h Build System: Improve ccache matching for different menuselect options. 2018-08-01 12:01:15 -04:00
make_check_alembic Build System: Add support for checking alembic branches. 2016-01-21 17:15:35 -06:00
make_defaults_h Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
make_linker_eo_script give embedded modules a helping hand by backing up and restoring their global variables when they are loaded and unloaded 2007-02-22 02:36:00 +00:00
make_linker_version_script Clean up Makefile "warning" clutter when makeopts doesn't exist. 2013-04-08 18:24:50 +00:00
make_sample_voicemail Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
make_version build_tools/make_version: Get MAINLINE_BRANCH from .gitreview. 2018-07-22 12:22:50 -04:00
make_version_c Fix cli display of build options. 2015-11-04 09:15:51 -05:00
menuselect-deps.in BuildSystem: Remove unused dependency on libltdl. 2018-03-17 11:00:06 +01:00
mkpkgconfig build_tools/mkpkgconfig: Fix Cflags concatenation error in asterisk.pc 2015-01-14 15:40:31 +00:00
post_process_documentation.py Fixes to various issues reported by pyflakes 2016-12-21 11:02:20 +02:00
prep_tarball Update prep_tarball with new documentation files on the Asterisk wiki 2013-09-18 17:23:49 +00:00
sha1sum-sh Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00