Makefile.am 32.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
#  - 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
14
SUBDIRS = intl modules po . mozilla activex share m4 doc
15
DIST_SUBDIRS = $(SUBDIRS) src debian ipkg lib
16

17
18
19
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
20
	vlc.exe.manifest \
21
22
23
24
25
	MAINTAINERS \
	README.MacOSX.rtf \
	bootstrap \
	src/extras/COPYING \
	toolbox \
Sam Hocevar's avatar
Sam Hocevar committed
26
	vlc-config.in.in \
27
	vlc.spec \
Alexis de Lattre's avatar
Alexis de Lattre committed
28
	vlc.spec.mdk \
29
	vlc.win32.nsi \
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
###############################################################################
# Headers
###############################################################################

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

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 \
62
	include/vlc/intf.h \
zorglub's avatar
zorglub committed
63
	include/vlc/control.h \
64
	$(NULL)
65

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

HEADERS_include = \
	include/aout_internal.h \
	include/audio_output.h \
	include/beos_specific.h \
72
	include/charset.h \
73
	include/codecs.h \
74
75
	include/configuration.h \
	include/darwin_specific.h \
76
77
78
79
80
81
82
83
	include/intf_eject.h \
	include/iso_lang.h \
	include/main.h \
	include/mmx.h \
	include/modules.h \
	include/modules_inner.h \
	include/mtime.h \
	include/network.h \
84
	include/osd.h \
85
	include/os_specific.h \
86
	include/snapshot.h \
87
	include/stream_output.h \
Sam Hocevar's avatar
Sam Hocevar committed
88
	include/variables.h \
89
	include/video_output.h \
90
	include/vlc_access.h \
91
	include/vlc_bits.h \
92
	include/vlc_block.h \
gbazin's avatar
   
gbazin committed
93
	include/vlc_block_helper.h \
gbazin's avatar
   
gbazin committed
94
	include/vlc_codec.h \
95
96
97
	include/vlc_common.h \
	include/vlc_config.h \
	include/vlc_cpu.h \
98
	include/vlc_demux.h \
99
	include/vlc_error.h \
100
	include/vlc_es.h \
101
	include/vlc_es_out.h \
102
	include/vlc_filter.h \
zorglub's avatar
zorglub committed
103
	include/vlc_config_cat.h \
104
	include/vlc_httpd.h \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
105
	include/vlc_tls.h \
106
	include/vlc_md5.h \
107
	include/vlc_image.h \
108
	include/vlc_input.h \
109
	include/vlc_interface.h \
gbazin's avatar
   
gbazin committed
110
	include/vlc_keys.h \
111
	include/vlc_messages.h \
gbazin's avatar
   
gbazin committed
112
	include/vlc_meta.h \
113
114
	include/vlc_objects.h \
	include/vlc_playlist.h \
115
	include/vlc_spu.h \
116
	include/vlc_stream.h \
117
	include/vlc_threads_funcs.h \
118
	include/vlc_threads.h \
119
	include/vlc_video.h \
120
	include/vlc_vlm.h \
121
	include/vlc_vod.h \
gbazin's avatar
gbazin committed
122
	include/vlc_xml.h \
123
	include/vout_synchro.h \
124
125
	include/win32_specific.h \
	$(NULL)
126
127

HEADERS_include_built = \
128
129
	include/vlc_symbols.h \
	$(NULL)
130

131
# Common dependencies for these 3 files : Makefile vlc-config
132
# Real specific dependencies :
133

134
135
136
137
138
139
140
#include/vlc_symbols.h: $(HEADERS_include)
#src/misc/modules_plugin.h: src/misc/modules_plugin.h.in $(HEADERS_include)
#src/misc/modules_builtin.h: src/misc/modules_builtin.h.in vlc-config

include/vlc_symbols.h:
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes

141
142
# for some strange reasons (??) modules_plugin.h depends on vlc_symbols.h
# so we have to touch it :(
143
144
src/misc/modules_plugin.h: src/misc/modules_plugin.h.in
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes
145
	touch src/misc/modules_plugin.h
146
147

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

150
151
# These dependencies are mandatory
$(SOURCES): include/vlc_symbols.h
152
$(SOURCES_libvlc): src/misc/modules_plugin.h src/misc/modules_builtin.h $(LIB_intl)
153

154
155
156
157
158
###############################################################################
# Optional libintl - FIXME, bad dependencies
###############################################################################

intl/libintl.a: FORCE
Sam Hocevar's avatar
Sam Hocevar committed
159
	cd $(top_builddir)/intl && $(MAKE) $(AM_MAKEFLAGS)
160
161
162
163
164

if BUILD_INTL
LIB_intl = intl/libintl.a
endif

165
166
167
168
169
170
171
172
###############################################################################
# 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 \
hartman's avatar
hartman committed
173
174
	extras/MacOSX/Resources/English.lproj/About.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/About.nib/info.nib \
