|
@@ -75,7 +75,6 @@ fi
|
|
|
TMPB="qemu-conf"
|
|
|
TMPC="${TMPDIR1}/${TMPB}.c"
|
|
|
TMPO="${TMPDIR1}/${TMPB}.o"
|
|
|
-TMPCXX="${TMPDIR1}/${TMPB}.cxx"
|
|
|
TMPM="${TMPDIR1}/${TMPB}.m"
|
|
|
TMPE="${TMPDIR1}/${TMPB}.exe"
|
|
|
|
|
@@ -158,10 +157,6 @@ do_cc() {
|
|
|
do_compiler_werror "$cc" $CPU_CFLAGS "$@"
|
|
|
}
|
|
|
|
|
|
-do_cxx() {
|
|
|
- do_compiler_werror "$cxx" $CPU_CFLAGS "$@"
|
|
|
-}
|
|
|
-
|
|
|
do_objc() {
|
|
|
do_compiler_werror "$objcc" $CPU_CFLAGS "$@"
|
|
|
}
|
|
@@ -171,24 +166,6 @@ add_to() {
|
|
|
eval $1=\${$1:+\"\$$1 \"}\$2
|
|
|
}
|
|
|
|
|
|
-update_cxxflags() {
|
|
|
- # Set QEMU_CXXFLAGS from QEMU_CFLAGS by filtering out those
|
|
|
- # options which some versions of GCC's C++ compiler complain about
|
|
|
- # because they only make sense for C programs.
|
|
|
- QEMU_CXXFLAGS="-D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS"
|
|
|
- CONFIGURE_CXXFLAGS=$(echo "$CONFIGURE_CFLAGS" | sed s/-std=gnu11/-std=gnu++11/)
|
|
|
- for arg in $QEMU_CFLAGS; do
|
|
|
- case $arg in
|
|
|
- -Wstrict-prototypes|-Wmissing-prototypes|-Wnested-externs|\
|
|
|
- -Wold-style-declaration|-Wold-style-definition|-Wredundant-decls)
|
|
|
- ;;
|
|
|
- *)
|
|
|
- QEMU_CXXFLAGS=${QEMU_CXXFLAGS:+$QEMU_CXXFLAGS }$arg
|
|
|
- ;;
|
|
|
- esac
|
|
|
- done
|
|
|
-}
|
|
|
-
|
|
|
compile_object() {
|
|
|
local_cflags="$1"
|
|
|
do_cc $CFLAGS $EXTRA_CFLAGS $CONFIGURE_CFLAGS $QEMU_CFLAGS $local_cflags -c -o $TMPO $TMPC
|
|
@@ -2362,38 +2339,6 @@ fi
|
|
|
#######################################
|
|
|
# generate config-host.mak
|
|
|
|
|
|
-# Check that the C++ compiler exists and works with the C compiler.
|
|
|
-# All the QEMU_CXXFLAGS are based on QEMU_CFLAGS. Keep this at the end to don't miss any other that could be added.
|
|
|
-if has $cxx; then
|
|
|
- cat > $TMPC <<EOF
|
|
|
-int c_function(void);
|
|
|
-int main(void) { return c_function(); }
|
|
|
-EOF
|
|
|
-
|
|
|
- compile_object
|
|
|
-
|
|
|
- cat > $TMPCXX <<EOF
|
|
|
-extern "C" {
|
|
|
- int c_function(void);
|
|
|
-}
|
|
|
-int c_function(void) { return 42; }
|
|
|
-EOF
|
|
|
-
|
|
|
- update_cxxflags
|
|
|
-
|
|
|
- if do_cxx $CXXFLAGS $EXTRA_CXXFLAGS $CONFIGURE_CXXFLAGS $QEMU_CXXFLAGS -o $TMPE $TMPCXX $TMPO $QEMU_LDFLAGS; then
|
|
|
- # C++ compiler $cxx works ok with C compiler $cc
|
|
|
- :
|
|
|
- else
|
|
|
- echo "C++ compiler $cxx does not work with C compiler $cc"
|
|
|
- echo "Disabling C++ specific optional code"
|
|
|
- cxx=
|
|
|
- fi
|
|
|
-else
|
|
|
- echo "No C++ compiler available; disabling C++ specific optional code"
|
|
|
- cxx=
|
|
|
-fi
|
|
|
-
|
|
|
if ! (GIT="$git" "$source_path/scripts/git-submodule.sh" "$git_submodules_action" "$git_submodules"); then
|
|
|
exit 1
|
|
|
fi
|
|
@@ -2474,7 +2419,6 @@ echo "MESON=$meson" >> $config_host_mak
|
|
|
echo "NINJA=$ninja" >> $config_host_mak
|
|
|
echo "CC=$cc" >> $config_host_mak
|
|
|
echo "QEMU_CFLAGS=$QEMU_CFLAGS" >> $config_host_mak
|
|
|
-echo "QEMU_CXXFLAGS=$QEMU_CXXFLAGS" >> $config_host_mak
|
|
|
echo "QEMU_OBJCFLAGS=$QEMU_OBJCFLAGS" >> $config_host_mak
|
|
|
echo "GLIB_CFLAGS=$glib_cflags" >> $config_host_mak
|
|
|
echo "GLIB_LIBS=$glib_libs" >> $config_host_mak
|
|
@@ -2665,7 +2609,6 @@ if test "$skip_meson" = no; then
|
|
|
echo "${a}-softmmu = '$c'" >> $cross
|
|
|
done
|
|
|
|
|
|
- test -z "$cxx" && echo "link_language = 'c'" >> $cross
|
|
|
echo "[built-in options]" >> $cross
|
|
|
echo "c_args = [$(meson_quote $CFLAGS $EXTRA_CFLAGS)]" >> $cross
|
|
|
echo "cpp_args = [$(meson_quote $CXXFLAGS $EXTRA_CXXFLAGS)]" >> $cross
|