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

5
6
# Pass --quiet to make when we are not verbose.
AM_MAKEFLAGS = $(makesilentflags_$(V))
Pierre's avatar
Pierre committed
7
makesilentflags_ = $(makesilentflags__$(AM_DEFAULT_VERBOSITY))
8
9
makesilentflags_0 = --quiet
makesilentflags__0 = $(makesilentflags_0)
10

11
12
13
# 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.
14
15
#  - src (libvlc) is nedeed by modules, mozilla and bindings
#  - libs/* are needed by modules
16
BASE_SUBDIRS = po compat src bin modules share doc test
17
EXTRA_SUBDIRS = m4 extras/package/ipkg \
18
	libs/loader libs/srtp libs/unzip \
19
	projects/mozilla projects/activex
20
DIST_SUBDIRS = $(BASE_SUBDIRS) $(EXTRA_SUBDIRS)
21

22
SUBDIRS = po compat src
23
24
25
26
27
28
if LOADER
SUBDIRS += libs/loader
endif
if HAVE_LIBGCRYPT
SUBDIRS += libs/srtp
endif
29
if HAVE_ZLIB
30
if !HAVE_MINIZIP
31
32
SUBDIRS += libs/unzip
endif
33
endif
34
35
36
if BUILD_VLC
SUBDIRS += bin
endif
37
SUBDIRS += modules share doc test
38
39
40
41
if BUILD_MOZILLA
SUBDIRS += projects/mozilla
endif
if BUILD_ACTIVEX
42
SUBDIRS += projects/activex
43
endif
44

45
46
47
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
48
	INSTALL.wince \
49
	extras/package/win32/vlc.exe.manifest \
50
	extras/package/win32/libvlc.dll.manifest \
51
	MAINTAINERS \
52
	extras/package/macosx/README.MacOSX.rtf \
Sam Hocevar's avatar
Sam Hocevar committed
53
	vlc-config.in.in \
54
55
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
56
57
58
59
	extras/package/win32/vlc.win32.nsi.in \
	extras/package/win32/languages/declaration.nsh \
	extras/package/win32/languages/english.nsh \
	extras/package/win32/languages/french.nsh
60

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
61
dist_noinst_SCRIPTS = bootstrap toolbox
62
nodist_noinst_SCRIPTS = compile
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
63

64
BUILT_SOURCES_distclean = vlc-config extras/package/win32/vlc.win32.nsi
65
if HAVE_DARWIN
66
BUILT_SOURCES_clean = macosx-sdk
67
68
69
else
BUILT_SOURCES_clean =
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
70

71
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
72

73
74
SUFFIXES = 

75
76
DISTCHECK_CONFIGURE_FLAGS = \
	--enable-fast-install \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
77
	--disable-dbus \
78
	--disable-dvd --disable-mad --disable-libmpeg2 \
79
	--disable-ffmpeg --disable-faad --disable-skins2 \
80
	--disable-live555 \
81
	--disable-fribidi --disable-glx
82

83
ACLOCAL_AMFLAGS = -I m4
84
85
86
87
88
89
AUTOMAKE_OPTIONS = \
	1.9 \
	-Wall \
	check-news \
	dist-bzip2 \
	no-dist-gzip
Christophe Mutricy's avatar
Christophe Mutricy committed
90
#	std-options
91

92
93
ChangeLog: Makefile.am
	rm -f -- "$@"
94
	cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
95
	ln -sf doc/ChangeLog-2009 "$@"
96

97
98
99
100
101
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
102
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/designable.nib \
103
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
104
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/designable.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
105
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/keyedobjects.nib \
106
	extras/package/macosx/Resources/English.lproj/About.nib/designable.nib \
107
	extras/package/macosx/Resources/English.lproj/About.nib/keyedobjects.nib \
108
	extras/package/macosx/Resources/English.lproj/Open.nib/designable.nib \
109
	extras/package/macosx/Resources/English.lproj/Open.nib/keyedobjects.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
110
	extras/package/macosx/Resources/English.lproj/Preferences.nib/designable.nib \
111
	extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
112
	extras/package/macosx/Resources/English.lproj/Wizard.nib/designable.nib \
113
	extras/package/macosx/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
114
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/designable.nib \
115
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \
116
	extras/package/macosx/Resources/English.lproj/Extended.nib/designable.nib \
117
	extras/package/macosx/Resources/English.lproj/Extended.nib/keyedobjects.nib \
118
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/designable.nib \
119
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \
120
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/designable.nib \
121
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \
122
	extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
123
	extras/package/macosx/Resources/dsa_pub.pem \
124
125
	extras/package/macosx/Resources/aiff.icns \
	extras/package/macosx/Resources/audio.icns \
126
	extras/package/macosx/Resources/avi.icns \
127
	extras/package/macosx/Resources/flv.icns \
128
	extras/package/macosx/Resources/generic.icns \
129
130
131
	extras/package/macosx/Resources/m4a.icns \
	extras/package/macosx/Resources/m4v.icns \
	extras/package/macosx/Resources/mkv.icns \
132
	extras/package/macosx/Resources/mov.icns \
133
	extras/package/macosx/Resources/movie.icns \
134
135
136
	extras/package/macosx/Resources/mp3.icns \
	extras/package/macosx/Resources/mpeg.icns \
	extras/package/macosx/Resources/ogg.icns \
137
138
139
	extras/package/macosx/Resources/playlist.icns \
	extras/package/macosx/Resources/rm.icns \
	extras/package/macosx/Resources/subtitle.icns \
