aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hirsch, Ph.D <scivision@users.noreply.github.com>2019-02-11 14:26:15 -0500
committerJussi Pakkanen <jpakkane@gmail.com>2019-02-11 21:26:15 +0200
commit627d0d1f3e0ece4a8d4dae1f66cc44b40439b171 (patch)
treeeb71395ef1a4f4092aa04c10de205df32147998e
parenteccc59874df6ecbc41471069f73b5c20809d384e (diff)
downloadmeson-627d0d1f3e0ece4a8d4dae1f66cc44b40439b171.zip
meson-627d0d1f3e0ece4a8d4dae1f66cc44b40439b171.tar.gz
meson-627d0d1f3e0ece4a8d4dae1f66cc44b40439b171.tar.bz2
BUGFIX: ignore non-ascii Fortran characters
-rw-r--r--mesonbuild/backend/ninjabackend.py7
1 files changed, 3 insertions, 4 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 6524765..afef9a9 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -1838,9 +1838,8 @@ rule FORTRAN_DEP_HACK%s
continue
filename = s.absolute_path(self.environment.get_source_dir(),
self.environment.get_build_dir())
- # Some Fortran editors save in weird encodings,
- # but all the parts we care about are in ASCII.
- with open(filename, errors='ignore') as f:
+ # Fortran keywords must be ASCII.
+ with open(filename, encoding='ascii', errors='ignore') as f:
for line in f:
modmatch = modre.match(line)
if modmatch is not None:
@@ -1870,7 +1869,7 @@ rule FORTRAN_DEP_HACK%s
submodre = re.compile(r"\s*\bsubmodule\b\s+\((\w+:?\w+)\)\s+(\w+)\s*$", re.IGNORECASE)
dirname = self.get_target_private_dir(target)
tdeps = self.fortran_deps[target.get_basename()]
- with open(src) as f:
+ with open(src, encoding='ascii', errors='ignore') as f:
for line in f:
usematch = usere.match(line)
if usematch is not None: