a ;jg @sddlZddlmZddlmZddlmZmZmZddgZGdddeZ ddl Z GdddeZ e d krdd l mZed dd lmZd ejvreed dneedddS)N) FCompiler)platform)joindirnamenormpathPGroupFCompilerPGroupFlangCompilerc@seZdZdZdZdZedkrPddgddggd ddgd gd d gd gdZdgZn.ddgdgddgdgdgd d gd gdZdgZdZ dZ ddZ ddZ ddZ edkrddZnddZddZd S)!rpgzPortland Group Fortran Compilerz1\s*pg(f77|f90|hpf|fortran) (?P[\d.-]+).*darwinz-V pgfortran -dynamiclib)r -Mfixedr Zlibtoolarz-crranlibZ version_cmd compiler_f77Z compiler_fixZ compiler_f90 linker_soarchiverrrz-fpic-module z-IcCsddg}|j|S)Nz-Minform=informz-Mnosecond_underscore) pic_flagsselfoptrF/usr/local/lib/python3.9/site-packages/numpy/distutils/fcompiler/pg.py get_flags+szPGroupFCompiler.get_flagscCsdgS)Nz-fastrrrrr get_flags_opt/szPGroupFCompiler.get_flags_optcCsdgSNz-grrrrrget_flags_debug2szPGroupFCompiler.get_flags_debugcCsgdS)N)z-dynamicz -undefinedZdynamic_lookuprrrrrget_flags_linker_so6sz#PGroupFCompiler.get_flags_linker_socCsddgS)Nz-sharedrrrrrrr#:scCsd|S)Nz-R%srrdirrrrruntime_library_dir_option=sz*PGroupFCompiler.runtime_library_dir_optionN)__name__ __module__ __qualname__ compiler_type descriptionversion_patternr executablesrmodule_dir_switchZmodule_include_switchrr r"r#r&rrrrr s>   c@seZdZdZdZdZdZdgZddgdgdgdgdgedd gdd Zd Z d Z d d Z e j ddddZddZddZddZddZddZddZdS)rflangz$Portland Group Fortran LLVM Compilerz/\s*(flang|clang) version (?P[\d.-]+).*zlib.exer z --versionNz/verbosez/OUT:rrcCst|}|gd|S)N)r/ZflangrtiZompstub)r get_librariesextendrrrrr0Xs z!PGroupFlangCompiler.get_libraries)maxsizecCs6t|}t|jdd}|tt|dd|S)z%List of compiler library directories.rrz..lib)rget_library_dirsrr-appendrr)rrZ flang_dirrrrr5]s z$PGroupFlangCompiler.get_library_dirscCsgSNrrrrrrfszPGroupFlangCompiler.get_flagscCsgSr7rrrrrget_flags_freeisz"PGroupFlangCompiler.get_flags_freecCsdgSr!rrrrrr"lsz#PGroupFlangCompiler.get_flags_debugcCsdgS)Nz-O3rrrrrr osz!PGroupFlangCompiler.get_flags_optcCsgSr7rrrrrget_flags_archrsz"PGroupFlangCompiler.get_flags_archcCstdSr7)NotImplementedErrorr$rrrr&usz.PGroupFlangCompiler.runtime_library_dir_option)r'r(r)r*r+r,Zar_exeZpossible_executablesr-Zlibrary_switchr.r0 functools lru_cacher5rr8r"r r9r&rrrrrCs0   __main__)log)customized_fcompilerr/)compilerr )sysZnumpy.distutils.fcompilerrros.pathrrrZ compilersrr;rr' distutilsr> set_verbosityZnumpy.distutilsr@argvprint get_versionrrrrs  66