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

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

16
SUBDIRS = po compat src
17 18 19
if LOADER
SUBDIRS += libs/loader
endif
20
if HAVE_GCRYPT
21 22
SUBDIRS += libs/srtp
endif
23
if HAVE_ZLIB
24
if !HAVE_MINIZIP
25 26
SUBDIRS += libs/unzip
endif
27
endif
28 29 30
if BUILD_VLC
SUBDIRS += bin
endif
31
SUBDIRS += modules share doc test
32 33 34 35
if BUILD_MOZILLA
SUBDIRS += projects/mozilla
endif
if BUILD_ACTIVEX
36
SUBDIRS += projects/activex
37
endif
38

39 40 41
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
42
	INSTALL.wince \
43
	extras/package/win32/vlc.exe.manifest \
44
	extras/package/win32/libvlc.dll.manifest \
45
	extras/package/macosx/README.MacOSX.rtf \
Sam Hocevar's avatar
Sam Hocevar committed
46
	vlc-config.in.in \
47 48
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
49
	extras/package/win32/vlc.win32.nsi.in \
50
	extras/package/win32/spad.nsi.in \
51 52
	extras/package/win32/UAC.nsh \
	extras/package/win32/UAC.dll \
53
	extras/package/win32/languages/declaration.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
54 55 56 57 58
	extras/package/win32/languages/bengali.nsh \
	extras/package/win32/languages/brazilian_portuguese.nsh \
	extras/package/win32/languages/bulgarian.nsh \
	extras/package/win32/languages/catalan.nsh \
	extras/package/win32/languages/dutch.nsh \
59
	extras/package/win32/languages/english.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
	extras/package/win32/languages/estonian.nsh \
	extras/package/win32/languages/finnish.nsh \
	extras/package/win32/languages/french.nsh \
	extras/package/win32/languages/german.nsh \
	extras/package/win32/languages/hungarian.nsh \
	extras/package/win32/languages/italian.nsh \
	extras/package/win32/languages/japanese.nsh \
	extras/package/win32/languages/occitan.nsh \
	extras/package/win32/languages/polish.nsh \
	extras/package/win32/languages/punjabi.nsh \
	extras/package/win32/languages/romanian.nsh \
	extras/package/win32/languages/schinese.nsh \
	extras/package/win32/languages/slovak.nsh \
	extras/package/win32/languages/slovenian.nsh \
	extras/package/win32/languages/sorani.nsh \
75
	extras/package/win32/languages/spanish.nsh
76

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
77
dist_noinst_SCRIPTS = bootstrap toolbox
78
nodist_noinst_SCRIPTS = compile
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
79

80
BUILT_SOURCES_distclean = vlc-config extras/package/win32/vlc.win32.nsi extras/package/win32/spad.nsi
81
if HAVE_DARWIN
82
BUILT_SOURCES_clean = macosx-sdk
83 84 85
else
BUILT_SOURCES_clean =
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
86

87
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
88

89 90
SUFFIXES = 

91 92
DISTCHECK_CONFIGURE_FLAGS = \
	--enable-fast-install \
93 94 95
	--disable-a52 \
	--disable-avcodec --disable-avformat \
	--disable-postproc --disable-swscale \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
96
	--disable-dbus \
97 98
	--disable-mad --disable-libmpeg2 \
	--disable-faad --disable-skins2 \
99
	--disable-live555 \
100
	--disable-fribidi --disable-glx
101

102
ACLOCAL_AMFLAGS = -I m4
103 104 105 106 107 108
AUTOMAKE_OPTIONS = \
	1.9 \
	-Wall \
	check-news \
	dist-bzip2 \
	no-dist-gzip
Christophe Mutricy's avatar
Christophe Mutricy committed
109
#	std-options
110

111 112
ChangeLog: Makefile.am
	rm -f -- "$@"
113
	cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
114
	ln -sf doc/ChangeLog-2009 "$@"
115

116 117 118 119 120
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
121
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/designable.nib \
122
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
123
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/designable.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
124
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/keyedobjects.nib \
125
	extras/package/macosx/Resources/English.lproj/About.nib/designable.nib \
126
	extras/package/macosx/Resources/English.lproj/About.nib/keyedobjects.nib \
127
	extras/package/macosx/Resources/English.lproj/Open.nib/designable.nib \
128
	extras/package/macosx/Resources/English.lproj/Open.nib/keyedobjects.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
