diff options
author | James Zern <jzern@google.com> | 2020-04-30 10:28:43 -0700 |
---|---|---|
committer | James Zern <jzern@google.com> | 2020-05-07 10:30:16 -0700 |
commit | 36187e607dce3ae49cf9a78f908614cfd4568081 (patch) | |
tree | 92b05fe16bac126d776c4defa32d79b53b32e10f /libs.mk | |
parent | 3d28ff98039134325cf689d8d08996fc8dabb225 (diff) | |
download | libvpx-36187e607dce3ae49cf9a78f908614cfd4568081.tar libvpx-36187e607dce3ae49cf9a78f908614cfd4568081.tar.gz libvpx-36187e607dce3ae49cf9a78f908614cfd4568081.tar.bz2 libvpx-36187e607dce3ae49cf9a78f908614cfd4568081.zip |
libs.mk,msvc: add missing vp9rc project
+ fix some test_rc_interface issues:
add a space before $^ in the vcproj rule to add sources to the target,
one between the -I's, and make the guid unique; fixes build / link
errors.
Change-Id: Ia9c99f6a4482a001d993affbc3b3903c2a4e366a
Diffstat (limited to 'libs.mk')
-rw-r--r-- | libs.mk | 72 |
1 files changed, 52 insertions, 20 deletions
@@ -91,6 +91,13 @@ ifeq ($(CONFIG_VP9_ENCODER),yes) INSTALL_MAPS += include/vpx/% $(SRC_PATH_BARE)/$(VP9_PREFIX)/% CODEC_DOC_SRCS += vpx/vp8.h vpx/vp8cx.h CODEC_DOC_SECTIONS += vp9 vp9_encoder + + RC_RTC_SRCS := $(addprefix $(VP9_PREFIX),$(call enabled,VP9_CX_SRCS)) + RC_RTC_SRCS += $(VP9_PREFIX)vp9cx.mk vpx/vp8.h vpx/vp8cx.h + RC_RTC_SRCS += $(VP9_PREFIX)ratectrl_rtc.cc + RC_RTC_SRCS += $(VP9_PREFIX)ratectrl_rtc.h + INSTALL-SRCS-$(CONFIG_CODEC_SRCS) += $(VP9_PREFIX)ratectrl_rtc.cc + INSTALL-SRCS-$(CONFIG_CODEC_SRCS) += $(VP9_PREFIX)ratectrl_rtc.h endif ifeq ($(CONFIG_VP9_DECODER),yes) @@ -115,6 +122,7 @@ endif ifeq ($(CONFIG_MSVS),yes) CODEC_LIB=$(if $(CONFIG_STATIC_MSVCRT),vpxmt,vpxmd) GTEST_LIB=$(if $(CONFIG_STATIC_MSVCRT),gtestmt,gtestmd) +RC_RTC_LIB=$(if $(CONFIG_STATIC_MSVCRT),vp9rcmt,vp9rcmd) # This variable uses deferred expansion intentionally, since the results of # $(wildcard) may change during the course of the Make. VS_PLATFORMS = $(foreach d,$(wildcard */Release/$(CODEC_LIB).lib),$(word 1,$(subst /, ,$(d)))) @@ -225,6 +233,36 @@ PROJECTS-yes += vpx.$(VCPROJ_SFX) vpx.$(VCPROJ_SFX): vpx_config.asm vpx.$(VCPROJ_SFX): $(RTCD) +vp9rc.$(VCPROJ_SFX): \ + VCPROJ_SRCS=$(filter-out $(addprefix %, $(ASM_INCLUDES)), $^) + +vp9rc.$(VCPROJ_SFX): $(RC_RTC_SRCS) + @echo " [CREATE] $@" + $(qexec)$(GEN_VCPROJ) \ + $(if $(CONFIG_SHARED),--dll,--lib) \ + --target=$(TOOLCHAIN) \ + $(if $(CONFIG_STATIC_MSVCRT),--static-crt) \ + --name=vp9rc \ + --proj-guid=C26FF952-9494-4838-9A3F-7F3D4F613385 \ + --ver=$(CONFIG_VS_VERSION) \ + --src-path-bare="$(SRC_PATH_BARE)" \ + --out=$@ $(CFLAGS) \ + $(filter $(SRC_PATH_BARE)/vp9/%.c, $(VCPROJ_SRCS)) \ + $(filter $(SRC_PATH_BARE)/vp9/%.cc, $(VCPROJ_SRCS)) \ + $(filter $(SRC_PATH_BARE)/vp9/%.h, $(VCPROJ_SRCS)) \ + $(filter $(SRC_PATH_BARE)/vpx/%, $(VCPROJ_SRCS)) \ + $(filter $(SRC_PATH_BARE)/vpx_dsp/%, $(VCPROJ_SRCS)) \ + $(filter-out $(addprefix $(SRC_PATH_BARE)/, \ + vp8/%.c vp8/%.h vp9/%.c vp9/%.cc vp9/%.h vpx/% \ + vpx_dsp/%), \ + $(VCPROJ_SRCS)) \ + --src-path-bare="$(SRC_PATH_BARE)" \ + +PROJECTS-yes += vp9rc.$(VCPROJ_SFX) + +vp9rc.$(VCPROJ_SFX): vpx_config.asm +vp9rc.$(VCPROJ_SFX): $(RTCD) + endif else LIBVPX_OBJS=$(call objs, $(filter-out $(ASM_INCLUDES), $(CODEC_SRCS))) @@ -330,6 +368,15 @@ endif INSTALL-LIBS-yes += $(LIBSUBDIR)/pkgconfig/vpx.pc INSTALL_MAPS += $(LIBSUBDIR)/pkgconfig/%.pc %.pc CLEAN-OBJS += vpx.pc + +ifeq ($(CONFIG_VP9_ENCODER),yes) + RC_RTC_OBJS=$(call objs,$(RC_RTC_SRCS)) + RC_RTC_OBJS=$(call objs,$(RC_RTC_SRCS)) + OBJS-yes += $(RC_RTC_OBJS) + LIBS-yes += $(BUILD_PFX)libvp9rc.a $(BUILD_PFX)libvp9rc_g.a + $(BUILD_PFX)libvp9rc_g.a: $(RC_RTC_OBJS) +endif + endif libvpx.ver: $(call enabled,CODEC_EXPORTS) @@ -493,21 +540,21 @@ endif # TEST_INTRA_PRED_SPEED ifneq ($(strip $(RC_INTERFACE_TEST_OBJS)),) PROJECTS-$(CONFIG_MSVS) += test_rc_interface.$(VCPROJ_SFX) -test_rc_interface.$(VCPROJ_SFX): \ - $(RC_INTERFACE_TEST_SRCS) vpx.$(VCPROJ_SFX) gtest.$(VCPROJ_SFX) +test_rc_interface.$(VCPROJ_SFX): $(RC_INTERFACE_TEST_SRCS) vpx.$(VCPROJ_SFX) \ + vp9rc.$(VCPROJ_SFX) gtest.$(VCPROJ_SFX) @echo " [CREATE] $@" $(qexec)$(GEN_VCPROJ) \ --exe \ --target=$(TOOLCHAIN) \ --name=test_rc_interface \ -D_VARIADIC_MAX=10 \ - --proj-guid=CD837F5F-52D8-4314-A370-895D614166A7 \ + --proj-guid=30458F88-1BC6-4689-B41C-50F3737AAB27 \ --ver=$(CONFIG_VS_VERSION) \ --src-path-bare="$(SRC_PATH_BARE)" \ $(if $(CONFIG_STATIC_MSVCRT),--static-crt) \ --out=$@ $(INTERNAL_CFLAGS) $(CFLAGS) \ - -I.-I"$(SRC_PATH_BARE)/third_party/googletest/src/include" \ - -L. -l$(CODEC_LIB) -l$(GTEST_LIB) -lvp9rc$^ + -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/include" \ + -L. -l$(CODEC_LIB) -l$(RC_RTC_LIB) -l$(GTEST_LIB) $^ endif # RC_INTERFACE_TEST endif else @@ -526,21 +573,6 @@ OBJS-yes += $(GTEST_OBJS) LIBS-yes += $(BUILD_PFX)libgtest.a $(BUILD_PFX)libgtest_g.a $(BUILD_PFX)libgtest_g.a: $(GTEST_OBJS) -ifeq ($(CONFIG_VP9_ENCODER),yes) - VP9_PREFIX=vp9/ - include $(SRC_PATH_BARE)/$(VP9_PREFIX)vp9cx.mk - RC_RTC_SRCS := $(addprefix $(VP9_PREFIX),$(call enabled,VP9_CX_SRCS)) - RC_RTC_SRCS += $(VP9_PREFIX)vp9cx.mk vpx/vp8.h vpx/vp8cx.h - RC_RTC_SRCS += $(VP9_PREFIX)ratectrl_rtc.cc - RC_RTC_SRCS += $(VP9_PREFIX)ratectrl_rtc.h - VP9_CX_SRCS-$(CONFIG_VP9_ENCODER) += ratectrl_rtc.cc - VP9_CX_SRCS-$(CONFIG_VP9_ENCODER) += ratectrl_rtc.h - RC_RTC_OBJS=$(call objs,$(RC_RTC_SRCS)) - OBJS-yes += $(RC_RTC_OBJS) - LIBS-yes += $(BUILD_PFX)libvp9rc.a $(BUILD_PFX)libvp9rc_g.a - $(BUILD_PFX)libvp9rc_g.a: $(RC_RTC_OBJS) -endif - LIBVPX_TEST_OBJS=$(sort $(call objs,$(LIBVPX_TEST_SRCS))) $(LIBVPX_TEST_OBJS) $(LIBVPX_TEST_OBJS:.o=.d): CXXFLAGS += $(GTEST_INCLUDES) OBJS-yes += $(LIBVPX_TEST_OBJS) |