migrate anim_diff tool from C++ to C89

+ jenkins fixes for native config (library order)
+ add a missing -lm
+ replace log10 by log, just in case
+ partially reverted configure.ac to remove the C++ part

Change-Id: Iee099c544451b23c6cfaca53d5a95d2d332e066e
This commit is contained in:
Pascal Massimino
2015-11-06 07:47:03 +01:00
committed by James Zern
parent 024324273e
commit 96201e50ea
7 changed files with 405 additions and 366 deletions

View File

@ -62,19 +62,13 @@ EXTRA_FLAGS += -DWEBP_USE_THREAD
EXTRA_LIBS += -lpthread
# Extra flags to emulate C89 strictness with the full ANSI
EXTRA_C89_FLAGS = -Wextra -Wold-style-definition
EXTRA_C89_FLAGS += -Wmissing-prototypes
EXTRA_C89_FLAGS += -Wmissing-declarations
EXTRA_C89_FLAGS += -Wdeclaration-after-statement
EXTRA_C89_FLAGS += -Wshadow
EXTRA_C89_FLAGS += -Wformat-security -Wformat-nonliteral
# EXTRA_C89_FLAGS += -Wvla
EXTRA_CXX_FLAGS = -Wextra
EXTRA_CXX_FLAGS += -Wmissing-declarations
EXTRA_CXX_FLAGS += -Wshadow
EXTRA_CXX_FLAGS += -Wformat-security -Wformat-nonliteral
# EXTRA_CXX_FLAGS += -Wvla
EXTRA_FLAGS += -Wextra -Wold-style-definition
EXTRA_FLAGS += -Wmissing-prototypes
EXTRA_FLAGS += -Wmissing-declarations
EXTRA_FLAGS += -Wdeclaration-after-statement
EXTRA_FLAGS += -Wshadow
EXTRA_FLAGS += -Wformat-security -Wformat-nonliteral
# EXTRA_FLAGS += -Wvla
# SSE4.1-specific flags:
ifeq ($(HAVE_SSE41), 1)
@ -97,11 +91,8 @@ endif
AR = ar
ARFLAGS = r
CPPFLAGS = -Isrc/ -Wall
COMMONFLAGS = -O3 -DNDEBUG $(EXTRA_FLAGS)
CFLAGS = -O3 -DNDEBUG $(EXTRA_FLAGS)
CC = gcc
CFLAGS = $(COMMONFLAGS) $(EXTRA_C89_FLAGS)
CXX = g++
CXXFLAGS = $(COMMONFLAGS) $(EXTRA_CXX_FLAGS)
INSTALL = install
GROFF = /usr/bin/groff
COL = /usr/bin/col
@ -299,18 +290,18 @@ HDRS = \
OUT_LIBS = examples/libexample_util.a src/libwebpdecoder.a src/libwebp.a
EXTRA_LIB = src/libwebpextras.a
OUT_EXAMPLES = examples/cwebp examples/dwebp
EXTRA_EXAMPLES = examples/gif2webp examples/vwebp examples/webpmux
EXTRA_CXX_EXAMPLES = examples/anim_diff
EXTRA_EXAMPLES = examples/gif2webp examples/vwebp examples/webpmux \
examples/anim_diff
OUTPUT = $(OUT_LIBS) $(OUT_EXAMPLES)
ifeq ($(MAKECMDGOALS),clean)
OUTPUT += $(EXTRA_EXAMPLES) $(EXTRA_CXX_EXAMPLES)
OUTPUT += $(EXTRA_EXAMPLES)
OUTPUT += src/demux/libwebpdemux.a src/mux/libwebpmux.a $(EXTRA_LIB)
OUTPUT += examples/libgifdec.a examples/libanim_util.a
endif
ex: $(OUT_EXAMPLES)
all: ex $(EXTRA_EXAMPLES) $(EXTRA_CXX_EXAMPLES)
all: ex $(EXTRA_EXAMPLES)
extras: $(EXTRA_LIB)
$(EX_FORMAT_DEC_OBJS): %.o: %.h
@ -326,9 +317,6 @@ src/utils/bit_writer.o: src/utils/endian_inl.h
%.o: %.c $(HDRS)
$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
%.o: %.cc $(HDRS)
$(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $< -o $@
examples/libanim_util.a: $(ANIM_UTIL_OBJS)
examples/libexample_util.a: $(EX_UTIL_OBJS)
examples/libgifdec.a: $(GIFDEC_OBJS)
@ -349,7 +337,8 @@ examples/vwebp: examples/vwebp.o
examples/webpmux: examples/webpmux.o
examples/anim_diff: examples/libanim_util.a examples/libgifdec.a
examples/anim_diff: src/demux/libwebpdemux.a src/libwebp.a
examples/anim_diff: src/demux/libwebpdemux.a examples/libexample_util.a
examples/anim_diff: src/libwebp.a
examples/anim_diff: EXTRA_LIBS += $(GIF_LIBS)
examples/anim_diff: EXTRA_FLAGS += -DWEBP_HAVE_GIF
examples/cwebp: examples/libexample_util.a src/libwebp.a
@ -370,9 +359,6 @@ examples/webpmux: src/libwebpdecoder.a
$(OUT_EXAMPLES) $(EXTRA_EXAMPLES):
$(CC) -o $@ $^ $(LDFLAGS)
$(EXTRA_CXX_EXAMPLES):
$(CXX) -o $@ $^ $(LDFLAGS)
dist: DESTDIR := dist
dist: OUT_EXAMPLES += $(EXTRA_EXAMPLES)
dist: all