140
	extras/package/macosx/Resources/vob.icns \
141
142
	extras/package/macosx/Resources/wav.icns \
	extras/package/macosx/Resources/vlc.icns \
143
144
145
146
147
148
149
150
	extras/package/macosx/Resources/wma.icns \
	extras/package/macosx/Resources/wmv.icns \
	extras/package/macosx/Resources/pause.png \
	extras/package/macosx/Resources/pause_blue.png \
	extras/package/macosx/Resources/play.png \
	extras/package/macosx/Resources/play_blue.png \
	extras/package/macosx/Resources/stop.png \
	extras/package/macosx/Resources/stop_blue.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
151
152
153
	extras/package/macosx/Resources/display_left.png \
	extras/package/macosx/Resources/display_middle.png \
	extras/package/macosx/Resources/display_right.png \
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
	extras/package/macosx/Resources/display_slider.png \
	extras/package/macosx/Resources/display_track.png \
	extras/package/macosx/Resources/equalizerdrawer_active.png \
	extras/package/macosx/Resources/equalizerdrawer_blue.png \
	extras/package/macosx/Resources/fullscreen_active.png \
	extras/package/macosx/Resources/fullscreen_blue.png \
	extras/package/macosx/Resources/next_active.png \
	extras/package/macosx/Resources/next_blue.png \
	extras/package/macosx/Resources/playlistdrawer_active.png \
	extras/package/macosx/Resources/playlistdrawer_blue.png \
	extras/package/macosx/Resources/previous_active.png \
	extras/package/macosx/Resources/previous_blue.png \
	extras/package/macosx/Resources/skip_forward_active.png \
	extras/package/macosx/Resources/skip_forward_blue.png \
	extras/package/macosx/Resources/skip_previous_active.png \
	extras/package/macosx/Resources/skip_previous_blue.png \
	extras/package/macosx/Resources/volume_high.png \
	extras/package/macosx/Resources/volume_low.png \
	extras/package/macosx/Resources/volumeslider_blue.png \
	extras/package/macosx/Resources/volumeslider_normal.png \
	extras/package/macosx/Resources/volumetrack.png \
	extras/package/macosx/Resources/about_bg.png \
	extras/package/macosx/Resources/skip_forward_active_embedded.png \
	extras/package/macosx/Resources/play_embedded.png \
	extras/package/macosx/Resources/pause_embedded.png \
	extras/package/macosx/Resources/skip_previous_active_embedded.png \
	extras/package/macosx/Resources/pause_embedded_blue.png \
	extras/package/macosx/Resources/play_embedded_blue.png \
	extras/package/macosx/Resources/skip_forward_embedded_blue.png \
	extras/package/macosx/Resources/skip_previous_embedded_blue.png \
	extras/package/macosx/Resources/vlc.scriptSuite \
	extras/package/macosx/Resources/vlc.scriptTerminology \
	extras/package/macosx/Resources/README \
	extras/package/macosx/Resources/add_embedded.png \
	extras/package/macosx/Resources/add_embedded_blue.png \
	extras/package/macosx/Resources/repeat_embedded.png \
	extras/package/macosx/Resources/repeat_embedded_blue.png \
	extras/package/macosx/Resources/repeat_single_embedded_blue.png \
	extras/package/macosx/Resources/shuffle_embedded.png \
	extras/package/macosx/Resources/shuffle_embedded_blue.png \
	extras/package/macosx/Resources/fs_volume_slider_knob_highlight.png \
	extras/package/macosx/Resources/fs_volume_slider_knob.png \
	extras/package/macosx/Resources/fs_volume_slider_bar.png \
	extras/package/macosx/Resources/fs_volume_mute_highlight.png \
	extras/package/macosx/Resources/fs_volume_mute.png \
	extras/package/macosx/Resources/fs_volume_max_highlight.png \
	extras/package/macosx/Resources/fs_volume_max.png \
	extras/package/macosx/Resources/fs_time_slider_knob_highlight.png \
	extras/package/macosx/Resources/fs_time_slider_knob.png \
	extras/package/macosx/Resources/fs_time_slider.png \
	extras/package/macosx/Resources/fs_stop_highlight.png \
	extras/package/macosx/Resources/fs_stop.png \
	extras/package/macosx/Resources/fs_skip_previous_highlight.png \
	extras/package/macosx/Resources/fs_skip_previous.png \
	extras/package/macosx/Resources/fs_skip_next_highlight.png \
	extras/package/macosx/Resources/fs_skip_next.png \
	extras/package/macosx/Resources/fs_rewind_highlight.png \
	extras/package/macosx/Resources/fs_rewind.png \
	extras/package/macosx/Resources/fs_play_highlight.png \
	extras/package/macosx/Resources/fs_play.png \
	extras/package/macosx/Resources/fs_pause_highlight.png \
	extras/package/macosx/Resources/fs_pause.png \
	extras/package/macosx/Resources/fs_forward_highlight.png \
	extras/package/macosx/Resources/fs_forward.png \
	extras/package/macosx/Resources/fs_exit_fullscreen_highlight.png \
	extras/package/macosx/Resources/fs_exit_fullscreen.png \
	extras/package/macosx/Resources/fs_background.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
	extras/package/macosx/Resources/add_embedded_graphite.png \
	extras/package/macosx/Resources/equalizerdrawer_graphite.png \
	extras/package/macosx/Resources/fullscreen_graphite.png \
	extras/package/macosx/Resources/next_graphite.png \
	extras/package/macosx/Resources/pause_embedded_graphite.png \
	extras/package/macosx/Resources/pause_graphite.png \
	extras/package/macosx/Resources/play_embedded_graphite.png \
	extras/package/macosx/Resources/play_graphite.png \
	extras/package/macosx/Resources/playlistdrawer_graphite.png \
	extras/package/macosx/Resources/previous_graphite.png \
	extras/package/macosx/Resources/repeat_embedded_graphite.png \
	extras/package/macosx/Resources/repeat_single_embedded_graphite.png \
	extras/package/macosx/Resources/shuffle_embedded_graphite.png \
	extras/package/macosx/Resources/skip_forward_embedded_graphite.png \
	extras/package/macosx/Resources/skip_forward_graphite.png \
	extras/package/macosx/Resources/skip_previous_embedded_graphite.png \
	extras/package/macosx/Resources/skip_previous_graphite.png \
	extras/package/macosx/Resources/stop_graphite.png \
	extras/package/macosx/Resources/volumeslider_graphite.png \
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
	extras/package/macosx/Resources/backward_big_down.png \
	extras/package/macosx/Resources/backward_big.png \
	extras/package/macosx/Resources/eq_sm.pdf \
	extras/package/macosx/Resources/forward_big_down.png \
	extras/package/macosx/Resources/forward_big.png \
	extras/package/macosx/Resources/fs_sm.pdf \
	extras/package/macosx/Resources/list_sm.pdf \
	extras/package/macosx/Resources/next_sm.pdf \
	extras/package/macosx/Resources/pause_big_down.png \
	extras/package/macosx/Resources/pause_big.png \
	extras/package/macosx/Resources/play_big_down.png \
	extras/package/macosx/Resources/play_big.png \
	extras/package/macosx/Resources/prev_sm.pdf \
	extras/package/macosx/Resources/sidebarAdd.png \
	extras/package/macosx/Resources/sidebarRepeat.png \
	extras/package/macosx/Resources/sidebarRepeatOn.png \
	extras/package/macosx/Resources/sidebarRepeatOneOn.png \
	extras/package/macosx/Resources/sidebarResizeWidget.png \
	extras/package/macosx/Resources/sidebarShuffle.png \
	extras/package/macosx/Resources/sidebarShuffleOn.png \
	extras/package/macosx/Resources/sidebarStatusAreaBackground.png \
	extras/package/macosx/Resources/stop_sm.pdf \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
