a
XC?h @ s d Z ddlZddlmZ ddlmZ ddlT zddlmZ W n e yV dd ZY n0 g d Z
ejd
ddd
gZ
ejddddgZdd Zd-ddZd.ddZd/ddZd0ddZd1ddZd2ddZd3d d!Zd4d"d#Zd5d$d%Zd6d&d'Zd7d(d)Zd*d+ Zed,kre dS )8z
dyld emulation
N)framework_info)
dylib_info)*) _dyld_shared_cache_contains_pathc G s t d S )N)NotImplementedError)args r 9/opt/alt/python39/lib64/python3.9/ctypes/macholib/dyld.pyr s r ) dyld_findframework_findr r z~/Library/Frameworksz/Library/Frameworksz/Network/Library/Frameworksz/System/Library/Frameworksz~/libz/usr/local/libz/libz/usr/libc C s. | d u rt j} | |}|d u r$g S |dS )N:)osenvirongetsplit)envvarZrvalr r r dyld_env$ s
r c C s | d u rt j} | dS )NZDYLD_IMAGE_SUFFIX)r
r r r r r r dyld_image_suffix, s r c C s
t | dS )NZDYLD_FRAMEWORK_PATHr r r r r dyld_framework_path1 s r c C s
t | dS )NZDYLD_LIBRARY_PATHr r r r r dyld_library_path4 s r c C s
t | dS )NZDYLD_FALLBACK_FRAMEWORK_PATHr r r r r dyld_fallback_framework_path7 s r c C s
t | dS )NZDYLD_FALLBACK_LIBRARY_PATHr r r r r dyld_fallback_library_path: s r c C s( t |}|du r| S | |fdd}| S )z>For a potential path iterator, add DYLD_IMAGE_SUFFIX semanticsNc s sF | D ]<}| dr0|d td | d V n
|| V |V qd S )Nz.dylib)endswithlen)iteratorsuffixpathr r r _injectB s
z)dyld_image_suffix_search.