Ticket #4053: GCC6.6.patch

File GCC6.6.patch, 2.0 KB (added by Itms, 3 years ago)
  • libraries/source/spidermonkey/build.sh

     
    2929
    3030CONF_OPTS="--enable-shared-js --disable-tests --without-intl-api"
    3131
     32# Bug 1269319
     33# When compiled with GCC 6 (or later), SpiderMonkey 38 (and versions up to 49) is
     34# subject to segfaults. Disabling a few optimizations fixes that.
     35# See also #4053
     36if [ "${OS}" != "Windows_NT" ]
     37then
     38  if [ "`${CXX:=g++} -dumpversion | cut -f1 -d.`" -ge "6" ]
     39  then
     40    CXXFLAGS="${CXXFLAGS} -fno-schedule-insns2 -fno-delete-null-pointer-checks"
     41  fi
     42fi
     43
    3244# Change the default location where the tracelogger should store its output.
    3345# The default location is . on Windows and /tmp/ on *nix.
    3446TLCXXFLAGS='-DTRACE_LOG_DIR="\"../../source/tools/tracelogger/\""'
     
    91103perl -i.bak -pe 's/(SHARED_LIBRARY_NAME\s+=).*/$1 '\''mozjs38-ps-debug'\''/' moz.build
    92104mkdir -p build-debug
    93105cd build-debug
    94 CXXFLAGS="${TLCXXFLAGS}" ../configure ${CONF_OPTS} --with-nspr-libs="$NSPR_LIBS" --with-nspr-cflags="$NSPR_INCLUDES" --enable-debug --disable-optimize --enable-js-diagnostics --enable-gczeal
     106CXXFLAGS="${CXXFLAGS} ${TLCXXFLAGS}" ../configure ${CONF_OPTS} --with-nspr-libs="$NSPR_LIBS" --with-nspr-cflags="$NSPR_INCLUDES" --enable-debug --disable-optimize --enable-js-diagnostics --enable-gczeal
    95107${MAKE} ${MAKE_OPTS}
    96108cd ..
    97109
     
    98110perl -i.bak -pe 's/(SHARED_LIBRARY_NAME\s+=).*/$1 '\''mozjs38-ps-release'\''/' moz.build
    99111mkdir -p build-release
    100112cd build-release
    101 CXXFLAGS="${TLCXXFLAGS}" ../configure ${CONF_OPTS} --with-nspr-libs="$NSPR_LIBS" --with-nspr-cflags="$NSPR_INCLUDES" --enable-optimize  # --enable-gczeal --enable-debug-symbols
     113CXXFLAGS="${CXXFLAGS} ${TLCXXFLAGS}" ../configure ${CONF_OPTS} --with-nspr-libs="$NSPR_LIBS" --with-nspr-cflags="$NSPR_INCLUDES" --enable-optimize  # --enable-gczeal --enable-debug-symbols
    102114${MAKE} ${MAKE_OPTS}
    103115cd ..
    104116