] @ s d d l Z d d l m Z d d l m Z d d d d d d i Z d d d Z d d d d d d d d Z d d d d Z d d Z d S) N)DistutilsFileError)logZcopyinghardzhard linkingsymzsymbolically linking i c N C s d } d } zy t | d } Wn> t k rb } z t d | | j f WYd d } ~ Xn Xt j j | r y t j | Wn> t k r } z t d | | j f WYd d } ~ Xn Xy t | d } Wn> t k r} z t d | | j f WYd d } ~ Xn Xx y | j | } Wn> t k rq} z t d | | j f WYd d } ~ Xn X| syPy | j | Wqt k r} z t d | | j f WYd d } ~ XqXqWWd | r| j | r| j Xd S)Nrbzcould not open '%s': %szcould not delete '%s': %swbzcould not create '%s': %szcould not read from '%s': %szcould not write to '%s': %s)openOSErrorr strerrorospathexistsunlinkreadwriteclose)srcdstZbuffer_sizefsrcfdstebuf r ./opt/alt/python35/lib64/python3.5/file_util.py_copy_file_contents sF ,)))1 r c C s d d l m } d d l m } m } m } m } t j j | sT t d | t j j | r | } t j j | t j j | } n t j j | } | r | | | r | d k r t j d | | d f Sy t | } Wn" t k rt d | Yn X| d k rpt j j | t j j | k rZt j d | | | n t j d | | | | r| d f S| d k rt j j | ot j j | | s6y t j | | | d f SWq6t k rYq6XnM | d k r6t j j | ot j j | | s6t j | | | d f St | | | sO| rt j | } | rt j | | | | | f | rt j | | | | | d f S)Nr )newer)ST_ATIMEST_MTIMEST_MODES_IMODEz4can't copy '%s': doesn't exist or not a regular filer z"not copying %s (output up-to-date)z&invalid value '%s' for 'link' argumentz%s %s -> %sr r )Zdistutils.dep_utilr statr r r r! r r isfiler isdirjoinbasenamedirnamer debug_copy_actionKeyError ValueErrorinfor samefilelinkr symlinkr utimechmod)r r Z preserve_modeZpreserve_timesupdater. verbosedry_runr r r r r! diractionstr r r copy_fileC sT !" $ $ ' ' r8 c ( C s d d l m } m } m } m } m } d d l } | d k rS t j d | | | r] | S| | sy t d | | | r t j j | | | } n" | | r t d | | f | | | s t d | | f d } y t j | | Wne t k rn} zE | j \ } } | | j k rCd } n t d | | | f WYd d } ~ Xn X| rt | | d | y t j | Wnv t k r} zV | j \ } } y t j | Wn t k rYn Xt d | | | | f WYd d } ~ Xn X| S) Nr )r r# r$ r&