From 6924590212b8c6f23de8dc377964d4084428f3d9 Mon Sep 17 00:00:00 2001 From: Frank Barchard Date: Wed, 20 Apr 2016 16:48:53 -0700 Subject: [PATCH] Add all library source files to linux.mk Allows arm and mips linux builds. Add psnr and cpuid utility targets. BUG=libyuv:586 TESTED=make -f linux.mk TBR=kjellander@chromium.org Review URL: https://codereview.chromium.org/1906653003 . --- README.chromium | 2 +- include/libyuv/version.h | 2 +- linux.mk | 93 ++++++++++++++++++++++++++-------------- 3 files changed, 63 insertions(+), 34 deletions(-) diff --git a/README.chromium b/README.chromium index 44749d7ce..db3f6ff51 100644 --- a/README.chromium +++ b/README.chromium @@ -1,6 +1,6 @@ Name: libyuv URL: http://code.google.com/p/libyuv/ -Version: 1585 +Version: 1586 License: BSD License File: LICENSE diff --git a/include/libyuv/version.h b/include/libyuv/version.h index d9a89fbef..f1e6ae2f2 100644 --- a/include/libyuv/version.h +++ b/include/libyuv/version.h @@ -11,6 +11,6 @@ #ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT #define INCLUDE_LIBYUV_VERSION_H_ -#define LIBYUV_VERSION 1585 +#define LIBYUV_VERSION 1586 #endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT diff --git a/linux.mk b/linux.mk index 563f8ef45..ee5a3a707 100644 --- a/linux.mk +++ b/linux.mk @@ -1,52 +1,81 @@ # This is a generic makefile for libyuv for gcc. # make -f linux.mk CXX=clang++ +CC?=gcc +CFLAGS?=-O2 -fomit-frame-pointer +CFLAGS+=-Iinclude/ + CXX?=g++ CXXFLAGS?=-O2 -fomit-frame-pointer CXXFLAGS+=-Iinclude/ LOCAL_OBJ_FILES := \ - source/compare.o \ - source/compare_common.o \ - source/compare_gcc.o \ - source/convert.o \ - source/convert_argb.o \ - source/convert_from.o \ - source/convert_from_argb.o \ - source/convert_to_argb.o \ - source/convert_to_i420.o \ - source/cpu_id.o \ - source/planar_functions.o \ - source/rotate.o \ - source/rotate_any.o \ - source/rotate_argb.o \ - source/rotate_common.o \ - source/rotate_gcc.o \ - source/rotate_mips.o \ - source/row_any.o \ - source/row_common.o \ - source/row_mips.o \ - source/row_gcc.o \ - source/scale.o \ - source/scale_any.o \ - source/scale_argb.o \ - source/scale_common.o \ - source/scale_gcc.o \ - source/scale_mips.o \ - source/video_common.o + source/compare.o \ + source/compare_common.o \ + source/compare_gcc.o \ + source/compare_neon64.o \ + source/compare_neon.o \ + source/compare_win.o \ + source/convert_argb.o \ + source/convert.o \ + source/convert_from_argb.o \ + source/convert_from.o \ + source/convert_jpeg.o \ + source/convert_to_argb.o \ + source/convert_to_i420.o \ + source/cpu_id.o \ + source/mjpeg_decoder.o \ + source/mjpeg_validate.o \ + source/planar_functions.o \ + source/rotate_any.o \ + source/rotate_argb.o \ + source/rotate.o \ + source/rotate_common.o \ + source/rotate_gcc.o \ + source/rotate_mips.o \ + source/rotate_neon64.o \ + source/rotate_neon.o \ + source/rotate_win.o \ + source/row_any.o \ + source/row_common.o \ + source/row_gcc.o \ + source/row_mips.o \ + source/row_neon64.o \ + source/row_neon.o \ + source/row_win.o \ + source/scale_any.o \ + source/scale_argb.o \ + source/scale.o \ + source/scale_common.o \ + source/scale_gcc.o \ + source/scale_mips.o \ + source/scale_neon64.o \ + source/scale_neon.o \ + source/scale_win.o \ + source/video_common.o .cc.o: $(CXX) -c $(CXXFLAGS) $*.cc -o $*.o -all: libyuv.a convert +.c.o: + $(CC) -c $(CFLAGS) $*.c -o $*.o + +all: libyuv.a convert cpuid psnr libyuv.a: $(LOCAL_OBJ_FILES) $(AR) $(ARFLAGS) $@ $(LOCAL_OBJ_FILES) -# A test utility that uses libyuv conversion. +# A C++ test utility that uses libyuv conversion. convert: util/convert.cc libyuv.a $(CXX) $(CXXFLAGS) -Iutil/ -o $@ util/convert.cc libyuv.a -clean: - /bin/rm -f source/*.o *.ii *.s libyuv.a convert +# A standalone test utility +psnr: util/psnr.cc + $(CXX) $(CXXFLAGS) -Iutil/ -o $@ util/psnr.cc util/psnr_main.cc util/ssim.cc +# A C test utility that uses libyuv conversion from C. +cpuid: util/cpuid.c libyuv.a + $(CC) $(CFLAGS) -o $@ util/cpuid.c libyuv.a + +clean: + /bin/rm -f source/*.o *.ii *.s libyuv.a convert cpuid psnr