129
	extras/package/macosx/Resources/English.lproj/Preferences.nib/designable.nib \
130
	extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
131
	extras/package/macosx/Resources/English.lproj/Wizard.nib/designable.nib \
132
	extras/package/macosx/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
133
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/designable.nib \
134
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \
135
	extras/package/macosx/Resources/English.lproj/Extended.nib/designable.nib \
136
	extras/package/macosx/Resources/English.lproj/Extended.nib/keyedobjects.nib \
137
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/designable.nib \
138
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \
139
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/designable.nib \
140
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \
141
	extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
142
	extras/package/macosx/Resources/dsa_pub.pem \
143 144
	extras/package/macosx/Resources/aiff.icns \
	extras/package/macosx/Resources/audio.icns \
145
	extras/package/macosx/Resources/avi.icns \
146
	extras/package/macosx/Resources/flv.icns \
147
	extras/package/macosx/Resources/generic.icns \
148 149 150
	extras/package/macosx/Resources/m4a.icns \
	extras/package/macosx/Resources/m4v.icns \
	extras/package/macosx/Resources/mkv.icns \
151
	extras/package/macosx/Resources/mov.icns \
152
	extras/package/macosx/Resources/movie.icns \
153 154 155
	extras/package/macosx/Resources/mp3.icns \
	extras/package/macosx/Resources/mpeg.icns \
	extras/package/macosx/Resources/ogg.icns \
156 157 158
	extras/package/macosx/Resources/playlist.icns \
	extras/package/macosx/Resources/rm.icns \
	extras/package/macosx/Resources/subtitle.icns \
159
	extras/package/macosx/Resources/vob.icns \
160 161
	extras/package/macosx/Resources/wav.icns \
	extras/package/macosx/Resources/vlc.icns \
162 163 164 165 166 167 168 169
	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
170 171 172
	extras/package/macosx/Resources/display_left.png \
	extras/package/macosx/Resources/display_middle.png \
	extras/package/macosx/Resources/display_right.png \
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 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
	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
240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258
	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 \
259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280
	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
281 282 283 284 285 286 287
	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 \
288 289 290 291 292 293 294 295 296 297
	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 \
298 299
	extras/package/macosx/plugin/Info.plist.in \
	extras/package/macosx/plugin/InstallerInfo.plist.in \
300 301
	extras/package/macosx/plugin/InstallerDescription.plist \
	extras/package/macosx/plugin/pbdevelopment.plist \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
302 303 304 305 306 307
	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
308
	extras/package/macosx/README.MacOSX.rtf \
309
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
310

311 312

###############################################################################
Rafaël Carré's avatar
Rafaël Carré committed
313
# Various utilities ( editor syntax files, D-Bus controller ... )
314 315
##############################################################################
EXTRA_DIST += \
316
	extras/analyser/zsh_completion.sh \
317 318 319 320
	extras/analyser/zsh.cpp \
	extras/analyser/emacs.init \
	extras/analyser/vlc.vim \
	extras/analyser/valgrind.suppressions \
321
	extras/buildsystem/make.pl \
322 323
	extras/misc/mpris.py \
	extras/misc/mpris.glade
324

Gildas Bazin's avatar
 
Gildas Bazin committed
325
dist-hook:
326
	distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
Gildas Bazin's avatar
 
Gildas Bazin committed
327

328 329 330 331
###############################################################################
# Building libvlc
###############################################################################

332
noinst_SCRIPTS = vlc-config
333
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
334 335
	$(SHELL) ./config.status --file=$@
	chmod 0755 $@
336
	touch $@
337

338 339
vlc-config.in: vlc-config.in.in
	./config.status --recheck
340
	touch $@
341

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
342
CLEANFILES = $(BUILT_SOURCES_clean)
343 344
DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile
MAINTAINERCLEANFILES = ChangeLog
345

346
# Shortcut for developers to rebuild the core (libvlc + vlc)
347 348
# Don't use it if you don't know what it is about.
# Don't complain if it doesn't work. -- Courmisch
349 350 351 352
libcompat:
	cd compat && $(MAKE) $(AM_MAKEFLAGS)

libvlc: libcompat
353
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
354

355 356
core: libvlc vlc
	cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
357

358 359 360 361
doc:
	cd doc && $(MAKE) $(AM_MAKEFLAGS) doc

.PHONY: libvlc core doc
362

