+# is $1 among the rest of arguments?
+isinlist()
+{
+ value=$1
+ shift
+ isin=no
+ for iii in $* ; do
+ if test $iii = $value ; then isin=yes ; fi
+ done
+ test $isin = yes
+}
+
+# output linker commands needed to link against libraries passed as arguments
+# (does not handle monolithic/multilib):
+output_libs()
+{
+ if test "$cross_compiling" = "yes" ; then
+ target_tag="-${target}"
+ fi
+
+ all_libs=""
+ all_ldflags=""
+ wxlibs=""
+
+ for lib in $* ; do
+ eval xlibs=\$ldlibs_$lib
+ eval xflags=\$ldflags_$lib
+ if isinlist $lib $CORE_BASE_LIBS ; then
+ basename=$basename_nogui
+ else
+ basename=$basename_gui
+ fi
+ if test $lib = "base" ; then
+ libname="$basename"
+ else
+ libname="${basename}_${lib}"
+ fi
+
+ all_ldflags="$all_ldflags $xflags"
+ if test $static_flag = yes ; then
+ wxlibs="$wxlibs ${libdir}/lib${libname}-${release}${target_tag}.a"
+ all_libs="$all_libs $xlibs"
+ else
+ wxlibs="$wxlibs -l${libname}-${release}${target_tag}"
+ fi
+ done
+
+ echo $all_ldflags $wxlibs $all_libs
+}
+
+# output $(WXCONFIG_LDFLAGS_GUI) if any of libs passed as arguments is GUI
+# library, nothing otherwise:
+get_ldflags_gui()
+{
+ flags_to_ret=""
+ for lib in $* ; do
+ if isinlist $lib $CORE_GUI_LIBS ; then
+ flags_to_ret="$WXCONFIG_LDFLAGS_GUI"
+ fi
+ done
+ echo $flags_to_ret
+}
+
+# return the absolute path prepending builddir to it if needed
+makeabs()
+{
+ path=$1
+ # TODO: this only works under Unix and even there it could be
+ # enhanced to remove ".." and "."
+ if [ `echo $path | sed 's/^\(.\).*/\1/'` != "/" ]; then
+ if [ $path = "." ]; then
+ path=$builddir
+ else
+ path="$builddir/$path"
+ fi
+ fi
+
+ echo $path
+}
+
+usage()
+{
+ cat <<EOF
+Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--release]
+ [--basename] [--static] [--libs[=LIBS]] [--gl-libs]
+ [--cppflags] [--cflags] [--cxxflags] [--ldflags] [--rezflags]
+ [--cc] [--cxx] [--ld]
+
+wx-config returns configuration information about the installed
+version of wxWidgets. It may be used to query its version and
+installation directories and also retrieve the C and C++ compilers
+and linker which were used for its building and the corresponding
+flags.
+
+Ordinarily it should be installed to the appropriate system location
+along with the headers and library files, but it is also possible to
+use it to enable builds with an uninstalled wxWidgets version for
+package building and bleeding edge developers. To do so, use it like
+this:
+
+\${wx_builddir}/wx-config --prefix=\${wx_srcdir} --exec-prefix=\${wx_builddir}
+
+Note that any other options supplied must come *after* the prefix
+specification for it to take effect.
+
+--static must come before --cppflags, --cflags, --cxxflags,
+--libs and --gl-libs.
+
+--libs can take optional argument that contains comma-separated list of
+wxWidgets libraries to link against. This list can include both core
+and contrib libraries. Special value "std" stands for all libraries linked
+in by default.
+
+--gl-libs option is deprecated, used --libs=gl instead.
+
+EOF
+
+ exit $1
+}
+
+cppflags()
+{
+ # we should never specify -I/usr/include on the compiler command line: this
+ # is at best useless and at worst breaks compilation on the systems where
+ # the system headers are non-ANSI because gcc works around this by storing
+ # the ANSI-fied versions of them in its private directory which is searched
+ # after all the directories on the cmd line.
+ #
+ # the situation is a bit more complicated with -I/usr/local/include:
+ # it shouldn't be specified with some gcc installations which look there
+ # by default anyhow and give warnings (at least 3.1 does) if it is
+ # specified explicitly --
+ # but this -I switch *is* needed for other gcc installation and for
+ # the other compilers.
+ # So I put a suitable test into configure.in and reuse the result here.
+ #
+ # note that we assume that if we use GNU cc we also use GNU c++ and vice
+ # versa, i.e. this won't work (either for --cflags or --cxxflags) if GNU C
+ # compiler and non-GNU C++ compiler are used or vice versa -- we'll fix
+ # this when/if anybody complains about it
+ if test "${includedir}" != "/usr/include" \
+ -a "${includedir}" != "/usr/include/c++" \
+ -a \( "${GCC_SEARCHES_USR_LOCAL_INCLUDE}" != "yes" \
+ -o "${includedir}" != "/usr/local/include" \) \
+ -a \( "${cross_compiling}" != "yes" \
+ -o "${includedir}" != "/usr/${target}/include" \) ;
+ then
+ includes=" -I${includedir}"
+ fi
+
+ includes="-I${libdir}/wx/include/${TOOLCHAIN_NAME}$includes"
+
+ # in inplace case we need to also add path to contrib headers -- do it
+ # unconditionally as they might be used and we have no way of knowing if
+ # they really are
+ if test $inplace_flag = yes ; then
+ includes="$includes -I${prefix}/contrib/include"
+ fi
+
+ if test $static_flag = yes ; then
+ echo $includes ${WXDEBUG_DEFINE} ${TOOLCHAIN_DEFS} ${WXCONFIG_INCLUDE} ${WX_LARGEFILE_FLAGS}
+ else
+ echo $includes ${WXDEBUG_DEFINE} ${TOOLCHAIN_DEFS} ${TOOLCHAIN_DLL_DEFS} ${WXCONFIG_INCLUDE} ${WX_LARGEFILE_FLAGS}
+ fi
+}