Skip to content

Commit 8574988

Browse files
chewitraviscross
authored andcommitted
Completely unbundle libedit
FS-353 Signed-off-by: Travis Cross <[email protected]>
1 parent 1cde5f0 commit 8574988

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

106 files changed

+94
-24047
lines changed

Makefile.am

+4-23
Original file line numberDiff line numberDiff line change
@@ -106,11 +106,6 @@ if HAVE_ODBC
106106
CORE_CFLAGS += -DSWITCH_HAVE_ODBC $(ODBC_INC_FLAGS)
107107
endif
108108

109-
if HAVE_LIBEDIT
110-
CORE_CFLAGS += -I$(switch_srcdir)/libs/libedit/src -DSWITCH_HAVE_LIBEDIT
111-
CORE_LIBS += libs/libedit/src/.libs/libedit.a
112-
endif
113-
114109
if ENABLE_TIMERFD_WRAPPER
115110
CORE_CFLAGS += -DTIMERFD_WRAP
116111
endif
@@ -123,15 +118,11 @@ libfreeswitch_spandsp_la_SOURCES = libs/spandsp/src/plc.c libs/spandsp/src/alloc
123118
libfreeswitch_spandsp_la_CFLAGS = -Ilibs/spandsp/src $(CORE_CFLAGS) $(AM_CFLAGS)
124119
CORE_LIBS+=libfreeswitch_spandsp.la
125120
lib_LTLIBRARIES = libfreeswitch.la
126-
libfreeswitch_la_CFLAGS = $(CORE_CFLAGS) $(CURL_CFLAGS) $(PCRE_CFLAGS) $(SPEEX_CFLAGS) $(AM_CFLAGS)
121+
libfreeswitch_la_CFLAGS = $(CORE_CFLAGS) $(CURL_CFLAGS) $(PCRE_CFLAGS) $(SPEEX_CFLAGS) $(LIBEDIT_CFLAGS) $(AM_CFLAGS)
127122
libfreeswitch_la_LDFLAGS = -version-info 1:0:0 $(AM_LDFLAGS) $(PLATFORM_CORE_LDFLAGS) -no-undefined
128-
libfreeswitch_la_LIBADD = $(CORE_LIBS) $(APR_LIBS) $(CURL_LIBS) $(PCRE_LIBS) $(SPEEX_LIBS) $(PLATFORM_CORE_LIBS)
123+
libfreeswitch_la_LIBADD = $(CORE_LIBS) $(APR_LIBS) $(CURL_LIBS) $(PCRE_LIBS) $(SPEEX_LIBS) $(LIBEDIT_LIBS) $(PLATFORM_CORE_LIBS)
129124
libfreeswitch_la_DEPENDENCIES = $(BUILT_SOURCES)
130125

131-
if HAVE_LIBEDIT
132-
libfreeswitch_la_LIBADD += $(TINFO_LIBS)
133-
endif
134-
135126
if HAVE_ODBC
136127
libfreeswitch_la_LDFLAGS += $(ODBC_LIB_FLAGS)
137128
endif
@@ -301,13 +292,8 @@ bin_PROGRAMS = freeswitch fs_cli fs_ivrd tone2wav fs_encode
301292
##
302293
fs_cli_SOURCES = libs/esl/src/esl.c libs/esl/src/esl_config.c libs/esl/src/esl_event.c \
303294
libs/esl/src/esl_threadmutex.c libs/esl/fs_cli.c libs/esl/src/esl_json.c libs/esl/src/esl_buffer.c
304-
fs_cli_CFLAGS = $(AM_CFLAGS) -I$(switch_srcdir)/libs/esl/src/include
305-
fs_cli_LDFLAGS = $(AM_LDFLAGS) -lpthread $(ESL_LDFLAGS) -lm
306-
307-
if HAVE_LIBEDIT
308-
fs_cli_CFLAGS += -DHAVE_EDITLINE -I$(switch_srcdir)/libs/libedit/src
309-
fs_cli_LDADD = libs/libedit/src/.libs/libedit.a $(TINFO_LIBS)
310-
endif
295+
fs_cli_CFLAGS = $(AM_CFLAGS) -I$(switch_srcdir)/libs/esl/src/include $(LIBEDIT_CFLAGS)
296+
fs_cli_LDFLAGS = $(AM_LDFLAGS) -lpthread $(ESL_LDFLAGS) -lm $(LIBEDIT_LIBS)
311297

