[Distutils] bdist_deb in stdeb
Gerry Reno
greno at verizon.net
Tue Sep 29 20:45:29 CEST 2009
Andrew Straw wrote:
> Gerry Reno wrote:
>
>> Ok, here's what happens if I DON'T use the option (shown with the old
>> code - same logic):
>>
>> $ python setup.py bdist_deb
>> ...
>> running build_scripts
>> ...
>> if test "2.5" = "2.5" -o "2.5" = "2.4"; then \
>> export SVEMOPT="--single-version-externally-managed" ;
>> python2.5 -c "import
>> setuptools,sys;f='setup.py';sys.argv[0]=f;execfile(f,{'__file__':f,'__name__':'__main__'})"
>> install \
>> --no-compile ${SVEMOPT} \
>> ...
>> error: option --single-version-externally-managed not recognized
>> ...
>> <process stops on the error>
>>
>> I can't explain it, but this is what happens. This is on Ubuntu Hardy
>> using python 2.5.2.
>>
> I see. I think it's because you're subclassing distutils.command.install
> rather than setuptools.command.install for your install command.
>
> Another idea is that you could also detect whether setuptools is
> imported by doing something like "if 'setuptools' in sys.modules" and
> then subclassing the appropriate install command based on that. Then you
> wouldn't need to pass the --disable-single-version-externally-managed
> argument at all.
>
> -Andrew
>
Ok, a little guidance please. As I understand it if I import setuptools
into my app setup.py and I subclass my install from
setuptools.command.install, then I can also use the option
'--single-version-externally-managed' to make the install behave like
the distutils style install. Is that correct?
If this is true then what I would like to do is to force this option on
in the code. How can I do that? I know I can probably put it into
setup.cfg but I just think it would be better hardwired into the code.
Regards,
Gerry
More information about the Distutils-SIG
mailing list