bwm-tools-devel Mailing List for Bandwidth Management Tools
Brought to you by:
nkukard
You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(11) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(52) |
Feb
|
Mar
|
Apr
(6) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2006 |
Jan
|
Feb
(3) |
Mar
(9) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
|
From: <sv...@li...> - 2008-09-15 05:44:12
|
Author: nkukard Date: 2008-09-15 05:25:56 +0000 (Mon, 15 Sep 2008) New Revision: 96 Modified: trunk/include/flow.h Log: * Fix a few platforms which don't include this Modified: trunk/include/flow.h =================================================================== --- trunk/include/flow.h 2008-01-02 20:19:09 UTC (rev 95) +++ trunk/include/flow.h 2008-09-15 05:25:56 UTC (rev 96) @@ -27,6 +27,7 @@ #include <glib.h> +#include <netinet/in.h> #include <linux/netfilter.h> #include <sys/time.h> #include <syslog.h> |
|
From: <sv...@li...> - 2006-03-08 09:06:53
|
Author: nkukard
Date: 2006-03-08 09:05:58 +0000 (Wed, 08 Mar 2006)
New Revision: 92
Added:
tags/200603080716/
Modified:
tags/200603080716/configure
tags/200603080716/configure.ac
tags/200603080716/doc/stamp-vti
tags/200603080716/doc/version.texi
Log:
* Tagged development release 200603080716
Copied: tags/200603080716 (from rev 91, trunk)
Modified: tags/200603080716/configure
===================================================================
--- trunk/configure 2006-03-08 08:29:30 UTC (rev 91)
+++ tags/200603080716/configure 2006-03-08 09:05:58 UTC (rev 92)
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for bwm_tools devel.
+# Generated by GNU Autoconf 2.59 for bwm_tools 200603080716.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -421,8 +421,8 @@
# Identity of this package.
PACKAGE_NAME='bwm_tools'
PACKAGE_TARNAME='bwm_tools'
-PACKAGE_VERSION='devel'
-PACKAGE_STRING='bwm_tools devel'
+PACKAGE_VERSION='200603080716'
+PACKAGE_STRING='bwm_tools 200603080716'
PACKAGE_BUGREPORT=''
ac_unique_file="bwm_monitor/bwm_monitor.c"
@@ -953,7 +953,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures bwm_tools devel to adapt to many kinds of systems.
+\`configure' configures bwm_tools 200603080716 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1019,7 +1019,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of bwm_tools devel:";;
+ short | recursive ) echo "Configuration of bwm_tools 200603080716:";;
esac
cat <<\_ACEOF
@@ -1163,7 +1163,7 @@
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-bwm_tools configure devel
+bwm_tools configure 200603080716
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1177,7 +1177,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by bwm_tools $as_me devel, which was
+It was created by bwm_tools $as_me 200603080716, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1831,7 +1831,7 @@
# Define the identity of the package.
PACKAGE='bwm_tools'
- VERSION='devel'
+ VERSION='200603080716'
cat >>confdefs.h <<_ACEOF
@@ -23276,7 +23276,7 @@
} >&5
cat >&5 <<_CSEOF
-This file was extended by bwm_tools $as_me devel, which was
+This file was extended by bwm_tools $as_me 200603080716, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -23339,7 +23339,7 @@
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-bwm_tools config.status devel
+bwm_tools config.status 200603080716
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
Modified: tags/200603080716/configure.ac
===================================================================
--- trunk/configure.ac 2006-03-08 08:29:30 UTC (rev 91)
+++ tags/200603080716/configure.ac 2006-03-08 09:05:58 UTC (rev 92)
@@ -20,7 +20,7 @@
*/
AC_PREREQ(2.57)
-AC_INIT([bwm_tools],[devel])
+AC_INIT([bwm_tools],[200603080716])
AC_CONFIG_SRCDIR([bwm_monitor/bwm_monitor.c])
AC_CONFIG_HEADER([config.h])
Modified: tags/200603080716/doc/stamp-vti
===================================================================
--- trunk/doc/stamp-vti 2006-03-08 08:29:30 UTC (rev 91)
+++ tags/200603080716/doc/stamp-vti 2006-03-08 09:05:58 UTC (rev 92)
@@ -1,4 +1,4 @@
@set UPDATED 7 March 2006
@set UPDATED-MONTH March 2006
-@set EDITION devel
-@set VERSION devel
+@set EDITION 200603080716
+@set VERSION 200603080716
Modified: tags/200603080716/doc/version.texi
===================================================================
--- trunk/doc/version.texi 2006-03-08 08:29:30 UTC (rev 91)
+++ tags/200603080716/doc/version.texi 2006-03-08 09:05:58 UTC (rev 92)
@@ -1,4 +1,4 @@
@set UPDATED 7 March 2006
@set UPDATED-MONTH March 2006
-@set EDITION devel
-@set VERSION devel
+@set EDITION 200603080716
+@set VERSION 200603080716
|
|
From: <sv...@li...> - 2006-03-08 08:30:14
|
Author: nkukard
Date: 2006-03-08 08:29:30 +0000 (Wed, 08 Mar 2006)
New Revision: 91
Modified:
trunk/bwm_graph/Makefile.am
trunk/bwm_graph/Makefile.in
trunk/bwm_graph/graph.c
Log:
* Fixed log directory, it now corrosponds to the rest of BWM Tools
* Better error handling while generating graphs & rrd data
* Fixed bug preventing graphing from working
Modified: trunk/bwm_graph/Makefile.am
===================================================================
--- trunk/bwm_graph/Makefile.am 2006-03-08 06:19:36 UTC (rev 90)
+++ trunk/bwm_graph/Makefile.am 2006-03-08 08:29:30 UTC (rev 91)
@@ -27,7 +27,7 @@
RRDTOOL_LDADDS=@RRDTOOL_LDADDS@
RRDTOOL_VER=@RRDTOOL_VER@
-LOG_DIR=@localstatedir@/bwm_tools
+LOG_DIR=/var/bwm_tools
bin_PROGRAMS = bwm_graph
bwm_graph_SOURCES = bwm_graph.c graph.c
Modified: trunk/bwm_graph/Makefile.in
===================================================================
--- trunk/bwm_graph/Makefile.in 2006-03-08 06:19:36 UTC (rev 90)
+++ trunk/bwm_graph/Makefile.in 2006-03-08 08:29:30 UTC (rev 91)
@@ -200,7 +200,7 @@
RRDTOOL_LIBS = @RRDTOOL_LIBS@
RRDTOOL_LDADDS = @RRDTOOL_LDADDS@
RRDTOOL_VER = @RRDTOOL_VER@
-LOG_DIR = @localstatedir@/bwm_tools
+LOG_DIR = /var/bwm_tools
bwm_graph_SOURCES = bwm_graph.c graph.c
bwm_graph_DEPENDENCIES = $(RRDTOOL_LDADDS)
bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS)
Modified: trunk/bwm_graph/graph.c
===================================================================
--- trunk/bwm_graph/graph.c 2006-03-08 06:19:36 UTC (rev 90)
+++ trunk/bwm_graph/graph.c 2006-03-08 08:29:30 UTC (rev 91)
@@ -260,14 +260,16 @@
fd = open(filename,O_RDONLY);
if (fd < 0)
{
- fprintf(stderr,"Failed opening file %s: %s\n",filename,strerror(errno));
+ printf(" ERROR!\n");
+ fprintf(stderr,"ERROR: Failed opening file %s: %s\n",filename,strerror(errno));
return;
}
// Grab header
opRes = read(fd,&fileHeader,sizeof(struct aLogFileHeader_t));
if (opRes != sizeof(struct aLogFileHeader_t))
{
- fprintf(stderr,"Error reading header from file %s: %s\n",filename,strerror(errno));
+ printf(" ERROR!\n");
+ fprintf(stderr,"ERROR: Error reading header from file %s: %s\n",filename,strerror(errno));
close(fd);
return;
}
@@ -281,7 +283,8 @@
opRes = lseek(fd,sizeof(struct aLogFileHeader_t) + (j * sizeof(struct aLogFileEntry_t)),SEEK_SET);
if (opRes < 0)
{
- fprintf(stderr,"Error seeking end %s: %s\n",filename,strerror(errno));
+ printf(" ERROR!\n");
+ fprintf(stderr,"ERROR: Error seeking end %s: %s\n",filename,strerror(errno));
err = 1;
break;
}
@@ -294,6 +297,7 @@
opRes = read(fd,fileEntry,sizeof(struct aLogFileEntry_t));
if (opRes < 0)
{
+ printf(" ERROR!\n");
fprintf(stderr,"Error reading file entry %s: %s\n",filename,strerror(errno));
err = 1;
break;
@@ -316,10 +320,10 @@
}
// Close file...
close(fd);
- printf("sorting...");
+ printf(" sorting...");
// Sort our list of data...
entryList = g_list_sort(entryList,sort_newest);
- printf("writing RRD file %s...",rrd_filename);
+ printf(" generating RRD:%s...",rrd_filename);
// Set "static" params
snprintf(params[1],BUFFER_SIZE,"%s",rrd_filename);
strcpy(params[2],"--template");
@@ -387,19 +391,21 @@
// Get the filename
snprintf(filename,MAX_NAMELEN,"%s/%s.dat",LOG_DIR,aSource->flowRef);
- printf(" Getting details for %s...",filename);
+ printf(" Processing %s...",filename);
// Open
fd = open(filename,O_RDONLY);
if (fd < 0)
{
- fprintf(stderr,"Failed opening file %s: %s\n",filename,strerror(errno));
+ printf(" ERROR!\n");
+ fprintf(stderr,"ERROR: Failed to open %s: %s\n",filename,strerror(errno));
return;
}
// Grab header
opRes = read(fd,&fileHeader,sizeof(struct aLogFileHeader_t));
if (opRes != sizeof(struct aLogFileHeader_t))
{
- fprintf(stderr,"Error reading header from file %s: %s\n",filename,strerror(errno));
+ printf(" ERROR!\n");
+ fprintf(stderr,"ERROR: Failed to read from %s: %s\n",filename,strerror(errno));
close(fd);
return;
}
@@ -408,7 +414,7 @@
close(fd);
snprintf(filename,MAX_NAMELEN,"%s/%s.rrd",LOG_DIR,aSource->flowRef);
- printf(" %s ...",filename);
+ printf(" RRD:%s...",filename);
// Create params
memset(params[5],'\0',BUFFER_SIZE);
memset(params[6],'\0',BUFFER_SIZE);
@@ -441,7 +447,7 @@
fprintf(stderr,"Failed to create RRD file %s: %s\n",filename,rrd_get_error());
return;
}
- printf("done\n");
+ printf(" done\n");
i++;
}
@@ -621,10 +627,8 @@
}
g_list_foreach(graphSources,processSourceOptions,NULL);
- // Check if we must display our cute little line
- if (hasOptions)
- ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","- * - * -");
- ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","Graph generated by bwm_tools v"PACKAGE_VERSION" (http://bwm-tools.pr.linuxrulz.org)");
+ ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","- * - * -");
+ ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","Graph generated by BWM Tools");
// Call rrd tool
optind = 0; opterr = 0;
@@ -638,11 +642,12 @@
#endif
if (result < 0)
{
- fprintf(stderr,"Failed to create RRD graph %s: %s\n",options->outputFile,rrd_get_error());
+ printf(" ERROR!\n");
+ fprintf(stderr,"ERROR: Failed to create RRD graph %s: %s\n",options->outputFile,rrd_get_error());
result = -1;
}
else
- printf("done (%dx%d)\n",xsize,ysize);
+ printf(" done (%dx%d)\n",xsize,ysize);
// Free memory
for (i = 0; i < numParams; i++)
|
|
From: <sv...@li...> - 2006-03-08 06:20:31
|
Author: nkukard Date: 2006-03-08 06:19:36 +0000 (Wed, 08 Mar 2006) New Revision: 90 Modified: trunk/TODO Log: * Small TODO update Modified: trunk/TODO =================================================================== --- trunk/TODO 2006-03-07 17:47:23 UTC (rev 89) +++ trunk/TODO 2006-03-08 06:19:36 UTC (rev 90) @@ -28,4 +28,4 @@ * Fix up prio classifier * Fix default queue size + len * xmlConf queue & flow parsing has duplicated code, alot! -* Try autoassign nfmark? + |
|
From: <sv...@li...> - 2006-03-07 17:48:37
|
Author: nkukard
Date: 2006-03-07 17:47:23 +0000 (Tue, 07 Mar 2006)
New Revision: 89
Modified:
trunk/Makefile.in
trunk/aclocal.m4
trunk/bwmd/Makefile.in
trunk/configure
trunk/doc/stamp-vti
trunk/doc/version.texi
trunk/lib/Makefile.in
Log:
* Commit of makefiles, configure stuff and whatever else is autogenerated
Modified: trunk/Makefile.in
===================================================================
--- trunk/Makefile.in 2006-03-07 17:43:37 UTC (rev 88)
+++ trunk/Makefile.in 2006-03-07 17:47:23 UTC (rev 89)
@@ -198,7 +198,7 @@
subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-SUBDIRS = lib bwm_firewall bwm_graph bwmd bwm_monitor doc
+SUBDIRS = @RRDTOOL_DIRS@ lib bwm_firewall bwm_graph bwmd bwm_monitor doc
EXTRA_DIST = include/autoclass.h include/common.h include/flow.h \
include/flowControl.h include/ipq.h include/libipq.h \
include/misc.h include/report.h include/xmlConf.h
Modified: trunk/aclocal.m4
===================================================================
--- trunk/aclocal.m4 2006-03-07 17:43:37 UTC (rev 88)
+++ trunk/aclocal.m4 2006-03-07 17:47:23 UTC (rev 89)
@@ -229,7 +229,7 @@
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-# serial 47 AC_PROG_LIBTOOL
+# serial 48 AC_PROG_LIBTOOL
# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
@@ -379,6 +379,7 @@
test -z "$AS" && AS=as
test -z "$CC" && CC=cc
test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
test -z "$DLLTOOL" && DLLTOOL=dlltool
test -z "$LD" && LD=ld
test -z "$LN_S" && LN_S="ln -s"
@@ -398,10 +399,10 @@
if test -n "$RANLIB"; then
case $host_os in
openbsd*)
- old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
;;
*)
- old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
;;
esac
old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
@@ -449,6 +450,9 @@
# If no C compiler was specified, use CC.
LTCC=${LTCC-"$CC"}
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
# Allow CC to be a program name with arguments.
compiler=$CC
])# _LT_AC_SYS_COMPILER
@@ -477,7 +481,7 @@
AC_DEFUN([_LT_COMPILER_BOILERPLATE],
[ac_outfile=conftest.$ac_objext
printf "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d' >conftest.err
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
_lt_compiler_boilerplate=`cat conftest.err`
$rm conftest*
])# _LT_COMPILER_BOILERPLATE
@@ -490,7 +494,7 @@
AC_DEFUN([_LT_LINKER_BOILERPLATE],
[ac_outfile=conftest.$ac_objext
printf "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d' >conftest.err
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
_lt_linker_boilerplate=`cat conftest.err`
$rm conftest*
])# _LT_LINKER_BOILERPLATE
@@ -796,6 +800,22 @@
CFLAGS="$SAVE_CFLAGS"
fi
;;
+sparc*-*solaris*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
+ *) LD="${LD-ld} -64" ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
@@ -838,9 +858,9 @@
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
- $echo "X$_lt_compiler_boilerplate" | $Xsed >conftest.exp
- $SED '/^$/d' conftest.err >conftest.er2
- if test ! -s conftest.err || diff conftest.exp conftest.er2 >/dev/null; then
+ $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
$2=yes
fi
fi
@@ -871,8 +891,8 @@
if test -s conftest.err; then
# Append any errors to the config.log.
cat conftest.err 1>&AS_MESSAGE_LOG_FD
- $echo "X$_lt_linker_boilerplate" | $Xsed > conftest.exp
- $SED '/^$/d' conftest.err >conftest.er2
+ $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
if diff conftest.exp conftest.er2 >/dev/null; then
$2=yes
fi
@@ -947,6 +967,12 @@
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
osf*)
# Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
# due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
@@ -960,6 +986,17 @@
esac
fi
;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
*)
# If test is not a shell built-in, we'll probably end up computing a
# maximum length that is only half of the actual maximum length, but
@@ -991,7 +1028,7 @@
# _LT_AC_CHECK_DLFCN
-# --------------------
+# ------------------
AC_DEFUN([_LT_AC_CHECK_DLFCN],
[AC_CHECK_HEADERS(dlfcn.h)dnl
])# _LT_AC_CHECK_DLFCN
@@ -999,7 +1036,7 @@
# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ------------------------------------------------------------------
+# ---------------------------------------------------------------------
AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
if test "$cross_compiling" = yes; then :
@@ -1065,6 +1102,8 @@
else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
/* dlclose (self); */
}
+ else
+ puts (dlerror ());
exit (status);
}]
@@ -1075,7 +1114,7 @@
case x$lt_status in
x$lt_dlno_uscore) $1 ;;
x$lt_dlneed_uscore) $2 ;;
- x$lt_unknown|x*) $3 ;;
+ x$lt_dlunknown|x*) $3 ;;
esac
else :
# compilation failed
@@ -1087,7 +1126,7 @@
# AC_LIBTOOL_DLOPEN_SELF
-# -------------------
+# ----------------------
AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
if test "x$enable_dlopen" != xyes; then
@@ -1158,7 +1197,7 @@
test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
save_LDFLAGS="$LDFLAGS"
- eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
save_LIBS="$LIBS"
LIBS="$lt_cv_dlopen_libs $LIBS"
@@ -1171,7 +1210,7 @@
])
if test "x$lt_cv_dlopen_self" = xyes; then
- LDFLAGS="$LDFLAGS $link_static_flag"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
lt_cv_dlopen_self_static, [dnl
_LT_AC_TRY_DLOPEN_SELF(
@@ -1231,9 +1270,9 @@
then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
- $echo "X$_lt_compiler_boilerplate" | $Xsed > out/conftest.exp
- $SED '/^$/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.err || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
fi
fi
@@ -1618,10 +1657,15 @@
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
;;
- *) # from 3.2 on
+ freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
;;
+ freebsd*) # from 4.6 on
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
esac
;;
@@ -1681,6 +1725,18 @@
postinstall_cmds='chmod 555 $lib'
;;
+interix3*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=nonstopux ;;
@@ -1802,6 +1858,7 @@
openbsd*)
version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
need_lib_prefix=no
# Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
case $host_os in
@@ -1845,13 +1902,6 @@
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
;;
-sco3.2v5*)
- version_type=osf
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
solaris*)
version_type=linux
need_lib_prefix=no
@@ -1877,7 +1927,7 @@
need_version=yes
;;
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
version_type=linux
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
@@ -1910,6 +1960,29 @@
fi
;;
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=freebsd-elf
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ if test "$with_gnu_ld" = yes; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ shlibpath_overrides_runpath=no
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ shlibpath_overrides_runpath=yes
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
uts4*)
version_type=linux
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
@@ -1923,6 +1996,11 @@
esac
AC_MSG_RESULT([$dynamic_linker])
test "$dynamic_linker" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
@@ -1947,6 +2025,9 @@
AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
fi
fi
+ if test -z "$LTCFLAGS"; then
+ eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`"
+ fi
# Extract list of available tagged configurations in $ofile.
# Note that this assumes the entire list is on one line.
@@ -2075,7 +2156,7 @@
# AC_DISABLE_SHARED
# -----------------
-#- set the default shared flag to --disable-shared
+# set the default shared flag to --disable-shared
AC_DEFUN([AC_DISABLE_SHARED],
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_SHARED(no)
@@ -2383,7 +2464,7 @@
case $host_os in
darwin*)
if test "$GCC" = yes; then
- reload_cmds='$CC -nostdlib ${wl}-r -o $output$reload_objs'
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
else
reload_cmds='$LD$reload_flag -o $output$reload_objs'
fi
@@ -2483,6 +2564,11 @@
esac
;;
+interix3*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+ ;;
+
irix5* | irix6* | nonstopux*)
case $LD in
*-32|*"-32 ") libmagic=32-bit;;
@@ -2528,15 +2614,11 @@
lt_cv_deplibs_check_method=pass_all
;;
-sco3.2v5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
solaris*)
lt_cv_deplibs_check_method=pass_all
;;
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
case $host_vendor in
motorola)
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
@@ -2557,10 +2639,13 @@
siemens)
lt_cv_deplibs_check_method=pass_all
;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
esac
;;
-sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*)
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
lt_cv_deplibs_check_method=pass_all
;;
esac
@@ -2580,36 +2665,43 @@
# Let the user override the test.
lt_cv_path_NM="$NM"
else
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/${ac_tool_prefix}nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
break
;;
*)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
;;
esac
- esac
- fi
+ fi
+ done
+ IFS="$lt_save_ifs"
done
- IFS="$lt_save_ifs"
test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
fi])
NM="$lt_cv_path_NM"
@@ -2715,7 +2807,7 @@
])# _LT_AC_LANG_CXX
# _LT_AC_PROG_CXXCPP
-# ---------------
+# ------------------
AC_DEFUN([_LT_AC_PROG_CXXCPP],
[
AC_REQUIRE([AC_PROG_CXX])
@@ -2764,7 +2856,7 @@
# AC_LIBTOOL_RC
-# --------------
+# -------------
# enable support for Windows resource files
AC_DEFUN([AC_LIBTOOL_RC],
[AC_REQUIRE([LT_AC_PROG_RC])
@@ -2801,37 +2893,6 @@
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
-#
-# Check for any special shared library compilation flags.
-#
-_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
-if test "$GCC" = no; then
- case $host_os in
- sco3.2v5*)
- _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
- ;;
- esac
-fi
-if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
- AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
- if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[ ]]" >/dev/null; then :
- else
- AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
- _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
- fi
-fi
-
-
-#
-# Check to make sure the static flag actually works.
-#
-AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
- _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
- $_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
- [],
- [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
-
-
AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
AC_LIBTOOL_PROG_COMPILER_PIC($1)
AC_LIBTOOL_PROG_CC_C_O($1)
@@ -2840,9 +2901,9 @@
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
AC_LIBTOOL_SYS_LIB_STRIP
-AC_LIBTOOL_DLOPEN_SELF($1)
+AC_LIBTOOL_DLOPEN_SELF
-# Report which librarie types wil actually be built
+# Report which library types will actually be built
AC_MSG_CHECKING([if libtool supports shared libraries])
AC_MSG_RESULT([$can_build_shared])
@@ -2901,6 +2962,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
_LT_AC_TAGVAR(hardcode_automatic, $1)=no
_LT_AC_TAGVAR(module_cmds, $1)=
_LT_AC_TAGVAR(module_expsym_cmds, $1)=
@@ -2928,7 +2990,7 @@
lt_simple_compile_test_code="int some_variable = 0;\n"
# Code to be used in simple link tests
-lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
+lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n'
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_AC_SYS_COMPILER
@@ -2947,12 +3009,12 @@
if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
else
- unset lt_cv_prog_gnu_ld
+ $as_unset lt_cv_prog_gnu_ld
fi
if test -n "${lt_cv_path_LDCXX+set}"; then
lt_cv_path_LD=$lt_cv_path_LDCXX
else
- unset lt_cv_path_LD
+ $as_unset lt_cv_path_LD
fi
test -z "${LDCXX+set}" || LD=$LDCXX
CC=${CXX-"c++"}
@@ -3047,6 +3109,7 @@
;;
esac
done
+ ;;
esac
exp_sym_flag='-bexport'
@@ -3084,6 +3147,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
fi
+ ;;
esac
shared_flag='-shared'
if test "$aix_use_runtimelinking" = yes; then
@@ -3115,12 +3179,12 @@
_LT_AC_SYS_LIBPATH_AIX
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
else
# Determine the default libpath from the value encoded in an empty executable.
_LT_AC_SYS_LIBPATH_AIX
@@ -3129,16 +3193,26 @@
# -berok will link without error, but may produce a broken library.
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # -bexpall does not export symbols beginning with underscore (_)
- _LT_AC_TAGVAR(always_export_symbols, $1)=yes
# Exported symbols can be pulled into shared objects from archives
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared libraries.
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
+
+ beos*)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jr...@be...> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
chorus*)
case $cc_basename in
*)
@@ -3148,7 +3222,6 @@
esac
;;
-
cygwin* | mingw* | pw32*)
# _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
@@ -3158,7 +3231,7 @@
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is; otherwise, prepend...
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
@@ -3167,7 +3240,7 @@
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
else
_LT_AC_TAGVAR(ld_shlibs, $1)=no
fi
@@ -3304,34 +3377,23 @@
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
case $host_cpu in
- hppa*64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ hppa*64*|ia64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
;;
- ia64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- ;;
*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
;;
esac
fi
case $host_cpu in
- hppa*64*)
+ hppa*64*|ia64*)
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
- ia64*)
- _LT_AC_TAGVAR(hardcode_direct, $1)=no
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
*)
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
@@ -3347,9 +3409,12 @@
;;
aCC*)
case $host_cpu in
- hppa*64*|ia64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
+ hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
@@ -3368,9 +3433,12 @@
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
case $host_cpu in
- ia64*|hppa*64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
+ hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
@@ -3383,6 +3451,20 @@
;;
esac
;;
+ interix3*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
irix5* | irix6*)
case $cc_basename in
CC*)
@@ -3665,19 +3747,6 @@
# FIXME: insert proper C++ library support
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
- sco*)
- _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
sunos4*)
case $cc_basename in
CC*)
@@ -3770,9 +3839,60 @@
;;
esac
;;
- sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
;;
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ # So that behaviour is only enabled if SCOABSPATH is set to a
+ # non-empty value in the environment. Most likely only useful for
+ # creating official distributions of packages.
+ # This is a hack until libtool officially supports absolute path
+ # names for shared libraries.
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
tandem*)
case $cc_basename in
NCC*)
@@ -3808,8 +3928,6 @@
AC_LIBTOOL_PROG_LD_SHLIBS($1)
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
-AC_LIBTOOL_SYS_LIB_STRIP
-AC_LIBTOOL_DLOPEN_SELF($1)
AC_LIBTOOL_CONFIG($1)
@@ -3827,7 +3945,7 @@
])# AC_LIBTOOL_LANG_CXX_CONFIG
# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
-# ------------------------
+# ------------------------------------
# Figure out "hidden" library dependencies from verbose
# compiler output when linking a shared library.
# Parse the compiler output and extract the necessary
@@ -3960,6 +4078,14 @@
# PORTME: override above test on systems where it is broken
ifelse([$1],[CXX],
[case $host_os in
+interix3*)
+ # Interix 3.5 installs completely hosed .la files for C++, so rather than
+ # hack all around it, let's just trust "g++" to DTRT.
+ _LT_AC_TAGVAR(predep_objects,$1)=
+ _LT_AC_TAGVAR(postdep_objects,$1)=
+ _LT_AC_TAGVAR(postdeps,$1)=
+ ;;
+
solaris*)
case $cc_basename in
CC*)
@@ -3969,6 +4095,7 @@
_LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
;;
esac
+ ;;
esac
])
@@ -3978,7 +4105,7 @@
])# AC_LIBTOOL_POSTDEP_PREDEP
# AC_LIBTOOL_LANG_F77_CONFIG
-# ------------------------
+# --------------------------
# Ensure that the configuration vars for the C compiler are
# suitably defined. Those variables are subsequently used by
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
@@ -4062,8 +4189,6 @@
test "$enable_shared" = yes || enable_static=yes
AC_MSG_RESULT([$enable_static])
-test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
_LT_AC_TAGVAR(GCC, $1)="$G77"
_LT_AC_TAGVAR(LD, $1)="$LD"
@@ -4073,9 +4198,7 @@
AC_LIBTOOL_PROG_LD_SHLIBS($1)
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
-AC_LIBTOOL_SYS_LIB_STRIP
-
AC_LIBTOOL_CONFIG($1)
AC_LANG_POP
@@ -4131,8 +4254,6 @@
AC_LIBTOOL_PROG_LD_SHLIBS($1)
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
-AC_LIBTOOL_SYS_LIB_STRIP
-AC_LIBTOOL_DLOPEN_SELF($1)
AC_LIBTOOL_CONFIG($1)
@@ -4142,7 +4263,7 @@
# AC_LIBTOOL_LANG_RC_CONFIG
-# --------------------------
+# -------------------------
# Ensure that the configuration vars for the Windows resource compiler are
# suitably defined. Those variables are subsequently used by
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
@@ -4205,7 +4326,7 @@
# Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script.
- for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \
+ for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC LTCFLAGS NM \
SED SHELL STRIP \
libname_spec library_names_spec soname_spec extract_expsyms_cmds \
old_striplib striplib file_magic_cmd finish_cmds finish_eval \
@@ -4374,6 +4495,9 @@
# A C compiler.
LTCC=$lt_LTCC
+# LTCC compiler flags.
+LTCFLAGS=$lt_LTCFLAGS
+
# A language-specific compiler.
CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
@@ -4747,9 +4871,18 @@
osf*)
symcode='[[BCDEGQRST]]'
;;
-solaris* | sysv5*)
+solaris*)
symcode='[[BDRT]]'
;;
+sco3.2v5*)
+ symcode='[[DT]]'
+ ;;
+sysv4.2uw2*)
+ symcode='[[DT]]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[[ABDT]]'
+ ;;
sysv4)
symcode='[[DFNSTU]]'
;;
@@ -4932,6 +5065,10 @@
# DJGPP does not support shared libraries at all
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
;;
+ interix3*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
sysv4*MP*)
if test -d /usr/nec; then
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
@@ -5001,14 +5138,14 @@
case $cc_basename in
CC*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
if test "$host_cpu" != ia64; then
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
fi
;;
aCC*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
case $host_cpu in
hppa*64*|ia64*)
# +Z the default
@@ -5022,6 +5159,10 @@
;;
esac
;;
+ interix*)
+ # This is c89, which is MS Visual C++ (no shared libs)
+ # Anyone wants to do a port?
+ ;;
irix5* | irix6* | nonstopux*)
case $cc_basename in
CC*)
@@ -5101,15 +5242,6 @@
;;
psos*)
;;
- sco*)
- case $cc_basename in
- CC*)
- _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- *)
- ;;
- esac
- ;;
solaris*)
case $cc_basename in
CC*)
@@ -5151,7 +5283,14 @@
;;
esac
;;
- unixware*)
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ case $cc_basename in
+ CC*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
;;
vxworks*)
;;
@@ -5198,6 +5337,11 @@
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
;;
+ interix3*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
msdosdjgpp*)
# Just because we use GCC doesn't mean we suddenly get shared libraries
# on systems that don't support them.
@@ -5312,11 +5456,6 @@
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
- sco3.2v5*)
- _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn'
- ;;
-
solaris*)
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -5334,7 +5473,7 @@
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ sysv4 | sysv4.2uw2* | sysv4.3*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -5347,6 +5486,12 @@
fi
;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
unicos*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
@@ -5388,6 +5533,16 @@
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])"
;;
esac
+
+#
+# Check to make sure the static flag actually works.
+#
+wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\"
+AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+ _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
+ $lt_tmp_static_flag,
+ [],
+ [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
])
@@ -5466,6 +5621,10 @@
with_gnu_ld=no
fi
;;
+ interix*)
+ # we just hope/assume this is gcc and not c89 (= MSVC++)
+ with_gnu_ld=yes
+ ;;
openbsd*)
with_gnu_ld=no
;;
@@ -5550,7 +5709,7 @@
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is; otherwise, prepend...
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
@@ -5559,12 +5718,27 @@
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
else
_LT_AC_TAGVAR(ld_shlibs, $1)=no
fi
;;
+ interix3*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
linux*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
tmp_addflag=
@@ -5606,7 +5780,7 @@
fi
;;
- solaris* | sysv5*)
+ solaris*)
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
_LT_AC_TAGVAR(ld_shlibs, $1)=no
cat <<EOF 1>&2
@@ -5627,6 +5801,33 @@
fi
;;
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
sunos4*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
wlarc=
@@ -5660,7 +5861,7 @@
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
- if test "$GCC" = yes && test -z "$link_static_flag"; then
+ if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
# Neither direct hardcoding nor static linking is supported with a
# broken collect2.
_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
@@ -5694,6 +5895,7 @@
break
fi
done
+ ;;
esac
exp_sym_flag='-bexport'
@@ -5731,6 +5933,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
fi
+ ;;
esac
shared_flag='-shared'
if test "$aix_use_runtimelinking" = yes; then
@@ -5743,11 +5946,11 @@
# chokes on -Wl,-G. The following line is correct:
shared_flag='-G'
else
- if test "$aix_use_runtimelinking" = yes; then
+ if test "$aix_use_runtimelinking" = yes; then
shared_flag='${wl}-G'
else
shared_flag='${wl}-bM:SRE'
- fi
+ fi
fi
fi
@@ -5761,12 +5964,12 @@
# Determine the default libpath from the value encoded in an empty executable.
_LT_AC_SYS_LIBPATH_AIX
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
else
# Determine the default libpath from the value encoded in an empty executable.
_LT_AC_SYS_LIBPATH_AIX
@@ -5775,13 +5978,11 @@
# -berok will link without error, but may produce a broken library.
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # -bexpall does not export symbols beginning with underscore (_)
- _LT_AC_TAGVAR(always_export_symbols, $1)=yes
# Exported symbols can be pulled into shared objects from archives
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared libraries.
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
@@ -5922,47 +6123,62 @@
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
;;
- hpux10* | hpux11*)
+ hpux10*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ fi
+ ;;
+
+ hpux11*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
case $host_cpu in
- hppa*64*|ia64*)
+ hppa*64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
else
case $host_cpu in
- hppa*64*|ia64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
fi
if test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
case $host_cpu in
- hppa*64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ hppa*64*|ia64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
- ia64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_AC_TAGVAR(hardcode_direct, $1)=no
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
@@ -6064,14 +6280,6 @@
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
;;
- sco3.2v5*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ;;
-
solaris*)
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
if test "$GCC" = yes; then
@@ -6157,36 +6365,45 @@
fi
;;
- sysv4.2uw2*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(hardcode_direct, $1)=yes
- _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
- hardcode_runpath_var=yes
- runpath_var=LD_RUN_PATH
- ;;
+ runpath_var='LD_RUN_PATH'
- sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
- _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
if test "$GCC" = yes; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
else
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
fi
- runpath_var='LD_RUN_PATH'
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
- sysv5*)
- _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
- # $CC -shared without GNU ld will not create a library from C++
- # object files and a static libstdc++, better avoid it by now
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
;;
uts4*)
@@ -6204,11 +6421,6 @@
AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
#
# Do we need to explicitly link libc?
#
@@ -6236,6 +6448,7 @@
libobjs=conftest.$ac_objext
deplibs=
wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
+ pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
compiler_flags=-v
linker_flags=-v
verstring=
Modified: trunk/bwmd/Makefile.in
===================================================================
--- trunk/bwmd/Makefile.in 2006-03-07 17:43:37 UTC (rev 88)
+++ trunk/bwmd/Makefile.in 2006-03-07 17:47:23 UTC (rev 89)
@@ -68,11 +68,11 @@
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am_bwmd_OBJECTS = bwmd-report.$(OBJEXT) bwmd-flowControl.$(OBJEXT) \
- bwmd-logging.$(OBJEXT) bwmd-ipq.$(OBJEXT) bwmd-flow.$(OBJEXT) \
- bwmd-libipq.$(OBJEXT) bwmd-autoclass.$(OBJEXT) \
- bwmd-bwmd.$(OBJEXT)
+ bwmd-logging.$(OBJEXT) bwmd-ipq.$(OBJEXT) \
+ bwmd-libipq.$(OBJEXT) bwmd-flow.$(OBJEXT) \
+ bwmd-autoclass.$(OBJEXT) bwmd-bwmd.$(OBJEXT)
bwmd_OBJECTS = $(am_bwmd_OBJECTS)
-bwmd_DEPENDENCIES = $(top_builddir)/lib/libbwm.la
+am__DEPENDENCIES_1 =
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
@@ -197,13 +197,19 @@
subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+RRDTOOL_INCLUDEDIR = @RRDTOOL_INCLUDEDIR@
+RRDTOOL_LIBS = @RRDTOOL_LIBS@
+RRDTOOL_LDADDS = @RRDTOOL_LDADDS@
+RRDTOOL_VER = @RRDTOOL_VER@
CONFIG_DIR = /etc/bwm_tools
CONFIG_FILE = $(CONFIG_DIR)/firewall.xml
-LOG_DIR = /var/bwm_tools
-bwmd_SOURCES = report.c flowControl.c logging.c ipq.c flow.c libipq.c autoclass.c bwmd.c
-bwmd_LDADD = $(top_builddir)/lib/libbwm.la
-bwmd_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) $(XML_CFLAGS) -DCONFIG_FILE=\"$(CONFIG_FILE)\" -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS)
-bwmd_LDFLAGS = $(GLIB_LIBS) $(XML_LIBS)
+bwmd_SOURCES = report.c flowControl.c logging.c ipq.c libipq.c flow.c autoclass.c bwmd.c
+bwmd_DEPENDENCIES = $(RRDTOOL_LDADDS)
+bwmd_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS)
+bwmd_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) $(XML_CFLAGS) $(RRDTOOL_INCLUDEDIR) -DCONFIG_FILE=\"$(CONFIG_FILE)\" \
+ -DRRDTOOL_VER=$(RRDTOOL_VER) $(AM_CFLAGS)
+
+bwmd_LDFLAGS = $(GLIB_LIBS) $(XML_LIBS) $(RRDTOOL_LIBS)
all: all-am
.SUFFIXES:
@@ -361,6 +367,20 @@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -c -o bwmd-ipq.obj `if test -f 'ipq.c'; then $(CYGPATH_W) 'ipq.c'; else $(CYGPATH_W) '$(srcdir)/ipq.c'; fi`
+bwmd-libipq.o: libipq.c
+@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -MT bwmd-libipq.o -MD -MP -MF "$(DEPDIR)/bwmd-libipq.Tpo" -c -o bwmd-libipq.o `test -f 'libipq.c' || echo '$(srcdir)/'`libipq.c; \
+@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/bwmd-libipq.Tpo" "$(DEPDIR)/bwmd-libipq.Po"; else rm -f "$(DEPDIR)/bwmd-libipq.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libipq.c' object='bwmd-libipq.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -c -o bwmd-libipq.o `test -f 'libipq.c' || echo '$(srcdir)/'`libipq.c
+
+bwmd-libipq.obj: libipq.c
+@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -MT bwmd-libipq.obj -MD -MP -MF "$(DEPDIR)/bwmd-libipq.Tpo" -c -o bwmd-libipq.obj `if test -f 'libipq.c'; then $(CYGPATH_W) 'libipq.c'; else $(CYGPATH_W) '$(srcdir)/libipq.c'; fi`; \
+@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/bwmd-libipq.Tpo" "$(DEPDIR)/bwmd-libipq.Po"; else rm -f "$(DEPDIR)/bwmd-libipq.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libipq.c' object='bwmd-libipq.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -c -o bwmd-libipq.obj `if test -f 'libipq.c'; then $(CYGPATH_W) 'libipq.c'; else $(CYGPATH_W) '$(srcdir)/libipq.c'; fi`
+
bwmd-flow.o: flow.c
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -MT bwmd-flow.o -MD -MP -MF "$(DEPDIR)/bwmd-flow.Tpo" -c -o bwmd-flow.o `test -f 'flow.c' || echo '$(srcdir)/'`flow.c; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/bwmd-flow.Tpo" "$(DEPDIR)/bwmd-flow.Po"; else rm -f "$(DEPDIR)/bwmd-flow.Tpo"; exit 1; fi
@@ -375,20 +395,6 @@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(bwmd_CFLAGS) $(CFLAGS) -c -o bwmd-flow.obj `if test -f 'flow.c'; then $(CYGPATH_W) 'flow.c'; else $(CYGPATH_W) '$(srcdir)/flow.c'; fi`
-bwmd-libip...
[truncated message content] |
|
From: <sv...@li...> - 2006-03-07 17:44:37
|
Author: nkukard
Date: 2006-03-07 17:43:37 +0000 (Tue, 07 Mar 2006)
New Revision: 88
Modified:
trunk/Makefile.am
trunk/TODO
trunk/bwmd/Makefile.am
trunk/bwmd/report.c
trunk/configure.ac
trunk/doc/bwmtools.texi
trunk/include/flow.h
trunk/include/report.h
trunk/lib/Makefile.am
trunk/lib/xmlConf.c
Log:
* Various code cleanups
* Added parameters...
report-format
Either rrd or native, updates rrd files and creates BWM Tools native logging files automagically
report-filename
Specify the report filename manually
flow-mode
Specify the mode of flow control for the said flow, either local (INPUT & OUTPUT) or forward (FORWARD), this is needed if you're shaping traffic sourcing and destined to your local box and not forwarding traffic through a firewall/router
* Install RRD Tool when installing BWM Tools
Modified: trunk/Makefile.am
===================================================================
--- trunk/Makefile.am 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/Makefile.am 2006-03-07 17:43:37 UTC (rev 88)
@@ -17,7 +17,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-SUBDIRS=lib bwm_firewall bwm_graph bwmd bwm_monitor doc
+SUBDIRS=@RRDTOOL_DIRS@ lib bwm_firewall bwm_graph bwmd bwm_monitor doc
EXTRA_DIST=include/autoclass.h include/common.h include/flow.h include/flowControl.h include/ipq.h
EXTRA_DIST+=include/libipq.h include/misc.h include/report.h include/xmlConf.h
Modified: trunk/TODO
===================================================================
--- trunk/TODO 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/TODO 2006-03-07 17:43:37 UTC (rev 88)
@@ -13,3 +13,19 @@
* bwm_firewall to generate automatic MARK values for flows
* fix findFlowByName & findGroupByName, these 2 functions are similar and i'm sure can be merged
* have the location of iptables-restore automatically discovered using ./configure, with override options
+
+
+* Create /etc/bwm_tools and /var/bwm_tools on install
+* BPS/KBPS/MBPS support in firewall.xml for flows
+* TBF and CBQ params
+ - queue-manager
+ - prio
+ * Process bands in priority, dequeue 0 first, then 1 ... to n
+
+ - prio-weighted
+ * Dequeue X packets or X bytes + add a weight
+
+* Fix up prio classifier
+* Fix default queue size + len
+* xmlConf queue & flow parsing has duplicated code, alot!
+* Try autoassign nfmark?
Modified: trunk/bwmd/Makefile.am
===================================================================
--- trunk/bwmd/Makefile.am 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/bwmd/Makefile.am 2006-03-07 17:43:37 UTC (rev 88)
@@ -23,13 +23,23 @@
XML_LIBS=@XML_LIBS@
XML_CFLAGS=@XML_CFLAGS@
+RRDTOOL_INCLUDEDIR=@RRDTOOL_INCLUDEDIR@
+RRDTOOL_LIBS=@RRDTOOL_LIBS@
+RRDTOOL_LDADDS=@RRDTOOL_LDADDS@
+RRDTOOL_VER=@RRDTOOL_VER@
+
CONFIG_DIR=/etc/bwm_tools
CONFIG_FILE=$(CONFIG_DIR)/firewall.xml
-LOG_DIR=/var/bwm_tools
bin_PROGRAMS = bwmd
-bwmd_SOURCES = report.c flowControl.c logging.c ipq.c flow.c libipq.c autoclass.c bwmd.c
-bwmd_LDADD = $(top_builddir)/lib/libbwm.la
-bwmd_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) $(XML_CFLAGS) -DCONFIG_FILE=\"$(CONFIG_FILE)\" -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS)
-bwmd_LDFLAGS = $(GLIB_LIBS) $(XML_LIBS)
+bwmd_SOURCES = report.c flowControl.c logging.c ipq.c libipq.c flow.c autoclass.c bwmd.c
+bwmd_DEPENDENCIES = $(RRDTOOL_LDADDS)
+bwmd_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS)
+bwmd_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) $(XML_CFLAGS) $(RRDTOOL_INCLUDEDIR) -DCONFIG_FILE=\"$(CONFIG_FILE)\" \
+ -DRRDTOOL_VER=$(RRDTOOL_VER) $(AM_CFLAGS)
+bwmd_LDFLAGS = $(GLIB_LIBS) $(XML_LIBS) $(RRDTOOL_LIBS)
+# Build rrdtool if we need it
+$(top_builddir)/rrdtool/src/librrd.la:
+ $(MAKE) $(AM_MAKEFLAGS) -C ../rrdtool
+
Modified: trunk/bwmd/report.c
===================================================================
--- trunk/bwmd/report.c 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/bwmd/report.c 2006-03-07 17:43:37 UTC (rev 88)
@@ -31,12 +31,13 @@
#include <time.h>
#include <unistd.h>
#include "flow.h"
+#include "misc.h"
#include "report.h"
// Function to write a log entry to the report file
-static void *writeEntry(void *data)
+static void *writeNativeEntry(void *data)
{
struct reportData_t *reportData = (struct reportData_t*) data;
struct stat statBuf;
@@ -45,28 +46,23 @@
int opRes;
int err = 0;
int fd;
- char filename[MAX_NAMELEN];
- // Blank file header & filename
+ // Blank file header
memset(&fileHeader,'\0',sizeof(struct aLogFileHeader_t));
- memset(&filename,'\0',MAX_NAMELEN);
- // Lets get our filename...
- snprintf(filename,MAX_NAMELEN,"%s/%s.dat",LOG_DIR,reportData->ref);
-
// Get stats for file
- result = stat(filename,&statBuf);
+ result = stat(reportData->reportFilename,&statBuf);
if (result == 0)
{
// Stats was ok, open it
- fd = open(filename,O_RDWR);
+ fd = open(reportData->reportFilename,O_RDWR);
if (fd > 0)
{
opRes = read(fd,&fileHeader,sizeof(struct aLogFileHeader_t));
if (opRes != sizeof(struct aLogFileHeader_t))
{
- logMessage(LOG_DEBUG, "Error reading header from \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error reading header from \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
// If no errors seek...
@@ -76,7 +72,7 @@
opRes = lseek(fd,0,SEEK_END);
if (opRes < 0)
{
- logMessage(LOG_DEBUG, "Error seeking end of file \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error seeking end of file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
}
@@ -87,7 +83,7 @@
opRes = write(fd,&reportData->entry,sizeof(struct aLogFileEntry_t));
if (opRes != sizeof(struct aLogFileEntry_t))
{
- logMessage(LOG_DEBUG, "Error writing record to file \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error writing record to file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
else
@@ -107,7 +103,7 @@
opRes = lseek(fd,0,SEEK_SET);
if (opRes < 0)
{
- logMessage(LOG_DEBUG, "Error seeking beginning of file \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error seeking beginning of file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
}
@@ -118,28 +114,28 @@
opRes = write(fd,&fileHeader,sizeof(struct aLogFileHeader_t));
if (opRes != sizeof(struct aLogFileHeader_t))
{
- logMessage(LOG_DEBUG, "Error writing header to file \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error writing header to file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
}
close(fd);
}
else
- fprintf(stderr,"Stat error on \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR,"Failed to open file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
}
else
{
// Check if file doesn't exist
if (errno == ENOENT)
{
- logMessage(LOG_DEBUG, "Creating report file %s\n",filename);
+ logMessage(LOG_ERR, "Creating report file %s\n",reportData->reportFilename);
// If not create it
- fd = open(filename,O_CREAT|O_RDWR,S_IREAD|S_IWRITE);
+ fd = open(reportData->reportFilename,O_CREAT|O_RDWR,S_IREAD|S_IWRITE);
if (fd > 0)
{
// Build header
memcpy(&fileHeader.fileVer,FILE_VER_CURRENT,strlen(FILE_VER_CURRENT));
- memcpy(&fileHeader.ref,&reportData->ref,strlen(reportData->ref));
+ memcpy(&fileHeader.ref,reportData->ref,strlen(reportData->ref));
fileHeader.start = reportData->entry.unixStampStart;
fileHeader.end = reportData->entry.unixStampStart;
fileHeader.recs = 1;
@@ -148,7 +144,7 @@
opRes = write(fd,&fileHeader,sizeof(struct aLogFileHeader_t));
if (opRes != sizeof(struct aLogFileHeader_t))
{
- logMessage(LOG_DEBUG, "Error writing header to \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error writing header to \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
// If no errors write more...
@@ -157,17 +153,17 @@
opRes = write(fd,&reportData->entry,sizeof(struct aLogFileEntry_t));
if (opRes != sizeof(struct aLogFileEntry_t))
{
- logMessage(LOG_DEBUG, "Error writing record to \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Error writing record to \"%s\": %s\n",reportData->reportFilename,strerror(errno));
err = 1;
}
}
close(fd);
}
else
- logMessage(LOG_DEBUG, "Stat error on \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Failed to create \"%s\": %s\n",reportData->reportFilename,strerror(errno));
}
else
- logMessage(LOG_DEBUG, "Failed to open file \"%s\": %s\n",filename,strerror(errno));
+ logMessage(LOG_ERR, "Failed to open file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
}
return(NULL);
@@ -175,6 +171,62 @@
+// Function to write a log entry to an RRD file
+static void *writeRRDEntry(void *data)
+{
+ struct reportData_t *reportData = (struct reportData_t*) data;
+ struct stat statBuf;
+ int result;
+ int opRes;
+ int err = 0;
+ int fd;
+
+
+ // Get stats for file
+ result = stat(reportData->reportFilename,&statBuf);
+ if (result == 0)
+ {
+ char **params;
+ int numParams = 0;
+ int i;
+
+
+ // Create just a little mem for us to begin with
+ params = (char **) malloc0(sizeof(char*));
+
+ // Add update string
+ ADD_SINGLE_PARAM(params,numParams,
+ "%i@%i:%i:%i:%i",
+ reportData->entry.unixStampEnd,
+ reportData->entry.bytesSeen,
+ reportData->entry.packetsSeen,
+ reportData->entry.packetsBursted,
+ reportData->entry.packetsDropped
+ );
+
+ // Try the update
+ if ((i = rrd_update_r(reportData->reportFilename,"bytes:packets:bursted:dropped",numParams,params)) < 0)
+ logMessage(LOG_ERR,"Failed to update RRD file %s: %s\n",reportData->reportFilename,rrd_get_error());
+
+ // Free memory
+ for (i = 0; i < numParams; i++)
+ free(params[i]);
+ free(params);
+ }
+ else
+ {
+ // Check if file doesn't exist
+ if (errno == ENOENT)
+ logMessage(LOG_ERR, "Please create \"%s\" first\n",reportData->reportFilename);
+ else
+ logMessage(LOG_ERR, "Failed to open file \"%s\": %s\n",reportData->reportFilename,strerror(errno));
+ }
+
+ return(NULL);
+}
+
+
+
// Main reporting module
void *reportRunner(void *data)
{
@@ -208,9 +260,9 @@
// Check if we gonna pump to disk
if (flow->counterRemaining < 1)
{
-
// Build our structure to pump into the file
- strncpy(reportData.ref,flow->flowName,MAX_REFLEN);
+ reportData.ref = flow->flowName;
+ reportData.reportFilename = flow->reportFilename;
reportData.entry.unixStampStart = flow->lastDumpTimestamp;
flow->lastDumpTimestamp = time(NULL);
reportData.entry.unixStampEnd = flow->lastDumpTimestamp;
@@ -220,8 +272,16 @@
reportData.entry.packetsSeen = flow->counter.pktCount;
reportData.entry.packetsBursted = flow->counter.pktBursted;
reportData.entry.packetsDropped = flow->counter.pktDropped;
- // Log to file
- writeEntry(&reportData);
+
+ // Check what format we're working with
+ if (flow->reportFormat == REPORT_FORMAT_NATIVE)
+ // Log to file
+ writeNativeEntry(&reportData);
+ else if (flow->reportFormat == REPORT_FORMAT_RRD)
+ writeRRDEntry(&reportData);
+ else
+ logMessage(LOG_ERR, "ERROR: Internal error, report format not understood for \"%s\"\n",flow->flowName);
+
// Reset counters
flow->counterRemaining = flow->counterTimeout;
reset = 1;
@@ -267,8 +327,7 @@
// Check if we gonna pump to disk
if (group->counterRemaining < 1)
{
-
- // Build our structure to pump into the file
+ // Build our structure and write below
strncpy(reportData.ref,group->groupName,MAX_REFLEN);
reportData.entry.unixStampStart = group->lastDumpTimestamp;
group->lastDumpTimestamp = time(NULL);
@@ -279,8 +338,16 @@
reportData.entry.packetsSeen = group->counter.pktCount;
reportData.entry.packetsBursted = group->counter.pktBursted;
reportData.entry.packetsDropped = group->counter.pktDropped;
- // Log to file
- writeEntry(&reportData);
+
+ // Check what format we're working with
+ if (group->reportFormat == REPORT_FORMAT_NATIVE)
+ // Log to file
+ writeNativeEntry(&reportData);
+ else if (group->reportFormat == REPORT_FORMAT_RRD)
+ writeRRDEntry(&reportData);
+ else
+ logMessage(LOG_ERR, "ERROR: Internal error, report format not understood for \"%s\"\n",group->groupName);
+
// Reset counters
group->counterRemaining = group->counterTimeout;
reset = 1;
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/configure.ac 2006-03-07 17:43:37 UTC (rev 88)
@@ -20,7 +20,7 @@
*/
AC_PREREQ(2.57)
-AC_INIT([bwm_tools],[200602012132])
+AC_INIT([bwm_tools],[devel])
AC_CONFIG_SRCDIR([bwm_monitor/bwm_monitor.c])
AC_CONFIG_HEADER([config.h])
@@ -58,6 +58,7 @@
[ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir],
[
AC_CONFIG_SUBDIRS(rrdtool)
+ RRDTOOL_DIRS="rrdtool"
RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/librrd.la"
RRDTOOL_INCLUDEDIR="-I\$(top_builddir)/rrdtool/src"
],
@@ -87,7 +88,7 @@
RRDTOOL_LIBS="-lm -lrrd"
])
-AC_SUBST(RRDTOOL_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR RRDTOOL_VER)
+AC_SUBST(RRDTOOL_DIRS RRDTOOL_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR RRDTOOL_VER)
# Checks for header files.
AC_HEADER_STDC
Modified: trunk/doc/bwmtools.texi
===================================================================
--- trunk/doc/bwmtools.texi 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/doc/bwmtools.texi 2006-03-07 17:43:37 UTC (rev 88)
@@ -824,6 +824,20 @@
seconds. Minimum value for this parameter is 30.
@*
@item
+@cindex report-format
+@code{report-format="@dfn{native}|@dfn{rrd}"} - Optional parameter to specify
+the format of the report file. Defaults to @dfn{native}. Note: if using
+@dfn{rrd}, you MUST create the RRDTool file before running bwmd. It is not
+created automagically. For the @dfn{native} format @code{report-filename}
+would default to @code{/var/bwm_tools/flow_name.dat}, for the @dfn{rrd} format
+@code{report-filename} would default to @code{/var/bwm_tools/flow_name.rrd}.
+@*
+@item
+@cindex report-filename
+@code{report-filename="@dots{}"} - Optional parameter to specify
+the report filename.
+@*
+@item
@cindex prio-classifier
@code{prio-classifier="@dots{}"} - Optional parameter to specify an automatic
traffic prioritization classifier. This parameter defaults to the @dfn{none}
Modified: trunk/include/flow.h
===================================================================
--- trunk/include/flow.h 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/include/flow.h 2006-03-07 17:43:37 UTC (rev 88)
@@ -128,10 +128,13 @@
unsigned int accumMs; // Accumulated number of microseconds
struct timeval lastCreditCalc; // Last "timeval" that we calculated additional credit
struct pktStat_t running; // This is the running counter used for stats & logging
-
+
+ // Reporting stuff
int lastDumpTimestamp;
int counterTimeout; // STATIC - length between file logs
int counterRemaining;
+ int reportFormat;
+ char *reportFilename;
};
@@ -157,6 +160,8 @@
int lastDumpTimestamp;
int counterTimeout; // STATIC - length between file logs
int counterRemaining;
+ int reportFormat;
+ char *reportFilename;
// Flows we "contain"
GList *flowList;
Modified: trunk/include/report.h
===================================================================
--- trunk/include/report.h 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/include/report.h 2006-03-07 17:43:37 UTC (rev 88)
@@ -37,7 +37,11 @@
#define FILE_VER_CURRENT FILE_VER_0_2
#define FILE_VER_0_2 "BWM_VER-0.2"
+// Report formats we can generate
+#define REPORT_FORMAT_NATIVE 0
+#define REPORT_FORMAT_RRD 1
+
// File format stuff...
struct aLogFileHeader_t
{
@@ -64,9 +68,10 @@
// Function passed structure for logging
struct reportData_t
{
- char ref[MAX_REFLEN];
+ char *ref;
int counterTimeout;
struct aLogFileEntry_t entry;
+ char *reportFilename;
};
Modified: trunk/lib/Makefile.am
===================================================================
--- trunk/lib/Makefile.am 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/lib/Makefile.am 2006-03-07 17:43:37 UTC (rev 88)
@@ -23,9 +23,10 @@
XML_LIBS=@XML_LIBS@
XML_CFLAGS=@XML_CFLAGS@
+LOG_DIR=/var/bwm_tools
lib_LTLIBRARIES = libbwm.la
libbwm_la_SOURCES = xmlConf.c misc.c
-libbwm_la_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) $(XML_CFLAGS) $(AM_CFLAGS)
+libbwm_la_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) $(XML_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS)
libbwm_la_LDFLAGS = $(GLIB_LIBS) $(XML_LIBS) -version-info 1:0:0
Modified: trunk/lib/xmlConf.c
===================================================================
--- trunk/lib/xmlConf.c 2006-03-06 09:56:29 UTC (rev 87)
+++ trunk/lib/xmlConf.c 2006-03-07 17:43:37 UTC (rev 88)
@@ -32,6 +32,7 @@
#include "autoclass.h"
#include "common.h"
#include "flow.h"
+#include "report.h"
#include "xmlConf.h"
@@ -357,13 +358,13 @@
if (!strcmp(key,"to-src") && !done)
{
// Make sure to-src is only used in SNAT section
- if ((strcmp(target, "SNAT") == 0))
+ if (!strcmp(target, "SNAT"))
{
snprintf(tmp,BUFFER_SIZE,"--to-source %s ",value);
strncat(buffer,tmp,BUFFER_SIZE);
}
else
- fprintf(stderr,"ERROR: Tag parameter \"to-src\" is only valid in the <snat> tag, ignoring\n");
+ fprintf(stderr,"ERROR: Tag parameter \"to-src\" is only valid in the <snat> tag. Ignoring!\n");
done = 1;
}
@@ -371,13 +372,13 @@
if (!strcmp(key,"to-dst") && !done)
{
// Make sure to-dst is only used in DNAT section
- if ((strcmp(target, "DNAT") == 0))
+ if (!strcmp(target, "DNAT"))
{
snprintf(tmp,BUFFER_SIZE,"--to-destination %s ",value);
strncat(buffer,tmp,BUFFER_SIZE);
}
else
- fprintf(stderr,"ERROR: Tag parameter \"to-dst\" is only valid in the <dnat> tag, ignoring\n");
+ fprintf(stderr,"ERROR: Tag parameter \"to-dst\" is only valid in the <dnat> tag. Ignoring!\n");
done = 1;
}
@@ -385,13 +386,13 @@
if (!strcmp(key,"to-ports") && !done)
{
// Make sure to-ports is only used in DNAT section
- if ((strcmp(target, "MASQUERADE") == 0))
+ if (!strcmp(target, "MASQUERADE"))
{
snprintf(tmp,BUFFER_SIZE,"--to-ports %s ",value);
strncat(buffer,tmp,BUFFER_SIZE);
}
else
- fprintf(stderr,"ERROR: Tag parameter \"to-ports\" is only valid in the <masq> tag, ignoring\n");
+ fprintf(stderr,"ERROR: Tag parameter \"to-ports\" is only valid in the <masq> tag. Ignoring!\n");
done = 1;
}
@@ -402,7 +403,7 @@
// Check if we must complain
if (!done)
{
- fprintf(stderr,"ERROR: Option \"%s\" no recognized\n",key);
+ fprintf(stderr,"ERROR: Option \"%s\" not recognized. Ignoring!\n",key);
}
}
@@ -449,6 +450,10 @@
done = 1;
if (!done && !strcmp(key,"report-timeout"))
done = 1;
+ if (!done && !strcmp(key,"report-format"))
+ done = 1;
+ if (!done && !strcmp(key,"report-filename"))
+ done = 1;
if (!done && !strcmp(key,"prio-classifier"))
done = 1;
if (!done && !strcmp(key,"burst-rate"))
@@ -467,11 +472,13 @@
done = 1;
if (!done && !strcmp(key,"burst-threshold"))
done = 1;
+ if (!done && !strcmp(key,"flow-mode"))
+ done = 1;
// Check if we must complain
if (!done)
{
- fprintf(stderr,"ERROR: Flow option \"%s\" not recognized\n",key);
+ fprintf(stderr,"ERROR: Flow option \"%s\" not recognized. Ignoring!\n",key);
}
}
@@ -629,14 +636,14 @@
// First check if our name is valid
if (!moduleName)
{
- fprintf(stderr,"ERROR: Tag <LOAD /> requires a name\n");
+ fprintf(stderr,"ERROR: Tag <LOAD /> requires a name. Ignoring!\n");
ok = 0;
}
// Then if we a duplicate
if (ok && g_hash_table_lookup(moduleHash,moduleName))
{
- fprintf(stderr,"ERROR: Duplicate module %s in MODULES section\n",moduleName);
+ fprintf(stderr,"ERROR: Duplicate module %s in MODULES section. Ignoring!\n",moduleName);
ok = 0;
}
@@ -652,7 +659,7 @@
}
}
else
- fprintf(stderr,"WARNING: Unknown tag %s in MODULES section\n",moduleNode->name);
+ fprintf(stderr,"WARNING: Unknown tag %s in MODULES section. Ignoring!\n",moduleNode->name);
moduleNode = moduleNode->next;
}
@@ -666,7 +673,7 @@
// Check if we knew what the tag was
if (!validTag)
- fprintf(stderr,"WARNING: Unknown tag %s in GLOBAL section\n",myNode->name);
+ fprintf(stderr,"WARNING: Unknown tag %s in GLOBAL section. Ignoring!\n",myNode->name);
// Advance "class"
myNode = myNode->next;
@@ -698,7 +705,9 @@
unsigned long int nfmark,
unsigned char prioClassifier,
float parent_th,
- int reportTimeout)
+ int reportFormat,
+ int reportTimeout,
+ char *reportFilename)
{
int i;
struct flow_t *flow = (struct flow_t*) malloc(sizeof(struct flow_t));
@@ -787,7 +796,34 @@
flow->running.pktSize = 0;
flow->running.pktDropped = 0;
flow->running.pktBursted = 0;
+
+ // Reporting stuff
+ flow->reportFormat = reportFormat;
+ if (!reportFilename)
+ {
+ char filename[MAX_NAMELEN];
+
+ // Blank filename
+ memset(&filename,'\0',MAX_NAMELEN);
+
+ // Generate our filename
+ switch (flow->reportFormat)
+ {
+ case REPORT_FORMAT_NATIVE:
+ snprintf(filename,MAX_NAMELEN,"%s/%s.dat",LOG_DIR,flow->flowName);
+ break;
+
+ case REPORT_FORMAT_RRD:
+ snprintf(filename,MAX_NAMELEN,"%s/%s.rrd",LOG_DIR,flow->flowName);
+ break;
+ }
+
+ flow->reportFilename = strdup(filename);
+ }
+ else
+ flow->reportFilename = strdup(reportFilename);
+
// Verify everything is ok...
if (flow->statsLen == 0)
flow->statsLen = 10;
@@ -805,6 +841,7 @@
if (flow->maxQueueLen == -1)
{
if (flow->maxRate != 0)
+ // max rate / 2 (half a second) / 750 (half of MTU)
flow->maxQueueLen = ((flow->burstRate + flow->maxRate) / 2 / 750) * 2; // Seems an OK value for normal use?
else
flow->maxQueueLen = 0;
@@ -858,7 +895,9 @@
static struct group_t *createGroup(
char *groupName,
long int statsLen,
+ int reportFormat,
int reportTimeout,
+ char *reportFilename,
GList *flowList)
{
struct group_t *group = (struct group_t *) malloc(sizeof(struct group_t));
@@ -891,7 +930,32 @@
// Report stuff
group->counterTimeout = reportTimeout;
group->counterRemaining = reportTimeout;
+ group->reportFormat = reportFormat;
+ if (!reportFilename)
+ {
+ char filename[MAX_NAMELEN];
+
+ // Blank filename
+ memset(&filename,'\0',MAX_NAMELEN);
+
+ // Generate our filename
+ switch (group->reportFormat)
+ {
+ case REPORT_FORMAT_NATIVE:
+ snprintf(filename,MAX_NAMELEN,"%s/%s.dat",LOG_DIR,group->groupName);
+ break;
+
+ case REPORT_FORMAT_RRD:
+ snprintf(filename,MAX_NAMELEN,"%s/%s.rrd",LOG_DIR,group->groupName);
+ break;
+ }
+
+ group->reportFilename = strdup(filename);
+ }
+ else
+ group->reportFilename = strdup(reportFilename);
+
// Our list of flows
group->flowList = flowList;
@@ -940,7 +1004,7 @@
struct flowData_t createFlowData(char *filename)
{
xmlDocPtr doc;
- xmlNodePtr cur;
+ xmlNodePtr cur;
GList *pktQueues = NULL;
GList *flows = NULL, *groups = NULL, *groupItem;
struct flowData_t ret;
@@ -961,8 +1025,6 @@
GHashTable *tagProperties = getProperties(node);
-// fprintf(stderr,"Tag: %s\n",node->name);
-
// We are a flow...
if (!xmlStrcmp(node->name, (const xmlChar *) "flow"))
{
@@ -980,15 +1042,13 @@
if (ok)
{
- char *p;
+ char *p, *reportFilename;
long int statsLen, maxQueueSize, maxQueueLen, maxRate, burstRate, reportTimeout;
unsigned long int nfmark;
- unsigned char prioClassifier;
+ unsigned char prioClassifier, reportFormat;
float parent_th;
-// fprintf(stderr," Flow found: %s\n",flowName);
-
// Grab all properties we need
p = g_hash_table_lookup(tagProperties,"stats-len");
statsLen = p ? atol(p) : 10;
@@ -1006,7 +1066,7 @@
burstRate = p ? atol(p) : -1;
if (burstRate < maxRate && burstRate > 0)
{
- fprintf(stderr,"ERROR: %s - Tag \"burst-rate\" cannot be less than max-rate\n",flowName);
+ fprintf(stderr,"ERROR: %s - Tag \"burst-rate\" cannot be less than max-rate. Setting to -1.\n",flowName);
burstRate = -1;
}
@@ -1016,14 +1076,28 @@
p = g_hash_table_lookup(tagProperties,"burst-threshold");
parent_th = p ? atof(p) : -1;
+ if ((p = g_hash_table_lookup(tagProperties,"report-format")) != NULL)
+ {
+ if (strcasecmp(p,"native") == 0)
+ reportFormat = REPORT_FORMAT_NATIVE;
+ else if (strcasecmp(p,"rrd") == 0)
+ reportFormat = REPORT_FORMAT_RRD;
+ else
+ fprintf(stderr,"ERROR: %s - Tag value for \"report-format\" is invalid, please read manual. Ignoring!\n",flowName);
+ }
+ else
+ reportFormat = REPORT_FORMAT_NATIVE;
+
p = g_hash_table_lookup(tagProperties,"report-timeout");
reportTimeout = p ? atol(p) : 0;
if (reportTimeout < 30 && reportTimeout > 0)
{
- fprintf(stderr,"ERROR: %s - Tag \"report-timeout\" cannot be below 30 (seconds)\n",flowName);
+ fprintf(stderr,"ERROR: %s - Tag \"report-timeout\" cannot be below 30 (seconds). Setting to 30 seconds.\n",flowName);
reportTimeout = 30;
}
-
+
+ reportFilename = g_hash_table_lookup(tagProperties,"report-filename");
+
// Work out automatic classifier to use
if ((p = g_hash_table_lookup(tagProperties,"prio-classifier")) != NULL)
{
@@ -1034,14 +1108,14 @@
else if (strcasecmp(p,"none") == 0)
prioClassifier = AUTOCLASS_NONE;
else
- fprintf(stderr,"ERROR: %s - Tag value for \"prio-classifier\" is invalid, please read manual\n",flowName);
+ fprintf(stderr,"ERROR: %s - Tag value for \"prio-classifier\" is invalid, please read manual. Ignoring!\n",flowName);
}
else
prioClassifier = AUTOCLASS_NONE;
// Create our flow
newFlow = createFlow(flowName,parentFlow,statsLen,maxQueueSize,maxQueueLen,maxRate,burstRate,nfmark,
- prioClassifier,parent_th,reportTimeout);
+ prioClassifier,parent_th,reportFormat,reportTimeout,reportFilename);
flows = g_list_append(flows,newFlow);
}
@@ -1064,8 +1138,9 @@
if (ok)
{
- char *p;
+ char *p, *reportFilename;
long int statsLen, reportTimeout;
+ unsigned char prioClassifier, reportFormat;
GList *flowList;
struct group_t *newGroup;
@@ -1074,17 +1149,31 @@
p = g_hash_table_lookup(tagProperties,"stats-len");
statsLen = p ? atol(p) : 10;
+ if ((p = g_hash_table_lookup(tagProperties,"report-format")) != NULL)
+ {
+ if (strcasecmp(p,"native") == 0)
+ reportFormat = REPORT_FORMAT_NATIVE;
+ else if (strcasecmp(p,"rrd") == 0)
+ reportFormat = REPORT_FORMAT_RRD;
+ else
+ fprintf(stderr,"ERROR: %s - Tag value for \"report-format\" is invalid, please read manual. Ignoring!\n",groupName);
+ }
+ else
+ reportFormat = REPORT_FORMAT_NATIVE;
+
p = g_hash_table_lookup(tagProperties,"report-timeout");
reportTimeout = p ? atol(p) : 0;
if (reportTimeout < 30 && reportTimeout > 0)
{
- fprintf(stderr,"ERROR: Tag \"report-timeout\" cannot be below 30 (seconds)\n");
+ fprintf(stderr,"ERROR: %s - Tag \"report-timeout\" cannot be below 30 (seconds)\n",groupName);
reportTimeout = 30;
}
+ reportFilename = g_hash_table_lookup(tagProperties,"report-filename");
+
flowList = splitContents(node);
// Create our group
- newGroup = createGroup(groupName,statsLen,reportTimeout,flowList);
+ newGroup = createGroup(groupName,statsLen,reportFormat,reportTimeout,reportFilename,flowList);
groups = g_list_append(groups,newGroup);
}
validTag = 1;
@@ -1181,9 +1270,9 @@
}
// Check if we have the right root element & block
- if (xmlStrcmp(cur->name, (const xmlChar *) "firewall"))
+ if (xmlStrcmp(cur->name, (const xmlChar *) "firewall"))
{
- fprintf(stderr,"ERROR: Document of the wrong type, root node != firewall\n");
+ fprintf(stderr,"ERROR: Document of the wrong type, root node is not \"firewall\"\n");
xmlFreeDoc(doc);
return(ret);
}
@@ -1217,7 +1306,7 @@
struct flow_t *tmpFlow = flowItem->data;
// Compare flow name to the content list inside the group
- if (strcmp((char *) contentItem->data, tmpFlow->flowName) == 0)
+ if (!strcmp((char *) contentItem->data, tmpFlow->flowName))
{
// If it matches, check we arn't listed twice
if (!g_list_find(tmpFlow->groups,tmpGroup))
@@ -1375,9 +1464,10 @@
{
GHashTable *tmpProp;
char *nfmark;
+ char *flowMode;
struct confACLChain_t *tmpChain;
+ char *ruleName;
char *chainName;
- char *ruleName;
GList *contentList;
struct confACLRule_t *tmpRule;
char *cmd_line;
@@ -1389,26 +1479,42 @@
// Loop
while (node)
{
+ int trafficMatchChain = 0;
int validTag = 0;
// Grab our properties
tmpProp = getProperties(node);
nfmark = g_hash_table_lookup(tmpProp,"nfmark");
-
+ flowMode = g_hash_table_lookup(tmpProp,"flow-mode");
+
+
// Check for a flow queue
if (!xmlStrcmp(node->name, (const xmlChar *) "queue"))
{
// Process ourselves
if (nfmark)
{
- chainName = "FORWARD";
-
- // Grab chain...
- tmpChain = lookupChain(chainHash,chainName);
- ruleList = tmpChain->ruleList;
-
ruleName = g_hash_table_lookup(tmpProp,"name");
+
+ // trafficMatchChain = 1 means we match for FORWARD traffic
+ // trafficMatchChain = 2 means we match for INPUT & OUTPUT traffic
+ if (!flowMode)
+ trafficMatchChain = 1;
+ else
+ {
+ if (!strcmp(flowMode, "local"))
+ trafficMatchChain = 2;
+ else if (!strcmp(flowMode, "forward"))
+ trafficMatchChain = 1;
+ }
+ // Check if we managed to decipher the flow-mode parameter
+ if (trafficMatchChain == 0)
+ {
+ fprintf(stderr,"ERROR: flow-mode is invalid!\n");
+ goto next;
+ }
+
contentList = splitContents(node);
tmpRule = (struct confACLRule_t*) malloc(sizeof(struct confACLRule_t));
@@ -1425,12 +1531,47 @@
else
{
// Build our ruleSet
- cmd_line = createTrafficRuleset(tmpProp);
- tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
- createRuleset(classHash,tmpRule->classList,
- chainName,tmpRule->target,NULL,cmd_line));
+ cmd_line = createTrafficRuleset(tmpProp);
+
+ switch (trafficMatchChain)
+ {
+ case 1:
+ // Grab chain...
+ tmpChain = lookupChain(chainHash,"FORWARD");
+ ruleList = tmpChain->ruleList;
+ // Create rule
+ tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
+ createRuleset(classHash,tmpRule->classList,
+ "FORWARD",tmpRule->target,NULL,cmd_line));
+ // Append rule
+ ruleList = g_list_append(ruleList,tmpRule);
+ break;
+
+
+ case 2:
+ // Grab chain...
+ tmpChain = lookupChain(chainHash,"INPUT");
+ ruleList = tmpChain->ruleList;
+ // Create rule
+ tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
+ createRuleset(classHash,tmpRule->classList,
+ "INPUT",tmpRule->target,NULL,cmd_line));
+ // Append rule
+ ruleList = g_list_append(ruleList,tmpRule);
+
+ // Grab chain...
+ tmpChain = lookupChain(chainHash,"OUTPUT");
+ ruleList = tmpChain->ruleList;
+ // Create rule
+ tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
+ createRuleset(classHash,tmpRule->classList,
+ "OUTPUT",tmpRule->target,NULL,cmd_line));
+ // Append rule
+ ruleList = g_list_append(ruleList,tmpRule);
+ break;
+
+ }
- ruleList = g_list_append(ruleList,tmpRule);
}
}
validTag = 1;
@@ -1441,13 +1582,26 @@
// Process ourselves
if (nfmark)
{
- chainName = "FORWARD";
-
- // Grab chain...
- tmpChain = lookupChain(chainHash,chainName);
- ruleList = tmpChain->ruleList;
-
ruleName = g_hash_table_lookup(tmpProp,"name");
+
+ // trafficMatchChain = 1 means we match for FORWARD traffic
+ // trafficMatchChain = 2 means we match for INPUT & OUTPUT traffic
+ if (!flowMode)
+ trafficMatchChain = 1;
+ else
+ {
+ if (!strcmp(flowMode, "local"))
+ trafficMatchChain = 2;
+ else if (!strcmp(flowMode, "forward"))
+ trafficMatchChain = 1;
+ }
+ // Check if we managed to decipher the flow-mode parameter
+ if (trafficMatchChain == 0)
+ {
+ fprintf(stderr,"ERROR: flow-mode is invalid!\n");
+ goto next;
+ }
+
contentList = splitContents(node);
tmpRule = (struct confACLRule_t*) malloc(sizeof(struct confACLRule_t));
@@ -1464,12 +1618,43 @@
else
{
// Build our ruleSet
- cmd_line = createTrafficRuleset(tmpProp);
- tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
- createRuleset(classHash,tmpRule->classList,
- chainName,tmpRule->target,NULL,cmd_line));
-
- ruleList = g_list_append(ruleList,tmpRule);
+ cmd_line = createTrafficRuleset(tmpProp);
+
+ switch (trafficMatchChain)
+ {
+ case 1:
+ // Grab chain...
+ tmpChain = lookupChain(chainHash,"FORWARD");
+ ruleList = tmpChain->ruleList;
+ // Create rule
+ tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
+ createRuleset(classHash,tmpRule->classList,
+ "FORWARD",tmpRule->target,NULL,cmd_line));
+ // Append
+ ruleList = g_list_append(ruleList,tmpRule);
+ break;
+ case 2:
+ // Grab chain...
+ tmpChain = lookupChain(chainHash,"INPUT");
+ ruleList = tmpChain->ruleList;
+ // Create rule
+ tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
+ createRuleset(classHash,tmpRule->classList,
+ "INPUT",tmpRule->target,NULL,cmd_line));
+ // Append
+ ruleList = g_list_append(ruleList,tmpRule);
+
+ // Grab chain...
+ tmpChain = lookupChain(chainHash,"OUTPUT");
+ ruleList = tmpChain->ruleList;
+ // Create rule
+ tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
+ createRuleset(classHash,tmpRule->classList,
+ "OUTPUT",tmpRule->target,NULL,cmd_line));
+ // Append
+ ruleList = g_list_append(ruleList,tmpRule);
+ break;
+ }
}
}
// Parse child flow... see if its embedded
@@ -1487,7 +1672,8 @@
// Check if the tag we had was valid
if (!validTag)
fprintf(stderr,"WARNING: Unknown tag %s\n",node->name);
-
+
+next:
node = node->next;
}
}
|
|
From: <sv...@li...> - 2006-03-06 10:01:06
|
Author: nkukard
Date: 2006-03-06 09:30:54 +0000 (Mon, 06 Mar 2006)
New Revision: 84
Modified:
trunk/bwmd/ipq.c
Log:
* More sane error handling in ipq.c
Modified: trunk/bwmd/ipq.c
===================================================================
--- trunk/bwmd/ipq.c 2006-02-19 13:11:12 UTC (rev 83)
+++ trunk/bwmd/ipq.c 2006-03-06 09:30:54 UTC (rev 84)
@@ -297,13 +297,11 @@
if (status == 0)
continue;
- // Fail if error
+ // Report error if we failed to grab the packet
if (status < 0)
{
logMessage(LOG_WARNING, "Failed to get packet from IPQ: %s\n",ipq_errstr());
- // Lock, we dead... accept it!
- destroyIPQHandle(runnerData->IPQHandle);
- return(NULL);
+ continue;
}
// We must have a packet... check
|
|
From: <sv...@li...> - 2006-03-06 09:57:01
|
Author: nkukard
Date: 2006-03-06 09:56:29 +0000 (Mon, 06 Mar 2006)
New Revision: 87
Modified:
trunk/bwmd/ipq.c
trunk/bwmd/libipq.c
trunk/include/libipq.h
Log:
* Updated ipq interface
Modified: trunk/bwmd/ipq.c
===================================================================
--- trunk/bwmd/ipq.c 2006-03-06 09:37:53 UTC (rev 86)
+++ trunk/bwmd/ipq.c 2006-03-06 09:56:29 UTC (rev 87)
@@ -48,7 +48,7 @@
int result;
// Create our ipq socket
- h = ipq_create_handle(0, PF_INET, 1048576);
+ h = ipq_create_handle(0, PF_INET);
if (!h)
{
fprintf(stderr,"Failed to create IPQ handle\n");
Modified: trunk/bwmd/libipq.c
===================================================================
--- trunk/bwmd/libipq.c 2006-03-06 09:37:53 UTC (rev 86)
+++ trunk/bwmd/libipq.c 2006-03-06 09:56:29 UTC (rev 87)
@@ -57,8 +57,7 @@
IPQ_ERR_SUPP,
IPQ_ERR_RECVBUF,
IPQ_ERR_TIMEOUT,
- IPQ_ERR_PROTOCOL,
- IPQ_ERR_SETSOCKET
+ IPQ_ERR_PROTOCOL
};
#define IPQ_MAXERR IPQ_ERR_PROTOCOL
@@ -82,8 +81,7 @@
{ IPQ_ERR_SUPP, "Operation not supported" },
{ IPQ_ERR_RECVBUF, "Receive buffer size invalid" },
{ IPQ_ERR_TIMEOUT, "Timeout"},
- { IPQ_ERR_PROTOCOL, "Invalid protocol specified" },
- { IPQ_ERR_SETSOCKET, "Failed to set socket options" }
+ { IPQ_ERR_PROTOCOL, "Invalid protocol specified" }
};
static int ipq_errno = IPQ_ERR_NONE;
@@ -125,7 +123,8 @@
unsigned char *buf, size_t len,
int timeout)
{
- int addrlen, status;
+ unsigned int addrlen;
+ int status;
struct nlmsghdr *nlh;
if (len < sizeof(struct nlmsgerr)) {
@@ -174,6 +173,10 @@
ipq_errno = IPQ_ERR_RECV;
return -1;
}
+ if (h->peer.nl_pid != 0) {
+ ipq_errno = IPQ_ERR_RECV;
+ return -1;
+ }
if (status == 0) {
ipq_errno = IPQ_ERR_NLEOF;
return -1;
@@ -202,7 +205,7 @@
/*
* Create and initialise an ipq handle.
*/
-struct ipq_handle *ipq_create_handle(u_int32_t flags, u_int32_t protocol, int recv_buf_size)
+struct ipq_handle *ipq_create_handle(u_int32_t flags, u_int32_t protocol)
{
int status;
struct ipq_handle *h;
@@ -224,22 +227,13 @@
free(h);
return NULL;
}
-
+
if (h->fd == -1) {
ipq_errno = IPQ_ERR_SOCKET;
close(h->fd);
free(h);
return NULL;
}
-
- status = setsockopt(h->fd,SOL_SOCKET,SO_RCVBUF,&recv_buf_size,sizeof(int));
- if (status == -1) {
- ipq_errno = IPQ_ERR_SETSOCKET;
- close(h->fd);
- free(h);
- return NULL;
- }
-
memset(&h->local, 0, sizeof(struct sockaddr_nl));
h->local.nl_family = AF_NETLINK;
h->local.nl_pid = getpid();
Modified: trunk/include/libipq.h
===================================================================
--- trunk/include/libipq.h 2006-03-06 09:37:53 UTC (rev 86)
+++ trunk/include/libipq.h 2006-03-06 09:56:29 UTC (rev 87)
@@ -35,7 +35,7 @@
typedef u_int64_t ipq_id_t;
#else
#include <linux/netfilter_ipv4/ip_queue.h>
-typedef u_int32_t ipq_id_t;
+typedef unsigned long ipq_id_t;
#endif
#ifdef DEBUG_LIBIPQ
@@ -58,7 +58,7 @@
struct sockaddr_nl peer;
};
-struct ipq_handle *ipq_create_handle(u_int32_t flags, u_int32_t protocol, int recv_buf_size);
+struct ipq_handle *ipq_create_handle(u_int32_t flags, u_int32_t protocol);
int ipq_destroy_handle(struct ipq_handle *h);
|
|
From: <sv...@li...> - 2006-03-06 09:38:36
|
Author: nkukard
Date: 2006-03-06 09:37:53 +0000 (Mon, 06 Mar 2006)
New Revision: 86
Modified:
trunk/include/ipq.h
Log:
* Decreased buffer to 2k, we can only handle MTU == 1500 at present
Modified: trunk/include/ipq.h
===================================================================
--- trunk/include/ipq.h 2006-03-06 09:35:39 UTC (rev 85)
+++ trunk/include/ipq.h 2006-03-06 09:37:53 UTC (rev 86)
@@ -35,8 +35,7 @@
#include "libipq.h"
-#define IPQ_BUFSIZE 4096
-#define IP_PACKET_SIZE 20
+#define IPQ_BUFSIZE 2048
struct addr_t
{
|
|
From: <sv...@li...> - 2006-03-06 09:36:33
|
Author: nkukard
Date: 2006-03-06 09:35:39 +0000 (Mon, 06 Mar 2006)
New Revision: 85
Modified:
trunk/bwm_graph/graph.h
trunk/include/misc.h
Log:
* Moved argv & argc handling functions to misc.h
Modified: trunk/bwm_graph/graph.h
===================================================================
--- trunk/bwm_graph/graph.h 2006-03-06 09:30:54 UTC (rev 84)
+++ trunk/bwm_graph/graph.h 2006-03-06 09:35:39 UTC (rev 85)
@@ -30,31 +30,6 @@
#include "common.h"
-// Macro to add a double -a .... parameter to a char ** array
-#define ADD_DOUBLE_PARAM(paramList,numParams,param,format,...) \
- { \
- int i; \
- \
- numParams += 2; \
- paramList = (char **) realloc(paramList, numParams * sizeof(char*)); \
- for (i = numParams - 2; i < numParams; i++) \
- paramList[i] = malloc0(BUFFER_SIZE); \
- strcpy(paramList[numParams - 2], param); \
- snprintf(paramList[numParams - 1], BUFFER_SIZE, format, __VA_ARGS__); \
- }
-
-// Macro to add a single -a parameter to a char ** array
-#define ADD_SINGLE_PARAM(paramList,numParams,format,...) \
- { \
- int i; \
- \
- numParams += 1; \
- paramList = (char **) realloc(paramList, numParams * sizeof(char*)); \
- for (i = numParams - 1; i < numParams; i++) \
- paramList[i] = malloc0(BUFFER_SIZE); \
- snprintf(paramList[numParams - 1], BUFFER_SIZE, format, __VA_ARGS__); \
- }
-
// Macro to decide the correct date and time
#define STR_TIME(time_p,buffer_size,buffer) \
{ \
Modified: trunk/include/misc.h
===================================================================
--- trunk/include/misc.h 2006-03-06 09:30:54 UTC (rev 84)
+++ trunk/include/misc.h 2006-03-06 09:35:39 UTC (rev 85)
@@ -26,6 +26,32 @@
#define _MISC_H
+// Macro to add a double -a .... parameter to a char ** array
+#define ADD_DOUBLE_PARAM(paramList,numParams,param,format,...) \
+ { \
+ int i; \
+ \
+ numParams += 2; \
+ paramList = (char **) realloc(paramList, numParams * sizeof(char*)); \
+ for (i = numParams - 2; i < numParams; i++) \
+ paramList[i] = malloc0(BUFFER_SIZE); \
+ strcpy(paramList[numParams - 2], param); \
+ snprintf(paramList[numParams - 1], BUFFER_SIZE, format, __VA_ARGS__); \
+ }
+
+// Macro to add a single -a parameter to a char ** array
+#define ADD_SINGLE_PARAM(paramList,numParams,format,...) \
+ { \
+ int i; \
+ \
+ numParams += 1; \
+ paramList = (char **) realloc(paramList, numParams * sizeof(char*)); \
+ for (i = numParams - 1; i < numParams; i++) \
+ paramList[i] = malloc0(BUFFER_SIZE); \
+ snprintf(paramList[numParams - 1], BUFFER_SIZE, format, __VA_ARGS__); \
+ }
+
+
// Convert everything between start & end into an integer
int aptrtoi(char *start, char *end);
|
|
From: <sv...@li...> - 2006-02-19 13:12:07
|
Author: nkukard
Date: 2006-02-19 13:11:12 +0000 (Sun, 19 Feb 2006)
New Revision: 83
Added:
tags/v0.2.3/
Modified:
tags/v0.2.3/aclocal.m4
tags/v0.2.3/configure
tags/v0.2.3/configure.ac
Log:
* Tagging of v0.2.3 release
Copied: tags/v0.2.3 (from rev 82, trunk)
Modified: tags/v0.2.3/aclocal.m4
===================================================================
--- trunk/aclocal.m4 2006-02-19 12:46:39 UTC (rev 82)
+++ tags/v0.2.3/aclocal.m4 2006-02-19 13:11:12 UTC (rev 83)
@@ -229,7 +229,7 @@
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-# serial 47 AC_PROG_LIBTOOL
+# serial 48 AC_PROG_LIBTOOL
# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
@@ -379,6 +379,7 @@
test -z "$AS" && AS=as
test -z "$CC" && CC=cc
test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
test -z "$DLLTOOL" && DLLTOOL=dlltool
test -z "$LD" && LD=ld
test -z "$LN_S" && LN_S="ln -s"
@@ -398,10 +399,10 @@
if test -n "$RANLIB"; then
case $host_os in
openbsd*)
- old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
;;
*)
- old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
;;
esac
old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
@@ -449,6 +450,9 @@
# If no C compiler was specified, use CC.
LTCC=${LTCC-"$CC"}
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
# Allow CC to be a program name with arguments.
compiler=$CC
])# _LT_AC_SYS_COMPILER
@@ -477,7 +481,7 @@
AC_DEFUN([_LT_COMPILER_BOILERPLATE],
[ac_outfile=conftest.$ac_objext
printf "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d' >conftest.err
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
_lt_compiler_boilerplate=`cat conftest.err`
$rm conftest*
])# _LT_COMPILER_BOILERPLATE
@@ -490,7 +494,7 @@
AC_DEFUN([_LT_LINKER_BOILERPLATE],
[ac_outfile=conftest.$ac_objext
printf "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d' >conftest.err
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
_lt_linker_boilerplate=`cat conftest.err`
$rm conftest*
])# _LT_LINKER_BOILERPLATE
@@ -796,6 +800,22 @@
CFLAGS="$SAVE_CFLAGS"
fi
;;
+sparc*-*solaris*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
+ *) LD="${LD-ld} -64" ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
@@ -838,9 +858,9 @@
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
- $echo "X$_lt_compiler_boilerplate" | $Xsed >conftest.exp
- $SED '/^$/d' conftest.err >conftest.er2
- if test ! -s conftest.err || diff conftest.exp conftest.er2 >/dev/null; then
+ $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
$2=yes
fi
fi
@@ -871,8 +891,8 @@
if test -s conftest.err; then
# Append any errors to the config.log.
cat conftest.err 1>&AS_MESSAGE_LOG_FD
- $echo "X$_lt_linker_boilerplate" | $Xsed > conftest.exp
- $SED '/^$/d' conftest.err >conftest.er2
+ $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
if diff conftest.exp conftest.er2 >/dev/null; then
$2=yes
fi
@@ -947,6 +967,12 @@
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
osf*)
# Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
# due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
@@ -960,6 +986,17 @@
esac
fi
;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
*)
# If test is not a shell built-in, we'll probably end up computing a
# maximum length that is only half of the actual maximum length, but
@@ -991,7 +1028,7 @@
# _LT_AC_CHECK_DLFCN
-# --------------------
+# ------------------
AC_DEFUN([_LT_AC_CHECK_DLFCN],
[AC_CHECK_HEADERS(dlfcn.h)dnl
])# _LT_AC_CHECK_DLFCN
@@ -999,7 +1036,7 @@
# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ------------------------------------------------------------------
+# ---------------------------------------------------------------------
AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
if test "$cross_compiling" = yes; then :
@@ -1065,6 +1102,8 @@
else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
/* dlclose (self); */
}
+ else
+ puts (dlerror ());
exit (status);
}]
@@ -1075,7 +1114,7 @@
case x$lt_status in
x$lt_dlno_uscore) $1 ;;
x$lt_dlneed_uscore) $2 ;;
- x$lt_unknown|x*) $3 ;;
+ x$lt_dlunknown|x*) $3 ;;
esac
else :
# compilation failed
@@ -1087,7 +1126,7 @@
# AC_LIBTOOL_DLOPEN_SELF
-# -------------------
+# ----------------------
AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
if test "x$enable_dlopen" != xyes; then
@@ -1158,7 +1197,7 @@
test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
save_LDFLAGS="$LDFLAGS"
- eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
save_LIBS="$LIBS"
LIBS="$lt_cv_dlopen_libs $LIBS"
@@ -1171,7 +1210,7 @@
])
if test "x$lt_cv_dlopen_self" = xyes; then
- LDFLAGS="$LDFLAGS $link_static_flag"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
lt_cv_dlopen_self_static, [dnl
_LT_AC_TRY_DLOPEN_SELF(
@@ -1231,9 +1270,9 @@
then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
- $echo "X$_lt_compiler_boilerplate" | $Xsed > out/conftest.exp
- $SED '/^$/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.err || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
fi
fi
@@ -1618,10 +1657,15 @@
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
;;
- *) # from 3.2 on
+ freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
;;
+ freebsd*) # from 4.6 on
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
esac
;;
@@ -1681,6 +1725,18 @@
postinstall_cmds='chmod 555 $lib'
;;
+interix3*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=nonstopux ;;
@@ -1802,6 +1858,7 @@
openbsd*)
version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
need_lib_prefix=no
# Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
case $host_os in
@@ -1845,13 +1902,6 @@
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
;;
-sco3.2v5*)
- version_type=osf
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
solaris*)
version_type=linux
need_lib_prefix=no
@@ -1877,7 +1927,7 @@
need_version=yes
;;
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
version_type=linux
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
@@ -1910,6 +1960,29 @@
fi
;;
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=freebsd-elf
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ if test "$with_gnu_ld" = yes; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ shlibpath_overrides_runpath=no
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ shlibpath_overrides_runpath=yes
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
uts4*)
version_type=linux
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
@@ -1923,6 +1996,11 @@
esac
AC_MSG_RESULT([$dynamic_linker])
test "$dynamic_linker" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
@@ -1947,6 +2025,9 @@
AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
fi
fi
+ if test -z "$LTCFLAGS"; then
+ eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`"
+ fi
# Extract list of available tagged configurations in $ofile.
# Note that this assumes the entire list is on one line.
@@ -2075,7 +2156,7 @@
# AC_DISABLE_SHARED
# -----------------
-#- set the default shared flag to --disable-shared
+# set the default shared flag to --disable-shared
AC_DEFUN([AC_DISABLE_SHARED],
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_SHARED(no)
@@ -2383,7 +2464,7 @@
case $host_os in
darwin*)
if test "$GCC" = yes; then
- reload_cmds='$CC -nostdlib ${wl}-r -o $output$reload_objs'
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
else
reload_cmds='$LD$reload_flag -o $output$reload_objs'
fi
@@ -2483,6 +2564,11 @@
esac
;;
+interix3*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+ ;;
+
irix5* | irix6* | nonstopux*)
case $LD in
*-32|*"-32 ") libmagic=32-bit;;
@@ -2528,15 +2614,11 @@
lt_cv_deplibs_check_method=pass_all
;;
-sco3.2v5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
solaris*)
lt_cv_deplibs_check_method=pass_all
;;
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
case $host_vendor in
motorola)
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
@@ -2557,10 +2639,13 @@
siemens)
lt_cv_deplibs_check_method=pass_all
;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
esac
;;
-sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*)
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
lt_cv_deplibs_check_method=pass_all
;;
esac
@@ -2580,36 +2665,43 @@
# Let the user override the test.
lt_cv_path_NM="$NM"
else
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/${ac_tool_prefix}nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
break
;;
*)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
;;
esac
- esac
- fi
+ fi
+ done
+ IFS="$lt_save_ifs"
done
- IFS="$lt_save_ifs"
test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
fi])
NM="$lt_cv_path_NM"
@@ -2715,7 +2807,7 @@
])# _LT_AC_LANG_CXX
# _LT_AC_PROG_CXXCPP
-# ---------------
+# ------------------
AC_DEFUN([_LT_AC_PROG_CXXCPP],
[
AC_REQUIRE([AC_PROG_CXX])
@@ -2764,7 +2856,7 @@
# AC_LIBTOOL_RC
-# --------------
+# -------------
# enable support for Windows resource files
AC_DEFUN([AC_LIBTOOL_RC],
[AC_REQUIRE([LT_AC_PROG_RC])
@@ -2801,37 +2893,6 @@
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
-#
-# Check for any special shared library compilation flags.
-#
-_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
-if test "$GCC" = no; then
- case $host_os in
- sco3.2v5*)
- _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
- ;;
- esac
-fi
-if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
- AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
- if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[ ]]" >/dev/null; then :
- else
- AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
- _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
- fi
-fi
-
-
-#
-# Check to make sure the static flag actually works.
-#
-AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
- _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
- $_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
- [],
- [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
-
-
AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
AC_LIBTOOL_PROG_COMPILER_PIC($1)
AC_LIBTOOL_PROG_CC_C_O($1)
@@ -2840,9 +2901,9 @@
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
AC_LIBTOOL_SYS_LIB_STRIP
-AC_LIBTOOL_DLOPEN_SELF($1)
+AC_LIBTOOL_DLOPEN_SELF
-# Report which librarie types wil actually be built
+# Report which library types will actually be built
AC_MSG_CHECKING([if libtool supports shared libraries])
AC_MSG_RESULT([$can_build_shared])
@@ -2901,6 +2962,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
_LT_AC_TAGVAR(hardcode_automatic, $1)=no
_LT_AC_TAGVAR(module_cmds, $1)=
_LT_AC_TAGVAR(module_expsym_cmds, $1)=
@@ -2928,7 +2990,7 @@
lt_simple_compile_test_code="int some_variable = 0;\n"
# Code to be used in simple link tests
-lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
+lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n'
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_AC_SYS_COMPILER
@@ -2947,12 +3009,12 @@
if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
else
- unset lt_cv_prog_gnu_ld
+ $as_unset lt_cv_prog_gnu_ld
fi
if test -n "${lt_cv_path_LDCXX+set}"; then
lt_cv_path_LD=$lt_cv_path_LDCXX
else
- unset lt_cv_path_LD
+ $as_unset lt_cv_path_LD
fi
test -z "${LDCXX+set}" || LD=$LDCXX
CC=${CXX-"c++"}
@@ -3047,6 +3109,7 @@
;;
esac
done
+ ;;
esac
exp_sym_flag='-bexport'
@@ -3084,6 +3147,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
fi
+ ;;
esac
shared_flag='-shared'
if test "$aix_use_runtimelinking" = yes; then
@@ -3115,12 +3179,12 @@
_LT_AC_SYS_LIBPATH_AIX
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
else
# Determine the default libpath from the value encoded in an empty executable.
_LT_AC_SYS_LIBPATH_AIX
@@ -3129,16 +3193,26 @@
# -berok will link without error, but may produce a broken library.
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # -bexpall does not export symbols beginning with underscore (_)
- _LT_AC_TAGVAR(always_export_symbols, $1)=yes
# Exported symbols can be pulled into shared objects from archives
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared libraries.
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
+
+ beos*)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jr...@be...> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
chorus*)
case $cc_basename in
*)
@@ -3148,7 +3222,6 @@
esac
;;
-
cygwin* | mingw* | pw32*)
# _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
@@ -3158,7 +3231,7 @@
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is; otherwise, prepend...
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
@@ -3167,7 +3240,7 @@
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
else
_LT_AC_TAGVAR(ld_shlibs, $1)=no
fi
@@ -3304,34 +3377,23 @@
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
case $host_cpu in
- hppa*64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ hppa*64*|ia64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
;;
- ia64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- ;;
*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
;;
esac
fi
case $host_cpu in
- hppa*64*)
+ hppa*64*|ia64*)
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
- ia64*)
- _LT_AC_TAGVAR(hardcode_direct, $1)=no
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
*)
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
@@ -3347,9 +3409,12 @@
;;
aCC*)
case $host_cpu in
- hppa*64*|ia64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
+ hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
@@ -3368,9 +3433,12 @@
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
case $host_cpu in
- ia64*|hppa*64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
+ hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
@@ -3383,6 +3451,20 @@
;;
esac
;;
+ interix3*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
irix5* | irix6*)
case $cc_basename in
CC*)
@@ -3665,19 +3747,6 @@
# FIXME: insert proper C++ library support
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
- sco*)
- _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
sunos4*)
case $cc_basename in
CC*)
@@ -3770,9 +3839,60 @@
;;
esac
;;
- sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
;;
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ # So that behaviour is only enabled if SCOABSPATH is set to a
+ # non-empty value in the environment. Most likely only useful for
+ # creating official distributions of packages.
+ # This is a hack until libtool officially supports absolute path
+ # names for shared libraries.
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
tandem*)
case $cc_basename in
NCC*)
@@ -3808,8 +3928,6 @@
AC_LIBTOOL_PROG_LD_SHLIBS($1)
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
-AC_LIBTOOL_SYS_LIB_STRIP
-AC_LIBTOOL_DLOPEN_SELF($1)
AC_LIBTOOL_CONFIG($1)
@@ -3827,7 +3945,7 @@
])# AC_LIBTOOL_LANG_CXX_CONFIG
# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
-# ------------------------
+# ------------------------------------
# Figure out "hidden" library dependencies from verbose
# compiler output when linking a shared library.
# Parse the compiler output and extract the necessary
@@ -3960,6 +4078,14 @@
# PORTME: override above test on systems where it is broken
ifelse([$1],[CXX],
[case $host_os in
+interix3*)
+ # Interix 3.5 installs completely hosed .la files for C++, so rather than
+ # hack all around it, let's just trust "g++" to DTRT.
+ _LT_AC_TAGVAR(predep_objects,$1)=
+ _LT_AC_TAGVAR(postdep_objects,$1)=
+ _LT_AC_TAGVAR(postdeps,$1)=
+ ;;
+
solaris*)
case $cc_basename in
CC*)
@@ -3969,6 +4095,7 @@
_LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
;;
esac
+ ;;
esac
])
@@ -3978,7 +4105,7 @@
])# AC_LIBTOOL_POSTDEP_PREDEP
# AC_LIBTOOL_LANG_F77_CONFIG
-# ------------------------
+# --------------------------
# Ensure that the configuration vars for the C compiler are
# suitably defined. Those variables are subsequently used by
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
@@ -4062,8 +4189,6 @@
test "$enable_shared" = yes || enable_static=yes
AC_MSG_RESULT([$enable_static])
-test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
_LT_AC_TAGVAR(GCC, $1)="$G77"
_LT_AC_TAGVAR(LD, $1)="$LD"
@@ -4073,9 +4198,7 @@
AC_LIBTOOL_PROG_LD_SHLIBS($1)
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
-AC_LIBTOOL_SYS_LIB_STRIP
-
AC_LIBTOOL_CONFIG($1)
AC_LANG_POP
@@ -4131,8 +4254,6 @@
AC_LIBTOOL_PROG_LD_SHLIBS($1)
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
-AC_LIBTOOL_SYS_LIB_STRIP
-AC_LIBTOOL_DLOPEN_SELF($1)
AC_LIBTOOL_CONFIG($1)
@@ -4142,7 +4263,7 @@
# AC_LIBTOOL_LANG_RC_CONFIG
-# --------------------------
+# -------------------------
# Ensure that the configuration vars for the Windows resource compiler are
# suitably defined. Those variables are subsequently used by
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
@@ -4205,7 +4326,7 @@
# Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script.
- for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \
+ for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC LTCFLAGS NM \
SED SHELL STRIP \
libname_spec library_names_spec soname_spec extract_expsyms_cmds \
old_striplib striplib file_magic_cmd finish_cmds finish_eval \
@@ -4374,6 +4495,9 @@
# A C compiler.
LTCC=$lt_LTCC
+# LTCC compiler flags.
+LTCFLAGS=$lt_LTCFLAGS
+
# A language-specific compiler.
CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
@@ -4747,9 +4871,18 @@
osf*)
symcode='[[BCDEGQRST]]'
;;
-solaris* | sysv5*)
+solaris*)
symcode='[[BDRT]]'
;;
+sco3.2v5*)
+ symcode='[[DT]]'
+ ;;
+sysv4.2uw2*)
+ symcode='[[DT]]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[[ABDT]]'
+ ;;
sysv4)
symcode='[[DFNSTU]]'
;;
@@ -4932,6 +5065,10 @@
# DJGPP does not support shared libraries at all
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
;;
+ interix3*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
sysv4*MP*)
if test -d /usr/nec; then
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
@@ -5001,14 +5138,14 @@
case $cc_basename in
CC*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
if test "$host_cpu" != ia64; then
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
fi
;;
aCC*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
case $host_cpu in
hppa*64*|ia64*)
# +Z the default
@@ -5022,6 +5159,10 @@
;;
esac
;;
+ interix*)
+ # This is c89, which is MS Visual C++ (no shared libs)
+ # Anyone wants to do a port?
+ ;;
irix5* | irix6* | nonstopux*)
case $cc_basename in
CC*)
@@ -5101,15 +5242,6 @@
;;
psos*)
;;
- sco*)
- case $cc_basename in
- CC*)
- _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- *)
- ;;
- esac
- ;;
solaris*)
case $cc_basename in
CC*)
@@ -5151,7 +5283,14 @@
;;
esac
;;
- unixware*)
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ case $cc_basename in
+ CC*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
;;
vxworks*)
;;
@@ -5198,6 +5337,11 @@
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
;;
+ interix3*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
msdosdjgpp*)
# Just because we use GCC doesn't mean we suddenly get shared libraries
# on systems that don't support them.
@@ -5312,11 +5456,6 @@
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
- sco3.2v5*)
- _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn'
- ;;
-
solaris*)
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -5334,7 +5473,7 @@
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ sysv4 | sysv4.2uw2* | sysv4.3*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -5347,6 +5486,12 @@
fi
;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
unicos*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
@@ -5388,6 +5533,16 @@
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])"
;;
esac
+
+#
+# Check to make sure the static flag actually works.
+#
+wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\"
+AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+ _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
+ $lt_tmp_static_flag,
+ [],
+ [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
])
@@ -5466,6 +5621,10 @@
with_gnu_ld=no
fi
;;
+ interix*)
+ # we just hope/assume this is gcc and not c89 (= MSVC++)
+ with_gnu_ld=yes
+ ;;
openbsd*)
with_gnu_ld=no
;;
@@ -5550,7 +5709,7 @@
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is; otherwise, prepend...
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
@@ -5559,12 +5718,27 @@
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
else
_LT_AC_TAGVAR(ld_shlibs, $1)=no
fi
;;
+ interix3*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
linux*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
tmp_addflag=
@@ -5606,7 +5780,7 @@
fi
;;
- solaris* | sysv5*)
+ solaris*)
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
_LT_AC_TAGVAR(ld_shlibs, $1)=no
cat <<EOF 1>&2
@@ -5627,6 +5801,33 @@
fi
;;
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
sunos4*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
wlarc=
@@ -5660,7 +5861,7 @@
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
- if test "$GCC" = yes && test -z "$link_static_flag"; then
+ if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
# Neither direct hardcoding nor static linking is supported with a
# broken collect2.
_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
@@ -5694,6 +5895,7 @@
break
fi
done
+ ;;
esac
exp_sym_flag='-bexport'
@@ -5731,6 +5933,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
fi
+ ;;
esac
shared_flag='-shared'
if test "$aix_use_runtimelinking" = yes; then
@@ -5743,11 +5946,11 @@
# chokes on -Wl,-G. The following line is correct:
shared_flag='-G'
else
- if test "$aix_use_runtimelinking" = yes; then
+ if test "$aix_use_runtimelinking" = yes; then
shared_flag='${wl}-G'
else
shared_flag='${wl}-bM:SRE'
- fi
+ fi
fi
fi
@@ -5761,12 +5964,12 @@
# Determine the default libpath from the value encoded in an empty executable.
_LT_AC_SYS_LIBPATH_AIX
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
else
# Determine the default libpath from the value encoded in an empty executable.
_LT_AC_SYS_LIBPATH_AIX
@@ -5775,13 +5978,11 @@
# -berok will link without error, but may produce a broken library.
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # -bexpall does not export symbols beginning with underscore (_)
- _LT_AC_TAGVAR(always_export_symbols, $1)=yes
# Exported symbols can be pulled into shared objects from archives
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared libraries.
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
@@ -5922,47 +6123,62 @@
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
;;
- hpux10* | hpux11*)
+ hpux10*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ fi
+ ;;
+
+ hpux11*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
case $host_cpu in
- hppa*64*|ia64*)
+ hppa*64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
else
case $host_cpu in
- hppa*64*|ia64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
+ ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
fi
if test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
case $host_cpu in
- hppa*64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ hppa*64*|ia64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
- ia64*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_AC_TAGVAR(hardcode_direct, $1)=no
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
*)
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
@@ -6064,14 +6280,6 @@
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
;;
- sco3.2v5*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ;;
-
solaris*)
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
if test "$GCC" = yes; then
@@ -6157,36 +6365,45 @@
fi
;;
- sysv4.2uw2*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(hardcode_direct, $1)=yes
- _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
- hardcode_runpath_var=yes
- runpath_var=LD_RUN_PATH
- ;;
+ runpath_var='LD_RUN_PATH'
- sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
- _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
if test "$GCC" = yes; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
else
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
fi
- runpath_var='LD_RUN_PATH'
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
- sysv5*)
- _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
- # $CC -shared without GNU ld will not create a library from C++
- # object files and a static libstdc++, better avoid it by now
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
- _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
;;
uts4*)
@@ -6204,11 +6421,6 @@
AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
#
# Do we need to explicitly link libc?
#
@@ -6236,6 +6448,7 @@
libobjs=conftest.$ac_objext
deplibs=
wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
+ pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
compiler_flags=-v
linker_flags=-v
verstring=
Modified: tags/v0.2.3/configure
===================================================================
--- trunk/configure 2006-02-19 12:46:39 UTC (rev 82)
+++ tags/v0.2.3/configure 2006-02-19 13:11:12 UTC (rev 83)
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for bwm_tools 200602012132.
+# Generated by GNU Autoconf 2.59 for bwm_tools 0.2.3.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -421,8 +421,8 @@
# Identity of this package.
PACKAGE_NAME='bwm_tools'
PACKAGE_TARNAME='bwm_tools'
-PACKAGE_VERSION='200602012132'
-PACKAGE_STRING='bwm_tools 200602012132'
+PACKAGE_VERSION='0.2.3'
+PACKAGE_STRING='bwm_tools 0.2.3'
PACKAGE_BUGREPORT=''
ac_unique_file="bwm_monitor/bwm_monitor.c"
@@ -953,7 +953,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures bwm_tools 200602012132 to adapt to many kinds of systems.
+\`configure' configures bwm_tools 0.2.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1019,7 +1019,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of bwm_tools 200602012132:";;
+ short | recursive ) echo "Configuration of bwm_tools 0.2.3:";;
esac
cat <<\_ACEOF
@@ -1163,7 +1163,7 @@
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-bwm_tools configure 200602012132
+bwm_tools configure 0.2.3
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1177,7 +1177,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by bwm_tools $as_me 200602012132, which was
+It was created by bwm_tools $as_me 0.2.3, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1831,7 +1831,7 @@
# Define the identity of the package.
PACKAGE='bwm_tools'
- VERSION='200602012132'
+ VERSION='0.2.3'
cat >>confdefs.h <<_ACEOF
@@ -3470,7 +3470,7 @@
case $host_os in
darwin*)
if test "$GCC" = yes; then
- reload_cmds='$CC -nostdlib ${wl}-r -o $output$reload_objs'
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
else
reload_cmds='$LD$reload_flag -o $output$reload_objs'
fi
@@ -3486,36 +3486,43 @@
# Let the user override the test.
lt_cv_path_NM="$NM"
else
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/${ac_tool_prefix}nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
break
;;
*)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
;;
esac
- esac
- fi
+ fi
+ done
+ IFS="$lt_save_ifs"
done
- IFS="$lt_save_ifs"
test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
fi
fi
@@ -3623,6 +3630,11 @@
esac
;;
+interix3*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
+ ;;
+
irix5* | irix6* | nonstopux*)
case $LD in
*-32|*"-32 ") libmagic=32-bit;;
@@ -3668,15 +3680,11 @@
lt_cv_deplibs_check_method=pass_all
;;
-sco3.2v5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
solaris*)
lt_cv_deplibs_check_method=pass_all
;;
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
case $host_vendor in
motorola)
lt_cv_deplibs_check_method='file_magic ELF [0...
[truncated message content] |
|
From: <sv...@li...> - 2006-02-19 13:01:12
|
Author: nkukard Date: 2006-02-19 12:46:39 +0000 (Sun, 19 Feb 2006) New Revision: 82 Modified: trunk/bwm_graph/graph.c Log: * Fixed hyperlink at bottom of graph Modified: trunk/bwm_graph/graph.c =================================================================== --- trunk/bwm_graph/graph.c 2006-02-01 19:45:36 UTC (rev 81) +++ trunk/bwm_graph/graph.c 2006-02-19 12:46:39 UTC (rev 82) @@ -624,7 +624,7 @@ // Check if we must display our cute little line if (hasOptions) ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","- * - * -"); - ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","Graph generated by bwm_tools v"PACKAGE_VERSION" (http://bwm-tools.lbsd.net)"); + ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","Graph generated by bwm_tools v"PACKAGE_VERSION" (http://bwm-tools.pr.linuxrulz.org)"); // Call rrd tool optind = 0; opterr = 0; |
|
From: <sv...@li...> - 2006-02-01 20:01:33
|
Author: nkukard Date: 2006-02-01 19:45:36 +0000 (Wed, 01 Feb 2006) New Revision: 81 Added: tags/200602012132/ Log: * Tagged recent changes as development snapshot Copied: tags/200602012132 (from rev 80, trunk) |
|
From: <sv...@li...> - 2005-09-17 13:01:07
|
Author: nkukard
Date: 2005-09-17 10:42:50 +0000 (Sat, 17 Sep 2005)
New Revision: 79
Added:
tags/v0.2.2/
Modified:
tags/v0.2.2/Makefile.in
tags/v0.2.2/aclocal.m4
tags/v0.2.2/bwm_firewall/Makefile.in
tags/v0.2.2/bwm_graph/Makefile.in
tags/v0.2.2/bwm_monitor/Makefile.in
tags/v0.2.2/bwmd/Makefile.in
tags/v0.2.2/configure
tags/v0.2.2/configure.ac
tags/v0.2.2/doc/Makefile.in
tags/v0.2.2/lib/Makefile.in
Log:
* Tagged as v0.2.2
Copied: tags/v0.2.2 (from rev 78, trunk)
Modified: tags/v0.2.2/Makefile.in
===================================================================
--- trunk/Makefile.in 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/Makefile.in 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.1 from Makefile.am.
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004 Free Software Foundation, Inc.
+# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -274,7 +274,13 @@
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
- @set fnord $$MAKEFLAGS; amf=$$2; \
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -286,7 +292,7 @@
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ || eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -294,7 +300,13 @@
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
- @set fnord $$MAKEFLAGS; amf=$$2; \
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@@ -315,7 +327,7 @@
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ || eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
Modified: tags/v0.2.2/aclocal.m4
===================================================================
--- trunk/aclocal.m4 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/aclocal.m4 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.9.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.9.5 -*- Autoconf -*-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -407,6 +407,8 @@
old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
fi
+cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
+
# Only perform the check for file, if the check method requires it
case $deplibs_check_method in
file_magic*)
@@ -524,7 +526,7 @@
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
-if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
if test -z "$ECHO"; then
if test "X${echo_test_string+set}" != Xset; then
@@ -883,11 +885,25 @@
lt_cv_sys_max_cmd_len=8192;
;;
+ netbsd* | freebsd* | openbsd* | darwin* )
+ # This has been around since 386BSD, at least. Likely further.
+ if test -x /sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+ elif test -x /usr/sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+ else
+ lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
+ fi
+ # And add a safety zone
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ ;;
+
*)
# If test is not a shell built-in, we'll probably end up computing a
# maximum length that is only half of the actual maximum length, but
# we can't tell.
- while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+ while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
= "XX$teststring") >/dev/null 2>&1 &&
new_result=`expr "X$teststring" : ".*" 2>&1` &&
lt_cv_sys_max_cmd_len=$new_result &&
@@ -1221,8 +1237,8 @@
[AC_MSG_CHECKING([how to hardcode library paths into programs])
_LT_AC_TAGVAR(hardcode_action, $1)=
if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
- test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \
- test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then
+ test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \
+ test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
# We can hardcode non-existant directories.
if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
@@ -1389,7 +1405,7 @@
shlibpath_var=LIBRARY_PATH
;;
-bsdi4*)
+bsdi[[45]]*)
version_type=linux
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
@@ -1713,7 +1729,7 @@
openbsd*)
version_type=sunos
need_lib_prefix=no
- need_version=yes
+ need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH
@@ -2284,6 +2300,15 @@
*) reload_flag=" $reload_flag" ;;
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$CC -nostdlib ${wl}-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
])# AC_PROG_LD_RELOAD_FLAG
@@ -2317,7 +2342,7 @@
lt_cv_deplibs_check_method=pass_all
;;
-bsdi4*)
+bsdi[[45]]*)
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
lt_cv_file_magic_cmd='/usr/bin/file -L'
lt_cv_file_magic_test_file=/shlib/libc.so
@@ -2421,12 +2446,10 @@
;;
openbsd*)
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
else
- lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
fi
;;
@@ -2755,43 +2778,6 @@
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
test "$enable_shared" = yes && enable_static=no
fi
- ;;
- darwin* | rhapsody*)
- if test "$GCC" = yes; then
- _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
- case "$host_os" in
- rhapsody* | darwin1.[[012]])
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
- ;;
- *) # Darwin 1.3 on
- if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
- else
- case ${MACOSX_DEPLOYMENT_TARGET} in
- 10.[[012]])
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
- ;;
- 10.*)
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup'
- ;;
- esac
- fi
- ;;
- esac
- output_verbose_link_cmd='echo'
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring'
- _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- _LT_AC_TAGVAR(hardcode_direct, $1)=no
- _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
- _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
- else
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
- fi
;;
esac
AC_MSG_RESULT([$enable_shared])
@@ -3069,6 +3055,7 @@
esac
;;
+
cygwin* | mingw* | pw32*)
# _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
@@ -3092,58 +3079,69 @@
_LT_AC_TAGVAR(ld_shlibs, $1)=no
fi
;;
+ darwin* | rhapsody*)
+ case "$host_os" in
+ rhapsody* | darwin1.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
+ ;;
+ *) # Darwin 1.3 on
+ if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
+ else
+ case ${MACOSX_DEPLOYMENT_TARGET} in
+ 10.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
+ ;;
+ 10.*)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
- darwin* | rhapsody*)
- if test "$GXX" = yes; then
- _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
- case "$host_os" in
- rhapsody* | darwin1.[[012]])
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
- ;;
- *) # Darwin 1.3 on
- if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
+ if test "$GXX" = yes ; then
+ lt_int_apple_cc_single_mod=no
+ output_verbose_link_cmd='echo'
+ if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
+ lt_int_apple_cc_single_mod=yes
+ fi
+ if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
else
- case ${MACOSX_DEPLOYMENT_TARGET} in
- 10.[[012]])
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
- ;;
- 10.*)
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup'
- ;;
- esac
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
+ fi
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ else
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ else
+ case "$cc_basename" in
+ xlc*)
+ output_verbose_link_cmd='echo'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ ;;
+ *)
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
fi
- ;;
- esac
- lt_int_apple_cc_single_mod=no
- output_verbose_link_cmd='echo'
- if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
- lt_int_apple_cc_single_mod=yes
- fi
- if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
- else
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
- fi
- _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
+ ;;
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
- if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- else
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- _LT_AC_TAGVAR(hardcode_direct, $1)=no
- _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
- _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
- else
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
dgux*)
case $cc_basename in
ec++)
@@ -3348,9 +3346,20 @@
icpc)
# Intel C++
with_gnu_ld=yes
+ # version 8.0 and above of icpc choke on multiply defined symbols
+ # if we add $predep_objects and $postdep_objects, however 7.1 and
+ # earlier do not add the objects themselves.
+ case `$CC -V 2>&1` in
+ *"Version 7."*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ *) # Version 8.0 or newer
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ esac
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
@@ -3407,6 +3416,20 @@
# Workaround some broken pre-1.5 toolchains
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
;;
+ openbsd2*)
+ # C++ shared libraries are fairly broken
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ openbsd*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ fi
+ output_verbose_link_cmd='echo'
+ ;;
osf3*)
case $cc_basename in
KCC)
@@ -4165,7 +4188,7 @@
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
-if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
# The names of the tagged configurations supported by this script.
available_tags=
@@ -4797,6 +4820,16 @@
;;
esac
;;
+ darwin*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ case "$cc_basename" in
+ xlc*)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ ;;
+ esac
+ ;;
dgux*)
case $cc_basename in
ec++)
@@ -5050,6 +5083,16 @@
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
fi
;;
+ darwin*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ case "$cc_basename" in
+ xlc*)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ ;;
+ esac
+ ;;
mingw* | pw32* | os2*)
# This hack is so that the source file can tell whether it is being
@@ -5551,7 +5594,7 @@
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
- bsdi4*)
+ bsdi[[45]]*)
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
;;
@@ -5577,52 +5620,52 @@
;;
darwin* | rhapsody*)
- if test "$GXX" = yes ; then
- _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
case "$host_os" in
- rhapsody* | darwin1.[[012]])
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
- ;;
- *) # Darwin 1.3 on
- if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
- else
- case ${MACOSX_DEPLOYMENT_TARGET} in
- 10.[[012]])
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
- ;;
- 10.*)
- _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup'
- ;;
- esac
- fi
- ;;
+ rhapsody* | darwin1.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
+ ;;
+ *) # Darwin 1.3 on
+ if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
+ else
+ case ${MACOSX_DEPLOYMENT_TARGET} in
+ 10.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
+ ;;
+ 10.*)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
+ ;;
+ esac
+ fi
+ ;;
esac
- lt_int_apple_cc_single_mod=no
- output_verbose_link_cmd='echo'
- if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
- lt_int_apple_cc_single_mod=yes
- fi
- if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
- else
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
- fi
- _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
- if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- else
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ if test "$GCC" = yes ; then
+ output_verbose_link_cmd='echo'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
- _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ case "$cc_basename" in
+ xlc*)
+ output_verbose_link_cmd='echo'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ ;;
+ *)
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
fi
;;
@@ -5767,6 +5810,7 @@
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
else
@@ -6130,8 +6174,8 @@
fi
done
done
-SED=$lt_cv_path_SED
])
+SED=$lt_cv_path_SED
AC_MSG_RESULT([$SED])
])
@@ -6324,24 +6368,12 @@
rm -f conf.xmltest
])
-# -*- Autoconf -*-
-# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
-# Generated from amversion.in; do not edit by hand.
+# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
# Automake X.Y traces this macro to ensure aclocal.m4 has been
@@ -6353,27 +6385,16 @@
# Call AM_AUTOMAKE_VERSION so it can be traced.
# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.9.1])])
+ [AM_AUTOMAKE_VERSION([1.9.5])])
-# AM_AUX_DIR_EXPAND
+# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
@@ -6419,27 +6440,17 @@
am_aux_dir=`cd $ac_aux_dir && pwd`
])
-# AM_CONDITIONAL -*- Autoconf -*-
+# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 7
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 6
-
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
@@ -6462,27 +6473,16 @@
Usually this means the macro was only invoked conditionally.]])
fi])])
-# serial 7 -*- Autoconf -*-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 8
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-
# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
# written in clear, in which case automake, when reading aclocal.m4,
# will think it sees a *use*, and therefore will trigger all it's
@@ -6490,7 +6490,6 @@
# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
# _AM_DEPENDENCIES(NAME)
# ----------------------
# See how the compiler implements dependency checking.
@@ -6630,28 +6629,17 @@
AC_SUBST([AMDEPBACKSLASH])
])
-# Generate code to set up dependency tracking. -*- Autoconf -*-
+# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
-# Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+#serial 3
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-#serial 2
-
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
@@ -6709,31 +6697,20 @@
[AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
])
-# Do all the work for Automake. -*- Autoconf -*-
+# Do all the work for Automake. -*- Autoconf -*-
-# This macro actually does too much some checks are only needed if
-# your package does certain things. But this isn't really a big deal.
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 12
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
+# This macro actually does too much. Some checks are only needed if
+# your package does certain things. But this isn't really a big deal.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 11
-
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
# -----------------------------------------------
@@ -6834,52 +6811,28 @@
done
echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
# AM_PROG_INSTALL_SH
# ------------------
# Define $install_sh.
-
-# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
install_sh=${install_sh-"$am_aux_dir/install-sh"}
AC_SUBST(install_sh)])
-# -*- Autoconf -*-
-# Copyright (C) 2003 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 2
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 1
-
# Check whether the underlying file-system supports filenames
# with a leading dot. For instance MS-DOS doesn't.
AC_DEFUN([AM_SET_LEADING_DOT],
@@ -6893,27 +6846,16 @@
rmdir .tst 2>/dev/null
AC_SUBST([am__leading_dot])])
-# Check to see how 'make' treats includes. -*- Autoconf -*-
+# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 3
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 2
-
# AM_MAKE_INCLUDE()
# -----------------
# Check to see how make treats includes.
@@ -6956,28 +6898,17 @@
rm -f confinc confmf
])
-# -*- Autoconf -*-
+# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# Copyright (C) 1997, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+# serial 4
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 3
-
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
AC_DEFUN([AM_MISSING_PROG],
@@ -7002,27 +6933,16 @@
fi
])
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
# AM_PROG_MKDIR_P
# ---------------
# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
-
-# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
+#
# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
# created by `make install' are always world readable, even if the
# installer happens to have an overly restrictive umask (e.g. 077).
@@ -7076,27 +6996,16 @@
fi
AC_SUBST([mkdir_p])])
-# Helper functions for option handling. -*- Autoconf -*-
+# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 3
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 2
-
# _AM_MANGLE_OPTION(NAME)
# -----------------------
AC_DEFUN([_AM_MANGLE_OPTION],
@@ -7120,29 +7029,17 @@
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+# Check to make sure that the build environment is sane. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
#
-# Check to make sure that the build environment is sane.
-#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# Copyright (C) 1996, 1997, 2000, 2001, 2003 Free Software Foundation, Inc.
+# serial 4
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 3
-
# AM_SANITY_CHECK
# ---------------
AC_DEFUN([AM_SANITY_CHECK],
@@ -7184,25 +7081,14 @@
fi
AC_MSG_RESULT(yes)])
-# AM_PROG_INSTALL_STRIP
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
+# AM_PROG_INSTALL_STRIP
+# ---------------------
# One issue with vendor `install' (even GNU) is that you can't
# specify the program used to strip binaries. This is especially
# annoying in cross-compiling environments, where the build's strip
@@ -7225,26 +7111,14 @@
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004 Free Software Foundation, Inc.
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# serial 2
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 1
-
-
# _AM_PROG_TAR(FORMAT)
# --------------------
# Check how to create a tarball in format FORMAT.
Modified: tags/v0.2.2/bwm_firewall/Makefile.in
===================================================================
--- trunk/bwm_firewall/Makefile.in 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/bwm_firewall/Makefile.in 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.1 from Makefile.am.
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004 Free Software Foundation, Inc.
+# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -77,11 +77,11 @@
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) \
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link --tag=CC $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(bwm_firewall_SOURCES)
DIST_SOURCES = $(bwm_firewall_SOURCES)
Modified: tags/v0.2.2/bwm_graph/Makefile.in
===================================================================
--- trunk/bwm_graph/Makefile.in 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/bwm_graph/Makefile.in 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.1 from Makefile.am.
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004 Free Software Foundation, Inc.
+# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -78,11 +78,11 @@
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) \
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link --tag=CC $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(bwm_graph_SOURCES)
DIST_SOURCES = $(bwm_graph_SOURCES)
Modified: tags/v0.2.2/bwm_monitor/Makefile.in
===================================================================
--- trunk/bwm_monitor/Makefile.in 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/bwm_monitor/Makefile.in 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.1 from Makefile.am.
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004 Free Software Foundation, Inc.
+# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -78,11 +78,11 @@
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) \
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link --tag=CC $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(bwm_monitor_SOURCES)
DIST_SOURCES = $(bwm_monitor_SOURCES)
Modified: tags/v0.2.2/bwmd/Makefile.in
===================================================================
--- trunk/bwmd/Makefile.in 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/bwmd/Makefile.in 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.1 from Makefile.am.
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004 Free Software Foundation, Inc.
+# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -80,11 +80,11 @@
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) \
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link --tag=CC $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(bwmd_SOURCES)
DIST_SOURCES = $(bwmd_SOURCES)
Modified: tags/v0.2.2/configure
===================================================================
--- trunk/configure 2005-07-10 11:05:54 UTC (rev 78)
+++ tags/v0.2.2/configure 2005-09-17 10:42:50 UTC (rev 79)
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for bwm_tools devel.
+# Generated by GNU Autoconf 2.59 for bwm_tools 0.2.2.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -278,7 +278,7 @@
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
-if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
if test -z "$ECHO"; then
if test "X${echo_test_string+set}" != Xset; then
@@ -421,8 +421,8 @@
# Identity of this package.
PACKAGE_NAME='bwm_tools'
PACKAGE_TARNAME='bwm_tools'
-PACKAGE_VERSION='devel'
-PACKAGE_STRING='bwm_tools devel'
+PACKAGE_VERSION='0.2.2'
+PACKAGE_STRING='bwm_tools 0.2.2'
PACKAGE_BUGREPORT=''
ac_unique_file="bwm_monitor/bwm_monitor.c"
@@ -953,7 +953,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures bwm_tools devel to adapt to many kinds of systems.
+\`configure' configures bwm_tools 0.2.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1019,7 +1019,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of bwm_tools devel:";;
+ short | recursive ) echo "Configuration of bwm_tools 0.2.2:";;
esac
cat <<\_ACEOF
@@ -1163,7 +1163,7 @@
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-bwm_tools configure devel
+bwm_tools configure 0.2.2
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1177,7 +1177,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by bwm_tools $as_me devel, which was
+It was created by bwm_tools $as_me 0.2.2, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1831,7 +1831,7 @@
# Define the identity of the package.
PACKAGE='bwm_tools'
- VERSION='devel'
+ VERSION='0.2.2'
cat >>confdefs.h <<_ACEOF
@@ -3323,10 +3323,10 @@
fi
done
done
-SED=$lt_cv_path_SED
fi
+SED=$lt_cv_path_SED
echo "$as_me:$LINENO: result: $SED" >&5
echo "${ECHO_T}$SED" >&6
@@ -3467,6 +3467,15 @@
*) reload_flag=" $reload_flag" ;;
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$CC -nostdlib ${wl}-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5
echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6
@@ -3553,7 +3562,7 @@
lt_cv_deplibs_check_method=pass_all
;;
-bsdi4*)
+bsdi[45]*)
lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
lt_cv_file_magic_cmd='/usr/bin/file -L'
lt_cv_file_magic_test_file=/shlib/libc.so
@@ -3657,12 +3666,10 @@
;;
openbsd*)
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
else
- lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
fi
;;
@@ -3755,7 +3762,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 3758 "configure"' > conftest.$ac_ext
+ echo '#line 3765 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -5327,7 +5334,7 @@
# Provide some information about the compiler.
-echo "$as_me:5330:" \
+echo "$as_me:5337:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -5517,11 +5524,25 @@
lt_cv_sys_max_cmd_len=8192;
;;
+ netbsd* | freebsd* | openbsd* | darwin* )
+ # This has been ...
[truncated message content] |
|
From: <sv...@li...> - 2005-07-10 13:01:05
|
Author: nkukard
Date: 2005-07-10 11:05:54 +0000 (Sun, 10 Jul 2005)
New Revision: 78
Modified:
trunk/bwm_firewall/bwm_firewall.c
trunk/bwmd/flow.c
trunk/bwmd/ipq.c
Log:
* Removed ECN support, seems to of caused problems
* Cosmetic fixes in bwm_firewall
Modified: trunk/bwm_firewall/bwm_firewall.c
===================================================================
--- trunk/bwm_firewall/bwm_firewall.c 2005-06-20 08:18:02 UTC (rev 77)
+++ trunk/bwm_firewall/bwm_firewall.c 2005-07-10 11:05:54 UTC (rev 78)
@@ -280,6 +280,8 @@
piptables_restore = popen("iptables-restore", "w");
if (!piptables_restore)
fprintf(stderr, "ERROR: Can not find iptables-restore in $PATH, skipping load\n");
+
+ printf("Loading firewall configuration directly into kernel...\n");
}
buffer = (char *) malloc0(BUFFER_SIZE);
@@ -413,7 +415,7 @@
// Write out firewall
if (fw)
{
- printf("Writing IPTables configuration to \"%s\"...\n",outputFile);
+ printf("Processing firewall/shaping configuration...\n");
res = writeFirewall(fw,outputFile,loadFirewall);
}
Modified: trunk/bwmd/flow.c
===================================================================
--- trunk/bwmd/flow.c 2005-06-20 08:18:02 UTC (rev 77)
+++ trunk/bwmd/flow.c 2005-07-10 11:05:54 UTC (rev 78)
@@ -367,6 +367,7 @@
g_mutex_lock(runnerData->IPQLock);
// Check if our packet was changed
+#if 0
if (packet->changed)
{
struct ip_packet_t *ip_packet = (struct ip_packet_t *) packet->payload->payload;
@@ -375,12 +376,13 @@
status = ipq_set_verdict(runnerData->IPQHandle, PKT_ID(packet), NF_ACCEPT, ip_packet->tot_len, (unsigned char *) ip_packet);
}
else
+#endif
status = ipq_set_verdict(runnerData->IPQHandle, PKT_ID(packet), NF_ACCEPT, 0, NULL);
g_mutex_unlock(runnerData->IPQLock);
if (status < 0)
{
- logMessage(LOG_ERR, "Failed to ACCEPT packet\n");
+ logMessage(LOG_ERR, "Failed to ACCEPT packet: %s\n",ipq_errstr);
break;
}
Modified: trunk/bwmd/ipq.c
===================================================================
--- trunk/bwmd/ipq.c 2005-06-20 08:18:02 UTC (rev 77)
+++ trunk/bwmd/ipq.c 2005-07-10 11:05:54 UTC (rev 78)
@@ -185,7 +185,8 @@
prob = avgProb + curProb;
// Check if we should drop packet
drop = drand < prob;
-
+
+#if 0
// If queue is 10% full, set CE bit if we ECN capable
if (!drop && (avgQueueSize / curQueueSize) > 0.10)
{
@@ -201,6 +202,7 @@
packet->changed = 1;
}
}
+#endif
}
}
|
|
From: <sv...@li...> - 2005-06-20 09:01:27
|
Author: nkukard
Date: 2005-06-20 06:35:53 +0000 (Mon, 20 Jun 2005)
New Revision: 75
Modified:
trunk/README
trunk/bwm_graph/Makefile.am
trunk/bwm_graph/Makefile.in
trunk/bwm_graph/graph.c
trunk/config.guess
trunk/config.sub
trunk/configure
trunk/configure.ac
trunk/doc/stamp-vti
trunk/doc/version.texi
trunk/ltmain.sh
Log:
* Added configure option to build with rrdtool-1.2.x
Modified: trunk/README
===================================================================
--- trunk/README 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/README 2005-06-20 06:35:53 UTC (rev 75)
@@ -18,12 +18,21 @@
Notes:
------
-When building BWM Tools with the --with-rrdtool-source option, you MUST
+1. When building BWM Tools with the --with-rrdtool-source option, you MUST
run configure and make from the top_srcdir, due to a build flaw in rrdtool
you CANNOT create a build directory, run ../configure --with-rrdtool-source
and think it will work as expected.
+2. If you're building BWM Tools with the --with-rrdtool-source options, and
+you're using rrdtool 1.2.x you might need to add the --disable-rrdcgi option
+if the configure complains about cgilib.
+3. Furthermore the rrdtool directory is only built, it is not cleaned when
+running make clean, nor is it installed when running make install. If you
+need to run a make command on it, CD into it and do it from there.
+
+
+
Requirements
------------
GLib >= 2.4.0
Modified: trunk/bwm_graph/Makefile.am
===================================================================
--- trunk/bwm_graph/Makefile.am 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/bwm_graph/Makefile.am 2005-06-20 06:35:53 UTC (rev 75)
@@ -25,6 +25,7 @@
RRDTOOL_INCLUDEDIR=@RRDTOOL_INCLUDEDIR@
RRDTOOL_LIBS=@RRDTOOL_LIBS@
RRDTOOL_LDADDS=@RRDTOOL_LDADDS@
+RRDTOOL_VER=@RRDTOOL_VER@
LOG_DIR=@localstatedir@/bwm_tools
@@ -32,11 +33,11 @@
bwm_graph_SOURCES = bwm_graph.c graph.c
bwm_graph_DEPENDENCIES = $(RRDTOOL_LDADDS)
bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS)
-bwm_graph_CFLAGS = $(RRDTOOL_INCLUDEDIR) -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS)
+bwm_graph_CFLAGS = $(RRDTOOL_INCLUDEDIR) -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" -DRRDTOOL_VER=$(RRDTOOL_VER) $(AM_CFLAGS)
bwm_graph_LDFLAGS = $(GLIB_LIBS) $(RRDTOOL_LIBS)
# Build rrdtool if we need it
-$(top_builddir)/rrdtool/src/.libs/librrd.a:
+$(top_builddir)/rrdtool/src/librrd.la:
$(MAKE) $(AM_MAKEFLAGS) -C ../rrdtool
Modified: trunk/bwm_graph/Makefile.in
===================================================================
--- trunk/bwm_graph/Makefile.in 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/bwm_graph/Makefile.in 2005-06-20 06:35:53 UTC (rev 75)
@@ -201,11 +201,12 @@
RRDTOOL_INCLUDEDIR = @RRDTOOL_INCLUDEDIR@
RRDTOOL_LIBS = @RRDTOOL_LIBS@
RRDTOOL_LDADDS = @RRDTOOL_LDADDS@
+RRDTOOL_VER = @RRDTOOL_VER@
LOG_DIR = @localstatedir@/bwm_tools
bwm_graph_SOURCES = bwm_graph.c graph.c
bwm_graph_DEPENDENCIES = $(RRDTOOL_LDADDS)
bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS)
-bwm_graph_CFLAGS = $(RRDTOOL_INCLUDEDIR) -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS)
+bwm_graph_CFLAGS = $(RRDTOOL_INCLUDEDIR) -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" -DRRDTOOL_VER=$(RRDTOOL_VER) $(AM_CFLAGS)
bwm_graph_LDFLAGS = $(GLIB_LIBS) $(RRDTOOL_LIBS)
all: all-am
@@ -510,7 +511,7 @@
# Build rrdtool if we need it
-$(top_builddir)/rrdtool/src/.libs/librrd.a:
+$(top_builddir)/rrdtool/src/librrd.la:
$(MAKE) $(AM_MAKEFLAGS) -C ../rrdtool
# 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.
Modified: trunk/bwm_graph/graph.c
===================================================================
--- trunk/bwm_graph/graph.c 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/bwm_graph/graph.c 2005-06-20 06:35:53 UTC (rev 75)
@@ -488,6 +488,7 @@
int result = 0;
char **prdata;
int xsize, ysize;
+ double ymin, ymax;
int numParams = 0;
char *lineColors[] = {"ff0033","3300ff","993399","cc9900",NULL};
int curColor = 0;
@@ -626,15 +627,22 @@
ADD_SINGLE_PARAM(params,numParams,"COMMENT:%s\\c","Graph generated by bwm_tools v"PACKAGE_VERSION" (http://bwm-tools.lbsd.net)");
// Call rrd tool
- optind = 0; opterr = 0;
+ optind = 0; opterr = 0;
+ // Lets make sure we call it correctly
+#if (RRDTOOL_VER == 0)
result = rrd_graph(numParams,params,&prdata,&xsize,&ysize);
+#elif (RRDTOOL_VER == 2)
+ result = rrd_graph(numParams,params,&prdata,&xsize,&ysize,NULL,&ymin,&ymax);
+#else
+#warning Your version of rrdtool is not supported
+#endif
if (result < 0)
{
fprintf(stderr,"Failed to create RRD graph %s: %s\n",options->outputFile,rrd_get_error());
result = -1;
}
else
- printf("done\n");
+ printf("done (%dx%d)\n",xsize,ysize);
// Free memory
for (i = 0; i < numParams; i++)
Modified: trunk/config.guess
===================================================================
--- trunk/config.guess 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/config.guess 2005-06-20 06:35:53 UTC (rev 75)
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2004-01-24'
+timestamp='2004-03-12'
# 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
@@ -197,12 +197,18 @@
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
+ amd64:OpenBSD:*:*)
+ echo x86_64-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ cats:OpenBSD:*:*)
+ echo arm-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -239,10 +245,24 @@
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ *:ekkoBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:MirBSD:*:*)
+ echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
+ *:MirBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
alpha:OSF1:*:*)
- if test $UNAME_RELEASE = "V4.0"; then
+ case $UNAME_RELEASE in
+ *4.0)
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- fi
+ ;;
+ *5.*)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ ;;
+ esac
# According to Compaq, /usr/sbin/psrinfo has been available on
# OSF/1 and Tru64 systems produced since 1995. I hope that
# covers most systems running today. This code pipes the CPU
@@ -280,11 +300,12 @@
"EV7.9 (21364A)")
UNAME_MACHINE="alphaev79" ;;
esac
+ # A Pn.n version is a patched version.
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha*:OpenVMS:*:*)
echo alpha-hp-vms
@@ -832,6 +853,9 @@
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
+ m32r*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
Modified: trunk/config.sub
===================================================================
--- trunk/config.sub 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/config.sub 2005-06-20 06:35:53 UTC (rev 75)
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2004-01-05'
+timestamp='2004-03-12'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -237,7 +237,7 @@
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
- | m32r | m68000 | m68k | m88k | mcore \
+ | m32r | m32rle | m68000 | m68k | m88k | mcore \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
@@ -262,7 +262,7 @@
| pyramid \
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
- | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
+ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
| strongarm \
| tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
@@ -308,7 +308,7 @@
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
- | m32r-* \
+ | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
@@ -336,7 +336,7 @@
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
- | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tron-* \
@@ -363,6 +363,9 @@
basic_machine=a29k-amd
os=-udi
;;
+ abacus)
+ basic_machine=abacus-unknown
+ ;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
@@ -442,12 +445,20 @@
basic_machine=j90-cray
os=-unicos
;;
+ cr16c)
+ basic_machine=cr16c-unknown
+ os=-elf
+ ;;
crds | unos)
basic_machine=m68k-crds
;;
cris | cris-* | etrax*)
basic_machine=cris-axis
;;
+ crx)
+ basic_machine=crx-unknown
+ os=-elf
+ ;;
da30 | da30-*)
basic_machine=m68k-da30
;;
@@ -1070,7 +1081,7 @@
sh64)
basic_machine=sh64-unknown
;;
- sparc | sparcv9 | sparcv9b)
+ sparc | sparcv8 | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
cydra)
@@ -1143,8 +1154,9 @@
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
Modified: trunk/configure
===================================================================
--- trunk/configure 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/configure 2005-06-20 06:35:53 UTC (rev 75)
@@ -464,7 +464,7 @@
#endif"
ac_subdirs_all="$ac_subdirs_all rrdtool"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL subdirs RRDTOOL!
_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR ALLOCA LIBOBJS PKG_CONFIG GLIB_CFLAGS GLIB_LIBS GLIB_GENMARSHAL GOBJECT_QUERY GLIB_MKENUMS XML2_CONFIG XML_CPPFLAGS XML_LIBS XML_CFLAGS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL subdirs RRDTOOL!
_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR RRDTOOL_VER ALLOCA LIBOBJS PKG_CONFIG GLIB_CFLAGS GLIB_LIBS GLIB_GENMARSHAL GOBJECT_QUERY GLIB_MKENUMS XML2_CONFIG XML_CPPFLAGS XML_LIBS XML_CFLAGS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -1046,6 +1046,7 @@
both]
--with-tags[=TAGS]
include additional configurations [automatic]
+ --with-rrdtool2 Specify that you want BWM Tools built against rrdtool 1.2.x
--with-rrdtool-source Specify that you have the rrdtool sources in the main build dir
--with-xml-prefix=PFX Prefix where libxml is installed (optional)
--with-xml-exec-prefix=PFX Exec prefix where libxml is installed (optional)
@@ -3754,7 +3755,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 3757 "configure"' > conftest.$ac_ext
+ echo '#line 3758 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -5326,7 +5327,7 @@
# Provide some information about the compiler.
-echo "$as_me:5329:" \
+echo "$as_me:5330:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -6360,11 +6361,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6363: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6364: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6367: \$? = $ac_status" >&5
+ echo "$as_me:6368: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -6593,11 +6594,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6596: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6597: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6600: \$? = $ac_status" >&5
+ echo "$as_me:6601: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -6653,11 +6654,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6656: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6657: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:6660: \$? = $ac_status" >&5
+ echo "$as_me:6661: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8837,7 +8838,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 8840 "configure"
+#line 8841 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -8935,7 +8936,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 8938 "configure"
+#line 8939 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11114,11 +11115,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11117: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11118: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11121: \$? = $ac_status" >&5
+ echo "$as_me:11122: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -11174,11 +11175,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11177: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11178: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11181: \$? = $ac_status" >&5
+ echo "$as_me:11182: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -12535,7 +12536,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 12538 "configure"
+#line 12539 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12633,7 +12634,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 12636 "configure"
+#line 12637 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -13460,11 +13461,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13463: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13464: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13467: \$? = $ac_status" >&5
+ echo "$as_me:13468: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -13520,11 +13521,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13523: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13524: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13527: \$? = $ac_status" >&5
+ echo "$as_me:13528: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -15554,11 +15555,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15557: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15558: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15561: \$? = $ac_status" >&5
+ echo "$as_me:15562: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -15787,11 +15788,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15790: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15791: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15794: \$? = $ac_status" >&5
+ echo "$as_me:15795: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -15847,11 +15848,11 @@
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15850: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15851: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:15854: \$? = $ac_status" >&5
+ echo "$as_me:15855: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -18031,7 +18032,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 18034 "configure"
+#line 18035 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -18129,7 +18130,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 18132 "configure"
+#line 18133 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -19489,6 +19490,22 @@
+# get version of rrdtool from user
+
+# Check whether --with-rrdtool2 or --without-rrdtool2 was given.
+if test "${with_rrdtool2+set}" = set; then
+ withval="$with_rrdtool2"
+
+ RRDTOOL_VER=2
+
+else
+
+ RRDTOOL_VER=0
+
+fi;
+
+# rrdtool version 1.x.x
+
# Check whether --with-rrdtool-source or --without-rrdtool-source was given.
if test "${with_rrdtool_source+set}" = set; then
withval="$with_rrdtool_source"
@@ -19497,12 +19514,12 @@
subdirs="$subdirs rrdtool"
- RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/.libs/librrd.a"
+ RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/librrd.la"
RRDTOOL_INCLUDEDIR="-I\$(top_builddir)/rrdtool/src"
else
- echo "$as_me:$LINENO: checking for rrd_create in -lrrd" >&5
+ echo "$as_me:$LINENO: checking for rrd_create in -lrrd" >&5
echo $ECHO_N "checking for rrd_create in -lrrd... $ECHO_C" >&6
if test "${ac_cv_lib_rrd_rrd_create+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -19570,27 +19587,33 @@
have_librrd=yes
fi
- if test x"$have_librrd" = x
- then
- echo
- echo "* - ERROR -"
- echo "* You need the development libraries and headers"
- echo "* for rrdtool. Normally you can download a"
- echo "* package called rrdtool-devel for your"
- echo "* distribution, install it and everything should"
- echo "* be fine"
- echo "*"
- echo "* Alternatively, follow these instructions..."
- echo "* 1. Download, uncompress and extract rrdtool to the top BWM Tools directory"
- echo "* 2. Symlink it, like this -> ln -s rrdtool-x.x.x rrdtool"
- echo "* 3. Re-run ./configure with -> --with-rrdtool-source"
- exit 1
- fi
- RRDTOOL_LIBS="-lm -lrrd"
+ if test x"$have_librrd" = x
+ then
+ echo
+ echo "* - ERROR -"
+ echo "* You need the development libraries and headers"
+ echo "* for rrdtool. Normally you can download a"
+ echo "* package called rrdtool-devel for your"
+ echo "* distribution, install it and everything should"
+ echo "* be fine"
+ echo "*"
+ echo "* Alternatively, follow these instructions..."
+ echo "* 1. Download, uncompress and extract rrdtool-1.x.x to the top BWM Tools directory"
+ echo "* 2. Symlink it, like this -> ln -s rrdtool-1.x.x rrdtool"
+ echo "* 3. Re-run ./configure with -> --with-rrdtool-source"
+ echo "*"
+ echo "* Note:"
+ echo "* For rrdtool-1.2.x you must add the --with-rrdtool2 flag and possibly"
+ echo "* also the --disable-rrdcgi flag"
+ echo "*"
+ exit 1
+ fi
+ RRDTOOL_LIBS="-lm -lrrd"
fi;
+
# Checks for header files.
echo "$as_me:$LINENO: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
@@ -24126,6 +24149,7 @@
s,@RRDTOOL_LDADDS@,$RRDTOOL_LDADDS,;t t
s,@RRDTOOL_LIBS@,$RRDTOOL_LIBS,;t t
s,@RRDTOOL_INCLUDEDIR@,$RRDTOOL_INCLUDEDIR,;t t
+s,@RRDTOOL_VER@,$RRDTOOL_VER,;t t
s,@ALLOCA@,$ALLOCA,;t t
s,@LIBOBJS@,$LIBOBJS,;t t
s,@PKG_CONFIG@,$PKG_CONFIG,;t t
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/configure.ac 2005-06-20 06:35:53 UTC (rev 75)
@@ -42,35 +42,53 @@
AC_CHECK_LIB([ncurses], [curses_version])
AC_CHECK_LIB([panel], [panel_window])
+
+# get version of rrdtool from user
+AC_ARG_WITH([rrdtool2],
+ [ --with-rrdtool2 Specify that you want BWM Tools built against rrdtool 1.2.x],
+ [
+ RRDTOOL_VER=2
+ ],
+ [
+ RRDTOOL_VER=0
+ ])
+
+# rrdtool version 1.x.x
AC_ARG_WITH([rrdtool-source],
[ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir],
[
AC_CONFIG_SUBDIRS(rrdtool)
- RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/.libs/librrd.a"
+ RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/librrd.la"
RRDTOOL_INCLUDEDIR="-I\$(top_builddir)/rrdtool/src"
],
[
- AC_CHECK_LIB([rrd], [rrd_create],have_librrd=yes,,"-lm")
- if test x"$have_librrd" = x
- then
- echo
- echo "* - ERROR -"
- echo "* You need the development libraries and headers"
- echo "* for rrdtool. Normally you can download a"
- echo "* package called rrdtool-devel for your"
- echo "* distribution, install it and everything should"
- echo "* be fine"
- echo "*"
- echo "* Alternatively, follow these instructions..."
- echo "* 1. Download, uncompress and extract rrdtool to the top BWM Tools directory"
- echo "* 2. Symlink it, like this -> ln -s rrdtool-x.x.x rrdtool"
- echo "* 3. Re-run ./configure with -> --with-rrdtool-source"
- exit 1
- fi
- RRDTOOL_LIBS="-lm -lrrd"
+ AC_CHECK_LIB([rrd], [rrd_create],have_librrd=yes,,"-lm")
+ if test x"$have_librrd" = x
+ then
+ echo
+ echo "* - ERROR -"
+ echo "* You need the development libraries and headers"
+ echo "* for rrdtool. Normally you can download a"
+ echo "* package called rrdtool-devel for your"
+ echo "* distribution, install it and everything should"
+ echo "* be fine"
+ echo "*"
+ echo "* Alternatively, follow these instructions..."
+ echo "* 1. Download, uncompress and extract rrdtool-1.x.x to the top BWM Tools directory"
+ echo "* 2. Symlink it, like this -> ln -s rrdtool-1.x.x rrdtool"
+ echo "* 3. Re-run ./configure with -> --with-rrdtool-source"
+ echo "*"
+ echo "* Note:"
+ echo "* For rrdtool-1.2.x you must add the --with-rrdtool2 flag and possibly"
+ echo "* also the --disable-rrdcgi flag"
+ echo "*"
+ exit 1
+ fi
+ RRDTOOL_LIBS="-lm -lrrd"
])
-AC_SUBST(RRDTOOL_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR)
+AC_SUBST(RRDTOOL_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR RRDTOOL_VER)
+
# Checks for header files.
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
Modified: trunk/doc/stamp-vti
===================================================================
--- trunk/doc/stamp-vti 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/doc/stamp-vti 2005-06-20 06:35:53 UTC (rev 75)
@@ -1,4 +1,4 @@
@set UPDATED 6 April 2005
@set UPDATED-MONTH April 2005
-@set EDITION devel
-@set VERSION devel
+@set EDITION 200505041033
+@set VERSION 200505041033
Modified: trunk/doc/version.texi
===================================================================
--- trunk/doc/version.texi 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/doc/version.texi 2005-06-20 06:35:53 UTC (rev 75)
@@ -1,4 +1,4 @@
@set UPDATED 6 April 2005
@set UPDATED-MONTH April 2005
-@set EDITION devel
-@set VERSION devel
+@set EDITION 200505041033
+@set VERSION 200505041033
Modified: trunk/ltmain.sh
===================================================================
--- trunk/ltmain.sh 2005-05-04 10:31:43 UTC (rev 74)
+++ trunk/ltmain.sh 2005-06-20 06:35:53 UTC (rev 75)
@@ -1,7 +1,7 @@
# ltmain.sh - Provide generalized library-building support services.
# NOTE: Changing this file will not affect anything until you rerun configure.
#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004
# Free Software Foundation, Inc.
# Originally by Gordon Matzigkeit <go...@gn...>, 1996
#
@@ -24,6 +24,29 @@
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+basename="s,^.*/,,g"
+
+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
+# is ksh but when the shell is invoked as "sh" and the current value of
+# the _XPG environment variable is not equal to 1 (one), the special
+# positional parameter $0, within a function call, is the name of the
+# function.
+progpath="$0"
+
+# The name of this program:
+progname=`echo "$progpath" | $SED $basename`
+modename="$progname"
+
+# Global variables:
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+
+PROGRAM=ltmain.sh
+PACKAGE=libtool
+VERSION=1.5.6
+TIMESTAMP=" (1.1220.2.95 2004/04/11 05:50:42)"
+
+
# Check that we have a working $echo.
if test "X$1" = X--no-reexec; then
# Discard the --no-reexec flag, and continue.
@@ -36,7 +59,7 @@
:
else
# Restart under the correct shell, and then maybe $echo will work.
- exec $SHELL "$0" --no-reexec ${1+"$@"}
+ exec $SHELL "$progpath" --no-reexec ${1+"$@"}
fi
if test "X$1" = X--fallback-echo; then
@@ -45,19 +68,9 @@
cat <<EOF
$*
EOF
- exit 0
+ exit $EXIT_SUCCESS
fi
-# The name of this program.
-progname=`$echo "$0" | ${SED} 's%^.*/%%'`
-modename="$progname"
-
-# Constants.
-PROGRAM=ltmain.sh
-PACKAGE=libtool
-VERSION=1.5.2
-TIMESTAMP=" (1.1220.2.60 2004/01/25 12:25:08)"
-
default_mode=
help="Try \`$progname --help' for more information."
magic="%%%MAGIC variable%%%"
@@ -100,7 +113,7 @@
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
$echo "$modename: not configured to build any kind of library" 1>&2
$echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Global variables.
@@ -119,10 +132,13 @@
# Shell function definitions:
# This seems to be the best place for them
+# func_win32_libid arg
+# return the library type of file 'arg'
+#
# Need a lot of goo to handle *both* DLLs and import libs
# Has to be a shell function in order to 'eat' the argument
# that is supplied when $file_magic_command is called.
-win32_libid () {
+func_win32_libid () {
win32_libid_type="unknown"
win32_fileres=`file -L $1 2>/dev/null`
case $win32_fileres in
@@ -131,7 +147,7 @@
;;
*ar\ archive*) # could be an import, or static
if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \
- grep -E 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
+ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
win32_nmres=`eval $NM -f posix -A $1 | \
sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'`
if test "X$win32_nmres" = "Ximport" ; then
@@ -141,7 +157,7 @@
fi
fi
;;
- *DLL*)
+ *DLL*)
win32_libid_type="x86 DLL"
;;
*executable*) # but shell scripts are "executable" too...
@@ -155,9 +171,76 @@
$echo $win32_libid_type
}
+
+# func_infer_tag arg
+# Infer tagged configuration to use if any are available and
+# if one wasn't chosen via the "--tag" command line option.
+# Only attempt this if the compiler in the base compile
+# command doesn't match the default compiler.
+# arg is usually of the form 'gcc ...'
+func_infer_tag () {
+ if test -n "$available_tags" && test -z "$tagname"; then
+ CC_quoted=
+ for arg in $CC; do
+ case $arg in
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
+ arg="\"$arg\""
+ ;;
+ esac
+ CC_quoted="$CC_quoted $arg"
+ done
+ case $@ in
+ # Blanks in the command may have been stripped by the calling shell,
+ # but not from the CC environment variable when configure was run.
+ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;;
+ # Blanks at the start of $base_compile will cause this to fail
+ # if we don't check for them as well.
+ *)
+ for z in $available_tags; do
+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
+ # Evaluate the configuration.
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
+ CC_quoted=
+ for arg in $CC; do
+ # Double-quote args containing other shell metacharacters.
+ case $arg in
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
+ arg="\"$arg\""
+ ;;
+ esac
+ CC_quoted="$CC_quoted $arg"
+ done
+ case "$@ " in
+ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*)
+ # The compiler in the base compile command matches
+ # the one in the tagged configuration.
+ # Assume this is the tagged configuration we want.
+ tagname=$z
+ break
+ ;;
+ esac
+ fi
+ done
+ # If $tagname still isn't set, then no tagged configuration
+ # was found and let the user know that the "--tag" command
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+ $echo "$modename: specify a tag with \`--tag'" 1>&2
+ exit $EXIT_FAILURE
+# else
+# $echo "$modename: using $tagname tagged configuration"
+ fi
+ ;;
+ esac
+ fi
+}
# End of Shell function definitions
#####################################
+# Darwin sucks
+eval std_shrext=\"$shrext_cmds\"
+
# Parse our command line options once, thoroughly.
while test "$#" -gt 0
do
@@ -183,7 +266,7 @@
case $tagname in
*[!-_A-Za-z0-9,/]*)
$echo "$progname: invalid tag name: $tagname" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
@@ -193,10 +276,10 @@
# not specially marked.
;;
*)
- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then
+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then
taglist="$taglist $tagname"
# Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`"
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`"
else
$echo "$progname: ignoring unknown tag $tagname" 1>&2
fi
@@ -225,16 +308,16 @@
$echo "Copyright (C) 2003 Free Software Foundation, Inc."
$echo "This is free software; see the source for copying conditions. There is NO"
$echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
- exit 0
+ exit $EXIT_SUCCESS
;;
--config)
- ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
+ ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath
# Now print the configurations for the tags.
for tagname in $taglist; do
- ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0"
+ ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath"
done
- exit 0
+ exit $EXIT_SUCCESS
;;
--debug)
@@ -259,7 +342,7 @@
else
$echo "disable static libraries"
fi
- exit 0
+ exit $EXIT_SUCCESS
;;
--finish) mode="finish" ;;
@@ -290,7 +373,7 @@
-*)
$echo "$modename: unrecognized option \`$arg'" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
*)
@@ -303,7 +386,7 @@
if test -n "$prevopt"; then
$echo "$modename: option \`$prevopt' requires an argument" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# If this variable is set in any of the actions, the command in it
@@ -359,7 +442,7 @@
if test -n "$execute_dlfiles" && test "$mode" != execute; then
$echo "$modename: unrecognized option \`-dlopen'" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Change the help message to a mode-specific one.
@@ -401,7 +484,7 @@
-o)
if test -n "$libobj" ; then
$echo "$modename: you cannot specify \`-o' more than once" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
arg_mode=target
continue
@@ -426,7 +509,7 @@
args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
lastarg=
save_ifs="$IFS"; IFS=','
- for arg in $args; do
+ for arg in $args; do
IFS="$save_ifs"
# Double-quote args containing other shell metacharacters.
@@ -476,11 +559,11 @@
case $arg_mode in
arg)
$echo "$modename: you must specify an argument for -Xcompile"
- exit 1
+ exit $EXIT_FAILURE
;;
target)
$echo "$modename: you must specify a target with \`-o'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
*)
# Get the name of the library object.
@@ -513,50 +596,11 @@
*.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
*)
$echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
- # Infer tagged configuration to use if any are available and
- # if one wasn't chosen via the "--tag" command line option.
- # Only attempt this if the compiler in the base compile
- # command doesn't match the default compiler.
- if test -n "$available_tags" && test -z "$tagname"; then
- case $base_compile in
- # Blanks in the command may have been stripped by the calling shell,
- # but not from the CC environment variable when configure was run.
- " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "*) ;;
- # Blanks at the start of $base_compile will cause this to fail
- # if we don't check for them as well.
- *)
- for z in $available_tags; do
- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then
- # Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
- case "$base_compile " in
- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
- # The compiler in the base compile command matches
- # the one in the tagged configuration.
- # Assume this is the tagged configuration we want.
- tagname=$z
- break
- ;;
- esac
- fi
- done
- # If $tagname still isn't set, then no tagged configuration
- # was found and let the user know that the "--tag" command
- # line option must be used.
- if test -z "$tagname"; then
- $echo "$modename: unable to infer tagged configuration"
- $echo "$modename: specify a tag with \`--tag'" 1>&2
- exit 1
-# else
-# $echo "$modename: using $tagname tagged configuration"
- fi
- ;;
- esac
- fi
+ func_infer_tag $base_compile
for arg in $later; do
case $arg in
@@ -589,7 +633,7 @@
if test -z "$base_compile"; then
$echo "$modename: you must specify a compilation command" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Delete any leftover library objects.
@@ -600,7 +644,7 @@
fi
$run $rm $removelist
- trap "$run $rm $removelist; exit 1" 1 2 15
+ trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
# On Cygwin there's no "real" PIC flag so we must build both object types
case $host_os in
@@ -619,7 +663,7 @@
output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
lockfile="$output_obj.lock"
removelist="$removelist $output_obj $lockfile"
- trap "$run $rm $removelist; exit 1" 1 2 15
+ trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
else
output_obj=
need_locks=no
@@ -629,7 +673,7 @@
# Lock this critical section if it is needed
# We use this script file to make the link, it avoids creating a new file
if test "$need_locks" = yes; then
- until $run ln "$0" "$lockfile" 2>/dev/null; do
+ until $run ln "$progpath" "$lockfile" 2>/dev/null; do
$show "Waiting for $lockfile to be removed"
sleep 2
done
@@ -647,7 +691,7 @@
compiler."
$run $rm $removelist
- exit 1
+ exit $EXIT_FAILURE
fi
$echo $srcfile > "$lockfile"
fi
@@ -702,7 +746,7 @@
if $run eval "$command"; then :
else
test -n "$output_obj" && $run $rm $removelist
- exit 1
+ exit $EXIT_FAILURE
fi
if test "$need_locks" = warn &&
@@ -722,7 +766,7 @@
compiler."
$run $rm $removelist
- exit 1
+ exit $EXIT_FAILURE
fi
# Just move the object if needed, then go on to compile the next one
@@ -774,7 +818,7 @@
if $run eval "$command"; then :
else
$run $rm $removelist
- exit 1
+ exit $EXIT_FAILURE
fi
if test "$need_locks" = warn &&
@@ -794,7 +838,7 @@
compiler."
$run $rm $removelist
- exit 1
+ exit $EXIT_FAILURE
fi
# Just move the object if needed
@@ -832,7 +876,7 @@
$run $rm "$lockfile"
fi
- exit 0
+ exit $EXIT_SUCCESS
;;
# libtool link mode
@@ -904,46 +948,7 @@
vinfo=
vinfo_number=no
- # Infer tagged configuration to use if any are available and
- # if one wasn't chosen via the "--tag" command line option.
- # Only attempt this if the compiler in the base link
- # command doesn't match the default compiler.
- if test -n "$available_tags" && test -z "$tagname"; then
- case $base_compile in
- # Blanks in the command may have been stripped by the calling shell,
- # but not from the CC environment variable when configure was run.
- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;;
- # Blanks at the start of $base_compile will cause this to fail
- # if we don't check for them as well.
- *)
- for z in $available_tags; do
- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then
- # Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
- case $base_compile in
- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
- # The compiler in $compile_command matches
- # the one in the tagged configuration.
- # Assume this is the tagged configuration we want.
- tagname=$z
- break
- ;;
- esac
- fi
- done
- # If $tagname still isn't set, then no tagged configuration
- # was found and let the user know that the "--tag" command
- # line option must be used.
- if test -z "$tagname"; then
- $echo "$modename: unable to infer tagged configuration"
- $echo "$modename: specify a tag with \`--tag'" 1>&2
- exit 1
-# else
-# $echo "$modename: using $tagname tagged configuration"
- fi
- ;;
- esac
- fi
+ func_infer_tag $base_compile
# We need to know -static, to get the right output filenames.
for arg
@@ -1039,7 +1044,7 @@
export_symbols="$arg"
if test ! -f "$arg"; then
$echo "$modename: symbol file \`$arg' does not exist"
- exit 1
+ exit $EXIT_FAILURE
fi
prev=
continue
@@ -1091,7 +1096,7 @@
test "$pic_object" = none && \
test "$non_pic_object" = none; then
$echo "$modename: cannot find name of object for \`$arg'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Extract subdirectory from the argument.
@@ -1144,7 +1149,7 @@
# Only an error if not doing a dry-run.
if test -z "$run"; then
$echo "$modename: \`$arg' is not a valid libtool object" 1>&2
- exit 1
+ exit $EXIT_FAILURE
else
# Dry-run case.
@@ -1165,7 +1170,7 @@
done
else
$echo "$modename: link input file \`$save_arg' does not exist"
- exit 1
+ exit $EXIT_FAILURE
fi
arg=$save_arg
prev=
@@ -1177,7 +1182,7 @@
[\\/]* | [A-Za-z]:[\\/]*) ;;
*)
$echo "$modename: only absolute run-paths are allowed" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
if test "$prev" = rpath; then
@@ -1217,6 +1222,11 @@
finalize_command="$finalize_command $qarg"
continue
;;
+ shrext)
+ shrext_cmds="$arg"
+ prev=
+ continue
+ ;;
*)
eval "$prev=\"\$arg\""
prev=
@@ -1265,7 +1275,7 @@
-export-symbols | -export-symbols-regex)
if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
$echo "$modename: more than one -exported-symbols argument is not allowed"
- exit 1
+ exit $EXIT_FAILURE
fi
if test "X$arg" = "X-export-symbols"; then
prev=expsyms
@@ -1301,7 +1311,7 @@
absdir=`cd "$dir" && pwd`
if test -z "$absdir"; then
$echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
dir="$absdir"
;;
@@ -1452,7 +1462,7 @@
[\\/]* | [A-Za-z]:[\\/]*) ;;
*)
$echo "$modename: only absolute run-paths are allowed" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
case "$xrpath " in
@@ -1575,7 +1585,7 @@
test "$pic_object" = none && \
test "$non_pic_object" = none; then
$echo "$modename: cannot find name of object for \`$arg'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Extract subdirectory from the argument.
@@ -1628,7 +1638,7 @@
# Only an error if not doing a dry-run.
if test -z "$run"; then
$echo "$modename: \`$arg' is not a valid libtool object" 1>&2
- exit 1
+ exit $EXIT_FAILURE
else
# Dry-run case.
@@ -1695,7 +1705,7 @@
if test -n "$prev"; then
$echo "$modename: the \`$prevarg' option requires an argument" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
@@ -1739,7 +1749,7 @@
"")
$echo "$modename: you must specify an output file" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
*.$libext) linkmode=oldlib ;;
*.lo | *.$objext) linkmode=obj ;;
@@ -1749,7 +1759,7 @@
case $host in
*cygwin* | *mingw* | *pw32*)
- # don't eliminate duplcations in $postdeps and $predeps
+ # don't eliminate duplications in $postdeps and $predeps
duplicate_compiler_generated_deps=yes
;;
*)
@@ -1802,7 +1812,7 @@
*.la) ;;
*)
$echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
done
@@ -1860,7 +1870,7 @@
fi
name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
- for search_ext in .la $shrext .so .a; do
+ for search_ext in .la $std_shrext .so .a; do
# Search the libtool library
lib="$searchdir/lib${name}${search_ext}"
if test -f "$lib"; then
@@ -1936,11 +1946,11 @@
fi
if test "$pass" = scan; then
deplibs="$deplib $deplibs"
- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
else
compile_deplibs="$deplib $compile_deplibs"
finalize_deplibs="$deplib $finalize_deplibs"
fi
+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
;;
*)
$echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2
@@ -2019,14 +2029,14 @@
if test "$found" = yes || test -f "$lib"; then :
else
$echo "$modename: cannot find the library \`$lib'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Check to see that this really is a libtool archive.
if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
@@ -2062,7 +2072,7 @@
if test -z "$libdir"; then
if test -z "$old_library"; then
$echo "$modename: cannot find name of link library for \`$lib'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# It is a libtool convenience library, so add in its objects.
convenience="$convenience $ladir/$objdir/$old_library"
@@ -2079,12 +2089,12 @@
done
elif test "$linkmode" != prog && test "$linkmode" != lib; then
$echo "$modename: \`$lib' is not a convenience library" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
continue
fi # $pass = conv
-
+
# Get the name of the library we link against.
linklib=
for l in $old_library $library_names; do
@@ -2092,16 +2102,18 @@
done
if test -z "$linklib"; then
$echo "$modename: cannot find name of link library for \`$lib'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# This library was specified with -dlopen.
if test "$pass" = dlopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
- if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+ if test -z "$dlname" ||
+ test "$dlopen_support" != yes ||
+ test "$build_libtool_libs" = no; then
# If there is no dlname, no dlopen support or we're linking
# statically, we need to preload. We also need to preload any
# dependent libraries so libltdl's deplib preloader doesn't
@@ -2150,7 +2162,7 @@
if test "$pass" = dlpreopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Prefer using a static library (so that no silly _DYNAMIC symbols
# are required to link).
@@ -2177,7 +2189,7 @@
continue
fi
-
+
if test "$linkmode" = prog && test "$pass" != link; then
newlib_search_path="$newlib_search_path $ladir"
deplibs="$lib $deplibs"
@@ -2264,17 +2276,18 @@
need_relink=yes
fi
# This is a shared library
-
- # Warn about portability, can't link against -module's on some systems (darwin)
- if test "$shouldnotlink" = yes && test "$pass" = link ; then
+
+ # Warn about portability, can't link against -module's on
+ # some systems (darwin)
+ if test "$shouldnotlink" = yes && test "$pass" = link ; then
$echo
if test "$linkmode" = prog; then
$echo "*** Warning: Linking the executable $output against the loadable module"
else
$echo "*** Warning: Linking the shared library $output against the loadable module"
fi
- $echo "*** $linklib is not portable!"
- fi
+ $echo "*** $linklib is not portable!"
+ fi
if test "$linkmode" = lib &&
test "$hardcode_into_libs" = yes; then
# Hardcode the library path.
@@ -2372,9 +2385,9 @@
case $host in
*-*-sco3.2v5* ) add_dir="-L$dir" ;;
*-*-darwin* )
- # if the lib is a module then we can not link against it, someone
- # is ignoring the new warnings I added
- if /usr/bin/file -L $add 2> /dev/null | grep "bundle" >/dev/null ; then
+ # if the lib is a module then we can not link against
+ # it, someone is ignoring the new warnings I added
+ if /usr/bin/file -L $add 2> /dev/null | $EGREP "bundle" >/dev/null ; then
$echo "** Warning, lib $linklib is a module, not a shared library"
if test -z "$old_library" ; then
$echo
@@ -2382,7 +2395,7 @@
$echo "** The link will probably fail, sorry"
else
add="$dir/$old_library"
- fi
+ fi
fi
esac
elif test "$hardcode_minus_L" = no; then
@@ -2424,7 +2437,7 @@
if test "$lib_linked" != yes; then
$echo "$modename: configuration error: unsupported hardcode properties"
- exit 1
+ exit $EXIT_FAILURE
fi
if test -n "$add_shlibpath"; then
@@ -2467,7 +2480,8 @@
esac
add="-l$name"
elif test "$hardcode_automatic" = yes; then
- if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then
+ if test -n "$inst_prefix_dir" &&
+ test -f "$inst_prefix_dir$libdir/$linklib" ; then
add="$inst_prefix_dir$libdir/$linklib"
else
add="$libdir/$linklib"
@@ -2547,7 +2561,8 @@
if test "$linkmode" = lib; then
if test -n "$dependency_libs" &&
- { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes ||
+ { test "$hardcode_into_libs" != yes ||
+ test "$build_old_libs" = yes ||
test "$link_static" = yes; }; then
# Extract -R from dependency_libs
temp_deplibs=
@@ -2604,7 +2619,7 @@
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
if test "$absdir" != "$libdir"; then
$echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
@@ -2614,7 +2629,8 @@
depdepl=
case $host in
*-*-darwin*)
- # we do not want to link against static libs, but need to link against shared
+ # we do not want to link against static libs,
+ # but need to link against shared
eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
if test -n "$deplibrary_names" ; then
for tmp in $deplibrary_names ; do
@@ -2622,7 +2638,7 @@
done
if test -f "$path/$depdepl" ; then
depdepl="$path/$depdepl"
- fi
+ fi
# do not add paths which are already there
case " $newlib_search_path " in
*" $path "*) ;;
@@ -2632,33 +2648,32 @@
path=""
;;
*)
- path="-L$path"
+ path="-L$path"
+ ;;
+ esac
;;
- esac
-
- ;;
- -l*)
+ -l*)
case $host in
*-*-darwin*)
- # Again, we only want to link against shared libraries
- eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"`
- for tmp in $newlib_search_path ; do
- if test -f "$tmp/lib$tmp_libs.dylib" ; then
- eval depdepl="$tmp/lib$tmp_libs.dylib"
- break
- fi
- done
- path=""
+ # Again, we only want to link against shared libraries
+ eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"`
+ for tmp in $newlib_search_path ; do
+ if test -f "$tmp/lib$tmp_libs.dylib" ; then
+ eval depdepl="$tmp/lib$tmp_libs.dylib"
+ break
+ fi
+ done
+ path=""
;;
*) continue ;;
- esac
+ esac
;;
*) continue ;;
esac
case " $deplibs " in
*" $depdepl "*) ;;
- *) deplibs="$deplibs $depdepl" ;;
- esac
+ *) deplibs="$depdepl $deplibs" ;;
+ esac
case " $deplibs " in
*" $path "*) ;;
*) deplibs="$deplibs $path" ;;
@@ -2748,7 +2763,8 @@
eval $var=\"$tmp_libs\"
done # for var
fi
- # Last step: remove runtime libs from dependency_libs (they stay in deplibs)
+ # Last step: remove runtime libs from dependency_libs
+ # (they stay in deplibs)
tmp_libs=
for i in $dependency_libs ; do
case " $predeps $postdeps $compiler_lib_search_path " in
@@ -2808,19 +2824,19 @@
case $outputname in
lib*)
name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
- eval shared_ext=\"$shrext\"
+ eval shared_ext=\"$shrext_cmds\"
eval libname=\"$libname_spec\"
;;
*)
if test "$module" = no; then
$echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
if test "$need_lib_prefix" != no; then
# Add the "lib" prefix for modules if required
name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
- eval shared_ext=\"$shrext\"
+ eval shared_ext=\"$shrext_cmds\"
eval libname=\"$libname_spec\"
else
libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
@@ -2831,7 +2847,7 @@
if test -n "$objs"; then
if test "$deplibs_check_method" != pass_all; then
$echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
- exit 1
+ exit $EXIT_FAILURE
else
$echo
$echo "*** Warning: Linking the shared library $output against the non-libtool"
@@ -2879,13 +2895,13 @@
if test -n "$8"; then
$echo "$modename: too many parameters to \`-version-info'" 1>&2
$echo "$help" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# convert absolute version numbers to libtool ages
# this retains compatibility with .la files and attempts
# to make the code below a bit more comprehensible
-
+
case $vinfo_number in
yes)
number_major="$2"
@@ -2929,7 +2945,7 @@
*)
$echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
@@ -2938,7 +2954,7 @@
*)
$echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
@@ -2947,14 +2963,14 @@
*)
$echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
if test "$age" -gt "$current"; then
$echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
+ exit $EXIT_FAILURE
fi
# Calculate the version variables.
@@ -3043,7 +3059,7 @@
*)
$echo "$modename: unknown library version type \`$version_type'" 1>&2
$echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit 1
+ exit $EXIT_FAILURE
;;
esac
@@ -3097,9 +3113,11 @@
*.$objext)
;;
$output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
- if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
- then
- continue
+ if test "X$precious_files_regex" != "X"; then
+ if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
+ then
+ continue
+ fi
fi
removelist="$removelist $p"
;;
@@ -3580,7 +3598,7 @@
fi
# Get the real and link names of the library.
- eval shared_ext=\"$shrext\"
+ eval shared_ext=\"$shrext_cmds\"
eval library_names=\"$library_names_spec\"
set dummy $library_names
realname="$2"
@@ -3644,12 +3662,12 @@
for test_deplib in $deplibs; do
case " $convenience " in
*" $test_deplib "*) ;;
- *)
+ *)
tmp_deplibs="$tmp_deplibs $test_deplib"
;;
esac
done
- deplibs="$tmp_deplibs"
+ deplibs="$tmp_deplibs"
if test -n "$convenience"; then
if test -n "$whole_archive_flag_spec"; then
@@ -3832,7 +3850,6 @@
save_ifs="$IFS"; IFS='~'
for cmd in $concat_cmds; do
IFS="$save_ifs"
- eval cmd=\"$cmd\"
$show "$cmd"
$run eval "$cmd" || exit $?
done
@@ -3879,7 +3896,7 @@
# Restore the uninstalled library and exit
if test "$mode" = relink; then
$run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
- exit 0
+ exit $EXIT_SUCCESS
fi
# Create links to the r...
[truncated message content] |
|
From: <sv...@li...> - 2005-06-20 09:01:27
|
Author: nkukard Date: 2005-06-20 08:14:12 +0000 (Mon, 20 Jun 2005) New Revision: 76 Modified: trunk/README Log: * Added more info to readme Modified: trunk/README =================================================================== --- trunk/README 2005-06-20 06:35:53 UTC (rev 75) +++ trunk/README 2005-06-20 08:14:12 UTC (rev 76) @@ -18,16 +18,29 @@ Notes: ------ -1. When building BWM Tools with the --with-rrdtool-source option, you MUST +You need the development libraries and headers for rrdtool. Normally you can +download a package called rrdtool-devel for your distribution, install it +and everything should be fine. + +Alternatively, follow these instructions... +1. Download, uncompress and extract rrdtool-1.x.x to the top BWM Tools directory +2. Symlink it, like this -> ln -s rrdtool-1.x.x rrdtool +3. Re-run ./configure with -> --with-rrdtool-source + +For rrdtool-1.2.x you must add the --with-rrdtool2 flag and possibly +also the --disable-rrdcgi flag. + + +* When building BWM Tools with the --with-rrdtool-source option, you MUST run configure and make from the top_srcdir, due to a build flaw in rrdtool you CANNOT create a build directory, run ../configure --with-rrdtool-source and think it will work as expected. -2. If you're building BWM Tools with the --with-rrdtool-source options, and +* If you're building BWM Tools with the --with-rrdtool-source options, and you're using rrdtool 1.2.x you might need to add the --disable-rrdcgi option if the configure complains about cgilib. -3. Furthermore the rrdtool directory is only built, it is not cleaned when +* Furthermore the rrdtool directory is only built, it is not cleaned when running make clean, nor is it installed when running make install. If you need to run a make command on it, CD into it and do it from there. |
|
From: <sv...@li...> - 2005-05-04 10:33:07
|
Author: nkukard Date: 2005-05-04 10:31:43 +0000 (Wed, 04 May 2005) New Revision: 74 Modified: trunk/Makefile.am trunk/Makefile.in trunk/README trunk/bwm_firewall/Makefile.in trunk/bwm_graph/Makefile.am trunk/bwm_graph/Makefile.in trunk/bwm_graph/graph.c trunk/bwm_monitor/Makefile.in trunk/bwmd/Makefile.in trunk/configure trunk/configure.ac trunk/doc/Makefile.in trunk/lib/Makefile.in Log: * Fixed bug that prevented bwm_graph from being built without the build system including rrd.h * Documented rare build case in which rrdtool does not build Modified: trunk/Makefile.am =================================================================== --- trunk/Makefile.am 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/Makefile.am 2005-05-04 10:31:43 UTC (rev 74) @@ -17,7 +17,7 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -SUBDIRS=$(subdirs) lib bwm_firewall bwm_graph bwmd bwm_monitor doc +SUBDIRS=lib bwm_firewall bwm_graph bwmd bwm_monitor doc EXTRA_DIST=include/autoclass.h include/common.h include/flow.h include/flowControl.h include/ipq.h EXTRA_DIST+=include/libipq.h include/misc.h include/report.h include/xmlConf.h Modified: trunk/Makefile.in =================================================================== --- trunk/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -146,7 +146,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ @@ -199,7 +198,7 @@ subdirs = @subdirs@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ -SUBDIRS = $(subdirs) lib bwm_firewall bwm_graph bwmd bwm_monitor doc +SUBDIRS = lib bwm_firewall bwm_graph bwmd bwm_monitor doc EXTRA_DIST = include/autoclass.h include/common.h include/flow.h \ include/flowControl.h include/ipq.h include/libipq.h \ include/misc.h include/report.h include/xmlConf.h Modified: trunk/README =================================================================== --- trunk/README 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/README 2005-05-04 10:31:43 UTC (rev 74) @@ -16,6 +16,14 @@ Bandwidth management daemon, used to manage flows and log traffic stats +Notes: +------ +When building BWM Tools with the --with-rrdtool-source option, you MUST +run configure and make from the top_srcdir, due to a build flaw in rrdtool +you CANNOT create a build directory, run ../configure --with-rrdtool-source +and think it will work as expected. + + Requirements ------------ GLib >= 2.4.0 Modified: trunk/bwm_firewall/Makefile.in =================================================================== --- trunk/bwm_firewall/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/bwm_firewall/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -144,7 +144,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ Modified: trunk/bwm_graph/Makefile.am =================================================================== --- trunk/bwm_graph/Makefile.am 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/bwm_graph/Makefile.am 2005-05-04 10:31:43 UTC (rev 74) @@ -22,14 +22,21 @@ GLIB_LIBS=@GLIB_LIBS@ GLIB_CFLAGS=@GLIB_CFLAGS@ +RRDTOOL_INCLUDEDIR=@RRDTOOL_INCLUDEDIR@ RRDTOOL_LIBS=@RRDTOOL_LIBS@ +RRDTOOL_LDADDS=@RRDTOOL_LDADDS@ LOG_DIR=@localstatedir@/bwm_tools bin_PROGRAMS = bwm_graph bwm_graph_SOURCES = bwm_graph.c graph.c -bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la -bwm_graph_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS) +bwm_graph_DEPENDENCIES = $(RRDTOOL_LDADDS) +bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS) +bwm_graph_CFLAGS = $(RRDTOOL_INCLUDEDIR) -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS) bwm_graph_LDFLAGS = $(GLIB_LIBS) $(RRDTOOL_LIBS) +# Build rrdtool if we need it +$(top_builddir)/rrdtool/src/.libs/librrd.a: + $(MAKE) $(AM_MAKEFLAGS) -C ../rrdtool + Modified: trunk/bwm_graph/Makefile.in =================================================================== --- trunk/bwm_graph/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/bwm_graph/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -72,7 +72,7 @@ am_bwm_graph_OBJECTS = bwm_graph-bwm_graph.$(OBJEXT) \ bwm_graph-graph.$(OBJEXT) bwm_graph_OBJECTS = $(am_bwm_graph_OBJECTS) -bwm_graph_DEPENDENCIES = $(top_builddir)/lib/libbwm.la +am__DEPENDENCIES_1 = DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -145,7 +145,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ @@ -199,10 +198,14 @@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ EXTRA_DIST = graph.h +RRDTOOL_INCLUDEDIR = @RRDTOOL_INCLUDEDIR@ +RRDTOOL_LIBS = @RRDTOOL_LIBS@ +RRDTOOL_LDADDS = @RRDTOOL_LDADDS@ LOG_DIR = @localstatedir@/bwm_tools bwm_graph_SOURCES = bwm_graph.c graph.c -bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la -bwm_graph_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS) +bwm_graph_DEPENDENCIES = $(RRDTOOL_LDADDS) +bwm_graph_LDADD = $(top_builddir)/lib/libbwm.la $(RRDTOOL_LDADDS) +bwm_graph_CFLAGS = $(RRDTOOL_INCLUDEDIR) -I$(top_srcdir)/include $(GLIB_CFLAGS) -DLOG_DIR=\"$(LOG_DIR)\" $(AM_CFLAGS) bwm_graph_LDFLAGS = $(GLIB_LIBS) $(RRDTOOL_LIBS) all: all-am @@ -505,6 +508,10 @@ pdf pdf-am ps ps-am tags uninstall uninstall-am \ uninstall-binPROGRAMS uninstall-info-am + +# Build rrdtool if we need it +$(top_builddir)/rrdtool/src/.libs/librrd.a: + $(MAKE) $(AM_MAKEFLAGS) -C ../rrdtool # 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: Modified: trunk/bwm_graph/graph.c =================================================================== --- trunk/bwm_graph/graph.c 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/bwm_graph/graph.c 2005-05-04 10:31:43 UTC (rev 74) @@ -35,6 +35,7 @@ #include <time.h> #include <unistd.h> #include <rrd.h> + #include "common.h" #include "graph.h" #include "misc.h" Modified: trunk/bwm_monitor/Makefile.in =================================================================== --- trunk/bwm_monitor/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/bwm_monitor/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -145,7 +145,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ Modified: trunk/bwmd/Makefile.in =================================================================== --- trunk/bwmd/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/bwmd/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -147,7 +147,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ Modified: trunk/configure =================================================================== --- trunk/configure 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/configure 2005-05-04 10:31:43 UTC (rev 74) @@ -464,7 +464,7 @@ #endif" ac_subdirs_all="$ac_subdirs_all rrdtool" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL subdirs RRDTOOL! _LIBS ALLOCA LIBOBJS PKG_CONFIG GLIB_CFLAGS GLIB_LIBS GLIB_GENMARSHAL GOBJECT_QUERY GLIB_MKENUMS XML2_CONFIG XML_CPPFLAGS XML_LIBS XML_CFLAGS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL subdirs RRDTOOL! _LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR ALLOCA LIBOBJS PKG_CONFIG GLIB_CFLAGS GLIB_LIBS GLIB_GENMARSHAL GOBJECT_QUERY GLIB_MKENUMS XML2_CONFIG XML_CPPFLAGS XML_LIBS XML_CFLAGS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -19497,7 +19497,8 @@ subdirs="$subdirs rrdtool" - RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrd.a" + RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/.libs/librrd.a" + RRDTOOL_INCLUDEDIR="-I\$(top_builddir)/rrdtool/src" else @@ -24122,7 +24123,9 @@ s,@ac_ct_F77@,$ac_ct_F77,;t t s,@LIBTOOL@,$LIBTOOL,;t t s,@subdirs@,$subdirs,;t t +s,@RRDTOOL_LDADDS@,$RRDTOOL_LDADDS,;t t s,@RRDTOOL_LIBS@,$RRDTOOL_LIBS,;t t +s,@RRDTOOL_INCLUDEDIR@,$RRDTOOL_INCLUDEDIR,;t t s,@ALLOCA@,$ALLOCA,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@PKG_CONFIG@,$PKG_CONFIG,;t t Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/configure.ac 2005-05-04 10:31:43 UTC (rev 74) @@ -46,7 +46,8 @@ [ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir], [ AC_CONFIG_SUBDIRS(rrdtool) - RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrd.a" + RRDTOOL_LDADDS="\$(top_builddir)/rrdtool/src/.libs/librrd.a" + RRDTOOL_INCLUDEDIR="-I\$(top_builddir)/rrdtool/src" ], [ AC_CHECK_LIB([rrd], [rrd_create],have_librrd=yes,,"-lm") @@ -68,7 +69,7 @@ fi RRDTOOL_LIBS="-lm -lrrd" ]) -AC_SUBST(RRDTOOL_LIBS) +AC_SUBST(RRDTOOL_LDADDS RRDTOOL_LIBS RRDTOOL_INCLUDEDIR) # Checks for header files. AC_HEADER_STDC Modified: trunk/doc/Makefile.in =================================================================== --- trunk/doc/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/doc/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -136,7 +136,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ Modified: trunk/lib/Makefile.in =================================================================== --- trunk/lib/Makefile.in 2005-04-20 06:53:04 UTC (rev 73) +++ trunk/lib/Makefile.in 2005-05-04 10:31:43 UTC (rev 74) @@ -149,7 +149,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ -RRDTOOL_LIBS = @RRDTOOL_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ |
|
From: <sv...@li...> - 2005-04-20 06:53:29
|
Author: nkukard Date: 2005-04-20 06:53:04 +0000 (Wed, 20 Apr 2005) New Revision: 73 Modified: trunk/configure trunk/configure.ac Log: * Fixed bug where librrdtool.a was used instead of librrd.a Modified: trunk/configure =================================================================== --- trunk/configure 2005-04-20 06:49:54 UTC (rev 72) +++ trunk/configure 2005-04-20 06:53:04 UTC (rev 73) @@ -19497,7 +19497,7 @@ subdirs="$subdirs rrdtool" - RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrdtool.a" + RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrd.a" else Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2005-04-20 06:49:54 UTC (rev 72) +++ trunk/configure.ac 2005-04-20 06:53:04 UTC (rev 73) @@ -46,7 +46,7 @@ [ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir], [ AC_CONFIG_SUBDIRS(rrdtool) - RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrdtool.a" + RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrd.a" ], [ AC_CHECK_LIB([rrd], [rrd_create],have_librrd=yes,,"-lm") |
|
From: <sv...@li...> - 2005-04-20 06:50:43
|
Author: nkukard
Date: 2005-04-20 06:49:54 +0000 (Wed, 20 Apr 2005)
New Revision: 72
Modified:
tags/v0.2.1/configure
tags/v0.2.1/configure.ac
tags/v0.2.1/doc/stamp-vti
tags/v0.2.1/doc/version.texi
Log:
* Fixed configure bug where librrdtool.a was used instead of librrd.a
Modified: tags/v0.2.1/configure
===================================================================
--- tags/v0.2.1/configure 2005-04-20 06:43:23 UTC (rev 71)
+++ tags/v0.2.1/configure 2005-04-20 06:49:54 UTC (rev 72)
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for bwm_tools 0.2.0.
+# Generated by GNU Autoconf 2.59 for bwm_tools 0.2.1.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
@@ -421,8 +421,8 @@
# Identity of this package.
PACKAGE_NAME='bwm_tools'
PACKAGE_TARNAME='bwm_tools'
-PACKAGE_VERSION='0.2.0'
-PACKAGE_STRING='bwm_tools 0.2.0'
+PACKAGE_VERSION='0.2.1'
+PACKAGE_STRING='bwm_tools 0.2.1'
PACKAGE_BUGREPORT=''
ac_unique_file="bwm_monitor/bwm_monitor.c"
@@ -953,7 +953,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures bwm_tools 0.2.0 to adapt to many kinds of systems.
+\`configure' configures bwm_tools 0.2.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1019,7 +1019,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of bwm_tools 0.2.0:";;
+ short | recursive ) echo "Configuration of bwm_tools 0.2.1:";;
esac
cat <<\_ACEOF
@@ -1162,7 +1162,7 @@
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-bwm_tools configure 0.2.0
+bwm_tools configure 0.2.1
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1176,7 +1176,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by bwm_tools $as_me 0.2.0, which was
+It was created by bwm_tools $as_me 0.2.1, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1830,7 +1830,7 @@
# Define the identity of the package.
PACKAGE='bwm_tools'
- VERSION='0.2.0'
+ VERSION='0.2.1'
cat >>confdefs.h <<_ACEOF
@@ -19497,7 +19497,7 @@
subdirs="$subdirs rrdtool"
- RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrdtool.a"
+ RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrd.a"
else
@@ -23789,7 +23789,7 @@
} >&5
cat >&5 <<_CSEOF
-This file was extended by bwm_tools $as_me 0.2.0, which was
+This file was extended by bwm_tools $as_me 0.2.1, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -23852,7 +23852,7 @@
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-bwm_tools config.status 0.2.0
+bwm_tools config.status 0.2.1
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
Modified: tags/v0.2.1/configure.ac
===================================================================
--- tags/v0.2.1/configure.ac 2005-04-20 06:43:23 UTC (rev 71)
+++ tags/v0.2.1/configure.ac 2005-04-20 06:49:54 UTC (rev 72)
@@ -20,7 +20,7 @@
*/
AC_PREREQ(2.57)
-AC_INIT([bwm_tools],[0.2.0])
+AC_INIT([bwm_tools],[0.2.1])
AC_CONFIG_SRCDIR([bwm_monitor/bwm_monitor.c])
AC_CONFIG_HEADER([config.h])
@@ -46,7 +46,7 @@
[ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir],
[
AC_CONFIG_SUBDIRS(rrdtool)
- RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrdtool.a"
+ RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrd.a"
],
[
AC_CHECK_LIB([rrd], [rrd_create],have_librrd=yes,,"-lm")
Modified: tags/v0.2.1/doc/stamp-vti
===================================================================
--- tags/v0.2.1/doc/stamp-vti 2005-04-20 06:43:23 UTC (rev 71)
+++ tags/v0.2.1/doc/stamp-vti 2005-04-20 06:49:54 UTC (rev 72)
@@ -1,4 +1,4 @@
-@set UPDATED 6 April 2005
+@set UPDATED 20 April 2005
@set UPDATED-MONTH April 2005
-@set EDITION devel
-@set VERSION devel
+@set EDITION 0.2.1
+@set VERSION 0.2.1
Modified: tags/v0.2.1/doc/version.texi
===================================================================
--- tags/v0.2.1/doc/version.texi 2005-04-20 06:43:23 UTC (rev 71)
+++ tags/v0.2.1/doc/version.texi 2005-04-20 06:49:54 UTC (rev 72)
@@ -1,4 +1,4 @@
-@set UPDATED 6 April 2005
+@set UPDATED 20 April 2005
@set UPDATED-MONTH April 2005
-@set EDITION devel
-@set VERSION devel
+@set EDITION 0.2.1
+@set VERSION 0.2.1
|
|
From: <sv...@li...> - 2005-04-20 06:44:04
|
Author: nkukard Date: 2005-04-20 06:43:23 +0000 (Wed, 20 Apr 2005) New Revision: 71 Added: tags/v0.2.1/ Log: * Tagged v0.2.0 as v0.2.1 to commence bug fixing Copied: tags/v0.2.1 (from rev 70, tags/v0.2.0) |
|
From: <sv...@li...> - 2005-04-12 10:12:41
|
Author: nkukard
Date: 2005-04-12 10:11:31 +0000 (Tue, 12 Apr 2005)
New Revision: 69
Modified:
trunk/configure
trunk/configure.ac
Log:
* Small wording fix
Modified: trunk/configure
===================================================================
--- trunk/configure 2005-04-06 09:26:55 UTC (rev 68)
+++ trunk/configure 2005-04-12 10:11:31 UTC (rev 69)
@@ -1046,7 +1046,7 @@
both]
--with-tags[=TAGS]
include additional configurations [automatic]
- --with-rrdtool-source Specify directory where rrdtool sources are
+ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir
--with-xml-prefix=PFX Prefix where libxml is installed (optional)
--with-xml-exec-prefix=PFX Exec prefix where libxml is installed (optional)
@@ -19497,7 +19497,7 @@
subdirs="$subdirs rrdtool"
- RRDTOOL_LIBS="$top_builddir/rrdtool/src/.libs/librrdtool.a"
+ RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrdtool.a"
else
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2005-04-06 09:26:55 UTC (rev 68)
+++ trunk/configure.ac 2005-04-12 10:11:31 UTC (rev 69)
@@ -43,10 +43,10 @@
AC_CHECK_LIB([panel], [panel_window])
AC_ARG_WITH([rrdtool-source],
- [ --with-rrdtool-source Specify directory where rrdtool sources are],
+ [ --with-rrdtool-source Specify that you have the rrdtool sources in the main build dir],
[
AC_CONFIG_SUBDIRS(rrdtool)
- RRDTOOL_LIBS="$top_builddir/rrdtool/src/.libs/librrdtool.a"
+ RRDTOOL_LIBS="\$(top_builddir)/rrdtool/src/.libs/librrdtool.a"
],
[
AC_CHECK_LIB([rrd], [rrd_create],have_librrd=yes,,"-lm")
|
|
From: <sv...@li...> - 2005-04-06 09:27:23
|
Author: nkukard
Date: 2005-04-06 09:26:55 +0000 (Wed, 06 Apr 2005)
New Revision: 68
Modified:
trunk/doc/bwmtools.texi
Log:
* Updated bwm-tools website to reflect new hosting provider
Modified: trunk/doc/bwmtools.texi
===================================================================
--- trunk/doc/bwmtools.texi 2005-04-06 09:14:20 UTC (rev 67)
+++ trunk/doc/bwmtools.texi 2005-04-06 09:26:55 UTC (rev 68)
@@ -143,7 +143,7 @@
@enumerate
@item
Download the latest version of BWM Tools, the latest version can be
-found on the project homepage: @url{http://bwm-tools.lbsd.net}
+found on the project homepage: @url{http://bwm-tools.pr.linuxrulz.org}
@*
@item
Uncompress the archive using either @code{tar jxvf <archive name>.tar.bz2}
|
|
From: <sv...@li...> - 2005-04-06 09:15:20
|
Author: nkukard
Date: 2005-04-06 09:14:20 +0000 (Wed, 06 Apr 2005)
New Revision: 67
Modified:
trunk/TODO
trunk/bwm_firewall/bwm_firewall.c
trunk/doc/bwmtools.texi
trunk/doc/stamp-vti
trunk/doc/version.texi
trunk/lib/xmlConf.c
Log:
* Added support for masq tag in NAT section for MASQUERADE support
* Fixed some memory cleanup issues in xml parser
* Removed xml library version checking
* Added check for configuration file presense
* Throw an error for invalid tags in <nat> section
* Added checks for NAT tag parameter validity
* Fixed some error messages that didn't have newlines at the end
* Fixed bug where comments in the NAT section create an endless loop in bwm_firewall
* Updated documentation to reflect changes
* Updated TODO appropriately
Modified: trunk/TODO
===================================================================
--- trunk/TODO 2005-01-30 16:03:38 UTC (rev 66)
+++ trunk/TODO 2005-04-06 09:14:20 UTC (rev 67)
@@ -4,12 +4,8 @@
* Add limits on number of packets
* Add graphing support to bwm_monitor
* Add multiple views to bwm_monitor
-* to-destination is invalid in snat section
-* to-source is invalid in dnat section
* Add checking for the port param in the xml file, proto must be specified
* Totals option on graphing, aswell as a few more options: avg, time from, time to, totals
-* Add a queue to bwmd of the incomming and one of the outgoing/dropped packets so we keep
- netlink syn, not async
* Add maxRate graphing to graph.c
* Add shared mem resizing to stats.c
* Add menu to bwm_monitor to which IP it wants to connect to, authentication aswell and default
Modified: trunk/bwm_firewall/bwm_firewall.c
===================================================================
--- trunk/bwm_firewall/bwm_firewall.c 2005-01-30 16:03:38 UTC (rev 66)
+++ trunk/bwm_firewall/bwm_firewall.c 2005-04-06 09:14:20 UTC (rev 67)
@@ -64,8 +64,9 @@
char *tableName;
int i;
char counters[7] = "";
+ struct stat fstat;
+
-
// Loop with a table
void processTable(gpointer p_key, gpointer p_value, gpointer p_user_data)
{
@@ -128,12 +129,25 @@
}
-
+ /* Don't test version, it displays a nasty error
+ LIBXML_TEST_VERSION
+ */
// COMPAT: Do not genrate nodes for formatting spaces
- LIBXML_TEST_VERSION
xmlKeepBlanksDefault(0);
-
- // FIXME - check if file exists
+
+ /* Check if file exists */
+ if (stat(filename,&fstat) != 0)
+ {
+ fprintf(stderr,"ERROR: Failed to stat configuration path \"%s\": %s",filename,strerror(errno));
+ return NULL;
+ }
+ else
+ if (!S_ISREG(fstat.st_mode))
+ {
+ fprintf(stderr,"ERROR: Specified configuration path \"%s\" is not a regular file",filename);
+ return NULL;
+ }
+
// Build an XML tree from a the file
doc = xmlParseFile(filename);
if (doc == NULL)
@@ -184,13 +198,16 @@
// Try find sections
if (!xmlStrcmp(cur->name, (const xmlChar *) "global"))
classHash = parseGlobal(doc,cur);
- if (!xmlStrcmp(cur->name, (const xmlChar *) "acl"))
+ else if (!xmlStrcmp(cur->name, (const xmlChar *) "acl"))
parseACL(doc,cur,fwHash,classHash);
- if (!xmlStrcmp(cur->name, (const xmlChar *) "nat"))
+ else if (!xmlStrcmp(cur->name, (const xmlChar *) "nat"))
parseNAT(doc,cur,fwHash,classHash);
- if (!xmlStrcmp(cur->name, (const xmlChar *) "traffic"))
+ else if (!xmlStrcmp(cur->name, (const xmlChar *) "traffic"))
parseTraffic(doc,cur,fwHash,classHash);
-
+ // Make sure this isn't a comment
+ else if (xmlStrcmp(cur->name, (const xmlChar *) "text"))
+ fprintf(stderr,"ERROR: Section <%s> not recognised, ignoring",cur->name);
+
// Next plz!!
cur = cur->next;
}
Modified: trunk/doc/bwmtools.texi
===================================================================
--- trunk/doc/bwmtools.texi 2005-01-30 16:03:38 UTC (rev 66)
+++ trunk/doc/bwmtools.texi 2005-04-06 09:14:20 UTC (rev 67)
@@ -499,6 +499,11 @@
traffic_to_webserver
</rule>
</dnat>
+ <masq>
+ <rule name="traf_to_from_inside">
+ internal_dsl_ips
+ </rule>
+ </masq>
</nat>
.
.
@@ -506,11 +511,11 @@
</firewall>
@end smallexample
@*
-There are 2 tags available, @code{<snat>} and @code{<dnat>}, these two
-tags are used for soure network address translation and destination
-address translation respectively.
+There are 3 tags available, @code{<snat>}, @code{<dnat>} and @code{<masq>},
+these three tags are used for source network address translation, destination
+address translation and masquerading respectively.
@*@*
-Valid options for these two tags are as follows@dots{}
+Valid options for these tags are as follows@dots{}
@*
@itemize
@item
@@ -523,10 +528,10 @@
internet comming from the webservers internal IP 192.168.1.100 which is
not going to work, the firewall translates 192.168.1.100 to a globally
routable IP address.
-@*
+@*@*
There are no parameters for this tag, although the following sub-tags and
parameters are available@dots{}
-@*
+@*@*
@itemize
@item
@cindex rule
@@ -568,7 +573,7 @@
@*@*
There are no parameters for this tag, although the following sub-tags and
parameters are available@dots{}
-@*
+@*@*
@itemize
@item
@cindex rule
@@ -594,7 +599,48 @@
@*@*
Multiple classes can be listed, one per line.
@end itemize
+
+@*
+@item
+@cindex masq
+Masquerading using @code{<masq>}
+@*@*
+Masquerading is normally used for source address translation in the
+scenario where you have a dynamic IP and never know what address to do the
+translation to. An example of which is a home PC acting as a DSL router.
+@*@*
+There are no parameters for this tag, although the following sub-tags and
+parameters are available@dots{}
+@*@*
+@itemize
+@item
+@cindex rule
+Specify a rule with @code{<rule> @dots{} </rule>}
+@*@*
+The @code{<rule>} tag is used to specify what classes apply to what rule,
+and are in order inserted into the actual iptables chains as iptables rules.
+
+The @code{<rule>} tag takes the following parameters@dots{}
+@*
+@itemize
+@item
+@code{name="@dots{}"} - Optional name of rule
+@*
+@item
+@cindex to-ports
+@code{to-ports"@dots{}"} - This specifies a range of source ports to use,
+overriding the default SNAT source port-selection heuristics. For this
+parameter to work you MUST have defined a protocol in all the classes
+specified. For example @code{proto="tcp"}.
@end itemize
+
+Between the opening and closing tags, classes defined in the @code{<global>}
+section are listed, these classify which traffic applies to which rule.
+@*@*
+Multiple classes can be listed, one per line.
+@end itemize
+
+@end itemize
@*
An example using the above definitions would look something like this@dots{}
@*
@@ -626,8 +672,31 @@
</firewall>
@end smallexample
+@*
+Here is an example if you pc is acting as a DSL router@dots{}
+@*
+@smallexample
+<firewall>
+ # Global configuration and access classes
+ <global>
+ <class name="traf_going_to_dsl">
+ <address src="192.168.0.0/24"/>
+ </class>
+ </global>
+ # Network address translation
+ <nat>
+ <masq>
+ <rule name="masq_traffic_going_out">
+ traf_going_to_dsl
+ </rule>
+ </masq>
+ </nat>
+</firewall>
+@end smallexample
+
+
@node Traffic
@section The @code{<traffic>} section
@cindex shaping
Modified: trunk/doc/stamp-vti
===================================================================
--- trunk/doc/stamp-vti 2005-01-30 16:03:38 UTC (rev 66)
+++ trunk/doc/stamp-vti 2005-04-06 09:14:20 UTC (rev 67)
@@ -1,4 +1,4 @@
-@set UPDATED 21 January 2005
-@set UPDATED-MONTH January 2005
+@set UPDATED 6 April 2005
+@set UPDATED-MONTH April 2005
@set EDITION devel
@set VERSION devel
Modified: trunk/doc/version.texi
===================================================================
--- trunk/doc/version.texi 2005-01-30 16:03:38 UTC (rev 66)
+++ trunk/doc/version.texi 2005-04-06 09:14:20 UTC (rev 67)
@@ -1,4 +1,4 @@
-@set UPDATED 21 January 2005
-@set UPDATED-MONTH January 2005
+@set UPDATED 6 April 2005
+@set UPDATED-MONTH April 2005
@set EDITION devel
@set VERSION devel
Modified: trunk/lib/xmlConf.c
===================================================================
--- trunk/lib/xmlConf.c 2005-01-30 16:03:38 UTC (rev 66)
+++ trunk/lib/xmlConf.c 2005-04-06 09:14:20 UTC (rev 67)
@@ -201,11 +201,14 @@
className = (char *) data;
found = 0;
- // Loop with class hash
- g_hash_table_foreach(classHash,processClassHash,NULL);
+ // First check we have a classHash, if use didn't specify any, this will be NULL */
+ if (classHash)
+ // Loop with class hash
+ g_hash_table_foreach(classHash,processClassHash,NULL);
+
// Check if we found it
if (!found)
- fprintf(stderr,"ERROR: Class %s invalid\n",className);
+ fprintf(stderr,"ERROR: Class %s invalid, ignoring\n",className);
}
@@ -334,7 +337,7 @@
}
// Function which creates our "special" nat extra cmd_line options
-static char *createNATRuleset(GHashTable *properties)
+static char *createNATRuleset(char *target, GHashTable *properties)
{
char *buffer;
char *tmp;
@@ -353,16 +356,46 @@
// Processing time...
if (!xmlStrcmp(key,"to-src") && !done)
{
- snprintf(tmp,BUFFER_SIZE,"--to-source %s ",value);
- strncat(buffer,tmp,BUFFER_SIZE);
+ // Make sure to-src is only used in SNAT section
+ if ((strcmp(target, "SNAT") == 0))
+ {
+ snprintf(tmp,BUFFER_SIZE,"--to-source %s ",value);
+ strncat(buffer,tmp,BUFFER_SIZE);
+ }
+ else
+ fprintf(stderr,"ERROR: Tag parameter \"to-src\" is only valid in the <snat> tag, ignoring\n");
+
done = 1;
}
+
if (!xmlStrcmp(key,"to-dst") && !done)
{
- snprintf(tmp,BUFFER_SIZE,"--to-destination %s ",value);
- strncat(buffer,tmp,BUFFER_SIZE);
+ // Make sure to-dst is only used in DNAT section
+ if ((strcmp(target, "DNAT") == 0))
+ {
+ snprintf(tmp,BUFFER_SIZE,"--to-destination %s ",value);
+ strncat(buffer,tmp,BUFFER_SIZE);
+ }
+ else
+ fprintf(stderr,"ERROR: Tag parameter \"to-dst\" is only valid in the <dnat> tag, ignoring\n");
+
done = 1;
}
+
+ if (!xmlStrcmp(key,"to-ports") && !done)
+ {
+ // Make sure to-ports is only used in DNAT section
+ if ((strcmp(target, "MASQUERADE") == 0))
+ {
+ snprintf(tmp,BUFFER_SIZE,"--to-ports %s ",value);
+ strncat(buffer,tmp,BUFFER_SIZE);
+ }
+ else
+ fprintf(stderr,"ERROR: Tag parameter \"to-ports\" is only valid in the <masq> tag, ignoring\n");
+
+ done = 1;
+ }
+
if (!xmlStrcmp(key,"name") && !done) // Ignore this one
done = 1;
@@ -383,7 +416,7 @@
// Free sum mem
free(tmp);
- // Return the string FIXME - free mem in parent?
+ // Return the string
return buffer;
}
@@ -452,7 +485,7 @@
// Free sum mem
free(tmp);
- // Return the string FIXME - free mem in parent?
+ // Return the string
return buffer;
}
@@ -508,19 +541,34 @@
xmlDocPtr doc;
xmlNodePtr cur;
GHashTable *moduleHash = NULL;
-
+ struct stat fstat;
+
moduleHash = g_hash_table_new_full(g_str_hash,g_str_equal,free,free);
+ /* Don't test version, it displays a nasty error
+ LIBXML_TEST_VERSION
+ */
// COMPAT: Do not genrate nodes for formatting spaces
- LIBXML_TEST_VERSION
xmlKeepBlanksDefault(0);
- // FIXME - check if file exists
+ // Check if config file exists
+ if (stat(filename,&fstat) != 0)
+ {
+ fprintf(stderr,"ERROR: Failed to stat configuration path \"%s\": %s\n",filename,strerror(errno));
+ return NULL;
+ }
+ else
+ if (!S_ISREG(fstat.st_mode))
+ {
+ fprintf(stderr,"ERROR: Specified configuration path \"%s\" is not a regular file\n",filename);
+ return NULL;
+ }
+
// Build an XML tree from a the file
doc = xmlParseFile(filename);
if (doc == NULL)
- return(NULL);
+ return NULL;
// Check the document is of the right kind
cur = xmlDocGetRootElement(doc);
@@ -528,15 +576,15 @@
{
fprintf(stderr,"ERROR: Empty document\n");
xmlFreeDoc(doc);
- return(NULL);
+ return NULL;
}
// Check if we have the right root element & block
if (xmlStrcmp(cur->name, (const xmlChar *) "firewall"))
{
- fprintf(stderr,"ERROR: Document of the wrong type, root node != firewall");
+ fprintf(stderr,"ERROR: Document of the wrong type, root node != firewall\n");
xmlFreeDoc(doc);
- return(NULL);
+ return NULL;
}
@@ -1135,7 +1183,7 @@
// Check if we have the right root element & block
if (xmlStrcmp(cur->name, (const xmlChar *) "firewall"))
{
- fprintf(stderr,"ERROR: Document of the wrong type, root node != firewall");
+ fprintf(stderr,"ERROR: Document of the wrong type, root node != firewall\n");
xmlFreeDoc(doc);
return(ret);
}
@@ -1232,6 +1280,12 @@
target = NULL;
// Check if we found a table...
+ if (!xmlStrcmp(cur->name, (const xmlChar *) "masq"))
+ {
+ tableName = "nat";
+ chainName = "POSTROUTING";
+ target = "MASQUERADE";
+ }
if (!xmlStrcmp(cur->name, (const xmlChar *) "snat"))
{
tableName = "nat";
@@ -1276,13 +1330,13 @@
// Check if everything is ok
if (tmpRule->target == NULL)
{
- fprintf(stderr,"ERROR: All rules MUST have a target!");
- // FIXME - add memory cleanup here
+ fprintf(stderr,"ERROR: Internal error, tag <%s> has no target!\n",cur->name);
+ free(tmpRule);
}
else
{
// Get our extra params
- cmd_line = createNATRuleset(tmpProp);
+ cmd_line = createNATRuleset(tmpRule->target,tmpProp);
// Build our ruleSet
tmpChain->ruleset = g_list_concat(tmpChain->ruleset,
createRuleset(classHash,tmpRule->classList,
@@ -1290,13 +1344,15 @@
// Voila! we got it!
ruleList = g_list_append(ruleList,tmpRule);
}
+ }
- // Advance table
- chainNode = chainNode->next;
- }
-
+ // Advance table
+ chainNode = chainNode->next;
}
}
+ else
+ fprintf(stderr,"ERROR: Invalid tag used \"<%s>\" in NAT section, ignored\n",cur->name);
+
// Advance our NAT node
cur = cur->next;
}
@@ -1363,8 +1419,8 @@
// Check if everything is ok
if (tmpRule->target == NULL)
{
- fprintf(stderr,"ERROR: All rules MUST have a target!");
- // FIXME - add memory cleanup here
+ fprintf(stderr,"ERROR: All rules MUST have a target!\n");
+ free(tmpRule);
}
else
{
@@ -1402,8 +1458,8 @@
// Check if everything is ok
if (tmpRule->target == NULL)
{
- fprintf(stderr,"ERROR: All rules MUST have a target!");
- // FIXME - add memory cleanup here
+ fprintf(stderr,"ERROR: All rules MUST have a target!\n");
+ free(tmpRule);
}
else
{
@@ -1612,8 +1668,8 @@
// Check if everything is ok
if (tmpRule->target == NULL)
{
- fprintf(stderr,"ERROR: All rules MUST have a target!");
- // FIXME - add memory cleanup here
+ fprintf(stderr,"ERROR: All rules MUST have a target!\n");
+ free(tmpRule);
}
else
{
|
|
From: SVN C. <sv...@li...> - 2005-01-30 16:04:15
|
Author: nkukard
Date: 2005-01-30 18:03:38 +0200 (Sun, 30 Jan 2005)
New Revision: 66
Modified:
trunk/bwmd/autoclass.c
trunk/bwmd/flow.c
trunk/bwmd/ipq.c
trunk/include/autoclass.h
trunk/include/common.h
trunk/include/flow.h
Log:
* Added ECN support
Modified: trunk/bwmd/autoclass.c
===================================================================
--- trunk/bwmd/autoclass.c 2005-01-26 16:29:04 UTC (rev 65)
+++ trunk/bwmd/autoclass.c 2005-01-30 16:03:38 UTC (rev 66)
@@ -161,11 +161,13 @@
{
unsigned char prio = 0;
// Get type of service
- unsigned char tos = IPTOS_TOS(ip_packet->tos);
+// unsigned char ecn = AUTOCLASS_TOS_ECN_MASK(ip_packet->tos);
+ unsigned char tos = AUTOCLASS_TOS_MASK(ip_packet->tos);
+// unsigned char prec = AUTOCLASS_TOS_PREC_MASK(ip_packet->tos);
// Decide what we doing...
- if (tos == IPTOS_LOWDELAY)
+ if (tos == AUTOCLASS_TOS_LOWDELAY)
{
/*
* 1. LOW DELAY
@@ -174,7 +176,7 @@
*/
prio = 10;
}
- else if (tos == IPTOS_THROUGHPUT)
+ else if (tos == AUTOCLASS_TOS_THROUGHPUT)
{
/*
* 2. THROUGHPUT
@@ -182,22 +184,13 @@
* - low drop probability
*/
}
- else if (tos == IPTOS_RELIABILITY)
+ else if (tos == AUTOCLASS_TOS_RELIABILITY)
{
/*
* 3. RELIABILITY
* - low drop probability
*/
}
- else if (tos == IPTOS_MINCOST)
- {
-/*
- * 4. MIN COST
- * - PRIO 90
- * - high drop probability
- */
- prio = 90;
- }
return prio;
}
Modified: trunk/bwmd/flow.c
===================================================================
--- trunk/bwmd/flow.c 2005-01-26 16:29:04 UTC (rev 65)
+++ trunk/bwmd/flow.c 2005-01-30 16:03:38 UTC (rev 66)
@@ -365,7 +365,18 @@
{
// Re-inject packet for processing, check if it was ok...
g_mutex_lock(runnerData->IPQLock);
- status = ipq_set_verdict(runnerData->IPQHandle, PKT_ID(packet), NF_ACCEPT, 0, NULL);
+
+ // Check if our packet was changed
+ if (packet->changed)
+ {
+ struct ip_packet_t *ip_packet = (struct ip_packet_t *) packet->payload->payload;
+
+ // Send packet back modified
+ status = ipq_set_verdict(runnerData->IPQHandle, PKT_ID(packet), NF_ACCEPT, ip_packet->tot_len, (unsigned char *) ip_packet);
+ }
+ else
+ status = ipq_set_verdict(runnerData->IPQHandle, PKT_ID(packet), NF_ACCEPT, 0, NULL);
+
g_mutex_unlock(runnerData->IPQLock);
if (status < 0)
{
Modified: trunk/bwmd/ipq.c
===================================================================
--- trunk/bwmd/ipq.c 2005-01-26 16:29:04 UTC (rev 65)
+++ trunk/bwmd/ipq.c 2005-01-30 16:03:38 UTC (rev 66)
@@ -92,6 +92,7 @@
int status;
int result;
int drop = 0;
+ struct ip_packet_t *ip_packet = (struct ip_packet_t *) packet->payload->payload;
// Our find functions
@@ -138,15 +139,8 @@
// Now lets see if we don't have a queue... this means AUTO!
if (!foundQueue)
{
- struct ip_packet_t *ip_packet = (struct ip_packet_t *) packet->payload->payload;
unsigned char prio = 0;
-/*
- fprintf(stderr,"auto packet queue -> protocol = %i, src = %i.%i.%i.%i, dest = %i.%i.%i.%i, tos = 0x%x\n", ip_packet->protocol,
- ip_packet->u_saddr.addr.a, ip_packet->u_saddr.addr.b, ip_packet->u_saddr.addr.c, ip_packet->u_saddr.addr.d,
- ip_packet->u_daddr.addr.a, ip_packet->u_daddr.addr.b, ip_packet->u_daddr.addr.c, ip_packet->u_daddr.addr.d,
- IPTOS_PREC(ip_packet->tos));
-*/
prio = autoClassify(ip_packet,foundFlow->prioClassifier);
@@ -191,8 +185,24 @@
prob = avgProb + curProb;
// Check if we should drop packet
drop = drand < prob;
+
+ // If queue is 10% full, set CE bit if we ECN capable
+ if (!drop && (avgQueueSize / curQueueSize) > 0.10)
+ {
+ unsigned char ecn = AUTOCLASS_TOS_ECN_MASK(ip_packet->tos);
+
+
+ // We are ECN capable
+ if (ecn < 3)
+ {
+ // Set CE codepoint to communicate congestion
+ ip_packet->tos |= AUTOCLASS_TOS_ECN_CE;
+ // Tell flowRunner we modified the packet
+ packet->changed = 1;
+ }
+ }
}
-
+
}
// Check if we must pass the packet
@@ -327,6 +337,9 @@
// Copy packet
memcpy(packet->payload,m,pkt_len);
+ // Set packet as not changed
+ packet->changed = 0;
+
// Queue the packet...
status = queuePacket(runnerData,packet->payload->mark,packet);
if (status < 0)
Modified: trunk/include/autoclass.h
===================================================================
--- trunk/include/autoclass.h 2005-01-26 16:29:04 UTC (rev 65)
+++ trunk/include/autoclass.h 2005-01-30 16:03:38 UTC (rev 66)
@@ -35,6 +35,28 @@
#define AUTOCLASS_TOS 2
+// Type of Service / DSCP / ECN ... etc
+#define AUTOCLASS_TOS_ECN_MASK(tos) ((tos) & 0x03) // Mask of all ECN bits
+#define AUTOCLASS_TOS_ECN_ECT0 0x01
+#define AUTOCLASS_TOS_ECN_ECT1 0x02
+#define AUTOCLASS_TOS_ECN_CE 0x03
+
+#define AUTOCLASS_TOS_MASK(tos) ((tos) & 0x1c) // Mask of all TOS bits
+#define AUTOCLASS_TOS_RELIABILITY 0x04 // High Reliability
+#define AUTOCLASS_TOS_THROUGHPUT 0x08 // High Throughput
+#define AUTOCLASS_TOS_LOWDELAY 0x10 // Low Delay
+
+#define AUTOCLASS_TOS_PREC_MASK(tos) ((tos) & 0xe0) // Mask of all PREC bits
+#define AUTOCLASS_TOS_PREC_ROUTINE 0x00 // Routine
+#define AUTOCLASS_TOS_PREC_PRIORITY 0x20 // Priority
+#define AUTOCLASS_TOS_PREC_IMMEDIATE 0x40 // Immediate
+#define AUTOCLASS_TOS_PREC_FLASH 0x60 // Flash
+#define AUTOCLASS_TOS_PREC_FLASH_OVERRIDE 0x80 // Flash Override
+#define AUTOCLASS_TOS_PREC_CRITIC_ECP 0xa0 // Critic/ECP
+#define AUTOCLASS_TOS_PREC_INTERNETWORK_CONTROL 0xc0 // Internetwork control
+#define AUTOCLASS_TOS_PREC_NETWORK_CONTROL 0xe0 // Network control
+
+
// Auto classify packet and return priority (1 - best, 100 - worst)
unsigned char autoClassify(struct ip_packet_t *ip_packet, unsigned char prioClassifier);
Modified: trunk/include/common.h
===================================================================
--- trunk/include/common.h 2005-01-26 16:29:04 UTC (rev 65)
+++ trunk/include/common.h 2005-01-30 16:03:38 UTC (rev 66)
@@ -81,9 +81,11 @@
};
+// This is used in the queueing and is the item used in the queue
struct packet_t
{
ipq_packet_msg_t *payload;
+ unsigned char changed;
};
Modified: trunk/include/flow.h
===================================================================
--- trunk/include/flow.h 2005-01-26 16:29:04 UTC (rev 65)
+++ trunk/include/flow.h 2005-01-30 16:03:38 UTC (rev 66)
@@ -176,12 +176,14 @@
int pktBursted);
+// Message log facility
+void logMessage(int priority, const char *fmt, ...);
+
+
// Flow runner thread
void *flowRunner(void *data);
-
-
// Check if we will exceed flow queuing limits
static inline int will_exceed_flow_queue(struct flow_t *flow, unsigned int pktSize)
{
@@ -189,7 +191,5 @@
(flow->curQueueSize + pktSize >= flow->maxQueueSize && flow->maxQueueSize != 0));
}
-extern void logMessage(int priority, const char *fmt, ...);
-
#endif
|