Makefile.am 21.4 KB
Newer Older
1
2
3
###############################################################################
# Automake targets and declarations
###############################################################################
4

5
6
NULL =

7
8
9
# SUBDIRS stores the directories where a "make" is required when building
# something. DIST_SUBDIRS stores the directories where nothing is built but
# which have makefiles with distribution information.
10
11
12
13
14
#  - intl should come before modules and . because all the code uses gettext
#  - modules should come before . because vlc needs the builtins
#  - . should come before mozilla because the plugin needs libvlc_pic.a
#  - po should come before . because VLC.app needs the pofiles
SUBDIRS = intl modules po . mozilla share m4
Sam Hocevar's avatar
Sam Hocevar committed
15
DIST_SUBDIRS = $(SUBDIRS) src debian doc ipkg lib autotools
16

17
18
19
20
21
22
23
24
25
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
	MAINTAINERS \
	README.MacOSX.rtf \
	bootstrap \
	install-win32 \
	src/extras/COPYING \
	toolbox \
Sam Hocevar's avatar
Sam Hocevar committed
26
	vlc-config.in.in \
27
	vlc.ebuild \
28
	vlc.spec \
Alexis de Lattre's avatar
Alexis de Lattre committed
29
	vlc.spec.mdk \
30
31
	$(NULL)

32
33
34
35
36
37
BUILT_SOURCES =
SUFFIXES = 

# Tell aclocal to use -I m4. Wonder if it really works.
ACLOCAL_AMFLAGS = -I m4

38
# XXX: these flags could be set in configure.ac, but we set them here
39
# because old versions of automake don't support them in configure.ac.
40
AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects
41

42
43
44
45
46
47
48
###############################################################################
# Headers
###############################################################################

BUILT_SOURCES += \
	include/vlc_symbols.h \
	src/misc/modules_builtin.h \
49
50
	src/misc/modules_plugin.h \
	$(NULL)
51
52
53
54
55
56
57
58
59
60

pkgincludedir = $(includedir)/vlc

dist_pkginclude_HEADERS = \
	include/vlc/vlc.h \
	include/vlc/aout.h \
	include/vlc/vout.h \
	include/vlc/sout.h \
	include/vlc/decoder.h \
	include/vlc/input.h \
61
62
	include/vlc/intf.h \
	$(NULL)
63

Sam Hocevar's avatar
Sam Hocevar committed
64
noinst_HEADERS = $(HEADERS_include) $(HEADERS_include_built)
65
66
67
68
69
70
71

HEADERS_include = \
	include/aout_internal.h \
	include/audio_output.h \
	include/beos_specific.h \
	include/configuration.h \
	include/darwin_specific.h \
72
	include/charset.h \
73
	include/codecs.h \
74
	include/ninput.h \
75
76
77
78
79
	include/input_ext-dec.h \
	include/input_ext-intf.h \
	include/input_ext-plugins.h \
	include/intf_eject.h \
	include/iso_lang.h \
80
	include/httpd.h \
81
82
83
84
85
86
87
88
89
	include/main.h \
	include/mmx.h \
	include/modules.h \
	include/modules_inner.h \
	include/mtime.h \
	include/network.h \
	include/os_specific.h \
	include/stream_control.h \
	include/stream_output.h \
Sam Hocevar's avatar
Sam Hocevar committed
90
	include/variables.h \
91
	include/video_output.h \
92
	include/vlc_block.h \
93
94
95
	include/vlc_common.h \
	include/vlc_config.h \
	include/vlc_cpu.h \
96
	include/vlc_error.h \
97
	include/vlc_interface.h \
98
99
100
101
102
	include/vlc_messages.h \
	include/vlc_objects.h \
	include/vlc_playlist.h \
	include/vlc_threads.h \
	include/vlc_threads_funcs.h \
103
	include/vlc_video.h \
104
	include/vout_synchro.h \
105
	include/win32_specific.h \
106
	include/osd.h \
107
	$(NULL)
108
109

HEADERS_include_built = \
110
111
	include/vlc_symbols.h \
	$(NULL)
112
113

include/vlc_symbols.h: Makefile $(HEADERS_include)
Sam Hocevar's avatar
Sam Hocevar committed
114
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes
115
116

