[build] mostly static linking stuff

pull/69/head
Timothy Stack 11 years ago
parent 7fea5565d2
commit b4ed348428

74
configure vendored

@ -627,6 +627,7 @@ ac_subst_vars='am__EXEEXT_FALSE
am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
STATIC_LDFLAGS
SQLITE3_VERSION
SQLITE3_LIBS
SQLITE3_LDFLAGS
@ -658,7 +659,6 @@ PYTHON
LN_S
RANLIB
CFLAGS_PG
STATIC_LDFLAGS
am__fastdepCXX_FALSE
am__fastdepCXX_TRUE
CXXDEPMODE
@ -755,13 +755,13 @@ ac_user_opts='
enable_option_checking
enable_silent_rules
enable_dependency_tracking
enable_static
enable_profiling
with_ncurses
with_ncursesw
with_pcre
with_readline
with_sqlite3
enable_static
'
ac_precious_vars='build_alias
host_alias
@ -1401,8 +1401,8 @@ Optional Features:
do not reject slow dependency extractors
--disable-dependency-tracking
speeds up one-time build
--disable-static Disable static linking
--enable-profiling Compile with gprof(1) profiling support
--disable-static Disable static linking
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@ -3087,7 +3087,7 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
for defdir in /usr/local /opt/local; do
for defdir in /usr /usr/local /opt/local; do
if test -d "$defdir/include"; then
CPPFLAGS="$CPPFLAGS -I$defdir/include"
fi
@ -3812,37 +3812,6 @@ fi
# CFLAGS=`echo $CFLAGS | sed 's/-O2//g'`
# CXXFLAGS=`echo $CXXFLAGS | sed 's/-O2//g'`
# Check whether --enable-static was given.
if test "${enable_static+set}" = set; then :
enableval=$enable_static;
fi
if test x"${enable_static}" != x"no"; then
case "$host_os" in
darwin*)
STATIC_LDFLAGS="$STATIC_LDFLAGS -Wl,-search_paths_first -Lstatic-libs"
# This is a hack to link against static libraries instead of shared
# on OS X so that we can build a mostly statically link exe that can
# be downloaded and used right away.
mkdir -p src/static-libs
for libflag in $LDFLAGS; do
case $libflag in
-Lstatic-libs)
;;
-L*)
ln -sf `echo $libflag/*.a | sed -e 's/-L//'` \
src/static-libs/.;
;;
esac
done
;;
*)
STATIC_LDFLAGS="$STATIC_LDFLAGS -static"
;;
esac
fi
# Check whether --enable-profiling was given.
if test "${enable_profiling+set}" = set; then :
enableval=$enable_profiling;
@ -7034,6 +7003,41 @@ $as_echo "#define _BSD_SOURCE 1" >>confdefs.h
;;
esac
ALL_LDFLAGS="$LDFLAGS $SQLITE3_LDFLAGS"
static_lib_list="libncurses.a libreadline.a libsqlite3.a libz.a libcrypto.a"
static_lib_list="$static_lib_list libpcre.a libpcrecpp.a libncursesw.a libbz2.a"
# Check whether --enable-static was given.
if test "${enable_static+set}" = set; then :
enableval=$enable_static;
fi
if test x"${enable_static}" != x"no"; then
STATIC_LDFLAGS="$STATIC_LDFLAGS -Wl,-search_paths_first -L`pwd`/src/static-libs"
# This is a hack to link against static libraries instead of shared
# on OS X so that we can build a mostly statically link exe that can
# be downloaded and used right away.
mkdir -p src/static-libs
rm src/static-libs/*.a
for libflag in $ALL_LDFLAGS; do
echo "current flag $libflag"
case $libflag in
-Lstatic-libs)
;;
-L*)
libdir=`echo $libflag | sed -e 's/-L//'`
for slib in $static_lib_list; do
if test -e "$libdir/$slib"; then
ln -sf "$libdir/$slib" src/static-libs/.
fi
done
;;
esac
done
fi
ac_config_headers="$ac_config_headers src/config.h"
ac_config_files="$ac_config_files Makefile"

@ -8,7 +8,7 @@ AC_PREFIX_DEFAULT(/usr/)
AC_CANONICAL_HOST
for defdir in /usr/local /opt/local; do
for defdir in /usr /usr/local /opt/local; do
if test -d "$defdir/include"; then
CPPFLAGS="$CPPFLAGS -I$defdir/include"
fi
@ -38,35 +38,6 @@ AC_PROG_CXX
# CFLAGS=`echo $CFLAGS | sed 's/-O2//g'`
# CXXFLAGS=`echo $CXXFLAGS | sed 's/-O2//g'`
AC_ARG_ENABLE([static],
AS_HELP_STRING([--disable-static],
[Disable static linking]))
if test x"${enable_static}" != x"no"; then
case "$host_os" in
darwin*)
STATIC_LDFLAGS="$STATIC_LDFLAGS -Wl,-search_paths_first -Lstatic-libs"
# This is a hack to link against static libraries instead of shared
# on OS X so that we can build a mostly statically link exe that can
# be downloaded and used right away.
mkdir -p src/static-libs
for libflag in $LDFLAGS; do
case $libflag in
-Lstatic-libs)
;;
-L*)
ln -sf `echo $libflag/*.a | sed -e 's/-L//'` \
src/static-libs/.;
;;
esac
done
;;
*)
STATIC_LDFLAGS="$STATIC_LDFLAGS -static"
;;
esac
fi
AC_SUBST(STATIC_LDFLAGS)
AC_ARG_ENABLE([profiling],
AS_HELP_STRING([--enable-profiling],
[Compile with gprof(1) profiling support]))
@ -127,6 +98,39 @@ case "$host_os" in
;;
esac
ALL_LDFLAGS="$LDFLAGS $SQLITE3_LDFLAGS"
static_lib_list="libncurses.a libreadline.a libsqlite3.a libz.a libcrypto.a"
static_lib_list="$static_lib_list libpcre.a libpcrecpp.a libncursesw.a libbz2.a"
AC_ARG_ENABLE([static],
AS_HELP_STRING([--disable-static],
[Disable static linking]))
if test x"${enable_static}" != x"no"; then
STATIC_LDFLAGS="$STATIC_LDFLAGS -Wl,-search_paths_first -L`pwd`/src/static-libs"
# This is a hack to link against static libraries instead of shared
# on OS X so that we can build a mostly statically link exe that can
# be downloaded and used right away.
mkdir -p src/static-libs
rm src/static-libs/*.a
for libflag in $ALL_LDFLAGS; do
echo "current flag $libflag"
case $libflag in
-Lstatic-libs)
;;
-L*)
libdir=`echo $libflag | sed -e 's/-L//'`
for slib in $static_lib_list; do
if test -e "$libdir/$slib"; then
ln -sf "$libdir/$slib" src/static-libs/.
fi
done
;;
esac
done
fi
AC_SUBST(STATIC_LDFLAGS)
AC_CONFIG_HEADERS([src/config.h])
AC_CONFIG_FILES([Makefile])
AC_CONFIG_FILES([TESTS_ENVIRONMENT])

@ -18,10 +18,10 @@ init-sql.c: $(srcdir)/init.sql bin2c
./bin2c -z -c $(srcdir)/init.sql $@
AM_LDFLAGS = \
$(STATIC_LDFLAGS) \
$(SQLITE3_LDFLAGS) \
$(PCRE_LDFLAGS) \
-pthread \
$(STATIC_LDFLAGS)
-pthread
AM_CPPFLAGS = \
-Wall \
@ -169,6 +169,7 @@ lnav_test_SOURCES = lnav.cc $(HELP_SRC) test_override.cc
lnav_test_LDADD = help.o init-sql.o default-log-formats-json.o $(LDADD)
bin2c_SOURCES = bin2c.c
bin2c_LDADD =
DISTCLEANFILES = help.c init-sql.c default-log-formats-json.c

@ -136,12 +136,10 @@ am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
am_bin2c_OBJECTS = bin2c.$(OBJEXT)
bin2c_OBJECTS = $(am_bin2c_OBJECTS)
bin2c_LDADD = $(LDADD)
am__DEPENDENCIES_1 =
bin2c_DEPENDENCIES = libdiag.a $(am__DEPENDENCIES_1) \
$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
bin2c_DEPENDENCIES =
am_lnav_OBJECTS = lnav.$(OBJEXT)
lnav_OBJECTS = $(am_lnav_OBJECTS)
am__DEPENDENCIES_1 =
am__DEPENDENCIES_2 = libdiag.a $(am__DEPENDENCIES_1) \
$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
lnav_DEPENDENCIES = help.o init-sql.o default-log-formats-json.o \
@ -349,10 +347,10 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
noinst_LIBRARIES = libdiag.a
AM_LDFLAGS = \
$(STATIC_LDFLAGS) \
$(SQLITE3_LDFLAGS) \
$(PCRE_LDFLAGS) \
-pthread \
$(STATIC_LDFLAGS)
-pthread
AM_CPPFLAGS = \
-Wall \
@ -498,6 +496,7 @@ lnav_LDADD = help.o init-sql.o default-log-formats-json.o $(LDADD)
lnav_test_SOURCES = lnav.cc $(HELP_SRC) test_override.cc
lnav_test_LDADD = help.o init-sql.o default-log-formats-json.o $(LDADD)
bin2c_SOURCES = bin2c.c
bin2c_LDADD =
DISTCLEANFILES = help.c init-sql.c default-log-formats-json.c
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-am

@ -32,6 +32,9 @@
#ifndef _sql_util_hh
#define _sql_util_hh
#include <time.h>
#include <sys/time.h>
#include <sqlite3.h>
#include <map>

@ -38,6 +38,7 @@ check_PROGRAMS = \
test_yajlpp
AM_LDFLAGS = \
$(STATIC_LDFLAGS) \
$(SQLITE3_LDFLAGS)
LDADD = -lz
@ -62,7 +63,7 @@ test_line_buffer2_SOURCES = test_line_buffer2.cc
test_line_buffer2_LDADD = ../src/libdiag.a
test_pcrepp_SOURCES = test_pcrepp.cc
test_pcrepp_LDADD = ../src/libdiag.a
test_pcrepp_LDADD = ../src/libdiag.a $(PCRE_LIBS) -lz
test_top_status_SOURCES = test_top_status.cc
test_top_status_LDADD = ../src/libdiag.a $(CURSES_LIB) -lz

@ -189,7 +189,7 @@ test_line_buffer2_OBJECTS = $(am_test_line_buffer2_OBJECTS)
test_line_buffer2_DEPENDENCIES = ../src/libdiag.a
am_test_pcrepp_OBJECTS = test_pcrepp.$(OBJEXT)
test_pcrepp_OBJECTS = $(am_test_pcrepp_OBJECTS)
test_pcrepp_DEPENDENCIES = ../src/libdiag.a
test_pcrepp_DEPENDENCIES = ../src/libdiag.a $(am__DEPENDENCIES_1)
am_test_top_status_OBJECTS = test_top_status.$(OBJEXT)
test_top_status_OBJECTS = $(am_test_top_status_OBJECTS)
test_top_status_DEPENDENCIES = ../src/libdiag.a $(am__DEPENDENCIES_1)
@ -609,6 +609,7 @@ AM_CPPFLAGS = \
$(SQLITE3_CFLAGS)
AM_LDFLAGS = \
$(STATIC_LDFLAGS) \
$(SQLITE3_LDFLAGS)
LDADD = -lz
@ -625,7 +626,7 @@ test_hist_source_LDADD = ../src/libdiag.a $(CURSES_LIB) -lz
test_line_buffer2_SOURCES = test_line_buffer2.cc
test_line_buffer2_LDADD = ../src/libdiag.a
test_pcrepp_SOURCES = test_pcrepp.cc
test_pcrepp_LDADD = ../src/libdiag.a
test_pcrepp_LDADD = ../src/libdiag.a $(PCRE_LIBS) -lz
test_top_status_SOURCES = test_top_status.cc
test_top_status_LDADD = ../src/libdiag.a $(CURSES_LIB) -lz
test_yajlpp_SOURCES = test_yajlpp.cc

Loading…
Cancel
Save