diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1999-07-08 06:46:27 +0200 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1999-07-08 06:46:27 +0200 |
commit | aa112083f850e1b6c5c6ed9c9e59a568ff66a000 (patch) | |
tree | 502aef09a8016112f1e094a07d68d545ac65b80f | |
parent | 0fceb64d25ff3d9586549bb43d971c5eef904330 (diff) |
Import ax25-apps 0.0.2 from tarballax25-apps-0.0.2
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | INSTALL | 7 | ||||
-rw-r--r-- | Makefile.am | 10 | ||||
-rw-r--r-- | Makefile.in | 17 | ||||
-rw-r--r-- | NEWS | 5 | ||||
-rw-r--r-- | README | 2 | ||||
-rw-r--r-- | acconfig.h | 8 | ||||
-rw-r--r-- | aclocal.m4 | 9 | ||||
-rw-r--r-- | ax25ipd/COPYING.ax25ipd | 39 | ||||
-rw-r--r-- | ax25ipd/HISTORY.ax25ipd | 49 | ||||
-rw-r--r-- | ax25ipd/Makefile.am | 21 | ||||
-rw-r--r-- | ax25ipd/Makefile.in | 71 | ||||
-rw-r--r-- | ax25ipd/README.ax25ipd | 695 | ||||
-rw-r--r-- | ax25ipd/ax25ipd.conf | 71 | ||||
-rw-r--r-- | ax25rtd/Makefile.am | 18 | ||||
-rw-r--r-- | ax25rtd/Makefile.in | 70 | ||||
-rw-r--r-- | ax25rtd/README.ax25rtd (renamed from ax25rtd/README) | 0 | ||||
-rw-r--r-- | ax25rtd/TODO.ax25rtd (renamed from ax25rtd/TODO) | 0 | ||||
-rw-r--r-- | call/Makefile.in | 5 | ||||
-rwxr-xr-x | config.guess | 89 | ||||
-rw-r--r-- | config.h.in | 9 | ||||
-rwxr-xr-x | config.sub | 284 | ||||
-rwxr-xr-x | configure | 180 | ||||
-rw-r--r-- | configure.in | 28 | ||||
-rw-r--r-- | listen/Makefile.in | 14 | ||||
-rw-r--r-- | listen/listen.c | 2 | ||||
-rwxr-xr-x | ltconfig | 219 | ||||
-rw-r--r-- | ltmain.sh | 18 | ||||
-rw-r--r-- | pathnames.h | 28 |
29 files changed, 1692 insertions, 286 deletions
@@ -0,0 +1,10 @@ +ax25-apps 0.0.2 + * Fixed where to find config files + * Had another crack at working around broken headers + + - Craig Small <csmall@small.dropbear.id.au> 7 July 1999 + +ax25-apps 0.0.1 + * First public release + + - Craig Small <csmall@small.dropbear.id.au> @@ -5,7 +5,7 @@ To make this library you will need the following: glibc2.1 A Modern kernel libtool - ax25-lib 0.0.3 or better + libax25 0.0.5 or better To build it you type: ./configure @@ -14,6 +14,9 @@ To build it you type: By default, it will install the files in /usr/local. To change this so that binaries go in /usr and the conf files go in /etc -type 'make install prefix=/usr' +type 'make install --prefix=/usr --sysconfdir=/etc --localstatedir=/var' + +To install the example configuration files type + make installconf - Craig Small <csmall@small.dropbear.id.au> diff --git a/Makefile.am b/Makefile.am index 6fac074..670f2e3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3,3 +3,13 @@ SUBDIRS = ax25ipd ax25rtd call listen EXTRA_DIST = pathnames.h +installconf: + @for app in $(SUBDIRS); do $(MAKE) -C $$app installconf; done + +AX25_SYSCONFDIR=$(sysconfdir)/ax25/ +AX25_LOCALSTATEDIR=$(localstatedir)/ax25/ + +INCLUDES = -DAX25_SYSCONFDIR=\""$(AX25_SYSCONFDIR)"\" \ + -DAX25_LOCALSTATEDIR=\""$(AX25_LOCALSTATEDIR)"\" + + diff --git a/Makefile.in b/Makefile.in index 236302b..ab8b282 100644 --- a/Makefile.in +++ b/Makefile.in @@ -78,14 +78,20 @@ VERSION = @VERSION@ SUBDIRS = ax25ipd ax25rtd call listen EXTRA_DIST = pathnames.h + +AX25_SYSCONFDIR = $(sysconfdir)/ax25/ +AX25_LOCALSTATEDIR = $(localstatedir)/ax25/ + +INCLUDES = -DAX25_SYSCONFDIR=\""$(AX25_SYSCONFDIR)"\" -DAX25_LOCALSTATEDIR=\""$(AX25_LOCALSTATEDIR)"\" + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \ -Makefile.am Makefile.in NEWS aclocal.m4 config.guess config.h.in \ -config.sub configure configure.in install-sh ltconfig ltmain.sh missing \ -mkinstalldirs +Makefile.am Makefile.in NEWS acconfig.h aclocal.m4 config.guess \ +config.h.in config.sub configure configure.in install-sh ltconfig \ +ltmain.sh missing mkinstalldirs DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) @@ -124,7 +130,7 @@ $(srcdir)/config.h.in: $(srcdir)/stamp-h.in rm -f $(srcdir)/stamp-h.in; \ $(MAKE) $(srcdir)/stamp-h.in; \ else :; fi -$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) +$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h cd $(top_srcdir) && $(AUTOHEADER) @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null @@ -359,6 +365,9 @@ installdirs mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean +installconf: + @for app in $(SUBDIRS); do $(MAKE) -C $$app installconf; done + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: @@ -0,0 +1,5 @@ +NEWS for ax25-apps +================== + +These programs are still being tested, you should expect some quirks +especially with compiling for a little while longer @@ -8,7 +8,7 @@ More specifically, it is recommended that you use a glibc newer than 2 May 1999, I believe Debian libc6 package 2.1.1-5 will do. These tools were built on a Debian system, potato release, the libraries -are libc6 2.1.1-10 and ncurses 4.2-3.2. Kernel is 2.2.5 +are libc6 2.1.1-12 and ncurses 4.2-3.2. Kernel is 2.2.10 - Craig Small <csmall@small.dropbear.id.au> diff --git a/acconfig.h b/acconfig.h new file mode 100644 index 0000000..65a2cfc --- /dev/null +++ b/acconfig.h @@ -0,0 +1,8 @@ +/* Define if you have a proper netax25/ax25.h header file. */ +#undef HAVE_NETAX25_AX25_H + +/* Define if you have a proper netrom/netrom.h header file. */ +#undef HAVE_NETROM_NETROM_H + +/* Define if you have a proper netrose/rose.h header file. */ +#undef HAVE_NETROSE_ROSE_H @@ -126,7 +126,7 @@ done<<>>dnl>>) changequote([,]))]) -# serial 39 AC_PROG_LIBTOOL +# serial 40 AC_PROG_LIBTOOL AC_DEFUN(AC_PROG_LIBTOOL, [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl @@ -487,6 +487,7 @@ AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; esac LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la + INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) ]) # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for @@ -510,9 +511,11 @@ AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl if test x"$enable_ltdl_install" = x"yes"; then ac_configure_args="$ac_configure_args --enable-ltdl-install" LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la + INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) else ac_configure_args="$ac_configure_args --enable-ltdl-install=no" LIBLTDL="-lltdl" + INCLTDL= fi ]) @@ -525,6 +528,6 @@ AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl -dnl This is just to quiet aclocal about the macro not being used -ifelse(a,b,[AC_DISABLE_FAST_INSTALL])dnl +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl diff --git a/ax25ipd/COPYING.ax25ipd b/ax25ipd/COPYING.ax25ipd new file mode 100644 index 0000000..ed29b23 --- /dev/null +++ b/ax25ipd/COPYING.ax25ipd @@ -0,0 +1,39 @@ + +AX25IPD ++++++++ + +ax25ipd is a derivative work of ax25ip written by Michael Westerhof, and +as such copyright is governed by Mike's original copyright notice. + +> /* ax25ipd.c main entrypoint +> * +> * Copyright 1991, Michael Westerhof, Sun Microsystems, Inc. +> * This software may be freely used, distributed, or modified, providing +> * this header is not removed. +> * +> */ + +And an extract from the original README file. + +> Comments, Criticism, Enhancements, Problems, Bugs +> ------------------------------------------------- +> +> You can reach the person responsible for ax25ip at any of the following +> addresses: +> +> Mike.Westerhof@Central.Sun.COM +> +> KA9WSB@WB9YAE +> +> Mike Westerhof, 17 N Main St, Mt Prospect, IL 60056 +> +> ------------------------------------------------------------------------- +> Copyright 1991, Michael Westerhof, Sun Microsystems, Inc. +> This software may be freely used, distributed, or modified, providing +> this footer is not removed. +> ------------------------------------------------------------------------- + +This release of ax25ipd was cleaned up slightly, and prototyped, man page +written, and had a few other's enhancements included along the way, by +Rob Mayfield VK5XXX, mayfieldrob@mail.dec.com. + diff --git a/ax25ipd/HISTORY.ax25ipd b/ax25ipd/HISTORY.ax25ipd new file mode 100644 index 0000000..f4a28cd --- /dev/null +++ b/ax25ipd/HISTORY.ax25ipd @@ -0,0 +1,49 @@ +/* + * HISTORY: + * + * 0.2.1 First distribution. + * + * 0.2.2 Comments, documentation, increased routing table to 128. + * + * 0.3.0 Added the "myalias" stuff, and began work on a beacon + * mechanism. + * Added support for the SIGHUP signal. Now a "kill -1 <pid>" + * will make ax25ip re-read the config file and restart. + * + * 0.3.1 Now can specify the internet host by internet number as + * well as host name. + * + * 0.4.0 Removed "autoadd" references + * Added support for sending and listening on UDP sockets. + * Added "SIGUSR" handler for dumping statistics on demand. + * The Beacon frame is computed only once. + * Any I/O errors will result in an exit()... This should be + * fixed, specially for the UDP socket, but for the moment + * this prevents errors from going wild and consuming vast + * amounts of system and user time. + * Fixed a bug in the KISSEMIT macro (thanks Jim Durham) + * Added support for both termio and termios (thanks Jim Durham) + * + * 0.4.1 added a generic "io_error" routine to handle errors in the + * main processing loop. This is in hopes of building a mech- + * anism that can deal with temporary network failures in a + * more robust fashion. + * + * 0.4.2 added support for the BSD sgtty method for setting and + * controlling the serial port. + * + * 1.0.0 modifications to bring ax25ip into line with the standard + * linux ax25 tools distribution. (vk5xxx) + * + * 1.0.1 various cleanups and changes ... now called ax25ipd + * added prototypes, fork's itself ... (vk5xxx) + * + * 1.0.2 Incorporated patch allowing wildcarding of ax.25 callsigns. + * The old method required a route for every call/ssid + * combination. (thanks to John Woolner. Wildcarding to be + * enhanced later ... + * + * July97 Added support for broadcast addresses and routes. + * Converted route array to a linked list and removed the + * maximum route limitations. (vk2ktj) + */ diff --git a/ax25ipd/Makefile.am b/ax25ipd/Makefile.am index 1572b25..93f90af 100644 --- a/ax25ipd/Makefile.am +++ b/ax25ipd/Makefile.am @@ -3,7 +3,10 @@ sbin_PROGRAMS = ax25ipd man_MANS = ax25ipd.8 ax25ipd.conf.5 -EXTRA_DIST = $(man_MANS) +EXTRA_DIST = $(man_MANS) $(etcfiles) $(doc_DATA) + +docdir = /usr/doc/ax25-apps +doc_DATA = README.ax25ipd HISTORY.ax25ipd COPYING.ax25ipd CFLAGS = -DUSE_TERMIO ax25ipd_LDADD = $(AX25_LIB) @@ -17,3 +20,19 @@ ax25ipd_SOURCES = \ ax25ipd.h \ process.c \ routing.c + +# Needed so that install is optional +etcfiles = ax25ipd.conf +installconf: + $(mkinstalldirs) $(DESTDIR)$(AX25_SYSCONFDIR) + @list='$(etcfiles)'; for p in $$list; do \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p; \ + done + +AX25_SYSCONFDIR=$(sysconfdir)/ax25/ +AX25_LOCALSTATEDIR=$(localstatedir)/ax25/ + +INCLUDES = -DAX25_SYSCONFDIR=\""$(AX25_SYSCONFDIR)"\" \ + -DAX25_LOCALSTATEDIR=\""$(AX25_LOCALSTATEDIR)"\" + diff --git a/ax25ipd/Makefile.in b/ax25ipd/Makefile.in index 2876a26..31ea95c 100644 --- a/ax25ipd/Makefile.in +++ b/ax25ipd/Makefile.in @@ -79,13 +79,25 @@ sbin_PROGRAMS = ax25ipd man_MANS = ax25ipd.8 ax25ipd.conf.5 -EXTRA_DIST = $(man_MANS) +EXTRA_DIST = $(man_MANS) $(etcfiles) $(doc_DATA) + +docdir = /usr/doc/ax25-apps +doc_DATA = README.ax25ipd HISTORY.ax25ipd COPYING.ax25ipd CFLAGS = -DUSE_TERMIO ax25ipd_LDADD = $(AX25_LIB) ax25ipd_SOURCES = config.c crc.c io.c kiss.c ax25ipd.c ax25ipd.h process.c routing.c + +# Needed so that install is optional +etcfiles = ax25ipd.conf + +AX25_SYSCONFDIR = $(sysconfdir)/ax25/ +AX25_LOCALSTATEDIR = $(localstatedir)/ax25/ + +INCLUDES = -DAX25_SYSCONFDIR=\""$(AX25_SYSCONFDIR)"\" -DAX25_LOCALSTATEDIR=\""$(AX25_LOCALSTATEDIR)"\" + mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = @@ -109,6 +121,8 @@ man8dir = $(mandir)/man8 MANS = $(man_MANS) NROFF = nroff +DATA = $(doc_DATA) + DIST_COMMON = Makefile.am Makefile.in @@ -269,6 +283,25 @@ uninstall-man: @$(NORMAL_UNINSTALL) $(MAKE) $(AM_MAKEFLAGS) uninstall-man5 uninstall-man8 +install-docDATA: $(doc_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(docdir) + @list='$(doc_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(docdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(docdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(docdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(docdir)/$$p; \ + fi; fi; \ + done + +uninstall-docDATA: + @$(NORMAL_UNINSTALL) + list='$(doc_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(docdir)/$$p; \ + done + tags: TAGS ID: $(HEADERS) $(SOURCES) $(LISP) @@ -313,13 +346,6 @@ distdir: $(DISTFILES) || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -ax25ipd.o: ax25ipd.c ../config.h ../pathnames.h ax25ipd.h -config.o: config.c ax25ipd.h ../pathnames.h -crc.o: crc.c ax25ipd.h ../pathnames.h -io.o: io.c ax25ipd.h ../pathnames.h -kiss.o: kiss.c ax25ipd.h ../pathnames.h -process.o: process.c ax25ipd.h ../pathnames.h -routing.o: routing.c ax25ipd.h ../pathnames.h info-am: info: info-am @@ -332,21 +358,21 @@ installcheck: installcheck-am install-exec-am: install-sbinPROGRAMS install-exec: install-exec-am -install-data-am: install-man +install-data-am: install-man install-docDATA install-data: install-data-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am install: install-am -uninstall-am: uninstall-sbinPROGRAMS uninstall-man +uninstall-am: uninstall-sbinPROGRAMS uninstall-man uninstall-docDATA uninstall: uninstall-am -all-am: Makefile $(PROGRAMS) $(MANS) +all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) all-redirect: all-am install-strip: $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install installdirs: $(mkinstalldirs) $(DESTDIR)$(sbindir) $(DESTDIR)$(mandir)/man5 \ - $(DESTDIR)$(mandir)/man8 + $(DESTDIR)$(mandir)/man8 $(DESTDIR)$(docdir) mostlyclean-generic: @@ -391,13 +417,20 @@ install-sbinPROGRAMS mostlyclean-compile distclean-compile \ clean-compile maintainer-clean-compile mostlyclean-libtool \ distclean-libtool clean-libtool maintainer-clean-libtool install-man5 \ uninstall-man5 install-man8 uninstall-man8 install-man uninstall-man \ -tags mostlyclean-tags distclean-tags clean-tags maintainer-clean-tags \ -distdir info-am info dvi-am dvi check check-am installcheck-am \ -installcheck install-exec-am install-exec install-data-am install-data \ -install-am install uninstall-am uninstall all-redirect all-am all \ -installdirs mostlyclean-generic distclean-generic clean-generic \ -maintainer-clean-generic clean mostlyclean distclean maintainer-clean - +uninstall-docDATA install-docDATA tags mostlyclean-tags distclean-tags \ +clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \ +check-am installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + +installconf: + $(mkinstalldirs) $(DESTDIR)$(AX25_SYSCONFDIR) + @list='$(etcfiles)'; for p in $$list; do \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p; \ + done # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/ax25ipd/README.ax25ipd b/ax25ipd/README.ax25ipd new file mode 100644 index 0000000..99e2c54 --- /dev/null +++ b/ax25ipd/README.ax25ipd @@ -0,0 +1,695 @@ + +** +** This file is a cobbling together of the various notes on ax25ipd. +** + + ax25ipd + ======= + +This README files pertains to version 1.0.2 of ax25ipd. +(this document is still incomplete -- the UDP features lack examples) + +Overview +-------- + + RFC1226 describes a method of using TCP/IP based networks to transport +AX.25 frames. The ax25ipd utility uses this technique to transfer AX.25 +frames in and out of TCP/IP environments. + + The interface to the AX.25 world is via KISS, with ax25ipd emulating +either a standard KISS TNC or operating as a digipeater. AX.25 frames +arriving on the KISS interface are routed to the IP interface and sent +to the appropriate IP host system. Incoming frames from the IP interface +are filtered and sent out the KISS interface. The operator controls the +mode (tnc or digipeater), the routing (callsign to ip host mapping), and +a few sundry controls via a configuration file, read at startup. + + ax25ipd is the Linux incarnation of ax25ip by Mike Westerhof, and is +not intended to support any OS other than Linux. Although getting it to +run on BSD should not present too many issues, there has been no attempt +to retain BSD(Sun) operability since it was updated in an environment +where there was no access to BSD. + + ax25ipd requires a serial port, and uses a raw socket to gain access +to the IP layer of the host's TCP/IP implementation (this requires that +ax25ipd be started by root). ax25ipd also supports using a standard UDP +socket in place of the raw socket, although this does not adhere to +RFC1226. + + +Modes and Routing +----------------- + + There are two interfaces into and out of ax25ipd. The KISS interface +is a standard serial port, running speeds up to 38400 baud. The IP +interface reads and writes packets to an IP network in accordance with +the specifications in RFC1226. Several factors determine how AX.25 +frames route within ax25ipd and through the IP network, although some +basic rules always apply: + + A frame will never leave ax25ipd on the same interface it came in on. +This fundamental rule eliminates much complexity and much confusion on +how to set up ax25ipd. + + A frame will never be sent to more than one IP host. Using an IP +network as a broadcast media is probably not a good idea, especially +across the Internet! + + Most other routing factors involve user configuration, and depend +heavily on the mode of operation. + + In tnc mode, ax25ipd emulates a KISS tnc, and behaves as one would +expect. The next destination callsign (either the destination or the +next digipeater in line) is extracted from frames arriving on the KISS +interface, and looked up in a routing table (built by the operator in the +configuration file). The routing table provides the IP address to which +this frame should be sent. The standard CRC is computed, tacked onto the +frame, and the result is sent off to the target system. Frames arriving +from the IP interface have the CRC checked and removed, and are forwarded +to the KISS interface. + + Digi mode is a little more complicated. In this mode, ax25ipd is +assigned a callsign, and acts as a digipeater. If a frame arriving on +the KISS interface has ax25ipd's callsign specified as the next digipeater, +ax25ipd will mark the frame as digipeated by it, look up the next callsign +in the routing table, compute and append the CRC, and send the frame to +the specified IP host. Frames arriving on the IP interface will be +handled in a similar fashion, but note that in no cases will the frame be +sent out the same port it arrived in on. + + +Configuration +------------- + + A single configuration file is used to tailor ax25ipd. The file is +usually named "ax25ipd.cfg" and should be located in the same directory +ax25ipd is executed from. An example is probably the best way to become +familiar with configuring ax25ipd. + +# Sample Configuration file for ax25ipd +mode digi +socket ip +device /dev/ttya +speed 9600 +mycall KA9WSB-7 +myalias ILSUN +beacon every 540 +btext ax25ipd -- digi ka9wsb-7 -- Experimental IP encapsulator +loglevel 2 +route W1AW-13 handbook.arrl.com +route WZ9ZZZ last.one.edu +param 1 20 + +The mode command selects the behavior of ax25ipd. The device line specifies +the tty device to use, and the speed line selects the baud rate. Baud +rates up to 34800 can be used, but 9600 is probably the fastest safe +speed for serial cables of any distance (remember, KISS has no error +detection). The mycall command is required only if you are in digi mode. +The loglevel command selects the amount of verbosity you want, ranging from +0 (no output) to 4 (streams of data). The route command adds entries to +a static routing table, currently 128 entries deep. In the example, AX.25 +frames destined for W1AW-13 are forwarded to handbook.arrl.com, frames for +WZ9ZZZ are sent to last.one.edu, and all others go nowhere. Specifying the +word "default" in place of a callsign sets up a default route, used when +the destination callsign cannot be found in the routing table. Finally, +in digi mode, the device on the other end of the KISS interface is probably +a TNC. The param command allows you to set the KISS parameters (txdelay, +slottime, etc). As many param commands as required can be specified. + +The myalias command allows you to specify an alias for this digipeater. +If you do this, you should probably use the beacon command to ensure +that you ID regularly. The beacon every 540 command forces an ID message +to be sent out the KISS interface every 9 minutes. Specifying beacon +after 540 will send the ID packet only if the channel has been idle for +9 minutes. + +Sending a hang-up signal to the ax25ipd process will cause it to reread +the configuration file and re-initialize itself (kill -HUP <ax25ipd-pid>). + + +Sample Configuration - NOS-to-NOS +--------------------------------- + + This example shows how to connect a pair of NOS-based PCs together +using ax25ipd to carry AX.25 traffic. + + + KA9WSB-3 one.two.com + .----------. .----------. + | | | | + | | KISS | UNIX | | + | NOS |------| host |---| + | on | | | | TCP/IP network + | PC | | | | + `----------' `----------' | + | + (vast distance) + | + | fish.sea.com W1AW-5 + | .----------. .----------. + | | | | | + | | UNIX | KISS | | + |---| host |------| NOS | + | | | 1200 | on | + | | baud | PC | + `----------' `----------' + + + Config file: Config file: + mode tnc mode tnc + device /dev/ttya device /dev/ttya + speed 9600 speed 1200 + route W1AW-5 fish.sea.com route KA9WSB-3 one.two.com + +Using this setup, a user could run AX.25 connections between the two PCs. +Note that while NOS can digipeat, NOS will not automatically allow users +near W1AW-5 to digipeat through it to reach KA9WSB-3 (i.e. the command +"C KA9WSB-3 V W1AW-5" will not have the desired result). This may or may +not be a problem. + + +Sample Configuration - digi-to-digi +----------------------------------- + + This example shows how to configure ax25ipd as a pair of digipeaters. + + + (KA9WSB-3) + one.two.com + .----------. .----------. + | | | | + | Standard | KISS | UNIX | | + | KISS |------| host |---| + | TNC | | | | TCP/IP network + | & radio | | | | + `----------' `----------' | + | + (vast distance) + | + | (W1AW-5) + | fish.sea.com W1AW-5 + | .----------. .----------. + | | | | | + | | UNIX | KISS | Standard | + |---| host |------| KISS | + | | | 9600 | TNC | + | | baud | & radio | + `----------' `----------' + + + Config file: Config file: + mode digi mode digi + mycall KA9WSB-3 mycall W1AW-5 + device /dev/ttya device /dev/ttya + speed 9600 speed 9600 + route W1AW-5 fish.sea.com route KA9WSB-3 one.two.com + param 1 20 param 1 33 + +In this setup, the UNIX hosts are "on the air". No PCs or additional +hardware are required. A user near W1AW-5 could read a user near KA9WSB-3 +simply by providing the digipeater path: "c KA9WSB V W1AW-5 KA9WSB-3" +would work just fine. + + +--------- + +We have added dual port capibility in DIGI MODE ONLY to allow us to use it +with a Dataengine. Very little needed changing, but we did not document the +changes. If you really need to know, diff the package against the original, +which was/is at sunsite.unc.edu. To specify the second port, do something +like this... + +#to use the second port, we need to be in digi mode +mode digi +# +#port 0 on my tnc goes to vhf +mycall ve3djf-12 +myalias vhfdjf +# +#port 1 on my tnc goes to uhf. +#The callsign and alias must be different for this to work right... +mycall2 ve3djf-13 +myalias2 uhfdjf +# + +Everything else is the same. Note that if you leave out the mycall2 and +myalias2 defines, it works just like the original in single port mode. For +recieving on the KISS (dual) port, packets are checked against both callsigns +and aliases. Whoever is on the other end of the AXIP link can find out what +port it came from by looking at the who it got digi'd through, although +I can't think of any reason to do that... For transmiting, you go out the +port with the callsign matching the digi address. For example, to go out +port 0 in the above example, digi through ve3djf-12 or vhfdjf. +To go out port 1, digi through ve3djf-13 or uhfdjf. + +Deficencies: If you specify the same callsign on both +ports, no error is generated, but the way the logic in the code works you +always go out the upper port (port 1), not port 0. In TNC mode, there is +really no way to specify which port to transmit on that I can think of, so +there is no multiplexing there. Everything goes out port 0 in TNC mode +still. Lastly, none of the dump routines know anything about ports on the +KISS interface, so they look the same, with both ports lumped into one. + +Let us know if you like this hack, BTW. In retrospect, we should have +written a KISSPlexor (tm:-) HIHI. I think we will do that next. + + +73! de Jeff / VE3DJF +Jeff@lnx_rpi.ee.ryerson.ca +VE3DJF@bbs.VE3RPI.ampr.org + + +AXIP (IP encapsulation of AX.25 frames) daemon by Michael Westerhof. + + + + + + + + +Network Working Group B. Kantor +Request for Comments: 1226 Univ. of Calif San Diego + May 1991 + + + Internet Protocol Encapsulation of AX.25 Frames + +Status of this Memo + + This memo describes a method for the encapsulation of AX.25 (the + Amateur Packet-Radio Link-Layer Protocol) frames within IP packets. + This technique is an Experimental Protocol for the Internet + community. Discussion and suggestions for improvement are requested. + Please refer to the current edition of the "IAB Official Protocol + Standards" for the standardization state and status of this protocol. + Distribution of this memo is unlimited. + +The AX.25 Amateur Packet-Radio Link-Layer Protocol + + The AX.25 Amateur Packet-Radio Link-Layer Protocol is described in + the publication by that name [1], incorporated here by reference. + + Each AX.25 packet ("frame") is encapsulated in one IP datagram. + Normally no AX.25 frame will exceed 330 octets, so fragmentation at + the IP layer should not be necessary. However, experiments with + larger AX.25 frame sizes may require the use of standard IP + fragmentation and reassembly procedures. + + When an AX.25 frame is encapsulated within an IP packet, HDLC framing + elements (flags and zero-stuffing) are omitted, as the IP datagram + adequately delimits the beginning and end of each AX.25 frame. The + 16-bit CRC-CCITT frame check sequence (normally generated by the HDLC + transmission hardware) is included. In all other respects, AX.25 + frames are encapsulated unaltered. + + Each such IP datagram shall have a protocol number of 93. + +Reference + + [1] AX.25 Amateur Packet-Radio Link-Layer Protocol Version 2.0 + October 1984. Available from the American Radio Relay League, + Newington CT USA 06111, and other sources. + +Security Considerations + + Security issues are not discussed in this memo. + + + + + +Kantor [Page 1] + +RFC 1226 IP Encapsulation of AX.25 Frames May 1991 + + +Author's Address + + Brian Kantor + University of California at San Diego + Network Operations C-024 + La Jolla, CA 92093-0214 + + Phone: (619) 534-6865 + + EMail: brian@UCSD.EDU + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Kantor [Page 2] + + + + +/etc/ax25/ax25ipd.conf for vk5xxx + + +# +# ax25ipd configuration file for station floyd.vk5xxx.ampr.org +# +# Select axip transport. 'ip' is what you want for compatibility +# with most other gates ... +# +socket ip +# +# Set ax25ipd mode of operation. (digi or tnc) +# +mode tnc +# +# If you selected digi, you must define a callsign. If you selected +# tnc mode, the callsign is currently optional, but this may change +# in the future! (2 calls if using dual port kiss) +# +#mycall vk5xxx-4 +#mycall2 vk5xxx-5 +# +# In digi mode, you may use an alias. (2 for dual port) +# +#myalias svwdns +#myalias2 svwdn2 +# +# Send an ident every 540 seconds ... +# +beacon after 540 +btext ax25ip -- tncmode rob/vk5xxx -- Experimental AXIP gateway +# +# Serial port, or pipe connected to a kissattach in my case +# +device /dev/ttyqd +# +# Set the device speed +# +speed 9600 +# +# loglevel 0 - no output +# loglevel 1 - config info only +# loglevel 2 - major events and errors +# loglevel 3 - major events, errors, and AX25 frame trace +# loglevel 4 - all events +# log 0 for the moment, syslog not working yet ... +# +loglevel 0 +# +# If we are in digi mode, we might have a real tnc here, so use param to +# set the tnc parameters ... +# +#param 1 20 +# +# ax.25 route definition, define as many as you need (< 128?) +# format is route (call/wildcard) (ip host at destination) +# +route vk5zeu* 44.136.202.3 +route vk5wsr-1 44.136.202.241 +route vk5wsr-0 44.136.202.241 +route vk5dj-15 44.136.202.241 +route vk5ham* 44.136.202.241 +# +# a default route. Carefull here, all undefined traffic end's up here. +# +route default 44.136.202.241 +# + + +another ax25ipd.cfg + + +# Sample ax25ipd configuration file +# +# First select the mode of operation. (digi or tnc) +# +socket ip +# +mode tnc +# +# If you selected digi, you must define a callsign. If you selected +# tnc mode, the callsign is currently optional, but this may change +# in the future! +# +mycall ve3rpi-14 +mycall2 ve3rpi-15 +# +# In digi mode, you may use an alias. +# +myalias ryeha1 +myalias2 ryeha2 +# +# ID every 10 minutes... +# +beacon after 540 +btext ax25ipd -- digi jeff -- Experimental IP gateway +# +# The tnc or host system must be connected to a serial port. +# +device /dev/ttyS1 +# +# The line speed is set here +# +speed 9600 +# +# loglevel 0 - no output +# loglevel 1 - config info only +# loglevel 2 - major events and errors +# loglevel 3 - major events, errors, and AX25 frame trace +# loglevel 4 - all events +# +loglevel 4 +# +# If digi mode, we probably have a tnc on the other end of the serial +# port. Use the param command to set the KISS parameters (like txdelay!) +# You can specify as many as you need. +# +param 1 20 +# +# Define some routes. This example routes all traffic for callsign ka9wsb-7 +# to a host named waveguide.central.sun.com. You can define as many as +# required. +# +route ve3rpi bbs.ve3rpi.ampr.org +route ve3rpi-2 ryeham.ee.ryerson.ca +route qst ryeham.ee.ryerson.ca +# +# A catch-all is provided: this line sends all calls not specifically +# noted in the routing tables to sunbird.central.sun.com. Use this feature +# with great care -- the host on the other end may not appreciate all the +# traffic! +# +#route default sunbird.central.sun.com +# + + + +ax25ipd.cfg.n8qlb + + +# Sample ax25ipd configuration file (0.4.2 version) +# +# First select the mode of operation. (digi or tnc) +# +mode tnc +# +# The normal mode of operation is using IP datagrams: +# +socket ip +# +# But you can also use UDP datagrams. If you don't specify a port number +# to use, the default will be chosen (usually a Good Idea). +# +socket udp +# +# If you selected digi, you must define a callsign. If you selected +# tnc mode, the callsign is currently optional, but this may change +# in the future! +# +mycall N8QLB-1 +# +# In digi mode, you may use an alias. +# +myalias LINUXX +# +# Note that if you use an alias, in order to guarantee you will properly +# ID every 10 minutes, you MUST specify "beacon every 540" (or so -- +# don't beacon too often, but setting it to 600 might end up squeaking +# past the 10 minute time if the channel is busy) +# A possible future enhancement may allow an ID only if necessary (i.e. +# a packet has been digipeated using the "myalias" id)... +# +beacon every 540 +btext ax25ipd -- digi n8qlb -- Experimental IP gateway +# +# The tnc or host system must be connected to a serial port. +# +device /dev/tnc +# +# The line speed is set here +# +speed 9600 +# +# loglevel 0 - no output +# loglevel 1 - config info only +# loglevel 2 - major events and errors +# loglevel 3 - major events, errors, and AX25 frame trace +# loglevel 4 - all events +# +loglevel 0 +# +# If digi mode, we probably have a tnc on the other end of the serial +# port. Use the param command to set the KISS parameters (like txdelay!) +# You can specify as many as you need. +# +param 1 20 +# +# Define some routes. This example routes all traffic for callsign ka9wsb-6 +# to a host named sales.central.sun.com, using udp instead of raw ip. The +# next line sends all traffic for e3abc-5 to a host at ip address 11.22.33.44, +# sending the datagrams to udp port 12345. The last example sends frames +# addressed to y4xyz-9 and sends them to flim.flam.com, using the ip +# encapsulation. You can define as many as required. +# +#route n8qlb linux.n8qlb +#route e3abc-5 11.22.33.44 udp 12345 +#route y4xyz-9 flim.flam.com +# +# A catch-all is provided: this line sends all calls not specifically +# noted in the routing tables to fred.central.sun.com. Use this feature +# with great care -- the host on the other end may not appreciate all the +# traffic! +# +route default linux.n8qlb +# +ax25ipd.cfg.stock +# Sample ax25ipd configuration file +# +# First select the mode of operation. (digi or tnc) +# +mode digi +# +# If you selected digi, you must define a callsign. If you selected +# tnc mode, the callsign is currently optional, but this may change +# in the future! +# +mycall ka9wsb-7 +# +# In digi mode, you may use an alias. +# +myalias sunord +# +# ID every 10 minutes... +# +beacon after 540 +btext ax25ipd -- digi ka9wsb-7 -- Experimental IP gateway +# +# The tnc or host system must be connected to a serial port. +# +device /dev/ttyb +# +# The line speed is set here +# +speed 9600 +# +# loglevel 0 - no output +# loglevel 1 - config info only +# loglevel 2 - major events and errors +# loglevel 3 - major events, errors, and AX25 frame trace +# loglevel 4 - all events +# +loglevel 3 +# +# If digi mode, we probably have a tnc on the other end of the serial +# port. Use the param command to set the KISS parameters (like txdelay!) +# You can specify as many as you need. +# +param 1 20 +# +# Define some routes. This example routes all traffic for callsign ka9wsb-7 +# to a host named waveguide.central.sun.com. You can define as many as +# required. +# +route ka9wsb-6 salespuke.central.sun.com +# +# A catch-all is provided: this line sends all calls not specifically +# noted in the routing tables to sunbird.central.sun.com. Use this feature +# with great care -- the host on the other end may not appreciate all the +# traffic! +# +#route default sunbird.central.sun.com +# + + + + +Outstanding Issues +------------------ + + There are many outstanding issues with this software. A partial list, +in no particular order, appears below. + +- Portability! io.c currently uses BSD-style select but sys5-style termios! + +- ICMP messages relating to ax25ipd are ignored. + +- Performance of the routing lookups is probably horrid. Also, a static + table is a crock. Feedback from evaluations and test sites may help + determine how this should work. + +- Statistics should be added. + +- A few more comments in the code would be nice. + + +Comments, Criticism, Enhancements, Problems, Bugs +------------------------------------------------- + + You can reach the person responsible for ax25ipd at any of the following + addresses: + + Mike.Westerhof@Central.Sun.COM + + KA9WSB@WB9YAE + + Mike Westerhof, 17 N Main St, Mt Prospect, IL 60056 + +------------------------------------------------------------------------- +Copyright 1991, Michael Westerhof, Sun Microsystems, Inc. +This software may be freely used, distributed, or modified, providing +this footer is not removed. +------------------------------------------------------------------------- + diff --git a/ax25ipd/ax25ipd.conf b/ax25ipd/ax25ipd.conf new file mode 100644 index 0000000..391494f --- /dev/null +++ b/ax25ipd/ax25ipd.conf @@ -0,0 +1,71 @@ +# +# ax25ipd configuration file for station floyd.vk5xxx.ampr.org +# +# Select axip transport. 'ip' is what you want for compatibility +# with most other gates ... +# +socket ip +# +# Set ax25ipd mode of operation. (digi or tnc) +# +mode tnc +# +# If you selected digi, you must define a callsign. If you selected +# tnc mode, the callsign is currently optional, but this may change +# in the future! (2 calls if using dual port kiss) +# +#mycall vk5xxx-4 +#mycall2 vk5xxx-5 +# +# In digi mode, you may use an alias. (2 for dual port) +# +#myalias svwdns +#myalias2 svwdn2 +# +# Send an ident every 540 seconds ... +# +#beacon after 540 +#btext ax25ip -- tncmode rob/vk5xxx -- Experimental AXIP gateway +# +# Serial port, or pipe connected to a kissattach in my case +# +device /dev/ttyp0 +# +# Set the device speed +# +speed 9600 +# +# loglevel 0 - no output +# loglevel 1 - config info only +# loglevel 2 - major events and errors +# loglevel 3 - major events, errors, and AX25 frame trace +# loglevel 4 - all events +# log 0 for the moment, syslog not working yet ... +# +loglevel 0 +# +# If we are in digi mode, we might have a real tnc here, so use param to +# set the tnc parameters ... +# +#param 1 20 +# +# Broadcast Address definition. Any of the addresses listed will be forwarded +# to any of the routes flagged as broadcast capable routes. +# +broadcast QST-0 NODES-0 +# +# ax.25 route definition, define as many as you need. +# format is route (call/wildcard) (ip host at destination) +# ssid of 0 routes all ssid's +# +# route <destcall> <destaddr> [flags] +# +# Valid flags are: +# b - allow broadcasts to be transmitted via this route +# d - this route is the default route +# +#route vk2sut-0 44.136.8.68 b +#route vk5xxx 44.136.188.221 b +#route vk2abc 44.1.1.1 +# +# diff --git a/ax25rtd/Makefile.am b/ax25rtd/Makefile.am index b804faa..a4db33c 100644 --- a/ax25rtd/Makefile.am +++ b/ax25rtd/Makefile.am @@ -1,19 +1,21 @@ etcfiles = ax25rtd.conf -etcdir = $(sysconfdir)/ax25 installconf: - $(mkinstalldirs) $(DESTDIR)$(etcdir) + $(mkinstalldirs) $(DESTDIR)$(AX25_SYSCONFDIR) @list='$(etcfiles)'; for p in $$list; do \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(etcdir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(etcdir)/$$p; \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p; \ done sbin_PROGRAMS = ax25rtd ax25rtctl LDADD = $(AX25_LIB) -EXTRA_DIST = $(etcfiles) +EXTRA_DIST = $(etcfiles) $(doc_DATA) + +docdir=/usr/doc/ax25-apps +doc_DATA= TODO.ax25rtd README.ax25rtd ax25rtd_SOURCES = \ ax25rtd.c \ @@ -23,3 +25,9 @@ ax25rtd_SOURCES = \ config.c \ listener.c +AX25_SYSCONFDIR=$(sysconfdir)/ax25/ +AX25_LOCALSTATEDIR=$(localstatedir)/ax25/ + +INCLUDES = -DAX25_SYSCONFDIR=\""$(ax25_sysconfdir)"\" \ + -DAX25_LOCALSTATEDIR=\""$(localstatedir)/ax25/"\" + diff --git a/ax25rtd/Makefile.in b/ax25rtd/Makefile.in index 8925278..02b28b3 100644 --- a/ax25rtd/Makefile.in +++ b/ax25rtd/Makefile.in @@ -76,16 +76,24 @@ RANLIB = @RANLIB@ VERSION = @VERSION@ etcfiles = ax25rtd.conf -etcdir = $(sysconfdir)/ax25 sbin_PROGRAMS = ax25rtd ax25rtctl LDADD = $(AX25_LIB) -EXTRA_DIST = $(etcfiles) +EXTRA_DIST = $(etcfiles) $(doc_DATA) + +docdir = /usr/doc/ax25-apps +doc_DATA = TODO.ax25rtd README.ax25rtd ax25rtd_SOURCES = ax25rtd.c ax25rtd.h cache_ctl.c cache_dump.c config.c listener.c + +AX25_SYSCONFDIR = $(sysconfdir)/ax25/ +AX25_LOCALSTATEDIR = $(localstatedir)/ax25/ + +INCLUDES = -DAX25_SYSCONFDIR=\""$(ax25_sysconfdir)"\" -DAX25_LOCALSTATEDIR=\""$(localstatedir)/ax25/"\" + mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = @@ -111,7 +119,9 @@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CF LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ -DIST_COMMON = README Makefile.am Makefile.in TODO +DATA = $(doc_DATA) + +DIST_COMMON = Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) @@ -203,6 +213,25 @@ ax25rtctl: $(ax25rtctl_OBJECTS) $(ax25rtctl_DEPENDENCIES) @rm -f ax25rtctl $(LINK) $(ax25rtctl_LDFLAGS) $(ax25rtctl_OBJECTS) $(ax25rtctl_LDADD) $(LIBS) +install-docDATA: $(doc_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(docdir) + @list='$(doc_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(docdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(docdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(docdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(docdir)/$$p; \ + fi; fi; \ + done + +uninstall-docDATA: + @$(NORMAL_UNINSTALL) + list='$(doc_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(docdir)/$$p; \ + done + tags: TAGS ID: $(HEADERS) $(SOURCES) $(LISP) @@ -247,12 +276,6 @@ distdir: $(DISTFILES) || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -ax25rtctl.o: ax25rtctl.c ../config.h ../pathnames.h -ax25rtd.o: ax25rtd.c ../pathnames.h ax25rtd.h -cache_ctl.o: cache_ctl.c ax25rtd.h -cache_dump.o: cache_dump.c ax25rtd.h -config.o: config.c ../pathnames.h ax25rtd.h -listener.o: listener.c ../pathnames.h ax25rtd.h info-am: info: info-am @@ -265,20 +288,20 @@ installcheck: installcheck-am install-exec-am: install-sbinPROGRAMS install-exec: install-exec-am -install-data-am: +install-data-am: install-docDATA install-data: install-data-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am install: install-am -uninstall-am: uninstall-sbinPROGRAMS +uninstall-am: uninstall-sbinPROGRAMS uninstall-docDATA uninstall: uninstall-am -all-am: Makefile $(PROGRAMS) +all-am: Makefile $(PROGRAMS) $(DATA) all-redirect: all-am install-strip: $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install installdirs: - $(mkinstalldirs) $(DESTDIR)$(sbindir) + $(mkinstalldirs) $(DESTDIR)$(sbindir) $(DESTDIR)$(docdir) mostlyclean-generic: @@ -321,20 +344,21 @@ maintainer-clean: maintainer-clean-am clean-sbinPROGRAMS maintainer-clean-sbinPROGRAMS uninstall-sbinPROGRAMS \ install-sbinPROGRAMS mostlyclean-compile distclean-compile \ clean-compile maintainer-clean-compile mostlyclean-libtool \ -distclean-libtool clean-libtool maintainer-clean-libtool tags \ -mostlyclean-tags distclean-tags clean-tags maintainer-clean-tags \ -distdir info-am info dvi-am dvi check check-am installcheck-am \ -installcheck install-exec-am install-exec install-data-am install-data \ -install-am install uninstall-am uninstall all-redirect all-am all \ -installdirs mostlyclean-generic distclean-generic clean-generic \ -maintainer-clean-generic clean mostlyclean distclean maintainer-clean +distclean-libtool clean-libtool maintainer-clean-libtool \ +uninstall-docDATA install-docDATA tags mostlyclean-tags distclean-tags \ +clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \ +check-am installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean installconf: - $(mkinstalldirs) $(DESTDIR)$(etcdir) + $(mkinstalldirs) $(DESTDIR)$(AX25_SYSCONFDIR) @list='$(etcfiles)'; for p in $$list; do \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(etcdir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(etcdir)/$$p; \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(AX25_SYSCONFDIR)/$$p; \ done # Tell versions [3.59,3.63) of GNU make to not export all variables. diff --git a/ax25rtd/README b/ax25rtd/README.ax25rtd index a7bf2c4..a7bf2c4 100644 --- a/ax25rtd/README +++ b/ax25rtd/README.ax25rtd diff --git a/ax25rtd/TODO b/ax25rtd/TODO.ax25rtd index 19e6627..19e6627 100644 --- a/ax25rtd/TODO +++ b/ax25rtd/TODO.ax25rtd diff --git a/call/Makefile.in b/call/Makefile.in index 2f76982..cdb2815 100644 --- a/call/Makefile.in +++ b/call/Makefile.in @@ -280,11 +280,6 @@ distdir: $(DISTFILES) || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -call.o: call.c ../config.h ../pathnames.h call.h crc.h menu.h -crc.o: crc.c -dostime.o: dostime.c -menu.o: menu.c menu.h -yapp.o: yapp.c call.h info-am: info: info-am diff --git a/config.guess b/config.guess index a1b76ce..6cb567b 100755 --- a/config.guess +++ b/config.guess @@ -1,6 +1,7 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999 +# Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -114,7 +115,13 @@ EOF esac fi rm -f $dummy.s $dummy - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]` + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit 0 ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix exit 0 ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 @@ -158,7 +165,7 @@ EOF SR2?01:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit 0;; - Pyramid*:OSx*:*:*|MIS*:OSx*:*:*|MIS*:SMP_DC-OSx*:*:*) + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 @@ -414,7 +421,7 @@ EOF case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/6?? | 9000/7?? | 9000/80[024] | 9000/8?[136790] | 9000/892 ) + 9000/[678][0-9][0-9]) sed 's/^ //' << EOF >$dummy.c #include <stdlib.h> #include <unistd.h> @@ -488,7 +495,7 @@ EOF 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit 0 ;; - *9??*:MPE*:*:*) + *9??*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit 0 ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) @@ -507,6 +514,9 @@ EOF parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit 0 ;; + hppa*:OpenBSD:*:*) + echo hppa-unknown-openbsd + exit 0 ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit 0 ;; @@ -546,7 +556,7 @@ EOF echo cray2-cray-unicos exit 0 ;; F300:UNIX_System_V:*:*) - FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit 0 ;; @@ -559,12 +569,12 @@ EOF hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; i?86:BSD/386:*:* | i?86:BSD/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit 0 ;; @@ -589,6 +599,15 @@ EOF i*:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit 0 ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i386-pc-interix + exit 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit 0 ;; @@ -622,7 +641,36 @@ EOF sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;; + elf32ppc) + # Determine Lib Version + cat >$dummy.c <<EOF +#include <features.h> +#if defined(__GLIBC__) +extern char __libc_version[]; +extern char __libc_release[]; +#endif +main(argc, argv) + int argc; + char *argv[]; +{ +#if defined(__GLIBC__) + printf("%s %s\n", __libc_version, __libc_release); +#else + printf("unkown\n"); +#endif + return 0; +} +EOF + LIBC="" + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null + if test "$?" = 0 ; then + ./$dummy | grep 1\.99 > /dev/null + if test "$?" = 0 ; then + LIBC="libc1" + fi + fi + rm -f $dummy.c $dummy + echo powerpc-unknown-linux-gnu${LIBC} ; exit 0 ;; esac if test "${UNAME_MACHINE}" = "alpha" ; then @@ -755,6 +803,14 @@ EOF echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} fi exit 0 ;; + i?86:*:5:7*) + UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` + (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent.*II' >/dev/null) && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) && UNAME_MACHINE=i585 + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}${UNAME_VERSION}-sysv${UNAME_RELEASE} + exit 0 ;; i?86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` @@ -764,18 +820,15 @@ EOF (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit 0 ;; - i?86:UnixWare:*:*) - if /bin/uname -X 2>/dev/null >/dev/null ; then - (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - fi - echo ${UNAME_MACHINE}-unixware-${UNAME_RELEASE}-${UNAME_VERSION} - exit 0 ;; pc:*:*:*) # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i386. @@ -862,7 +915,7 @@ EOF news*:NEWS-OS:*:6*) echo mips-sony-newsos6 exit 0 ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R4000:UNIX_SV:*:*) + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else diff --git a/config.h.in b/config.h.in index 70dbd5d..fdd6f8c 100644 --- a/config.h.in +++ b/config.h.in @@ -33,6 +33,15 @@ /* Define if your <sys/time.h> declares struct tm. */ #undef TM_IN_SYS_TIME +/* Define if you have a proper netax25/ax25.h header file. */ +#undef HAVE_NETAX25_AX25_H + +/* Define if you have a proper netrom/netrom.h header file. */ +#undef HAVE_NETROM_NETROM_H + +/* Define if you have a proper netrose/rose.h header file. */ +#undef HAVE_NETROSE_ROSE_H + /* Define if you have the gettimeofday function. */ #undef HAVE_GETTIMEOFDAY @@ -1,6 +1,6 @@ #! /bin/sh # Configuration validation subroutine script, version 1.1. -# Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc. +# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc. # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. @@ -98,11 +98,21 @@ case $os in os= basic_machine=$1 ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=vxworks + basic_machine=$1 + ;; -hiux*) os=-hiuxwe2 ;; -sco5) - os=sco3.2v5 + os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) @@ -121,6 +131,9 @@ case $os in os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` @@ -152,14 +165,20 @@ case $basic_machine in tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ | 580 | i960 | h8300 \ - | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w \ + | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \ | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \ - | 1750a | dsp16xx | pdp11 | mips64 | mipsel | mips64el \ + | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ | mips64orion | mips64orionel | mipstx39 | mipstx39el \ - | sparc | sparclet | sparclite | sparc64 | v850) + | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ + | mips64vr5000 | miprs64vr5000el \ + | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ + | thumb | d10v) basic_machine=$basic_machine-unknown ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65) + ;; + # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. @@ -175,26 +194,41 @@ case $basic_machine in vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ - | power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \ + | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ | xmp-* | ymp-* \ - | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \ | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \ | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ | clipper-* | orion-* \ | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ - | sparc64-* | mips64-* | mipsel-* \ - | mips64el-* | mips64orion-* | mips64orionel-* \ + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ | mipstx39-* | mipstx39el-* \ - | f301-* | armv*-*) + | f301-* | armv*-* | t3e-* \ + | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ + | thumb-* | v850-* | d30v-* | tic30-* | c30-* ) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; alliant | fx80) basic_machine=fx80-alliant ;; @@ -224,6 +258,10 @@ case $basic_machine in basic_machine=m68k-apollo os=-sysv ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; aux) basic_machine=m68k-apple os=-aux @@ -300,6 +338,10 @@ case $basic_machine in encore | umax | mmax) basic_machine=ns32k-encore ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; fx2800) basic_machine=i860-alliant ;; @@ -318,6 +360,14 @@ case $basic_machine in basic_machine=h8300-hitachi os=-hms ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; harris) basic_machine=m88k-harris os=-sysv3 @@ -333,13 +383,30 @@ case $basic_machine in basic_machine=m68k-hp os=-hpux ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; - hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7) + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) @@ -348,13 +415,13 @@ case $basic_machine in hppa-next) os=-nextstep3 ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - os=-mpeix + hppaosf) + basic_machine=hppa1.1-hp + os=-osf ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - os=-mpeix + hppro) + basic_machine=hppa1.1-hp + os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm @@ -377,6 +444,22 @@ case $basic_machine in basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + i386-go32 | go32) + basic_machine=i386-unknown + os=-go32 + ;; + i386-mingw32 | mingw32) + basic_machine=i386-unknown + os=-mingw32 + ;; iris | iris4d) basic_machine=mips-sgi case $os in @@ -405,6 +488,10 @@ case $basic_machine in miniframe) basic_machine=m68000-convergent ;; + *mint | *MiNT) + basic_machine=m68k-atari + os=-mint + ;; mipsel*-linux*) basic_machine=mipsel-unknown os=-linux-gnu @@ -419,10 +506,22 @@ case $basic_machine in mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + msdos) + basic_machine=i386-unknown + os=-msdos + ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; netwinder) basic_machine=armv4l-corel os=-linux @@ -439,6 +538,10 @@ case $basic_machine in basic_machine=mips-sony os=-newsos ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; next | m*-next ) basic_machine=m68k-next case $os in @@ -464,9 +567,25 @@ case $basic_machine in basic_machine=i960-intel os=-nindy ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; np1) basic_machine=np1-gould ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 @@ -484,19 +603,19 @@ case $basic_machine in pc532 | pc532-*) basic_machine=ns32k-pc532 ;; - pentium | p5 | k5 | nexen) + pentium | p5 | k5 | k6 | nexen) basic_machine=i586-pc ;; - pentiumpro | p6 | k6 | 6x86) + pentiumpro | p6 | 6x86) basic_machine=i686-pc ;; pentiumii | pentium2) basic_machine=i786-pc ;; - pentium-* | p5-* | k5-* | nexen-*) + pentium-* | p5-* | k5-* | k6-* | nexen-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; - pentiumpro-* | p6-* | k6-* | 6x86-*) + pentiumpro-* | p6-* | 6x86-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-*) @@ -520,12 +639,20 @@ case $basic_machine in ps2) basic_machine=i386-ibm ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; sequent) basic_machine=i386-sequent ;; @@ -533,6 +660,10 @@ case $basic_machine in basic_machine=sh-hitachi os=-hms ;; + sparclite-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; sps7) basic_machine=m68k-bull os=-sysv2 @@ -540,6 +671,13 @@ case $basic_machine in spur) basic_machine=spur-unknown ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; sun2) basic_machine=m68000-sun ;; @@ -584,6 +722,10 @@ case $basic_machine in basic_machine=i386-sequent os=-dynix ;; + t3e) + basic_machine=t3e-cray + os=-unicos + ;; tx39) basic_machine=mipstx39-unknown ;; @@ -601,6 +743,10 @@ case $basic_machine in basic_machine=a29k-nyu os=-sym1 ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; vaxv) basic_machine=vax-dec os=-sysv @@ -624,6 +770,14 @@ case $basic_machine in basic_machine=a29k-wrs os=-vxworks ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; xmp) basic_machine=xmp-cray os=-unicos @@ -631,9 +785,9 @@ case $basic_machine in xps | xps100) basic_machine=xps100-honeywell ;; - *mint | *MiNT) - basic_machine=m68k-atari - os=-mint + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim ;; none) basic_machine=none-none @@ -642,6 +796,15 @@ case $basic_machine in # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; mips) if [ x$os = x-linux-gnu ]; then basic_machine=mips-unknown @@ -664,7 +827,7 @@ case $basic_machine in we32k) basic_machine=we32k-att ;; - sparc) + sparc | sparcv9) basic_machine=sparc-sun ;; cydra) @@ -676,6 +839,16 @@ case $basic_machine in orion105) basic_machine=clipper-highlevel ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff + ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 @@ -729,14 +902,21 @@ case $os in | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ - | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -rhapsody* \ - | -openstep* | -mpeix* | -oskit*) + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit*) # Remember, each alternative MUST END IN *, to match a version number. ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; @@ -761,6 +941,9 @@ case $os in -acis*) os=-aos ;; + -386bsd) + os=-bsd + ;; -ctix* | -uts*) os=-sysv ;; @@ -792,6 +975,12 @@ case $os in # This must come after -sysvr4. -sysv*) ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; -xenix) os=-xenix ;; @@ -847,6 +1036,15 @@ case $basic_machine in # default. # os=-sunos4 ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; @@ -859,6 +1057,15 @@ case $basic_machine in *-ibm) os=-aix ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; *-hp) os=-hpux ;; @@ -922,6 +1129,15 @@ case $basic_machine in f301-fujitsu) os=-uxpv ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; *-atari*) os=-mint ;; @@ -946,10 +1162,10 @@ case $basic_machine in -aix*) vendor=ibm ;; - -hpux*) - vendor=hp + -beos*) + vendor=be ;; - -mpeix*) + -hpux*) vendor=hp ;; -mpeix*) @@ -982,6 +1198,12 @@ case $basic_machine in -aux*) vendor=apple ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; -*mint | -*MiNT) vendor=atari ;; @@ -532,7 +532,7 @@ fi -VERSION=0.0.1 +VERSION=0.0.2 PACKAGE=ax25-apps ac_aux_dir= for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do @@ -1730,7 +1730,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then AX25_LIB="-lax25" else echo "$ac_t""no" 1>&6 -AX25_LIB= +{ echo "configure: error: Could not find the libax25 libraries; aborting" 1>&2; exit 1; } fi echo $ac_n "checking for initscr in -lncurses""... $ac_c" 1>&6 @@ -1775,17 +1775,84 @@ NCURSES_LIB= fi +echo $ac_n "checking for working netax25/ax25.h header file""... $ac_c" 1>&6 +echo "configure:1780: checking for working netax25/ax25.h header file" >&5 +cat > conftest.$ac_ext <<EOF +#line 1782 "configure" +#include "confdefs.h" +#include <netax25/ax25.h> +EOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + egrep "ax25_fwd_struct" >/dev/null 2>&1; then + rm -rf conftest* + cat >> confdefs.h <<\EOF +#define HAVE_NETAX25_AX25_H 1 +EOF + +fi +rm -f conftest* + +if $HAVE_NETAX25_AX25_H ; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi +echo $ac_n "checking for working netrom/netrom.h header file""... $ac_c" 1>&6 +echo "configure:1802: checking for working netrom/netrom.h header file" >&5 +cat > conftest.$ac_ext <<EOF +#line 1804 "configure" +#include "confdefs.h" +#include <netrom/netrom.h> +EOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + egrep "unsigned int ndigis" >/dev/null 2>&1; then + rm -rf conftest* + cat >> confdefs.h <<\EOF +#define HAVE_NETROM_NETROM_H 1 +EOF + +fi +rm -f conftest* + +if $HAVE_NETROM_NETROM_H ; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi +echo $ac_n "checking for working netrose/rose.h header file""... $ac_c" 1>&6 +echo "configure:1824: checking for working netrose/rose.h header file" >&5 +cat > conftest.$ac_ext <<EOF +#line 1826 "configure" +#include "confdefs.h" +#include <netrose/rose.h> +EOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + egrep "rose_facilities_struct" >/dev/null 2>&1; then + rm -rf conftest* + cat >> confdefs.h <<\EOF +#define HAVE_NETROSE_ROSE_H 1 +EOF + +fi +rm -f conftest* + +if $HAVE_NETROSE_ROSE_H ; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + ac_header_dirent=no for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 -echo "configure:1784: checking for $ac_hdr that defines DIR" >&5 +echo "configure:1851: checking for $ac_hdr that defines DIR" >&5 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1789 "configure" +#line 1856 "configure" #include "confdefs.h" #include <sys/types.h> #include <$ac_hdr> @@ -1793,7 +1860,7 @@ int main() { DIR *dirp = 0; ; return 0; } EOF -if { (eval echo configure:1797: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1864: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_header_dirent_$ac_safe=yes" else @@ -1818,7 +1885,7 @@ done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 -echo "configure:1822: checking for opendir in -ldir" >&5 +echo "configure:1889: checking for opendir in -ldir" >&5 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1826,7 +1893,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldir $LIBS" cat > conftest.$ac_ext <<EOF -#line 1830 "configure" +#line 1897 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1837,7 +1904,7 @@ int main() { opendir() ; return 0; } EOF -if { (eval echo configure:1841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1908: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1859,7 +1926,7 @@ fi else echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 -echo "configure:1863: checking for opendir in -lx" >&5 +echo "configure:1930: checking for opendir in -lx" >&5 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1867,7 +1934,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lx $LIBS" cat > conftest.$ac_ext <<EOF -#line 1871 "configure" +#line 1938 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1878,7 +1945,7 @@ int main() { opendir() ; return 0; } EOF -if { (eval echo configure:1882: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1949: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1901,12 +1968,12 @@ fi fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:1905: checking for ANSI C header files" >&5 +echo "configure:1972: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1910 "configure" +#line 1977 "configure" #include "confdefs.h" #include <stdlib.h> #include <stdarg.h> @@ -1914,7 +1981,7 @@ else #include <float.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1918: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1985: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1931,7 +1998,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 1935 "configure" +#line 2002 "configure" #include "confdefs.h" #include <string.h> EOF @@ -1949,7 +2016,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 1953 "configure" +#line 2020 "configure" #include "confdefs.h" #include <stdlib.h> EOF @@ -1970,7 +2037,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext <<EOF -#line 1974 "configure" +#line 2041 "configure" #include "confdefs.h" #include <ctype.h> #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -1981,7 +2048,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:1985: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2052: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -2005,12 +2072,12 @@ EOF fi echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6 -echo "configure:2009: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo "configure:2076: checking for sys/wait.h that is POSIX.1 compatible" >&5 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2014 "configure" +#line 2081 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/wait.h> @@ -2026,7 +2093,7 @@ wait (&s); s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; ; return 0; } EOF -if { (eval echo configure:2030: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2097: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_sys_wait_h=yes else @@ -2050,17 +2117,17 @@ for ac_hdr in fcntl.h sys/file.h sys/ioctl.h sys/time.h syslog.h termio.h unistd do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2054: checking for $ac_hdr" >&5 +echo "configure:2121: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2059 "configure" +#line 2126 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2064: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2131: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2088,12 +2155,12 @@ done echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:2092: checking for working const" >&5 +echo "configure:2159: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2097 "configure" +#line 2164 "configure" #include "confdefs.h" int main() { @@ -2142,7 +2209,7 @@ ccp = (char const *const *) p; ; return 0; } EOF -if { (eval echo configure:2146: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2213: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -2163,21 +2230,21 @@ EOF fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:2167: checking for inline" >&5 +echo "configure:2234: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <<EOF -#line 2174 "configure" +#line 2241 "configure" #include "confdefs.h" int main() { } $ac_kw foo() { ; return 0; } EOF -if { (eval echo configure:2181: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2248: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -2203,12 +2270,12 @@ EOF esac echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:2207: checking for off_t" >&5 +echo "configure:2274: checking for off_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2212 "configure" +#line 2279 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -2236,12 +2303,12 @@ EOF fi echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:2240: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:2307: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2245 "configure" +#line 2312 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/time.h> @@ -2250,7 +2317,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:2254: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2321: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -2271,12 +2338,12 @@ EOF fi echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 -echo "configure:2275: checking whether struct tm is in sys/time.h or time.h" >&5 +echo "configure:2342: checking whether struct tm is in sys/time.h or time.h" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2280 "configure" +#line 2347 "configure" #include "confdefs.h" #include <sys/types.h> #include <time.h> @@ -2284,7 +2351,7 @@ int main() { struct tm *tp; tp->tm_sec; ; return 0; } EOF -if { (eval echo configure:2288: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2355: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h else @@ -2306,7 +2373,7 @@ fi echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6 -echo "configure:2310: checking for 8-bit clean memcmp" >&5 +echo "configure:2377: checking for 8-bit clean memcmp" >&5 if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2314,7 +2381,7 @@ else ac_cv_func_memcmp_clean=no else cat > conftest.$ac_ext <<EOF -#line 2318 "configure" +#line 2385 "configure" #include "confdefs.h" main() @@ -2324,7 +2391,7 @@ main() } EOF -if { (eval echo configure:2328: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2395: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_memcmp_clean=yes else @@ -2342,12 +2409,12 @@ echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6 test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.${ac_objext}" echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:2346: checking return type of signal handlers" >&5 +echo "configure:2413: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2351 "configure" +#line 2418 "configure" #include "confdefs.h" #include <sys/types.h> #include <signal.h> @@ -2364,7 +2431,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:2368: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2435: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -2383,7 +2450,7 @@ EOF echo $ac_n "checking whether utime accepts a null argument""... $ac_c" 1>&6 -echo "configure:2387: checking whether utime accepts a null argument" >&5 +echo "configure:2454: checking whether utime accepts a null argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_utime_null'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2393,7 +2460,7 @@ if test "$cross_compiling" = yes; then ac_cv_func_utime_null=no else cat > conftest.$ac_ext <<EOF -#line 2397 "configure" +#line 2464 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/stat.h> @@ -2404,7 +2471,7 @@ exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0 && t.st_mtime - s.st_mtime < 120)); } EOF -if { (eval echo configure:2408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_utime_null=yes else @@ -2428,12 +2495,12 @@ EOF fi echo $ac_n "checking for vprintf""... $ac_c" 1>&6 -echo "configure:2432: checking for vprintf" >&5 +echo "configure:2499: checking for vprintf" >&5 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2437 "configure" +#line 2504 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char vprintf(); below. */ @@ -2456,7 +2523,7 @@ vprintf(); ; return 0; } EOF -if { (eval echo configure:2460: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2527: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_vprintf=yes" else @@ -2480,12 +2547,12 @@ fi if test "$ac_cv_func_vprintf" != yes; then echo $ac_n "checking for _doprnt""... $ac_c" 1>&6 -echo "configure:2484: checking for _doprnt" >&5 +echo "configure:2551: checking for _doprnt" >&5 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2489 "configure" +#line 2556 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char _doprnt(); below. */ @@ -2508,7 +2575,7 @@ _doprnt(); ; return 0; } EOF -if { (eval echo configure:2512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2579: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func__doprnt=yes" else @@ -2535,12 +2602,12 @@ fi for ac_func in gettimeofday mktime select socket strdup strerror strspn strstr strtol strtoul uname do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:2539: checking for $ac_func" >&5 +echo "configure:2606: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2544 "configure" +#line 2611 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -2563,7 +2630,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:2567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2634: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -2588,6 +2655,7 @@ fi done + trap '' 1 2 15 cat > confcache <<\EOF # This file is a shell script that caches the results of configure diff --git a/configure.in b/configure.in index 17b89ca..27ccd83 100644 --- a/configure.in +++ b/configure.in @@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(ax25ipd/config.c) dnl For automake -VERSION=0.0.1 +VERSION=0.0.2 PACKAGE=ax25-apps AM_INIT_AUTOMAKE($PACKAGE,$VERSION) @@ -19,9 +19,32 @@ AM_PROG_LIBTOOL dnl Checks for libraries. AC_SUBST(AX25_LIB) AC_SUBST(NCURSES_LIB) -AC_CHECK_LIB(ax25, ax25_config_load_ports, AX25_LIB="-lax25", AX25_LIB=) +AC_CHECK_LIB(ax25, ax25_config_load_ports, AX25_LIB="-lax25", AC_MSG_ERROR(Could not find the libax25 libraries; aborting)) AC_CHECK_LIB(ncurses, initscr,NCURSES_LIB="-lncurses",NCURSES_LIB=) +dnl Checks for working glibc 2.1 headers +AC_MSG_CHECKING(for working netax25/ax25.h header file) +AC_HEADER_EGREP(ax25_fwd_struct, netax25/ax25.h,AC_DEFINE(HAVE_NETAX25_AX25_H)) +if $HAVE_NETAX25_AX25_H ; then + AC_MSG_RESULT(yes) +else + AC_MSG_RESULT(no) +fi +AC_MSG_CHECKING(for working netrom/netrom.h header file) +AC_HEADER_EGREP(unsigned int ndigis, netrom/netrom.h,AC_DEFINE(HAVE_NETROM_NETROM_H)) +if $HAVE_NETROM_NETROM_H ; then + AC_MSG_RESULT(yes) +else + AC_MSG_RESULT(no) +fi +AC_MSG_CHECKING(for working netrose/rose.h header file) +AC_HEADER_EGREP(rose_facilities_struct, netrose/rose.h,AC_DEFINE(HAVE_NETROSE_ROSE_H)) +if $HAVE_NETROSE_ROSE_H ; then + AC_MSG_RESULT(yes) +else + AC_MSG_RESULT(no) +fi + dnl Checks for header files. AC_HEADER_DIRENT AC_HEADER_STDC @@ -42,4 +65,5 @@ AC_FUNC_UTIME_NULL AC_FUNC_VPRINTF AC_CHECK_FUNCS(gettimeofday mktime select socket strdup strerror strspn strstr strtol strtoul uname) + AC_OUTPUT(call/Makefile ax25ipd/Makefile listen/Makefile Makefile ax25rtd/Makefile) diff --git a/listen/Makefile.in b/listen/Makefile.in index 4cf3c1a..acf7fba 100644 --- a/listen/Makefile.in +++ b/listen/Makefile.in @@ -281,20 +281,6 @@ distdir: $(DISTFILES) || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -arpdump.o: arpdump.c listen.h -ax25dump.o: ax25dump.c listen.h -flexnetdump.o: flexnetdump.c listen.h -icmpdump.o: icmpdump.c listen.h -ipdump.o: ipdump.c listen.h -kissdump.o: kissdump.c listen.h -listen.o: listen.c ../config.h listen.h -nrdump.o: nrdump.c listen.h -ripdump.o: ripdump.c listen.h -rosedump.o: rosedump.c listen.h -rspfdump.o: rspfdump.c listen.h -tcpdump.o: tcpdump.c listen.h -udpdump.o: udpdump.c listen.h -utils.o: utils.c listen.h info-am: info: info-am diff --git a/listen/listen.c b/listen/listen.c index df6f770..b75b29c 100644 --- a/listen/listen.c +++ b/listen/listen.c @@ -109,7 +109,7 @@ int main(int argc, char **argv) } } - if ((s = socket(AF_INET, SOCK_PACKET, htons(proto))) == -1) { + if ((s = socket(AF_PACKET, SOCK_PACKET, htons(proto))) == -1) { perror("socket"); return 1; } @@ -169,8 +169,8 @@ progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` # Constants: PROGRAM=ltconfig PACKAGE=libtool -VERSION=1.3 -TIMESTAMP=" (1.385.2.117 1999/04/29 13:07:13)" +VERSION=1.3.2 +TIMESTAMP=" (1.385.2.150 1999/05/26 00:28:32)" ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5' ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5' rm="rm -f" @@ -650,6 +650,11 @@ if test "$with_gcc" = yes; then # like `-m68040'. pic_flag='-m68020 -resident32 -malways-restore-a4' ;; + sysv4*MP*) + if test -d /usr/nec; then + pic_flag=-Kconform_pic + fi + ;; *) pic_flag='-fPIC' ;; @@ -713,7 +718,12 @@ else pic_flag='-pic' link_static_flag='-Bstatic' ;; - + sysv4*MP*) + if test -d /usr/nec ;then + pic_flag='-Kconform_pic' + link_static_flag='-Bstatic' + fi + ;; *) can_build_shared=no ;; @@ -729,8 +739,8 @@ if test -n "$pic_flag"; then echo "int some_variable = 0;" > conftest.c save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $pic_flag -DPIC" - echo "$progname:732: checking if $compiler PIC flag $pic_flag works" >&5 - if { (eval echo $progname:733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then + echo "$progname:742: checking if $compiler PIC flag $pic_flag works" >&5 + if { (eval echo $progname:743: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then # Append any warnings to the config.log. cat conftest.err 1>&5 @@ -782,8 +792,8 @@ mkdir out chmod -w . save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -o out/conftest2.o" -echo "$progname:785: checking if $compiler supports -c -o file.o" >&5 -if { (eval echo $progname:786: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then +echo "$progname:795: checking if $compiler supports -c -o file.o" >&5 +if { (eval echo $progname:796: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -815,8 +825,8 @@ if test x"$compiler_c_o" = x"yes"; then echo "int some_variable = 0;" > conftest.c save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -c -o conftest.lo" - echo "$progname:818: checking if $compiler supports -c -o file.lo" >&5 -if { (eval echo $progname:819: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then + echo "$progname:828: checking if $compiler supports -c -o file.lo" >&5 +if { (eval echo $progname:829: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -867,8 +877,8 @@ if test "$with_gcc" = yes; then echo "int some_variable = 0;" > conftest.c save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c" - echo "$progname:870: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 - if { (eval echo $progname:871: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then + echo "$progname:880: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 + if { (eval echo $progname:881: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -911,8 +921,8 @@ $rm conftest* echo 'main(){return(0);}' > conftest.c save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $link_static_flag" -echo "$progname:914: checking if $compiler static flag $link_static_flag works" >&5 -if { (eval echo $progname:915: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +echo "$progname:924: checking if $compiler static flag $link_static_flag works" >&5 +if { (eval echo $progname:925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then echo "$ac_t$link_static_flag" 1>&6 else echo "$ac_t"none 1>&6 @@ -944,7 +954,7 @@ if test -z "$LD"; then if test "$with_gcc" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6 - echo "$progname:947: checking for ld used by GCC" >&5 + echo "$progname:957: checking for ld used by GCC" >&5 ac_prog=`($CC -print-prog-name=ld) 2>&5` case "$ac_prog" in # Accept absolute paths. @@ -968,10 +978,10 @@ if test -z "$LD"; then esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld... $ac_c" 1>&6 - echo "$progname:971: checking for GNU ld" >&5 + echo "$progname:981: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 - echo "$progname:974: checking for non-GNU ld" >&5 + echo "$progname:984: checking for non-GNU ld" >&5 fi if test -z "$LD"; then @@ -1151,6 +1161,27 @@ EOF fi ;; + solaris*) + if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <<EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + sunos4*) archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts' wlarc= @@ -1172,7 +1203,15 @@ EOF runpath_var=LD_RUN_PATH hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' export_dynamic_flag_spec='${wl}--export-dynamic' - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + case $host_os in + cygwin* | mingw*) + # dlltool doesn't understand --whole-archive et. al. + whole_archive_flag_spec= + ;; + *) + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + ;; + esac fi else # PORTME fill in a description of your system's linker (not GNU ld) @@ -1362,7 +1401,7 @@ else case "$host_os" in solaris2.[0-5] | solaris2.[0-5].*) ;; *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;; + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; esac ;; @@ -1399,6 +1438,17 @@ else hardcode_shlibpath_var=no ;; + sysv4*MP*) + if test -d /usr/nec ;then + # archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs' + archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + *) ld_shlibs=no ;; @@ -1504,11 +1554,11 @@ void nm_test_func(){} main(){nm_test_var='a';nm_test_func();return(0);} EOF - echo "$progname:1507: checking if global_symbol_pipe works" >&5 - if { (eval echo $progname:1508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then + echo "$progname:1557: checking if global_symbol_pipe works" >&5 + if { (eval echo $progname:1558: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then # Now try to grab the symbols. nlist=conftest.nm - if { echo "$progname:1511: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then + if { echo "$progname:1561: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then @@ -1560,7 +1610,7 @@ EOF save_CFLAGS="$CFLAGS" LIBS="conftstm.$objext" CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo $progname:1563: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + if { (eval echo $progname:1613: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then pipe_works=yes else echo "$progname: failed program was:" >&5 @@ -1694,6 +1744,7 @@ beos*) library_names_spec='${libname}.so' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH + deplibs_check_method=pass_all lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes @@ -1960,6 +2011,15 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' + soname_spec='$libname.so.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + *) dynamic_linker=no ;; @@ -2059,90 +2119,89 @@ if test "x$enable_dlopen" != xyes; then else if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then lt_cv_dlopen=no lt_cv_dlopen_libs= -echo $ac_n "checking for dlopen""... $ac_c" 1>&6 -echo "$progname:2063: checking for dlopen" >&5 -if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then +echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 +echo "$progname:2123: checking for dlopen in -ldl" >&5 +ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else - cat > conftest.$ac_ext <<EOF -#line 2068 "ltconfig" -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen(); below. */ -#include <assert.h> + ac_save_LIBS="$LIBS" +LIBS="-ldl $LIBS" +cat > conftest.$ac_ext <<EOF +#line 2131 "ltconfig" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dlopen(); int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -dlopen(); -#endif - +dlopen() ; return 0; } EOF -if { (eval echo $progname:2090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2141: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* - eval "ac_cv_func_dlopen=yes" + eval "ac_cv_lib_$ac_lib_var=yes" else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -rf conftest* - eval "ac_cv_func_dlopen=no" + eval "ac_cv_lib_$ac_lib_var=no" fi rm -f conftest* -fi +LIBS="$ac_save_LIBS" -if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else echo "$ac_t""no" 1>&6 -echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "$progname:2108: checking for dlopen in -ldl" >&5 -ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then +echo $ac_n "checking for dlopen""... $ac_c" 1>&6 +echo "$progname:2160: checking for dlopen" >&5 +if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else - ac_save_LIBS="$LIBS" -LIBS="-ldl $LIBS" -cat > conftest.$ac_ext <<EOF -#line 2116 "ltconfig" + cat > conftest.$ac_ext <<EOF +#line 2165 "ltconfig" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char dlopen(); below. */ +#include <assert.h> /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dlopen(); int main() { -dlopen() + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_dlopen) || defined (__stub___dlopen) +choke me +#else +dlopen(); +#endif + ; return 0; } EOF -if { (eval echo $progname:2126: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" + eval "ac_cv_func_dlopen=yes" else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=no" + eval "ac_cv_func_dlopen=no" fi rm -f conftest* -LIBS="$ac_save_LIBS" - fi -if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then +if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" + lt_cv_dlopen="dlopen" else echo "$ac_t""no" 1>&6 echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 -echo "$progname:2145: checking for dld_link in -ldld" >&5 +echo "$progname:2204: checking for dld_link in -ldld" >&5 ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2150,7 +2209,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldld $LIBS" cat > conftest.$ac_ext <<EOF -#line 2153 "ltconfig" +#line 2212 "ltconfig" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ @@ -2160,7 +2219,7 @@ int main() { dld_link() ; return 0; } EOF -if { (eval echo $progname:2163: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2222: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2179,12 +2238,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for shl_load""... $ac_c" 1>&6 -echo "$progname:2182: checking for shl_load" >&5 +echo "$progname:2241: checking for shl_load" >&5 if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2187 "ltconfig" +#line 2246 "ltconfig" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char shl_load(); below. */ #include <assert.h> @@ -2206,7 +2265,7 @@ shl_load(); ; return 0; } EOF -if { (eval echo $progname:2209: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2268: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_shl_load=yes" else @@ -2224,7 +2283,7 @@ if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -echo "$progname:2227: checking for shl_load in -ldld" >&5 +echo "$progname:2286: checking for shl_load in -ldld" >&5 ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2232,7 +2291,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldld $LIBS" cat > conftest.$ac_ext <<EOF -#line 2235 "ltconfig" +#line 2294 "ltconfig" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -2243,7 +2302,7 @@ int main() { shl_load() ; return 0; } EOF -if { (eval echo $progname:2246: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2305: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2286,17 +2345,17 @@ fi for ac_hdr in dlfcn.h; do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "$progname:2289: checking for $ac_hdr" >&5 +echo "$progname:2348: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2294 "ltconfig" +#line 2353 "ltconfig" #include <$ac_hdr> int fnord = 0; EOF ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo $progname:2299: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo $progname:2358: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2324,7 +2383,7 @@ done LIBS="$lt_cv_dlopen_libs $LIBS" echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2327: checking whether a program can dlopen itself" >&5 +echo "$progname:2386: checking whether a program can dlopen itself" >&5 if test "${lt_cv_dlopen_self+set}" = set; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2332,7 +2391,7 @@ else lt_cv_dlopen_self=cross else cat > conftest.c <<EOF -#line 2335 "ltconfig" +#line 2394 "ltconfig" #if HAVE_DLFCN_H #include <dlfcn.h> @@ -2378,7 +2437,7 @@ main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); if(ptr1 || ptr2) exit(0); } exit(1); } EOF -if { (eval echo $progname:2381: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo $progname:2440: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then lt_cv_dlopen_self=yes else @@ -2397,7 +2456,7 @@ echo "$ac_t""$lt_cv_dlopen_self" 1>&6 if test "$lt_cv_dlopen_self" = yes; then LDFLAGS="$LDFLAGS $link_static_flag" echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2400: checking whether a statically linked program can dlopen itself" >&5 +echo "$progname:2459: checking whether a statically linked program can dlopen itself" >&5 if test "${lt_cv_dlopen_self_static+set}" = set; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2405,7 +2464,7 @@ else lt_cv_dlopen_self_static=cross else cat > conftest.c <<EOF -#line 2408 "ltconfig" +#line 2467 "ltconfig" #if HAVE_DLFCN_H #include <dlfcn.h> @@ -2451,7 +2510,7 @@ main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); if(ptr1 || ptr2) exit(0); } exit(1); } EOF -if { (eval echo $progname:2454: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo $progname:2513: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then lt_cv_dlopen_self_static=yes else @@ -54,8 +54,8 @@ modename="$progname" # Constants. PROGRAM=ltmain.sh PACKAGE=libtool -VERSION=1.3 -TIMESTAMP=" (1.385.2.117 1999/04/29 13:07:13)" +VERSION=1.3.2 +TIMESTAMP=" (1.385.2.150 1999/05/26 00:28:32)" default_mode= help="Try \`$progname --help' for more information." @@ -466,6 +466,7 @@ compiler." command="$command -o $output_obj" fi + $run $rm "$output_obj" $show "$command" if $run eval "$command"; then : else @@ -545,6 +546,7 @@ compiler." # Suppress compiler output if we already did a PIC compilation. command="$command$suppress_output" + $run $rm "$output_obj" $show "$command" if $run eval "$command"; then : else @@ -1021,8 +1023,9 @@ compiler." *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit 1 + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + absdir="$dir" fi dir="$absdir" ;; @@ -1294,8 +1297,9 @@ compiler." *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit 1 + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + absdir="$dir" fi ;; esac @@ -1902,7 +1906,7 @@ EOF potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do # Follow soft links. - if ls -lLd "$potlib" 2>/dev/null \ + if ls -lLd "$potent_lib" 2>/dev/null \ | grep " -> " >/dev/null; then continue fi diff --git a/pathnames.h b/pathnames.h index 02f1b01..624ecde 100644 --- a/pathnames.h +++ b/pathnames.h @@ -1,25 +1,25 @@ -#define CONF_AX25IPD_FILE "/etc/ax25/ax25ipd.conf" +#define CONF_AX25IPD_FILE AX25_SYSCONFDIR"/ax25ipd.conf" -#define CONF_AX25ROUTED_FILE "/etc/ax25/ax25rtd.conf" -#define DATA_AX25ROUTED_CTL_SOCK "/var/ax25/ax25rtd/control" +#define CONF_AX25ROUTED_FILE AX25_SYSCONFDIR"/ax25rtd.conf" +#define DATA_AX25ROUTED_CTL_SOCK AX25_LOCALSTATEDIR"/ax25rtd/control" #define PROC_AX25_FILE "/proc/net/ax25" -#define DATA_AX25ROUTED_AXRT_FILE "/var/ax25/ax25rtd/ax25_route" -#define DATA_AX25ROUTED_IPRT_FILE "/var/ax25/ax25rtd/ip_route" +#define DATA_AX25ROUTED_AXRT_FILE AX25_LOCALSTATEDIR"/ax25rtd/ax25_route" +#define DATA_AX25ROUTED_IPRT_FILE AX25_LOCALSTATEDIR"/ax25rtd/ip_route" #define PROC_IP_ROUTE_FILE "/proc/net/route" #define PROC_NR_NODES_FILE "/proc/net/nr_nodes" -#define CONF_NODE_MOTD_FILE "/etc/ax25/node.motd" -#define CONF_NODE_PERMS_FILE "/etc/ax25/node.perms" -#define CONF_NODE_FILE "/etc/ax25/node.conf" +#define CONF_NODE_MOTD_FILE AX25_SYSCONFDIR"/node.motd" +#define CONF_NODE_PERMS_FILE AX25_SYSCONFDIR"/node.perms" +#define CONF_NODE_FILE AX25_SYSCONFDIR"/node.conf" -#define DATA_MHEARD_FILE "/var/ax25/mheard/mheard.dat" +#define DATA_MHEARD_FILE AX25_LOCALSTATEDIR"/mheard/mheard.dat" #define DATA_NODE_HELP_DIR "/usr/lib/ax25/node/help/" -#define CONF_NODE_INFO_FILE "/etc/ax25/node.info" +#define CONF_NODE_INFO_FILE AX25_SYSCONFDIR"/node.info" -#define DATA_NODE_LOGIN_FILE "/var/ax25/node/loggedin" +#define DATA_NODE_LOGIN_FILE AX25_LOCALSTATEDIR"/node/loggedin" #define PROC_AX25_CALLS_FILE "/proc/net/ax25_calls" @@ -27,10 +27,10 @@ #define MAIL_DELIVERY_AGENT "/usr/sbin/sendmail %s" -#define DATA_PMS_LOGIN_FILE "/var/ax25/pms/loggedin" +#define DATA_PMS_LOGIN_FILE AX25_LOCALSTATEDIR"/pms/loggedin" #define PROC_AX25_ROUTE_FILE "/proc/net/ax25_route" -#define CONF_PMS_MOTD_FILE "/etc/ax25/pms.motd" +#define CONF_PMS_MOTD_FILE AX25_SYSCONFDIR"/pms.motd" -#define CONF_PMS_INFO_FILE "/etc/ax25/pms.info" +#define CONF_PMS_INFO_FILE AX25_SYSCONFDIR"/pms.info" |