src/misc/modules_plugin.h: Makefile src/misc/modules_plugin.h.in $(HEADERS_include)
Sam Hocevar's avatar
Sam Hocevar committed
117
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes
118
119

src/misc/modules_builtin.h: Makefile src/misc/modules_builtin.h.in
Sam Hocevar's avatar
Sam Hocevar committed
120
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes
121

122
123
# These dependencies are mandatory
$(SOURCES): include/vlc_symbols.h
124
$(SOURCES_libvlc): src/misc/modules_plugin.h src/misc/modules_builtin.h $(LIB_intl)
125

126
127
128
129
130
###############################################################################
# Optional libintl - FIXME, bad dependencies
###############################################################################

intl/libintl.a: FORCE
Sam Hocevar's avatar
Sam Hocevar committed
131
	cd $(top_builddir)/intl && $(MAKE) $(AM_MAKEFLAGS)
132
133
134
135
136

if BUILD_INTL
LIB_intl = intl/libintl.a
endif

137
138
139
140
141
142
143
144
145
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
	extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib \
	extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib \
	extras/MacOSX/Resources/English.lproj/InfoPlist.strings \
146
	extras/MacOSX/Resources/English.lproj/vlc.scriptTerminology \
147
148
149
150
151
152
153
154
	extras/MacOSX/Resources/a52.icns \
	extras/MacOSX/Resources/aac.icns \
	extras/MacOSX/Resources/asf.icns \
	extras/MacOSX/Resources/asx.icns \
	extras/MacOSX/Resources/avi.icns \
	extras/MacOSX/Resources/bin.icns \
	extras/MacOSX/Resources/cue.icns \
	extras/MacOSX/Resources/dat.icns \
155
	extras/MacOSX/Resources/divx.icns \
156
	extras/MacOSX/Resources/dv.icns \
157
	extras/MacOSX/Resources/generic.icns \
158
159
160
161
	extras/MacOSX/Resources/m3u.icns \
	extras/MacOSX/Resources/mov.icns \
	extras/MacOSX/Resources/mp3.icns \
	extras/MacOSX/Resources/mp4.icns \
162
163
164
165
	extras/MacOSX/Resources/mpeg.icns \
	extras/MacOSX/Resources/mpeg1.icns \
	extras/MacOSX/Resources/mpeg2.icns \
	extras/MacOSX/Resources/mpeg4.icns \
166
167
168
169
170
171
	extras/MacOSX/Resources/mpg.icns \
	extras/MacOSX/Resources/ogg.icns \
	extras/MacOSX/Resources/ogm.icns \
	extras/MacOSX/Resources/pls.icns \
	extras/MacOSX/Resources/srt.icns \
	extras/MacOSX/Resources/sub.icns \
172
	extras/MacOSX/Resources/vlc.icns \
173
174
175
	extras/MacOSX/Resources/vob.icns \
	extras/MacOSX/Resources/wma.icns \
	extras/MacOSX/Resources/wmv.icns \
176
177
178
179
180
	extras/MacOSX/Resources/back.png \
	extras/MacOSX/Resources/begin.png \
	extras/MacOSX/Resources/end.png \
	extras/MacOSX/Resources/forw.png \
	extras/MacOSX/Resources/list.png \
181
182
	extras/MacOSX/Resources/pause.png \
	extras/MacOSX/Resources/play.png \
183
	extras/MacOSX/Resources/prefs.png \
184
	extras/MacOSX/Resources/slow.png \
185
	extras/MacOSX/Resources/stop.png \
186
	extras/MacOSX/Resources/vlc_hg.png \
187
	extras/MacOSX/Resources/about_bg.png \
188
	extras/MacOSX/Resources/vlc.scriptSuite \
189
	extras/MacOSX/Resources/README \
190
	extras/MacOSX/vlc.pbproj/project.pbxproj \
191
	extras/MacOSX/macosx-dmg \
192
193
194
	$(NULL)

###############################################################################
195
# MS Visual Studio and eMbedded Visual Studio projects
196
197
198
199
###############################################################################

EXTRA_DIST += \
	msvc/vlc.dsw \
200
201
	msvc/libvlc.dsp.in \
	msvc/plugins.dsp.in \
202
	msvc/vlc.dsp.in \
203
	msvc/config.h.in \
204
	msvc/modules_builtin_msvc.h \