262
263
264
265
266
267
268
	extras/package/macosx/Resources/noart.png \
	extras/package/macosx/Resources/spref_cone_Audio_64.png \
	extras/package/macosx/Resources/spref_cone_Hotkeys_64.png \
	extras/package/macosx/Resources/spref_cone_Input_64.png \
	extras/package/macosx/Resources/spref_cone_Interface_64.png \
	extras/package/macosx/Resources/spref_cone_Subtitles_64.png \
	extras/package/macosx/Resources/spref_cone_Video_64.png \
269
270
271
272
273
274
275
276
277
278
	extras/package/macosx/fullscreen_panel.svg \
	extras/package/macosx/ub.sh \
	extras/package/macosx/vlc.xcodeproj/project.pbxproj \
	extras/package/macosx/Delete_Preferences.app/Contents/Info.plist \
	extras/package/macosx/Delete_Preferences.app/Contents/PkgInfo \
	extras/package/macosx/Delete_Preferences.app/Contents/MacOS/applet \
	extras/package/macosx/Delete_Preferences.app/Contents/Resources/description.rtfd/TXT.rtf \
	extras/package/macosx/Delete_Preferences.app/Contents/Resources/applet.icns \
	extras/package/macosx/Delete_Preferences.app/Contents/Resources/applet.rsrc \
	extras/package/macosx/Delete_Preferences.app/Contents/Resources/Scripts/main.scpt \
279
280
	extras/package/macosx/plugin/Info.plist.in \
	extras/package/macosx/plugin/InstallerInfo.plist.in \
281
282
	extras/package/macosx/plugin/InstallerDescription.plist \
	extras/package/macosx/plugin/pbdevelopment.plist \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
283
284
285
286
287
288
	extras/package/macosx/eyetvplugin/EyeTVPluginDefs.h \
	extras/package/macosx/eyetvplugin/Info.plist \
	extras/package/macosx/eyetvplugin/eyetvplugin.c \
	extras/package/macosx/eyetvplugin/eyetvplugin.h \
	extras/package/macosx/eyetvplugin/English.lproj/InfoPlist.strings \
	extras/package/macosx/eyetvplugin/eyetvplugin.xcodeproj/project.pbxproj \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
289
	extras/package/macosx/README.MacOSX.rtf \
290
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
291

292
293

###############################################################################
Rafaël Carré's avatar
Rafaël Carré committed
294
# Various utilities ( editor syntax files, D-Bus controller ... )
295
296
##############################################################################
EXTRA_DIST += \
297
	extras/analyser/zsh_completion.sh \
298
299
300
301
	extras/analyser/zsh.cpp \
	extras/analyser/emacs.init \
	extras/analyser/vlc.vim \
	extras/analyser/valgrind.suppressions \
302
	extras/buildsystem/make.pl \
303
304
	extras/misc/mpris.py \
	extras/misc/mpris.glade
305

gbazin's avatar
   
gbazin committed
306
dist-hook:
307
	distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
gbazin's avatar
   
gbazin committed
308

309
310
311
312
###############################################################################
# Building libvlc
###############################################################################

