mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-09 13:29:59 -05:00
Make pulse compile with clang
This fixes the checking of supported compiler flags and the following error message for svolume_mmx:
pulsecore/svolume_mmx.c:157:76: error: invalid use of a cast in a inline asm context requiring an l-value:
remove the cast or build with -fheinous-gnu-extensions
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" ((pa_reg_x86)channel), "=&r" (temp)
~~~~~~~~~~~~^~~~~~~
This commit is contained in:
parent
684b89c639
commit
1afd233630
2 changed files with 8 additions and 2 deletions
|
|
@ -102,7 +102,13 @@ if test "x$M4" = xno ; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl Compiler flags
|
dnl Compiler flags
|
||||||
|
|
||||||
|
# Some compilers (e.g. clang) default to a warning on an unkown command line option.
|
||||||
|
# Change that temporarily to an error, for the CC_CHECK_CFLAGS_APPEND macro to work.
|
||||||
|
save_CC="$CC"
|
||||||
|
CC="$CC -Werror"
|
||||||
CC_CHECK_CFLAGS_APPEND([-Wall -W -Wextra -pipe -Wno-long-long -Wvla -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wold-style-definition -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option])
|
CC_CHECK_CFLAGS_APPEND([-Wall -W -Wextra -pipe -Wno-long-long -Wvla -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wold-style-definition -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option])
|
||||||
|
CC="$save_CC"
|
||||||
|
|
||||||
dnl Linker flags.
|
dnl Linker flags.
|
||||||
dnl Check whether the linker supports the -version-script option.
|
dnl Check whether the linker supports the -version-script option.
|
||||||
|
|
|
||||||
|
|
@ -154,7 +154,7 @@ static void pa_volume_s16ne_mmx(int16_t *samples, int32_t *volumes, unsigned cha
|
||||||
"6: \n\t"
|
"6: \n\t"
|
||||||
" emms \n\t"
|
" emms \n\t"
|
||||||
|
|
||||||
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" ((pa_reg_x86)channel), "=&r" (temp)
|
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" (channel), "=&r" (temp)
|
||||||
: "rm" ((pa_reg_x86)channels)
|
: "rm" ((pa_reg_x86)channels)
|
||||||
: "cc"
|
: "cc"
|
||||||
);
|
);
|
||||||
|
|
@ -229,7 +229,7 @@ static void pa_volume_s16re_mmx(int16_t *samples, int32_t *volumes, unsigned cha
|
||||||
"6: \n\t"
|
"6: \n\t"
|
||||||
" emms \n\t"
|
" emms \n\t"
|
||||||
|
|
||||||
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" ((pa_reg_x86)channel), "=&r" (temp)
|
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" (channel), "=&r" (temp)
|
||||||
: "rm" ((pa_reg_x86)channels)
|
: "rm" ((pa_reg_x86)channels)
|
||||||
: "cc"
|
: "cc"
|
||||||
);
|
);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue