forked from Mirrors/freeswitch
192 lines
5.8 KiB
Plaintext
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
|