Change code in setup.py for parsing LDFLAGS and CPPFLAGS to use optparse

instead of getopt.  Required making use of gettext._ as optional (optparse
changed OK'ed by Greg Ward in private email).
This commit is contained in:
Brett Cannon 2004-12-07 03:25:18 +00:00
parent 516592f4ff
commit 84667c063a
3 changed files with 11 additions and 7 deletions

View file

@ -69,7 +69,10 @@
import sys, os
import types
import textwrap
from gettext import gettext as _
try:
from gettext import gettext as _
except ImportError:
_ = lambda arg: arg
def _repr(self):
return "<%s at 0x%x: %s>" % (self.__class__.__name__, id(self), self)

View file

@ -25,6 +25,8 @@ Extension Modules
Library
-------
- optparse now optionally imports gettext. This allows its use in setup.py.
- the deprecated tzparse module was removed.
- the pickle module no longer uses the deprecated bin parameter.

View file

@ -3,7 +3,7 @@
__version__ = "$Revision$"
import sys, os, imp, re, getopt
import sys, os, imp, re, optparse
from distutils import log
from distutils import sysconfig
@ -253,11 +253,10 @@ def detect_modules(self):
('CPPFLAGS', '-I', self.compiler.include_dirs)):
env_val = os.getenv(env_var)
if env_val:
# getopt is used instead of optparse because the latter imports
# gettext which imports struct which has not been built yet
# when this method is needed
options = getopt.getopt(env_val.split(), arg_name[1] + ':')[0]
for arg_option, directory in options:
parser = optparse.OptionParser()
parser.add_option(arg_name, dest="dirs", action="append")
options = parser.parse_args(env_val.split())[0]
for directory in options.dirs:
add_dir_to_list(dir_list, directory)
if os.path.normpath(sys.prefix) != '/usr':