servo / mozjs

Servo's SpiderMonkey fork
252 stars 118 forks source link

clang version / unknown argument: '-fno-sized-deallocation' #167

Closed progval closed 5 years ago

progval commented 5 years ago

Hi,

I can't compile mozjs_sys (via Servo's mach script) because of this error:

Generting bindings ["./src/jsglue.hpp", "--rust-target", "1.25", "--rustified-enum", ".*", "--no-derive-default", "--enable-cxx-namespaces", "--generate", "functions,types,vars", "--ignore-methods", "--", "-I", "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/dist/include", "-I", "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src", "-x", "c++", "-DRUST_BINDGEN", "-DSTATIC_JS_API", "-std=gnu++14", "-fno-sized-deallocation", "-Wno-unused-parameter", "-Wno-invalid-offsetof", "-include", "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/js-confdefs.h", "--rustfmt-configuration-file", "rustfmt.toml"] Debian clang version 3.5.2-5 (tags/RELEASE_352/final) (based on LLVM 3.5.2). [...] error: unknown argument: '-fno-sized-deallocation', err: true thread 'main' panicked at 'Should generate JSAPI bindings OK: ()', src/libcore/result.rs:999:5

Here is the full output:

~/servo $ RUST_BACKTRACE=1 LANG=C ./mach build --release
   Compiling mozjs_sys v0.61.6
error: failed to run custom build command for `mozjs_sys v0.61.6`
process didn't exit successfully: `/home/dev-rust/servo/target/release/build/mozjs_sys-659f0ee87f7baaca/build-script-build` (exit code: 101)
--- stdout
[[ /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure -ot /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure.in ]] && touch /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure || true
[[ /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/old-configure -ot /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/old-configure.in ]] && touch /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/old-configure || true
! [[ /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure.in -ot /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure ]] && touch /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure || true
! [[ /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/old-configure.in -ot /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/old-configure ]] && touch /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/old-configure || true
if [[ /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure -nt /home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config.status ]] ; then \
  cd /home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out && \
  PYTHON="python2" MOZ_TOOLS="" \
  CC="gcc" CFLAGS="" \
  CPP="gcc -E" CPPFLAGS="" \
  CXX="g++" CXXFLAGS="" \
  AS="" AR="ar" \
  STLPORT_LIBS="" \
  /home/dev-rust/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.61.6/mozjs/js/src/configure --disable-jemalloc --disable-js-shell --disable-tests --build-backends=RecursiveMake --disable-shared-js || (cat config.log && exit 1) ; \
