#!/bin/sh # This is like 'xmlrpc-c-config', but for testing Xmlrpc-c from its build # directory instead of for an installed instance of Xmlrpc-c. # # For example, the make file in the examples/ directory uses this program # to link the example programs with the Xmlrpc-c libraries in the build # directory. A real application program would instead use xmlrpc-c-config # and get the Xmlrpc-c libraries from their installed home. # @srcdir@ and @top_srcdir@ are useless because they can be relative. SRCDIR="@BUILDDIR@" # until we figure out how to do it right BUILDDIR="@BUILDDIR@" ENABLE_LIBXML2_BACKEND="@ENABLE_LIBXML2_BACKEND@" ENABLE_ABYSS_THREADS="@ENABLE_ABYSS_THREADS@" MUST_BUILD_CURL_CLIENT="@MUST_BUILD_CURL_CLIENT@" MUST_BUILD_WININET_CLIENT="@MUST_BUILD_WININET_CLIENT@" MUST_BUILD_LIBWWW_CLIENT="@MUST_BUILD_LIBWWW_CLIENT@" LSOCKET="@LSOCKET@" if test $# -eq 0; then echo "You need to specify arguments" exit 1 fi sopath= if test "${ENABLE_LIBXML2_BACKEND}" = "yes"; then LIBXML=`xml2-config --libs` else LIBXML="${BUILDDIR}/lib/expat/xmlparse/.libs/libxmlrpc_xmlparse.a" sopath="${BUILDDIR}/lib/expat/xmlparse/.libs:$sopath" LIBXML="${LIBXML} ${BUILDDIR}/lib/expat/xmltok/.libs/libxmlrpc_xmltok.a" sopath="${BUILDDIR}/lib/expat/xmltok/.libs:$sopath" fi needCpp=no LIBXMLRPC="${BUILDDIR}/src/.libs/libxmlrpc.a" LIBXMLRPC_UTIL="${BUILDDIR}/lib/libutil/.libs/libxmlrpc_util.a" the_libs="${LIBXMLRPC} ${LIBXMLRPC_UTIL} ${LIBXML}" the_includes="-I${SRCDIR}/include" sopath="${BUILDDIR}/src/.libs:$sopath" while test $# -gt 0; do case $1 in c++) # Unfortunately, there is just one legacy CPP library for # everything, and it needs all the C libraries -- base, client, # and server. So all legacy C++ programs get linked with client # and server libraries, whether they need them or not. the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server.a $the_libs" the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server_abyss.a $the_libs" the_libs="${BUILDDIR}/src/.libs/libxmlrpc_client.a $the_libs" the_libs="${BUILDDIR}/src/cpp/libxmlrpc_cpp.a $the_libs" ;; c++2) needCpp=yes the_libs="${BUILDDIR}/src/cpp/libxmlrpc++.a $the_libs" ;; server-util) the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server.a $the_libs" ;; cgi-server) the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server.a $the_libs" the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server_cgi.a $the_libs" ;; abyss-server) if test "${ENABLE_ABYSS_THREADS}" = "yes"; then the_libs="-lpthread $the_libs" fi the_libs="${LSOCKET} $the_libs" the_libs="${BUILDDIR}/lib/abyss/src/.libs/libxmlrpc_abyss.a $the_libs" the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server.a $the_libs" the_libs="${BUILDDIR}/src/.libs/libxmlrpc_server_abyss.a $the_libs" if test "${needCpp}" = "yes"; then the_libs="${BUILDDIR}/src/cpp/libxmlrpc_server++.a $the_libs" the_libs="${BUILDDIR}/src/cpp/libxmlrpc_server_abyss++.a $the_libs" fi the_includes="-I${SRCDIR}/lib/abyss/src $the_includes" sopath="${BUILDDIR}/lib/abyss/src/.libs:$sopath" ;; client) the_libs="${BUILDDIR}/src/.libs/libxmlrpc_client.a $the_libs" if test "${MUST_BUILD_WININET_CLIENT}" = "yes"; then the_libs="@WININET_LDADD@ $the_libs" the_rpath="@WININET_RPATH@ $the_rpath" the_wl_rpath="@WININET_WL_RPATH@ $the_wl_rpath" fi if test "${MUST_BUILD_CURL_CLIENT}" = "yes"; then the_libs="@CURL_LDADD@ $the_libs" the_rpath="@CURL_RPATH@ $the_rpath" the_wl_rpath="@CURL_WL_RPATH@ $the_wl_rpath" fi if test "${MUST_BUILD_LIBWWW_CLIENT}" = "yes"; then the_libs="@LIBWWW_LDADD@ $the_libs" the_rpath="@LIBWWW_RPATH@ $the_rpath" the_wl_rpath="@LIBWWW_WL_RPATH@ $the_wl_rpath" fi if test "${needCpp}" = "yes"; then the_libs="${BUILDDIR}/src/cpp/libxmlrpc_client++.a $the_libs" fi ;; --version) echo "@VERSION@" ;; --modules) echo "@FEATURE_LIST@" ;; --features) echo "@FEATURE_LIST@" ;; --cflags) echo "$the_includes" ;; --libs) echo "$the_libdirs $the_libs $the_wl_rpath" ;; --ldadd) echo "$the_libdirs $the_libs" ;; --ldflags) echo "$the_rpath" ;; --sopath) echo "$sopath" ;; --prefix) echo "@prefix@" ;; --exec-prefix) echo "@exec_prefix@" ;; --*dir) # Swiped from gnome-config. dirname=\$`echo $1 | sed -e 's,^--,,'` dirname=`eval echo $dirname` test -z "$dirname" && exit 1 echo $dirname ;; --help) echo "See the real xmlrpc-c-config program" 1>&2 ;; *) echo "Unrecognized token '$1'" echo "${usage}" 1>&2 exit 1 ;; esac shift done exit 0