
     hi                         d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dlm	Z	m
Z
 d dlmZmZ ej                  j                  ddd      Zd	Zd
Zd Zd Zd Zd Zy)    N)compat)CONF)get_hook_configlogger)GiModuleInfocollect_glib_translationsgdk-pixbuf-2.02.10.0loaderszlib/gdk-pixbuf/loaderszlib/gdk-pixbufc                     t         j                  j                  | dd      ddg}|D ]  }t        j                  |      }||c S  y )Nr	   zgdk-pixbuf-query-loaderszgdk-pixbuf-query-loaders-64)ospathjoinshutilwhich)libdircmdscmdcmd_fullpaths       ZC:\des-py\Monitor\venv\Lib\site-packages\PyInstaller/hooks/hook-gi.repository.GdkPixbuf.py)_find_gdk_pixbuf_query_loaders_executabler      sW     	V-/IJ%"D   ||C(# 
     c           	         t         j                  rdnd}g }t        j                  j	                  | t
        |      }t        j                  |      D ]  }|j                  |        |sot        j                  j                  t        j                  j	                  | ddt
        |            }t        j                  |      D ]  }|j                  |        |S )Nz*.dllz*.so..lib)	r   is_winr   r   r   LOADERS_PATHglobappendabspath)r   lib_extloader_libspatternfs        r   _collect_loadersr%   ,   s    gFG Kggll6<9GYYw 1 ''//"'',,vtULRY"Z[7# 	"Aq!	" r   c           
      @   t        j                  | g|dt         j                  d      j                  }g }dt        j
                  j                  |dd      z   }t        |      }ddj                  g d      z   }t        |      }dt        j
                  j                  t        j
                  j                  |d	d
dd            z   }	t        |	      }
|j                         D ]  }|j                  d      r|j                  |      rdt        z   ||d  z   }na|j                  |      r dt        j                  dd      z   ||d  z   }n0|j                  |	      rdt        z   ||
d  z   j                  dd      }|j                  |        dj                  |      S )NTutf-8)checkstdoutencoding"r	   r
   z\\)r   r	   r
   r   r   #z"@executable_path//
)
subprocessrunPIPEr)   r   r   r   lenr    
splitlines
startswithLOADER_CACHE_DEST_PATHreplacer   )gdk_pixbuf_query_loadersr   r"   	cachedataoutput_linesprefixplen
win_prefixwin_plenmsys2_prefix
msys2_plenlines               r   _generate_loader_cacherA   ?   s   *  8G;G%)&0oo(/1 28 
 L277<<(8(CCFv;Dv{{#FGGJ:HfdEK[]e)fggL\"J $$& 	"??3??6"'*@@4;ND__Z(/77VDDtHIVD__\*004
3DDMMcSYZDD!	" 99\""r   c                    t        dd      }|j                  sy |j                         \  }}}|j                         }t	        |      }t        j                  d|       |st        j                  d       nt        |      }|D ]  }|j                  |t        f        t        |||      }	t        j                  j                  t        d   d      }
t!        |
dd	      5 }|j#                  |	       d d d        |j                  |
t$        f       t'        | d
d      }|r|t)        d|      z  }| j+                  |       | j-                  |        | j.                  |  y # 1 sw Y   pxY w)N	GdkPixbufz2.0z'gdk-pixbuf-query-loaders executable: %szQgdk-pixbuf-query-loaders executable not found in GI library directory or in PATH!workpathzloaders.cachewr'   )r*   gi	languagesz
gdk-pixbuf)r   	availablecollect_typelib_data
get_libdirr   r   debugwarningr%   r   LOADER_MODULE_DEST_PATHrA   r   r   r   r   openwriter5   r   r   	add_datasadd_binariesadd_imports)hook_apimodule_infobinariesdatashiddenimportsr   r7   r"   r   r8   	cachefilefp	lang_lists                r   hookr[   r   sV   {E2K  %0%E%E%G"He]##%F  IP
LL:<TU#jk 'v.  	<COOS"9:;	< ++CV[Y	GGLLj!1?C	)S73 	 rHHY	 i!789  $<I*<CCu(#H-(	  	 s   "E##E,)r   r   r   r/   PyInstallerr   PyInstaller.configr   PyInstaller.utils.hooksr   r   PyInstaller.utils.hooks.gir   r   r   r   r   rM   r5   r   r%   rA   r[    r   r   <module>ra      sW     	    # ; Nww||,h	B2 ) "&0#f$)r   