Summary:ASTERISK-16221: [patch] editing files in main/editline does not ensure rebuild of libedit.a
Reporter:Walter Doekes (wdoekes)Labels:
Date Opened:2010-06-07 03:34:56Date Closed:2011-08-03 10:23:31
Versions:Frequency of
Environment:Attachments:( 0) astsvn-make-libedit-deps.patch

when editing a source file in main/editline, the build system does not rebuild libedit.a and uses the already existing one instead.

The attached patch adds PHONY to the CHECK_SUBDIR target. This fixes the issue for me.

Walter Doekes

****** STEPS TO REPRODUCE ******

$ ./configure
$ make menuconfig
$ make

$ touch main/editline/read.c
$ make
(nothing gets built)

$ patch -p0 < astsvn-make-libedit-deps.patch
$ touch main/editline/read.c
$ make
(libedit.a and asterisk get rebuilt like expected with the new read.c)
Comments:By: Leif Madsen (lmadsen) 2010-06-09 10:17:34

Thanks for the submission!

By: Walter Doekes (wdoekes) 2011-04-28 01:59:06

Still works. Looks trivial enough to apply.

asterisk-svn$ touch main/editline/read.c
asterisk-svn$ make NOISY_BUILD=yes
gcc -c  -pthread -I../..//include -I/usr/include/libxml2 -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -march=native -ffunction-sections -O6  -O '-D__RCSID(x)=' '-D__COPYRIGHT(x)=' '-D__RENAME(x)=' '-D_DIAGASSERT(x)=' -I. editline.c -o editline.o_a
/usr/bin/ar cru libedit.a editline.o_a
ranlib libedit.a
gcc  -o asterisk -Wl,--gc-sections -Wl,--version-script,asterisk.exports -Wl,--dynamic-list,asterisk.dynamics     abstract_jb.o acl.o alaw.o aoc.o app.o ast_expr2.o ast_expr2f.o asterisk.o astfd.o astmm.o astobj2.o audiohook.o autochan.o autoservice.o bridging.o callerid.o ccss.o cdr.o cel.o channel.o chanvars.o cli.o config.o data.o datastore.o db.o devicestate.o dial.o dns.o dnsmgr.o dsp.o enum.o event.o features.o file.o fixedjitterbuf.o format.o format_cap.o format_pref.o frame.o framehook.o fskmodem.o global_datastores.o hashtab.o heap.o http.o image.o indications.o io.o jitterbuf.o loader.o lock.o logger.o manager.o md5.o netsock.o netsock2.o pbx.o plc.o poll.o privacy.o rtp.o rtp_engine.o say.o sched.o security_events.o sha1.o slinfactory.o srv.o ssl.o stdtime/localtime.o strcompat.o strings.o stun.o syslog.o taskprocessor.o tcptls.o tdd.o term.o test.o threadstorage.o timing.o translate.o udptl.o ulaw.o utils.o version.o xml.o xmldoc.o editline/libedit.a db1-ast/libdb1.a  buildinfo.o -lssl -lcrypto -lc  -lxml2  -lpthread -ltermcap  -lm -lresolv

By: Kinsey Moore (kmoore) 2011-08-03 10:23:31.201-0500