From: Jim R. <jm...@qu...> - 2005-11-11 18:35:09
|
Will Partain wrote: >Jim Rowan writes: > > > >>RCS file: /cvsroot/ark/sidai/package/GNU.xml,v >>retrieving revision 1.36 >>diff -u -r1.36 GNU.xml >>--- GNU.xml 11 Apr 2005 11:29:09 -0000 1.36 >>+++ GNU.xml 9 Nov 2005 23:39:59 -0000 >>@@ -121,7 +121,7 @@ >> eval "$pre_config_eval" >> fi >> -CONFIG_SHELL="$CONFIG_SHELL" \ >>+CONFIGURE="$CONFIG_SHELL" \ >> CC="$cc" \ >> CXX="$cxx" \ >> CPPFLAGS="$cppflags" \ >> >> > >Hmm... I don't buy this. It simply says "Don't set CONFIG_SHELL" >(which is probably not right for all GNU-built programs, which is what >that prototype is for), and instead sets the CONFIGURE environment >variable... which is never used in a configure script. (I checked the >Python one and one or two others.) > >You will note that the <host> prototypes >sidai/host/{linux,solaris}.xml have settings for <CONFIG-SHELL>, to >either /bin/bash or /bin/ksh, respectively. > >Did you try setting <CONFIG-SHELL> for your relevant host (the one >doing the building), either with the sidai prototype, or one of your >own (or just directly in your <host>.xml)? > >If setting CONFIG-SHELL correctly doesn't work, then we have a problem >:-) > > I know *I* have a problem. :) Yes, I set CONFIG_SHELL. No, it didn't work. (I just went back and don't see where it was set -- so I reran the whole test again. It is current set in arik/sparc_solaris.xml, a template for cactus-aus where tthe build is happening.) Here is some relevant output: cactus-aus$ ark package configure --hosts=. --verbose python--2.4.2 > configure on python--2.4.2 ( not done before ) [FROM: param PKG_PROTO_HOST - sidai:package/python [M 1.25 + 2005.11.09 15:11.07], param dep_iflags - sidai:package/python [M 1.25 + 2005.11.09 15:11.07], param dep_lflags - sidai:package/python [M 1.25 + 2005.11.09 15:11.07], param pre_config_eval - sidai:package/python [M 1.25 + 2005.11.09 15:11.07], param extra_configure_args - arik:package/GNU [? + 2005.11.02 11:34.15], code - sidai:package/GNU [M 1.36 + 2005.11.11 11:22.40] ] >> host: cactus-aus [for hosts: sparc-solaris9] PKG_PROTO_HOST=sparc-solaris9 dep_iflags=-I/our/.-ark-deploy/python--2.4.2/include dep_lflags=-L/our/.-ark-deploy/python--2.4.2/lib -Wl,-R/our/.-ark-deploy/python--2.4.2/lib pre_config_eval=/bin/rm -f Iflags Lflags; echo "$dep_iflags" > Iflags; echo "$dep_lflags" > Lflags extra_configure_args=--disable-nls FIND=/usr/bin/find XARGS=/usr/bin/xargs cc=/our/bin/gcc cxx=/pkg/gnu_compilers/gcc-3.2.3/bin/c++ ccboot=/pkg/gnu_compilers/gcc-3.2.3/bin/gcc cxxboot=/pkg/gnu_compilers/gcc-3.2.3/bin/c++ cppflags= -I/our/.-ark-deploy/python--2.4.2/include cflags=-O2 -fstrict-aliasing -I/our/.-ark-deploy/python--2.4.2/include cxxflags=-O2 -I/our/.-ark-deploy/python--2.4.2/include ldflags= -L/our/.-ark-deploy/python--2.4.2/lib -Wl,-R/our/.-ark-deploy/python--2.4.2/lib cppflagsboot= -I/our/.-ark-deploy/python--2.4.2/include cflagsboot=-O2 -fstrict-aliasing -I/our/.-ark-deploy/python--2.4.2/include cxxflagsboot=-O2 -I/our/.-ark-deploy/python--2.4.2/include ldflagsboot= -L/our/.-ark-deploy/python--2.4.2/lib -Wl,-R/our/.-ark-deploy/python--2.4.2/lib in_dir=. CONFIG_SHELL=/bin/ksh CONFIGURE=./configure configure_args= prefix=/our/.-ark-deploy/python--2.4.2 + cd /prj/qct/sysadmin/aus-it/arik/ark-builds/python--2.4.2/sparc-solaris9/. + /usr/bin/xargs+ /usr/bin/find . ( -name config*.cache -o -name autom4te.cache -o -name config.log -o -name config.status -o -name conftest.c ) -print /bin/rm -rf + [ x != x ] + sidaiPickProgram /our/bin/gcc /pkg/gnu_compilers/gcc-3.2.3/bin/gcc + echo /our/bin/gcc + sed -e s/ .*// p_w1=/our/bin/gcc + [ -x /our/bin/gcc ] + echo /our/bin/gcc + return cc=/our/bin/gcc + [ x/our/bin/gcc = x/pkg/gnu_compilers/gcc-3.2.3/bin/gcc ] + sidaiPickProgram /pkg/gnu_compilers/gcc-3.2.3/bin/c++ /pkg/gnu_compilers/gcc-3.2.3/bin/c++ + + sedecho /pkg/gnu_compilers/gcc-3.2.3/bin/c++ -e s/ .*// p_w1=/pkg/gnu_compilers/gcc-3.2.3/bin/c++ + [ -x /pkg/gnu_compilers/gcc-3.2.3/bin/c++ ] + echo /pkg/gnu_compilers/gcc-3.2.3/bin/c++ + return cxx=/pkg/gnu_compilers/gcc-3.2.3/bin/c++ + [ x/pkg/gnu_compilers/gcc-3.2.3/bin/c++ = x/pkg/gnu_compilers/gcc-3.2.3/bin/c++ ] cppflags= -I/our/.-ark-deploy/python--2.4.2/include cxxflags=-O2 -I/our/.-ark-deploy/python--2.4.2/include ldflags= -L/our/.-ark-deploy/python--2.4.2/lib -Wl,-R/our/.-ark-deploy/python--2.4.2/lib + [ x/bin/rm -f Iflags Lflags; echo "$dep_iflags" > Iflags; echo "$dep_lflags" > Lflags != x ] + eval /bin/rm -f Iflags Lflags; echo "$dep_iflags" > Iflags; echo "$dep_lflags" > Lflags + /bin/rm -f Iflags Lflags + echo -I/our/.-ark-deploy/python--2.4.2/include + echo -L/our/.-ark-deploy/python--2.4.2/lib -Wl,-R/our/.-ark-deploy/python--2.4.2/lib + ./configure --prefix=/our/.-ark-deploy/python--2.4.2 --disable-nls LDFLAGS= -L/our/.-ark-deploy/python--2.4.2/lib -Wl,-R/our/.-ark-deploy/python--2.4.2/lib CXXFLAGS=-O2 -I/our/.-ark-deploy/python--2.4.2/include CFLAGS=-O2 -fstrict-aliasing -I/our/.-ark-deploy/python--2.4.2/include CPPFLAGS= -I/our/.-ark-deploy/python--2.4.2/include CXX=/pkg/gnu_compilers/gcc-3.2.3/bin/c++ CC=/our/bin/gcc CONFIG_SHELL=/bin/ksh checking MACHDEP... sunos5 checking EXTRAPLATDIR... checking for --without-gcc... no checking for --with-cxx=<compiler>... no checking for c++... /pkg/gnu_compilers/gcc-3.2.3/bin/c++ checking for C++ compiler default output file name... a.out checking whether the C++ compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for gcc... /our/bin/gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether /our/bin/gcc accepts -g... yes checking for /our/bin/gcc option to accept ANSI C... none needed .... checking for broken nice()... no checking for broken poll()... no checking for struct tm.tm_zone... (cached) no checking for tzname... (cached) yes checking for working tzset()... yes checking for tv_nsec in struct stat... yes checking whether mvwdelch is an expression... yes checking whether WINDOW has _flags... yes checking for /dev/ptmx... ./configure: test: argument expected cactus-aus$ The test for /dev/ptmx involves "test -e". QED. I can tell that CONFIG_SHELL ended up being set in the environment in which configure was run; the config.log created shows SHELL='/bin/ksh' Unfortunately, it doesn't get far enough to create config.status or config.log, which would be nicer to see what is really going on. I am not enough of a configure/autoconf wizard to understand in detail how it works ... but my understanding is that if SHELL gets set then it will have exec'd SHELL to run itself. I don't see why it fails. Somehow this failure is being *introduced* by the way ark is invoking configure -- I don't get it -- but: I run this: /bin/sh (my normal shell is zsh) SHELL=/bin/sh export SHELL <check that no CONFIG_SHELL variable is set in my env...> ./configure And it succeeds. The resulting config.status tells me that it chose to run it under /bin/bash. cactus-aus$ head config.status #! /bin/bash # Generated by configure. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=${CONFIG_SHELL-/bin/bash} |