o
    U=ºi·  ã                   @   s¸   d dl Z d dlZd dlmZ d dlmZ dgZe jdks%ejdd… dkr*e 	d¡ G d	d„ deƒZ
G d
d„ deƒZedkrZd dlmZ e d¡ d dlmZ eedd� ¡ ƒ dS dS )é    N)Ú	FCompiler)ÚDistutilsPlatformErrorÚCompaqFCompilerÚposixé   ÚcygwinÚCompaqVisualFCompilerc                   @   s�   e Zd ZdZdZdZejdd… dkrdZndZd	d
geddgedgegd	gddgdgdœZ	dZ
dZdd„ Zdd„ Zdd„ Zdd„ Zdd„ ZdS )r   ÚcompaqzCompaq Fortran Compilerz$Compaq Fortran (?P<version>[^\s]*).*Né   ÚlinuxZfortZf90ú<F90>z-versionz-f77rtlz-fixedÚarz-crÚranlib©Zversion_cmdZcompiler_f77Zcompiler_fixZcompiler_f90Ú	linker_soÚarchiverr   z-module z-Ic                 C   ó   ddgS )Nz-assume no2underscorez-nomixed_str_len_arg© ©Úselfr   r   úfC:\Users\psant\Downloads\PAF backend\school\venv\Lib\site-packages\numpy/distutils/fcompiler/compaq.pyÚ	get_flags(   ó   zCompaqFCompiler.get_flagsc                 C   r   )Nz-gz-check boundsr   r   r   r   r   Úget_flags_debug*   r   zCompaqFCompiler.get_flags_debugc                 C   ó   g d¢S )N)z-O4z-align dcommonsz-assume bigarraysz-assume nozsizez-math_library fastr   r   r   r   r   Úget_flags_opt,   r   zCompaqFCompiler.get_flags_optc                 C   r   )Nz
-arch hostz
-tune hostr   r   r   r   r   Úget_flags_arch/   r   zCompaqFCompiler.get_flags_archc                 C   s    t jd d… dkrdgS ddgS )Nr
   r   z-sharedz-Wl,-expect_unresolved,*)ÚsysÚplatformr   r   r   r   Úget_flags_linker_so1   s   z#CompaqFCompiler.get_flags_linker_so)Ú__name__Ú
__module__Ú__qualname__Úcompiler_typeÚdescriptionÚversion_patternr   r   Úfc_exeÚexecutablesÚmodule_dir_switchÚmodule_include_switchr   r   r   r   r   r   r   r   r   r      s,    ù
c                
   @   sz  e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZejdkr–ddlmZ zeƒ Ze ¡  ejZW nb ey<   Y nZ ey[ Z zdeeƒv rPede ƒ n‚ W Y dZ[n?dZ[w eyx Z zdeeƒvrnedeƒ ‚ W Y dZ[n"dZ[w ey• Z zdeeƒvr‹edeƒ ‚ W Y dZ[ndZ[ww ddgeddgedgegdgedgddœZdd„ Zdd„ Z d d!„ Z!d"d#„ Z"dS )$r   Zcompaqvz)DIGITAL or Compaq Visual Fortran CompilerzQ(DIGITAL|Compaq) Visual Fortran Optimizing Compiler Version (?P<version>[^\s]*).*z/compile_onlyz/object:z/OUT:z.libz%s%sz/module:z/Izlib.exeZDFÚwin32r   )ÚMSVCCompilerZ_MSVCCompiler__rootz1Ignoring "%s" (I think it is msvccompiler.py bug)Nzvcvarsall.batzUnexpected OSError inz'path'zUnexpected ValueError inr   z/whatz/f77rtlz/fixedr   c                 C   r   )N)z/nologoz/MDz/WXz!/iface=(cref,nomixed_str_len_arg)z/names:lowercasez/assume:underscorer   r   r   r   r   r   j   r   zCompaqVisualFCompiler.get_flagsc                 C   r   )N)z/Oxz/fastz/optimize:5z	/unroll:0z/math_library:fastr   r   r   r   r   r   m   r   z#CompaqVisualFCompiler.get_flags_optc                 C   ó   dgS )Nz/threadsr   r   r   r   r   r   o   ó   z$CompaqVisualFCompiler.get_flags_archc                 C   r,   )Nz/debugr   r   r   r   r   r   q   r-   z%CompaqVisualFCompiler.get_flags_debug)#r    r!   r"   r#   r$   r%   Zcompile_switchZobject_switchZlibrary_switchZstatic_lib_extensionZstatic_lib_formatr(   r)   Zar_exer&   r   r   Znumpy.distutils.msvccompilerr+   ÚmZ
initializeÚlibr   ÚAttributeErrorÚeÚstrÚprintÚOSErrorÚ__file__Ú
ValueErrorr'   r   r   r   r   r   r   r   r   r   6   sh    

þ€
þ€
þ€ÿù
Ú__main__)Úlogé   )Úcustomized_fcompilerr	   )Úcompiler)Úosr   Znumpy.distutils.fcompilerr   Údistutils.errorsr   Z	compilersÚnamer   Úappendr   r   r    Ú	distutilsr8   Úset_verbosityZnumpy.distutilsr:   r3   Úget_versionr   r   r   r   Ú<module>   s   
&>
ü