From e7ea5e3d8d60b92467b653b91daf47146b49b53f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5ns=20Rullg=C3=A5rd?= <mans@mansr.com> Date: Fri, 17 Jul 2009 08:21:43 +0000 Subject: [PATCH] Check for __attribute__((packed)) support Not all compilers claiming to be gcc support this attribute. Originally committed as revision 19453 to svn://svn.ffmpeg.org/ffmpeg/trunk --- configure | 5 +++++ libavutil/intreadwrite.h | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 435f9f42e19..9a614a5abea 100755 --- a/configure +++ b/configure @@ -899,6 +899,7 @@ HAVE_LIST=" alsa_asoundlib_h altivec_h arpa_inet_h + attribute_packed bigendian bswap closesocket @@ -2165,6 +2166,10 @@ void foo(char * $restrict_keyword p); EOF done +check_cc <<EOF && enable attribute_packed +struct { int x; } __attribute__((packed)) x; +EOF + ########################################## # SDL check diff --git a/libavutil/intreadwrite.h b/libavutil/intreadwrite.h index ee597937b9b..d46595eea7c 100644 --- a/libavutil/intreadwrite.h +++ b/libavutil/intreadwrite.h @@ -42,7 +42,7 @@ * by per-arch headers. */ -#if defined(__GNUC__) +#if HAVE_ATTRIBUTE_PACKED struct unaligned_64 { uint64_t l; } __attribute__((packed)); struct unaligned_32 { uint32_t l; } __attribute__((packed)); -- GitLab