| # -*- Mode: python; c-basic-offset: 4; 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/. |
| |
| if CONFIG['JS_SHELL_NAME']: |
| GeckoProgram(CONFIG['JS_SHELL_NAME'], linkage=None) |
| if CONFIG['JS_BUNDLED_EDITLINE']: |
| USE_LIBS += ['editline'] |
| USE_LIBS += ['static:js'] |
| |
| UNIFIED_SOURCES += [ |
| 'js.cpp', |
| 'jsoptparse.cpp', |
| 'OSObject.cpp' |
| ] |
| |
| DEFINES['EXPORT_JS_API'] = True |
| |
| if CONFIG['_MSC_VER']: |
| # unnecessary PGO for js shell. But gcc cannot turn off pgo because it is |
| # necessary to link PGO lib on gcc when a object/static lib are compiled |
| # for PGO. |
| NO_PGO = True |
| |
| LOCAL_INCLUDES += [ |
| '!..', |
| '..', |
| ] |
| |
| OS_LIBS += CONFIG['EDITLINE_LIBS'] |
| OS_LIBS += CONFIG['MOZ_ZLIB_LIBS'] |
| |
| # Prepare module loader JS code for embedding |
| GENERATED_FILES += ['shellmoduleloader.out.h'] |
| shellmoduleloader = GENERATED_FILES['shellmoduleloader.out.h'] |
| shellmoduleloader.script = '../builtin/embedjs.py:generate_shellmoduleloader' |
| shellmoduleloader.inputs = [ |
| '../js.msg', |
| 'ModuleLoader.js', |
| ] |