]> git.saurik.com Git - wxWidgets.git/blobdiff - wx-config.in
improved error messages
[wxWidgets.git] / wx-config.in
index 16ad73e222059c8e73d9c63d8129ada6a68571ee..f0380ce4312856d3d222e8a3989fab65f0a833cb 100755 (executable)
@@ -3,13 +3,52 @@
 prefix=@prefix@
 exec_prefix=@exec_prefix@
 exec_prefix_set=no
+CC="@CC@"
+CXX="@CXX@"
+LD="@SHARED_LD@"
+cross_compiling=@cross_compiling@
+target=@host_alias@
+static_flag=no
 
-usage="\
-Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--libs] [--cflags]"
+usage()
+{
+    cat <<EOF
+Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--static]
+                 [--libs] [--gl-libs]
+                 [--cppflags] [--cflags] [--cxxflags] [--ldflags] [--rezflags]
+                 [--cc] [--cxx] [--ld]
+
+wx-config returns configuration information about the installed
+version of wxWindows. 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.
+EOF
+
+    exit $1
+}
+
+cppflags()
+{
+    if test "@includedir@" != "/usr/include" \
+            -a "@includedir@" != "/usr/include/c++" \
+            -a \( "${cross_compiling}" != "yes" \
+                  -o "@includedir@" != "/usr/${target}/include" \) ;
+    then
+        includes=-I@includedir@
+    fi
+
+    includes="-I@libdir@/wx/include/@TOOLCHAIN_NAME@ $includes"
+
+    if test $static_flag = yes ; then
+        echo $includes @WXDEBUG_DEFINE@ @TOOLCHAIN_DEFS@ @WXCONFIG_INCLUDE@
+    else
+        echo $includes @WXDEBUG_DEFINE@ @TOOLCHAIN_DEFS@ @TOOLCHAIN_DLL_DEFS@ @WXCONFIG_INCLUDE@
+    fi
+}
 
 if test $# -eq 0; then
-      echo "${usage}" 1>&2
-      exit 1
+    usage 1 1>&2
 fi
 
 while test $# -gt 0; do
@@ -38,24 +77,58 @@ while test $# -gt 0; do
     --version)
       echo @WX_MAJOR_VERSION_NUMBER@.@WX_MINOR_VERSION_NUMBER@.@WX_RELEASE_NUMBER@
       ;;
+    --static)
+      static_flag=yes
+      ;;
+    --cppflags)
+      cppflags
+      ;;
     --cflags)
-      if test @includedir@ != /usr/include ; then
-        if test @includedir@ != /usr/include/c++ ; then
-          includes=-I@includedir@
-        fi
-      fi
-      includes="$includes -I@libdir@/wx/include"
-      echo $includes @WXDEBUG_DEFINE@ @TOOLKIT_DEF@
+      echo `cppflags` @CODE_GEN_FLAGS@
+      ;;
+    --cxxflags)
+      echo `cppflags` @CODE_GEN_FLAGS@ @CODE_GEN_FLAGS_CXX@
+      ;;
+    --ldflags)
+      echo @LDFLAGS_EXE@
+      ;;
+    --rezflags)
+      echo @LIBWXMACRESWXCONFIG@
       ;;
     --libs)
-      if test @libdir@ != /usr/lib ; then
-        libs="-L@libdir@"
+      if test "@libdir@" != "/usr/lib" \
+              -a \( "${cross_compiling}" != "yes" \
+                    -o "@libdir@" != "/usr/${target}/lib" \) ;
+      then
+          libs="-L@libdir@"
+      fi
+
+      if test $static_flag = yes ; then
+          echo "$libs @LDFLAGS@ @libdir@/@WXCONFIG_LIBS_STATIC@ @LIBS@ @DMALLOC_LIBS@"
+      else
+          echo $libs @LDFLAGS@ @WXCONFIG_LIBS@ @DMALLOC_LIBS@
       fi
-      echo $libs -l@WX_LIBRARY@ @EXTRA_LIBS@
+
+      ;;
+    --gl-libs)
+      if test $static_flag = yes -a "x" != "x@WXCONFIG_LIBS_STATIC_GL@" ; then
+          gllibs="@libdir@/@WXCONFIG_LIBS_STATIC_GL@"
+      else
+          gllibs="@WXCONFIG_LIBS_GL@"
+      fi
+      echo @LDFLAGS_GL@ "$gllibs"
+      ;;
+    --cc)
+      echo $CC
+      ;;
+    --cxx)
+      echo $CXX
+      ;;
+    --ld)
+      echo $LD
       ;;
     *)
-      echo "${usage}" 1>&2
-      exit 1
+      usage 1 1>&2
       ;;
   esac
   shift