312298

313299
##
@@ -353,11 +339,6 @@ freeswitch_CFLAGS = $(AM_CFLAGS) $(CORE_CFLAGS)
353339
freeswitch_LDFLAGS = $(AM_LDFLAGS) -lpthread -rpath $(libdir)
354340
freeswitch_LDADD = libfreeswitch.la libs/apr/libapr-1.la
355341

356-
if HAVE_LIBEDIT
357-
freeswitch_CFLAGS += -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT
358-
freeswitch_LDADD += libs/libedit/src/.libs/libedit.a $(TINFO_LIBS)
359-
endif
360-
361342
if HAVE_ODBC
362343
freeswitch_LDADD += $(ODBC_LIB_FLAGS)
363344
endif

bootstrap.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ VERBOSE=false
99
BASEDIR=`pwd`;
1010
LIBDIR=${BASEDIR}/libs;
1111
SUBDIRS="apr \
12-
libzrtp ilbc iksemel js js/nsprpub ldns libdingaling libedit libsndfile sofia-sip \
12+
libzrtp ilbc iksemel js js/nsprpub ldns libdingaling libsndfile sofia-sip \
1313
speex sqlite srtp openzap freetdm spandsp libg722_1 portaudio unimrcp tiff-4.0.2 broadvoice silk libcodec2 \
1414
fs";
1515

cmake_modules/FindLibedit.cmake

-15
This file was deleted.

configure.ac

+21-18
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ AM_INIT_AUTOMAKE
1717
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
1818
AC_CONFIG_SRCDIR([src/switch.c])
1919
AC_CONFIG_HEADER([src/include/switch_private.h])
20+
AC_CONFIG_HEADER([libs/esl/src/include/esl_config_auto.h])
2021
AC_CONFIG_HEADER([libs/xmlrpc-c/xmlrpc_amconfig.h])
2122

2223
AC_PREFIX_DEFAULT(/usr/local/freeswitch)
@@ -1079,20 +1080,27 @@ PKG_CHECK_MODULES([PCRE], [libpcre >= 7.8])
10791080
PKG_CHECK_MODULES([SPEEX], [speex >= 1.2rc1 speexdsp >= 1.2rc1])
10801081

10811082
AC_ARG_ENABLE(core-libedit-support,
1082-
[AS_HELP_STRING([--disable-core-libedit-support], [Compile without libedit Support])], [enable_core_libedit_support="$enableval"], [enable_core_libedit_support="yes"])
1083+
[AS_HELP_STRING([--disable-core-libedit-support], [Compile without libedit Support])])
10831084

