summaryrefslogtreecommitdiff
path: root/third_party
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2016-06-28 14:32:08 +0000
committerNanang Izzuddin <nanang@teluu.com>2016-06-28 14:32:08 +0000
commitf2de888a88002f4812ce56c39aabf1fb773073d5 (patch)
treef83fc8015eccbf41cabf9f3c3c0b6fec27e10c57 /third_party
parent583f97ce8a39782f22741f03917d54a21178d090 (diff)
Re #1937: Added libyuv build configs for GNU build systems.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5361 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'third_party')
-rw-r--r--third_party/build/os-auto.mak.in8
-rw-r--r--third_party/build/yuv/Makefile339
2 files changed, 347 insertions, 0 deletions
diff --git a/third_party/build/os-auto.mak.in b/third_party/build/os-auto.mak.in
index b634ce43..ef261f65 100644
--- a/third_party/build/os-auto.mak.in
+++ b/third_party/build/os-auto.mak.in
@@ -40,3 +40,11 @@ endif
ifeq (@ac_pjmedia_resample@,libresample)
DIRS += resample
endif
+
+ifneq (@ac_no_yuv@,1)
+ifeq (@ac_external_yuv@,1)
+# External yuv
+else
+DIRS += yuv
+endif
+endif
diff --git a/third_party/build/yuv/Makefile b/third_party/build/yuv/Makefile
new file mode 100644
index 00000000..da263c55
--- /dev/null
+++ b/third_party/build/yuv/Makefile
@@ -0,0 +1,339 @@
+include ../../../build.mak
+include ../../../build/common.mak
+
+export LIBDIR := ../../lib
+
+RULES_MAK := $(PJDIR)/build/rules.mak
+
+export YUV_LIB := libyuv-$(TARGET_NAME)$(LIBEXT)
+
+ifeq ($(PJ_SHARED_LIBRARIES),)
+else
+export YUV_SONAME := libyuv.$(SHLIB_SUFFIX)
+export YUV_SHLIB := $(YUV_SONAME).$(PJ_VERSION_MAJOR)
+endif
+
+###############################################################################
+# Gather all flags.
+#
+export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
+ $(CFLAGS) $(CC_INC). $(CC_INC)../../yuv/include \
+ $(CC_INC)../../../pjlib/include
+export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
+ $(HOST_CXXFLAGS) $(CXXFLAGS)
+export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
+ $(LDFLAGS)
+
+export YUV_SRCDIR = ../../yuv/source
+export YUV_OBJS = \
+ compare.o \
+ compare_common.o \
+ compare_gcc.o \
+ compare_neon64.o \
+ compare_neon.o \
+ compare_win.o \
+ convert_argb.o \
+ convert.o \
+ convert_from_argb.o \
+ convert_from.o \
+ convert_jpeg.o \
+ convert_to_argb.o \
+ convert_to_i420.o \
+ cpu_id.o \
+ mjpeg_decoder.o \
+ mjpeg_validate.o \
+ planar_functions.o \
+ rotate_any.o \
+ rotate_argb.o \
+ rotate.o \
+ rotate_common.o \
+ rotate_gcc.o \
+ rotate_mips.o \
+ rotate_neon64.o \
+ rotate_neon.o \
+ rotate_win.o \
+ row_any.o \
+ row_common.o \
+ row_gcc.o \
+ row_mips.o \
+ row_neon64.o \
+ row_neon.o \
+ row_win.o \
+ scale_any.o \
+ scale_argb.o \
+ scale.o \
+ scale_common.o \
+ scale_gcc.o \
+ scale_mips.o \
+ scale_neon64.o \
+ scale_neon.o \
+ scale_win.o \
+ video_common.o
+
+export YUV_CFLAGS = -fomit-frame-pointer $(_CFLAGS)
+export YUV_CXXFLAGS = $(YUV_CFLAGS)
+
+
+export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
+###############################################################################
+# Main entry
+#
+# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
+#
+TARGETS := $(YUV_LIB) $(YUV_SONAME)
+
+all: $(TARGETS)
+
+doc:
+ cd .. && doxygen docs/doxygen.cfg
+
+dep: depend
+distclean: realclean
+
+.PHONY: all dep depend clean realclean distclean
+.PHONY: $(TARGETS)
+.PHONE: $(YUV_LIB) $(YUV_SONAME)
+
+libyuv: $(YUV_LIB)
+$(YUV_SONAME): $(YUV_LIB)
+$(YUV_LIB) $(YUV_SONAME):
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $(subst /,$(HOST_PSEP),$(LIBDIR)/$@)
+
+clean print_lib:
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+realclean:
+ $(subst @@,$(subst /,$(HOST_PSEP),.yuv-$(TARGET_NAME).depend),$(HOST_RMR))
+
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+depend:
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+
+include ../../../build.mak
+include ../../../build/common.mak
+
+export LIBDIR := ../../lib
+
+RULES_MAK := $(PJDIR)/build/rules.mak
+
+export YUV_LIB := libyuv-$(TARGET_NAME)$(LIBEXT)
+
+ifeq ($(PJ_SHARED_LIBRARIES),)
+else
+export YUV_SONAME := libyuv.$(SHLIB_SUFFIX)
+export YUV_SHLIB := $(YUV_SONAME).$(PJ_VERSION_MAJOR)
+endif
+
+###############################################################################
+# Gather all flags.
+#
+export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
+ $(CFLAGS) $(CC_INC). $(CC_INC)../../yuv/include \
+ $(CC_INC)../../../pjlib/include
+export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
+ $(HOST_CXXFLAGS) $(CXXFLAGS)
+export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
+ $(LDFLAGS)
+
+export YUV_SRCDIR = ../../yuv/source
+export YUV_OBJS = \
+ compare.o \
+ compare_common.o \
+ compare_gcc.o \
+ compare_neon64.o \
+ compare_neon.o \
+ compare_win.o \
+ convert_argb.o \
+ convert.o \
+ convert_from_argb.o \
+ convert_from.o \
+ convert_jpeg.o \
+ convert_to_argb.o \
+ convert_to_i420.o \
+ cpu_id.o \
+ mjpeg_decoder.o \
+ mjpeg_validate.o \
+ planar_functions.o \
+ rotate_any.o \
+ rotate_argb.o \
+ rotate.o \
+ rotate_common.o \
+ rotate_gcc.o \
+ rotate_mips.o \
+ rotate_neon64.o \
+ rotate_neon.o \
+ rotate_win.o \
+ row_any.o \
+ row_common.o \
+ row_gcc.o \
+ row_mips.o \
+ row_neon64.o \
+ row_neon.o \
+ row_win.o \
+ scale_any.o \
+ scale_argb.o \
+ scale.o \
+ scale_common.o \
+ scale_gcc.o \
+ scale_mips.o \
+ scale_neon64.o \
+ scale_neon.o \
+ scale_win.o \
+ video_common.o
+
+export YUV_CFLAGS = -fomit-frame-pointer $(_CFLAGS)
+export YUV_CXXFLAGS = $(YUV_CFLAGS)
+
+
+export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
+###############################################################################
+# Main entry
+#
+# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
+#
+TARGETS := $(YUV_LIB) $(YUV_SONAME)
+
+all: $(TARGETS)
+
+doc:
+ cd .. && doxygen docs/doxygen.cfg
+
+dep: depend
+distclean: realclean
+
+.PHONY: all dep depend clean realclean distclean
+.PHONY: $(TARGETS)
+.PHONE: $(YUV_LIB) $(YUV_SONAME)
+
+libyuv: $(YUV_LIB)
+$(YUV_SONAME): $(YUV_LIB)
+$(YUV_LIB) $(YUV_SONAME):
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $(subst /,$(HOST_PSEP),$(LIBDIR)/$@)
+
+clean print_lib:
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+realclean:
+ $(subst @@,$(subst /,$(HOST_PSEP),.yuv-$(TARGET_NAME).depend),$(HOST_RMR))
+
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+depend:
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+
+include ../../../build.mak
+include ../../../build/common.mak
+
+export LIBDIR := ../../lib
+
+RULES_MAK := $(PJDIR)/build/rules.mak
+
+export YUV_LIB := libyuv-$(TARGET_NAME)$(LIBEXT)
+
+ifeq ($(PJ_SHARED_LIBRARIES),)
+else
+export YUV_SONAME := libyuv.$(SHLIB_SUFFIX)
+export YUV_SHLIB := $(YUV_SONAME).$(PJ_VERSION_MAJOR)
+endif
+
+###############################################################################
+# Gather all flags.
+#
+export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
+ $(CFLAGS) $(CC_INC). $(CC_INC)../../yuv/include \
+ $(CC_INC)../../../pjlib/include
+export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
+ $(HOST_CXXFLAGS) $(CXXFLAGS)
+export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
+ $(LDFLAGS)
+
+export YUV_SRCDIR = ../../yuv/source
+export YUV_OBJS = \
+ compare.o \
+ compare_common.o \
+ compare_gcc.o \
+ compare_neon64.o \
+ compare_neon.o \
+ compare_win.o \
+ convert_argb.o \
+ convert.o \
+ convert_from_argb.o \
+ convert_from.o \
+ convert_jpeg.o \
+ convert_to_argb.o \
+ convert_to_i420.o \
+ cpu_id.o \
+ mjpeg_decoder.o \
+ mjpeg_validate.o \
+ planar_functions.o \
+ rotate_any.o \
+ rotate_argb.o \
+ rotate.o \
+ rotate_common.o \
+ rotate_gcc.o \
+ rotate_mips.o \
+ rotate_neon64.o \
+ rotate_neon.o \
+ rotate_win.o \
+ row_any.o \
+ row_common.o \
+ row_gcc.o \
+ row_mips.o \
+ row_neon64.o \
+ row_neon.o \
+ row_win.o \
+ scale_any.o \
+ scale_argb.o \
+ scale.o \
+ scale_common.o \
+ scale_gcc.o \
+ scale_mips.o \
+ scale_neon64.o \
+ scale_neon.o \
+ scale_win.o \
+ video_common.o
+
+export YUV_CFLAGS = -fomit-frame-pointer $(_CFLAGS)
+export YUV_CXXFLAGS = $(YUV_CFLAGS)
+
+
+export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
+###############################################################################
+# Main entry
+#
+# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
+#
+TARGETS := $(YUV_LIB) $(YUV_SONAME)
+
+all: $(TARGETS)
+
+doc:
+ cd .. && doxygen docs/doxygen.cfg
+
+dep: depend
+distclean: realclean
+
+.PHONY: all dep depend clean realclean distclean
+.PHONY: $(TARGETS)
+.PHONE: $(YUV_LIB) $(YUV_SONAME)
+
+libyuv: $(YUV_LIB)
+$(YUV_SONAME): $(YUV_LIB)
+$(YUV_LIB) $(YUV_SONAME):
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $(subst /,$(HOST_PSEP),$(LIBDIR)/$@)
+
+clean print_lib:
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+realclean:
+ $(subst @@,$(subst /,$(HOST_PSEP),.yuv-$(TARGET_NAME).depend),$(HOST_RMR))
+
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+depend:
+ $(MAKE) -f $(RULES_MAK) APP=YUV app=libyuv $@
+
+