From: Fred Drake Date: Tue, 21 Oct 2003 15:41:15 +0000 (+0000) Subject: Provide a bit more information to the compiler when building Expat. X-Git-Tag: v2.4a1~1404 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2d59a4921234333b55e4f7b7f54d5649771d7c09;p=python Provide a bit more information to the compiler when building Expat. This avoids having to modify the Expat sources in any way starting with Expat 1.95.7. --- diff --git a/setup.py b/setup.py index 528681c7d3..40dbf4b306 100644 --- a/setup.py +++ b/setup.py @@ -737,21 +737,26 @@ class PyBuildExt(build_ext): else: xmlbo = "4321" expatinc = os.path.join(os.getcwd(), srcdir, 'Modules', 'expat') - exts.append(Extension('pyexpat', - sources = [ - 'pyexpat.c', - 'expat/xmlparse.c', - 'expat/xmlrole.c', - 'expat/xmltok.c', - ], - define_macros = [ + define_macros = [ ('XML_NS', '1'), ('XML_DTD', '1'), ('BYTEORDER', xmlbo), ('XML_CONTEXT_BYTES','1024'), - ], - include_dirs = [expatinc] - )) + ] + config_h = sysconfig.get_config_h_filename() + config_h_vars = sysconfig.parse_config_h(open(config_h)) + for feature_macro in ['HAVE_MEMMOVE', 'HAVE_BCOPY']: + if config_h_vars.has_key(feature_macro): + define_macros.append((feature_macro, '1')) + exts.append(Extension('pyexpat', + define_macros = define_macros, + include_dirs = [expatinc], + sources = ['pyexpat.c', + 'expat/xmlparse.c', + 'expat/xmlrole.c', + 'expat/xmltok.c', + ], + )) # Dynamic loading module if sys.maxint == 0x7fffffff: