OSDN Git Service

46e14c2c8b46ee10ddf1853f75c1de68ee7c5550
[handbrake-jp/handbrake-jp-git.git] / contrib / Jamfile
1 SubDir TOP contrib ;
2
3 # Use curl on Mac OS X since it's always installed, and assume wget
4 # is installed for all other systems
5 if $(OS) = MACOSX
6 {
7     WGET = curl -o ;
8 }
9 else
10 {
11     WGET = wget -O ;
12 }
13
14 # Wget rule: downloads $(<) from the link in $(>)
15 rule Wget
16 {
17     Depends $(<) : $(>) ;
18 }
19 actions Wget
20 {
21     $(RM) $(<) &&
22     $(WGET) $(<) `cat $(>)` &&
23     ( touch $(<) || true )
24 }
25
26 # liba52
27 rule LibA52
28 {
29     Depends $(<) : $(>) ;
30     Depends lib  : $(<) ;
31 }
32 actions LibA52
33 {
34     cd `dirname $(>)` && CONTRIB=`pwd` &&
35     rm -rf a52dec && tar xzf a52dec.tar.gz && cd a52dec &&
36     ./configure --prefix=$CONTRIB && make && make install &&
37     strip -S $CONTRIB/lib/liba52.a
38 }
39 Wget   $(SUBDIR)/a52dec.tar.gz : $(SUBDIR)/version_a52dec.txt ;
40 LibA52 $(SUBDIR)/lib/liba52.a  : $(SUBDIR)/a52dec.tar.gz ;
41
42 # libavcodec
43 rule LibAvCodec
44 {
45     Depends $(<) : $(>) ;
46     Depends lib  : $(<) ;
47 }
48 actions LibAvCodec
49 {
50     cd `dirname $(>)` && CONTRIB=`pwd` &&
51     rm -rf ffmpeg && tar xzf ffmpeg.tar.gz && cd ffmpeg &&
52     ./configure --prefix=$CONTRIB --enable-gpl &&
53     make -C libavcodec && make -C libavutil &&
54     make -C libavcodec installlib && make -C libavutil installlib &&
55     strip -S $CONTRIB/lib/libavcodec.a
56 }
57 Wget       $(SUBDIR)/ffmpeg.tar.gz    : $(SUBDIR)/version_ffmpeg.txt ;
58 LibAvCodec $(SUBDIR)/lib/libavcodec.a : $(SUBDIR)/ffmpeg.tar.gz ;
59
60 rule LibAvUtil
61 {
62     Depends $(<) : $(>) ;
63     Depends lib  : $(<) ;
64 }
65 actions LibAvUtil
66 {
67     strip -S $(<)
68 }
69 LibAvUtil $(SUBDIR)/lib/libavutil.a : $(SUBDIR)/lib/libavcodec.a ;
70
71 # libdvdcss
72 # We need libdvdcss.so for libdvdread's configure to work...
73 rule LibDvdCss
74 {
75     Depends $(<) : $(>) ;
76     Depends lib  : $(<) ;
77 }
78 actions LibDvdCss
79 {
80     cd `dirname $(>)` && CONTRIB=`pwd` &&
81     rm -rf libdvdcss && tar xzf libdvdcss.tar.gz && cd libdvdcss &&
82     ./configure --prefix=$CONTRIB && make && make install &&
83     strip -S $CONTRIB/lib/libdvdcss.a
84 }
85 Wget      $(SUBDIR)/libdvdcss.tar.gz : $(SUBDIR)/version_libdvdcss.txt ;
86 LibDvdCss $(SUBDIR)/lib/libdvdcss.a  : $(SUBDIR)/libdvdcss.tar.gz ;
87
88 # libdvdread
89 rule LibDvdRead
90 {
91     Depends $(<) : $(>) ;
92     Depends lib  : $(<) ;
93 }
94 actions LibDvdRead
95 {
96     cd `dirname $(>)` && CONTRIB=`pwd` &&
97     rm -rf libdvdread && tar xzf libdvdread.tar.gz && cd libdvdread &&
98     ./configure --prefix=$CONTRIB --disable-shared --with-libdvdcss=$CONTRIB &&
99     make && make install &&
100     strip -S $CONTRIB/lib/libdvdread.a
101 }
102 Wget       $(SUBDIR)/libdvdread.tar.gz : $(SUBDIR)/version_libdvdread.txt ;
103 LibDvdRead $(SUBDIR)/lib/libdvdread.a  : $(SUBDIR)/libdvdread.tar.gz ;
104
105 # libfaac
106 rule LibFaac
107 {
108     Depends $(<) : $(>) ;
109     Depends lib  : $(<) ;
110 }
111 actions LibFaac
112 {
113     cd `dirname $(>)` && CONTRIB=`pwd` &&
114     rm -rf faac && tar xzf faac.tar.gz && cd faac &&
115     ./configure --prefix=$CONTRIB --disable-shared &&
116     make && make install &&
117     strip -S $CONTRIB/lib/libfaac.a
118 }
119 Wget    $(SUBDIR)/faac.tar.gz   : $(SUBDIR)/version_faac.txt ;
120 LibFaac $(SUBDIR)/lib/libfaac.a : $(SUBDIR)/faac.tar.gz ;
121
122 # libmp3lame
123 rule LibMp3Lame
124 {
125     Depends $(<) : $(>) ;
126     Depends lib  : $(<) ;
127 }
128 actions LibMp3Lame
129 {
130     cd `dirname $(>)` && CONTRIB=`pwd` &&
131     rm -rf lame && tar xzf lame.tar.gz && cd lame &&
132     ./configure --prefix=$CONTRIB --disable-shared &&
133     make && make install &&
134     strip -S $CONTRIB/lib/libmp3lame.a
135 }
136 Wget       $(SUBDIR)/lame.tar.gz      : $(SUBDIR)/version_lame.txt ;
137 LibMp3Lame $(SUBDIR)/lib/libmp3lame.a : $(SUBDIR)/lame.tar.gz ;
138
139 # libmp4v2
140 rule LibMp4v2
141 {
142     Depends $(<) : $(>) ;
143     Depends lib  : $(<) ;
144 }
145 actions LibMp4v2
146 {
147     cd `dirname $(>)` && CONTRIB=`pwd` &&
148     rm -rf mpeg4ip && tar xzf mpeg4ip.tar.gz && cd mpeg4ip &&
149     ./bootstrap && make -C lib/mp4v2 libmp4v2.la &&
150     cp lib/mp4v2/.libs/libmp4v2.a $CONTRIB/lib &&
151     cp mpeg4ip_config.h include/mpeg4ip.h include/mpeg4ip_version.h \
152       include/mpeg4ip_win32.h lib/mp4v2/mp4.h $CONTRIB/include &&
153     strip -S $CONTRIB/lib/libmp4v2.a
154 }
155 Wget     $(SUBDIR)/mpeg4ip.tar.gz : $(SUBDIR)/version_mpeg4ip.txt ;
156 LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/mpeg4ip.tar.gz ;
157
158 # libmpeg2
159 rule LibMpeg2
160 {
161     Depends $(<) : $(>) ;
162     Depends lib  : $(<) ;
163 }
164 actions LibMpeg2
165 {
166     cd `dirname $(>)` && CONTRIB=`pwd` &&
167     rm -rf mpeg2dec && tar xzf mpeg2dec.tar.gz && cd mpeg2dec &&
168     ./configure --prefix=$CONTRIB --disable-shared &&
169     make && make install &&
170     strip -S $CONTRIB/lib/libmpeg2.a
171 }
172 Wget     $(SUBDIR)/mpeg2dec.tar.gz : $(SUBDIR)/version_mpeg2dec.txt ;
173 LibMpeg2 $(SUBDIR)/lib/libmpeg2.a  : $(SUBDIR)/mpeg2dec.tar.gz ;
174
175 # libogg
176 rule LibOgg
177 {
178     Depends $(<) : $(>) ;
179     Depends lib  : $(<) ;
180 }
181 actions LibOgg
182 {
183     cd `dirname $(>)` && CONTRIB=`pwd` &&
184     rm -rf libogg && tar xzf libogg.tar.gz && cd libogg &&
185     ./configure --prefix=$CONTRIB --disable-shared &&
186     make && make install &&
187     strip -S $CONTRIB/lib/libogg.a
188 }
189 Wget   $(SUBDIR)/libogg.tar.gz : $(SUBDIR)/version_libogg.txt ;
190 LibOgg $(SUBDIR)/lib/libogg.a  : $(SUBDIR)/libogg.tar.gz ;
191
192 # libsamplerate
193 rule LibSampleRate
194 {
195     Depends $(<) : $(>) ;
196     Depends lib  : $(<) ;
197 }
198 actions LibSampleRate
199 {
200     cd `dirname $(>)` && CONTRIB=`pwd` &&
201     rm -rf libsamplerate && tar xzf libsamplerate.tar.gz && cd libsamplerate &&
202     ./configure --prefix=$CONTRIB --disable-shared &&
203     make && make install &&
204     strip -S $CONTRIB/lib/libsamplerate.a
205 }
206 Wget          $(SUBDIR)/libsamplerate.tar.gz : $(SUBDIR)/version_libsamplerate.txt ;
207 LibSampleRate $(SUBDIR)/lib/libsamplerate.a  : $(SUBDIR)/libsamplerate.tar.gz ;
208
209 # libvorbis
210 rule LibVorbis
211 {
212     Depends $(<) : $(>) ;
213     Depends lib  : $(<) ;
214 }
215 actions LibVorbis
216 {
217     cd `dirname $(>)` && CONTRIB=`pwd` &&
218     rm -rf libvorbis && tar xzf libvorbis.tar.gz && cd libvorbis &&
219     ./configure --prefix=$CONTRIB --with-ogg=$CONTRIB --disable-shared &&
220     make && make install &&
221     strip -S $CONTRIB/lib/libvorbis.a
222 }
223 Wget      $(SUBDIR)/libvorbis.tar.gz : $(SUBDIR)/version_libvorbis.txt ;
224 LibVorbis $(SUBDIR)/lib/libvorbis.a  : $(SUBDIR)/libvorbis.tar.gz ;
225
226 rule LibVorbisEnc
227 {
228     Depends $(<) : $(>) ;
229     Depends lib  : $(<) ;
230 }
231 actions LibVorbisEnc
232 {
233     strip -S $(<)
234 }
235 LibVorbisEnc $(SUBDIR)/lib/libvorbisenc.a : $(SUBDIR)/lib/libvorbis.a ;
236
237 # libx264
238 rule LibX264
239 {
240     Depends $(<) : $(>) ;
241     Depends lib  : $(<) ;
242 }
243 actions LibX264
244 {
245     cd `dirname $(>)` && CONTRIB=`pwd` &&
246     rm -rf x264 && tar xzf x264.tar.gz && cd x264 &&
247     ./configure --prefix=$CONTRIB --enable-pthread && make &&
248     make install &&
249     strip -S $CONTRIB/lib/libx264.a
250 }
251 Wget    $(SUBDIR)/x264.tar.gz   : $(SUBDIR)/version_x264.txt ;
252 LibX264 $(SUBDIR)/lib/libx264.a : $(SUBDIR)/x264.tar.gz ;
253
254 # libxvidcore
255 rule LibXvidCore
256 {
257     if $(OS) = MACOSX && $(OSPLAT) = X86
258     {
259        XVID_OPTIONS = --disable-assembly ;
260     }
261     Depends $(<) : $(>) ;
262     Depends lib  : $(<) ;
263 }
264 actions LibXvidCore
265 {
266     cd `dirname $(>)` && CONTRIB=`pwd` &&
267     rm -rf xvidcore && tar xzf xvidcore.tar.gz &&
268     cd xvidcore/build/generic/ && ./configure $(XVID_OPTIONS) &&
269     make libxvidcore.a &&
270     cp ./=build/libxvidcore.a $CONTRIB/lib/ &&
271     cp ../../src/xvid.h $CONTRIB/include/ &&
272     strip -S $CONTRIB/lib/libxvidcore.a
273 }
274 Wget        $(SUBDIR)/xvidcore.tar.gz   : $(SUBDIR)/version_xvidcore.txt ;
275 LibXvidCore $(SUBDIR)/lib/libxvidcore.a : $(SUBDIR)/xvidcore.tar.gz ;