ó
–<4Ic           @   sH  d  d l  Z  e  j d k  r. d  d l m Z n  d  d l Z d  d l Z d  d l Z d  d l Z d  d l	 m
 Z
 d  d l Z d  d l m Z m Z m Z m Z d d d d	 d
 d d d d d d d g Z d g Z e j d d g ƒ d d g Z d e j f d „  ƒ  YZ d „  Z d „  Z d „  Z d „  Z d Z d Z d Z e j d e d d d  d! d ƒZ e j e _ e j  j! d ƒ e j d" e d# d$ d! d  ƒZ d% e _" e j d& e d# d$ d! d  ƒZ d% e _" e j# d' d( d d) d* d+ ƒ e d ƒ e ƒ e d, ƒ e ƒ e d- ƒ e ƒ e d ƒ e ƒ e d ƒ e ƒ e e ƒ e ƒ d S(.   iÿÿÿÿNið (   t   Set(   t   debug(   t   featuret   beforet	   extensiont   aftert   CCDEPSt	   FRAMEWORKt   FRAMEWORKPATHt	   STATICLIBt   LIBt   LIBPATHt	   LINKFLAGSt   RPATHt   CCFLAGSt   CPPPATHt   CPPFLAGSt	   CCDEFINESs   .ct   cct
   apply_coret
   cc_taskgenc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    sp   /home/javi/src/hotssh/hotssh/hotssh-0.2.6+dfsg1/.waf-1.5.1-3009bf2a0164643771f76f0e24c46d7e/wafadmin/Tools/cc.pyR      s   c         C   sY   t  |  j ƒ j t ƒ |  _ t  |  j ƒ j t ƒ |  _ |  j d sU t j d ƒ ‚ n  d  S(   Nt   CC_NAMEs0   At least one compiler (gcc, ..) must be selected(	   t   sett   p_flag_varst   uniont   g_cc_flag_varst   p_type_varst   g_cc_type_varst   envt   Utilst   WafError(   t   self(    (    sp   /home/javi/src/hotssh/hotssh/hotssh-0.2.6+dfsg1/.waf-1.5.1-3009bf2a0164643771f76f0e24c46d7e/wafadmin/Tools/cc.pyt   init_cc   s    c         C   sô   |  j  } | j } | d } xF | d D]: } | d | | j | ƒ ƒ | d | | j | ƒ ƒ q' Wx# | d D] } | d | | ƒ qp W| d | d ƒ | d | | j ƒ  ƒ |  j } | d | | j | ƒ ƒ | d | | j | ƒ ƒ d  S(   Nt
   CPPPATH_STt	   INC_PATHSt   _CCINCFLAGSR   t   .(   R   t   append_uniquet   bldpatht   srcpatht   variantt   path(   R!   R   t   appt
   cpppath_stt   it   tmpnode(    (    sp   /home/javi/src/hotssh/hotssh/hotssh-0.2.6+dfsg1/.waf-1.5.1-3009bf2a0164643771f76f0e24c46d7e/wafadmin/Tools/cc.pyt   apply_obj_vars_cc   s    		
	c   
      C   sS  t  j } t |  d g  ƒ |  _ |  j |  j ƒ |  j |  j d ƒ } g  } x* | D]" } | | k rQ | j | ƒ qQ qQ W|  j |  j ƒ } x2 | D]* } |  j d | } | r | | 7} q q Wg  g  | D] } | j d ƒ ^ qÈ D]0 }	 d |	 d t	 j
 d j |	 d ƒ ƒ f ^ qá |  j d <|  j d	 } g  | D] }	 | |	 ^ q2|  j d
 <d  S(   Nt   definesR   t
   CCDEFINES_t   =s   %s %si    i   t   DEFLINESt   CCDEFINES_STt   _CCDEFFLAGS(   t   Buildt   bldt   getattrR1   t   to_listR   t   appendt   uselibt   splitR   t
   trimquotest   join(
   R!   t   treet   lstt   milstt   defit   libst   lt   valt   yt   x(    (    sp   /home/javi/src/hotssh/hotssh/hotssh-0.2.6+dfsg1/.waf-1.5.1-3009bf2a0164643771f76f0e24c46d7e/wafadmin/Tools/cc.pyt   apply_defines_cc"   s    	& `c         C   s~   |  j  d ƒ } y |  j } Wn t k
 r< d |  j } n X|  j | _ | g | _ | j | ƒ g | _ |  j	 j
 | ƒ d  S(   NR   s   _%d.o(   t   create_taskt   obj_extt   AttributeErrort   idxt   scanner_definesR1   t   inputst
   change_extt   outputst   compiled_tasksR;   (   R!   t   nodet   taskRK   (    (    sp   /home/javi/src/hotssh/hotssh/hotssh-0.2.6+dfsg1/.waf-1.5.1-3009bf2a0164643771f76f0e24c46d7e/wafadmin/Tools/cc.pyt   c_hook1   s      s^   ${CC} ${CCFLAGS} ${CPPFLAGS} ${_CCINCFLAGS} ${_CCDEFFLAGS} ${CC_SRC_F}${SRC} ${CC_TGT_F}${TGT}s^   ${LINK_CC} ${CCLNK_SRC_F}${SRC} ${CCLNK_TGT_F}${TGT} ${LINKFLAGS} ${_LIBDIRFLAGS} ${_LIBFLAGS}sž   ${LINK_CC} ${CCLNK_SRC_F}${SRC} ${CCLNK_TGT_F}${TGT[1].bldpath(env)} ${LINKFLAGS} ${_LIBDIRFLAGS} ${_LIBFLAGS} && ln -sf ${TGT[1].name} ${TGT[0].bldpath(env)}t   GREENt   ext_outs   .ot   ext_int   cc_linkt   colort   YELLOWi   t   vnum_cc_linkt   apply_incpathsRI   t   apply_lib_varsR0   t   apply_obj_varst   apply_type_varst
   default_cc($   t   syst
   hexversiont   setsR    R   t   TaskGenR7   R   t   Taskt   LogsR   t   ccrootR   R   R   R   R   t   EXT_CCt   bind_featureR   t   ccroot_abstractR   R"   R0   RI   RU   t   cc_strt   link_strt   vnum_link_strt   simple_task_typet   clst   scant   varsR;   t   maxjobst   declare_order(    (    (    sp   /home/javi/src/hotssh/hotssh/hotssh-0.2.6+dfsg1/.waf-1.5.1-3009bf2a0164643771f76f0e24c46d7e/wafadmin/Tools/cc.pyt   <module>   s@    0"*					!		