fixup, borked fix
[vuplus_xbmc] / tools / depends / target / Makefile
1 include ../Makefile.include
2
3 ifneq ($(shell test -f $(PREFIX)/share/config.site && echo 1),1)
4   $(error Error: $(PREFIX)/share/config.site  is missing. Please reconfigure depends to generate it)
5 endif
6
7 DEPENDS = \
8         pcre expat gettext sqlite3 libgpg-error \
9         libgcrypt bzip2 liblzo2 libzip freetype2 fontconfig \
10         openssl gmp nettle gnutls libssh2 curl \
11         libjpeg-turbo tiff jasper libpng \
12         libogg libvorbis libflac libmad fribidi libmpeg2 \
13         libass libsamplerate \
14         libmodplug librtmp libxml2 yajl libmicrohttpd mysql libffi \
15         python26 afpfs-ng libshairplay \
16         libplist libcec libbluray boost tinyxml dummy-libxbmc \
17         libamplayer libssh taglib xbmc-pvr-addons libusb libnfs libmp3lame \
18         pythonmodule-pil
19
20 ifeq ($(ENABLE_GPLV3),1)
21   DEPENDS+=samba-gplv3 libcdio-gplv3
22 else
23   DEPENDS+=samba libcdio
24 endif
25
26 ifeq ($(OS),ios)
27   DEPENDS += Backrow
28   EXCLUDED_DEPENDS = libcec libcrystalhd libusb gmp nettle gnutls
29 endif
30
31 ifeq ($(OS),osx)
32   DEPENDS += libGLEW libsdl libcrystalhd
33   EXCLUDED_DEPENDS = libusb
34 endif
35
36 ifeq ($(OS),android)
37   DEPENDS += mdnsresponder android-sources-ics
38   EXCLUDED_DEPENDS = gmp nettle gnutls
39 endif
40
41 DEPENDS := $(filter-out $(EXCLUDED_DEPENDS),$(DEPENDS))
42
43 ZLIB=
44 ifneq ($(HAS_ZLIB),1)
45   DEPENDS += zlib
46   ZLIB = zlib
47 endif
48
49 ICONV=
50 ifeq ($(NEED_LIBICONV),1)
51   DEPENDS += libiconv
52   ICONV = libiconv
53 endif
54
55 ALSA_LIB=
56 LINUX_SYSTEM_LIBS=
57 ifeq ($(OS),linux)
58   DEPENDS += alsa-lib libsdl linux-system-libs
59   ALSA_LIB = alsa-lib
60   LINUX_SYSTEM_LIBS = linux-system-libs
61 endif
62
63 .PHONY: $(DEPENDS)
64
65 all: .installed-$(PLATFORM)
66
67 gettext: $(ICONV)
68 libgcrypt: libgpg-error
69 fontconfig: freetype2 expat $(ICONV)
70 libssh2: libgcrypt openssl
71 curl: openssl libssh2
72 tiff: libjpeg-turbo
73 jasper: libjpeg-turbo
74 libvorbis: libogg
75 libflac: libogg gettext
76 libass: fontconfig libpng freetype2 expat $(ICONV)
77 librtmp: openssl
78 libmicrohttpd: openssl libgpg-error libgcrypt
79 python26: expat gettext libxml2 sqlite3 openssl libffi
80 libcdio: $(ICONV)
81 afpfs-ng: libgcrypt $(ICONV)
82 libplist: libxml2 $(ZLIB)
83 libbluray: $(ICONV) libxml2
84 libssh: openssl
85 xbmc-pvr-addons: boost mysql
86 mysql: openssl
87 libzip: $(ZLIB)
88 libmp3lame: $(ICONV)
89 libpng: $(ZLIB)
90 openssl: $(ZLIB)
91 gnutls: nettle $(ZLIB)
92 nettle: gmp
93 pythonmodule-pil: $(ZLIB) libjpeg-turbo libpng freetype2 python26
94 libsdl: $(LINUX_SYSTEM_LIBS)
95
96 .installed-$(PLATFORM): $(DEPENDS)
97         touch $@
98         @echo "Dependencies built successfully."
99
100 $(DEPENDS):
101         $(MAKE) -C $@
102
103 clean:
104         for d in $(DEPENDS); do $(MAKE) -C $$d clean; done
105
106 # Debug target, this will DELETE all data in staging!
107 test-dependencies:
108         ( for d in $(DEPENDS); do \
109         rm -rf $(PREFIX); \
110         mkdir -p $(PREFIX)/include $(PREFIX)/share $(PREFIX)/bin; \
111         cp -f config.site Toolchain.cmake $(PREFIX)/share/; \
112         $(MAKE) distclean; \
113         $(MAKE) $$d; done ) && echo "$@ built successfully"
114
115
116 distclean::
117         for d in $(DEPENDS); do $(MAKE) -C $$d distclean; done
118
119 linux-system-libs:
120         [ -f $(PREFIX)/lib/pkgconfig/x11.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/x11.pc $(PREFIX)/lib/pkgconfig/x11.pc
121         [ -f $(PREFIX)/lib/pkgconfig/xproto.pc ] || ln -s /usr/share/pkgconfig/xproto.pc $(PREFIX)/lib/pkgconfig/xproto.pc
122         [ -f $(PREFIX)/lib/pkgconfig/kbproto.pc ] || ln -s /usr/share/pkgconfig/kbproto.pc $(PREFIX)/lib/pkgconfig/kbproto.pc
123         [ -f $(PREFIX)/lib/pkgconfig/xcb.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/xcb.pc $(PREFIX)/lib/pkgconfig/xcb.pc
124         [ -f $(PREFIX)/lib/pkgconfig/pthread-stubs.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/pthread-stubs.pc $(PREFIX)/lib/pkgconfig/pthread-stubs.pc
125         [ -f $(PREFIX)/lib/pkgconfig/xau.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/xau.pc $(PREFIX)/lib/pkgconfig/xau.pc
126         [ -f $(PREFIX)/lib/pkgconfig/xdmcp.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/xdmcp.pc $(PREFIX)/lib/pkgconfig/xdmcp.pc
127         [ -f $(PREFIX)/lib/pkgconfig/xext.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/xext.pc $(PREFIX)/lib/pkgconfig/xext.pc
128         [ -f $(PREFIX)/lib/pkgconfig/xextproto.pc ] || ln -s /usr/share/pkgconfig/xextproto.pc $(PREFIX)/lib/pkgconfig/xextproto.pc
129         [ -f $(PREFIX)/lib/pkgconfig/xt.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/xt.pc $(PREFIX)/lib/pkgconfig/xt.pc
130         [ -f $(PREFIX)/lib/pkgconfig/ice.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/ice.pc $(PREFIX)/lib/pkgconfig/ice.pc
131         [ -f $(PREFIX)/lib/pkgconfig/sm.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/sm.pc $(PREFIX)/lib/pkgconfig/sm.pc
132         [ -f $(PREFIX)/lib/pkgconfig/xmu.pc ] || ln -s /usr/lib/$(HOST)/pkgconfig/xmu.pc $(PREFIX)/lib/pkgconfig/xmu.pc