freeswitch/libs/xmlrpc-c/xmlrpc-c-config.main

192 lines
5.8 KiB
Plaintext

usage="Usage: xmlrpc-c-config <feature> ... <option> ...
The features are:
c++ legacy C++ wrapper API
c++2 modern C++ API
client client functions
cgi-server CGI-based server functions
abyss-server ABYSS-based server functions
pstream-server pstream-based server functions
server-util basic server functions (implied by *-server)
Options are:
--version The version number of the package
--features List all features (aka modules) currently installed
--cflags C compiler flags to use when '#include'ing package headers
--libs Libraries and flags to use when linking programs normally
--ldadd Libraries to use with automake
--ldflags Flags to use with automake & libtool
--prefix The prefix under which the package was installed
"
if test $# -eq 0; then
echo "You must specify at least one option."
echo "${usage}" 1>&2
exit 1
fi
if test "${ENABLE_LIBXML2_BACKEND}" = "yes"; then
LIBXML=`xml2-config --libs`
else
LIBXML="-lxmlrpc_xmlparse -lxmlrpc_xmltok"
fi
needCpp=no
the_libdirs=
the_rpath=
the_wl_rpath=
cpp_libs=
# It's important that packetsocket lib go after client, server libs
packetsocket_lib=
# If Xmlrpc-c libraries are installed in the standard linker search
# path on this system, you should remove the following line:
the_libdirs="-L$LIBINST_DIR $the_libdirs"
the_libs="-lxmlrpc -lxmlrpc_util ${LIBXML}"
the_rpath="-R$LIBINST_DIR $the_rpath"
the_wl_rpath="-Wl,-rpath,$LIBINST_DIR $the_wl_rpath"
cflags=
# If Xmlrpc-c library interface header files are installed in the standard
# compiler search path on this system, you should remove the following line:
cflags="-I$HEADERINST_DIR $cflags"
while test $# -gt 0; do
case $1 in
c++)
the_libs="-lxmlrpc_cpp $the_libs"
# 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="-lxmlrpc_server_abyss $the_libs"
the_libs="-lxmlrpc_server $the_libs"
the_libs="-lxmlrpc_client $the_libs"
;;
c++2)
needCpp=yes
the_libs="-l$LIBXMLRPCPP_NAME $the_libs"
;;
server-util)
the_libs="-lxmlrpc_server $the_libs"
if test "${needCpp}" = "yes"; then
the_libs="-lxmlrpc_server++ $the_libs"
fi
;;
cgi-server)
the_libs="-lxmlrpc_server $the_libs"
if test "${needCpp}" = "yes"; then
the_libs="-lxmlrpc_server_cgi++ $the_libs"
the_libs="-lxmlrpc_server++ $the_libs"
else
the_libs="-lxmlrpc_server_cgi $the_libs"
fi
;;
abyss-server)
if test "${ENABLE_ABYSS_THREADS}" = "yes"; then
the_libs="-lpthread $the_libs"
fi
the_libs="${LSOCKET} $the_libs"
the_libs="-lxmlrpc_abyss $the_libs"
the_libs="-lxmlrpc_server $the_libs"
the_libs="-lxmlrpc_server_abyss $the_libs"
if test "${needCpp}" = "yes"; then
the_libs="-lxmlrpc_server++ $the_libs"
the_libs="-lxmlrpc_server_abyss++ $the_libs"
fi
;;
pstream-server)
if test "${needCpp}" = "no"; then
echo "You must specify the 'c++2' feature before 'pstream-server'."
echo "Pstream server facilities are available only in a C++ version."
exit 10
fi
the_libs="${LSOCKET} $the_libs"
the_libs="-lxmlrpc_server $the_libs"
the_libs="-lxmlrpc_server++ $the_libs"
the_libs="-lxmlrpc_server_pstream++ $the_libs"
packetsocket_lib="-lxmlrpc_packetsocket"
;;
client|libwww-client)
# libwww-client is for backward compatibility
the_libs="-lxmlrpc_client $the_libs"
if test "${MUST_BUILD_WININET_CLIENT}" = "yes"; then
the_libs="$the_libs $WININET_LDADD"
the_rpath="-R$WININET_LIBDIR $the_rpath"
the_wl_rpath="-Wl,-rpath,$WININET_LIBDIR $the_wl_rpath"
fi
if test "${MUST_BUILD_CURL_CLIENT}" = "yes"; then
the_libs="$the_libs $CURL_LDADD"
the_rpath="-R$CURL_LIBDIR $the_rpath"
the_wl_rpath="-Wl,-rpath,$CURL_LIBDIR $the_wl_rpath"
fi
if test "${MUST_BUILD_LIBWWW_CLIENT}" = "yes"; then
the_libs="$the_libs $LIBWWW_LDADD"
the_rpath="-R$LIBWWW_LIBDIR $the_rpath"
the_wl_rpath="-Wl,-rpath,$LIBWWW_LIBDIR $the_wl_rpath"
fi
if test "${needCpp}" = "yes"; then
the_libs="-lxmlrpc_client++ $the_libs"
packetsocket_lib="-lxmlrpc_packetsocket"
fi
;;
--version)
echo "$XMLRPC_MAJOR_RELEASE.$XMLRPC_MINOR_RELEASE.$XMLRPC_POINT_RELEASE"
;;
--modules)
echo "$FEATURE_LIST"
;;
--features)
echo "$FEATURE_LIST"
;;
--cflags)
echo "$cflags"
;;
--libs)
if test "$NEED_WL_RPATH" = "yes"; then
rpath=$the_wl_rpath
elif test "$NEED_RPATH" = "yes"; then
rpath=$the_rpath
else
rpath=
fi
echo "$the_libdirs $rpath $the_libs $packetsocket_lib"
;;
--ldadd)
echo "$the_libdirs $the_libs $packetsocket_lib"
;;
--ldflags)
echo "$the_rpath"
;;
--prefix)
echo "$PREFIX"
;;
--exec-prefix)
# This is just here for compatibility. In a conventional autoconf
# system, "prefix" is the prefix specified at 'configure' time and
# "exec_prefix" is the prefix as overridden at 'make install' time.
# The only reason I can think that this program historically had both
# is that the author didn't understand that.
echo "$PREFIX"
;;
--help)
echo "${usage}" 1>&2
;;
*)
echo "Unrecognized token '$1'"
echo "${usage}" 1>&2
exit 1
;;
esac
shift
done
exit 0