1084-
if test "$enable_core_libedit_support" = "yes" ; then
1085-
AC_CHECK_LIB(tinfo, tgetent, [have_libtinfo="yes"], [have_libtinfo="no"])
1086-
if test "$have_libtinfo" == "yes" ; then
1087-
TINFO_LIBS="-ltinfo"
1088-
else
1089-
TINFO_LIBS=""
1090-
AC_CHECK_LIB(ncurses, tgetent,,
1091-
[AC_CHECK_LIB(curses, tgetent,,
1092-
[AC_MSG_ERROR([libtermcap, libcurses or libncurses are required!])] )] )
1093-
fi
1094-
AC_SUBST(TINFO_LIBS)
1095-
fi
1085+
case x$enable_core_libedit_support in
1086+
xno) ;;
1087+
xyes) PKG_CHECK_MODULES([LIBEDIT], [libedit >= 2.11]) ;;
1088+
*) PKG_CHECK_MODULES([LIBEDIT], [libedit >= 2.11],, [AC_MSG_RESULT([no]); enable_core_libedit_support=no]) ;;
1089+
esac
1090+
1091+
AS_IF([test "x$enable_core_libedit_support" != "xno"], [
1092+
# If making changes here, don't forget to run autoheader and
1093+
# update libs/esl/src/include/esl_config_auto.h.in manually.
1094+
AC_DEFINE([HAVE_LIBEDIT], [1], [Define to 1 if you have libedit is available])
1095+
save_LIBS="${LIBS}"
1096+
save_CPPFLAGS="${CPPFLAGS}"
1097+
LIBS="${LIBEDIT_LIBS}"
1098+
CPPFLAGS="${LIBEDIT_CFLAGS}"
1099+
AC_CHECK_DECLS([EL_PROMPT_ESC, EL_REFRESH],,, [[#include <histedit.h>]])
1100+
AC_CHECK_FUNCS([el_wset])
1101+
LIBS="${save_LIBS}"
1102+
CPPFLAGS="${save_CPPFLAGS}"
1103+
])
10961104

10971105
SAC_OPENSSL
10981106

@@ -1118,7 +1126,6 @@ AC_ARG_ENABLE(parallel-build-v8,
11181126
AM_CONDITIONAL([ENABLE_PARALLEL_BUILD_V8],[test "x$enable_parallel_build_v8" != "xno"])
11191127

11201128
AM_CONDITIONAL([HAVE_ODBC],[test "x$enable_core_odbc_support" != "xno"])
1121-
AM_CONDITIONAL([HAVE_LIBEDIT],[test "x$enable_core_libedit_support" != "xno"])
11221129
AM_CONDITIONAL([HAVE_MYSQL],[test "$found_mysql" = "yes"])
11231130

11241131
#
@@ -1518,10 +1525,6 @@ ac_configure_args="$ac_configure_args CONFIGURE_CFLAGS='$CFLAGS' CONFIGURE_CXXFL
15181525
# Run configure in all the subdirs
15191526
AC_CONFIG_SUBDIRS([libs/srtp])
15201527
AC_CONFIG_SUBDIRS([libs/sqlite])
1521-
if test "$enable_core_libedit_support" = "yes" ; then
1522-
AC_CONFIG_SUBDIRS([libs/libedit])
1523-
fi
1524-
15251528
AC_CONFIG_SUBDIRS([libs/apr])
15261529
AC_CONFIG_SUBDIRS([libs/apr-util])
15271530
AC_CONFIG_SUBDIRS([libs/ilbc])

debian/bootstrap.sh

+1
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,7 @@ Build-Depends:
285285
dpkg-dev (>= 1.15.8.12), gcc (>= 4:4.4.5), g++ (>= 4:4.4.5),
286286
libc6-dev (>= 2.11.3), make (>= 3.81),
287287
libpcre3-dev,
288+
libedit-dev (>= 2.11),
288289
wget, pkg-config,
289290
# core codecs
290291
libogg-dev, libspeex-dev, libspeexdsp-dev,

debian/copyright

-11
Original file line numberDiff line numberDiff line change
@@ -1831,17 +1831,6 @@ Files: libs/libwebsockets/win32port/win32helpers/getopt_long.c
18311831
Copyright: 1987-1996, The Regents of the University of California.
18321832
License: BSD-4-clause
18331833

1834-
Files: libs/libedit/*
1835-
Copyright: 1992, 1993 The Regents of the University of California.
1836-
1997-2005 The NetBSD Foundation, Inc.
1837-
1998 Todd C. Miller <[email protected]>
1838-
License: BSD-3-clause
1839-
1840-
Files: libs/libedit/src/strlcat.c
1841-
libs/libedit/src/strlcpy.c
1842-
Copyright: 1998 Todd C. Miller <[email protected]>
1843-
License: ISC
1844-
18451834
Files: libs/esl/*
18461835
Copyright: 2007 Michael Jerris
18471836
2002 Todd C. Miller <[email protected]>

docs/Doxygen.conf

+1-1
Original file line numberDiff line numberDiff line change
@@ -1242,7 +1242,7 @@ SEARCH_INCLUDES = YES
12421242

12431243
INCLUDE_PATH =../libs/apr ../libs/apr-util \
12441244
../libs/iksemel ../libs/ilbc ../libs/js \
1245-
../libs/libedit ../libs/libg722_1 ../libs/libnatpmp \
1245+
../libs/libg722_1 ../libs/libnatpmp \
12461246
../libs/libsndfile ../libs/miniupnpc \
12471247
../libs/portaudio ../libs/sofia-sip ../libs/spandsp \
12481248
../libs/sqlite ../libs/srtp \

libs/.gitignore

-22
Original file line numberDiff line numberDiff line change
@@ -249,27 +249,6 @@ opal
249249
/libdingaling/Makefile.in
250250
/libdingaling/src/config.h
251251
/libdingaling/src/stamp-h1
252-
/libedit/config.h
253-
/libedit/doc/editline.3
254-
/libedit/doc/editrc.5
255-
/libedit/doc/Makefile
256-
/libedit/doc/Makefile.in
257-
/libedit/examples/fileman
258-
/libedit/examples/Makefile
259-
/libedit/examples/Makefile.in
260-
/libedit/examples/test
261-
/libedit/Makefile
262-
/libedit/Makefile.in
263-
/libedit/src/common.h
264-
/libedit/src/emacs.h
265-
/libedit/src/fcns.c
266-
/libedit/src/fcns.h
267-
/libedit/src/help.c
268-
/libedit/src/help.h
269-
/libedit/src/Makefile
270-
/libedit/src/Makefile.in
271-
/libedit/src/vi.h
272-
/libedit/stamp-h1
273252
/libg722_1/config-h.in
274253
/libg722_1/doc/Makefile
275254
/libg722_1/doc/Makefile.in
@@ -905,7 +884,6 @@ opal
905884
!/yaml/configure
906885
broadvoice/config/compile
907886
ilbc/config/compile
908-
libedit/compile
909887
libg722_1/config/compile
910888
pcre/compile
911889
spandsp/config/compile

libs/esl/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@ eslmake.rules
22
testserver_fork
33
Makefile
44
Makefile.in
5+
/src/include/esl_config_auto.h

libs/esl/Makefile.am

+3-8
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,9 @@ bin_PROGRAMS = fs_cli ivrd
2121
noinst_PROGRAMS = testclient testserver testserver_fork
2222

2323
fs_cli_SOURCES = fs_cli.c
24-
fs_cli_CFLAGS = $(AM_CFLAGS) -I$(switch_srcdir)/libs/esl/src/include
25-
fs_cli_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS) $(LIBS)
26-
fs_cli_LDADD = libesl.la
27-
28-
if HAVE_LIBEDIT
29-
fs_cli_CFLAGS += -DHAVE_EDITLINE -I$(switch_srcdir)/libs/libedit/src
30-
fs_cli_LDADD += ../libedit/src/.libs/libedit.a $(TINFO_LIBS)
31-
endif
24+
fs_cli_CFLAGS = $(AM_CFLAGS) -I$(switch_srcdir)/libs/esl/src/include $(LIBEDIT_CFLAGS)
25+
fs_cli_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS) $(LIBS) $(LIBEDIT_LIBS)
26+
fs_cli_LDADD = libesl.la
3227

3328
testclient_SOURCES = testclient.c
3429
testclient_CFLAGS = $(AM_CFLAGS) -I$(switch_srcdir)/libs/esl/src/include

libs/esl/eslmake.rules.in

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
TINFO_LIBS=@TINFO_LIBS@
21
SYSTEM_CFLAGS=@CFLAGS@
32
SYSTEM_LDFLAGS=@LDFLAGS@
43
CXX=@CXX@

0 commit comments

Comments
 (0)