[FFmpeg-cvslog] configure: Simplify restrict keyword handling
Diego Biurrun
git at videolan.org
Mon Feb 12 04:15:42 EET 2018
ffmpeg | branch: master | Diego Biurrun <diego at biurrun.de> | Fri Nov 10 15:40:30 2017 +0100| [38434a9ff5b9a1a048f32c1c7e2a9519cf12f8ba] | committer: Diego Biurrun
configure: Simplify restrict keyword handling
Skip a variable indirection and only redefine restrict if necessary.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=38434a9ff5b9a1a048f32c1c7e2a9519cf12f8ba
---
configure | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/configure b/configure
index 9f84f88014..b4c6320f7a 100755
--- a/configure
+++ b/configure
@@ -4144,9 +4144,8 @@ extern_prefix=${sym%%ff_extern*}
! disabled inline_asm && check_inline_asm inline_asm '"" ::'
-_restrict=
-for restrict_keyword in restrict __restrict__ __restrict; do
- check_cc <<EOF && _restrict=$restrict_keyword && break
+for restrict_keyword in restrict __restrict__ __restrict ""; do
+ check_cc <<EOF && break
void foo(char * $restrict_keyword p);
EOF
done
@@ -4974,9 +4973,9 @@ elif enabled_any msvc icl; then
# MSVC 2013 and newer can handle it fine.
# If this declspec fails, force including stdlib.h before the restrict redefinition
# happens in config.h.
- if [ $_restrict != restrict ]; then
+ if [ $restrict_keyword != restrict ]; then
check_cc <<EOF || add_cflags -FIstdlib.h
-__declspec($_restrict) void* foo(int);
+__declspec($restrict_keyword) void *foo(int);
EOF
fi
fi
@@ -5323,12 +5322,14 @@ cat > $TMPH <<EOF
#define LIBAV_LICENSE "$(c_escape $license)"
#define AVCONV_DATADIR "$(eval c_escape $datadir)"
#define CC_IDENT "$(c_escape ${cc_ident:-Unknown compiler})"
-#define restrict $_restrict
#define EXTERN_PREFIX "${extern_prefix}"
#define EXTERN_ASM ${extern_prefix}
#define SLIBSUF "$SLIBSUF"
EOF
+test $restrict_keyword != restrict &&
+ echo "#define restrict $restrict_keyword" >> $TMPH
+
test -n "$malloc_prefix" &&
echo "#define MALLOC_PREFIX $malloc_prefix" >>$TMPH
More information about the ffmpeg-cvslog
mailing list