aboutsummaryrefslogtreecommitdiff
path: root/mlog.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2016-01-15 21:12:23 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2016-01-15 21:22:09 +0200
commit8b1039fa30a405e2d07ac70eb0284ee4654c619a (patch)
tree6cc326bf97c235c9e67b4a34534316fdaaa2eb19 /mlog.py
parent926b55076f1fa94f887dd62443c66a886af0b78b (diff)
downloadmeson-8b1039fa30a405e2d07ac70eb0284ee4654c619a.zip
meson-8b1039fa30a405e2d07ac70eb0284ee4654c619a.tar.gz
meson-8b1039fa30a405e2d07ac70eb0284ee4654c619a.tar.bz2
Organise files into a module structure.
Diffstat (limited to 'mlog.py')
-rw-r--r--mlog.py81
1 files changed, 0 insertions, 81 deletions
diff --git a/mlog.py b/mlog.py
deleted file mode 100644
index 2807c2b..0000000
--- a/mlog.py
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2013-2014 The Meson development team
-
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-
-# http://www.apache.org/licenses/LICENSE-2.0
-
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import sys, os, platform
-
-"""This is (mostly) a standalone module used to write logging
-information about Meson runs. Some output goes to screen,
-some to logging dir and some goes to both."""
-
-colorize_console = platform.system().lower() != 'windows' and os.isatty(sys.stdout.fileno())
-log_dir = None
-log_file = None
-
-def initialize(logdir):
- global log_dir, log_file
- log_dir = logdir
- log_file = open(os.path.join(logdir, 'meson-log.txt'), 'w')
-
-def shutdown():
- global log_file
- if log_file is not None:
- log_file.close()
-
-class AnsiDecorator():
- plain_code = "\033[0m"
-
- def __init__(self, text, code):
- self.text = text
- self.code = code
-
- def get_text(self, with_codes):
- if with_codes:
- return self.code + self.text + AnsiDecorator.plain_code
- return self.text
-
-def bold(text):
- return AnsiDecorator(text, "\033[1m")
-
-def red(text):
- return AnsiDecorator(text, "\033[1;31m")
-
-def green(text):
- return AnsiDecorator(text, "\033[1;32m")
-
-def cyan(text):
- return AnsiDecorator(text, "\033[1;36m")
-
-def process_markup(args, keep):
- arr = []
- for arg in args:
- if isinstance(arg, str):
- arr.append(arg)
- elif isinstance(arg, AnsiDecorator):
- arr.append(arg.get_text(keep))
- else:
- arr.append(str(arg))
- return arr
-
-def debug(*args, **kwargs):
- arr = process_markup(args, False)
- if log_file is not None:
- print(*arr, file=log_file, **kwargs) # Log file never gets ANSI codes.
-
-def log(*args, **kwargs):
- arr = process_markup(args, False)
- if log_file is not None:
- print(*arr, file=log_file, **kwargs) # Log file never gets ANSI codes.
- if colorize_console:
- arr = process_markup(args, True)
- print(*arr, **kwargs)