From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- .ycm_extra_conf.py | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .ycm_extra_conf.py (limited to '.ycm_extra_conf.py') diff --git a/.ycm_extra_conf.py b/.ycm_extra_conf.py new file mode 100644 index 0000000000..4539ae535a --- /dev/null +++ b/.ycm_extra_conf.py @@ -0,0 +1,47 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import imp +import os +import shlex +import sys +try: + from StringIO import StringIO +except ImportError: + from io import StringIO + +old_bytecode = sys.dont_write_bytecode +sys.dont_write_bytecode = True + +path = os.path.join(os.path.dirname(__file__), 'mach') + +if not os.path.exists(path): + path = os.path.join(os.path.dirname(__file__), 'config.status') + config = imp.load_module('_buildconfig', open(path), path, ('', 'r', imp.PY_SOURCE)) + path = os.path.join(config.topsrcdir, 'mach') +mach_module = imp.load_module('_mach', open(path), path, ('', 'r', imp.PY_SOURCE)) + +sys.dont_write_bytecode = old_bytecode + +def FlagsForFile(filename): + mach = mach_module.get_mach() + out = StringIO() + + # Mach calls sys.stdout.fileno(), so we need to fake it when capturing it. + # Returning an invalid file descriptor does the trick. + out.fileno = lambda: -1 + out.encoding = None + mach.run(['compileflags', filename], stdout=out, stderr=out) + + flag_list = shlex.split(out.getvalue()) + + # This flag is added by Fennec for android build and causes ycmd to fail to parse the file. + # Removing this flag is a workaround until ycmd starts to handle this flag properly. + # https://github.com/Valloric/YouCompleteMe/issues/1490 + final_flags = [x for x in flag_list if not x.startswith('-march=armv')] + + return { + 'flags': final_flags, + 'do_cache': True + } -- cgit v1.2.3