add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
B

�/g^y�@svddlZddlZddlZddlZddlZddlZddlmZyddlZWne	k
r`dZYnXdd�Z
dd�ZdS)�N)�supportc		Cs&ytj��}Wnttfk
r*d}Yn^Xtjd|d�g}ttd�rT|�	tj
�ttd�rj|�	tj�x|D]}tj|d|d�qpWt
�t�tj�|jr�tj�dtj�|j��xbtj��D]T}t|d�r�x(t|j�D]\}}tj�|�|j|<q�Wt|dd�r�tj�|j�|_q�W|j�r,d	tj_|j dk	�rDt�!|j �|j"dk	�r\t#�$|j"�yddl%}Wnt&k
�r~Yn�X|�'|j(|j)B|j*B|j+B�y
|j,Wntk
�r�Yn\XxX|j-|j.|j/gD]D}|j0�r|j0d
k�r|�,||j1�|�2||j3�n|�,|d��q�W|j4t_4dS)NT)Zall_threads�file�SIGALRM�SIGUSR1)�chainrr�__path__�__file__F�)5�sys�
__stderr__�fileno�
ValueError�AttributeError�faulthandlerZenable�hasattr�signal�appendrr�register�replace_stdoutrZrecord_original_stdout�stdoutZtestdir�path�insert�os�abspath�modules�values�	enumerater�getattrrZ
huntrleaks�unittestZ
BaseTestSuiteZ_cleanupZmemlimitZset_memlimitZ	threshold�gcZ
set_threshold�msvcrt�ImportErrorZSetErrorModeZSEM_FAILCRITICALERRORSZSEM_NOALIGNMENTFAULTEXCEPTZSEM_NOGPFAULTERRORBOXZSEM_NOOPENFILEERRORBOXZCrtSetReportModeZCRT_WARNZ	CRT_ERRORZ
CRT_ASSERT�verboseZCRTDBG_MODE_FILEZCrtSetReportFileZCRTDBG_FILE_STDERRZ
use_resources)	�nsZ	stderr_fdZsignalsZsignum�module�indexrr �m�r'�./usr/lib64/python3.7/test/libregrtest/setup.py�setup_testssZ






r)csZtj�y���}Wntk
r&dSXt|d�jdddd�t_�fdd�}t�|�dS)N�w�backslashreplaceF�
)�encoding�errors�closefd�newlinecstj���t_dS)N)r
r�closer')rr'r(�restore_stdoutss
z&replace_stdout.<locals>.restore_stdout)r
rrr
�openr-�atexitr)�fdr2r')rr(r_s
r)r4rrrr
rZtestrrr!r)rr'r'r'r(�<module>s
Q