Ńň §ÚęLc @sŔdZdZddkZddkZddkZddkTddklZlZl Z l Z l Z ddk l Z lZlZddkZddkZddklZde fd „ƒYZdS( 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.s@$Id: mwerkscompiler.py 55881 2007-06-11 05:28:45Z neal.norwitz $i˙˙˙˙N(t*(tDistutilsExecErrortDistutilsPlatformErrort CompileErrortLibErrort LinkError(t CCompilertgen_preprocess_optionstgen_lib_options(tlogtMWerksCompilerc BsţeZdZdZhZdgZdddgZdgZdZeeeZ dZ d Z d Z d Z d ZZd Zdddd„Zdddddddd„Zddddddddddd„ Zd„Zd„Zd„Zd„Zdd„ZRS(syConcrete class that implements an interface to MetroWerks CodeWarrior, as defined by the CCompiler abstract class.tmwerkss.cs.ccs.cpps.cxxs.rs.exps.rsrcs.objs.libs.slbs%s%sticCsti||||ƒdS(N(Rt__init__(tselftverbosetdry_runtforce((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pyR 5sc Cs=|i|||ƒ\}}}||_||_||_gS(N(t_fix_compile_argst_MWerksCompiler__sourcest_MWerksCompiler__macrost_MWerksCompiler__include_dirs( Rtsourcest output_dirtmacrost include_dirstdebugt extra_preargstextra_postargstdepends((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pytcompile=s    c&Cs:|i||ƒ\}}|i|||ƒ\}}}||i|ifjo td‚n|o td‚n| p| o td‚nt|ƒdjo td‚nt|i|iƒ}t|i|i ƒ}|ot|i|ƒ}ng}| o|i| ƒ} n t i ƒ} |ot i i ||ƒ}n|i|ƒ}t i i|ƒ\}}|ddjo|d }n6|ddjo|d }nt i i|ƒd }|d }|}|d }|d }d |}tii| d|iƒtii|d|iƒh}||d<||d<||d<||dR5tstringR6trangeR/(RRZR3t componentsti((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pyR1Ís cCsdS(skReturn the compiler option to add 'dir' to the list of directories searched for libraries. N((Rtdir((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pytlibrary_dir_optionŢscCsdS(ssReturn the compiler option to add 'dir' to the list of directories searched for runtime libraries. N((RRo((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pytruntime_library_dir_optionäscCsdS(sReturn the compiler option to add 'dir' to the list of libraries linked into the shared library or executable. N((Rtlib((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pytlibrary_optionëscCsdS(sHSearch the specified list of directories for a static or shared library file 'lib' and return the full path to that file. If 'debug' true, look for a debugging version (if that makes sense on the current platform). Return None if 'lib' wasn't found in any of the specified directories. i((RtdirsRrR((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pytfind_library_fileńsN(t__name__t __module__t__doc__t compiler_typet executablest _c_extensionst_cpp_extensionst_rc_extensionst_exp_extensiontsrc_extensionst res_extensiont obj_extensiontstatic_lib_extensiontshared_lib_extensiontstatic_lib_formattshared_lib_formatt exe_extensionR RCRRfR1RpRqRsRu(((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pyR sP      r    (Rxt __revision__R;R2Rkttypestdistutils.errorsRRRRRtdistutils.ccompilerRRRtdistutils.utilR8tdistutils.dir_utilR R (((s0/usr/lib64/python2.6/distutils/mwerkscompiler.pyts$ (