summaryrefslogtreecommitdiff
path: root/numpy/distutils/fcompiler/gnu.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #12892 from eric-wieser/distutils-debugCharles Harris2019-01-311-1/+4
|\ | | | | BUG: Do not double-quote arguments passed on to the linker
| * BUG: Do not double-quote arguments passed on to the linkerEric Wieser2019-01-301-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | After the recent patch to CCompiler.spawn, the file-paths no longer need manual quoting - that's handled as needed within subprocess. This also states our assumption that our paths do not contain commas. If we care about this, we could adopt the approach used by https://github.com/rust-lang/rust/issues/38795. Tested for gcc locally by looking at the error messages of `subprocess.check_call(["gcc", r'-Wl,spaces and no quotes'])` Other fortran compiler changes not tested, but assumed to be broken in the same way. Fixes #12882
* | gfortran needs -lpthread & -maix64(64 build) in AIXAyappan P2018-11-191-0/+6
|/
* MAINT: update gfortran RPATH for AIX/Windows non-support.Ralf Gommers2018-11-101-0/+4
| | | | Closes https://github.com/scipy/scipy/issues/9452
* MAINT: remove unused stdlib importsEmil Hessman2018-09-301-1/+0
|
* MAINT: remove exec_command from gnu.pyTyler Reddy2018-09-101-9/+22
| | | | | | * replaced usage of exec_command() with standard library equivalent in distutils gnu module
* MAINT: simplify logic from #9983Kristofor Maynard2017-11-121-8/+6
|
* Merge pull request #9977 from xoviat/squashedCharles Harris2017-11-091-9/+4
|\ | | | | MAINT: distutils: trivial cleanups
| * MAINT: distutils: trivial cleanupsxoviat2017-11-061-9/+4
| |
* | ENH: let f2py discover location of libgfortranKristofor Maynard2017-11-071-0/+27
|/
* BUG: adjust gfortran version search regexJonathan Helmus2017-09-201-1/+2
| | | | | | | Adjust the gfortran regex to require a '.' to be present in the version number. This avoids matching a hash or text containing a '-' such as the version string from the compilers produced by crosstool-NG. For example: GNU Fortran (crosstool-NG 8a21ab48) 7.2.0
* distutils: gnu: revert :art:xoviat2017-09-021-8/+8
|
* distutils: gnu: cleanupxoviat2017-09-021-3/+0
|
* distutils: gnu: revert :art:xoviat2017-09-021-13/+11
|
* distutils: gnu: hash files + chained dllsxoviat2017-09-021-1/+1
|
* distutils: handle unlinkable object files in build_clib/build_ext, not gnuPauli Virtanen2017-09-021-65/+86
| | | | | | | | | | | | | | | | | | | | | | Add concept of unlinkable Fortran object files on the level of build_clib/build_ext. Make build_clib generate fake static libs when unlinkable object files are present, postponing the actual linkage to build_ext. This enables MSVC+gfortran DLL chaining to only involve those DLLs that are actually necessary for each .pyd file, rather than linking everything in to every file. Linking everything to everywhere has issues due to potential symbol clashes and the fact that library build order is unspecified. Record shared_libs on disk instead of in system_info. This is necessary for partial builds -- it is not guaranteed the compiler is actually called for all of the DLL files. Remove magic from openblas msvc detection. That this worked previously relied on the side effect that the generated openblas DLL would be added to shared_libs, and then being linked to all generated outputs.
* distutils: gnu: patch fcompilexoviat2017-09-021-53/+156
| | | | | | | | | | This allows mingw's gfortran to work with MSVC. DLLs are autogenerated using heuristics that should work with most cases. In addition, a libopenblas DLL is compiled from the static lib for use with MSVC. All generated DLLs have randomized names so that no clashes will occur.
* DEP: Fix escaped string characters deprecated in Python 3.6.Charles Harris2016-12-141-1/+1
| | | | | | | In Python 3.6 a number of escape sequences that were previously accepted -- for instance "\(" that was translated to "\\(" -- are deprecated. To retain the previous behavior either raw strings must be used or the backslash must be properly escaped itself.
* BUG: distutils: fix issue with rpath in fcompiler/gnu.pyRalf Gommers2016-10-021-1/+3
| | | | | | ``-Wl,rpath=`` is Linux-specific, OS X needs a comma. This addresses gh-6486, which was already closed but not actually addressed.
* BUG: Fix fid.close() to use os.close(fid)Sebastian Berg2016-09-041-1/+1
| | | | | | | The error snuk in with some other file closing fixes and found by Warren Weckesser. Closes gh-8013
* ENH: Add stacklevel to all (or almost all) our function callsSebastian Berg2016-09-021-1/+1
|
* MAINT: Close some filehandlers and PIPEs after being doneSebastian Berg2016-09-021-0/+1
| | | | | The PIPE in the tests caused a ResourceWarning during testing in python 3.
* ENH: Support for python runtime with no Makefile, like PyPymattip2016-07-181-2/+7
|
* BUG: Fixed mingw.lib errorgfyoung2016-01-251-1/+1
| | | | Closes gh-647.
* Revert "Merge pull request #5614 from charris/cleanup-gh-5587"Charles Harris2015-10-201-22/+10
| | | | | | | | | Revert mingwpy modifications to distutils. They are causing problems for non-windows builds and it is better to wait until mingypy is further along. This reverts commit 96abd32de241864ee97f30357234cbc9a96c43ae, reversing changes made to 06af9918f6bf03b8d818ec834f9fb48db57d1489.
* Revert "Merge pull request #6354 from mingwpy/mingwpy"Charles Harris2015-10-201-7/+6
| | | | | | | | | Revert mingwpy modifications to distutils. They are causing problems for non-windows builds and it is better to wait until mingypy is further along. This reverts commit cda64938eb150b1af6677db4754da3be5fd7e483, reversing changes made to 8cb3ec6ab804f594daf553e53e7cf7478656bebd.
* BLD: mingwpy fixescarlkl2015-09-241-6/+7
|
* BUG: fix typo which fused two compile flags on Windows for GFortran.Ralf Gommers2015-08-201-1/+1
| | | | Reported in gh-6095.
* BLD: distutils: more robust gfortran version checking. Closes gh-5768.Ralf Gommers2015-04-191-14/+33
|
* Merge pull request #5644 from rgommers/fix-gfortran-version-checkCharles Harris2015-03-081-0/+4
|\ | | | | BLD: fix gfortran version check, and make distutils.test() work
| * MAINT: distutils: fix gfortran version check when gfortran emits warnings.Ralf Gommers2015-03-071-0/+4
| |
* | STY: Some style cleanups in distutils.Charles Harris2015-02-271-44/+22
| | | | | | | | | | | | Break long lines. Spaces around operators. Remove dead code.
* | BLD: Add mingw-w64 support for the mingw64static option.carlkl2015-02-271-10/+21
|/
* Removed NotImplementedError for MinGW-w64Juan Luis Cano Rodríguez2014-12-291-1/+1
| | | Closes #3405
* BLD: Change Fortran version flag and string checkRyan Nelson2014-12-011-17/+18
| | | | | | | The version check flag for GnuFCompiler and Gnu95FCompiler were changed from `--version` to `-dumpversion`. This simplifies the gnu_version_match code for gfortran, and makes it possible to drop much of the check code for g77 as well. This fix addresses issue #5315 and #5321.
* Merge pull request #4996 from fdiary/gfortran-rpathJulian Taylor2014-08-261-0/+3
|\ | | | | | | support rpath for GNU Fortran compiler.
| * BLD: support rpath for GNU Fortran compiler.Kazuhiko Shiozaki2014-08-261-0/+3
| |
* | BLD: add debug information to gfortran buildsJulian Taylor2014-08-241-4/+5
|/ | | | Similar to C builds which always have debug info.
* Detect vendor versions of GNU CompilersAron Ahmadia2014-02-041-3/+3
| | | | | | | | Cray and other HPC vendors provide patched versions of the GNU compilers with modified version strings. Use re.search instead of re.match in the version detection scripts to account for modified version strings. Ref: https://github.com/numpy/numpy/issues/4259
* STY: Giant comma spacing fixup.Charles Harris2013-08-181-1/+1
| | | | | | | Run the 2to3 ws_comma fixer on *.py files. Some lines are now too long and will need to be broken at some point. OTOH, some lines were already too long and need to be broken at some point. Now seems as good a time as any to do this with open PRs at a minimum.
* BUG: Handle a version string from a custom-built mingw64.mwtoews2013-05-291-1/+1
| | | | | | | | The custom build compiler "GNU Fortran (rubenvb-4.8.0) 4.8.0" was incorrectly parsed as version '-4.8.0' and the flag "-mno-cygwin" was added to the compilation. See http://cens.ioc.ee/pipermail/f2py-users/2010-October/002092.html.
* 2to3: Apply `print` fixer.Charles Harris2013-04-061-1/+1
| | | | | | | Add `print_function` to all `from __future__ import ...` statements and use the python3 print function syntax everywhere. Closes #3078.
* 2to3: Use absolute imports.Charles Harris2013-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new import `absolute_import` is added the `from __future__ import` statement and The 2to3 `import` fixer is run to make the imports compatible. There are several things that need to be dealt with to make this work. 1) Files meant to be run as scripts run in a different environment than files imported as part of a package, and so changes to those files need to be skipped. The affected script files are: * all setup.py files * numpy/core/code_generators/generate_umath.py * numpy/core/code_generators/generate_numpy_api.py * numpy/core/code_generators/generate_ufunc_api.py 2) Some imported modules are not available as they are created during the build process and consequently 2to3 is unable to handle them correctly. Files that import those modules need a bit of extra work. The affected files are: * core/__init__.py, * core/numeric.py, * core/_internal.py, * core/arrayprint.py, * core/fromnumeric.py, * numpy/__init__.py, * lib/npyio.py, * lib/function_base.py, * fft/fftpack.py, * random/__init__.py Closes #3172
* 2to3:DEP: Remove interactive setup and gnu compiler configuration.Charles Harris2013-03-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | These havn't been deprecated, but I think few have heard of them, much less used them. Before this change, running setup.py without any arguments would result in interactive help. This patch removes that interactive help and lets setup print its usual list of commands and options. All the script uses of the numpy/distutils/fcompiler compilers look quite broken to me, but I have tried to maintain compatibility with the earlier version of gnu.py after the removal of `raw_input`. These removals solve an incompatibility between Python3 and Python2. The current interactive setup help uses `raw_input`, which has been removed in python3 and replaced by `input`. However, python2 already has an `input` that has different semantics. Rather than deal with this, I think it simpler to keep both `raw_input` and `input` out of numpy. Closes #3063 Closes #3079
* 2to3: Put `from __future__ import division in every python file.Charles Harris2013-03-011-0/+2
| | | | | | | | This should be harmless, as we already are division clean. However, placement of this import takes some care. In the future a script can be used to append new features without worry, at least until such time as it exceeds a single line. Having that ability will make it easier to deal with absolute imports and printing updates.
* Fix whitespace formattingcgohlke2012-09-161-1/+1
| | | Use spaces instead of tabs
* BUG: fix issue with incorrect Fortran arch flags. Closes #1399.rgommers2010-11-071-1/+31
| | | | | The basic idea here is to compare arch flags the Fortran compiler supports with the ones the C compiler receives, and throw out any superfluous ones.
* BUG: on Windows the sysconfig module does not contain CFLAGS info.rgommers2010-10-171-1/+4
|
* UPDATE: gcc-4 series do not support -mno-cygwin option.Pearu Peterson2010-10-161-7/+11
|
* BF - get fortran arch flags from C arch flags if availableMatthew Brett2010-10-161-25/+11
|