B
    n\0
                 @   s   d dl mZmZmZ 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rd dlmZ ed d dlmZ eddZee  ee  dS )    )divisionabsolute_importprint_functionN)	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)selfZversion_stringm r   <lib/python3.7/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   dgS )N r   )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>z-VZf95z-fixedarz-crranlib)version_cmdcompiler_f77compiler_fixcompiler_f90	linker_soarchiverr   c             C   s   t jdkrddgS t| S )Ndarwinz-unsharedf95z/-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   dddddgS )Nz-gz-glinez-g90z-nanz-Cr   )r   r   r   r   get_flags_debug3   s    zNAGFCompiler.get_flags_debugN)	r   r   r   compiler_typedescriptionexecutablesr   r   r&   r   r   r   r   r      s   
c               @   sF   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S )r   nagforzNAG Fortran Compilerz-Vz-fixedr   z-crr   )r   r   r   r   r    r!   r   c             C   s:   |   }|r(|dkr(dddddddd	gS dddddgS d S )
Nz6.1z-gz-uz-nanz-C=allz-thread_safez-kind=uniquez-Warn=allocationz-Warn=subnormal)r%   )r   r	   r   r   r   r&   E   s
    

zNAGFORCompiler.get_flags_debugN)r   r   r   r'   r(   r)   r&   r   r   r   r   r   6   s   
__main__)log   )customized_fcompilerr*   )compiler)Z
__future__r   r   r   r#   r
   Znumpy.distutils.fcompilerr   Z	compilersr   r   r   r   Z	distutilsr,   Zset_verbosityZnumpy.distutilsr.   r/   printr%   r&   r   r   r   r   <module>   s   

