]> git.sesse.net Git - vlc/blob - contrib/src/live555/rules.mak
Update to 2012.09.13 version of live555.
[vlc] / contrib / src / live555 / rules.mak
1 # live555
2
3 #LIVEDOTCOM_URL := http://live555.com/liveMedia/public/live555-latest.tar.gz
4 LIVE555_FILE := live.2012.09.13.tar.gz
5 LIVEDOTCOM_URL := http://download.videolan.org/pub/contrib/live555/$(LIVE555_FILE)
6
7 PKGS += live555
8
9 $(TARBALLS)/$(LIVE555_FILE):
10         $(call download,$(LIVEDOTCOM_URL))
11
12 .sum-live555: $(LIVE555_FILE)
13
14 LIVE_TARGET = $(error live555 target not defined!)
15 ifdef HAVE_LINUX
16 LIVE_TARGET := linux
17 endif
18 ifdef HAVE_WIN32
19 LIVE_TARGET := mingw
20 endif
21 ifdef HAVE_WINCE
22 LIVE_TARGET := mingw
23 endif
24 ifdef HAVE_DARWIN_OS
25 LIVE_TARGET := macosx
26 else
27 ifdef HAVE_BSD
28 LIVE_TARGET := freebsd
29 endif
30 endif
31
32 LIVE_EXTRA_CFLAGS := $(EXTRA_CFLAGS) -fexceptions
33
34 live555: $(LIVE555_FILE) .sum-live555
35         rm -Rf live
36         $(UNPACK)
37         chmod -R u+w live
38 ifdef HAVE_WINCE
39         cd live && sed -e 's/-lws2_32/-lws2/g' -i.orig config.mingw
40 endif
41         cd live && sed -e 's%cc%$(CC)%' -e 's%c++%$(CXX)%' -e 's%LIBRARY_LINK =.*ar%LIBRARY_LINK = $(AR)%' -i.orig config.$(LIVE_TARGET)
42         cd live && sed -i.orig -e s/"libtool -s -o"/"ar cr"/g config.macosx*
43         cd live && sed -i.orig \
44                 -e 's%$(CXX)%$(CXX)\ $(EXTRA_LDFLAGS)%' config.macosx
45         cd live && sed -i.orig \
46                 -e 's%^\(COMPILE_OPTS.*\)$$%\1 '"$(LIVE_EXTRA_CFLAGS)%" config.*
47         cd live && sed -e 's%-D_FILE_OFFSET_BITS=64%-D_FILE_OFFSET_BITS=64\ -fPIC\ -DPIC%' -i.orig config.linux
48 ifdef HAVE_ANDROID
49         cd live && sed -e 's%-DPIC%-DPIC -DNO_SSTREAM=1 -DLOCALE_NOT_USED -I$(ANDROID_NDK)/platforms/android-9/arch-$(PLATFORM_SHORT_ARCH)/usr/include%' -i.orig config.linux
50         patch -p0 < $(SRC)/live555/android.patch
51 endif
52         mv live $@
53         touch $@
54
55 .live555: live555
56         cd $< && ./genMakefiles $(LIVE_TARGET)
57         cd $< && $(MAKE) $(HOSTVARS) -C groupsock \
58                         && $(MAKE) $(HOSTVARS) -C liveMedia \
59                         && $(MAKE) $(HOSTVARS) -C UsageEnvironment \
60                         && $(MAKE) $(HOSTVARS) -C BasicUsageEnvironment
61         mkdir -p -- "$(PREFIX)/lib" "$(PREFIX)/include"
62         cp \
63                 $</groupsock/libgroupsock.a \
64                 $</liveMedia/libliveMedia.a \
65                 $</UsageEnvironment/libUsageEnvironment.a \
66                 $</BasicUsageEnvironment/libBasicUsageEnvironment.a \
67                 "$(PREFIX)/lib/"
68         cp \
69                 $</groupsock/include/*.hh \
70                 $</groupsock/include/*.h \
71                 $</liveMedia/include/*.hh \
72                 $</UsageEnvironment/include/*.hh \
73                 $</BasicUsageEnvironment/include/*.hh \
74                 "$(PREFIX)/include/"
75         touch $@