libmatroska: properly support static-only build

This is similar to commit 9cef35b68f on
libebml, since libmatroska uses the same Makefile logic as libebml. It
makes sure BR2_PREFER_STATIC_LIB=y succeed by not building the shared
library in this case.

Fixes:

  http://autobuild.buildroot.org/results/12e/12e752330b30adb5078acd72a548cc172fa9ecb8/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Thomas Petazzoni 2014-09-06 16:10:27 +02:00 committed by Peter Korsgaard
parent 0b29df3f19
commit 3c11ced46a
1 changed files with 14 additions and 3 deletions

View File

@ -12,16 +12,27 @@ LIBMATROSKA_LICENSE = LGPLv2.1+
LIBMATROSKA_LICENSE_FILES = LICENSE.LGPL
LIBMATROSKA_DEPENDENCIES = libebml
ifeq ($(BR2_PREFER_STATIC_LIB),y)
LIBMATROSKA_MAKE_TARGETS = staticlib
LIBMATROSKA_MAKE_INSTALL_TARGETS = install_staticlib install_headers
else
LIBMATROSKA_MAKE_TARGETS = staticlib sharedlib
LIBMATROSKA_MAKE_INSTALL_TARGETS = install_staticlib install_sharedlib install_headers
endif
define LIBMATROSKA_BUILD_CMDS
$(MAKE) -C $(@D)/make/linux CROSS="$(CCACHE) $(TARGET_CROSS)"
$(MAKE) -C $(@D)/make/linux CROSS="$(CCACHE) $(TARGET_CROSS)" \
$(LIBMATROSKA_MAKE_TARGETS)
endef
define LIBMATROSKA_INSTALL_STAGING_CMDS
$(MAKE) -C $(@D)/make/linux prefix=$(STAGING_DIR)/usr install
$(MAKE) -C $(@D)/make/linux prefix=$(STAGING_DIR)/usr \
$(LIBMATROSKA_MAKE_INSTALL_TARGETS)
endef
define LIBMATROSKA_INSTALL_TARGET_CMDS
$(MAKE) -C $(@D)/make/linux prefix=$(TARGET_DIR)/usr install
$(MAKE) -C $(@D)/make/linux prefix=$(TARGET_DIR)/usr \
$(LIBMATROSKA_MAKE_INSTALL_TARGETS)
endef
$(eval $(generic-package))