205
	evc/vlc.vcw \
206
	evc/libvlc.vcp.in \
207
	evc/vlc.vcp.in \
208
	evc/plugins.vcp.in \
209
	evc/vlc.c \
210
	evc/config.h.in \
211
	evc/modules_builtin_evc.h \
212
213
	$(NULL)

gbazin's avatar
   
gbazin committed
214
dist-hook:
215
	mv $(distdir)/vlc.ebuild $(distdir)/vlc-${VERSION}.ebuild
Sam Hocevar's avatar
Sam Hocevar committed
216
	cd $(distdir) && srcdir=$(srcdir) $(srcdir)/toolbox --update-vc
gbazin's avatar
   
gbazin committed
217

218
219
220
221
222
223
###############################################################################
# Building libvlc
###############################################################################

bin_SCRIPTS = vlc-config

Sam Hocevar's avatar
Sam Hocevar committed
224
lib_LIBRARIES = lib/libvlc.a $(LIBRARIES_libvlc_pic)
225
226

lib_libvlc_a_SOURCES = $(SOURCES_libvlc)
gbazin's avatar
   
gbazin committed
227
dist_lib_libvlc_a_SOURCES = src/misc/modules_plugin.h
Sam Hocevar's avatar
Sam Hocevar committed
228
229
230
lib_libvlc_a_CFLAGS = `$(VLC_CONFIG) --cflags vlc`
lib_libvlc_a_CXXFLAGS = `$(VLC_CONFIG) --cxxflags vlc`
lib_libvlc_a_OBJCFLAGS = `$(VLC_CONFIG) --objcflags vlc`
231
232

lib_libvlc_pic_a_SOURCES = $(SOURCES_libvlc)
Sam Hocevar's avatar
Sam Hocevar committed
233
234
235
lib_libvlc_pic_a_CFLAGS = `$(VLC_CONFIG) --cflags vlc pic`
lib_libvlc_pic_a_CXXFLAGS = `$(VLC_CONFIG) --cxxflags vlc pic`
lib_libvlc_pic_a_OBJCFLAGS = `$(VLC_CONFIG) --objcflags vlc pic`
236
237

if HAVE_BEOS
238
OPT_SOURCES_libvlc_beos = $(SOURCES_libvlc_beos)
239
240
endif
if HAVE_DARWIN
241
OPT_SOURCES_libvlc_darwin = $(SOURCES_libvlc_darwin)
242
243
endif
if HAVE_WIN32
244
OPT_SOURCES_libvlc_win32 = $(SOURCES_libvlc_win32)
245
246
endif
if BUILD_DIRENT
247
OPT_SOURCES_libvlc_dirent = $(SOURCES_libvlc_dirent)
248
249
endif
if BUILD_GETOPT
250
OPT_SOURCES_libvlc_getopt = $(SOURCES_libvlc_getopt)
251
endif
252
253
254
255
256
if BUILD_MOZILLA
LIBRARIES_libvlc_pic = lib/libvlc_pic.a
endif

EXTRA_DIST += \
257
258
259
260
261
	$(SOURCES_libvlc_beos) \
	$(SOURCES_libvlc_darwin) \
	$(SOURCES_libvlc_win32) \
	$(SOURCES_libvlc_dirent) \
	$(SOURCES_libvlc_getopt) \
262
263
	$(NULL)

264
SOURCES_libvlc_beos = \
265
	src/misc/beos_specific.cpp \
266
267
	$(NULL)

268
SOURCES_libvlc_darwin = \
269
	src/misc/darwin_specific.m \
270
271
	$(NULL)

272
SOURCES_libvlc_win32 = \
273
274
275
	src/misc/win32_specific.c \
	$(NULL)

276
SOURCES_libvlc_dirent = \
277
278
279
280
	src/extras/dirent.c \
	src/extras/dirent.h \
	$(NULL)

281
SOURCES_libvlc_getopt = \
282
283
284
285
286
	src/extras/getopt.c \
	src/extras/getopt.h \
	src/extras/getopt1.c \
	$(NULL)

287
SOURCES_libvlc_common = \
288
289
290
291
292
293
	src/libvlc.c \
	src/libvlc.h \
	src/interface/interface.c \
	src/interface/intf_eject.c \
	src/playlist/playlist.c \
	src/input/input.c \
