[qmtest] running qmtest on bash in cygwin...
Mark Mitchell
mark at codesourcery.com
Sat Aug 23 17:11:09 UTC 2003
On Fri, 2003-08-22 at 19:24, Zack Weinberg wrote:
> Stefan Seefeld <seefeld at sympatico.ca> writes:
>
> > What about a build procedure purely based on python's distutils package ?
> > The setup.py scripts can contain different sets of files to install:
> >
> > * python modules
> > * data files
> > * scripts
> >
> > And with 'python setup.py --prefix=...' or 'python setup.py
> > --home=...' you have pretty much complete control over where
> > everything is installed. There are even more fine-grained options to
> > specifically control scripts, data files, and modules, if the above
> > isn't sufficient.
Certainly, if distutils can do the whole job, we'd prefer that.
We started out with "make" several years ago (when Python 1.5 was our
standard version of Python and distutils was a separate module); nobody
has ever tried to go back and eliminate make.
> > The default installation would put the modules under python's site-packages,
> > and the rest into /usr/local/[share, bin], which is what I would expect
> > from a typical debian / rpm package.
Yes, that sounds right.
> > And for those who want everything in a single isolated place, an installation
> > using the '--home' parameter would probably do the trick. In any case, the
"./configure --prefix" should still have that effect.
That's very important because one mode in which QMTest is distributed is
as a tarball containing binaries for both QMTest and Python. That's
important for users on systems where Python isn't installed by default.
The high-level concept is that while we'd like QMTest to play better
with Python, we want to keep it usable as an independent application as
well.
> > main executable could be a python script, and some little experimentation
> > suggests that the qm/test/qmtest.py file is almost ready to serve, i.e.
> > the qmtest.[bat, sh] files aren't really needed then.
That is also a desirable goal.
However, the logic where by qmtest.sh finds a version of Python
installed in /path/to/qmtest/bin is required for the set-up above.
Therefore, something has to be done to preserve that behavior, or
something equivalent.
Perhaps playing these kind of games with the script:
#! /bin/sh exec $0
(with something more advanced) would work.
--
Mark Mitchell
CodeSourcery, LLC
mark at codesourcery.com
More information about the qmtest
mailing list