;XTddlZddlZddlmZejdkreeejefZneeejfZdZdedede fdZ d edefd Z dS) N)Union) cptj|}tj|ddS)z1Ensure that the parent directory of `path` existsT)exist_okN)ospathdirnamemakedirs)r r s /srv/buildsys-work-dir/castor/build_node/builder-2/WGSG1/unpkd_srcs/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/setuptools/_path.pyensure_directoryr s0good##GK$''''''p1p2returncBt|t|kS)aDiffers from os.path.samefile because it does not require paths to exist. Purely string based (no comparison between i-nodes). >>> same_path("a/b", "./a/b") True >>> same_path("a/b", "a/./b") True >>> same_path("a/b", "././a/b") True >>> same_path("a/b", "./a/b/c/..") True >>> same_path("a/b", "../a/b/c") False >>> same_path("a", "a/b") False )normpath)rrs r same_pathrs B<<8B<< ''rfilenamectjdkrtj|n|}tjtjtj|S)z2Normalize a file/dir name for comparison purposes.cygwin)sysplatformrr abspathnormcaserealpathr)rfiles r rr$s^), (@(@27??8 $ $ $hD 7  BG,,RW-=-=d-C-CDD E EEr) rrtypingr version_infostrPathLikeStrPathr boolrrrr r%s vCS))*GGC$%G((( ('(w(4((((&FwF3FFFFFFr