From: Waldemar Brodkorb Date: Wed, 3 Aug 2005 10:51:37 +0000 (+0000) Subject: usability and stability patch from package maintainer Johannes 5 Joemann X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=50097bcb5164333fe0d17553a90bd01fb22d93d9;p=openwrt%2Fstaging%2Fadrian.git usability and stability patch from package maintainer Johannes 5 Joemann SVN-Revision: 1577 --- diff --git a/openwrt/package/quagga/Config.in b/openwrt/package/quagga/Config.in index 87233d1103..7e893e2053 100644 --- a/openwrt/package/quagga/Config.in +++ b/openwrt/package/quagga/Config.in @@ -10,42 +10,31 @@ config BR2_PACKAGE_QUAGGA OSPFv3, BGP-4, and BGP-4+ http://www.quagga.net/ - config BR2_PACKAGE_QUAGGA_BGPD depends BR2_PACKAGE_QUAGGA - prompt "...-bgpd - BGPv4, BGPv4\+, BGPv4\- routing engine" + prompt "...-bgpd - BGPv4, BGPv4+, BGPv4- routing engine" tristate default m if CONFIG_DEVEL help - A BGPv4, BGPv4\+, BGPv4\- routing engine for use with Quagga routing + A BGPv4, BGPv4+, BGPv4- routing engine for use with Quagga routing software. -config BR2_PACKAGE_LIBOSPF - depends BR2_PACKAGE_QUAGGA - prompt "libospf - OSPF support library" - tristate - default m if CONFIG_DEVEL - help - An OSPFv2 routing engine for use with Quagga routing software. - config BR2_PACKAGE_QUAGGA_OSPFD depends BR2_PACKAGE_QUAGGA prompt "...-ospfd - OSPFv2 routing engine" - select BR2_PACKAGE_LIBOSPF tristate default m if CONFIG_DEVEL help - An OSPFv2 routing engine for use with Quagga routing software. + An OSPFv2 (IPv4) routing engine for use with Quagga routing software. config BR2_PACKAGE_QUAGGA_OSPF6D depends BR2_PACKAGE_QUAGGA prompt "...-ospf6d - OSPFv3 routing engine" - select BR2_PACKAGE_LIBOSPF tristate default m if CONFIG_DEVEL help - An OSPFv3 routing engine for use with Quagga routing software. + An OSPFv3 (IPv6) routing engine for use with Quagga routing software. config BR2_PACKAGE_QUAGGA_RIPD depends BR2_PACKAGE_QUAGGA @@ -53,22 +42,25 @@ config BR2_PACKAGE_QUAGGA_RIPD tristate default m if CONFIG_DEVEL help - A RIP routing engine for use with Quagga routing software. + A RIP (IPv4) routing engine for use with Quagga routing software. -config BR2_PACKAGE_QUAGGA_RIPD +config BR2_PACKAGE_QUAGGA_RIPNGD depends BR2_PACKAGE_QUAGGA prompt "...-ripngd - RIPNG routing engine" tristate default m if CONFIG_DEVEL help - A RIPNG routing engine for use with Quagga routing software. + A RIPNG (IPv6) routing engine for use with Quagga routing software. -config BR2_PACKAGE_QUAGGA_ZEBRA +config BR2_PACKAGE_QUAGGA_VTYSH depends BR2_PACKAGE_QUAGGA - prompt "...-zebra - Routing manager" + select BR2_PACKAGE_LIBREADLINE + select BR2_PACKAGE_LIBNCURSES + prompt "...-vtysh - integrated shell for Quagga routing software" tristate default m if CONFIG_DEVEL help - A routing manager for use with associated Quagga components. + vtysh lets you interact with all the Quagga routing daemons + at once in an integrated shell. endmenu diff --git a/openwrt/package/quagga/Makefile b/openwrt/package/quagga/Makefile index fca54ecb9b..32d6d6603e 100644 --- a/openwrt/package/quagga/Makefile +++ b/openwrt/package/quagga/Makefile @@ -3,9 +3,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=quagga -PKG_VERSION:=0.98.3 +PKG_VERSION:=0.98.4 PKG_RELEASE:=1 -PKG_MD5SUM:=68be5e911e4d604c0f5959338263356e +PKG_MD5SUM:=c68e409931449afc5730289d3105f502 PKG_SOURCE_URL:=http://www.quagga.net/download/ \ http://www.de.quagga.net/download/ \ @@ -21,17 +21,17 @@ include $(TOPDIR)/package/rules.mk $(eval $(call PKG_template,QUAGGA,quagga,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(eval $(call PKG_template,QUAGGA_BGPD,quagga-bgpd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) -$(eval $(call PKG_template,LIBOSPF,libospf,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(eval $(call PKG_template,QUAGGA_OSPFD,quagga-ospfd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(eval $(call PKG_template,QUAGGA_OSPF6D,quagga-ospf6d,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(eval $(call PKG_template,QUAGGA_RIPD,quagga-ripd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(eval $(call PKG_template,QUAGGA_RIPNGD,quagga-ripngd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) -$(eval $(call PKG_template,QUAGGA_ZEBRA,quagga-zebra,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,QUAGGA_VTYSH,quagga-vtysh,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(PKG_BUILD_DIR)/.configured: (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status}; \ $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS)" \ + CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \ + LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib" \ ./configure \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ @@ -48,19 +48,18 @@ $(PKG_BUILD_DIR)/.configured: --infodir=/usr/share/info \ --libdir=/usr/lib \ --libexecdir=/usr/lib \ - --localstatedir=/var \ + --localstatedir=/var/run/quagga \ --mandir=/usr/share/man \ --sbindir=/usr/sbin \ - --sysconfdir=/etc \ + --sysconfdir=/etc/quagga \ $(DISABLE_NLS) \ $(DISABLE_LARGEFILE) \ --enable-shared \ --disable-static \ --enable-ipv6 \ - --disable-vtysh \ + --enable-vtysh \ --enable-user=quagga \ --enable-group=quagga \ - --sysconfdir=/etc/quagga \ ); touch $@ @@ -73,6 +72,15 @@ $(PKG_BUILD_DIR)/.built: $(IPKG_QUAGGA): install -d -m0755 $(IDIR_QUAGGA)/usr/lib cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libzebra.so.* $(IDIR_QUAGGA)/usr/lib/ + install -d -m0755 $(IDIR_QUAGGA)/usr/sbin + cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/zebra $(IDIR_QUAGGA)/usr/sbin/ + cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/watchquagga $(IDIR_QUAGGA)/usr/sbin/ + # avoid /etc being set to 0750 + install -d -m0755 $(IDIR_QUAGGA)/etc/quagga/ + chmod 0750 $(IDIR_QUAGGA)/etc/quagga/ + install -d -m0755 $(IDIR_QUAGGA)/etc/init.d/ + install -m0755 ./files/quagga.init $(IDIR_QUAGGA)/etc/init.d/quagga + ln -sf quagga $(IDIR_QUAGGA)/etc/init.d/S49quagga $(RSTRIP) $(IDIR_QUAGGA) $(IPKG_BUILD) $(IDIR_QUAGGA) $(PACKAGE_DIR) @@ -82,13 +90,9 @@ $(IPKG_QUAGGA_BGPD): $(RSTRIP) $(IDIR_QUAGGA_BGPD) $(IPKG_BUILD) $(IDIR_QUAGGA_BGPD) $(PACKAGE_DIR) -$(IPKG_LIBOSPF): - install -d -m0755 $(IDIR_LIBOSPF)/usr/lib - cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libospf.so.* $(IDIR_LIBOSPF)/usr/lib/ - $(RSTRIP) $(IDIR_LIBOSPF) - $(IPKG_BUILD) $(IDIR_LIBOSPF) $(PACKAGE_DIR) - $(IPKG_QUAGGA_OSPFD): + install -d -m0755 $(IDIR_QUAGGA_OSPFD)/usr/lib + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libospf.so.* $(IDIR_QUAGGA_OSPFD)/usr/lib/ install -d -m0755 $(IDIR_QUAGGA_OSPFD)/usr/sbin cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/ospfd $(IDIR_QUAGGA_OSPFD)/usr/sbin/ $(RSTRIP) $(IDIR_QUAGGA_OSPFD) @@ -96,7 +100,7 @@ $(IPKG_QUAGGA_OSPFD): $(IPKG_QUAGGA_OSPF6D): install -d -m0755 $(IDIR_QUAGGA_OSPF6D)/usr/sbin - cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/ospfd $(IDIR_QUAGGA_OSPF6D)/usr/sbin/ + cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/ospf6d $(IDIR_QUAGGA_OSPF6D)/usr/sbin/ $(RSTRIP) $(IDIR_QUAGGA_OSPF6D) $(IPKG_BUILD) $(IDIR_QUAGGA_OSPF6D) $(PACKAGE_DIR) @@ -112,9 +116,8 @@ $(IPKG_QUAGGA_RIPNGD): $(RSTRIP) $(IDIR_QUAGGA_RIPNGD) $(IPKG_BUILD) $(IDIR_QUAGGA_RIPNGD) $(PACKAGE_DIR) -$(IPKG_QUAGGA_ZEBRA): - install -d -m0755 $(IDIR_QUAGGA_ZEBRA)/usr/sbin - cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/zebra $(IDIR_QUAGGA_ZEBRA)/usr/sbin/ - $(RSTRIP) $(IDIR_QUAGGA_ZEBRA) - $(IPKG_BUILD) $(IDIR_QUAGGA_ZEBRA) $(PACKAGE_DIR) - +$(IPKG_QUAGGA_VTYSH): + install -d -m0755 $(IDIR_QUAGGA_VTYSH)/usr/bin + cp -fpR $(PKG_INSTALL_DIR)/usr/bin/vtysh $(IDIR_QUAGGA_VTYSH)/usr/bin/ + $(RSTRIP) $(IDIR_QUAGGA_VTYSH) + $(IPKG_BUILD) $(IDIR_QUAGGA_VTYSH) $(PACKAGE_DIR) diff --git a/openwrt/package/quagga/files/quagga.init b/openwrt/package/quagga/files/quagga.init new file mode 100644 index 0000000000..01f8d7137d --- /dev/null +++ b/openwrt/package/quagga/files/quagga.init @@ -0,0 +1,333 @@ +#!/bin/sh +# +# quagga Starts/stops quagga daemons and watchquagga. +# Create a daemon.conf file to have that routing daemon +# started/stopped automagically when using this script +# without any daemon names as args. +# If watchquagga is available, it will also be +# started/stopped if the script is called without +# any daemon names. +# + +ME=$(basename $0) + +usage() { + echo "Usage: ${ME} {start|stop|restart} [daemon ...]" + exit 2 +} + +if [ -z "$1" ] +then + usage +else + COMMAND=$1 +fi +shift +ARG_DAEMONS=$* +BINDIR=/usr/sbin +CONFDIR=/etc/quagga +STATEDIR=/var/run/quagga +DAEMONS="zebra ripd ripngd ospfd ospf6d bgpd" +DAEMON_FLAGS=-d +WATCHQUAGGA_FLAGS="-d -z -T 60 -R" +WATCHQUAGGA_CMD="$0 watchrestart" +if [ ${COMMAND} != "watchrestart" ] +then + DAEMONS="${DAEMONS} watchquagga" +fi +DAEMONS_STARTSEQ=${DAEMONS} + +reverse() +{ + local revlist r + revlist= + for r + do + revlist="$r $revlist" + done + echo $revlist +} + +DAEMONS_STOPSEQ=$(reverse ${DAEMONS_STARTSEQ}) + +#pidof() { +# ps ax | awk 'match($5, "(^|/)'"$1"'$") > 0 { printf " %s", $1 }' +#} + +quit() { + echo "${ME}: $1" + exit 0 +} + +die() { + echo "${ME}: $1" + exit 1 +} + +is_in() { + local i + for i in $2 + do + [ "$1" = "$i" ] && return 0 + done + return 1 +} + +select_subset() { + local unknown i j + unknown= + RESULT= + for i in $1 + do + is_in $i "$2" || unknown="$unknown $i" + done + if [ -n "$unknown" ] + then + RESULT=$unknown + return 1 + else + for j in $2 + do + is_in $j "$1" && RESULT="$RESULT $j" + done + return 0 + fi +} + +# check command + +case ${COMMAND} +in + start|stop|restart) + ;; + watchrestart) + if [ -n "$ARG_DAEMONS" ] + then + echo "${ME}: watchrestart mode is only for use by watchquagga" + exit 2 + fi + ;; + *) + usage + ;; +esac + +# select daemons to start + +case ${COMMAND} +in + start|restart|watchrestart) + START_DAEMONS= + for d in ${DAEMONS_STARTSEQ} + do + [ -x "${BINDIR}/${d}" -a -f "${CONFDIR}/${d}.conf" ] \ + && START_DAEMONS="${START_DAEMONS}${d} " + done + WATCHQUAGGA_DAEMONS=${START_DAEMONS} + if is_in watchquagga "${DAEMONS_STARTSEQ}" + then + START_DAEMONS="${START_DAEMONS} watchquagga" + fi + if [ -n "${ARG_DAEMONS}" ] + then + if select_subset "${ARG_DAEMONS}" "${DAEMONS}" + then + if select_subset "${ARG_DAEMONS}" "${START_DAEMONS}" + then + START_DAEMONS=${RESULT} + else + die "these daemons are not startable:${RESULT}." + fi + else + die "unknown daemons:${RESULT}; choose from: ${DAEMONS}." + fi + fi + ;; +esac + +# select daemons to stop + +case ${COMMAND} +in + stop|restart|watchrestart) + STOP_DAEMONS=${DAEMONS_STOPSEQ} + if [ -n "${ARG_DAEMONS}" ] + then + if select_subset "${ARG_DAEMONS}" "${STOP_DAEMONS}" + then + STOP_DAEMONS=${RESULT} + else + die "unknown daemons:${RESULT}; choose from: ${DAEMONS}." + fi + fi + stop_daemons= + for d in ${STOP_DAEMONS} + do + pidfile=${STATEDIR}/${d}.pid + if [ -f "${pidfile}" -o -n "$(pidof ${d})" ] + then + stop_daemons="${stop_daemons}${d} " + elif [ -n "${ARG_DAEMONS}" ] + then + echo "${ME}: found no ${d} process running." + fi + done + STOP_DAEMONS=${stop_daemons} + ;; +esac + +# stop daemons + +for d in $STOP_DAEMONS +do + echo -n "${ME}: Stopping ${d} ... " + pidfile=${STATEDIR}/${d}.pid + if [ -f "${pidfile}" ] + then + file_pid=$(cat ${pidfile}) + if [ -z "${file_pid}" ] + then + echo -n "no pid file entry found ... " + fi + else + file_pid= + echo -n "no pid file found ... " + fi + proc_pid=$(pidof ${d}) + if [ -z "${proc_pid}" ] + then + echo -n "found no ${d} process running ... " + else + count=0 + notinpidfile= + for p in ${proc_pid} + do + count=$((${count}+1)) + if kill ${p} + then + echo -n "killed ${p} ... " + else + echo -n "failed to kill ${p} ... " + fi + [ "${p}" = "${file_pid}" ] \ + || notinpidfile="${notinpidfile} ${p}" + done + [ ${count} -le 1 ] \ + || echo -n "WARNING: ${count} ${d} processes were found running ... " + for n in ${notinpidfile} + do + echo -n "WARNING: process ${n} was not in pid file ... " + done + fi + count=0 + survivors=$(pidof ${d}) + while [ -n "${survivors}" ] + do + sleep 1 + count=$((${count}+1)) + survivors=$(pidof ${d}) + [ -z "${survivors}" -o ${count} -gt 5 ] && break + for p in ${survivors} + do + sleep 1 + echo -n "${p} " + kill ${p} + done + done + survivors=$(pidof ${d}) + [ -n "${survivors}" ] && \ + if kill -KILL ${survivors} + then + echo -n "KILLed ${survivors} ... " + else + echo -n "failed to KILL ${survivors} ... " + fi + sleep 1 + survivors=$(pidof ${d}) + if [ -z "${survivors}" ] + then + echo -n "done." + if [ -f "${pidfile}" ] + then + rm -f ${pidfile} \ + || echo -n " Failed to remove pidfile." + fi + else + echo -n "failed to stop ${survivors} - giving up." + if [ "${survivors}" != "${file_pid}" ] + then + if echo "${survivors}" > ${pidfile} + then + chown quagga:quagga ${pidfile} + echo -n " Wrote ${survivors} to pidfile." + else + echo -n " Failed to write ${survivors} to pidfile." + fi + fi + fi + echo +done + +# start daemons + +if [ -n "$START_DAEMONS" ] +then + [ -d ${CONFDIR} ] \ + || quit "${ME}: no config directory ${CONFDIR} - exiting." + chown -R quagga:quagga ${CONFDIR} + [ -d ${STATEDIR} ] || mkdir -p ${STATEDIR} \ + || die "${ME}: could not create state directory ${STATEDIR} - exiting." + chown -R quagga:quagga ${STATEDIR} + + for d in $START_DAEMONS + do + echo -n "${ME}: Starting ${d} ... " + proc_pid=$(pidof ${d}) + pidfile=${STATEDIR}/${d}.pid + file_pid= + if [ -f "${pidfile}" ] + then + file_pid=$(cat ${pidfile}) + if [ -n "${file_pid}" ] + then + echo -n "found old pid file entry ${file_pid} ... " + fi + fi + if [ -n "${proc_pid}" ] + then + echo -n "found ${d} running (${proc_pid}) - skipping ${d}." + if [ "${proc_pid}" != "${file_pid}" ] + then + if echo "${proc_pid}" > ${pidfile} + then + chown quagga:quagga ${pidfile} + echo -n " Wrote ${proc_pid} to pidfile." + else + echo -n " Failed to write ${proc_pid} to pidfile." + fi + fi + elif rm -f "${pidfile}" + then + if [ "${d}" = "watchquagga" ] + then + $("${BINDIR}/${d}" \ + ${WATCHQUAGGA_FLAGS} \ + "${WATCHQUAGGA_CMD}" \ + ${WATCHQUAGGA_DAEMONS}) + status=$? + else + $("${BINDIR}/${d}" ${DAEMON_FLAGS}) + status=$? + fi + if [ $status -eq 0 ] + then + echo -n "done." + else + echo -n "failed." + fi + else + echo -n " failed to remove pidfile." + fi + echo + done +fi diff --git a/openwrt/package/quagga/ipkg/quagga-bgpd.control b/openwrt/package/quagga/ipkg/quagga-bgpd.control index 0c2c401c00..dab6c33f1c 100644 --- a/openwrt/package/quagga/ipkg/quagga-bgpd.control +++ b/openwrt/package/quagga/ipkg/quagga-bgpd.control @@ -3,5 +3,6 @@ Priority: optional Section: net Maintainer: Johannes 5 Joemann Source: buildroot internal -Description: A BGPv4, BGPv4\+, BGPv4\- routing engine for use - with Quagga routing software +Depends: quagga +Description: A BGPv4, BGPv4+, BGPv4- routing engine for use with Quagga + routing software diff --git a/openwrt/package/quagga/ipkg/quagga-ospf6d.control b/openwrt/package/quagga/ipkg/quagga-ospf6d.control index 6d20fd8896..65e324b6ae 100644 --- a/openwrt/package/quagga/ipkg/quagga-ospf6d.control +++ b/openwrt/package/quagga/ipkg/quagga-ospf6d.control @@ -3,6 +3,6 @@ Priority: optional Section: net Maintainer: Johannes 5 Joemann Source: buildroot internal -Depends: libospf -Description: An OSPFv3 routing engine for use - with Quagga routing software +Depends: quagga +Description: An OSPFv3 routing engine for use with Quagga + routing software diff --git a/openwrt/package/quagga/ipkg/quagga-ospfd.control b/openwrt/package/quagga/ipkg/quagga-ospfd.control index be9ca20a05..9ebca493a9 100644 --- a/openwrt/package/quagga/ipkg/quagga-ospfd.control +++ b/openwrt/package/quagga/ipkg/quagga-ospfd.control @@ -3,6 +3,6 @@ Priority: optional Section: net Maintainer: Johannes 5 Joemann Source: buildroot internal -Depends: libospf -Description: An OSPFv2 routing engine for use - with Quagga routing software +Depends: quagga +Description: An OSPFv2 routing engine for use with Quagga + routing software diff --git a/openwrt/package/quagga/ipkg/quagga-ripd.control b/openwrt/package/quagga/ipkg/quagga-ripd.control index b9362d907a..adee8b5e4c 100644 --- a/openwrt/package/quagga/ipkg/quagga-ripd.control +++ b/openwrt/package/quagga/ipkg/quagga-ripd.control @@ -3,5 +3,6 @@ Priority: optional Section: net Maintainer: Johannes 5 Joemann Source: buildroot internal -Description: A RIP routing engine for use - with Quagga routing software +Depends: quagga +Description: A RIP routing engine for use with Quagga + routing software diff --git a/openwrt/package/quagga/ipkg/quagga-ripngd.control b/openwrt/package/quagga/ipkg/quagga-ripngd.control index 8c6e5b59d2..7fc15f285d 100644 --- a/openwrt/package/quagga/ipkg/quagga-ripngd.control +++ b/openwrt/package/quagga/ipkg/quagga-ripngd.control @@ -3,5 +3,6 @@ Priority: optional Section: net Maintainer: Johannes 5 Joemann Source: buildroot internal -Description: A RIPNG routing engine for use - with Quagga routing software +Depends: quagga +Description: A RIPNG routing engine for use with Quagga + routing software diff --git a/openwrt/package/quagga/ipkg/quagga-vtysh.control b/openwrt/package/quagga/ipkg/quagga-vtysh.control new file mode 100644 index 0000000000..1022106706 --- /dev/null +++ b/openwrt/package/quagga/ipkg/quagga-vtysh.control @@ -0,0 +1,8 @@ +Package: quagga-vtysh +Priority: optional +Section: net +Maintainer: Johannes 5 Joemann +Source: buildroot internal +Depends: quagga, libncurses, libreadline +Description: integrated shell for interacting with Quagga + routing software diff --git a/openwrt/package/quagga/patches/quagga-cross.patch b/openwrt/package/quagga/patches/quagga-cross.patch index 69b83283bf..5b8276bcc1 100644 --- a/openwrt/package/quagga/patches/quagga-cross.patch +++ b/openwrt/package/quagga/patches/quagga-cross.patch @@ -1,17 +1,14 @@ ---- quagga-0.98.2/configure.orig Thu Feb 3 17:39:29 2005 -+++ quagga-0.98.2/configure Sat Feb 12 06:47:14 2005 -@@ -12491,72 +12491,6 @@ +--- quagga-0.98.4/configure.orig Mon Jun 27 19:05:31 2005 ++++ quagga-0.98.4/configure Mon Jul 11 20:32:07 2005 +@@ -12623,69 +12623,6 @@ -echo "$as_me:$LINENO: checking for broken CMSG_FIRSTHDR" >&5 -echo $ECHO_N "checking for broken CMSG_FIRSTHDR... $ECHO_C" >&6 -if test "$cross_compiling" = yes; then -- { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling --See \`config.log' for more details." >&5 --echo "$as_me: error: cannot run test program while cross compiling --See \`config.log' for more details." >&2;} -- { (exit 1); exit 1; }; } +- echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ @@ -73,7 +70,7 @@ echo "$as_me:$LINENO: checking route read method check" >&5 echo $ECHO_N "checking route read method check... $ECHO_C" >&6 if test "${zebra_rtread+set}" = set; then -@@ -12654,10 +12588,7 @@ +@@ -12783,10 +12720,7 @@ if test "${zebra_ipforward_path+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else diff --git a/openwrt/package/quagga/patches/quagga-readline.patch b/openwrt/package/quagga/patches/quagga-readline.patch new file mode 100644 index 0000000000..8e3b805621 --- /dev/null +++ b/openwrt/package/quagga/patches/quagga-readline.patch @@ -0,0 +1,58 @@ +--- quagga-0.98.4/configure.orig Mon Jun 27 19:05:31 2005 ++++ quagga-0.98.4/configure Thu Jul 28 07:02:12 2005 +@@ -10937,7 +10937,7 @@ + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lcurses $LIBS" ++#LIBS="-lcurses $LIBS" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -11071,7 +11071,8 @@ + #define HAVE_LIBNCURSES 1 + _ACEOF + +- LIBS="-lncurses $LIBS" ++# LIBS="-lncurses $LIBS" ++CURSES=-lncurses + + fi + +@@ -11088,7 +11089,7 @@ + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lreadline $LIBS" ++LIBS="-lreadline $CURSES $LIBS" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -11144,7 +11145,8 @@ + #define HAVE_LIBREADLINE 1 + _ACEOF + +- LIBS="-lreadline $LIBS" ++# LIBS="-lreadline $LIBS" ++CURSES="$CURSES -lreadline" + + fi + +@@ -11303,7 +11305,7 @@ + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lreadline $LIBS" ++LIBS="-lreadline $CURSES $LIBS" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -11365,7 +11367,7 @@ + #define HAVE_LIBREADLINE 1 + _ACEOF + +- LIBS="-lreadline $LIBS" ++# LIBS="-lreadline $LIBS" + + fi +