[asterisk-dev] [Code Review] 3212: Makefile: fix so "make main" works without compiling deps (unless needed)

wdoekes reviewboard at asterisk.org
Fri Feb 14 07:32:22 CST 2014

This is an automatically generated e-mail. To reply, visit:

(Updated Feb. 14, 2014, 1:32 p.m.)


This change has been marked as submitted.

Review request for Asterisk Developers.

Repository: Asterisk


When I want to test that my svn-merged code works, I look at the diff and I check that the compilation succeeds.

The quickest way is then to build only the subdirectory where the changed code resides.

E.g. when changing something in res_config_pgsql.so:

    make res

However, when something is changed in main, it will compile *all* the other dirs first. Making me wait.

    ifeq ($(findstring $(OSARCH), mingw32 cygwin ),)
        # Non-windows:
        # ensure that all module subdirectories are processed before 'main' during
        # a parallel build, since if there are modules selected to be embedded the
        # directories containing them must be completed before the main Asterisk
        # binary can be built
    main: $(filter-out main,$(MOD_SUBDIRS))

I doubt that more than 1% of the people uses embedded modules. Don't make the rest of us wait!

This change adds a second check for the $(MENUSELECT_EMBED) variable: if it is empty, we do not add the dependency.


  /trunk/Makefile 407969 

Diff: https://reviewboard.asterisk.org/r/3212/diff/


Ran a bunch of make, make clean, make distclean, make main, with and without module embedding selected.

If any module is embedded, the dependency is enforced like before.
If no module embedding is selected, main compiles directly.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140214/57e85069/attachment.html>

More information about the asterisk-dev mailing list