a
    iÝEbÙ
  ã                   @   s¤   d dl Z d dlZd dlmZ ddgZG dd„ deƒZG dd„ deƒZG dd„ deƒZed	kr d d
l	m
Z
 e
 d¡ d dlmZ edd�Zee ¡ ƒ ee ¡ ƒ dS )é    N)Ú	FCompilerÚNAGFCompilerÚNAGFORCompilerc                   @   s0   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
S )ÚBaseNAGFCompilerz"NAG.* Release (?P<version>[^(\s]*)c                 C   s$   t  | j|¡}|r| d¡S d S d S )NÚversion)ÚreÚsearchÚversion_patternÚgroup)ÚselfÚversion_stringÚm© r   ú]/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/numpy/distutils/fcompiler/nag.pyÚversion_match
   s    
zBaseNAGFCompiler.version_matchc                 C   s   dgS )Nz-Wl,-sharedr   ©r   r   r   r   Úget_flags_linker_so   s    z$BaseNAGFCompiler.get_flags_linker_soc                 C   s   dgS )Nz-O4r   r   r   r   r   Úget_flags_opt   s    zBaseNAGFCompiler.get_flags_optc                 C   s   g S )Nr   r   r   r   r   Úget_flags_arch   s    zBaseNAGFCompiler.get_flags_archN)Ú__name__Ú
__module__Ú__qualname__r	   r   r   r   r   r   r   r   r   r      s
   r   c                   @   sV   e Zd ZdZdZddgddgddgdgdgddgd	gd
œZdd„ Zdd„ Zdd„ ZdS )r   ZnagzNAGWare Fortran 95 Compilerz<F90>ú-VZf95ú-fixedÚarú-crÚranlib©Zversion_cmdZcompiler_f77Zcompiler_fixZcompiler_f90Ú	linker_soÚarchiverr   c                 C   s   t jdkrddgS t | ¡S )NÚdarwinz-unsharedf95ú/-Wl,-bundle,-flat_namespace,-undefined,suppress©ÚsysÚplatformr   r   r   r   r   r   r   '   s    
z NAGFCompiler.get_flags_linker_soc                 C   s(   |   ¡ }|r|dk rdgS t | ¡S d S )Nz5.1z-target=native)Úget_versionr   r   ©r   r   r   r   r   r   +   s    zNAGFCompiler.get_flags_archc                 C   s   g d¢S )N)ú-gz-glinez-g90ú-nanz-Cr   r   r   r   r   Úget_flags_debug1   s    zNAGFCompiler.get_flags_debugN)	r   r   r   Úcompiler_typeÚdescriptionÚexecutablesr   r   r)   r   r   r   r   r      s   ù
c                   @   sN   e Zd ZdZdZddgddgddgdgdgddgdgdœZd	d
„ Zdd„ ZdS )r   ÚnagforzNAG Fortran Compilerr   r   r   r   r   r   c                 C   s   t jdkrddgS t | ¡S )Nr    z-unsharedrtsr!   r"   r   r   r   r   r   C   s
    
ÿz"NAGFORCompiler.get_flags_linker_soc                 C   s(   |   ¡ }|r|dkrg d¢S g d¢S d S )Nz6.1)r'   ú-ur(   ú-C=allú-thread_safez-kind=uniquez-Warn=allocationz-Warn=subnormal)r'   r(   r/   r.   r0   )r%   r&   r   r   r   r)   H   s    zNAGFORCompiler.get_flags_debugN)r   r   r   r*   r+   r,   r   r)   r   r   r   r   r   4   s   ù
Ú__main__)Úlogé   )Úcustomized_fcompilerr-   )Úcompiler)r#   r   Znumpy.distutils.fcompilerr   Z	compilersr   r   r   r   Ú	distutilsr2   Úset_verbosityZnumpy.distutilsr4   r5   Úprintr%   r)   r   r   r   r   Ú<module>   s   