294
	src/input/stream.c \
295
	src/input/demux.c \
296
297
298
299
300
301
302
303
304
305
306
307
308
	src/input/input_ext-plugins.c \
	src/input/input_ext-dec.c \
	src/input/input_ext-intf.c \
	src/input/input_dec.c \
	src/input/input_programs.c \
	src/input/input_clock.c \
	src/input/input_info.c \
	src/video_output/video_output.c \
	src/video_output/vout_pictures.c \
	src/video_output/vout_pictures.h \
	src/video_output/video_text.c \
	src/video_output/video_text.h \
	src/video_output/vout_subpictures.c \
309
	src/video_output/vout_synchro.c \
310
311
312
313
314
315
316
317
	src/audio_output/common.c \
	src/audio_output/dec.c \
	src/audio_output/filters.c \
	src/audio_output/input.c \
	src/audio_output/mixer.c \
	src/audio_output/output.c \
	src/audio_output/intf.c \
	src/stream_output/stream_output.c \
318
	src/misc/charset.c \
319
	src/misc/mtime.c \
320
	src/misc/block.c \
321
322
323
324
325
	src/misc/modules.c \
	src/misc/threads.c \
	src/misc/cpu.c \
	src/misc/configuration.c \
	src/misc/iso_lang.c \
326
	src/misc/iso-639_def.h \
327
328
	src/misc/messages.c \
	src/misc/objects.c \
Sam Hocevar's avatar
Sam Hocevar committed
329
	src/misc/variables.c \
330
	src/misc/error.c \
331
	src/extras/libc.c \
332
333
334
335
336
337
338
339
340
	$(NULL)

SOURCES_libvlc = \
	$(SOURCES_libvlc_common) \
	$(OPT_SOURCES_libvlc_beos) \
	$(OPT_SOURCES_libvlc_darwin) \
	$(OPT_SOURCES_libvlc_win32) \
	$(OPT_SOURCES_libvlc_dirent) \
	$(OPT_SOURCES_libvlc_getopt) \
341
	$(NULL)
342
343
344
345
346

###############################################################################
# Building vlc
###############################################################################

Sam Hocevar's avatar
Sam Hocevar committed
347
bin_PROGRAMS = vlc
348

349
vlc_SOURCES = src/vlc.c
350

Sam Hocevar's avatar
Sam Hocevar committed
351
352
353
vlc_LDFLAGS = `$(VLC_CONFIG) --libs vlc builtin`
vlc_LDADD = lib/libvlc.a $(DATA_win32_rc) $(LIB_intl)
vlc_CFLAGS = `$(VLC_CONFIG) --cflags vlc`
354

355
356
# We use DEPENDENCIES_vlc instead of vlc_DEPENDENCIES because of an
# old automake-1.5 bug (automake/279).
Sam Hocevar's avatar
Sam Hocevar committed
357
DEPENDENCIES_vlc = lib/libvlc.a $(DATA_win32_rc) $(LIB_intl)
358

Sam Hocevar's avatar
Sam Hocevar committed
359
360
vlc$(EXEEXT): $(vlc_OBJECTS) $(DEPENDENCIES_vlc) stamp-builtin
	@rm -f $(top_builddir)/vlc$(EXEEXT)
