rules.mak 1.74 KB
Newer Older
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
1 2
# libvpx

3
VPX_VERSION := v1.3.0
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
4 5 6 7 8 9 10 11 12 13
VPX_URL := http://webm.googlecode.com/files/libvpx-$(VPX_VERSION).tar.bz2

$(TARBALLS)/libvpx-$(VPX_VERSION).tar.bz2:
	$(call download,$(VPX_URL))

.sum-vpx: libvpx-$(VPX_VERSION).tar.bz2

libvpx: libvpx-$(VPX_VERSION).tar.bz2 .sum-vpx
	$(UNPACK)
	$(APPLY) $(SRC)/vpx/libvpx-no-cross.patch
14
	$(APPLY) $(SRC)/vpx/libvpx-mac.patch
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
15 16 17 18 19 20 21 22 23 24 25
	$(MOVE)

DEPS_vpx =

ifdef HAVE_CROSS_COMPILE
VPX_CROSS := $(HOST)-
else
VPX_CROSS :=
endif

ifeq ($(ARCH),arm)
26
VPX_ARCH := armv7
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
27 28 29 30 31 32 33 34 35
else ifeq ($(ARCH),i386)
VPX_ARCH := x86
else ifeq ($(ARCH),mips)
VPX_ARCH := mips32
else ifeq ($(ARCH),ppc)
VPX_ARCH := ppc32
else ifeq ($(ARCH),ppc64)
VPX_ARCH := ppc64
else ifeq ($(ARCH),sparc)
Konstantin Pavlov's avatar
Konstantin Pavlov committed
36
VPX_ARCH := sparc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
37 38 39 40 41 42
else ifeq ($(ARCH),x86_64)
VPX_ARCH := x86_64
endif

ifdef HAVE_LINUX
VPX_OS := linux
43
else ifdef HAVE_DARWIN_OS
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
44 45 46
ifeq ($(ARCH),arm)
VPX_OS := darwin
else
47 48 49
ifeq ($(OSX_VERSION),10.5)
VPX_OS := darwin9
else
Rafaël Carré's avatar
Rafaël Carré committed
50
VPX_OS := darwin10
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
51
endif
52
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
53 54 55 56 57 58
else ifdef HAVE_SOLARIS
VPX_OS := solaris
else ifdef HAVE_WIN64 # must be before WIN32
VPX_OS := win64
else ifdef HAVE_WIN32
VPX_OS := win32
Rafaël Carré's avatar
Rafaël Carré committed
59 60
else ifdef HAVE_BSD
VPX_OS := linux
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
61 62 63 64 65 66 67 68 69
endif

VPX_TARGET := generic-gnu
ifdef VPX_ARCH
ifdef VPX_OS
VPX_TARGET := $(VPX_ARCH)-$(VPX_OS)-gcc
endif
endif

70 71 72 73 74
VPX_CONF := \
	--enable-runtime-cpu-detect \
	--disable-install-bins \
	--disable-install-docs \
	--disable-examples \
75
	--disable-unit-tests \
76 77 78 79
	--disable-vp8-decoder
ifndef HAVE_WIN32
VPX_CONF += --enable-pic
endif
80 81 82 83 84 85
ifdef HAVE_MACOSX
VPX_CONF += --sdk-path=$(MACOSX_SDK)
endif
ifdef HAVE_IOS
VPX_CONF += --sdk-path=$(SDKROOT)
endif
86

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
87 88
.vpx: libvpx
	cd $< && CROSS=$(VPX_CROSS) ./configure --target=$(VPX_TARGET) \
89
		$(VPX_CONF) --prefix=$(PREFIX)
Rafaël Carré's avatar
Rafaël Carré committed
90 91
	cd $< && $(MAKE)
	cd $< && ../../../contrib/src/pkg-static.sh vpx.pc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
92 93
	cd $< && $(MAKE) install
	touch $@