]> git.saurik.com Git - wxWidgets.git/blobdiff - wx-config.in
If no colour name then use "BLACK"
[wxWidgets.git] / wx-config.in
index d0cd8585934779242209ca5224b600520587de96..d92f5c153023c552cafe056d776696cf247d56aa 100755 (executable)
@@ -48,6 +48,7 @@ TOOLCHAIN_DEFS="@TOOLCHAIN_DEFS@"
 TOOLCHAIN_DLL_DEFS="@TOOLCHAIN_DLL_DEFS@"
 WXCONFIG_INCLUDE="@WXCONFIG_INCLUDE@"
 WX_LARGEFILE_FLAGS="@WX_LARGEFILE_FLAGS@"
+GCC_PRAGMA_FLAGS="@GCC_PRAGMA_FLAGS@"
 CODE_GEN_FLAGS="@CODE_GEN_FLAGS@"
 CODE_GEN_FLAGS_CXX="@CODE_GEN_FLAGS_CXX@"
 LDFLAGS_EXE="@LDFLAGS_EXE@"
@@ -143,31 +144,16 @@ get_ldflags_gui()
     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]
+Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--inplace]
+                 [--toolkit=TOOLKIT] [--unicode[=yes|no]] [--debug[=yes|no]]
+                 [--universal[=yes|no]] [--host=HOST]
+                 [--version[=VERSION]] [--release]
+                 [--list] [--basename] [--static] [--libs] [--gl-libs]
                  [--cppflags] [--cflags] [--cxxflags] [--ldflags] [--rezflags]
-                 [--cc] [--cxx] [--ld]
-                 [--inplace]
+                 [--cc] [--cxx] [--ld] [LIBRARIES]
 
 wx-config returns configuration information about the installed
 version of wxWidgets. It may be used to query its version and
@@ -181,25 +167,25 @@ 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}
+\${wx_builddir}/wx-config --inplace
 
-Note that any other options supplied must come *after* the prefix
-specification for it to take effect.
+Note that any other options supplied must come *after* --inplace
+for it to take effect.
 
 --static must come before --cppflags, --cflags, --cxxflags,
---libs and --gl-libs.
+--libs and --gl-libs and --libs must come before the other ones.
 
 --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.
+--gl-libs option is deprecated, use "--libs gl" instead.
 
-The --inplace flag allows wx-config to be used from the wxWindows
-build directory and output flags to use the uninstalled version of
-the headers and libs in the build directory.  (Currently configure
-must be invoked via a full path name for this to work correctly.)
+If there are several different builds of wxWidgets installed in same prefix,
+you can use --host, --toolkit, --unicode, --debug, --universal and --version
+options to select one of them. Use --list option to show all available builds
+that match given criteria.
 
 EOF
 
@@ -245,17 +231,62 @@ cppflags()
         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}
+    flags="$includes ${WXDEBUG_DEFINE} ${TOOLCHAIN_DEFS}"
+    if test $static_flag != yes ; then
+        flags="$flags ${TOOLCHAIN_DLL_DEFS}"
+    fi
+
+    if test $nogui_flag = "yes" ; then
+        flags="$flags -DwxUSE_GUI=0"
     fi
+
+    echo "$flags${WXCONFIG_INCLUDE} ${WX_LARGEFILE_FLAGS} ${GCC_PRAGMA_FLAGS}"
 }
 
 if test $# -eq 0; then
     usage 1 1>&2
 fi
 
+
+# handle libraries list:
+
+libs_list=""
+
+for arg in $*; do
+  case "$arg" in
+    -*)
+      ;;
+    *)
+      libs_list="$libs_list `echo "$arg" | tr ',' ' '`"
+      ;;
+  esac
+done
+      
+if test "x$libs_list" = "x" ; then
+  if test "$is_monolithic" = "0" ; then
+    # link against all libs if none given explicitly:
+    libs_list="$CORE_GUI_LIBS $CORE_BASE_LIBS"
+  fi
+else
+  # always add wxBase, any wxApp needs it:
+  libs_list="$libs_list base"
+fi
+
+# determine if at least one gui lib was used:
+nogui_flag="yes"
+for i in $libs_list; do
+  case $i in
+      base|net)
+        ;;
+      *)
+        nogui_flag="no"
+        ;;
+  esac
+done
+
+
+# handle options:
+
 while test $# -gt 0; do
   case "$1" in
   -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
@@ -264,11 +295,7 @@ while test $# -gt 0; do
 
   case $1 in
     --inplace)
-      prefix=`makeabs $srcdir`
-      exec_prefix=`makeabs $builddir`
-      exec_prefix_set=yes
       inplace_flag=yes
-      update_prefixes
       ;;
     --prefix=*)
       prefix=$optarg
@@ -316,19 +343,7 @@ while test $# -gt 0; do
       echo `eval echo ${MACRESWXCONFIG}`
       ;;
 
-    --libs*)
-      # find if the argument was --libs=list,of,libs or --libs:
-      if test "x$optarg" = "x" ; then
-          if test "$is_monolithic" = "0" ; then
-              # link against all libs if none given explicitly:
-              libs_list="$CORE_GUI_LIBS $CORE_BASE_LIBS"
-          fi
-      else
-          libs_list=`echo "$optarg" | tr ',' ' '`
-          # always add wxBase, any wxApp needs it:
-          libs_list="$libs_list base"
-      fi
-
+    --libs)
       # include install directory only if it is not default:
       if test "${libdir}" != "/usr/lib" \
               -a \( "${cross_compiling}" != "yes" \
@@ -337,7 +352,7 @@ while test $# -gt 0; do
           libs="-L${libdir}"
       fi
 
-      # it's simpler to avoid handling "bae" itself at all as we add it in the
+      # it's simpler to avoid handling "base" itself at all as we add it in the
       # end to the list of libraries anyhow
       # in monolithic build, link against the main library:
       if test "$is_monolithic" = "1" ; then
@@ -373,7 +388,7 @@ while test $# -gt 0; do
                     # if we have std, we're going to add base anyhow, avoid
                     # having it twice in the end
                     if [ $hadstd = 0 ]; then
-                        newlist="$newlist $i";
+                        newlist="$newlist $i"
                     fi
                     ;;
 
@@ -406,7 +421,11 @@ while test $# -gt 0; do
     --ld)
       echo $LD
       ;;
-    *)
+    --help|-h)
+      usage 1 1>&2
+      ;;
+    -*)
+      # unrecognized flag is error
       usage 1 1>&2
       ;;
   esac