Commit e40542ef authored by Ondřej Zajíček's avatar Ondřej Zajíček

Minor autoconf cleanup and documentation update

parent c253ec3a
...@@ -9,13 +9,23 @@ Default location for configuration file is /usr/local/etc/bird.conf and ...@@ -9,13 +9,23 @@ Default location for configuration file is /usr/local/etc/bird.conf and
for control socket is /usr/local/var/run/bird.ctl . You can change that for control socket is /usr/local/var/run/bird.ctl . You can change that
by --sysconfdir and --localstatedir configure options. by --sysconfdir and --localstatedir configure options.
To compile current development BIRD source code from Git repository, you
also need Git (to download the source code) and Autoconf (to generate
the configure script and associated files using 'autoreconf' tool):
$ git clone git://git.nic.cz/bird.git
$ cd bird
$ autoreconf
Then continue as in usual installation above.
Requirements Requirements
============ ============
For compiling BIRD you need these programs and libraries: For compiling BIRD you need these programs and libraries:
- GNU C Compiler - GNU C Compiler (or LLVM Clang)
- GNU Make - GNU Make
- GNU Bison - GNU Bison
- GNU M4 - GNU M4
......
...@@ -241,25 +241,7 @@ case $sysdesc in ...@@ -241,25 +241,7 @@ case $sysdesc in
esac esac
AC_CHECK_HEADERS_ONCE([alloca.h syslog.h]) AC_CHECK_HEADERS_ONCE([alloca.h syslog.h])
AC_CHECK_MEMBERS([struct sockaddr.sa_len], [], [], [#include <sys/socket.h>])
AC_MSG_CHECKING(whether 'struct sockaddr' has sa_len)
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM(
[[
#include <sys/types.h>
#include <sys/socket.h>
]],
[[
static struct sockaddr sa;
int i = sizeof(sa.sa_len);
]]
)],
[
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_SIN_LEN,,sin_len)
],
[AC_MSG_RESULT(no)]
)
AC_C_BIGENDIAN( AC_C_BIGENDIAN(
[AC_DEFINE([CPU_BIG_ENDIAN], [1], [Define to 1 if cpu is big endian])], [AC_DEFINE([CPU_BIG_ENDIAN], [1], [Define to 1 if cpu is big endian])],
......
...@@ -516,7 +516,7 @@ static inline void ...@@ -516,7 +516,7 @@ static inline void
sockaddr_fill4(struct sockaddr_in *sa, ip_addr a, uint port) sockaddr_fill4(struct sockaddr_in *sa, ip_addr a, uint port)
{ {
memset(sa, 0, sizeof(struct sockaddr_in)); memset(sa, 0, sizeof(struct sockaddr_in));
#ifdef HAVE_SIN_LEN #ifdef HAVE_STRUCT_SOCKADDR_SA_LEN
sa->sin_len = sizeof(struct sockaddr_in); sa->sin_len = sizeof(struct sockaddr_in);
#endif #endif
sa->sin_family = AF_INET; sa->sin_family = AF_INET;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment