[FFmpeg-cvslog] configure: add strip flags checks

Vittorio Giovara git at videolan.org
Thu Nov 28 21:59:55 CET 2013


ffmpeg | branch: master | Vittorio Giovara <vittorio.giovara at gmail.com> | Mon Nov 25 08:46:14 2013 +0000| [0673ede985a6560e7efb86dab1c58fb7f95ce587] | committer: Vittorio Giovara

configure: add strip flags checks

This will check if -wN '..@*' is available and fall back on -x if not;
when none are available, do not run strip at all to prevent removing
functions that might be actually needed.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0673ede985a6560e7efb86dab1c58fb7f95ce587
---

 configure   |   23 +++++++++++++++++++++++
 library.mak |    2 +-
 2 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 6dcfd1b..6135e8a 100755
--- a/configure
+++ b/configure
@@ -659,6 +659,10 @@ add_ldflags(){
     append LDFLAGS $($ldflags_filter "$@")
 }
 
+add_stripflags(){
+    append STRIPFLAGS "$@"
+}
+
 add_extralibs(){
     prepend extralibs $($ldflags_filter "$@")
 }
@@ -804,6 +808,20 @@ check_ldflags(){
     test_ldflags "$@" && add_ldflags "$@"
 }
 
+test_stripflags(){
+    log test_stripflags "$@"
+    # call check_cc to get a fresh TMPO
+    check_cc <<EOF
+int main(void) { return 0; }
+EOF
+    check_cmd $strip $STRIPFLAGS "$@" $TMPO
+}
+
+check_stripflags(){
+    log check_stripflags "$@"
+    test_stripflags "$@" && add_stripflags "$@"
+}
+
 check_header(){
     log check_header "$@"
     header=$1
@@ -3969,6 +3987,10 @@ check_ldflags -Wl,--warn-common
 check_ldflags -Wl,-rpath-link=libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil:libavresample
 test_ldflags -Wl,-Bsymbolic && append SHFLAGS -Wl,-Bsymbolic
 
+# add some strip flags
+# -wN '..@*' is more selective than -x, but not available everywhere.
+check_stripflags -wN \'..@*\' || check_stripflags -x || strip='true'
+
 enabled xmm_clobber_test &&
     check_ldflags -Wl,--wrap,avcodec_open2              \
                   -Wl,--wrap,avcodec_decode_audio4      \
@@ -4245,6 +4267,7 @@ LD_PATH=$LD_PATH
 DLLTOOL=$dlltool
 LDFLAGS=$LDFLAGS
 SHFLAGS=$(echo $($ldflags_filter $SHFLAGS))
+STRIPFLAGS=$STRIPFLAGS
 YASMFLAGS=$YASMFLAGS
 BUILDSUF=$build_suffix
 FULLNAME=$FULLNAME
diff --git a/library.mak b/library.mak
index 7292c8a..3876fe3 100644
--- a/library.mak
+++ b/library.mak
@@ -25,7 +25,7 @@ $(SUBDIR)%-test.i: $(SUBDIR)%.c
 $(SUBDIR)x86/%.o: $(SUBDIR)x86/%.asm
 	$(DEPYASM) $(YASMFLAGS) -I $(<D)/ -M -o $@ $< > $(@:.o=.d)
 	$(YASM) $(YASMFLAGS) -I $(<D)/ -o $@ $<
-	-$(STRIP) -wN '..@*' $@
+	-$(STRIP) $(STRIPFLAGS) $@
 
 LIBOBJS := $(OBJS) $(SUBDIR)%.h.o $(TESTOBJS)
 $(LIBOBJS) $(LIBOBJS:.o=.i):   CPPFLAGS += -DHAVE_AV_CONFIG_H



More information about the ffmpeg-cvslog mailing list