Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com From: perlspinr AT att DOT net To: cygwin AT cygwin DOT com Subject: Re: [ANNOUNCEMENT] Updated: pkgconfig-0.12.0-1 Date: Thu, 02 May 2002 02:13:06 +0000 Message-Id: <20020502021308.XUJY18857.mtiwmhc24.worldnet.att.net@webmail.worldnet.att.net> 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/