175
	extras/MacOSX/Resources/English.lproj/About.nib/keyedobjects.nib \
hartman's avatar
hartman committed
176
177
	extras/MacOSX/Resources/English.lproj/Open.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/Open.nib/info.nib \
178
	extras/MacOSX/Resources/English.lproj/Open.nib/keyedobjects.nib \
hartman's avatar
hartman committed
179
180
	extras/MacOSX/Resources/English.lproj/Preferences.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/Preferences.nib/info.nib \
181
	extras/MacOSX/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
182
	extras/MacOSX/Resources/English.lproj/InfoPlist.strings \
183
184
185
186
187
188
189
190
	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 \
191
	extras/MacOSX/Resources/divx.icns \
192
	extras/MacOSX/Resources/dv.icns \
193
	extras/MacOSX/Resources/generic.icns \
194
195
196
197
	extras/MacOSX/Resources/m3u.icns \
	extras/MacOSX/Resources/mov.icns \
	extras/MacOSX/Resources/mp3.icns \
	extras/MacOSX/Resources/mp4.icns \
198
199
200
201
	extras/MacOSX/Resources/mpeg.icns \
	extras/MacOSX/Resources/mpeg1.icns \
	extras/MacOSX/Resources/mpeg2.icns \
	extras/MacOSX/Resources/mpeg4.icns \
202
203
204
205
206
207
	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 \
208
	extras/MacOSX/Resources/vlc.icns \
209
210
211
	extras/MacOSX/Resources/vob.icns \
	extras/MacOSX/Resources/wma.icns \
	extras/MacOSX/Resources/wmv.icns \
212
	extras/MacOSX/Resources/pause.png \
213
	extras/MacOSX/Resources/pause_blue.png \
214
	extras/MacOSX/Resources/play.png \
215
	extras/MacOSX/Resources/play_blue.png \
216
	extras/MacOSX/Resources/stop.png \
217
218
219
220
	extras/MacOSX/Resources/stop_blue.png \
	extras/MacOSX/Resources/display.png \
	extras/MacOSX/Resources/display_slider.png \
	extras/MacOSX/Resources/display_track.png \
221
222
	extras/MacOSX/Resources/equalizerdrawer_active.png \
	extras/MacOSX/Resources/equalizerdrawer_blue.png \
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
	extras/MacOSX/Resources/fullscreen_active.png \
	extras/MacOSX/Resources/fullscreen_blue.png \
	extras/MacOSX/Resources/next_active.png \
	extras/MacOSX/Resources/next_blue.png \
	extras/MacOSX/Resources/playlistdrawer_active.png \
	extras/MacOSX/Resources/playlistdrawer_blue.png \
	extras/MacOSX/Resources/previous_active.png \
	extras/MacOSX/Resources/previous_blue.png \
	extras/MacOSX/Resources/skip_forward_active.png \
	extras/MacOSX/Resources/skip_forward_blue.png \
	extras/MacOSX/Resources/skip_previous_active.png \
	extras/MacOSX/Resources/skip_previous_blue.png \
	extras/MacOSX/Resources/volume_high.png \
	extras/MacOSX/Resources/volume_low.png \
	extras/MacOSX/Resources/volumeslider_blue.png \
	extras/MacOSX/Resources/volumeslider_normal.png \
	extras/MacOSX/Resources/volumetrack.png \
240
	extras/MacOSX/Resources/about_bg.png \
241
	extras/MacOSX/Resources/vlc.scriptSuite \
242
	extras/MacOSX/Resources/vlc.scriptTerminology \
243
	extras/MacOSX/Resources/README \
244
	extras/MacOSX/vlc.pbproj/project.pbxproj \
245
	extras/MacOSX/macosx-dmg \
246
247
248
	$(NULL)

###############################################################################
249
# MS Visual Studio and eMbedded Visual Studio projects
250
251
252
253
###############################################################################

EXTRA_DIST += \
	msvc/vlc.dsw \
254
255
	msvc/libvlc.dsp.in \
	msvc/plugins.dsp.in \
256
	msvc/vlc.dsp.in \
257
	msvc/config.h.in \
258
	msvc/modules_builtin_msvc.h \
259
	evc/vlc.vcw \
260
	evc/libvlc.vcp.in \
261
	evc/vlc.vcp.in \
262
	evc/plugins.vcp.in \
263
	evc/errno.h \
264
	evc/config.h.in \
265
	evc/modules_builtin_evc.h \
266
267
	$(NULL)

gbazin's avatar
   
gbazin committed
268
dist-hook:
Sam Hocevar's avatar
Sam Hocevar committed
269
	cd $(distdir) && srcdir=$(srcdir) $(srcdir)/toolbox --update-vc
