Add Chakra. (#937)

This commit is contained in:
Oliver Chang 2017-11-01 10:11:00 +11:00 committed by GitHub
parent f0d237c4cf
commit ccfb26c04c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 65 additions and 0 deletions

View File

@ -41,6 +41,11 @@ then
export COVERAGE_FLAGS="${!COVERAGE_FLAGS_VAR}"
fi
# Don't need coverage instrumentation for engine-less builds.
if [[ $FUZZING_ENGINE = "none" ]]; then
export COVERAGE_FLAGS=
fi
export CFLAGS="$CFLAGS $SANITIZER_FLAGS $COVERAGE_FLAGS"
export CXXFLAGS="$CFLAGS $CXXFLAGS_EXTRA"

View File

@ -0,0 +1,22 @@
# Copyright 2017 Google Inc.
#
# 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.
#
################################################################################
FROM gcr.io/oss-fuzz-base/base-builder
MAINTAINER ochang@google.com
RUN apt-get update && apt-get install -y build-essential cmake libicu-dev python
RUN git clone --depth 1 https://github.com/Microsoft/ChakraCore.git chakra
WORKDIR chakra
COPY build.sh $SRC/

32
projects/chakra/build.sh Executable file
View File

@ -0,0 +1,32 @@
#!/bin/bash -eu
# Copyright 2017 Google Inc.
#
# 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.
#
################################################################################
DISABLED_WARNINGS='-Wno-everything'
# Inject additional C/CXXFLAGS
cat <<EOF > /usr/local/bin/cmake
#!/bin/sh
/usr/bin/cmake \\
-DCMAKE_C_FLAGS="\$CFLAGS $DISABLED_WARNINGS" \\
-DCMAKE_CXX_FLAGS="\$CXXFLAGS $DISABLED_WARNINGS" \\
"\$@"
EOF
chmod +x /usr/local/bin/cmake
./build.sh --test-build --static --embed-icu --cc="$(which clang)" --cxx="$(which clang++)" -j -v -y
cp out/Test/ch $OUT

View File

@ -0,0 +1,6 @@
homepage: "https://github.com/Microsoft/ChakraCore"
primary_contact: "ochang@google.com" # temporary
fuzzing_engines:
- none
sanitizers:
- address