3 # Generic configuration variables:
5 exec_prefix=@exec_prefix@
12 builddir=@top_builddir_wxconfig@
13 cross_compiling=@cross_compiling@
15 static_flag=@STATIC_FLAG@
16 basename_nogui=@WX_LIBRARY_BASENAME_NOGUI@
17 basename_gui=@WX_LIBRARY_BASENAME_GUI@
18 release=@WX_MAJOR_VERSION_NUMBER@.@WX_MINOR_VERSION_NUMBER@
19 is_monolithic=@MONOLITHIC@
22 # Linker flags for sublibraries:
23 CORE_BASE_LIBS="xml net base"
24 CORE_GUI_LIBS="html core"
27 ldlibs_core="@EXTRALIBS_GUI@"
28 ldlibs_xml="@EXTRALIBS_XML@"
30 ldflags_gl="@LDFLAGS_GL@"
31 ldlibs_gl="@OPENGL_LIBS@"
34 # is $1 among the rest of arguments?
41 if test $iii = $value ; then isin=yes ; fi
46 # output linker commands needed to link against libraries passed as arguments
47 # (does not handle monolithic/multilib):
55 eval xlibs=\$ldlibs_$lib
56 eval xflags=\$ldflags_$lib
57 if isinlist $lib $CORE_BASE_LIBS ; then
58 basename=$basename_nogui
60 basename=$basename_gui
62 if test $lib = "base" ; then
65 libname="${basename}_${lib}"
68 all_ldflags="$all_ldflags $xflags"
69 if test $static_flag = yes ; then
70 wxlibs="$wxlibs @libdir@/lib${libname}-${release}.a"
71 all_libs="$all_libs $xlibs"
73 wxlibs="$wxlibs -l${libname}-${release}"
77 echo $all_ldflags $wxlibs $all_libs
80 # return the absolute path prepending builddir to it if needed
84 # TODO: this only works under Unix and even there it could be
85 # enhanced to remove ".." and "."
86 if [ `echo $path | sed 's/^\(.\).*/\1/'` != "/" ]; then
87 if [ $path = "." ]; then
90 path="$builddir/$path"
100 Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--release]
101 [--basename] [--static] [--libs[=LIBS]] [--gl-libs]
102 [--cppflags] [--cflags] [--cxxflags] [--ldflags] [--rezflags]
103 [--cc] [--cxx] [--ld]
105 wx-config returns configuration information about the installed
106 version of wxWindows. It may be used to query its version and
107 installation directories and also retrieve the C and C++ compilers
108 and linker which were used for its building and the corresponding
111 Ordinarily it should be installed to the appropriate system location
112 along with the headers and library files, but it is also possible to
113 use it to enable builds with an uninstalled wxWindows version for
114 package building and bleeding edge developers. To do so, use it like
117 \${wx_builddir}/wx-config --prefix=\${wx_srcdir} --exec-prefix=\${wx_builddir}
119 Note that any other options supplied must come *after* the prefix
120 specification for it to take effect.
122 --static must come before --libs and --gl-libs.
124 --libs can take optional argument that contains comma-separated list of
125 wxWindows libraries to link against. This list can include both core
126 and contrib libraries.
135 # we should never specify -I/usr/include on the compiler command line: this
136 # is at best useless and at worst breaks compilation on the systems where
137 # the system headers are non-ANSI because gcc works around this by storing
138 # the ANSI-fied versions of them in its private directory which is searched
139 # after all the directories on the cmd line.
141 # the situation is a bit more complicated with -I/usr/local/include: again,
142 # it shouldn't be specified with gcc which looks there by default anyhow
143 # and gives warnings (at least 3.1 does) if it is specified explicitly --
144 # but this -I switch *is* needed for the other compilers
146 # note that we assume that if we use GNU cc we also use GNU c++ and vice
147 # versa, i.e. this won't work (either for --cflags or --cxxflags) if GNU C
148 # compiler and non-GNU C++ compiler are used or vice versa -- we'll fix
149 # this when/if anybody complains about it
150 if test "@includedir@" != "/usr/include" \
151 -a "@includedir@" != "/usr/include/c++" \
152 -a \( "${GCC}" != "yes" \
153 -o "@includedir@" != "/usr/local/include" \) \
154 -a \( "${cross_compiling}" != "yes" \
155 -o "@includedir@" != "/usr/${target}/include" \) ;
157 includes=" -I@includedir@"
160 includes="-I@libdir@/wx/include/@TOOLCHAIN_NAME@$includes"
162 if test $static_flag = yes ; then
163 echo $includes @WXDEBUG_DEFINE@ @TOOLCHAIN_DEFS@ @WXCONFIG_INCLUDE@ @WX_LARGEFILE_FLAGS@
165 echo $includes @WXDEBUG_DEFINE@ @TOOLCHAIN_DEFS@ @TOOLCHAIN_DLL_DEFS@ @WXCONFIG_INCLUDE@ @WX_LARGEFILE_FLAGS@
169 if test $# -eq 0; then
173 while test $# -gt 0; do
175 -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
181 prefix=`makeabs $srcdir`
182 exec_prefix=`makeabs $builddir`
187 if test $exec_prefix_set = no ; then
202 echo @WX_MAJOR_VERSION_NUMBER@.@WX_MINOR_VERSION_NUMBER@.@WX_RELEASE_NUMBER@
217 echo `cppflags` @CODE_GEN_FLAGS@
220 echo `cppflags` @CODE_GEN_FLAGS@ @CODE_GEN_FLAGS_CXX@
226 echo @MACRESWXCONFIG@
230 # find if the argument was --libs=list,of,libs or --libs:
231 if test "x$optarg" = "x" ; then
232 if test "$is_monolithic" = "0" ; then
233 # link against all libs if none given explicitly:
234 libs_list="$CORE_GUI_LIBS $CORE_BASE_LIBS"
237 libs_list=`echo "$optarg" | tr ',' ' '`
240 # include install directory only if it is not default:
241 if test "@libdir@" != "/usr/lib" \
242 -a \( "${cross_compiling}" != "yes" \
243 -o "@libdir@" != "/usr/${target}/lib" \) ;
248 # in monolithic build, link against the main library:
249 if test "$is_monolithic" = "1" ; then
250 # filter out core libs, leave only contrib in libs_list:
252 for i in $libs_list ; do
253 if isinlist $i $CORE_BASE_LIBS $CORE_GUI_LIBS ; then
254 libs_list="" # do nothing
256 newlist="$newlist $i"
262 contrib_libs=`output_libs $libs_list`
263 if test $static_flag = yes ; then
264 echo "$libs @LDFLAGS@ @WXCONFIG_RPATH@ $contrib_libs @libdir@/@WXCONFIG_LIBS_STATIC@ @EXTRALIBS_GUI@ @LIBS@ @DMALLOC_LIBS@"
266 echo $libs @LDFLAGS@ @WXCONFIG_RPATH@ $contrib_libs @WXCONFIG_LIBS@ @DMALLOC_LIBS@
269 # in multilib mode, link against all sublibraries:
270 wxlibs=`output_libs $libs_list`
271 echo $libs @LDFLAGS@ @WXCONFIG_RPATH@ $wxlibs @DMALLOC_LIBS@