]> git.saurik.com Git - wxWidgets.git/blobdiff - wx-config.in
fix memory leak as Dimitri suggested
[wxWidgets.git] / wx-config.in
index 2a4f02956f5e54808d63fb98ba5fbf75470881b6..878c325284cc9c98048a98b8afec68d00fefbdd6 100755 (executable)
@@ -7,10 +7,28 @@ CC="@CC@"
 GCC="@GCC@"
 CXX="@CXX@"
 LD="@SHARED_LD@"
+srcdir=@top_srcdir@
+builddir=@top_builddir@
 cross_compiling=@cross_compiling@
 target=@host_alias@
 static_flag=@STATIC_FLAG@
-inplace_flag=no
+
+# 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()
 {
@@ -19,7 +37,6 @@ Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--static]
                  [--libs] [--gl-libs]
                  [--cppflags] [--cflags] [--cxxflags] [--ldflags] [--rezflags]
                  [--cc] [--cxx] [--ld]
-                 [--inplace]
 
 wx-config returns configuration information about the installed
 version of wxWindows. It may be used to query its version and
@@ -27,10 +44,17 @@ installation directories and also retrieve the C and C++ compilers
 and linker which were used for its building and the corresponding
 flags.
 
-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.)
+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 wxWindows 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.
+
 EOF
 
     exit $1
@@ -63,11 +87,7 @@ cppflags()
         includes=" -I@includedir@"
     fi
 
-    if test $inplace_flag = yes ; then
-       includes="-I$inplace_builddir/lib/wx/include/@TOOLCHAIN_NAME@ -I$inplace_include"
-    else
-       includes="-I@libdir@/wx/include/@TOOLCHAIN_NAME@$includes"
-    fi
+    includes="-I@libdir@/wx/include/@TOOLCHAIN_NAME@$includes"
 
     if test $static_flag = yes ; then
         echo $includes @WXDEBUG_DEFINE@ @TOOLCHAIN_DEFS@ @WXCONFIG_INCLUDE@ @WX_LARGEFILE_FLAGS@
@@ -87,6 +107,11 @@ while test $# -gt 0; do
   esac
 
   case $1 in
+    --inplace)
+      prefix=`makeabs $srcdir`
+      exec_prefix=`makeabs $builddir`
+      exec_prefix_set=yes
+      ;;
     --prefix=*)
       prefix=$optarg
       if test $exec_prefix_set = no ; then
@@ -122,7 +147,7 @@ while test $# -gt 0; do
       echo @LDFLAGS_EXE@
       ;;
     --rezflags)
-      echo @LIBWXMACRESWXCONFIG@
+      echo @MACRESWXCONFIG@
       ;;
     --libs)
       if test "@libdir@" != "/usr/lib" \
@@ -132,10 +157,6 @@ while test $# -gt 0; do
           libs="-L@libdir@"
       fi
 
-      if test $inplace_flag = yes ; then
-         libs="-L$inplace_builddir/lib"
-      fi
-
       if test $static_flag = yes ; then
           echo "$libs @LDFLAGS@ @WXCONFIG_RPATH@ @libdir@/@WXCONFIG_LIBS_STATIC@ @LIBS@ @DMALLOC_LIBS@"
       else
@@ -149,10 +170,7 @@ while test $# -gt 0; do
       else
           gllibs="@WXCONFIG_LIBS_GL@"
       fi
-      if test $inplace_flag = yes ; then
-         libdir="-L$inplace_builddir/lib"
-      fi
-      echo @LDFLAGS_GL@ $libdir $gllibs
+      echo @LDFLAGS_GL@ $gllibs
       ;;
     --cc)
       echo $CC
@@ -163,11 +181,6 @@ while test $# -gt 0; do
     --ld)
       echo $LD
       ;;
-    --inplace)
-      inplace_flag=yes
-      inplace_builddir=`dirname $0`
-      inplace_include=@top_srcdir@/include
-      ;;
     *)
       usage 1 1>&2
       ;;