270
	distdir=$(distdir) srcdir=$(srcdir) $(srcdir)/toolbox --dist-contrib
gbazin's avatar
   
gbazin committed
271

272
273
274
275
276
###############################################################################
# Building libvlc
###############################################################################

bin_SCRIPTS = vlc-config
277
278
279
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
	cd $(top_builddir) && $(SHELL) ./config.status --file=$@
	-cd $(top_builddir) && chmod 0755 $@
280

281
282
283
284
$(SOURCES): vlc-config

CLEANFILES = $(BUILT_SOURCES)

Sam Hocevar's avatar
Sam Hocevar committed
285
lib_LIBRARIES = lib/libvlc.a $(LIBRARIES_libvlc_pic)
286
287

lib_libvlc_a_SOURCES = $(SOURCES_libvlc)
gbazin's avatar
   
gbazin committed
288
dist_lib_libvlc_a_SOURCES = src/misc/modules_plugin.h
Sam Hocevar's avatar
Sam Hocevar committed
289
290
291
lib_libvlc_a_CFLAGS = `$(VLC_CONFIG) --cflags vlc`
lib_libvlc_a_CXXFLAGS = `$(VLC_CONFIG) --cxxflags vlc`
lib_libvlc_a_OBJCFLAGS = `$(VLC_CONFIG) --objcflags vlc`
292
293

