[PATCH] more control over static/dynamic linking
Ludwig Nussel
ludwig.nussel at gmx.de
Tue Dec 14 19:35:55 EST 2004
Hi,
Attached patch adds configure options to control whether
libglade,libxml and libncurses should be linked statically. Reason
is that I need two binaries. Dynamically linked ones for a
loki-setup rpm and static ones for makeself archives.
cu
Ludwig
--
(o_ Ludwig.Nussel at gmx.de
//\
V_/_ PGP Key ID: FF8135CE
-------------- next part --------------
Index: loki_setup/configure.in
===================================================================
--- loki_setup.orig/configure.in
+++ loki_setup/configure.in
@@ -183,12 +183,10 @@ case "$target" in
ARCH=`uname -p 2> /dev/null || uname -m` ;;
esac
-GTK_STATIC=$BSTATIC
case "$target" in
*linux*)
# Newer glibc's require to depend at least on them
STATIC=""
- GTK_STATIC="\$(BDYNAMIC)" ;;
esac
CFLAGS="$CFLAGS $REENTRANT"
@@ -210,7 +208,6 @@ if test ! -d "$SETUPDB"; then
fi
fi
-
AC_ARG_WITH(setupdb,
[ --with-setupdb with setupdb library at [default=../loki_setupdb]],
, with_setupdb=$SETUPDB)
@@ -228,8 +225,8 @@ fi
CFLAGS="$CFLAGS -I$SETUPDB"
-GUI_LIBS=$GTK_STATIC
-GTK_LIBS=$GTK_STATIC
+GUI_LIBS=
+GTK_LIBS=
#!!!TODO - Add carbon libs as necessary
CARBON_LIBS=
@@ -333,6 +330,27 @@ AC_ARG_WITH(ncurses,
USE_NCURSES=yes
)
+AC_ARG_ENABLE(libglade-static,
+[ --enable-libglade-static whether to statically link libglade (default=yes)],,
+enable_libglade_static=yes)
+if test "x$enable_libglade_static" = "xyes"; then
+ GLADE_STATIC="$BSTATIC"
+fi
+
+AC_ARG_ENABLE(libxml-static,
+[ --enable-libxml-static whether to statically link libxml (default=yes)],,
+enable_libxml_static=yes)
+if test "x$enable_libxml_static" = "xyes"; then
+ XML_STATIC="$BSTATIC"
+fi
+
+AC_ARG_ENABLE(libncurses-static,
+[ --enable-libncurses-static whether to statically link libncurses (default=no)],,
+enable_libncurses_static=no)
+if test "x$enable_libncurses_static" = "xyes"; then
+ NCURSES_STATIC="$BSTATIC"
+fi
+
AC_CHECK_HEADERS(ncurses/term.h)
AC_CHECK_HEADERS(ncurses/curses.h)
AC_CHECK_HEADERS(ncurses.h)
@@ -347,8 +365,8 @@ if test ! -z "$HAVEXML"; then
CFLAGS="$CFLAGS $XML_CFLAGS"
if test "$STATIC" = ""; then
- LIBS="$LIBS $BSTATIC -L$XML_PREFIX/lib$LIBSUFFIX -lxml"
- GUI_LIBS="$GUI_LIBS $BSTATIC -L$XML_PREFIX/lib$LIBSUFFIX -lxml"
+ LIBS="$LIBS $XML_STATIC -L$XML_PREFIX/lib$LIBSUFFIX -lxml $BDYNAMIC"
+ GUI_LIBS="$GUI_LIBS $XML_STATIC -L$XML_PREFIX/lib$LIBSUFFIX -lxml $BDYNAMIC"
CARBON_LIBS="$CARBON_LIBS -L$XML_PREFIX/lib$LIBSUFFIX -lxml"
else
LIBS="$LIBS $XML_PREFIX/lib$LIBSUFFIX/libxml.a"
@@ -367,7 +385,7 @@ if test ! -z "$HAVEGLADE"; then
GLADE_PREFIX=`$HAVEGLADE --prefix`
CFLAGS="$CFLAGS $GLADE_CFLAGS"
- GUI_LIBS="$GUI_LIBS $BSTATIC -L$GLADE_PREFIX/lib$LIBSUFFIX -lglade"
+ GUI_LIBS="$GUI_LIBS $GLADE_STATIC -L$GLADE_PREFIX/lib$LIBSUFFIX -lglade $BDYNAMIC"
else
AC_MSG_ERROR([*** libglade-config not found. You need a working libglade installation.])
fi
@@ -393,8 +411,10 @@ if test x$HAVE_BZIP2_SUPPORT = xyes; the
if test x$BZIP2_DLOPEN = xyes; then
AC_DEFINE(BZIP2_DLOPEN, 1, open libbz2 using dlopen)
BZ2LIB="-ldl"
+ BZ2_STATIC=""
else
BZ2LIB="-lbz2"
+ BZ2_STATIC="$BSTATIC"
if test x$LIBBZ2_PREFIX = xyes; then
AC_DEFINE(LIBBZ2_PREFIX, 1, libbz2 has "BZ_" prefix.)
fi
@@ -425,8 +445,8 @@ fi
dnl enable ZIP support
AC_ARG_ENABLE(zip,
-[ --enable-zip enable ZIP archives support [default=no]],
- , enable_zip=no)
+[ --enable-zip enable ZIP archives support [default=yes]],
+ , enable_zip=yes)
if test x$enable_zip = xyes; then
PLUGINS="$PLUGINS zip.c"
CFLAGS="$CFLAGS -DZIP_SUPPORT"
@@ -435,8 +455,8 @@ fi
dnl enable UZ2 support
AC_ARG_ENABLE(uz2,
-[ --enable-uz2 enable UZ2 archives support [default=no]],
- , enable_uz2=no)
+[ --enable-uz2 enable UZ2 archives support [default=yes]],
+ , enable_uz2=yes)
if test x$enable_uz2 = xyes; then
PLUGINS="$PLUGINS uz2.c"
CFLAGS="$CFLAGS -DUZ2_SUPPORT"
@@ -480,7 +500,7 @@ if test x$enable_rpm4 = xyes; then
AC_DEFINE(ENABLE_RPM, 1, RPM support.)
fi
-LIBS="$LIBS $BSTATIC $BZ2LIB"
+LIBS="$LIBS $BZ2_STATIC $BZ2LIB $BDYNAMIC"
if test ! -z "$USE_LIBINTL"; then
LIBINTL="$BSTATIC $LIBINTL -lz \$(BDYNAMIC)"
@@ -500,7 +520,7 @@ fi
if test ! -z "$USE_NCURSES"; then
if test "$STATIC" = ""; then
- CONSOLE_LIBS="$CONSOLE_LIBS $BSTATIC -lncurses \$(BDYNAMIC)"
+ CONSOLE_LIBS="$CONSOLE_LIBS $NCURSES_STATIC -lncurses \$(BDYNAMIC)"
else
CONSOLE_LIBS="$CONSOLE_LIBS -lncurses"
fi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://icculus.org/pipermail/lokisetup/attachments/20041215/ffa9db01/attachment.pgp>
More information about the Lokisetup
mailing list