§ !A?hÔ ã ó\ — d Z ddlZddlmZ ddlmZ ddddœZdd „Z dd„Z dd „Z d„ Z dS )zFdistutils.file_util Utility functions for operating on single files. é N)ÚDistutilsFileError)ÚlogÚcopyingzhard linkingzsymbolically linking)NÚhardÚsymé @ c ó¢ — d}d} t | d¦ « }n,# t $ r}t d| ›d|j ›�¦ « ‚d}~ww xY wt j |¦ « rB t j |¦ « n,# t $ r}t d|›d|j ›�¦ « ‚d}~ww xY w t |d¦ « }n,# t $ r}t d|›d|j ›�¦ « ‚d}~ww xY w | |¦ « }n,# t $ r}t d | ›d|j ›�¦ « ‚d}~ww xY w|snD | |¦ « n,# t $ r}t d |›d|j ›�¦ « ‚d}~ww xY wŒŠ |r| ¦ « |r| ¦ « dS dS # |r| ¦ « |r| ¦ « w w xY w)a5 Copy the file 'src' to 'dst'; both must be filenames. Any error opening either file, reading from 'src', or writing to 'dst', raises DistutilsFileError. Data is read/written in chunks of 'buffer_size' bytes (default 16k). No attempt is made to handle anything apart from regular files. NÚrbzcould not open 'ú': zcould not delete 'Úwbzcould not create 'Tzcould not read from 'zcould not write to ')ÚopenÚOSErrorr ÚstrerrorÚosÚpathÚexistsÚunlinkÚreadÚwriteÚclose)ÚsrcÚdstÚbuffer_sizeÚfsrcÚfdstÚeÚbufs ú@/opt/alt/python-internal/lib64/python3.11/distutils/file_util.pyÚ_copy_file_contentsr s— € ð €DØ€Dð&ð Tݘ˜T‘?”?ˆDˆDøÝð Tð Tð TÝ$Ð$À#À#À#ÀqÄzÀzÐ%RÑSÔSÐSøøøøð Tøøøõ Œ7�>Š>˜#ÑÔð Gð GÝ” ˜#‘”��øÝð Gð Gð GÝ(Ð(Ø58°S°S¸!¼*¸*ÐEñGô Gð Gøøøøð Gøøøð Cݘ˜T‘?”?ˆDˆDøÝð Cð Cð CÝ$Ð$Ø14°°°a´j°jÐAñCô Cð Cøøøøð Cøøøð Ið JØ—i’i Ñ,Ô,��øÝð Jð Jð JÝ(Ð(Ø8;¸¸¸Q¼Z¸ZÐHñJô Jð Jøøøøð Jøøøð ð Øð IØ— ’ ˜3‘”��øÝð Ið Ið IÝ(Ð(Ø7:°s°s¸A¼J¸JÐGñIô Ið Iøøøøð Iøøøð Ið ð ð Ø�JŠJ‰LŒLˆLØð Ø�JŠJ‰LŒLˆLˆLˆLð ð øð ð Ø�JŠJ‰LŒLˆLØð Ø�JŠJ‰LŒLˆLˆLð øøøs³ ‡ —F ˜ A¢<¼AÁ"F Á$A9 Á8F Á9 B"ÂBÂB"Â"F Â&B7 Â6F Â7 C ÃCÃC à F Ã%C; Ã:F Ã; D$ÄDÄD$Ä$F Ä+E Å F Å E*ÅE%Å%E*Å*F Æ/Gé c ó¼ — ddl m} ddlm} m} m}m} t j | ¦ « st d| z ¦ « ‚t j |¦ « r@|} t j |t j | ¦ « ¦ « }nt j |¦ « } |r+ || |¦ « s|dk rt j d| ¦ « |dfS t" | }n # t$ $ r t' d|z ¦ « ‚w xY w|dk rot j |¦ « t j | ¦ « k rt j d|| | ¦ « nt j d|| |¦ « |r|dfS |d k rjt j |¦ « r t j | |¦ « s* t j | |¦ « |dfS # t0 $ r Y ncw xY wn^|d k rXt j |¦ « r t j | |¦ « st j | |¦ « |dfS t5 | |¦ « |s|r_t j | ¦ « }|r#t j ||| || f¦ « |r$t j | ||| ¦ « ¦ « |dfS )a Copy a file 'src' to 'dst'. If 'dst' is a directory, then 'src' is copied there with the same name; otherwise, it must be a filename. (If the file exists, it will be ruthlessly clobbered.) If 'preserve_mode' is true (the default), the file's mode (type and permission bits, or whatever is analogous on the current platform) is copied. If 'preserve_times' is true (the default), the last-modified and last-access times are copied as well. If 'update' is true, 'src' will only be copied if 'dst' does not exist, or if 'dst' does exist but is older than 'src'. 'link' allows you to make hard links (os.link) or symbolic links (os.symlink) instead of copying: set it to "hard" or "sym"; if it is None (the default), files are copied. Don't set 'link' on systems that don't support it: 'copy_file()' doesn't check if hard or symbolic linking is available. If hardlink fails, falls back to _copy_file_contents(). Under Mac OS, uses the native file copy function in macostools; on other systems, uses '_copy_file_contents()' to copy file contents. Return a tuple (dest_name, copied): 'dest_name' is the actual name of the output file, and 'copied' is true if the file was copied (or would have been copied, if 'dry_run' true). r )Únewer)ÚST_ATIMEÚST_MTIMEÚST_MODEÚS_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 )Údistutils.dep_utilr" Ústatr# r$ r% r&