-í
ì¶<c       s›   d  Z  d k Z d k Z d k Z d k Td k l Z l Z l Z l	 Z	 l
 Z
 d k l Z l Z l Z d k Z d k Z d k Z d e f d „  ƒ  YZ d S(   s¶   distutils.mwerkscompiler

Contains MWerksCompiler, an implementation of the abstract CCompiler class
for MetroWerks CodeWarrior on the Macintosh. Needs work to support CW on
Windows.N(   s   *(   s   DistutilsExecErrors   DistutilsPlatformErrors   CompileErrors   LibErrors	   LinkError(   s	   CCompilers   gen_preprocess_optionss   gen_lib_optionss   MWerksCompilerc    
  sÑ   t  Z d  Z d Z h  Z d g Z d d d g Z d g Z d Z e e e Z	 d Z
 d	 Z d
 Z d Z d Z Z d Z d d d d „ Z e e e d e e d „ Z e e e e e d e e e d „	 Z d „  Z RS(   sy   Concrete class that implements an interface to MetroWerks CodeWarrior,
       as defined by the CCompiler abstract class.s   mwerkss   .cs   .ccs   .cpps   .cxxs   .rs   .exps   .rsrcs   .objs   .libs   .slbs   %s%ss    i    c    s   t  i |  | | | ƒ d  S(   N(   s	   CCompilers   __init__s   selfs   verboses   dry_runs   force(   s   selfs   verboses   dry_runs   force(    (    s.   /usr/lib/python2.2/distutils/mwerkscompiler.pys   __init__1 s    c    sA   |  i | | | ƒ \ } } } | |  _ | |  _ | |  _ g  Sd  S(   N(	   s   selfs   _fix_compile_argss
   output_dirs   macross   include_dirss   sourcess   _MWerksCompiler__sourcess   _MWerksCompiler__macross   _MWerksCompiler__include_dirs(   s   selfs   sourcess
   output_dirs   macross   include_dirss   debugs   extra_preargss   extra_postargs(    (    s.   /usr/lib/python2.2/distutils/mwerkscompiler.pys   compile9 s
    			c $   sT  |  i | | ƒ \ } } |  i | | | ƒ \ } } } | |  i	 |  i
 f j o t d ‚ n | o t d ‚ n |
 p | o t d ‚ n t | ƒ d j o t d ‚ n t |  i |  i ƒ } t |  i |  i ƒ } | o t |  i | ƒ } n g  } | o |  i | ƒ } n t i ƒ  } | o t i i | | ƒ } n |  i | ƒ } t i i | ƒ \ } } | d d j o | d  } n6 | d d j o | d  } n t i i | ƒ d	 } | d
 } | }" | d } | d } d | } t$ i% i& | |  i' |  i( ƒ t$ i% i& | |  i' |  i( ƒ h  } | | d <| | d <| | d <|" | d <t* i+ | d <d | d <g  } g  } xV | | D]J } t i i | ƒ \ } } | i0 | ƒ | | j o | i0 | ƒ n q|W| | d <| | d <| | | | d <|  i( oC d Gt i1 ƒ  GHx) | i2 ƒ  D] \ } } d | | f GHqWd  Sn t i i | | ƒ }# |  i' o d G|# GHn t6 |# d ƒ } | i8 d | d	 ƒ | i9 ƒ  |  i: o± t i i t i1 ƒ  t i i | | ƒ ƒ }  t6 |  d ƒ } | i8 d ƒ xP |  i: D]E \ } } | t= j o | i8 d | ƒ n | i8 d | | f ƒ qñW| i9 ƒ  | | d  <n t i i t i1 ƒ  t i i | | ƒ ƒ } |  i' o d! G| GHn t? i@ iA | ƒ } | iC ƒ  | d" } t6 | d ƒ } | i8 | ƒ | i9 ƒ  t i i t i1 ƒ  t i i | | ƒ ƒ }! |  i' o d# G|! GHn t? iF | |! ƒ |  i' o	 d$ GHn t? iG |! ƒ d  S(%   Ns@   Can only make SHARED_LIBRARY or SHARED_OBJECT targets on the Macs(   Runtime library dirs not implemented yeti   s   Need exactly one export symboliøÿÿÿs   .ppc.slbiõÿÿÿs   .carbon.slbi    s   .mcps   .xmls   .mcp.exps   mwerks_%s_config.hs   mac_exportnames   mac_outputdirs   mac_dllnames   mac_targetnames	   sysprefixs   Absolutes   mac_sysprefixtypes   sourcess	   librariess   extrasearchdirss   CALLING LINKER INs
   %20.20s %ss   	Create export files   ws   %s
