Index: build_tools/menuselect-deps.in =================================================================== --- build_tools/menuselect-deps.in.orig 2010-07-28 01:30:38.000000000 +0300 +++ build_tools/menuselect-deps.in 2010-10-23 12:28:17.140817003 +0300 @@ -23,6 +23,7 @@ JACK=@PBX_JACK@ KQUEUE=@PBX_KQUEUE@ LDAP=@PBX_LDAP@ +LIBEDIT=@PBX_LIBEDIT@ LIBXML2=@PBX_LIBXML2@ LTDL=@PBX_LTDL@ LUA=@PBX_LUA@ Index: configure.ac =================================================================== --- configure.ac (revision 226061) +++ configure.ac (working copy) @@ -267,6 +267,7 @@ AST_EXT_LIB_SETUP([ISDNNET], [ISDN4Linux Library], [isdnnet]) AST_EXT_LIB_SETUP([JACK], [Jack Audio Connection Kit], [jack]) AST_EXT_LIB_SETUP([LDAP], [OpenLDAP], [ldap]) +AST_EXT_LIB_SETUP([LIBEDIT], [NetBSD Editline library], [libedit]) AST_LIBCURL_CHECK_CONFIG([], [7.10.1]) AST_EXT_LIB_SETUP([LIBXML2], [LibXML2], [libxml2]) AST_EXT_LIB_SETUP([LTDL], [libtool], [ltdl]) @@ -1593,6 +1594,27 @@ AST_EXT_LIB_CHECK([SDL_IMAGE], [SDL_image], [IMG_Load], [SDL_image.h], [${SDL_LIB}], [${SDL_INCLUDE}]) AST_EXT_LIB_CHECK([FFMPEG], [avcodec], [sws_getContext], [ffmpeg/avcodec.h], [-lpthread -lz -lm]) +PBX_LIBEDIT=0 +LIBEDIT_INCLUDE=-Ieditline/readline +LIBEDIT_LIB= +LIBEDIT_OBJ=editline/libedit.a +if test "${USE_LIBEDIT}" != "no"; then + AC_CHECK_TOOL(PKGCONFIG, pkg-config, no) + if test "${PKGCONFIG}" != "no"; then + if ${PKGCONFIG} --exists libedit; then + LIBEDIT_INCLUDE=$(${PKGCONFIG} libedit --cflags) + LIBEDIT_LIB=$(${PKGCONFIG} libedit --libs) + LIBEDIT_OBJ= + PBX_LIBEDIT=1 + AC_DEFINE([HAVE_LIBEDIT], 1, [Define if your system has the NetBSD Editline libraries.]) + fi + fi +fi +AC_SUBST(PBX_LIBEDIT) +AC_SUBST(LIBEDIT_INCLUDE) +AC_SUBST(LIBEDIT_LIB) +AC_SUBST(LIBEDIT_OBJ) + # possible places for video4linux version 1 AC_CHECK_HEADER([linux/videodev.h], [AC_DEFINE_UNQUOTED([HAVE_VIDEODEV_H], 1, [Define to 1 if your system has linux/videodev.h.])]) --- main/Makefile.orig 2010-08-02 17:41:46.000000000 +0300 +++ main/Makefile 2010-10-23 12:25:20.520816998 +0300 @@ -103,9 +103,9 @@ CHECK_SUBDIR: # do nothing, just make sure that we recurse in the subdir/ -editline/libedit.a: CHECK_SUBDIR +$(LIBEDIT_OBJ): CHECK_SUBDIR cd editline && test -f config.h || CFLAGS="$(PTHREAD_CFLAGS) $(subst $(ASTTOPDIR),../../,$(_ASTCFLAGS:-Werror=) $(ASTCFLAGS))" LDFLAGS="$(_ASTLDFLAGS) $(ASTLDFLAGS)" ./configure --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) --with-ncurses=$(NCURSES_DIR) --with-curses=$(CURSES_DIR) --with-termcap=$(TERMCAP_DIR) --with-tinfo=$(TINFO_DIR) - $(MAKE) -C editline libedit.a + $(MAKE) -C editline $(LIBEDIT_OBJ) db1-ast/libdb1.a: CHECK_SUBDIR _ASTCFLAGS="$(_ASTCFLAGS) -Wno-strict-aliasing" ASTCFLAGS="$(ASTCFLAGS)" $(MAKE) -C db1-ast libdb1.a @@ -139,6 +139,8 @@ $(CC) -g -o testexpr2 ast_expr2f.o ast_expr2.o -lm rm ast_expr2.o ast_expr2f.o +cli.o: ASTCFLAGS+=$(LIBEDIT_INCLUDE) + ifneq ($(findstring ENABLE_UPLOADS,$(MENUSELECT_CFLAGS)),) http.o: _ASTCFLAGS+=$(GMIME_INCLUDE) endif @@ -173,13 +175,13 @@ $(OBJS): _ASTCFLAGS+=-DAST_MODULE=\"core\" -$(MAIN_TGT): $(OBJS) editline/libedit.a db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) +$(MAIN_TGT): $(OBJS) $(LIBEDIT_OBJ) db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) @$(CC) -c -o buildinfo.o $(_ASTCFLAGS) buildinfo.c $(ASTCFLAGS) - $(ECHO_PREFIX) echo " [LD] $(OBJS) editline/libedit.a db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) -> $@" + $(ECHO_PREFIX) echo " [LD] $(OBJS) $(LIBEDIT_OBJ) db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) -> $@" ifneq ($(findstring chan_h323,$(MENUSELECT_CHANNELS)),) - $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(_ASTLDFLAGS) $(ASTLDFLAGS) $(OBJS) editline/libedit.a db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(GMIMELDFLAGS) + $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(_ASTLDFLAGS) $(ASTLDFLAGS) $(OBJS) $(LIBEDIT_OBJ) db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(GMIMELDFLAGS) $(LIBEDIT_LIB) else - $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(_ASTLDFLAGS) $(ASTLDFLAGS) $(H323LDFLAGS) $(OBJS) editline/libedit.a db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(H323LDLIBS) $(GMIMELDFLAGS) + $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(AST_EMBED_LDFLAGS) $(_ASTLDFLAGS) $(ASTLDFLAGS) $(H323LDFLAGS) $(OBJS) $(LIBEDIT_OBJ) db1-ast/libdb1.a $(AST_EMBED_LDSCRIPTS) buildinfo.o $(AST_LIBS) $(AST_EMBED_LIBS) $(H323LDLIBS) $(GMIMELDFLAGS) $(LIBEDIT_LIB) endif ifeq ($(GNU_LD),1) Index: main/cli.c =================================================================== --- main/cli.c (revision 226061) +++ main/cli.c (working copy) @@ -34,6 +34,8 @@ #include #include +#include + #include "asterisk/cli.h" #include "asterisk/linkedlists.h" #include "asterisk/module.h" @@ -42,7 +44,6 @@ #include "asterisk/utils.h" #include "asterisk/app.h" #include "asterisk/lock.h" -#include "editline/readline/readline.h" #include "asterisk/threadstorage.h" /*! Index: makeopts.in =================================================================== --- makeopts.in (revision 226061) +++ makeopts.in (working copy) @@ -263,3 +263,8 @@ # if poll is not present, let the makefile know. POLL_AVAILABLE=@HAS_POLL@ TIMERFD_INCLUDE=@TIMERFD_INCLUDE@ + +LIBEDIT_INCLUDE=@LIBEDIT_INCLUDE@ +LIBEDIT_LIB=@LIBEDIT_LIB@ +LIBEDIT_OBJ=@LIBEDIT_OBJ@ +