comparison configure.ac @ 24389:2b62300d2c19

Use libtool to build static archives when --with-static-prpls is passed to configure. Does anyone know why we weren't using libtool before? We were building old-fashioned .a files. But libtool archives (.la) can contain either static or shared libraries. I found it a lot easier to get static prpl compilation working after making this change (that is to say, it worked). Without this I got this error, which is probably fixable, but consistently using libtool seems like it makes things easier: *** Warning: Linking the shared library libpurple.la against the *** static library ../libpurple/protocols/msn/libmsn.a is not portable! /usr/bin/ld: ../libpurple/protocols/msn/libmsn.a(libmsn_a-msn.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC ../libpurple/protocols/msn/libmsn.a: could not read symbols: Bad value collect2: ld returned 1 exit status
author Mark Doliner <mark@kingant.net>
date Wed, 12 Nov 2008 11:30:51 +0000
parents 8282911d5e17
children 42fe79ca351d
comparison
equal deleted inserted replaced
24388:7e8175f9b009 24389:2b62300d2c19
1008 AC_SUBST(STATIC_PRPLS) 1008 AC_SUBST(STATIC_PRPLS)
1009 STATIC_LINK_LIBS= 1009 STATIC_LINK_LIBS=
1010 extern_init= 1010 extern_init=
1011 load_proto= 1011 load_proto=
1012 for i in $STATIC_PRPLS ; do 1012 for i in $STATIC_PRPLS ; do
1013 dnl Ugly special case for "libsilcpurple.a": 1013 dnl Ugly special case for "libsilcpurple.la":
1014 dnl ... and Ugly special case for multi-protocol oscar 1014 dnl ... and Ugly special case for multi-protocol oscar
1015 if test \( "x$i" = "xoscar" -o "x$i" = "xaim" -o "x$i" = "xicq" \) -a "x$static_oscar" != "xyes"; then 1015 if test \( "x$i" = "xoscar" -o "x$i" = "xaim" -o "x$i" = "xicq" \) -a "x$static_oscar" != "xyes"; then
1016 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/oscar/liboscar.a" 1016 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/oscar/liboscar.la"
1017 extern_init="$extern_init extern gboolean purple_init_aim_plugin();" 1017 extern_init="$extern_init extern gboolean purple_init_aim_plugin();"
1018 extern_init="$extern_init extern gboolean purple_init_icq_plugin();" 1018 extern_init="$extern_init extern gboolean purple_init_icq_plugin();"
1019 load_proto="$load_proto purple_init_aim_plugin();" 1019 load_proto="$load_proto purple_init_aim_plugin();"
1020 load_proto="$load_proto purple_init_icq_plugin();" 1020 load_proto="$load_proto purple_init_icq_plugin();"
1021 else 1021 else
1022 if test "x$i" = "xsilc"; then 1022 if test "x$i" = "xsilc"; then
1023 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/lib${i}purple.a" 1023 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/lib${i}purple.la"
1024 elif test "x$i" = "xsilc10"; then 1024 elif test "x$i" = "xsilc10"; then
1025 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/libsilcpurple.a" 1025 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/libsilcpurple.la"
1026 elif test "x$i" = "xmsnp9"; then 1026 elif test "x$i" = "xmsnp9"; then
1027 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/libmsn.a" 1027 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/libmsn.la"
1028 else 1028 else
1029 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/lib$i.a" 1029 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/lib$i.la"
1030 fi 1030 fi
1031 extern_init="$extern_init extern gboolean purple_init_${i}_plugin();" 1031 extern_init="$extern_init extern gboolean purple_init_${i}_plugin();"
1032 load_proto="$load_proto purple_init_${i}_plugin();" 1032 load_proto="$load_proto purple_init_${i}_plugin();"
1033 fi 1033 fi
1034 case $i in 1034 case $i in