Summary:ASTERISK-05185: [patch] make -j doesn't work
Reporter:Roy Sigurd Karlsbakk (rkarlsba)Labels:
Date Opened:2005-09-29 05:23:06Date Closed:2008-01-15 15:50:12.000-0600
Versions:Frequency of
Environment:Attachments:( 0) 5328.rev0.txt
( 1) 5328.rev1.txt
( 2) 5328.rev2.txt
( 3) make.log
( 4) new-make.log.gz
Description:on an SMP system, it's convenient to run make -j <numberofcpus+1> or just make -j to speed up the build. this doesn't work with asterisk. make log is attached.
Comments:By: Russell Bryant (russell) 2005-09-29 07:37:30

This appears to be a problem with editline.  If you just run "make" and let that part finish building, the rest of asterisk will build fine with "make -j".

I would also like to note where it says "cygwin detected" in the log.  It does that on my linux machine, as well.

By: Olle Johansson (oej) 2005-09-29 08:03:42

Time to update editline to a new version?

By: Michael Jerris (mikej) 2005-09-29 10:50:18

Does it note cygwin detected for all linux, or just smp?  I can take a look at that piece of it.

By: Russell Bryant (russell) 2005-09-29 23:15:00

All Linux - My machine is not smp.

By: Michael Jerris (mikej) 2005-09-30 11:21:05

I can not reproduce that on Fedora FC2.  drumkilla, can you catch me on IRC, or post a full build log so I can see what yours is doing.

By: Michael Jerris (mikej) 2005-09-30 11:21:11

I can not reproduce that on Fedora FC2.  drumkilla, can you catch me on IRC, or post a full build log so I can see what yours is doing.

By: Roy Sigurd Karlsbakk (rkarlsba) 2005-09-30 12:10:55

the full build log is indeed attached

By: stkn (stkn) 2005-09-30 12:16:20

can somebody confirm this fixes it?

--- editline/Makefile.in.orig   2005-09-30 19:13:28.000000000 +0000
+++ editline/Makefile.in        2005-09-30 19:20:27.000000000 +0000
@@ -215,3 +215,5 @@

.c.o_s : $(AGHDRS) $(BGHDRS)
       $(CC) -c $(S_CFLAGS) $(CFLAGS) $(CPPFLAGS) $< -o $@

By: Roy Sigurd Karlsbakk (rkarlsba) 2005-09-30 12:27:47

it works :)

By: Michael Jerris (mikej) 2005-09-30 12:50:49

Give me 15 min, I am making a patch that include this and fixes the bad detection of cygwin as well.

By: Michael Jerris (mikej) 2005-09-30 13:11:23

ok, patch uploaded.  Can you please test the patch and make sure everything works good with that.

By: Roy Sigurd Karlsbakk (rkarlsba) 2005-09-30 13:37:06

looks good
please doublecheck yourself....

By: Michael Jerris (mikej) 2005-09-30 13:49:41

alrighty, one more spot I missed.. I think that should do it.

By: Russell Bryant (russell) 2005-09-30 16:39:46

that patch to Makefile.in isn't quite right.  MikeJ, it should be something like this:

-cygx="$(shell uname -s | sed -e c\cygwin | tr [:upper:] [:lower:])"
define cyg_subst_sys
-       if [ $(cygx) = "cygwin" ]; then \
+       if grep -qi cygwin `uname -s` ; then \

We should probably use the -i flag to grep in the other patch, as well.  (ignores case)

By: Michael Jerris (mikej) 2005-10-01 14:28:24

Your right.. that's what I get for trying to work too quickly and not testing thorougly.. I will wip out a new patch today.

By: Michael Jerris (mikej) 2005-10-01 15:22:28

New patch out there now... it seems to work correctly now, and should fix including of cygdefs on non cygwin machines.  There is some new issue on the editline build now for cygwin (which I will fix in some other bug) but I don't recall any other patches to editline sense the autoconf changes for cygwin.  Did we cahnge anything else in the editline build that would have affected that, perhapse it's just that my build environment changed?  Regardless, pending testing on a linux box, this should be good to go.  Mike

By: Kevin P. Fleming (kpfleming) 2005-10-04 20:22:47

Committed to CVS HEAD, with some mods to handle some other bits better. It still doesn't work perfectly, as if you do a complete run using 'make -j' and then run 'make' again it rebuilds quite a few files...

By: Digium Subversion (svnbot) 2008-01-15 15:50:12.000-0600

Repository: asterisk
Revision: 6725

U   trunk/channels/Makefile
U   trunk/editline/Makefile.in
U   trunk/editline/configure
U   trunk/editline/configure.in
U   trunk/funcs/Makefile

r6725 | kpfleming | 2008-01-15 15:50:12 -0600 (Tue, 15 Jan 2008) | 3 lines

correct cygwin detection (issue ASTERISK-5185)
handle parallel make better (issue ASTERISK-5185)