s"   #include "mwerks_plugin_config.h"
s   #define %s
s   #define %s %s
s
   prefixnames   	Create XML files   tmp_projectxmldatas   	Create project files   	Build project(H   s   selfs   _fix_object_argss   objectss
   output_dirs   _fix_lib_argss	   librariess   library_dirss   runtime_library_dirss   target_descs   SHARED_LIBRARYs   SHARED_OBJECTs   DistutilsPlatformErrors   extra_preargss   extra_postargss   lens   export_symbolss   maps   _filename_to_abss   _MWerksCompiler__sourcess   sourcess   _MWerksCompiler__include_dirss   include_dirss
   build_temps   oss   curdirs   paths   joins   output_filenames   splits   basenames   strips   projectnames
   targetnames   xmlnames
   exportnames
   prefixnames	   distutilss   dir_utils   mkpaths   verboses   dry_runs   settingss   syss   prefixs   sourcefilenamess   sourcefiledirss   filenames   dirnames   appends   getcwds   itemss   keys   values   exportfilenames   opens   fps   writes   closes   _MWerksCompiler__macross   prefixfilenames   names   Nones   xmlfilenames   mkcwprojects   cwxmlgens   ProjectBuilders
   xmlbuilders   generates   xmldatas   projectfilenames   makeprojects   buildproject($   s   selfs   target_descs   objectss   output_filenames
   output_dirs	   librariess   library_dirss   runtime_library_dirss   export_symbolss   debugs   extra_preargss   extra_postargss
   build_temps   keys   basenames   sourcess   xmldatas   xmlfilenames   dirnames   projectnames
   exportnames
   xmlbuilders   filenames   xmlnames   fps   sourcefilenamess
   prefixnames   sourcefiledirss   include_dirss   names   settingss   values   prefixfilenames   projectfilenames
   targetnames   exportfilename(    (    s.   /usr/lib/python2.2/distutils/mwerkscompiler.pys   linkI s¶    








 


 


*
 
*



*

	c    s°   t  i i | ƒ } t i i | ƒ o% t i ƒ  } t i i	 | | ƒ } n t
 i | d ƒ } x< t d t | ƒ ƒ D]% } | | d j o d | | <n qs Wt
 i	 | d ƒ Sd  S(   Ns   :i   s   ..s    (   s	   distutilss   utils   convert_paths   filenames   oss   paths   isabss   getcwds   curdirs   joins   strings   splits
   componentss   ranges   lens   i(   s   selfs   filenames   is   curdirs
   components(    (    s.   /usr/lib/python2.2/distutils/mwerkscompiler.pys   _filename_to_absÊ s     (   s   __name__s
   __module__s   __doc__s   compiler_types   executabless   _c_extensionss   _cpp_extensionss   _rc_extensionss   _exp_extensions   src_extensionss   res_extensions   obj_extensions   static_lib_extensions   shared_lib_extensions   static_lib_formats   shared_lib_formats   exe_extensions   __init__s   Nones   compiles   links   _filename_to_abs(    (    (    s.   /usr/lib/python2.2/distutils/mwerkscompiler.pys   MWerksCompiler s$    		
$(   s   __doc__s   syss   oss   strings   typess   distutils.errorss   DistutilsExecErrors   DistutilsPlatformErrors   CompileErrors   LibErrors	   LinkErrors   distutils.ccompilers	   CCompilers   gen_preprocess_optionss   gen_lib_optionss   distutils.utils	   distutilss   distutils.dir_utils   mkcwprojects   MWerksCompiler(   s	   CCompilers   DistutilsPlatformErrors   DistutilsExecErrors   strings   gen_preprocess_optionss	   distutilss   gen_lib_optionss	   LinkErrors   syss   MWerksCompilers   mkcwprojects   CompileErrors   oss   LibError(    (    s.   /usr/lib/python2.2/distutils/mwerkscompiler.pys   ? s   %			