]>
git.saurik.com Git - wxWidgets.git/blob - wx-config.in
3 # -------------------------------------------------------------------------
5 # -------------------------------------------------------------------------
7 # Version and build type information:
9 WX_MAJOR_VERSION_NUMBER
="@WX_MAJOR_VERSION_NUMBER@"
10 WX_MINOR_VERSION_NUMBER
="@WX_MINOR_VERSION_NUMBER@"
11 WX_RELEASE_NUMBER
="@WX_RELEASE_NUMBER@"
12 WX_SUBRELEASE_NUMBER
="@WX_SUBRELEASE_NUMBER@"
13 release
="@WX_MAJOR_VERSION_NUMBER@.@WX_MINOR_VERSION_NUMBER@"
14 is_monolithic
="@MONOLITHIC@"
15 cross_compiling
="@cross_compiling@"
17 static_flag
="@STATIC_FLAG@"
20 # Misc configuration variables:
24 includedir
="@includedir@"
28 exec_prefix
="@exec_prefix@"
36 builddir
="@top_builddir_wxconfig@"
37 basename_nogui
="@WX_LIBRARY_BASENAME_NOGUI@"
38 basename_gui
="@WX_LIBRARY_BASENAME_GUI@"
40 TOOLCHAIN_NAME
="@TOOLCHAIN_NAME@"
42 WXCONFIG_RPATH
="@WXCONFIG_RPATH@"
43 DMALLOC_LIBS
="@DMALLOC_LIBS@"
44 WXCONFIG_LIBS
="@WXCONFIG_LIBS@"
45 WXCONFIG_LIBS_STATIC
="@WXCONFIG_LIBS_STATIC@"
46 WXDEBUG_DEFINE
="@WXDEBUG_DEFINE@"
47 TOOLCHAIN_DEFS
="@TOOLCHAIN_DEFS@"
48 TOOLCHAIN_DLL_DEFS
="@TOOLCHAIN_DLL_DEFS@"
49 WXCONFIG_INCLUDE
="@WXCONFIG_INCLUDE@"
50 WX_LARGEFILE_FLAGS
="@WX_LARGEFILE_FLAGS@"
51 GCC_PRAGMA_FLAGS
="@GCC_PRAGMA_FLAGS@"
52 CODE_GEN_FLAGS
="@CODE_GEN_FLAGS@"
53 CODE_GEN_FLAGS_CXX
="@CODE_GEN_FLAGS_CXX@"
54 LDFLAGS_EXE
="@LDFLAGS_EXE@"
55 MACRESWXCONFIG
="@MACRESWXCONFIG@"
56 EXTRALIBS_GUI
="@EXTRALIBS_GUI@"
58 WXCONFIG_LDFLAGS_GUI
="@WXCONFIG_LDFLAGS_GUI@"
61 # Linker flags for sublibraries:
63 CORE_BASE_LIBS
="@CORE_BASE_LIBS@"
64 CORE_GUI_LIBS
="@CORE_GUI_LIBS@"
66 ldlibs_base
="@WXCONFIG_EXTRALIBS@"
67 ldlibs_core
="@EXTRALIBS_GUI@"
68 ldlibs_xml
="@EXTRALIBS_XML@"
69 ldlibs_html
="@EXTRALIBS_HTML@"
70 ldlibs_odbc
="@EXTRALIBS_ODBC@"
71 ldlibs_adv
="@EXTRALIBS_SDL@"
73 ldflags_gl
="@LDFLAGS_GL@"
74 ldlibs_gl
="@OPENGL_LIBS@"
78 # -------------------------------------------------------------------------
80 # -------------------------------------------------------------------------
84 # is $1 among the rest of arguments?
91 if test $iii = $value ; then isin
=yes ; fi
96 # output linker commands needed to link against libraries passed as arguments
97 # (does not handle monolithic/multilib):
100 if test "$cross_compiling" = "yes" ; then
101 target_tag
="-${target}"
109 eval xlibs
=\
$ldlibs_$lib
110 eval xflags
=\
$ldflags_$lib
111 if isinlist
$lib $CORE_BASE_LIBS ; then
112 basename=$basename_nogui
114 basename=$basename_gui
116 if test $lib = "base" ; then
119 libname
="${basename}_${lib}"
122 all_ldflags
="$all_ldflags $xflags"
123 if test $static_flag = yes ; then
124 wxlibs
="$wxlibs ${libdir}/lib${libname}-${release}${target_tag}.a"
125 all_libs
="$all_libs $xlibs"
127 wxlibs
="$wxlibs -l${libname}-${release}${target_tag}"
131 echo $all_ldflags $wxlibs $all_libs
134 # output $(WXCONFIG_LDFLAGS_GUI) if any of libs passed as arguments is GUI
135 # library, nothing otherwise:
140 if isinlist
$lib $CORE_GUI_LIBS ; then
141 flags_to_ret
="$WXCONFIG_LDFLAGS_GUI"
150 Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--inplace]
151 [--toolkit=TOOLKIT] [--unicode[=yes|no]] [--debug[=yes|no]]
152 [--universal[=yes|no]] [--host=HOST]
153 [--version[=VERSION]] [--version-full] [--release]
154 [--list] [--basename] [--static] [--libs] [--gl-libs]
155 [--cppflags] [--cflags] [--cxxflags] [--ldflags] [--rezflags]
156 [--cc] [--cxx] [--ld] [LIBRARIES]
158 wx-config returns configuration information about the installed
159 version of wxWidgets. It may be used to query its version and
160 installation directories and also retrieve the C and C++ compilers
161 and linker which were used for its building and the corresponding
164 Ordinarily it should be installed to the appropriate system location
165 along with the headers and library files, but it is also possible to
166 use it to enable builds with an uninstalled wxWidgets version for
167 package building and bleeding edge developers. To do so, use it like
170 \${wx_builddir}/wx-config --inplace
172 Note that any other options supplied must come *after* --inplace
173 for it to take effect.
175 --static must come before --cppflags, --cflags, --cxxflags,
176 --libs and --gl-libs and --libs must come before the other ones.
178 wx-config can take optional argument that contains comma- or space-separated
179 list of wxWidgets libraries to compile and link against. This list can
180 include both core and contrib libraries. Special value "std" stands for all
181 libraries linked in by default. Examples: "wx-config --libs core,base"
182 or "wx-config --cxxflags core,base".
184 --gl-libs option is deprecated, use "--libs gl" instead.
186 If there are several different builds of wxWidgets installed in same prefix,
187 you can use --host, --toolkit, --unicode, --debug, --universal and --version
188 options to select one of them. Use --list option to show all available builds
189 that match given criteria.
198 includes
="-I${libdir}/wx/include/${TOOLCHAIN_NAME}"
200 # in inplace case we need to also add path to contrib headers -- do it
201 # unconditionally as they might be used and we have no way of knowing if
203 if test $inplace_flag = yes ; then
204 includes
="$includes -I${prefix}/include -I${prefix}/contrib/include"
206 includes
="$includes -I${includedir}/wx-${WX_MAJOR_VERSION_NUMBER}.${WX_MINOR_VERSION_NUMBER}"
209 flags
="$includes ${WXDEBUG_DEFINE} ${TOOLCHAIN_DEFS}"
210 if test $static_flag != yes ; then
211 flags
="$flags ${TOOLCHAIN_DLL_DEFS}"
214 if test $nogui_flag = "yes" ; then
215 flags
="$flags -DwxUSE_GUI=0"
218 echo "$flags ${WXCONFIG_INCLUDE} ${WX_LARGEFILE_FLAGS} ${GCC_PRAGMA_FLAGS}"
221 if test $# -eq 0; then
226 # handle libraries list:
235 libs_list
="$libs_list `echo "$arg" | tr ',' ' '`"
240 if test "x$libs_list" = "x" ; then
241 if test "$is_monolithic" = "0" ; then
242 # link against all libs if none given explicitly:
243 libs_list
="$CORE_GUI_LIBS $CORE_BASE_LIBS"
246 # always add wxBase, any wxApp needs it:
247 libs_list
="$libs_list base"
250 # determine if at least one gui lib was used:
251 if test "$is_monolithic" = "0" ; then
253 for i
in $libs_list; do
269 while test $# -gt 0; do
271 -*=*) optarg
=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
281 if test $exec_prefix_set = no
; then
298 echo ${WX_MAJOR_VERSION_NUMBER}.
${WX_MINOR_VERSION_NUMBER}.
${WX_RELEASE_NUMBER}
301 echo ${WX_MAJOR_VERSION_NUMBER}.
${WX_MINOR_VERSION_NUMBER}.
${WX_RELEASE_NUMBER}.
${WX_SUBRELEASE_NUMBER}
316 echo `cppflags` ${CODE_GEN_FLAGS}
319 echo `cppflags` ${CODE_GEN_FLAGS} ${CODE_GEN_FLAGS_CXX}
325 echo `eval echo ${MACRESWXCONFIG}`
329 # include install directory only if it is not default:
330 if test "${libdir}" != "/usr/lib" \
331 -a \
( "${cross_compiling}" != "yes" \
332 -o "${libdir}" != "/usr/${target}/lib" \
) ;
337 # it's simpler to avoid handling "base" itself at all as we add it in the
338 # end to the list of libraries anyhow
339 # in monolithic build, link against the main library:
340 if test "$is_monolithic" = "1" ; then
341 # filter out core libs, leave only contrib in libs_list:
343 for i
in $libs_list ; do
344 if isinlist
$i $CORE_GUI_LIBS $CORE_BASE_LIBS; then
345 libs_list
="" # do nothing
347 newlist
="$newlist $i"
353 contrib_libs
=`output_libs $libs_list`
354 if test $static_flag = yes ; then
355 echo "$libs ${LDFLAGS} ${WXCONFIG_LDFLAGS_GUI} ${WXCONFIG_RPATH} $contrib_libs ${libdir}/${WXCONFIG_LIBS_STATIC} ${EXTRALIBS_GUI} ${LIBS} ${DMALLOC_LIBS}"
357 echo $libs ${LDFLAGS} ${WXCONFIG_LDFLAGS_GUI} ${WXCONFIG_RPATH} $contrib_libs ${WXCONFIG_LIBS} ${DMALLOC_LIBS}
360 # we may need to replace "std" alias with its expansion
363 for i
in $libs_list; do
370 # if we have std, we're going to add base anyhow, avoid
371 # having it twice in the end
372 if [ $hadstd = 0 ]; then
373 newlist
="$newlist $i"
378 newlist
="$newlist $i"
383 if [ $hadstd = 1 ]; then
384 libs_list
="$libs_list $CORE_GUI_LIBS $CORE_BASE_LIBS"
387 # in multilib mode, link against all sublibraries:
388 wxlibs
=`output_libs $libs_list`
389 guildflags
=`get_ldflags_gui $libs_list`
390 echo $libs ${LDFLAGS} ${guildflags} ${WXCONFIG_RPATH} $wxlibs ${DMALLOC_LIBS}
410 # unrecognized flag is error