361
362
363
364
	@case `$(VLC_CONFIG) --linkage vlc builtin` in \
	  c++) echo $(CXXLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ; $(CXXLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ;; \
	  objc) echo $(OBJCLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ; $(OBJCLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ;; \
	  c|*) echo $(LINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ; $(LINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ;; \
Sam Hocevar's avatar
Sam Hocevar committed
365
	esac
Eric Petit's avatar
Eric Petit committed
366

367
if HAVE_BEOS
368
	xres -o $@ $(srcdir)/share/vlc_beos.rsrc
369
	mimeset -f $@
Sam Hocevar's avatar
Sam Hocevar committed
370
	rm -Rf $(srcdir)/locale ; mkdir -p "$(srcdir)/locale"
Eric Petit's avatar
Eric Petit committed
371
	for i in $(ALL_LINGUAS); do \
Sam Hocevar's avatar
Sam Hocevar committed
372
373
374
	  mkdir -p "$(srcdir)/locale/$${i}/LC_MESSAGES" ; \
	  cp "$(srcdir)/po/$${i}.gmo" \
	    "$(srcdir)/locale/$${i}/LC_MESSAGES/vlc.mo" || true ; \
Eric Petit's avatar
Eric Petit committed
375
	done
376
377
endif

Sam Hocevar's avatar
Sam Hocevar committed
378
# Install the modules and the symlinks
379
install-exec-local:
Sam Hocevar's avatar
Sam Hocevar committed
380
	for i in "" `$(VLC_CONFIG) --target plugin` ; do if test -n "$$i" ; then \
381
382
	  echo $(INSTALL) -m 755 "$$i$(LIBEXT)" "$(DESTDIR)$(libdir)/vlc/`echo $$i | sed -e 's,.*modules/\([^/]*\).*,\1,'`" ; \
	  $(INSTALL) -m 755 "$$i$(LIBEXT)" "$(DESTDIR)$(libdir)/vlc/`echo $$i | sed -e 's,.*modules/\([^/]*\).*,\1,'`" ; \
Sam Hocevar's avatar
Sam Hocevar committed
383
	fi ; done
384
	for i in "" `$(VLC_CONFIG) --target builtin` ; do if test -n "$$i" ; then \
385
	  echo $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
386
	  $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
Sam Hocevar's avatar
Sam Hocevar committed
387
	fi ; done
388
389
390
391
392
393
if BUILD_MOZILLA
	for i in "" `$(VLC_CONFIG) --target builtin pic` ; do if test -n "$$i" ; then \
	  echo $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
	  $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
	fi ; done
endif
Sam Hocevar's avatar
Sam Hocevar committed
394
	for i in "" $(ALIASES) ; do if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
395
396
	  rm -f "$(DESTDIR)$(bindir)/$$i" && \
	  ln -s vlc "$(DESTDIR)$(bindir)/$$i" ; \
397
398
399
400
	fi ; done

if HAVE_DARWIN
# Create the MacOS X app
hartman's avatar
hartman committed
401
vlc_app_DATA = VLC.app
402
vlc_appdir = $(bindir)
Sam Hocevar's avatar
Sam Hocevar committed
403
VLC.app: vlc
Loïc Minier's avatar
Loïc Minier committed
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
	@if test -e "$(top_builddir)/tmp"; then \
	  echo "Error: please remove $(top_builddir)/tmp, it is in the way"; \
	  false; \
	else \
	  echo "OK."; mkdir -p "$(top_builddir)/tmp/extras"; \
	fi
	rm -Rf $(top_builddir)/VLC.app
	cp -r $(srcdir)/extras/MacOSX $(top_builddir)/tmp/extras
	for i in AUTHORS COPYING README.MacOSX.rtf THANKS; do \
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	cp $(srcdir)/modules/audio_output/coreaudio.c \
	   $(top_builddir)/tmp/modules/audio_output/coreaudio.c
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
	    about.h \
	    about.m \
	    applescript.h \
	    applescript.m \
	    controls.h \
	    controls.m \
	    info.h \
	    info.m \
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
	    prefs.h \
	    prefs.m \
	    vout.h \
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
	cd $(top_builddir)/tmp/extras/MacOSX && pbxbuild -target vlc | grep -v '^\([ \t]\|$$\)'
	cp -r $(top_builddir)/tmp/extras/MacOSX/build/vlc.bundle \
	      $(top_builddir)/VLC.app
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS
	$(INSTALL) $(top_builddir)/vlc \
		   $(top_builddir)/VLC.app/Contents/MacOS/VLC
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/modules
Sam Hocevar's avatar
Sam Hocevar committed
454
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
Loïc Minier's avatar
Loïc Minier committed
455
456
457
	  if test -n "$$i" ; \
	    then $(INSTALL) "$$i$(LIBEXT)" \
			   "$(top_builddir)/VLC.app/Contents/MacOS/modules" ; \
Sam Hocevar's avatar
Sam Hocevar committed
458
	  fi ; done
Loïc Minier's avatar
Loïc Minier committed
459
460
461
462
463
464
465
466
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share/http
	$(INSTALL) -m 644 $(srcdir)/share/http/*.html \
	    $(top_builddir)/VLC.app/Contents/MacOS/share/http
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share/http/admin
	$(INSTALL) -m 644 $(srcdir)/share/http/admin/*.html \
	    $(top_builddir)/VLC.app/Contents/MacOS/share/http/admin
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/locale
467
	for i in $(ALL_LINGUAS); do \
Loïc Minier's avatar
Loïc Minier committed
468
469
470
471
472
473
474
475
476
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
	  cp $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
	  mkdir -p $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/InfoPlist.strings \
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/MainMenu.nib \
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/vlc.scriptTerminology \
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
477
	done
Loïc Minier's avatar
Loïc Minier committed
478
	printf "APPLVLC#" >| $(top_builddir)/VLC.app/Contents/PkgInfo
479
480
481
endif

if HAVE_WIN32
482
DATA_win32_rc = $(noinst_share_vlc_win32_rc_DATA)
483
484
485
noinst_share_vlc_win32_rc_DATA = share/vlc_win32_rc.$(OBJEXT)
noinst_share_vlc_win32_rcdir = $(libdir)
share/vlc_win32_rc.$(OBJEXT): share/vlc_win32_rc.rc
486
	$(WINDRES) -DVERSION=$(VERSION) -DVERSION_NUMBER=`echo $(VERSION).0.0.0 | sed 's/\([0-9]*\)[^.]*\.*\([0-9]*\)[^.]*\.*\([0-9]*\)[^.]*\.*\([0-9]*\).*/\1,\2,\3,\4/'` --include-dir $(srcdir)/share -i $< -o $@
487
488
endif

489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
###############################################################################
# Building specific source packages
###############################################################################

dist-woody: distdir
	$(remove_distdir_woody)
	mv $(distdir) $(PACKAGE)-woody-$(VERSION)
	$(srcdir)/toolbox --make-woody $(PACKAGE)-woody-$(VERSION)
	$(AMTAR) chof - $(PACKAGE)-woody-$(VERSION) \
	  | GZIP=$(GZIP_ENV) gzip -c >$(PACKAGE)-woody-$(VERSION).tar.gz
	$(remove_distdir_woody)

remove_distdir_woody = \
  { test ! -d $(PACKAGE)-woody-$(VERSION) \
    || { find $(PACKAGE)-woody-$(VERSION) -type d ! -perm -200 \
           -exec chmod u+w {} ';' \
         && rm -fr $(PACKAGE)-woody-$(VERSION); }; }

507
508
509
510
511
512
513
514
###############################################################################
# Building architecture-specific binary packages
###############################################################################

# XXX: this rule is probably only useful to you if you have exactly
# the same setup as me. Contact sam@zoy.org if you need to use it.
#
# Check that tmp isn't in the way
gbazin's avatar
   
gbazin committed
515
516
517
package-win32-base:
	@if test -e "$(srcdir)/vlc-${VERSION}"; then \
	  echo "Error: please remove $(srcdir)/vlc-${VERSION}, it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
518
	  false; \
519
	else \
gbazin's avatar
   
gbazin committed
520
	  echo "OK."; mkdir -p "$(srcdir)/vlc-${VERSION}"; \
521
522
	fi
# Create installation script
gbazin's avatar
   
gbazin committed
523
	cp "$(srcdir)/install-win32" "$(srcdir)/vlc-${VERSION}/nsi"
524
# Copy relevant files
gbazin's avatar
   
gbazin committed
525
526
	cp "$(top_builddir)/vlc$(EXEEXT)" "$(srcdir)/vlc-${VERSION}/"
	$(STRIP) "$(srcdir)/vlc-${VERSION}/vlc$(EXEEXT)"
gbazin's avatar
   
gbazin committed
527
	for file in AUTHORS MAINTAINERS THANKS NEWS COPYING README ; \
gbazin's avatar
   
gbazin committed
528
529
	  do cp "$(srcdir)/$$file" "$(srcdir)/vlc-${VERSION}/$${file}.txt" ; \
	  unix2dos "$(srcdir)/vlc-${VERSION}/$${file}.txt" ; done
gbazin's avatar
   
gbazin committed
530

gbazin's avatar
   
gbazin committed
531
	mkdir -p "$(srcdir)/vlc-${VERSION}/plugins"
Sam Hocevar's avatar
Sam Hocevar committed
532
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
Sam Hocevar's avatar
Sam Hocevar committed
533
	  if test -n "$$i" ; then \
gbazin's avatar
   
gbazin committed
534
535
	    $(INSTALL) "$(srcdir)/$$i$(LIBEXT)" \
            "$(srcdir)/vlc-${VERSION}/plugins/" ; \
Sam Hocevar's avatar
Sam Hocevar committed
536
	  fi ; done
gbazin's avatar
   
gbazin committed
537

gbazin's avatar
   
gbazin committed
538
	for i in "" $(srcdir)/vlc-${VERSION}/plugins/*$(LIBEXT) ; \
Sam Hocevar's avatar
Sam Hocevar committed
539
	  do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done
gbazin's avatar
   
gbazin committed
540

gbazin's avatar
   
gbazin committed
541
	mkdir $(srcdir)/vlc-${VERSION}/locale
gbazin's avatar
   
gbazin committed
542
	for i in $(ALL_LINGUAS); do \
gbazin's avatar
   
gbazin committed
543
	  mkdir -p "$(srcdir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
544
	  cp "$(srcdir)/po/$${i}.gmo" \
gbazin's avatar
   
gbazin committed
545
546
	    "$(srcdir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES/vlc.mo" \
            || true ; \
gbazin's avatar
   
gbazin committed
547
548
	done

gbazin's avatar
   
gbazin committed
549
	mkdir -p $(srcdir)/vlc-${VERSION}/skins/default
550
	for i in $(srcdir)/share/skins/default/*.*; do \
gbazin's avatar
   
gbazin committed
551
	  cp $$i $(srcdir)/vlc-${VERSION}/skins/default/ || true ; \
gbazin's avatar
   
gbazin committed
552
	done
553
	for i in $(srcdir)/doc/skins/*.txt; do \
gbazin's avatar
   
gbazin committed
554
	  cp $$i $(srcdir)/vlc-${VERSION}/skins/ || true ; \
gbazin's avatar
   
gbazin committed
555
556
	done

gbazin's avatar
   
gbazin committed
557
	mkdir -p "$(srcdir)/vlc-${VERSION}/http/admin"
gbazin's avatar
   
gbazin committed
558
559
560
561
562
563
564
565
566
567
	cp $(srcdir)/share/http/*.html $(srcdir)/vlc-${VERSION}/http/ ;
	cp $(srcdir)/share/http/admin/*.html \
           $(srcdir)/vlc-${VERSION}/http/admin/ ;
	cp $(srcdir)/share/http/admin/.access \
           $(srcdir)/vlc-${VERSION}/http/admin/ ;

package-win32-base-exe:
# Create package 
	wine ~/.wine/fake_windows/Program\ Files/NSIS/makensis.exe \
             -- /DVERSION=${VERSION} $(srcdir)/vlc-${VERSION}/nsi
gbazin's avatar
   
gbazin committed
568

gbazin's avatar
   
gbazin committed
569
package-win32-base-zip:
570
# Create package 
gbazin's avatar
   
gbazin committed
571
	zip -r vlc-${VERSION}-win32.zip vlc-${VERSION}
gbazin's avatar
   
gbazin committed
572
573
574
575
576
577
578
579
580
581

package-win32-exe: package-win32-base package-win32-base-exe
# Clean up
	rm -Rf $(srcdir)/vlc-${VERSION}

package-win32-zip: package-win32-base package-win32-base-zip
# Clean up
	rm -Rf $(srcdir)/vlc-${VERSION}

package-win32: package-win32-base package-win32-base-exe package-win32-base-zip
582
# Clean up
gbazin's avatar
   
gbazin committed
583
	rm -Rf $(srcdir)/vlc-${VERSION}
584
585
586

package-beos:
# Check that tmp isn't in the way
587
	@if test -e $(srcdir)/tmp; then \
Sam Hocevar's avatar
Sam Hocevar committed
588
589
	  echo "Error: please remove $(srcdir)/tmp, it is in the way"; \
	  false; \
590
	else \
Sam Hocevar's avatar
Sam Hocevar committed
591
	  echo "OK."; mkdir $(srcdir)/tmp; \
592
	fi
593

594
# Copy relevant files
595
596
	mkdir -p $(srcdir)/tmp/vlc
	cd $(srcdir) && \
Sam Hocevar's avatar
Sam Hocevar committed
597
	  cp vlc AUTHORS COPYING ChangeLog README THANKS NEWS tmp/vlc/
598
# We cannot use ${PLUGIN_FILES} as it looks like it is too "long" for the BeOS shell...
599
	if [ `find $(srcdir)/modules -name "lib*_plugin.so" | wc -l` -gt 0 ]; then \
Sam Hocevar's avatar
Sam Hocevar committed
600
601
	  mkdir -p $(srcdir)/tmp/vlc/plugins; \
	  find $(srcdir)/modules -name "lib*_plugin.so" | xargs -i{} cp {} $(srcdir)/tmp/vlc/plugins/; \
602
603
	fi
	for i in $(ALL_LINGUAS); do \
Sam Hocevar's avatar
Sam Hocevar committed
604
605
	  mkdir -p $(srcdir)/tmp/vlc/locale/$${i}/LC_MESSAGES ; \
	  cp $(srcdir)/po/$${i}.gmo $(srcdir)/tmp/vlc/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
606
607
608
	done

# Create package with debug symbols
609
610
	mimeset -f $(srcdir)/tmp/vlc/* $(srcdir)/tmp/vlc/*/*
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-${VERSION}
611
612
	(cd $(srcdir)/tmp ; zip -9 -r vlc-${VERSION}-BeOS-debug.zip vlc-${VERSION} )
	mv $(srcdir)/tmp/vlc-${VERSION}-BeOS-debug.zip $(srcdir)/
613
614

# Create package without debug symbols
615
616
617
618
	mv $(srcdir)/tmp/vlc-${VERSION} $(srcdir)/tmp/vlc
	strip $(srcdir)/tmp/vlc/vlc
	if [ -d $(srcdir)/tmp/vlc/plugins ]; then \
	  strip $(srcdir)/tmp/vlc/plugins/lib*_plugin.so; \
619
	fi
620
621
622
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc
	mimeset -f $(srcdir)/tmp/vlc/* $(srcdir)/tmp/vlc/*/*
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-${VERSION}
623
624
	(cd $(srcdir)/tmp ; zip -9 -r vlc-${VERSION}-BeOS.zip vlc-${VERSION} )
	mv $(srcdir)/tmp/vlc-${VERSION}-BeOS.zip $(srcdir)/
625

626
# Clean up
627
	rm -Rf $(srcdir)/tmp
628
629
630

package-macosx:
# Check that tmp isn't in the way
Loïc Minier's avatar
Loïc Minier committed
631
632
	@if test -e "$(top_builddir)/tmp"; then \
	  echo "Error: please remove $(top_builddir)/tmp, it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
633
	  false; \
634
	else \
Loïc Minier's avatar
Loïc Minier committed
635
	  echo "OK."; mkdir -p "$(top_builddir)/tmp"; \
636
637
638
	fi

# Copy relevant files 
Loïc Minier's avatar
Loïc Minier committed
639
640
	cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/tmp/"
	cd "$(srcdir)" && cp AUTHORS COPYING ChangeLog README README.MacOSX.rtf THANKS NEWS $(top_builddir)/tmp/
641
642

# Create disk image 
Loïc Minier's avatar
Loïc Minier committed
643
	$(srcdir)/extras/MacOSX/macosx-dmg 18 "vlc-${VERSION}" $(top_builddir)/tmp/* 
644
645

# Clean up
Loïc Minier's avatar
Loïc Minier committed
646
	rm -Rf $(top_builddir)/tmp
647

Sam Hocevar's avatar
Sam Hocevar committed
648
649
650
###############################################################################
# Stamp rules
###############################################################################
651
clean: clean-stamp
Sam Hocevar's avatar
Sam Hocevar committed
652
clean-stamp:
653
	rm -f stamp-builtin
Sam Hocevar's avatar
Sam Hocevar committed
654
655
656
657
658
659
660
661
662
663

stamp-builtin: FORCE
	@for dep in "" `$(VLC_CONFIG) --target builtin`; do \
	  if test "$${dep}" -nt "$(top_builddir)/vlc$(EXEEXT)"; then \
	    rm -f $@; \
	    break; \
	  fi; \
	done
	@if test ! -f $@; then printf "" > $@; fi

664
665
666
667
###############################################################################
# Force rule
###############################################################################
FORCE: