Ë †IÆ:‘Ûãó¨—ddlZddlmZddlmZddlmZddlmZGd„d«Z Gd „d e «Z Gd „d e «Z Gd „de «Z Gd„de «Z y)éNé)Ú UserException)Ú Installable)ÚOLDEST_SUPPORTED_MINOR)ÚSIP_VERSION_STRcó—eZdZdZd„Zy)Ú BuildablezS Encapsulate the components used to build something that can be installed. cóÜ—||_||_g|_g|_tj j |j|«|_t j|jd¬«y)ú Initialise the buildable. T©Úexist_okN) ÚprojectÚnameÚbuilder_settingsÚ installablesÚosÚpathÚjoinÚ build_dirÚmakedirs)Úselfrrs ú7/usr/lib/python3.12/site-packages/sipbuild/buildable.pyÚ__init__zBuildable.__init__sP€ðˆŒ ؈Œ Ø "ˆÔ؈Ô䟙Ÿ™ g×&7Ñ&7¸Ó>ˆŒÜ � ‰ �D—N‘N¨TÖ2óN)Ú__name__Ú __module__Ú __qualname__Ú__doc__r©rrr r s „ñó 3rr có4‡—eZdZdZddœˆfd„ Zd„Zd„ZˆxZS)ÚBuildableFromSourceszT Encapsulate the sources used to build an extension module, executable etc. F©Úuses_limited_apic󲕗t‰|�||«|jrd}n(|r&|jst dj |««‚||_||_g|_g|_ g|_ g|_ g|_ g|_ g|_g|_g|_d|_|jr/|jj%dj t&««yy)r FzB{0} cannot use the limited API without using a shared 'sip' modulezPy_LIMITED_API=0x03{0:02x}0000N)ÚsuperrÚpy_debugÚ sip_modulerÚformatÚtargetr#Ú define_macrosÚsourcesÚheadersÚ include_dirsÚ librariesÚ library_dirsÚextra_compile_argsÚextra_link_argsÚ extra_objectsÚdebugÚappendr)rrrr)r#Ú __class__s €rrzBuildableFromSources.__init__$sÙø€ô ‰Ñ˜ $Ô'à × Ò Ø$Ñ Ù  g×&8Ò&8Üð#ß#)¡6¨$£<ó1ð 1ðˆŒ Ø 0ˆÔàˆÔ؈Œ ؈Œ ØˆÔØˆŒØˆÔØ"$ˆÔØ!ˆÔØˆÔØˆŒ à × Ò Ø × Ñ × %Ñ %Ø4×;Ñ;Ü2ó4õ 5ð !rcó—|j|j«|_|j|j«|_|j|j«|_|j|j«|_y)zL Make all file and directory names relative to the build directory. N)Ú_relative_namesr-r,r+r/©rs rÚmake_names_relativez(BuildableFromSources.make_names_relativeCsb€ð !×0Ñ0°×1BÑ1BÓCˆÔØ×+Ñ+¨D¯L©LÓ9ˆŒ Ø×+Ñ+¨D¯L©LÓ9ˆŒ Ø ×0Ñ0°×1BÑ1BÓCˆÕrcód—g}|D]™} tjj||jg«}tjj |«\}}t |«dkDr*tjj ||j«}|j|«Œ›|S#t$rYŒ wxYw)z® Return a list of times made relative to build directory. Note that we only really do this for cosmetic reasons to simplify what the user might see. r) rrÚ commonpathrÚ splitdriveÚlenÚrelpathÚ ValueErrorr4)rÚnamesÚ rel_namesÚfnÚcommonÚ_s rr7z$BuildableFromSources._relative_namesMs €ð ˆ ãˆBð ÜŸ™×+Ñ+¨R°·±Ð,@ÓA�ÜŸG™G×.Ñ.¨vÓ6‘ ��6ä�v“; ’?ôŸ™Ÿ™¨¨T¯^©^Ó<�Bð × Ñ ˜RÕ ðð Ðøôò ñð ús‰BB#Â# B/Â.B/)rrrrrr9r7Ú __classcell__©r5s@rr!r!sø„ñðCHö5ò>Dörr!có—eZdZdZy)ÚBuildableExecutablez6 Encapsulate the sources used to build an executable. N)rrrrrrrrHrHhs„Ú@rrHcó4‡—eZdZdZddœˆfd„ Zd„Zd„ZˆxZS)ÚBuildableModulez< Encapsulate the sources used to build an extension module. Fr"cóz•—t‰|�|||jd«d|¬«||_d|_d|_y)ú Initialise the sources. Ú.éÿÿÿÿr"FN)r%rÚsplitÚfq_nameÚ exceptionsÚstatic)rrrrPr#r5s €rrzBuildableModule.__init__osEø€ô ‰Ñ˜ $¨¯ © °cÓ(:¸2Ñ(>Ø!1ð ô 3ðˆŒ àˆŒØˆ� rcóx—tjj|jj d«dd«S)z� Return the sub-directory the extension module should be installed in relative to the eventual target directory. rMNrN)rÚseprrPrOr8s rÚget_install_subdirz"BuildableModule.get_install_subdirzs-€ô �v‰v�{‰{˜4Ÿ<™<×-Ñ-¨cÓ2°3°BÐ7Ó8Ð8rcó‚—|jjdk(ryddlm}|jr|D] }d|vsŒ|cS|dS)z: Return the filename extension that a module should have. Úwin32z.pydr)ÚEXTENSION_SUFFIXESz.abi3)rÚ py_platformÚimportlib.machineryrXr#)rrXÚss rÚget_module_extensionz$BuildableModule.get_module_extension�sH€ð �<‰<× #Ñ # wÒ .Øå:à × Ò Û'�ؘa’<Ø’Hð(ð" !Ñ$Ð$r)rrrrrrUr\rErFs@rrJrJlsø„ÙFàCHö ò9ö %rrJcó4‡—eZdZdZddœˆfd„ Zd„Zd„ZˆxZS)ÚBuildableBindingsz[ Encapsulate the sources used to build the extension module for a set of bindings. Fr"cór•—t‰|�|j|jd«d||¬«||_y)rLrMrNr"N)r%rrrOÚbindings)rr`rPr#r5s €rrzBuildableBindings.__init__–s=ø€ô ‰Ñ˜×)Ñ)¨7¯=©=¸Ó+=¸bÑ+AÀ7Ø!1ð ô 3ð!ˆ� rcó —tjj|jj «|j «}t ||¬«S)z? Return an installable for the buildable's bindings directory. )Ú target_subdir)rrrrÚget_bindings_dirrr)rrrbs rÚget_bindings_installablez*BuildableBindings.get_bindings_installabležs;€ôŸ™Ÿ ™  T§\¡\×%BÑ%BÓ%DØ— ‘ óˆ ô˜4¨}Ô=Ð=rc óº—tjj||j«}tj|d¬«tjj||jdz«}|j d«}|j j|«|jj|«|j}t|d«5}|jjrtnd}dj|jD�cgc]}dj|«‘Œc}«}dj|j D� cgc]} dj| «‘Œc} «} |j#d j|j$««|j#d j||jj&|| ««d d d «y cc}wcc} w#1swYy xYw) zW Write the configuration of the bindings and add it as an installable. Tr z.tomlÚconfigÚwÚz, z"{}"z1# Automatically generated configuration for {0}. z^ sip-version = "{}" sip-abi-version = "{}" module-tags = [{}] module-disabled-features = [{}] N)rrrrrrdÚfilesr4rr`ÚopenrÚ version_inforÚtagsr(Údisabled_featuresÚwriterPÚ abi_version) rÚ bindings_dirÚ config_pathÚ installabler`ÚcfÚsip_version_strÚtrlÚfÚdisableds rÚwrite_configurationz%BuildableBindings.write_configuration¦sn€ô —w‘w—|‘| L°$·)±)Ó<ˆ Ü � ‰ �L¨4Õ0ä—g‘g—l‘l <°·±¸WÑ1DÓEˆ ð×3Ñ3°HÓ=ˆ Ø×Ñ× Ñ  Ô-Ø ×Ñ× Ñ  Ô-ð—=‘=ˆä �+˜sÔ # rØ15·±×1JÒ1J�oÐPRˆOØ—9‘9¸¿ º ÓF¹ °1˜fŸm™m¨AÕ.¸ ÑFÓGˆDØ—y‘yØ/7×/IÒ/IÓJÑ/I¨!�V—]‘] 1Õ%Ð/IÑJóLˆHð �H‰HÐI×PÑPÐQU×Q]ÑQ]Ó^Ô _Ø �H‰Hð÷  �Fˆ?˜DŸL™L×4Ñ4°d¸HÓEô  G÷$Ð #ùâFùâJ÷ $Ð #ús+Ã8GÄG Ä GÄ>G ÅA(GÇ GÇG)rrrrrrdrxrErFs@rr^r^‘sø„ñð?Dö!ò>öGrr^)rrQrrrrÚ py_versionsrÚversionrr r!rHrJr^rrrÚr{sZðó  å%Ý$Ý/Ý$÷3ñ3ô"F˜9ôFôRAÐ.ôAô"%Ð*ô"%ôJ4G˜õ4Gr