Kaydet (Commit) 3e1ec3aa authored tarafından Neal Norwitz's avatar Neal Norwitz

Remove some duplicated code for handling Mac modules. No functional change…

Remove some duplicated code for handling Mac modules.  No functional change (intended).  Also stoped setting srcdir twice.
üst 19379f18
...@@ -999,115 +999,73 @@ class PyBuildExt(build_ext): ...@@ -999,115 +999,73 @@ class PyBuildExt(build_ext):
carbon_extra_compile_args = [] carbon_extra_compile_args = []
# Mac OS X specific modules. # Mac OS X specific modules.
exts.append( Extension('_CF', ['cf/_CFmodule.c', 'cf/pycfbridge.c'], def macSrcExists(name1, name2=''):
extra_compile_args=carbon_extra_compile_args, if not name1:
extra_link_args=['-framework', 'CoreFoundation']) ) return None
exts.append( Extension('ColorPicker', ['ColorPickermodule.c'], names = (name1,)
extra_compile_args=carbon_extra_compile_args, if name2:
extra_link_args=['-framework', 'Carbon']) ) names = (name1, name2)
exts.append( Extension('autoGIL', ['autoGIL.c'], path = os.path.join(srcdir, 'Mac', 'Modules', *names)
extra_compile_args=carbon_extra_compile_args, return os.path.exists(path)
extra_link_args=['-framework', 'CoreFoundation']) )
exts.append( Extension('gestalt', ['gestaltmodule.c'], def addMacExtension(name, kwds, extra_srcs=[]):
extra_compile_args=carbon_extra_compile_args, dirname = ''
extra_link_args=['-framework', 'Carbon']) ) if name[0] == '_':
exts.append( Extension('MacOS', ['macosmodule.c'], dirname = name[1:].lower()
extra_compile_args=carbon_extra_compile_args, cname = name + '.c'
extra_link_args=['-framework', 'Carbon']) ) cmodulename = name + 'module.c'
exts.append( Extension('OSATerminology', ['OSATerminology.c'], # Check for NNN.c, NNNmodule.c, _nnn/NNN.c, _nnn/NNNmodule.c
extra_compile_args=carbon_extra_compile_args, if macSrcExists(cname):
extra_link_args=['-framework', 'Carbon']) ) srcs = [cname]
exts.append( Extension('icglue', ['icgluemodule.c'], elif macSrcExists(cmodulename):
extra_compile_args=carbon_extra_compile_args, srcs = [cmodulename]
extra_link_args=['-framework', 'Carbon']) ) elif macSrcExists(dirname, cname):
exts.append( Extension('_Res', ['res/_Resmodule.c'], # XXX(nnorwitz): If all the names ended with module, we
extra_compile_args=carbon_extra_compile_args, # wouldn't need this condition. ibcarbon is the only one.
extra_link_args=['-framework', 'Carbon']) ) srcs = [os.path.join(dirname, cname)]
exts.append( Extension('_Snd', ['snd/_Sndmodule.c'], elif macSrcExists(dirname, cmodulename):
extra_compile_args=carbon_extra_compile_args, srcs = [os.path.join(dirname, cmodulename)]
extra_link_args=['-framework', 'Carbon']) ) else:
exts.append( Extension('Nav', ['Nav.c'], raise RuntimeError("%s not found" % name)
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) ) # Here's the whole point: add the extension with sources
exts.append( Extension('_AE', ['ae/_AEmodule.c'], exts.append(Extension(name, srcs + extra_srcs, **kwds))
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) ) # Core Foundation
exts.append( Extension('_AH', ['ah/_AHmodule.c'], core_kwds = {'extra_compile_args': carbon_extra_compile_args,
extra_compile_args=carbon_extra_compile_args, 'extra_link_args': ['-framework', 'CoreFoundation'],
extra_link_args=['-framework', 'Carbon']) ) }
exts.append( Extension('_App', ['app/_Appmodule.c'], addMacExtension('_CF', core_kwds, ['cf/pycfbridge.c'])
extra_compile_args=carbon_extra_compile_args, addMacExtension('autoGIL', core_kwds)
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_CarbonEvt', ['carbonevt/_CarbonEvtmodule.c'], # Carbon
extra_compile_args=carbon_extra_compile_args, carbon_kwds = {'extra_compile_args': carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) ) 'extra_link_args': ['-framework', 'Carbon'],
exts.append( Extension('_CG', ['cg/_CGmodule.c'], }
extra_compile_args=carbon_extra_compile_args, CARBON_EXTS = ['ColorPicker', 'gestalt', 'MacOS', 'Nav',
extra_link_args=['-framework', 'ApplicationServices']) ) 'OSATerminology', 'icglue',
exts.append( Extension('_Cm', ['cm/_Cmmodule.c'], # All these are in subdirs
extra_compile_args=carbon_extra_compile_args, '_AE', '_AH', '_App', '_CarbonEvt', '_Cm', '_Ctl',
extra_link_args=['-framework', 'Carbon']) ) '_Dlg', '_Drag', '_Evt', '_File', '_Folder', '_Fm',
exts.append( Extension('_Ctl', ['ctl/_Ctlmodule.c'], '_Help', '_Icn', '_IBCarbon', '_List',
extra_compile_args=carbon_extra_compile_args, '_Menu', '_Mlte', '_OSA', '_Res', '_Qd', '_Qdoffs',
extra_link_args=['-framework', 'Carbon']) ) '_Scrap', '_Snd', '_TE', '_Win',
exts.append( Extension('_Dlg', ['dlg/_Dlgmodule.c'], ]
extra_compile_args=carbon_extra_compile_args, for name in CARBON_EXTS:
extra_link_args=['-framework', 'Carbon']) ) addMacExtension(name, carbon_kwds)
exts.append( Extension('_Drag', ['drag/_Dragmodule.c'],
extra_compile_args=carbon_extra_compile_args, # Application Services & QuickTime
extra_link_args=['-framework', 'Carbon']) ) app_kwds = {'extra_compile_args': carbon_extra_compile_args,
exts.append( Extension('_Evt', ['evt/_Evtmodule.c'], 'extra_link_args': ['-framework','ApplicationServices'],
extra_compile_args=carbon_extra_compile_args, }
extra_link_args=['-framework', 'Carbon']) ) addMacExtension('_Launch', app_kwds)
exts.append( Extension('_File', ['file/_Filemodule.c'], addMacExtension('_CG', app_kwds)
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Folder', ['folder/_Foldermodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Fm', ['fm/_Fmmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Help', ['help/_Helpmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Icn', ['icn/_Icnmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_IBCarbon', ['ibcarbon/_IBCarbon.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Launch', ['launch/_Launchmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'ApplicationServices']) )
exts.append( Extension('_List', ['list/_Listmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Menu', ['menu/_Menumodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Mlte', ['mlte/_Mltemodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_OSA', ['osa/_OSAmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Qd', ['qd/_Qdmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Qdoffs', ['qdoffs/_Qdoffsmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_Qt', ['qt/_Qtmodule.c'], exts.append( Extension('_Qt', ['qt/_Qtmodule.c'],
extra_compile_args=carbon_extra_compile_args, extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'QuickTime', extra_link_args=['-framework', 'QuickTime',
'-framework', 'Carbon']) ) '-framework', 'Carbon']) )
exts.append( Extension('_Scrap', ['scrap/_Scrapmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
exts.append( Extension('_TE', ['te/_TEmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
# As there is no standardized place (yet) to put # As there is no standardized place (yet) to put
# user-installed Mac libraries on OSX, we search for "waste" # user-installed Mac libraries on OSX, we search for "waste"
# in parent directories of the Python source tree. You # in parent directories of the Python source tree. You
...@@ -1119,7 +1077,6 @@ class PyBuildExt(build_ext): ...@@ -1119,7 +1077,6 @@ class PyBuildExt(build_ext):
waste_libs = find_library_file(self.compiler, "WASTE", [], waste_libs = find_library_file(self.compiler, "WASTE", [],
["../"*n + "waste/Static Libraries" for n in (0,1,2,3,4)]) ["../"*n + "waste/Static Libraries" for n in (0,1,2,3,4)])
if waste_incs != None and waste_libs != None: if waste_incs != None and waste_libs != None:
(srcdir,) = sysconfig.get_config_vars('srcdir')
exts.append( Extension('waste', exts.append( Extension('waste',
['waste/wastemodule.c'] + [ ['waste/wastemodule.c'] + [
os.path.join(srcdir, d) for d in os.path.join(srcdir, d) for d in
...@@ -1132,9 +1089,6 @@ class PyBuildExt(build_ext): ...@@ -1132,9 +1089,6 @@ class PyBuildExt(build_ext):
libraries = ['WASTE'], libraries = ['WASTE'],
extra_link_args = ['-framework', 'Carbon'], extra_link_args = ['-framework', 'Carbon'],
) ) ) )
exts.append( Extension('_Win', ['win/_Winmodule.c'],
extra_compile_args=carbon_extra_compile_args,
extra_link_args=['-framework', 'Carbon']) )
self.extensions.extend(exts) self.extensions.extend(exts)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment