#!/bin/sh # Copyright (c) 2008 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. set -ex JS_FILES="runtime.js \ v8natives.js \ array.js \ string.js \ uri.js \ math.js \ messages.js \ apinatives.js \ debug-delay.js \ mirror-delay.js \ date-delay.js \ regexp-delay.js \ macros.py" V8ROOT="${SRCROOT}/../v8" SRC_DIR="${V8ROOT}/src" NATIVE_JS_FILES="" for i in ${JS_FILES} ; do NATIVE_JS_FILES+="${SRC_DIR}/${i} " done V8_GENERATED_SOURCES_DIR="${CONFIGURATION_TEMP_DIR}/generated" mkdir -p "${V8_GENERATED_SOURCES_DIR}" LIBRARIES_CC="${V8_GENERATED_SOURCES_DIR}/libraries.cc" LIBRARIES_EMPTY_CC="${V8_GENERATED_SOURCES_DIR}/libraries-empty.cc" python "${V8ROOT}/tools/js2c.py" \ "${LIBRARIES_CC}.new" \ "${LIBRARIES_EMPTY_CC}.new" \ ${NATIVE_JS_FILES} # Only use the new files if they're different from the existing files (if any), # preserving the existing files' timestamps when there are no changes. This # minimizes unnecessary build activity for a no-change build. if ! diff -q "${LIBRARIES_CC}.new" "${LIBRARIES_CC}" >& /dev/null then mv "${LIBRARIES_CC}.new" "${LIBRARIES_CC}" else rm "${LIBRARIES_CC}.new" fi if ! diff -q "${LIBRARIES_EMPTY_CC}.new" "${LIBRARIES_EMPTY_CC}" >& /dev/null then mv "${LIBRARIES_EMPTY_CC}.new" "${LIBRARIES_EMPTY_CC}" else rm "${LIBRARIES_EMPTY_CC}.new" fi