This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] Updated: pkgconfig-0.12.0-1


Hello Charles,

I'll just mention, since I've been thinking a lot about 
pkg-config lately, that I wondered whether the buggy m4 
macro code that makes it work (theoretically) with 
autoconf, has been fixed. I'll download the source along 
with the updated package and look for a changelog or 
something. But in case I run out of time: the primary 
thing I am referring is that the shell code written out 
to a `configure' file due to the inclusion of the macro 
call PKG_CHECK_MODULES(LIBPNG, libpng10 >= 1.0.13, [blah 
blah]) is VERY odd stuff, even for `configure'.

The shell script code looks like this (this is one 
*section* of a huge file, NOT meant to be clear, 
complete, stand-alone, or anything else, and *I* 
basically didn't write it but rather it was written 
by "autoconf" -- so if you see something you don't like 
then before you sound off about my bad shell scripting 
style, please get it STRAIGHT about what this IS and 
where it comes from and why I am bringing it up!)


====  watch for miswrapping ========
  case $PKG_CONFIG in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user 
override the test with a path.
  ;;
  *)
  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
   for as_dir in $PATH
   do
    test -z "$as_dir" && as_dir=.
    if ! test -d $as_dir; then continue 1; fi
     for ac_exec_ext in '' $ac_executable_extensions; do
      if eval $as_executable_p "$as_dir/
$ac_word$ac_exec_ext"; then
		ac_cv_path_PKG_CONFIG="$as_dir/
$ac_word$ac_exec_ext"
		echo "$as_me:$LINENO: found $as_dir/
$ac_word$ac_exec_ext" >&5
		break 2
      fi
     done
   done
  IFS=$as_save_IFS
  test -z "$ac_cv_path_PKG_CONFIG" && 
ac_cv_path_PKG_CONFIG="no"
  ;;
esac
    fi #RINGWALD
PKG_CONFIG=$ac_cv_path_PKG_CONFIG

====  end of shell code excerpt from `configure' ===

The part I mean to bring to your attention is this line:

      if eval $as_executable_p "$as_dir/
$ac_word$ac_exec_ext"; then

The 'eval' is my modification because on my system at 
least (Cygwin running in Win98SE), that is a syntax 
error without the "eval". $as_executable_p resolves 
to "test -f" I believe and the shell sees as a single 
argument, not as a call to "test" followed by an 
argument flag "-f".

All that above is just to detect whether pkg-config is 
installed on the system ,BTW. It seems very bizarre to 
me that this baroque code is invoked when a simple test 
for a non-zero return value from a shell call to `pkg-
config --version >/dev/null' would do.

I know I know, nobody understands what I am talking 
about ;-).

  Regards,
    Soren Andersen

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]