363
if HAVE_BEOS
364
noinst_DATA = vlc-bundle
365
vlc-bundle: vlc
Sam Hocevar's avatar
Sam Hocevar committed
366 367 368
	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
369 370
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
371 372
	    mkdir -p $(top_builddir)/vlc-bundle/plugins ; \
	    cp "$$i$(LIBEXT)" $(top_builddir)/vlc-bundle/plugins/ ; \
373 374
	  fi ; \
	done
375
	if test -d $(CONTRIB_DIR)/vlc-lib ; then \
Sam Hocevar's avatar
Sam Hocevar committed
376
	  mkdir -p $(top_builddir)/vlc-bundle/lib ; \
377
	  for i in $(CONTRIB_DIR)/vlc-lib/*.so ; do \
Sam Hocevar's avatar
Sam Hocevar committed
378
	    cp $$i $(top_builddir)/vlc-bundle/lib/ ; \
379 380
	  done ; \
	fi
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
381
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
382
	  mkdir -p "$(top_builddir)/vlc-bundle/share/locale/$$i/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
383
	  cp "$(top_builddir)/po/$$i.gmo" \
384
	    "$(top_builddir)/vlc-bundle/share/locale/$$i/LC_MESSAGES/vlc.mo" || true ; \
Eric Petit's avatar
Eric Petit committed
385
	done
Sam Hocevar's avatar
Sam Hocevar committed
386
	find $(top_builddir)/vlc-bundle -type f -exec mimeset -f "{}" \;
387 388
endif

389 390 391 392
###############################################################################
# Building aliases
###############################################################################

393
ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
394
bin_SCRIPTS = $(ALIASES)
395
CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
396 397 398 399
EXTRA_SCRIPTS = $(ALL_ALIASES)

dist_noinst_SCRIPTS += make-alias

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

402
cvlc: make-alias Makefile
403
	$(AM_V_GEN)$(MKALIAS) dummy
404

405
rvlc: make-alias Makefile
406
	$(AM_V_GEN)$(MKALIAS) rc
407

408
svlc: make-alias Makefile
409
	$(AM_V_GEN)$(MKALIAS) skins2
410

411
qvlc: make-alias Makefile
412
	$(AM_V_GEN)$(MKALIAS) qt4
413

414
nvlc: make-alias Makefile
415
	$(AM_V_GEN)$(MKALIAS) ncurses
416

417
mvlc: make-alias Makefile
418
	$(AM_V_GEN)$(MKALIAS) maemo
419

420
if BUILD_VLC
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
421
noinst_SCRIPTS += vlc$(EXEEXT)
422
endif
423

424
vlc$(EXEEXT):
425
	$(AM_V_GEN)ln -sf bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
426

427
if HAVE_DARWIN
428
if BUILD_MACOSX_VLC_APP
429
# Create the MacOS X app
430
noinst_DATA = VLC.app
431
endif
432 433
endif

434
silentstd = $(silentstd_$(V))
435
silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
436
silentstd_0 = 2>&1 >/dev/null
437

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

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

685 686 687 688 689
###############################################################################
# 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
690
# the same setup as the maintaner(s).
691
#
692

693 694 695
############################################################################
## Win                                                                    ##
############################################################################
696
win32_destdir=$(top_builddir)/vlc-$(VERSION)
Luca Barbato's avatar
Luca Barbato committed
697
win32_xpi_destdir=$(win32_destdir)/vlc-plugin
698 699 700
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
npvlc=vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)
axvlc=vlc-$(VERSION)/activex/axvlc$(LIBEXT)
701 702 703
win32_lua_destdir=$(win32_destdir)/lua
win32_http_destdir=$(win32_destdir)/http

704
#Win-common if for win32 and wince
705
package-win-common:
706
# Check that tmp isn't in the way
707 708
	@if test -e "$(win32_destdir)"; then \
	  echo "Error: please remove $(win32_destdir), it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
709
	  false; \
710
	else \
711
	  echo "OK."; mkdir -p "$(win32_destdir)"; \
712
	fi
713 714 715 716 717 718 719
# Same for debug symbols dir
	@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
720

721
# Copy relevant files
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
722
# Copy executables, major libs+manifests
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
723
	cp "$(top_builddir)/bin/.libs/vlc$(EXEEXT)" "$(win32_destdir)/"
724
	cp "$(top_builddir)/bin/.libs/vlc-cache-gen$(EXEEXT)" "$(win32_destdir)/"
725
	cp "$(top_srcdir)/extras/package/win32/vlc.exe.manifest" "$(win32_destdir)/"
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
726
	cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_destdir)/"
727 728
	cp "$(top_builddir)/src/.libs/libvlccore$(LIBEXT)" "$(win32_destdir)/"
	cp "$(top_builddir)/src/.libs/libvlc$(LIBEXT)" "$(win32_destdir)/"
729

730
# Copy Text files
Rafaël Carré's avatar
Rafaël Carré committed
731
	for file in AUTHORS THANKS ; \
732
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
733
	for file in NEWS COPYING README; \
734
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
735
	$(U2D) "$(win32_destdir)/"*.txt || echo "WARNING: this shouldn't happen"
Gildas Bazin's avatar
 
Gildas Bazin committed
736

737
# Necessary icons
738
	cp $(srcdir)/share/icons/vlc.ico $(win32_destdir)/
739 740

# Copy the locales
741
	mkdir -p $(win32_destdir)/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
742
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
743
	  mkdir -p "$(win32_destdir)/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
744
	  cp "$(srcdir)/po/$${i}.gmo" \
745
	    "$(win32_destdir)/locale/$${i}/LC_MESSAGES/vlc.mo" || true ; \
Gildas Bazin's avatar
 
Gildas Bazin committed
746
	done
747 748
	mkdir -p $(win32_destdir)/locale/qt4/
	cp $(QT4LOCALEDIR)/*.qm $(win32_destdir)/locale/qt4/ || true
Gildas Bazin's avatar
 
Gildas Bazin committed
749

750
#  Mozilla plugin
Gildas Bazin's avatar
 
Gildas Bazin committed
751
if BUILD_MOZILLA
752 753
	mkdir -p "$(win32_destdir)/mozilla"
	cp $(top_builddir)/projects/mozilla/.libs/npvlc$(LIBEXT) $(win32_destdir)/mozilla/
754
	cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest $(win32_destdir)/mozilla/
Gildas Bazin's avatar
 
Gildas Bazin committed
755 756
endif

757
# ActiveX plugin
758
if BUILD_ACTIVEX
759 760 761
	mkdir -p "$(win32_destdir)/activex"
	cp $(srcdir)/projects/activex/README.TXT  $(win32_destdir)/activex/
	cp $(srcdir)/projects/activex/test.html  $(win32_destdir)/activex/
762
	$(U2D) $(win32_destdir)/activex/*
763
	cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/
764
	cp $(top_srcdir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/
765
endif
766

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

Eric Lassauge's avatar
Eric Lassauge committed
772 773 774 775 776
# Copy the UAC NSIS plugin
	mkdir -p "$(win32_destdir)/NSIS"
	cp "$(top_srcdir)/extras/package/win32/UAC.nsh" "$(win32_destdir)/NSIS"
	cp "$(top_srcdir)/extras/package/win32/UAC.dll" "$(win32_destdir)/NSIS"

777
prepare-win32-web-plugin: package-win-common-strip
Luca Barbato's avatar
Luca Barbato committed
778
	mkdir -p "$(win32_xpi_destdir)/plugins"
779
	cp $(win32_destdir)/mozilla/npvlc$(LIBEXT) \
Luca Barbato's avatar
Luca Barbato committed
780 781 782 783 784 785 786 787 788 789
		"$(win32_xpi_destdir)/plugins"
	cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest \
		"$(win32_xpi_destdir)/plugins"
	cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" \
		"$(win32_xpi_destdir)/plugins"
	cp "$(win32_destdir)/libvlccore$(LIBEXT)" \
		"$(win32_xpi_destdir)/plugins"
	cp "$(win32_destdir)/libvlc$(LIBEXT)" \
		"$(win32_xpi_destdir)/plugins"
	mkdir -p "$(win32_xpi_destdir)/plugins/plugins"
Luca Barbato's avatar
Luca Barbato committed
790
	cp $(win32_destdir)/plugins/*$(LIBEXT) \
Luca Barbato's avatar
Luca Barbato committed
791
		"$(win32_xpi_destdir)/plugins/plugins"
792 793
	rm -rf "$(win32_xpi_destdir)/plugins/plugins/*qt*"
	rm -rf "$(win32_xpi_destdir)/plugins/plugins/*skins*"
794 795 796 797 798 799 800 801 802 803
package-win32-xpi: prepare-win32-web-plugin
	cp $(top_builddir)/projects/mozilla/install.rdf "$(win32_xpi_destdir)"
	cd $(win32_xpi_destdir) && zip -r "../vlc-$(VERSION).xpi" \
					install.rdf plugins

package-win32-crx: prepare-win32-web-plugin
	cp $(top_builddir)/projects/mozilla/manifest.json "$(win32_xpi_destdir)"
	crxmake --pack-extension "$(win32_xpi_destdir)" \
		--extension-output "$(win32_destdir)/vlc-$(VERSION).crx" \
		--ignore-file install.rdf
Luca Barbato's avatar
Luca Barbato committed
804

805 806
package-win32-base-debug: package-win-common
# Copy relevant files
807
# Script installer
808
	cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/"
809
	cp "$(top_builddir)/extras/package/win32/spad.nsi" "$(win32_destdir)/"
810 811
	mkdir "$(win32_destdir)/languages"
	cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/"
812

813
# Plugins
814
	mkdir -p "$(win32_destdir)/plugins"
Christophe Mutricy's avatar
Christophe Mutricy committed
815
	find modules/ -name '*_plugin$(LIBEXT)' | while read i; do \
816
	  if test -n "$$i" ; then \
817
	    $(INSTALL) "$$i" "vlc-$(VERSION)/plugins/" ; \
818 819
	  fi ; done

820 821 822 823 824 825 826
#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

827
if BUILD_LUA
828
# Copy the lua scripts (HTTP)
829 830 831 832 833
	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/
834
	$(U2D) $(win32_lua_destdir)/http/*.html
835
	cp $(srcdir)/share/lua/http/.hosts $(win32_lua_destdir)/http/
836
	$(U2D) $(win32_lua_destdir)/http/.hosts
837
	cp $(srcdir)/share/lua/http/*.css $(win32_lua_destdir)/http/
838
	$(U2D) $(win32_lua_destdir)/http/*.css
839
	cp $(srcdir)/share/lua/http/js/*.js $(win32_lua_destdir)/http/js/
840
	$(U2D) $(win32_lua_destdir)/http/js/*.js
841
	cp $(srcdir)/share/lua/http/*.lua $(win32_lua_destdir)/http/
842
	$(U2D) $(win32_lua_destdir)/http/*.lua
843
	cp $(srcdir)/share/lua/http/dialogs/* $(win32_lua_destdir)/http/dialogs/
844
	$(U2D) $(win32_lua_destdir)/http/dialogs/*
845
	cp $(srcdir)/share/lua/http/dialogs/.hosts $(win32_lua_destdir)/http/dialogs/
846
	$(U2D) $(win32_lua_destdir)/http/dialogs/.hosts
847 848 849
	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/
850
	$(U2D) $(win32_lua_destdir)/http/requests/*.xml
851
	cp $(srcdir)/share/lua/http/requests/readme $(win32_lua_destdir)/http/requests/readme.txt
852
	$(U2D) $(win32_lua_destdir)/http/requests/readme.txt
853

854
#Lua Scripts
855 856 857 858
	$(INSTALL) -d $(win32_lua_destdir)
	for i in $(srcdir)/share/lua/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/`basename $${i}` ; \
	done
Fabio Ritrovato's avatar
Fabio Ritrovato committed
859
	$(INSTALL) -d $(win32_lua_destdir)/modules
860 861 862
	for i in $(srcdir)/share/lua/modules/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/modules/`basename $${i}` ; \
	done
863 864 865
	$(INSTALL) -d $(win32_lua_destdir)/extensions
	for i in $(srcdir)/share/lua/extensions/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/extensions/`basename $${i}` ; \
866
	done
867 868 869 870 871 872 873
	$(INSTALL) -d $(win32_lua_destdir)/intf
	for i in $(srcdir)/share/lua/intf/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/`basename $${i}` ; \
	done
	$(INSTALL) -d $(win32_lua_destdir)/intf/modules
	for i in $(srcdir)/share/lua/intf/modules/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/modules/`basename $${i}` ; \
874
	done
875
	$(INSTALL) -d $(win32_lua_destdir)/meta/art
876
	for i in $(srcdir)/share/lua/meta/art/*.* ; do \
877 878
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/art/`basename $${i}` ; \
	done
879 880 881 882
	$(INSTALL) -d $(win32_lua_destdir)/meta/fetcher
	for i in $(srcdir)/share/lua/meta/fetcher/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/fetcher/`basename $${i}` ; \
	done
883
	$(INSTALL) -d $(win32_lua_destdir)/meta/reader
884
	for i in $(srcdir)/share/lua/meta/reader/*.* ; do \
885
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/reader/`basename $${i}` ; \
886
	done
887 888 889
	$(INSTALL) -d $(win32_lua_destdir)/playlist
	for i in $(srcdir)/share/lua/playlist/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/playlist/`basename $${i}` ; \
890
	done
891 892 893
	$(INSTALL) -d $(win32_lua_destdir)/sd
	for i in $(srcdir)/share/lua/sd/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/sd/`basename $${i}` ; \
894
	done
895

896 897 898 899 900 901 902 903
	$(U2D) $(win32_lua_destdir)/README.txt
	$(U2D) $(win32_lua_destdir)/extensions/README.txt
	$(U2D) $(win32_lua_destdir)/intf/README.txt
	$(U2D) $(win32_lua_destdir)/meta/art/README.txt
	$(U2D) $(win32_lua_destdir)/meta/fetcher/README.txt
	$(U2D) $(win32_lua_destdir)/meta/reader/README.txt
	$(U2D) $(win32_lua_destdir)/playlist/README.txt
	$(U2D) $(win32_lua_destdir)/sd/README.txt
904 905 906 907
endif

# Copy the http files
if BUILD_HTTPD
908 909 910 911 912
	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)/
913
	$(U2D) $(win32_http_destdir)/*.html
914
	cp $(srcdir)/share/http/.hosts $(win32_http_destdir)/
915
	$(U2D) $(win32_http_destdir)/.hosts
916
	cp $(srcdir)/share/http/*.css $(win32_http_destdir)/
917
	$(U2D) $(win32_http_destdir)/*.css
918
	cp $(srcdir)/share/http/js/*.js $(win32_http_destdir)/js/
919
	$(U2D) $(win32_http_destdir)/js/*.js
920
	cp $(srcdir)/share/http/dialogs/* $(win32_http_destdir)/dialogs/
921
	$(U2D) $(win32_http_destdir)/dialogs/*
922
	cp $(srcdir)/share/http/dialogs/.hosts $(win32_http_destdir)/dialogs/
923
	$(U2D) $(win32_http_destdir)/dialogs/.hosts
924 925 926
	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/
927
	$(U2D) $(win32_http_destdir)/requests/*.xml
928
	cp $(srcdir)/share/http/requests/readme $(win32_http_destdir)/requests/readme.txt
929
	$(U2D) $(win32_http_destdir)/requests/readme.txt
930

931 932 933 934
endif

if BUILD_SKINS
# Skins
935
	mkdir -p $(win32_destdir)/skins/fonts
936
	for i in $(srcdir)/share/skins2/fonts/*.*; do \
937
	  cp -- "$$i" $(win32_destdir)/skins/fonts/ || true ; \
938
	done
939
	for i in $(top_builddir)/share/skins2/*.*; do \
940
	  cp -- "$$i" $(win32_destdir)/skins/ || true ; \
941
	done
942 943
	cp -- $(srcdir)/share/skins2/skin.catalog $(win32_destdir)/skins/ || true ;
	cp -- $(srcdir)/share/skins2/skin.dtd $(win32_destdir)/skins/ || true ;
944
endif
945

946
if BUILD_OSDMENU
947
#OSD Menu
948 949
	mkdir -p "$(win32_destdir)/osdmenu"
	cp $(srcdir)/share/osdmenu/*.* "$(win32_destdir)/osdmenu"
950
	for dir in default default/selected default/selection default/volume ;do \
951
		mkdir -p "$(win32_destdir)/osdmenu/$$dir"; \
952
		for file in $(srcdir)/share/osdmenu/$${dir}/*.png;do \
953
			 cp -- "$$file" "$(win32_destdir)/osdmenu/$$dir"; \
954 955
		done; \
	done
956
	$(U2D) $(win32_destdir)/osdmenu/*.cfg;
957
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
958 959 960
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
961
	done
962
endif
963

964
# SDK
965 966
	mkdir -p "$(win32_destdir)/sdk.tmp"
	mkdir -p "$(win32_destdir)/sdk"
967 968 969 970 971 972 973