aboutsummaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2018-11-11 19:49:37 +0000
committerJan Beich <jbeich@FreeBSD.org>2018-11-11 19:49:37 +0000
commit27babe326410d978f299b73756e1f2b47f948bd8 (patch)
tree0fb759994a27eca601b728dc08751a12e9f2a9b9 /multimedia
parent8eef9aa030c1a9b006d5762e71238d1a327ca6b6 (diff)
downloadports-27babe326410d978f299b73756e1f2b47f948bd8.tar.gz
ports-27babe326410d978f299b73756e1f2b47f948bd8.zip
Notes
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/gstreamer1-libav/files/patch-gst-libs_ext_libav_configure40
1 files changed, 36 insertions, 4 deletions
diff --git a/multimedia/gstreamer1-libav/files/patch-gst-libs_ext_libav_configure b/multimedia/gstreamer1-libav/files/patch-gst-libs_ext_libav_configure
index 87525965c27c..c6f6a6a11d99 100644
--- a/multimedia/gstreamer1-libav/files/patch-gst-libs_ext_libav_configure
+++ b/multimedia/gstreamer1-libav/files/patch-gst-libs_ext_libav_configure
@@ -14,12 +14,44 @@
cpu="generic"
intrinsics="none"
-@@ -6492,6 +6487,9 @@ elif enabled llvm_gcc; then
- elif enabled clang; then
+@@ -6487,11 +6482,39 @@ elif enabled gcc; then
+ check_cflags -Wformat
+ check_cflags -fdiagnostics-color=auto
+ enabled extra_warnings || check_disable_warning -Wno-maybe-uninitialized
++ if enabled x86_32; then
++ case $target_os in
++ *bsd*)
++ # BSDs don't guarantee a 16 byte aligned stack, but we can
++ # request GCC to try to maintain 16 byte alignment throughout
++ # function calls. Library entry points that might call assembly
++ # functions align the stack. (The parameter means 2^4 bytes.)
++ check_cflags -mpreferred-stack-boundary=4
++ ;;
++ esac
++ fi
+ elif enabled llvm_gcc; then
check_cflags -mllvm -stack-alignment=16
- check_cflags -mstack-alignment=16
+ elif enabled clang; then
+- check_cflags -mllvm -stack-alignment=16
+- check_cflags -mstack-alignment=16
+ if enabled x86_32; then
-+ check_cflags -mstackrealign
++ # Clang doesn't support maintaining alignment without assuming the
++ # same alignment in every function. If 16 byte alignment would be
++ # enabled, one would also have to either add attribute_align_arg on
++ # every single entry point into the libraries or enable -mstackrealign
++ # (doing stack realignment in every single function).
++ case $target_os in
++ mingw32|win32|*bsd*)
++ disable aligned_stack
++ ;;
++ *)
++ check_cflags -mllvm -stack-alignment=16
++ check_cflags -mstack-alignment=16
++ ;;
++ esac
++ else
++ check_cflags -mllvm -stack-alignment=16
++ check_cflags -mstack-alignment=16
+ fi
check_cflags -Qunused-arguments
check_cflags -Werror=implicit-function-declaration