Closed Bug 558771 Opened 14 years ago Closed 14 years ago

configure (shell script) dies if $PYTHON unset

Categories

(Tamarin Graveyard :: Build Config, defect, P4)

defect

Tracking

(Not tracked)

VERIFIED FIXED
Q3 11 - Serrano

People

(Reporter: pnkfelix, Assigned: jsudduth)

Details

Attachments

(1 file)

If you run the configure wrapper script in a context where the $PYTHON environment variable is unset, you get something like the following output:

  running  ../configure.py --ignore-unknown-flags  '--enable-shell'
  ../configure: line 46: : command not found

This output is surprising, especially to a user who has successfully run the "../configure.py" script directly, and who does not notice that there are two (space separated) colons above, and thus does not understand why the script is having trouble.

Inspection of lines 44-46 reveals the problem:

  echo "running $PYTHON $0.py --ignore-unknown-flags $args"
  
  eval "'$PYTHON' '$0.py' --ignore-unknown-flags $args"

So, when $PYTHON is unset, the "running ..." output above makes it seem like the wrapper script will attempt to run configure.py directly, but instead it is attempting to run a command denoted by the empty string (which of course does not exist).

The configure script should be updated to either,
1. first check if the PYTHON environment variable is set, and die loudly if it is not, or
2. run configure.py directly when the PYTHON environment variable is not set, or
3. infer that if the PYTHON environment variable is not set, then it should use the command "python" and let the system PATH variable determine where that is.
Assignee: nobody → jsudduth
Flags: flashplayer-qrb+
Priority: -- → P4
Target Milestone: --- → flash10.2
adding email thread:


From: James Sudduth 
Sent: Monday, April 19, 2010 8:05 PM
To: Brent Baker; Trevor Baker; Christopher Peyer; Felix Klock II
Subject: Fixing (or not) Bug 558771

Bug 558771: “configure (shell script) dies if $PYTHON unset”. Note this is NOT configure.py but a shell script that sits next to it and is set up to run configure.py with some default args. 

I was going to send out these questions to the whole group, but after looking through the comments attached to the configure shell script ( http://hg.mozilla.org/tamarin-redux/log/02532742ac3a/configure ) I thought I’d run them by you guys first. Please take a look at the history, not just the diffs. 

It appears that this script is used by the actionmonkey build but doesn’t actually relate to our builds(?)

 I have a fix for the bug and was testing it when I realized:

1. $PYTHON isn't a standard python variable according to my research.
2. Checking some (but not all) of our build machines, none of them had PYTHON set (I checked 3 win, 2 Mac and 2 Linux boxes).
3. Our docs say to run configure.py, not the shell script.

Is there some reason we need to fix this even though we don’t appear to be using the shell script or the PYTHON environment variable?

Felix: what context or workflow were you running this script in that prompted you to write the bug?

Thanks,
Jim




From: Brent Baker 
Sent: Tuesday, April 20, 2010 6:35 AM
To: James Sudduth; Trevor Baker; Christopher Peyer; Felix Klock II
Subject: RE: Fixing (or not) Bug 558771

1)	NONE of the build systems that we use ever call the configure shell script, they ALWAYS call the configure.py script.
2)	I believe that the Mozilla build documentation also only discusses the configure.py script
a.	https://developer.mozilla.org/En/Tamarin/Tamarin_Build_Documentation
3)	The build system does NOT use PYTHON env variable
4)	I think that this file should be removed from the repo as it is not documented and not used by anybody and seems like a completely unnecessary file
> Felix: what context or workflow were you running this script in that prompted
> you to write the bug?

I was running the configure shell script directly; the presence of the file made me think it "would just work", in much the manner that one uses "configure; make" to build other software on UNIX systems.  Not much of a workflow, but it is a common pattern that has been built into my fingers to some degree.

I support Brent's suggestion (4) of just killing the file.  It was the presence of the file that I found confusing; I do not actually need to have it at all.  I suppose I could have made "delete the configure script" option (0) along with the other 3 suggestions I wrote on the end of the ticket.
The configure shell script isn't used by the build system so the consensus of opinion is to remove it.
Attachment #440559 - Flags: review?(brbaker)
Pushed to redux:
http://hg.mozilla.org/tamarin-redux/rev/f59f748dbab0
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Attachment #440559 - Flags: review?(brbaker) → review+
Status: RESOLVED → VERIFIED
Flags: in-testsuite-
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: