Commit graph

27 commits

Author SHA1 Message Date
Martin Mares
416e3ee4b0 Get Linux version from <linux/version.h>, not uname -r. 2000-05-20 11:00:14 +00:00
Martin Mares
6b5ab87581 Added `--disable-memcheck' switch which avoids linking of efence/dmalloc,
so that we can run in debugging mode with large routing tables.
2000-05-08 14:51:57 +00:00
Martin Mares
f9254d2349 Autoconf is *evil*. The sysconfdir and similar variables are unusable in
C includes as they contain substitutions specific to make.

Worked around by creating sysconf/paths.h which is created from
the Makefile instead of by the configure script.
2000-05-08 14:19:47 +00:00
Martin Mares
c0760ab0fc Debugging compilation is no longer default. This means that the configuration
file is expected in $prefix/etc etc.

Use --enable-debug to request debugging.
2000-05-08 13:56:11 +00:00
Martin Mares
c817b9916f Added --enable-ipv6 which tells configure to select the right configuration
for IPv6 automatically.

Added --enable-warnings which turns off some more warnings.

Default protocol list now depends on --enable-ipv6.
2000-05-04 20:18:46 +00:00
Ondrej Filip
92bbd812e3 OSPF added to default protocols. 2000-05-02 22:34:35 +00:00
Martin Mares
8f10985e1e Added BGP to the default list of protocols we build. 2000-04-17 13:14:48 +00:00
Martin Mares
df0cf75dc8 Hmmm, libreadline 2.1 seems to be the oldest version we work with. 2000-02-24 18:46:24 +00:00
Martin Mares
1d4ba6583a Moan loudly if libreadline is an old version which doesn't support
callbacks.
2000-02-24 18:43:23 +00:00
Martin Mares
7211be1cff Configure, link and use the readline library. 2000-01-20 13:13:30 +00:00
Martin Mares
9fac310d1a Put client on a stony ground. The whole client is going to be system-specific
(the current version UNIX-specific) anyway, so it's useless to try splitting it
to sysdep and generic part. Instead of this, configure script decides (based on
system type and user's wish) what (if any) client should be built and what
autoconfiguration it requires. Also, the client provides its own die/bug/...
functions.
2000-01-19 15:07:00 +00:00
Martin Mares
f2ed663aea Use linux-22 configuration with all 2.2.x and 2.3.x kernels. This means
you need to have your kernel compiled with netlink routing messages enabled.
If it doesn't work for you, use --with-sysconfig=linux-21 and let me know
what's going wrong.
1999-12-01 10:28:39 +00:00
Martin Mares
54165b1315 Configure PATH_CONTROL_SOCKET.
autoconf.h is now written to obj/sysdep, the source tree is hopefully
completely read-only now.
1999-10-29 10:08:09 +00:00
Martin Mares
9c11ec9efc Implemented a Table-to-Table protocol a.k.a The Pipe. 1999-08-03 19:34:26 +00:00
Martin Mares
a07e9d8235 Added --with-sysinclude to allow explicitly setting where kernel includes
reside, so that you can easily switch between 2.0 and 2.2 ones.

Check existence of <linux/rtnetlink.h> for linux-22 configs to make sure
we're using the correct set of includes.
1999-05-21 14:09:06 +00:00
Martin Mares
620c4f90c9 Oops, a typo in previous struct ip_mreqn changes... 1999-04-12 17:20:50 +00:00
Martin Mares
61fb537c62 Use struct ip_mreqn' instead of struct ip_mreq' for multicast
operations on 2.1/2.2 kernels. This allows passing of real interface
indexes instead of referencing interfaces by their IP addresses which
fails badly in presence of unnumbered interfaces.

Unfortunately, this structure is not visible with glibc 2.0 as it provides
its own networking headers :-(  Both libc5 and glibc 2.1 should be OK.
1999-04-12 15:27:56 +00:00
Martin Mares
e4912e3594 Prefer gm4' over m4' (due to BSD et al.). 1999-03-29 20:26:32 +00:00
Martin Mares
1127ac6ec7 Cleaned up system configuration files -- removed few obsolete parameters,
documented the remaining ones (sysdep/cf/README).

Available configurations:

   o  linux-20: Old Linux interface via /proc/net/route (selected by default
		on pre-2.1 kernels).
   o  linux-21: Old Linux interface, but device routes handled by the
		kernel (selected by default for 2.1 and newer kernels).
   o  linux-22: Linux with Netlink (I play with it a lot yet, so it isn't
		a default).
   o  linux-ipv6: Prototype config for IPv6 on Linux. Not functional yet.
1999-03-27 22:51:05 +00:00
Martin Mares
241b7311ec Don't compile OSPF by default. 1999-03-26 21:35:28 +00:00
Ondrej Filip
c1f8dc9149 Yes, joining the crew. Sorry for being late. Added dummy functions for OSPF. 1999-03-09 22:27:43 +00:00
Martin Mares
7a2105becd Use dmalloc instead of EFence when available (dmalloc has lot of improvements
over EFence and also hopefully smaller memory overhead, but sadly it's non-free
for commercial use).

If the DMALLOC_OPTIONS environment variable is not set, switch on `reasonable'
checks by default.

Also introduced mb_allocz() for cleared mb_alloc().
1999-03-04 11:36:26 +00:00
Martin Mares
e834074dd4 If we are compiling with debugging enabled and libefence is available,
link it to get debugging malloc.
1999-03-01 22:42:47 +00:00
Martin Mares
2c2f67bd83 Filter all `Modules' files through C preprocessor, so that they can
reference BIRD configuration.

By the way: Do you know GCC by default does `#define unix 1'?
1999-01-23 21:08:36 +00:00
Martin Mares
b296730cb6 Few last-minute bug fixes. 1999-01-10 00:25:50 +00:00
Martin Mares
49e7e5ee0b New makefiles. Includes support for out-of-source-tree builds. 1999-01-10 00:18:32 +00:00
Martin Mares
2f9bcf9713 First step of "autoconfization". Created a configure script which
guesses most system-dependent parameters and determines name of system
configuration file (sysdep/cf/...) with the remaining ones.

To compile BIRD, you now need to do:

	autoconf		# Create configure from configure.in
	./configure		# Run configure script
	make			# Compile everything

Configuration files:

	sysdep/config.h		Master config file
	sysdep/autoconf.h	Parameters determined by configure script
	sysdep/cf/*.h		Fixed system configuration we're unable
				to guess.

Makefiles are still the original ones, but this will change soon.
1999-01-09 15:02:11 +00:00