313
noinst_SCRIPTS = vlc-config
314
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
315
316
	$(SHELL) ./config.status --file=$@
	chmod 0755 $@
317
	touch $@
318

319
320
vlc-config.in: vlc-config.in.in
	./config.status --recheck
321
	touch $@
322

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
323
CLEANFILES = $(BUILT_SOURCES_clean)
324
325
DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile
MAINTAINERCLEANFILES = ChangeLog
326

327
# Shortcut for developers to rebuild the core (libvlc + vlc)
328
329
# Don't use it if you don't know what it is about.
# Don't complain if it doesn't work. -- Courmisch
330
331
332
333
libcompat:
	cd compat && $(MAKE) $(AM_MAKEFLAGS)

libvlc: libcompat
334
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
335

336
337
core: libvlc
	cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT)
338

339
340
341
342
doc:
	cd doc && $(MAKE) $(AM_MAKEFLAGS) doc

.PHONY: libvlc core doc
343

Christophe Mutricy's avatar
Christophe Mutricy committed
344
345
#To get some nice output
nice:
Christophe Mutricy's avatar
Christophe Mutricy committed
346
	$(top_builddir)/compile
Christophe Mutricy's avatar
Christophe Mutricy committed
347

348
if HAVE_BEOS
349
noinst_DATA = vlc-bundle
350
vlc-bundle: vlc
Sam Hocevar's avatar
Sam Hocevar committed
351
352
353
	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
354
355
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
356
357
	    mkdir -p $(top_builddir)/vlc-bundle/plugins ; \
	    cp "$$i$(LIBEXT)" $(top_builddir)/vlc-bundle/plugins/ ; \
358
359
	  fi ; \
	done
Sam Hocevar's avatar
Sam Hocevar committed
360
361
362
363
	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/ ; \
364
365
	  done ; \
	fi
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
366
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
367
	  mkdir -p "$(top_builddir)/vlc-bundle/share/locale/$$i/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
368
	  cp "$(top_builddir)/po/$$i.gmo" \
369
	    "$(top_builddir)/vlc-bundle/share/locale/$$i/LC_MESSAGES/vlc.mo" || true ; \
Eric Petit's avatar
Eric Petit committed
370
	done
Sam Hocevar's avatar
Sam Hocevar committed
371
	find $(top_builddir)/vlc-bundle -type f -exec mimeset -f "{}" \;
372
373
endif

374
375
376
377
###############################################################################
# Building aliases
###############################################################################

378
ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
379
bin_SCRIPTS = $(ALIASES)
380
CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
381
382
383
384
EXTRA_SCRIPTS = $(ALL_ALIASES)

dist_noinst_SCRIPTS += make-alias

385
MKALIAS = bindir="$(bindir)" transform="$(transform)" program_prefix="$(program_prefix)" program_suffix="$(program_suffix)" $(top_srcdir)/make-alias $@
386

387
cvlc: make-alias Makefile
388
389
	$(MKALIAS) dummy

390
rvlc: make-alias Makefile
391
392
	$(MKALIAS) rc

393
svlc: make-alias Makefile
394
395
	$(MKALIAS) skins2

396
qvlc: make-alias Makefile
397
398
	$(MKALIAS) qt4

399
nvlc: make-alias Makefile
400
	$(MKALIAS) ncurses
401

402
mvlc: make-alias Makefile
403
404
	$(MKALIAS) maemo

405
if BUILD_VLC
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
406
noinst_SCRIPTS += vlc$(EXEEXT)
407
endif
408

409
410
vlc$(EXEEXT):
	ln -sf bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
411

412
if HAVE_DARWIN
413
if BUILD_VLC
414
# Create the MacOS X app
415
noinst_DATA = VLC.app
416
endif
417
418
endif

419
420
421
silentstd = $(silentstd_$(V))
silentstd_ = $(silentstd__$(AM_DEFAULT_VERBOSITY))
silentstd_0 = 2>&1 >/dev/null
422
# '__' prefix trick for old automake version.
423
silentstd__0 = $(silentstd_0)
424

425
426
# VLC-release.app for packaging and giving it to your friends
# use package-macosx to get a nice dmg
427
VLC-release.app: vlc
428
	( cd src && $(MAKE) $(AM_MAKEFLAGS) install $(silentstd) )
429
	rm -Rf "$(top_builddir)/tmp"
430
	mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
431
	rm -Rf $(top_builddir)/VLC-release.app
432
	for i in vlc.xcodeproj Resources README.MacOSX.rtf ; do \
433
434
	  cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \
	done
435
	REVISION=`git describe --always` && \
436
437
438
	cat $(top_builddir)/extras/package/macosx/Info.plist | \
	sed "s/#REVISION#/$$REVISION/g" > $(top_builddir)/tmp/extras/package/macosx/Info.plist
	cp -R $(top_builddir)/extras/package/macosx/Resources $(top_builddir)/tmp/extras/package/macosx/
439
	for i in AUTHORS COPYING THANKS; do \
440
441
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
442
443
	mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle
	cp -R $(top_srcdir)/extras/contrib/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle
444
445
446
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
447
448
	    AppleRemote.h \
	    AppleRemote.m \
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
	    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 \
474
475
	    simple_prefs.h \
	    simple_prefs.m \
476
477
	    vout.h \
	    voutgl.m \
478
479
	    wizard.h \
	    wizard.m \
480
481
	    extended.h \
	    extended.m \
