Initialisation du repository de Beta
This commit is contained in:
commit
14985f6dbb
9469 changed files with 1903273 additions and 0 deletions
|
|
@ -0,0 +1,77 @@
|
|||
import os
|
||||
from .compilation import compile_run_strings
|
||||
from .util import CompilerNotFoundError
|
||||
|
||||
def has_fortran():
|
||||
if not hasattr(has_fortran, 'result'):
|
||||
try:
|
||||
(stdout, stderr), info = compile_run_strings(
|
||||
[('main.f90', (
|
||||
'program foo\n'
|
||||
'print *, "hello world"\n'
|
||||
'end program'
|
||||
))], clean=True
|
||||
)
|
||||
except CompilerNotFoundError:
|
||||
has_fortran.result = False
|
||||
if os.environ.get('SYMPY_STRICT_COMPILER_CHECKS', '0') == '1':
|
||||
raise
|
||||
else:
|
||||
if info['exit_status'] != os.EX_OK or 'hello world' not in stdout:
|
||||
if os.environ.get('SYMPY_STRICT_COMPILER_CHECKS', '0') == '1':
|
||||
raise ValueError("Failed to compile test program:\n%s\n%s\n" % (stdout, stderr))
|
||||
has_fortran.result = False
|
||||
else:
|
||||
has_fortran.result = True
|
||||
return has_fortran.result
|
||||
|
||||
|
||||
def has_c():
|
||||
if not hasattr(has_c, 'result'):
|
||||
try:
|
||||
(stdout, stderr), info = compile_run_strings(
|
||||
[('main.c', (
|
||||
'#include <stdio.h>\n'
|
||||
'int main(){\n'
|
||||
'printf("hello world\\n");\n'
|
||||
'return 0;\n'
|
||||
'}'
|
||||
))], clean=True
|
||||
)
|
||||
except CompilerNotFoundError:
|
||||
has_c.result = False
|
||||
if os.environ.get('SYMPY_STRICT_COMPILER_CHECKS', '0') == '1':
|
||||
raise
|
||||
else:
|
||||
if info['exit_status'] != os.EX_OK or 'hello world' not in stdout:
|
||||
if os.environ.get('SYMPY_STRICT_COMPILER_CHECKS', '0') == '1':
|
||||
raise ValueError("Failed to compile test program:\n%s\n%s\n" % (stdout, stderr))
|
||||
has_c.result = False
|
||||
else:
|
||||
has_c.result = True
|
||||
return has_c.result
|
||||
|
||||
|
||||
def has_cxx():
|
||||
if not hasattr(has_cxx, 'result'):
|
||||
try:
|
||||
(stdout, stderr), info = compile_run_strings(
|
||||
[('main.cxx', (
|
||||
'#include <iostream>\n'
|
||||
'int main(){\n'
|
||||
'std::cout << "hello world" << std::endl;\n'
|
||||
'}'
|
||||
))], clean=True
|
||||
)
|
||||
except CompilerNotFoundError:
|
||||
has_cxx.result = False
|
||||
if os.environ.get('SYMPY_STRICT_COMPILER_CHECKS', '0') == '1':
|
||||
raise
|
||||
else:
|
||||
if info['exit_status'] != os.EX_OK or 'hello world' not in stdout:
|
||||
if os.environ.get('SYMPY_STRICT_COMPILER_CHECKS', '0') == '1':
|
||||
raise ValueError("Failed to compile test program:\n%s\n%s\n" % (stdout, stderr))
|
||||
has_cxx.result = False
|
||||
else:
|
||||
has_cxx.result = True
|
||||
return has_cxx.result
|
||||
Loading…
Add table
Add a link
Reference in a new issue