lib_libvlc_pic_a_SOURCES = $(SOURCES_libvlc)
Sam Hocevar's avatar
Sam Hocevar committed
294
295
296
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`
297
298

if HAVE_BEOS
299
OPT_SOURCES_libvlc_beos = $(SOURCES_libvlc_beos)
300
301
endif
if HAVE_DARWIN
302
OPT_SOURCES_libvlc_darwin = $(SOURCES_libvlc_darwin)
303
304
endif
if HAVE_WIN32
305
OPT_SOURCES_libvlc_win32 = $(SOURCES_libvlc_win32)
306
endif
307
308
309
if HAVE_WINCE
OPT_SOURCES_libvlc_win32 = $(SOURCES_libvlc_win32)
endif
310
if BUILD_DIRENT
311
OPT_SOURCES_libvlc_dirent = $(SOURCES_libvlc_dirent)
312
313
endif
if BUILD_GETOPT
314
OPT_SOURCES_libvlc_getopt = $(SOURCES_libvlc_getopt)
315
endif
316
if BUILD_MOZILLA
317
if !HAVE_WIN32
318
319
LIBRARIES_libvlc_pic = lib/libvlc_pic.a
endif
320
endif
321
322

EXTRA_DIST += \
323
324
325
326
327
	$(SOURCES_libvlc_beos) \
	$(SOURCES_libvlc_darwin) \
	$(SOURCES_libvlc_win32) \
	$(SOURCES_libvlc_dirent) \
	$(SOURCES_libvlc_getopt) \
328
329
	$(NULL)

330
SOURCES_libvlc_beos = \
331
	src/misc/beos_specific.cpp \
332
333
	$(NULL)

334
SOURCES_libvlc_darwin = \
335
	src/misc/darwin_specific.m \
336
337
	$(NULL)

338
SOURCES_libvlc_win32 = \
339
340
341
	src/misc/win32_specific.c \
	$(NULL)

342
SOURCES_libvlc_dirent = \
343
344
345
	src/extras/dirent.c \
	$(NULL)

346
SOURCES_libvlc_getopt = \
347
348
349
350
351
	src/extras/getopt.c \
	src/extras/getopt.h \
	src/extras/getopt1.c \
	$(NULL)

352
SOURCES_libvlc_common = \
353
354
355
356
357
	src/libvlc.c \
	src/libvlc.h \
	src/interface/interface.c \
	src/interface/intf_eject.c \
	src/playlist/playlist.c \
zorglub's avatar
zorglub committed
358
359
	src/playlist/sort.c \
	src/playlist/loadsave.c \
zorglub's avatar
Fixes    
zorglub committed
360
	src/playlist/view.c \
zorglub's avatar
zorglub committed
361
	src/playlist/item.c \
362
	src/playlist/item-ext.c \
zorglub's avatar
zorglub committed
363
	src/playlist/services_discovery.c \
Laurent Aimar's avatar
Laurent Aimar committed
364
365
	src/input/access.c \
	src/input/clock.c \
gbazin's avatar
gbazin committed
366
	src/input/control.c \
Laurent Aimar's avatar
Laurent Aimar committed
367
368
	src/input/decoder.c \
	src/input/demux.c \
369
	src/input/es_out.c \
Laurent Aimar's avatar
Laurent Aimar committed
370
371
	src/input/input.c \
	src/input/input_internal.h \
372
	src/input/stream.c \
373
	src/input/mem_stream.c \
374
	src/input/subtitles.c \
Laurent Aimar's avatar
Laurent Aimar committed
375
	src/input/var.c \
376
377
378
379
	src/video_output/video_output.c \
	src/video_output/vout_pictures.c \
	src/video_output/vout_pictures.h \
	src/video_output/video_text.c \
380
	src/video_output/video_widgets.c \
381
	src/video_output/vout_subpictures.c \
382
	src/video_output/vout_synchro.c \
gbazin's avatar
gbazin committed
383
	src/video_output/vout_intf.c \
384
385
386
387
388
389
390
391
	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 \
zorglub's avatar
zorglub committed
392
393
	src/stream_output/announce.c \
	src/stream_output/sap.c \
394
	src/misc/charset.c \
Laurent Aimar's avatar
Laurent Aimar committed
395
	src/misc/httpd.c \
396
	src/misc/tls.c \
397
	src/misc/md5.c \
398
	src/misc/mtime.c \
399
	src/misc/block.c \
400
401
402
403
	src/misc/modules.c \
	src/misc/threads.c \
	src/misc/cpu.c \
	src/misc/configuration.c \
404
	src/misc/image.c \
405
	src/misc/iso_lang.c \
406
	src/misc/iso-639_def.h \
407
408
	src/misc/messages.c \
	src/misc/objects.c \
Sam Hocevar's avatar
Sam Hocevar committed
409
	src/misc/variables.c \
410
	src/misc/error.c \
Laurent Aimar's avatar
   
Laurent Aimar committed
411
	src/misc/net.c \
412
	src/misc/getaddrinfo.c \
413
	src/misc/vlm.c \
gbazin's avatar
gbazin committed
414
	src/misc/xml.c \
415
	src/extras/libc.c \
zorglub's avatar
zorglub committed
416
417
418
	src/control/core.c \
	src/control/util.c \
	src/control/audio_video.c \
419
420
421
422
423
424
425
426
427
	$(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) \
428
	$(NULL)
429
430
431
432
433

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

Sam Hocevar's avatar
Sam Hocevar committed
434
bin_PROGRAMS = vlc
435

436
vlc_SOURCES = src/vlc.c
437

438
439
# Work around a bug in the arm-wince-pe linker
if HAVE_WINCE
gbazin's avatar
gbazin committed
440
vlc_WORKAROUNDLDFLAGS = lib/libvlc.a
441
442
endif

gbazin's avatar
gbazin committed
443
444
445
446
vlc_LDFLAGS = `$(VLC_CONFIG) --libs vlc builtin` $(vlc_WORKAROUNDLDFLAGS)
vlc_LDADD = lib/libvlc.a $(DATA_win32_rc) $(LIB_intl)
vlc_CFLAGS = `$(VLC_CONFIG) --cflags vlc`

447
448
# 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
449
DEPENDENCIES_vlc = lib/libvlc.a $(DATA_win32_rc) $(LIB_intl)
450

Sam Hocevar's avatar
Sam Hocevar committed
451
452
vlc$(EXEEXT): $(vlc_OBJECTS) $(DEPENDENCIES_vlc) stamp-builtin
	@rm -f $(top_builddir)/vlc$(EXEEXT)
453
454
455
456
	@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
457
	esac
Eric Petit's avatar
Eric Petit committed
458

459
if HAVE_BEOS
460
noinst_DATA = vlc-bundle
461
vlc-bundle: vlc
Sam Hocevar's avatar
Sam Hocevar committed
462
463
464
	rm -Rf $(top_builddir)/vlc-bundle ; mkdir -p $(top_builddir)/vlc-bundle
	cp $(top_builddir)/vlc $(top_builddir)/vlc-bundle/
	xres -o $(top_builddir)/vlc-bundle/vlc $(srcdir)/share/vlc_beos.rsrc
465
466
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
467
468
	    mkdir -p $(top_builddir)/vlc-bundle/plugins ; \
	    cp "$$i$(LIBEXT)" $(top_builddir)/vlc-bundle/plugins/ ; \
469
470
	  fi ; \
	done
Sam Hocevar's avatar
Sam Hocevar committed
471
472
473
474
	if test -d $(top_builddir)/extras/contrib/vlc-lib ; then \
	  mkdir -p $(top_builddir)/vlc-bundle/lib ; \
	  for i in $(top_builddir)/extras/contrib/vlc-lib/*.so ; do \
	    cp $$i $(top_builddir)/vlc-bundle/lib/ ; \
475
476
	  done ; \
	fi
Eric Petit's avatar
Eric Petit committed
477
	for i in $(ALL_LINGUAS); do \
Sam Hocevar's avatar
Sam Hocevar committed
478
479
480
	  mkdir -p "$(top_builddir)/vlc-bundle/locale/$$i/LC_MESSAGES" ; \
	  cp "$(top_builddir)/po/$$i.gmo" \
	    "$(top_builddir)/vlc-bundle/locale/$$i/LC_MESSAGES/vlc.mo" || true ; \
Eric Petit's avatar
Eric Petit committed
481
	done
Sam Hocevar's avatar
Sam Hocevar committed
482
	find $(top_builddir)/vlc-bundle -type f -exec mimeset -f "{}" \;
483
484
endif

Sam Hocevar's avatar
Sam Hocevar committed
485
# Install the modules and the symlinks
486
install-exec-local:
Sam Hocevar's avatar
Sam Hocevar committed
487
	for i in "" `$(VLC_CONFIG) --target plugin` ; do if test -n "$$i" ; then \
488
489
	  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
490
	fi ; done
491
	for i in "" `$(VLC_CONFIG) --target builtin` ; do if test -n "$$i" ; then \
492
	  echo $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
493
	  $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
Sam Hocevar's avatar
Sam Hocevar committed
494
	fi ; done
495
496
497
498
499
500
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
501
	for i in "" $(ALIASES) ; do if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
502
503
	  rm -f "$(DESTDIR)$(bindir)/$$i" && \
	  ln -s vlc "$(DESTDIR)$(bindir)/$$i" ; \
504
505
506
507
	fi ; done

if HAVE_DARWIN
# Create the MacOS X app
hartman's avatar
hartman committed
508
vlc_app_DATA = VLC.app
509
vlc_appdir = $(bindir)
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
# VLC-release.app is the old VLC.app target
VLC-release.app: vlc
	@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-release.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 \
	    equalizer.h \
	    equalizer.m \
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
	    playlistinfo.h \
	    playlistinfo.m \
	    prefs_widgets.h \
	    prefs_widgets.m \
	    prefs.h \
	    prefs.m \
	    vout.h \
	    voutqt.m \
	    voutgl.m \
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
	cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)'
	cp -r $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
	      $(top_builddir)/VLC-release.app
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
	$(INSTALL) $(top_builddir)/vlc \
		   $(top_builddir)/VLC-release.app/Contents/MacOS/VLC
	ln -sf ./VLC $(top_builddir)/VLC-release.app/Contents/MacOS/clivlc
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/modules
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; \
	    then $(INSTALL) "$$i$(LIBEXT)" \
			   "$(top_builddir)/VLC-release.app/Contents/MacOS/modules" ; \
	  fi ; done
	if test -d $(top_builddir)/extras/contrib/vlc-lib; then \
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/MacOS/lib ; \
	  for i in $(top_builddir)/extras/contrib/vlc-lib/*.dylib ; do \
	    $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/lib/vlc_`basename $${i}` ; \
	  done ; \
	fi
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http
	for i in $(srcdir)/share/http/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/`basename $${i}` ; \
	done ; \
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/vlm
	for i in $(srcdir)/share/http/vlm/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/vlm/`basename $${i}` ; \
	done ; \
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/admin
	for i in $(srcdir)/share/http/admin/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/admin/`basename $${i}` ; \
	done ; \
	$(INSTALL) -m 644 $(srcdir)/share/http/admin/.access $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/admin/.access
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/locale
	for i in $(ALL_LINGUAS); do \
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
	  cp $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/InfoPlist.strings \
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/MainMenu.nib \
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/vlc.scriptTerminology \
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	done
	printf "APPLVLC#" >| $(top_builddir)/VLC-release.app/Contents/PkgInfo

Sam Hocevar's avatar
Sam Hocevar committed
608
VLC.app: vlc
Loïc Minier's avatar
Loïc Minier committed
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
	@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 \
631
632
	    equalizer.h \
	    equalizer.m \
Loïc Minier's avatar
Loïc Minier committed
633
634
635
636
637
638
639
640
641
642
643
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
644
645
	    playlistinfo.h \
	    playlistinfo.m \
646
647
	    prefs_widgets.h \
	    prefs_widgets.m \
Loïc Minier's avatar
Loïc Minier committed
648
649
650
	    prefs.h \
	    prefs.m \
	    vout.h \
hartman's avatar
hartman committed
651
652
	    voutqt.m \
	    voutgl.m \
Loïc Minier's avatar
Loïc Minier committed
653
654
655
656
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
657
	cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)'
658
	cp -r $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
Loïc Minier's avatar
Loïc Minier committed
659
660
661
662
663
	      $(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
hartman's avatar
hartman committed
664
	ln -sf ./VLC $(top_builddir)/VLC.app/Contents/MacOS/clivlc
Loïc Minier's avatar
Loïc Minier committed
665
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/modules
Sam Hocevar's avatar
Sam Hocevar committed
666
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
Loïc Minier's avatar
Loïc Minier committed
667
	  if test -n "$$i" ; \
668
	    then ln -sfn "`pwd`/$$i$(LIBEXT)" \
Loïc Minier's avatar
Loïc Minier committed
669
			   "$(top_builddir)/VLC.app/Contents/MacOS/modules" ; \
Sam Hocevar's avatar
Sam Hocevar committed
670
	  fi ; done
671
	if test -d $(top_builddir)/extras/contrib/vlc-lib; then \
672
673
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/lib ; \
	  for i in $(top_builddir)/extras/contrib/vlc-lib/*.dylib ; do \
674
	    ln -sfn `pwd`/$${i} $(top_builddir)/VLC.app/Contents/MacOS/lib/vlc_`basename $${i}` ; \
675
	  done ; \
676
	fi
677
	ln -sfn `pwd`/share $(top_builddir)/VLC.app/Contents/MacOS/
Loïc Minier's avatar
Loïc Minier committed
678
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/locale
679
	for i in $(ALL_LINGUAS); do \
Loïc Minier's avatar
Loïc Minier committed
680
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
681
	  ln -sfn `pwd`/po/$${i}.gmo $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
Loïc Minier's avatar
Loïc Minier committed
682
683
684
685
686
	  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 ; \
687
	done
Loïc Minier's avatar
Loïc Minier committed
688
	printf "APPLVLC#" >| $(top_builddir)/VLC.app/Contents/PkgInfo
689
690
691
endif

if HAVE_WIN32
692
DATA_win32_rc = $(noinst_share_vlc_win32_rc_DATA)
693
694
695
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
696
	$(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 $@
697
698
endif

699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
###############################################################################
# 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); }; }

717
718
719
720
721
722
723
###############################################################################
# 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.
#
gbazin's avatar
   
gbazin committed
724
package-win32-base:
725
# Check that tmp isn't in the way
726
727
	@if test -e "$(top_builddir)/vlc-${VERSION}"; then \
	  echo "Error: please remove $(top_builddir)/vlc-${VERSION}, it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
728
	  false; \
729
	else \
730
	  echo "OK."; mkdir -p "$(top_builddir)/vlc-${VERSION}"; \
731
	fi
732

733
# Copy relevant files
734
735
736
737
	cp "$(srcdir)/vlc.win32.nsi" "$(top_builddir)/vlc-${VERSION}/"
	cp "$(top_builddir)/vlc$(EXEEXT)" "$(top_builddir)/vlc-${VERSION}/"
	cp "$(top_srcdir)/vlc.exe.manifest" "$(top_builddir)/vlc-${VERSION}/"
	$(STRIP) "$(top_builddir)/vlc-${VERSION}/vlc$(EXEEXT)"
738

gbazin's avatar
   
gbazin committed
739
	for file in AUTHORS MAINTAINERS THANKS NEWS COPYING README ; \
740
741
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; \
	  unix2dos "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; done
gbazin's avatar
   
gbazin committed
742

743
	mkdir -p "$(top_builddir)/vlc-${VERSION}/plugins"
Sam Hocevar's avatar
Sam Hocevar committed
744
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
Sam Hocevar's avatar
Sam Hocevar committed
745
	  if test -n "$$i" ; then \
746
747
	    $(INSTALL) "$(top_builddir)/$$i$(LIBEXT)" \
            "$(top_builddir)/vlc-${VERSION}/plugins/" ; \
Sam Hocevar's avatar
Sam Hocevar committed
748
	  fi ; done
gbazin's avatar
   
gbazin committed
749

750
	for i in "" $(top_builddir)/vlc-${VERSION}/plugins/*$(LIBEXT) ; \
751
	  do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done
gbazin's avatar
   
gbazin committed
752

753
	mkdir $(top_builddir)/vlc-${VERSION}/locale
gbazin's avatar
   
gbazin committed
754
	for i in $(ALL_LINGUAS); do \
755
	  mkdir -p "$(top_builddir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
756
	  cp "$(srcdir)/po/$${i}.gmo" \
757
	    "$(top_builddir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES/vlc.mo" \
gbazin's avatar
   
gbazin committed
758
            || true ; \
gbazin's avatar
   
gbazin committed
759
760
	done

761
	mkdir -p $(top_builddir)/vlc-${VERSION}/skins/fonts
762
	for i in $(srcdir)/share/skins2/fonts/*.*; do \
763
	  cp $$i $(top_builddir)/vlc-${VERSION}/skins/fonts/ || true ; \
764
	done
765
	for i in $(srcdir)/share/skins2/*.*; do \
766
	  cp $$i $(top_builddir)/vlc-${VERSION}/skins/ || true ; \
767
	done
gbazin's avatar
   
gbazin committed
768

769
770
771
	mkdir -p "$(top_builddir)/vlc-${VERSION}/http/admin"
	mkdir -p "$(top_builddir)/vlc-${VERSION}/http/vlm"
	cp $(srcdir)/share/http/*.html $(top_builddir)/vlc-${VERSION}/http/ ;
772
	unix2dos $(top_builddir)/vlc-${VERSION}/http/*.html ;
773
	cp $(srcdir)/share/http/*.css $(top_builddir)/vlc-${VERSION}/http/ ;
774
775
776
	unix2dos $(top_builddir)/vlc-${VERSION}/http/*.css ;
	cp $(srcdir)/share/http/*.png $(top_builddir)/vlc-${VERSION}/http/
	cp $(srcdir)/share/http/*.ico $(top_builddir)/vlc-${VERSION}/http/ ;
gbazin's avatar
   
gbazin committed
777
	cp $(srcdir)/share/http/admin/*.html \
778
           $(top_builddir)/vlc-${VERSION}/http/admin/ ;
779
	unix2dos $(top_builddir)/vlc-${VERSION}/http/admin/*.html ;
gbazin's avatar
   
gbazin committed
780
	cp $(srcdir)/share/http/admin/.access \
781
           $(top_builddir)/vlc-${VERSION}/http/admin/ ;
782
	unix2dos $(top_builddir)/vlc-${VERSION}/http/admin/.access ;
783
	cp $(srcdir)/share/http/vlm/*.html \
784
           $(top_builddir)/vlc-${VERSION}/http/vlm/ ;
785
	unix2dos $(top_builddir)/vlc-${VERSION}/http/vlm/*.html ;
gbazin's avatar
   
gbazin committed
786

787
	cp $(srcdir)/share/vlc48x48.ico $(top_builddir)/vlc-${VERSION}/ ;
788

789
	mkdir -p "$(top_builddir)/vlc-${VERSION}/mozilla"
gbazin's avatar
   
gbazin committed
790
if BUILD_MOZILLA
791
792
793
	cp $(top_builddir)/mozilla/*$(LIBEXT) $(top_builddir)/vlc-${VERSION}/mozilla/ ;
	$(STRIP) $(top_builddir)/vlc-${VERSION}/mozilla/*$(LIBEXT);
	cp $(top_builddir)/mozilla/vlcintf.xpt  $(top_builddir)/vlc-${VERSION}/mozilla/ ;
gbazin's avatar
   
gbazin committed
794
795
endif

796
797
798
799
800
801
802
803
804
	mkdir -p "$(top_builddir)/vlc-${VERSION}/activex"
if BUILD_ACTIVEX
	cp $(top_builddir)/activex/README.TXT  $(top_builddir)/vlc-${VERSION}/activex/ ;
	cp $(top_builddir)/activex/test.html  $(top_builddir)/vlc-${VERSION}/activex/ ;
	unix2dos $(top_builddir)/vlc-${VERSION}/activex/* ;

	cp $(top_builddir)/activex/*$(LIBEXT) $(top_builddir)/vlc-${VERSION}/activex/ ;
	$(STRIP) $(top_builddir)/vlc-${VERSION}/activex/*$(LIBEXT);
endif
805
806
807
808
# Rebase all those DLLs to speed up loading (need cygwin rebase)
	if [ -x rebase ]; then \
		find $(top_builddir)/vlc-${VERSION} -type f -name '*.dll' -print | rebase -b 0x70000000 -T -; \
	fi
809

gbazin's avatar
   
gbazin committed
810
package-win32-base-exe:
811
# Create package
gbazin's avatar
   
gbazin committed
812
	wine ~/.wine/fake_windows/Program\ Files/NSIS/makensis.exe \
813
814
815
816
817
818
             /DVERSION=${VERSION} $(top_builddir)/vlc-${VERSION}/vlc.win32.nsi

package-win32-base-exe-cygwin:
# Create package
	C:/Program\ Files/NSIS/makensis.exe \
             /DVERSION=${VERSION} $(top_builddir)/vlc-${VERSION}/vlc.win32.nsi
gbazin's avatar
   
gbazin committed
819

820
821
822
823
package-win32-base-exe-linux:
# Create package
	makensis -DVERSION=${VERSION} $(top_builddir)/vlc-${VERSION}/vlc.win32.nsi

gbazin's avatar
   
gbazin committed
824
package-win32-base-zip:
825
# Create package 
gbazin's avatar
   
gbazin committed
826
	zip -r vlc-${VERSION}-win32.zip vlc-${VERSION}
gbazin's avatar
   
gbazin committed
827
828
829

package-win32-exe: package-win32-base package-win32-base-exe
# Clean up
830
	rm -Rf $(top_builddir)/vlc-${VERSION}
gbazin's avatar
   
gbazin committed
831

832
833
834
835
package-win32-exe-linux: package-win32-base package-win32-base-exe-linux
# Clean up
	rm -Rf $(top_builddir)/vlc-${VERSION}

gbazin's avatar
   
gbazin committed
836
837
package-win32-zip: package-win32-base package-win32-base-zip
# Clean up
838
	rm -Rf $(top_builddir)/vlc-${VERSION}
gbazin's avatar
   
gbazin committed
839
840

package-win32: package-win32-base package-win32-base-exe package-win32-base-zip
841
# Clean up
842
	rm -Rf $(top_builddir)/vlc-${VERSION}
843
844
845

package-beos:
# Check that tmp isn't in the way
846
	@if test -e $(srcdir)/tmp; then \
Sam Hocevar's avatar
Sam Hocevar committed
847
	  echo "Error: please remove $(srcdir)/tmp, it is in the way"; \
848
	  false ; \
849
	else \
850
	  echo "OK." ; mkdir $(srcdir)/tmp ; \
851
	fi
852

853
# Copy relevant files
854
	mkdir -p $(srcdir)/tmp/vlc ;
855
856
857
858
859
860
861
862
863
864
	cd $(srcdir) && cp -R vlc-bundle/* AUTHORS COPYING ChangeLog README \
	  THANKS NEWS tmp/vlc/ ;

# Create debug package
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc ;
	find $(srcdir)/tmp/vlc -exec mimeset -f {} \; ;
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-${VERSION} ;
	(cd $(srcdir)/tmp ; zip -9 -r vlc-${VERSION}-BeOS-debug.zip vlc-${VERSION} )
	mv $(srcdir)/tmp/vlc-${VERSION}-BeOS-debug.zip $(srcdir)/ ;
	mv $(srcdir)/tmp/vlc-${VERSION} $(srcdir)/tmp/vlc ;
865

866
# Create normal package
867
868
	$(STRIP) --strip-debug --strip-unneeded $(srcdir)/tmp/vlc/vlc ;
	find $(srcdir)/tmp/vlc -name 'lib*.so' -exec $(STRIP) \
869
	  --strip-debug --strip-unneeded "{}" \; ;
870
871
872
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc ;
	find $(srcdir)/tmp/vlc -exec mimeset -f {} \; ;
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-${VERSION} ;
873
	(cd $(srcdir)/tmp ; zip -9 -r vlc-${VERSION}-BeOS.zip vlc-${VERSION} )
874
	mv $(srcdir)/tmp/vlc-${VERSION}-BeOS.zip $(srcdir)/ ;
875

876
# Clean up
877
	rm -Rf $(srcdir)/tmp ;
878
879
880

package-macosx:
# Check that tmp isn't in the way
Loïc Minier's avatar
Loïc Minier committed
881
882
	@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
883
	  false; \
884
	else \
Loïc Minier's avatar
Loïc Minier committed
885
	  echo "OK."; mkdir -p "$(top_builddir)/tmp"; \
886
887
888
	fi

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

# Create disk image 
893
	$(srcdir)/extras/MacOSX/macosx-dmg "vlc-${VERSION}" $(top_builddir)/tmp
894
895

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

898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
package-translations:
	@if test -e "$(srcdir)/vlc-translations-${VERSION}"; then \
	  echo "Error: please remove $(srcdir)/vlc-translations-${VERSION}, it is in the way"; \
	  false; \
	else \
	  echo "OK."; mkdir -p "$(srcdir)/vlc-translations-${VERSION}"; \
	fi
# Copy translations
	for i in $(ALL_LINGUAS); do \
	  cp "$(srcdir)/po/$${i}.po" \
	    "$(srcdir)/vlc-translations-${VERSION}/$${i}.po" \
	    || true ; \
	done
	cp "$(srcdir)/doc/translations.txt" \
	  "$(srcdir)/vlc-translations-${VERSION}/README.txt"

	echo "#!/bin/sh" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo 'if test $$# != 1; then' >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "	echo \"Usage: convert-po.sh <.po file>\"" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "	exit 1" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "fi" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo 'msgfmt --statistics -o vlc.mo $$1' >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"

	$(AMTAR) chof - $(srcdir)/vlc-translations-$(VERSION) \
	  | GZIP=$(GZIP_ENV) gzip -c >$(srcdir)/vlc-translations-$(VERSION).tar.gz

Sam Hocevar's avatar
Sam Hocevar committed
926
927
928
###############################################################################
# Stamp rules
###############################################################################
929
clean: clean-stamp clean-recursive
Sam Hocevar's avatar
Sam Hocevar committed
930
clean-stamp:
931
	rm -f stamp-builtin stamp-api
Sam Hocevar's avatar
Sam Hocevar committed
932
933
934
935
936
937
938
939
940
941

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

942
943
944
945
stamp-api: Makefile $(HEADERS_include) vlc-config src/misc/modules_plugin.h.in src/misc/modules_builtin.h.in
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes
	touch stamp-api

946
947
948
949
###############################################################################
# Force rule
###############################################################################
FORCE: