# New Ticket Created by James Keenan # Please include the string: [perl #44353] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=44353 >
--- osname= linux osvers= 2.6.18.3 arch= i486-linux-gnu-thread-multi cc= cc --- Flags: category=core severity=medium ack=no --- particle reported tonight that the --verbose-step option to Configure.pl doesn't DWIM. It appears to work okay if you say: perl Configure.pl --verbose-step=2, but not if you name the step: [li11-226:parrot] 515 $ perl Configure.pl --verbose-step=init::manifest Parrot Version 0.4.14 Configure 2.0 Copyright (C) 2001-2007, The Perl Foundation. Hello, I'm Configure. My job is to poke and prod your system to figure out how to build Parrot. The process is completely automated, unless you passed in the `--ask' flag on the command line, in which case I'll prompt you for a few pieces of info. Since you're running this program, you obviously have Perl 5--I'll be pulling some defaults from its configuration. Checking MANIFEST.....................................................done. Setting up Configure's default values.................................done. Setting up installation paths.........................................done. I think the suspect code is here. Start at line 274 of lib/Parrot/Configure.pm: # by description elsif ( $description =~ /$args->{verbose_step}/ ) { $conf->options->set( verbose => 2 ); } I feel that the regex test in the elsif makes no sense. There's no fundamental reason why a particular step's $description should match the contents of $args->{verbose_step} -- which at this point should be something like init::manifest. Amazingly, this bad code has been in this package since before I began to maintain it ... and because (a) no one complained until now and (b) I didn't write a test, no one ever noticed. Assignment: Get the --verbose-step option working with a named step. --- Summary of my parrot 0.4.14 (r20439) configuration: configdate='Fri Aug 3 02:54:55 2007 GMT' Platform: osname=linux, archname=i686-linux jitcapable=1, jitarchname=i386-linux, jitosname=LINUX, jitcpuarch=i386 execcapable=1 perl=/usr/local/bin/perl Compiler: cc='cc', ccflags=' -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE', Linker and Libraries: ld='cc', ldflags=' -L/usr/local/lib', cc_ldflags='', libs='-lnsl -ldl -lm -lcrypt -lutil -lpthread -lrt' Dynamic Linking: share_ext='.so', ld_share_flags='-shared -L/usr/local/lib -fPIC', load_ext='.so', ld_load_flags='-shared -L/usr/local/lib -fPIC' Types: iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4, ptrsize=4, ptr_alignment=1 byteorder=1234, nv=double, numvalsize=8, doublesize=8 --- Environment: HOME =/home/jimk LANG (unset) LANGUAGE (unset) LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH =/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/usr/local/mysql/bin:/home/jimk/bin:/home/jimk/bin/perl SHELL =/bin/bash