[Asterisk-Dev] Asterisk make clean and make looping?? (LONG)

asterisk at ropeguru.com asterisk at ropeguru.com
Wed Nov 2 04:58:11 MST 2005


 <SNIP>

> >>
> >> you could try changing the if section to read
> >>
> >> include/asterisk/version.h: FORCE
> >>        build_tools/make_version_h > $@.tmp
> >>        if cmp -s $@.tmp $@ ; then touch $@; else \
> >>                cp $@.tmp $@ ;  \
> >>        fi
> >>        rm -f $@.tmp
> >>
> >
> 
> Has anyone with the problem tried my change ?
> 
> T.


Ok, I was studying what was being looped some more and what script was
actually running. Again, I am not familiar with make. But there are two
sections of script that keep looping.

The first section that starts on line 459 is:

include/asterisk/version.h: FORCE
        build_tools/make_version_h > $@.tmp
        if cmp -s $@.tmp $@ ; then echo; else \
                mv $@.tmp $@ ; \
        fi
        rm -f $@.tmp

Right after it completes, the section on line 817 runs:

.depend: include/asterisk/version.h
        build_tools/mkdep ${CFLAGS} $(wildcard *.c)

Once this section runs, the first section runs again.


Another note, it must have something to do with the comparison of files
that are already created when an initial make fails somewhere. I
commented out the two sections above in the Makefile and ran my "make
clean" again. The run cmpleted as it should have and now when
uncommenting the sections, the "make clean" runs normal.

I then ran "make install" again and broke out of the run in the where
make is checking the availability of compilers and such. I then ran
"make clean" again and the looping starts all over again. After letting
it continue this time, I noticed that once the two sections listed above
run the first time, it is only the second section of script that
continues to loop afterwards. Not the "include/asterisk/version.h:
FORCE" section.

Here is a copy of what I am seeing looping from the beginning thru a
couple of loops.

hecate:/usr/src/asterisk# make clean
build_tools/make_version_h > include/asterisk/version.h.tmp
if cmp -s include/asterisk/version.h.tmp include/asterisk/version.h ;
then echo; else \
        mv include/asterisk/version.h.tmp include/asterisk/version.h ; \
fi
rm -f include/asterisk/version.h.tmp
build_tools/mkdep  -pipe  -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -g  -Iinclude -I../include -D_REENTRANT
-D_GNU_SOURCE  -O6 -march=i686 -DZAPTEL_OPTIMIZATIONS
-fomit-frame-pointer  acl.c aescrypt.c aeskey.c aestab.c alaw.c app.c
asterisk.c ast_expr2.c ast_expr2f.c astmm.c autoservice.c callerid.c
cdr.c channel.c chanvars.c cli.c config.c cryptostub.c db.c
devicestate.c dlfcn.c dns.c dnsmgr.c dsp.c enum.c file.c frame.c
fskmodem.c image.c indications.c io.c jitterbuf.c loader.c logger.c
manager.c md5.c muted.c netsock.c pbx.c plc.c poll.c privacy.c rtp.c
say.c sched.c slinfactory.c srv.c strcompat.c tdd.c term.c translate.c
ulaw.c utils.c
build_tools/make_version_h > include/asterisk/version.h.tmp
if cmp -s include/asterisk/version.h.tmp include/asterisk/version.h ;
then echo; else \
        mv include/asterisk/version.h.tmp include/asterisk/version.h ; \
fi
rm -f include/asterisk/version.h.tmp
build_tools/mkdep  -pipe  -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -g  -Iinclude -I../include -D_REENTRANT
-D_GNU_SOURCE  -O6 -march=i686 -DZAPTEL_OPTIMIZATIONS
-fomit-frame-pointer  acl.c aescrypt.c aeskey.c aestab.c alaw.c app.c
asterisk.c ast_expr2.c ast_expr2f.c astmm.c autoservice.c callerid.c
cdr.c channel.c chanvars.c cli.c config.c cryptostub.c db.c
devicestate.c dlfcn.c dns.c dnsmgr.c dsp.c enum.c file.c frame.c
fskmodem.c image.c indications.c io.c jitterbuf.c loader.c logger.c
manager.c md5.c muted.c netsock.c pbx.c plc.c poll.c privacy.c rtp.c
say.c sched.c slinfactory.c srv.c strcompat.c tdd.c term.c translate.c
ulaw.c utils.c
build_tools/make_version_h > include/asterisk/version.h.tmp
if cmp -s include/asterisk/version.h.tmp include/asterisk/version.h ;
then echo; else \
        mv include/asterisk/version.h.tmp include/asterisk/version.h ; \
fi
rm -f include/asterisk/version.h.tmp (Loops from here)






More information about the asterisk-dev mailing list