]> git.sesse.net Git - vlc/blob - extras/contrib/Makefile
Fix the contrib for files and dirs with spaces
[vlc] / extras / contrib / Makefile
1 # ***************************************************************************
2 # Makefile : Build vlc-contrib files
3 # ***************************************************************************
4 # Copyright (C) 2003-2009 the VideoLAN team
5 # $Id$
6
7 # Authors: Christophe Massiot <massiot@via.ecp.fr>
8 #          Derk-Jan Hartman <hartman at videolan dot org>
9 #          Christophe Mutricy <xtophe at videolan dot org>
10 #          Felix Paul Kühne <fkuehne at videolan dot org>
11 #
12 # This program is free software; you can redistribute it and/or modify
13 # it under the terms of the GNU General Public License as published by
14 # the Free Software Foundation; either version 2 of the License, or    
15 # (at your option) any later version.
16 #
17 # This program is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 # GNU General Public License for more details.
21 #
22 # You should have received a copy of the GNU General Public License
23 # along with this program; if not, write to the Free Software
24 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
25 # ***************************************************************************
26
27 include ./config.mak
28
29 BUILDDIRS = bin doc etc include info lib man sbin share tmp gecko-sdk
30
31 ifdef HAVE_DARWIN_OS
32 TARGETALL=using-bin
33 else
34 TARGETALL=using-src
35 endif
36
37 all: $(TARGETALL)
38
39 using-src:
40         $(MAKE) -C src
41
42 # shortcut
43 src: using-src
44
45 ifdef HAVE_DARWIN_OS
46
47 CONTRIBREV=15
48 contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2:
49         $(WGET) http://downloads.videolan.org/pub/videolan/testing/contrib/$@
50
51 using-bin: contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2
52         @if test -d tmp; then \
53                 echo "Move away ./tmp, it's in the way" ; \
54                 exit 1 ; \
55         fi
56         mkdir tmp
57         (cd tmp && tar jxvf ../$<)
58         ./change_prefix.sh tmp @@CONTRIB_PREFIX@@  $(PREFIX)
59         (cd tmp && find . -type d) | while read dir; do mkdir -p -- "$$dir"; done
60         (cd tmp && find . -not -type d) | while read i; do mv -f -- tmp/"$$i" "$$i"; done
61         rm -rf tmp
62 endif
63
64 clean-src:
65         rm -rf $(BUILDDIRS)
66         $(MAKE) -C src clean-src
67
68 clean-bin:
69         rm -rf $(BUILDDIRS)
70         $(MAKE) -C src clean-dots
71
72 clean:
73         $(MAKE) clean-src
74         rm -rf config.mak distro.mak
75
76 bin: using-bin
77
78 package-macosx:
79         @if test -d tmp; then \
80                 echo "Move away ./tmp, it's in the way" ; \
81                 exit 1 ; \
82         fi
83         mkdir tmp
84         tar cf - bin sbin include lib share/aclocal* share/autoconf* \
85                 share/automake* share/gettext* share/libtool* gecko-sdk Sparkle \
86                 | (cd tmp; tar xf -)
87         ./change_prefix.sh tmp $(PREFIX) @@CONTRIB_PREFIX@@
88         (cd tmp; tar cf - .) | bzip2 -c > contrib-macosx.tar.bz2
89         rm -rf tmp
90         rm -f contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2
91         mv contrib-macosx.tar.bz2 contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2
92
93 DISTDIR = usr/win32
94
95 package-win32:
96         @if test -d tmp; then \
97                 echo "Move away ./tmp, it's in the way" ; \
98                 exit 1 ; \
99         fi
100         mkdir -p tmp/$(DISTDIR)
101         tar cf - --dereference bin sbin include lib share/aclocal*\
102                 share/autoconf* share/qt4* \
103                 share/automake* share/gettext* gecko-sdk\
104                 | (cd tmp/$(DISTDIR); tar xpf -)
105 #kludge for live.com
106         mkdir -p tmp/$(DISTDIR)/live.com
107         for i in groupsock liveMedia UsageEnvironment BasicUsageEnvironment; do \
108                 mkdir -p  tmp/$(DISTDIR)/live.com/$$i/include; \
109                 cp -r src/live/$$i/include tmp/$(DISTDIR)/live.com/$$i; \
110                 cp src/live/$$i/lib$${i}.a  tmp/$(DISTDIR)/live.com/$$i; \
111         done;
112 # Change Prefix.
113         ./change_prefix.sh tmp $(PREFIX) $(DISTDIR)
114 # Hack for qt4
115         (cd tmp/$(DISTDIR)/bin; mv uic.exe uic.ex; mv rcc.exe rcc.ex; mv moc.exe moc.ex)
116 #       Remove unused and potentially harmful files     
117         (cd tmp/$(DISTDIR)/bin; rm -rfv *.exe; chmod a+x *)
118 # Hack for qt4
119         (cd tmp/$(DISTDIR)/bin; mv uic.ex uic.exe; mv rcc.ex rcc.exe; mv moc.ex moc.exe)
120 # Tar it.
121         (cd tmp; tar cf - $(DISTDIR)) | bzip2 -c > contrib-`date +%Y%m%d`-win32-bin-gcc-`$(CC) --version|head -n 1|cut -f 3 -d ' '`-runtime-`/bin/echo -e "#include <_mingw.h>\n__MINGW32_VERSION"|$(CC) -E -|grep -v ^#|grep -v ' '`-only.tar.bz2
122         rm -rf tmp
123
124 .PHONY: all clean-src clean-bin clean package-macosx package-win32