# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- # vim: set filetype=python: # 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/. # dummy library name to avoid skipping building the source here, which # we only need the object for. Library('elfhack_inject') DIST_INSTALL = False if CONFIG['TARGET_CPU'].endswith('86'): cpu = 'x86' elif CONFIG['TARGET_CPU'].startswith('arm'): cpu = 'arm' else: cpu = CONFIG['TARGET_CPU'] gen_src = '%s.c' % cpu GENERATED_FILES += [ gen_src, ] GENERATED_FILES[gen_src].script = 'copy_source.py:copy' GENERATED_FILES[gen_src].inputs = ['../inject.c'] SOURCES += [ '!%s' % gen_src, ] NO_PGO = True for v in ('OS_CPPFLAGS', 'OS_CFLAGS', 'DEBUG', 'CLANG_PLUGIN', 'OPTIMIZE', 'FRAMEPTR'): flags = [] idx = 0 for flag in COMPILE_FLAGS[v]: if flag == '-isystem': flags.append(''.join(COMPILE_FLAGS[v][idx:idx + 2])) elif flag.startswith(('-m', '-I', '-isystem')): flags.append(flag) idx += 1 COMPILE_FLAGS[v] = flags COMPILE_FLAGS['OS_CFLAGS'] += ['-O2', '-fno-stack-protector'] AllowCompilerWarnings() NoVisibilityFlags()