_i vddlZddlmZddlZejj ZGddZGddeZy)N)logcVeZdZdZdZdZdZdZdZ dZ dZ d Z d Z e d Zy ) Installerz -nspkg.pthcl|j}|sy|j}|jj|t j d|t |j|}|jr t|yt|d5}|j|dddy#1swYyxYw)Nz Installing %swt) _get_all_ns_packages_get_nspkg_fileoutputsappendrinfomap_gen_nspkg_linedry_runlistopen writelines)selfnspfilenamelinesfs /builddir/build/BUILDROOT/alt-python312-setuptools-69.0.2-3.el8.x86_64/opt/alt/python312/lib/python3.12/site-packages/setuptools/namespaces.pyinstall_namespaceszInstaller.install_namespaces s'') '') H% (+D((#. << K  (D !Q LL " ! !s B**B3c|j}tjj|syt j d|tj |y)Nz Removing %s)r ospathexistsrr remove)rrs runinstall_namespaceszInstaller.uninstall_namespacess='')ww~~h'  ) (ctjj|j\}}||jzSN)rrsplitext _get_target nspkg_ext)rr_s rr zInstaller._get_nspkg_file$s2gg&&t'7'7'9: !$..((r c|jSr")targetrs rr$zInstaller._get_target(s {{r ) zimport sys, types, osz#has_mfs = sys.version_info > (3, 5)z$p = os.path.join(%(root)s, *%(pth)r)z4importlib = has_mfs and __import__('importlib.util')z-has_mfs and __import__('importlib.machinery')zm = has_mfs and sys.modules.setdefault(%(pkg)r, importlib.util.module_from_spec(importlib.machinery.PathFinder.find_spec(%(pkg)r, [os.path.dirname(p)])))zCm = m or sys.modules.setdefault(%(pkg)r, types.ModuleType(%(pkg)r))z7mp = (m or []) and m.__dict__.setdefault('__path__',[])z(p not in mp) and mp.append(p))z4m and setattr(sys.modules[%(parent)r], %(child)r, m)cy)Nz$sys._getframe(1).f_locals['sitedir']r)s r _get_rootzInstaller._get_rootAs5r ct|jd}|j}|j}|j d\}}}|r||j z }dj |tzdzS)N.; )tuplesplitr, _nspkg_tmpl rpartition_nspkg_tmpl_multijoinlocals)rpkgpthroot tmpl_linesparentsepchilds rrzInstaller._gen_nspkg_lineDsnCIIcN#~~%%  ^^C0U  $00 0Jxx #fh.55r c |jjxsg}ttt t |j |S)z,Return sorted list of all package namespaces) distributionnamespace_packagessortedsetflattenr _pkg_names)rpkgss rrzInstaller._get_all_ns_packagesMs8  339rc'#doot"<=>??r c#K|jd}|r'dj||j|r&yyw)z Given a namespace package, yield the components of that package. >>> names = Installer._pkg_names('a.b.c') >>> set(names) == set(['a', 'a.b', 'a.b.c']) True r.N)r2r6pop)r8partss rrEzInstaller._pkg_namesRs4 #((5/ ! IIKs9>>N)__name__ __module__ __qualname__r%rrr r$r3r5r,rr staticmethodrEr+r rrr sTI ")K"(Q;66@   r rceZdZdZdZy)DevelopInstallerc>tt|jSr")reprstregg_pathr)s rr,zDevelopInstaller._get_rootcsC &''r c|jSr")egg_linkr)s rr$zDevelopInstaller._get_targetfs }}r N)rJrKrLr,r$r+r rrOrObs (r rO) r distutilsr itertoolschain from_iterablerDrrOr+r rrZs8  // ' 'VVryr