Jean-Paul Saman's avatar
Jean-Paul Saman committed
482
483
	    bookmarks.h \
	    bookmarks.m \
484
485
	    coredialogs.h \
	    coredialogs.m \
486
487
	    embeddedwindow.h \
	    embeddedwindow.m \
488
489
	    fspanel.h \
	    fspanel.m \
490
491
492
493
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
494
	$(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
495
        xcodebuild -target vlc $(silentstd) && \
496
497
	cd ../../../../ && \
	cp -R $(top_builddir)/tmp/extras/package/macosx/build/Default/VLC.bundle $(top_builddir)/VLC-release.app; \
498
499
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
500
	PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh
501
502
503
504
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua
	for i in $(srcdir)/share/lua/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/`basename $${i}` ; \
	done ; \
505
506
507
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/playlist
	for i in $(srcdir)/share/lua/playlist/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/playlist/`basename $${i}` ; \
508
	done ; \
509
510
511
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/meta
	for i in $(srcdir)/share/lua/meta/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/meta/`basename $${i}` ; \
512
	done ; \
513
514
515
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf
	for i in $(srcdir)/share/lua/intf/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf/`basename $${i}` ; \
516
	done ; \
517
518
519
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf/modules
	for i in $(srcdir)/share/lua/intf/modules/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf/modules/`basename $${i}` ; \
520
	done ; \
dionoea's avatar
dionoea committed
521
522
523
524
525
526
527
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/dialogs
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/js
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/images
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests
	$(INSTALL) -m 644 $(srcdir)/share/lua/http/.hosts $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/.hosts
	for i in $(srcdir)/share/lua/http/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/`basename $${i}` ; \
528
	done
dionoea's avatar
dionoea committed
529
530
	for i in $(srcdir)/share/lua/http/dialogs/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/dialogs/`basename $${i}` ; \
531
	done
dionoea's avatar
dionoea committed
532
533
	for i in $(srcdir)/share/lua/http/js/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/js/`basename $${i}` ; \
534
	done
dionoea's avatar
dionoea committed
535
536
	for i in $(srcdir)/share/lua/http/images/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/images/`basename $${i}` ; \
537
	done
dionoea's avatar
dionoea committed
538
539
	for i in $(srcdir)/share/lua/http/requests/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests/`basename $${i}` ; \
540
	done
dionoea's avatar
dionoea committed
541
	$(INSTALL) -m 644 $(srcdir)/share/lua/http/requests/readme $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests/readme.txt
542
543
544
545
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/dialogs
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/js
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/images
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/requests
546
	$(INSTALL) -m 644 $(srcdir)/share/http/.hosts $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/.hosts
547
	for i in $(srcdir)/share/http/*.* ; do \
548
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/`basename $${i}` ; \
549
	done
550
551
	for i in $(srcdir)/share/http/dialogs/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/dialogs/`basename $${i}` ; \
552
	done
553
554
	for i in $(srcdir)/share/http/js/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/js/`basename $${i}` ; \
555
	done
556
557
	for i in $(srcdir)/share/http/images/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/images/`basename $${i}` ; \
558
	done
559
560
	for i in $(srcdir)/share/http/requests/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/requests/`basename $${i}` ; \
561
	done
562
	$(INSTALL) -m 644 $(srcdir)/share/http/requests/readme $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/requests/readme.txt
563
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
564
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
565
566
	  $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \
	  $(INSTALL) $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
567
568
569
570
571
572
573
	  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 ; \
	done
	printf "APPLVLC#" >| $(top_builddir)/VLC-release.app/Contents/PkgInfo
574
	find $(top_builddir)/VLC-release.app/Contents/Resources/English.lproj -name designable.nib -delete;
575
576
	find $(top_builddir)/VLC-release.app -type d -exec chmod ugo+rx '{}' \;
	find $(top_builddir)/VLC-release.app -type f -exec chmod ugo+r '{}' \;
577

578
# This is just for development purposes. 
579
# The resulting VLC.app will only run in this tree.
580
VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.libs/libvlc.dylib
581
	$(AM_V_GEN)(cd src && make install $(silentstd))
582
583
	rm -Rf $(top_builddir)/tmp
	mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
Loïc Minier's avatar
Loïc Minier committed
584
	rm -Rf $(top_builddir)/VLC.app
585
	for i in vlc.xcodeproj Resources README.MacOSX.rtf; do \
586
587
	  cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \
	done
588
	REVISION=`git describe --always` && \
589
590
591
	cat $(top_builddir)/extras/package/macosx/Info.plist | \
	sed "s/#REVISION#/$$REVISION/g" > $(top_builddir)/tmp/extras/package/macosx/Info.plist
	cp -R $(top_builddir)/extras/package/macosx/Resources $(top_builddir)/tmp/extras/package/macosx/
592
	for i in AUTHORS COPYING THANKS; do \
Loïc Minier's avatar
Loïc Minier committed
593
594
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
595
596
	mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle
	cp -R $(top_srcdir)/extras/contrib/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle
Loïc Minier's avatar
Loïc Minier committed
597
598
599
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
600
601
	    AppleRemote.h \
	    AppleRemote.m \
Loïc Minier's avatar
Loïc Minier committed
602
603
604
605
606
607
	    about.h \
	    about.m \
	    applescript.h \
	    applescript.m \
	    controls.h \
	    controls.m \
608
609
	    equalizer.h \
	    equalizer.m \
Loïc Minier's avatar
Loïc Minier committed
610
611
612
613
614
615
616
617
618
619
620
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
621
622
	    playlistinfo.h \
	    playlistinfo.m \
623
624
	    prefs_widgets.h \
	    prefs_widgets.m \
Loïc Minier's avatar
Loïc Minier committed
625
626
	    prefs.h \
	    prefs.m \
627
628
	    simple_prefs.h \
	    simple_prefs.m \
Loïc Minier's avatar
Loïc Minier committed
629
	    vout.h \
hartman's avatar
hartman committed
630
	    voutgl.m \
631
632
	    wizard.h \
	    wizard.m \
633
634
	    extended.h \
	    extended.m \
Jean-Paul Saman's avatar
Jean-Paul Saman committed
635
636
	    bookmarks.h \
	    bookmarks.m \
637
638
	    coredialogs.h \
	    coredialogs.m \
639
640
	    embeddedwindow.h \
	    embeddedwindow.m \
641
642
	    fspanel.h \
	    fspanel.m \
Loïc Minier's avatar
Loïc Minier committed
643
644
645
646
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
647
	$(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
648
	xcodebuild -target vlc $(silentstd) && \
649
650
	cd ../../../../ && \
	cp -R $(top_builddir)/tmp/extras/package/macosx/build/Default/VLC.bundle $(top_builddir)/VLC.app
Loïc Minier's avatar
Loïc Minier committed
651
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS
652
653
	touch $(top_builddir)/VLC.app/Contents/MacOS/VLC
	chmod +x $(top_builddir)/VLC.app/Contents/MacOS/VLC
654
	$(INSTALL) $(top_builddir)/bin/.libs/vlc $(top_builddir)/VLC.app/Contents/MacOS/VLC
655
	ln -sf ../../../modules $(top_builddir)/VLC.app/Contents/MacOS/modules
656
657
658
659
	install -d $(top_builddir)/VLC.app/Contents/MacOS/share
	for i in `ls $(srcdir)/share`; do \
	   ln -sf `pwd`/$(srcdir)/share/$$i $(top_builddir)/VLC.app/Contents/MacOS/share/; \
	done
660
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
661
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
662
663
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \
	  ln -sfn `pwd`/$(srcdir)/po/$${i}.gmo $(top_builddir)/VLC.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
Loïc Minier's avatar
Loïc Minier committed
664
665
666
667
668
	  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 ; \
669
	done
Loïc Minier's avatar
Loïc Minier committed
670
	printf "APPLVLC#" >| $(top_builddir)/VLC.app/Contents/PkgInfo
671

672
673
674
675
676
###############################################################################
# Building architecture-specific binary packages
###############################################################################

# XXX: this rule is probably only useful to you if you have exactly
Christophe Mutricy's avatar
Christophe Mutricy committed
677
# the same setup as the maintaner(s).
678
#
679

680
681
682
############################################################################
## Win                                                                    ##
############################################################################
683
win32_destdir=$(top_builddir)/vlc-$(VERSION)
684
685
686
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
npvlc=vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)
axvlc=vlc-$(VERSION)/activex/axvlc$(LIBEXT)
687
688
689
win32_lua_destdir=$(win32_destdir)/lua
win32_http_destdir=$(win32_destdir)/http

690
#Win-common if for win32 and wince
691
package-win-common:
692
# Check that tmp isn't in the way
693
694
	@if test -e "$(win32_destdir)"; then \
	  echo "Error: please remove $(win32_destdir), it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
695
	  false; \
696
	else \
697
	  echo "OK."; mkdir -p "$(win32_destdir)"; \
698
	fi
699

700
# Copy relevant files
701
# Copy executables and libs
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
702
	cp "$(top_builddir)/bin/.libs/vlc$(EXEEXT)" "$(win32_destdir)/"
703
	cp "$(top_srcdir)/extras/package/win32/vlc.exe.manifest" "$(win32_destdir)/"
704
		cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_destdir)/"
705
706
	cp "$(top_builddir)/src/.libs/libvlccore$(LIBEXT)" "$(win32_destdir)/"
	cp "$(top_builddir)/src/.libs/libvlc$(LIBEXT)" "$(win32_destdir)/"
707

708
# Copy Text files
709
	for file in AUTHORS MAINTAINERS THANKS ; \
710
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
711
	for file in NEWS COPYING README; \
712
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
713
	unix2dos "$(win32_destdir)/"*.txt || echo "WARNING: this shouldn't happen"
gbazin's avatar
   
gbazin committed
714

715
# Necessary icons
716
	cp $(srcdir)/share/vlc.ico $(win32_destdir)/
717
718

# Copy the locales
719
	mkdir -p $(win32_destdir)/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
720
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
721
	  mkdir -p "$(win32_destdir)/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
722
	  cp "$(srcdir)/po/$${i}.gmo" \
723
	    "$(win32_destdir)/locale/$${i}/LC_MESSAGES/vlc.mo" \
gbazin's avatar
   
gbazin committed
724
            || true ; \
gbazin's avatar
   
gbazin committed
725
	done
726
727
	mkdir -p $(win32_destdir)/locale/qt4/
	cp $(QT4LOCALEDIR)/*.qm $(win32_destdir)/locale/qt4/ || true
gbazin's avatar
   
gbazin committed
728

729
#  Mozilla plugin
gbazin's avatar
   
gbazin committed
730
if BUILD_MOZILLA
731
732
	mkdir -p "$(win32_destdir)/mozilla"
	cp $(top_builddir)/projects/mozilla/.libs/npvlc$(LIBEXT) $(win32_destdir)/mozilla/
733
	cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest $(win32_destdir)/mozilla/
gbazin's avatar
   
gbazin committed
734
735
endif

736
# ActiveX plugin
737
if BUILD_ACTIVEX
738
739
740
741
	mkdir -p "$(win32_destdir)/activex"
	cp $(srcdir)/projects/activex/README.TXT  $(win32_destdir)/activex/
	cp $(srcdir)/projects/activex/test.html  $(win32_destdir)/activex/
	unix2dos $(win32_destdir)/activex/*
742

743
	cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/
744
	cp $(top_srcdir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/
745
endif
746

747
# Rebase all those DLLs to speed up loading (need cygwin rebase)
748
	if rebase -b 0x42 /dev/null >/dev/null 2>&1; then \
749
		find $(win32_destdir) -type f -name '*.dll' -print | rebase -b 0x70000000 -T -; \
750
	fi
751

752
753
package-win32-base-debug: package-win-common
# Copy relevant files
754
# Script installer
755
	cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/"
756
757
	mkdir "$(win32_destdir)/languages"
	cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/"
758

759
# Plugins
760
	mkdir -p "$(win32_destdir)/plugins"
Christophe Mutricy's avatar
Christophe Mutricy committed
761
	find modules/ -name '*_plugin$(LIBEXT)' | while read i; do \
762
	  if test -n "$$i" ; then \
763
	    $(INSTALL) "$$i" "vlc-$(VERSION)/plugins/" ; \
764
765
	  fi ; done

766
# Contrib *.dll's
767
	cp $(srcdir)/extras/contrib/lib/*.dll "vlc-$(VERSION)/" || true
768

769
770
771
772
773
774
775
#Enable DEP and ASLR for all the binaries
if USE_PEFLAGS
	find $(win32_destdir) -type f -name '*.dll' -print -o -name '*.exe' -print | while read i; do \
	$(PEFLAGS) --dynamicbase=true --nxcompat=true "$$i" ; \
	done
endif

776
777
# Copy the lua scripts (HTTP)
if BUILD_LUA
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
	mkdir -p "$(win32_lua_destdir)/http/images"
	mkdir -p "$(win32_lua_destdir)/http/requests"
	mkdir -p "$(win32_lua_destdir)/http/js"
	mkdir -p "$(win32_lua_destdir)/http/dialogs"
	cp $(srcdir)/share/lua/http/*.html $(win32_lua_destdir)/http/
	unix2dos $(win32_lua_destdir)/http/*.html
	cp $(srcdir)/share/lua/http/.hosts $(win32_lua_destdir)/http/
	unix2dos $(win32_lua_destdir)/http/.hosts
	cp $(srcdir)/share/lua/http/*.css $(win32_lua_destdir)/http/
	unix2dos $(win32_lua_destdir)/http/*.css
	cp $(srcdir)/share/lua/http/js/*.js $(win32_lua_destdir)/http/js/
	unix2dos $(win32_lua_destdir)/http/js/*.js
	cp $(srcdir)/share/lua/http/dialogs/* $(win32_lua_destdir)/http/dialogs/
	unix2dos $(win32_lua_destdir)/http/dialogs/*
	cp $(srcdir)/share/lua/http/dialogs/.hosts $(win32_lua_destdir)/http/dialogs/
	unix2dos $(win32_lua_destdir)/http/dialogs/.hosts
	cp $(srcdir)/share/lua/http/*.ico $(win32_lua_destdir)/http/
	cp $(srcdir)/share/lua/http/images/*.png $(win32_lua_destdir)/http/images/
	cp $(srcdir)/share/lua/http/requests/*.xml $(win32_lua_destdir)/http/requests/
	unix2dos $(win32_lua_destdir)/http/requests/*.xml
	cp $(srcdir)/share/lua/http/requests/readme $(win32_lua_destdir)/http/requests/readme.txt
	unix2dos $(win32_lua_destdir)/http/requests/readme.txt
800
endif
801

802
if BUILD_LUA
803
#Lua Scripts
804
805
806
807
	$(INSTALL) -d $(win32_lua_destdir)
	for i in $(srcdir)/share/lua/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/`basename $${i}` ; \
	done
808
	$(INSTALL) -d $(win32_lua_destdir)/playlist
809
	for i in $(srcdir)/share/lua/playlist/*.* ; do \
810
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/playlist/`basename $${i}` ; \
811
	done
812
	$(INSTALL) -d $(win32_lua_destdir)/meta
813
	for i in $(srcdir)/share/lua/meta/*.* ; do \
814
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/`basename $${i}` ; \
815
	done
816
	$(INSTALL) -d $(win32_lua_destdir)/intf
817
	for i in $(srcdir)/share/lua/intf/*.* ; do \
818
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/`basename $${i}` ; \
819
	done
820
	$(INSTALL) -d $(win32_lua_destdir)/intf/modules
821
	for i in $(srcdir)/share/lua/intf/modules/*.* ; do \
822
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/modules/`basename $${i}` ; \
823
824
825
826
827
	done
endif

# Copy the http files
if BUILD_HTTPD
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
	mkdir -p "$(win32_http_destdir)/images"
	mkdir -p "$(win32_http_destdir)/requests"
	mkdir -p "$(win32_http_destdir)/js"
	mkdir -p "$(win32_http_destdir)/dialogs"
	cp $(srcdir)/share/http/*.html $(win32_http_destdir)/
	unix2dos $(win32_http_destdir)/*.html
	cp $(srcdir)/share/http/.hosts $(win32_http_destdir)/
	unix2dos $(win32_http_destdir)/.hosts
	cp $(srcdir)/share/http/*.css $(win32_http_destdir)/
	unix2dos $(win32_http_destdir)/*.css
	cp $(srcdir)/share/http/js/*.js $(win32_http_destdir)/js/
	unix2dos $(win32_http_destdir)/js/*.js
	cp $(srcdir)/share/http/dialogs/* $(win32_http_destdir)/dialogs/
	unix2dos $(win32_http_destdir)/dialogs/*
	cp $(srcdir)/share/http/dialogs/.hosts $(win32_http_destdir)/dialogs/
	unix2dos $(win32_http_destdir)/dialogs/.hosts
	cp $(srcdir)/share/http/*.ico $(win32_http_destdir)/
	cp $(srcdir)/share/http/images/*.png $(win32_http_destdir)/images/
	cp $(srcdir)/share/http/requests/*.xml $(win32_http_destdir)/requests/
	unix2dos $(win32_http_destdir)/requests/*.xml
	cp $(srcdir)/share/http/requests/readme $(win32_http_destdir)/requests/readme.txt
	unix2dos $(win32_http_destdir)/requests/readme.txt

851
852
853
854
endif

if BUILD_SKINS
# Skins
855
	mkdir -p $(win32_destdir)/skins/fonts
856
	for i in $(srcdir)/share/skins2/fonts/*.*; do \
857
	  cp -- "$$i" $(win32_destdir)/skins/fonts/ || true ; \
858
	done
859
	for i in $(top_builddir)/share/skins2/*.*; do \
860
	  cp -- "$$i" $(win32_destdir)/skins/ || true ; \
861
	done
862
863
	cp -- $(srcdir)/share/skins2/skin.catalog $(win32_destdir)/skins/ || true ;
	cp -- $(srcdir)/share/skins2/skin.dtd $(win32_destdir)/skins/ || true ;
864
endif
865

866
if BUILD_OSDMENU
867
#OSD Menu
868
869
	mkdir -p "$(win32_destdir)/osdmenu"
	cp $(srcdir)/share/osdmenu/*.* "$(win32_destdir)/osdmenu"
870
	for dir in default default/selected default/selection default/volume ;do \
871
		mkdir -p "$(win32_destdir)/osdmenu/$$dir"; \
872
		for file in $(srcdir)/share/osdmenu/$${dir}/*.png;do \
873
			 cp -- "$$file" "$(win32_destdir)/osdmenu/$$dir"; \
874
875
		done; \
	done
876
877
	unix2dos $(win32_destdir)/osdmenu/*.cfg;
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
878
879
880
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
881
	done
882
endif
883

884
# SDK
885
886
	mkdir -p "$(win32_destdir)/sdk.tmp"
	mkdir -p "$(win32_destdir)/sdk"
887
888
889
890
891
892
893
	d=$$(pwd) && \
	cd src && \
	make install DESTDIR="$$d/vlc-$(VERSION)/sdk.tmp"
	cd vlc-$(VERSION) && mv sdk.tmp/$(prefix)/* sdk/
	find vlc-$(VERSION)/sdk.tmp -type d | sort -r | xargs rmdir
	rm -Rf vlc-$(VERSION)/sdk/bin

894
#strip exe and main dll
895
package-win-common-strip: package-win32-base-debug
896
897
898
899
900
901
	@if test -e "$(win32_debugdir)"; then \
	  echo "Error: please remove $(win32_debugdir), it is in the way"; \
	  false; \
	else \
	  echo "OK."; mkdir -p "$(win32_debugdir)"; \
	fi
902
	for i in "" vlc-$(VERSION)/*$(LIBEXT) ; \
903
904
      do if test -n "$$i" ; then \
      $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \
905
      $(OBJCOPY) --strip-all "$$i" ; \
906
907
908
909
      $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \
	  mv "$$i.dbg" "$(win32_debugdir)"; \
    fi; done

910
#strip all plugins dll
911
package-win32-base: package-win-common-strip
912
	for i in "" $(win32_destdir)/plugins/*$(LIBEXT) ; \
913
914
	  do if test -n "$$i" ; then \
	  $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \
915
	  $(OBJCOPY) --strip-all "$$i" ; \
916
917
918
	  $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \
	  mv "$$i.dbg" "$(win32_debugdir)"; \
	fi ; done
919

920
package-win32-base-exe: package-win32-base
921
# Create package
922
	rm -Rf $(win32_destdir)/sdk
923
	if makensis -VERSION >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
924
	    MAKENSIS="makensis"; \
925
	elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
926
	    MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
927
	elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
928
	    MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
Rafaël Carré's avatar
typo    
Rafaël Carré committed
929
	elif wine --version >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
930
	    MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
931
932
933
	else \
	    echo 'Error: cannot locate makensis tool'; exit 1; \
	fi; \
934
	eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
935

936
package-win32-base-zip: package-win32-base
937
# Create package 
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
938
	rm -f -- vlc-$(VERSION)-win32.zip
939
	zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
gbazin's avatar
   
gbazin committed
940

941
942
943
944
945
package-win32-base-debug-zip: package-win32-base-debug
# Create package
	rm -f -- vlc-$(VERSION)-win32-debug.zip
	zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)

dionoea's avatar
dionoea committed
946
947
package-win32-base-7zip: package-win32-base
# Create package 
948
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
dionoea's avatar
dionoea committed
949