fi
cd /home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out && make -f Makefile
make[1]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make recurse_pre-export
make[3]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/_virtualenv/bin/python -m mozbuild.action.process_install_manifest --track install_dist_include.track dist/include _build_manifests/install/dist_include
/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/_virtualenv/bin/python -m mozbuild.action.process_install_manifest --track install_dist_public.track dist/public _build_manifests/install/dist_public
/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/_virtualenv/bin/python -m mozbuild.action.process_install_manifest --track install_dist_private.track dist/private _build_manifests/install/dist_private
/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/_virtualenv/bin/python -m mozbuild.action.process_install_manifest --track install__tests.track _tests _build_manifests/install/_tests
Elapsed: 0.00s; From dist/public: Kept 0 existing; Added/updated 0; Removed 0 files and 0 directories.
/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/_virtualenv/bin/python -m mozbuild.action.process_install_manifest --track install_dist_bin.track dist/bin _build_manifests/install/dist_bin
Elapsed: 0.00s; From dist/private: Kept 0 existing; Added/updated 0; Removed 0 files and 0 directories.
Elapsed: 0.06s; From dist/include: Kept 344 existing; Added/updated 0; Removed 0 files and 0 directories.
Elapsed: 0.00s; From dist/bin: Kept 1 existing; Added/updated 0; Removed 0 files and 0 directories.
Elapsed: 0.09s; From _tests: Kept 312 existing; Added/updated 0; Removed 0 files and 0 directories.
make[3]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make recurse_export
make[3]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Nothing to be done for 'host'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Nothing to be done for 'export'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/build'
make[4]: Nothing to be done for 'export'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/build'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build'
make[4]: Nothing to be done for 'export'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src'
make[4]: Nothing to be done for 'export'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build'
make[4]: Nothing to be done for 'export'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build'
make[3]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make recurse_compile
make[3]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/editline'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/editline'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mfbt'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/nspr'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/nspr'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mfbt'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu/data'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu/data'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/modules/fdlibm/src'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/modules/fdlibm/src'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/zlib'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/zlib'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/build'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/build'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/mozalloc'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/mozalloc'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/misc'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/misc'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Nothing to be done for 'host'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu/common'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu/common'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu/i18n'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu/i18n'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config/external/icu'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build'
make[4]: Nothing to be done for 'target'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build'
make[3]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make recurse_misc
make[3]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[3]: Nothing to be done for 'recurse_misc'.
make[3]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make recurse_libs
make[3]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Nothing to be done for 'libs'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/config'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src'
make[4]: Nothing to be done for 'libs'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build'
make[4]: Nothing to be done for 'libs'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/build'
make[4]: Nothing to be done for 'libs'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/memory/build'
make[4]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build'
make[4]: Nothing to be done for 'libs'.
make[4]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build'
make[3]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make recurse_tools
make[3]: Entering directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[3]: Nothing to be done for 'recurse_tools'.
make[3]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[2]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
make[1]: Leaving directory '/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out'
cargo:rustc-link-search=native=/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/build
cargo:rustc-link-lib=static=js_static
cargo:rustc-link-search=native=/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/mozglue/build
cargo:rustc-link-lib=static=mozglue
cargo:rustc-link-lib=stdc++
cargo:outdir=/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out
TARGET = Some("x86_64-unknown-linux-gnu")
OPT_LEVEL = Some("3")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
DEBUG = Some("false")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
running: "c++" "-O3" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-I" "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/dist/include" "-I" "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src" "-Wall" "-Wextra" "-include" "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/js-confdefs.h" "-DRUST_BINDGEN" "-DSTATIC_JS_API" "-std=gnu++14" "-fno-sized-deallocation" "-Wno-unused-parameter" "-Wno-invalid-offsetof" "-o" "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/src/jsglue.o" "-c" "src/jsglue.cpp"
exit code: 0
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
AR_x86_64-unknown-linux-gnu = None
AR_x86_64_unknown_linux_gnu = None
HOST_AR = None
AR = None
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
running: "ar" "crs" "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/libjsglue.a" "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/src/jsglue.o"
exit code: 0
TARGET = Some("x86_64-unknown-linux-gnu")
cargo:rustc-link-lib=static=jsglue
cargo:rustc-link-search=native=/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXXSTDLIB_x86_64-unknown-linux-gnu = None
CXXSTDLIB_x86_64_unknown_linux_gnu = None
HOST_CXXSTDLIB = None
CXXSTDLIB = None
TARGET = Some("x86_64-unknown-linux-gnu")
cargo:rustc-link-lib=stdc++
Generting bindings ["./src/jsglue.hpp", "--rust-target", "1.25", "--rustified-enum", ".*", "--no-derive-default", "--enable-cxx-namespaces", "--generate", "functions,types,vars", "--ignore-methods", "--", "-I", "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/dist/include", "-I", "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src", "-x", "c++", "-DRUST_BINDGEN", "-DSTATIC_JS_API", "-std=gnu++14", "-fno-sized-deallocation", "-Wno-unused-parameter", "-Wno-invalid-offsetof", "-include", "/home/dev-rust/servo/target/release/build/mozjs_sys-052ae43af23c49f8/out/js/src/js-confdefs.h", "--rustfmt-configuration-file", "rustfmt.toml"] Debian clang version 3.5.2-5 (tags/RELEASE_352/final) (based on LLVM 3.5.2).

--- stderr
backend.mk:2160: warning: overriding recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:1278: warning: ignoring old recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:2160: warning: overriding recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:1278: warning: ignoring old recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:2160: warning: overriding recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:1278: warning: ignoring old recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:2160: warning: overriding recipe for target '../dist/system_wrappers/pixman.h'
backend.mk:1278: warning: ignoring old recipe for target '../dist/system_wrappers/pixman.h'
error: unknown argument: '-fno-sized-deallocation', err: true
thread 'main' panicked at 'Should generate JSAPI bindings OK: ()', src/libcore/result.rs:999:5
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
             at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:39
   1: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:70
   2: std::panicking::default_hook::{{closure}}
             at src/libstd/sys_common/backtrace.rs:58
             at src/libstd/panicking.rs:200
   3: std::panicking::default_hook
             at src/libstd/panicking.rs:215
   4: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:478
   5: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:385
   6: rust_begin_unwind
             at src/libstd/panicking.rs:312
   7: core::panicking::panic_fmt
             at src/libcore/panicking.rs:85
   8: core::result::unwrap_failed
   9: build_script_build::main
  10: std::rt::lang_start::{{closure}}
  11: std::panicking::try::do_call
             at src/libstd/rt.rs:49
             at src/libstd/panicking.rs:297
  12: __rust_maybe_catch_panic
             at src/libpanic_unwind/lib.rs:92
  13: std::rt::lang_start_internal
             at src/libstd/panicking.rs:276
             at src/libstd/panic.rs:388
             at src/libstd/rt.rs:48
  14: main
  15: __libc_start_main
  16: _start

Build FAILED in 0:00:05

It looks like the build uses "Debian clang version 3.5.2-5", which I don't understand because clang 3.8 is installed (it's the default on Debian 9) while clang 3.5 isn't. And clang 3.8 would support -fno-sized-deallocation.

asajeffrey commented 5 years ago

If you set LIBCLANG_PATH to the location of a clang library (version 3.9 or later), does this solve the problem?

progval commented 5 years ago

It does, thanks!

asajeffrey commented 5 years ago

Glad to hear it!