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 8
makesilentflags_ = $(makesilentflags__$(AM_DEFAULT_VERBOSITY))
makesilentflags__0 = --quiet
9

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

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

44 45 46
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
47
	INSTALL.wince \
48
	extras/package/win32/vlc.exe.manifest \
49
	extras/package/win32/libvlc.dll.manifest \
50
	MAINTAINERS \
51
	extras/package/macosx/README.MacOSX.rtf \
Sam Hocevar's avatar
Sam Hocevar committed
52
	vlc-config.in.in \
53 54
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
55 56 57 58
	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
59

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

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

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

72 73
SUFFIXES = 

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

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

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

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

EXTRA_DIST += \
101
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/designable.nib \
102
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
103
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/designable.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
104
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/keyedobjects.nib \
105
	extras/package/macosx/Resources/English.lproj/About.nib/designable.nib \
106
	extras/package/macosx/Resources/English.lproj/About.nib/keyedobjects.nib \
107
	extras/package/macosx/Resources/English.lproj/Open.nib/designable.nib \
108
	extras/package/macosx/Resources/English.lproj/Open.nib/keyedobjects.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
109
	extras/package/macosx/Resources/English.lproj/Preferences.nib/designable.nib \
110
	extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
111
	extras/package/macosx/Resources/English.lproj/Wizard.nib/designable.nib \
112
	extras/package/macosx/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
113
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/designable.nib \
114
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \
115
	extras/package/macosx/Resources/English.lproj/Extended.nib/designable.nib \
116
	extras/package/macosx/Resources/English.lproj/Extended.nib/keyedobjects.nib \
117
	extras/package/macosx/Resources/English.lproj/Update.nib/designable.nib \
118
	extras/package/macosx/Resources/English.lproj/Update.nib/keyedobjects.nib \
119
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/designable.nib \
120
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \
121
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/designable.nib \
122
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \
123
	extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
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

Gildas Bazin's avatar
 
Gildas Bazin committed
306
dist-hook:
307
	distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
Gildas Bazin's avatar
 
Gildas Bazin 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 422 423 424
xcodebuild_FLAGS = $(xcodebuildsilentflags_$(V))
xcodebuildsilentflags_ = $(xcodebuildsilentflags__$(AM_DEFAULT_VERBOSITY))
xcodebuildsilentflags_0 = 2>&1 >/dev/null
# '__' prefix trick for old automake version.
xcodebuildsilentflags__0 = $(xcodebuildsilentflags_0)

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 )
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
	    update.h \
	    update.m \
486 487
	    coredialogs.h \
	    coredialogs.m \
488 489
	    embeddedwindow.h \
	    embeddedwindow.m \
490 491
	    fspanel.h \
	    fspanel.m \
492 493 494 495
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
496 497 498 499
	$(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
        xcodebuild -target vlc $(xcodebuild_FLAGS) && \
	cd ../../../../ && \
	cp -R $(top_builddir)/tmp/extras/package/macosx/build/Default/VLC.bundle $(top_builddir)/VLC-release.app; \
500 501
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
502
	PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh
503 504 505 506
	$(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 ; \
507 508 509
	$(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}` ; \
510
	done ; \
511 512 513
	$(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}` ; \
514
	done ; \
515 516 517
	$(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}` ; \
518
	done ; \
519 520 521
	$(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}` ; \
522
	done ; \
523 524 525 526 527 528 529
	$(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}` ; \
530
	done
531 532
	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}` ; \
533
	done
534 535
	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}` ; \
536
	done
537 538
	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}` ; \
539
	done
540 541
	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}` ; \
542
	done
543
	$(INSTALL) -m 644 $(srcdir)/share/lua/http/requests/readme $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests/readme.txt
544 545 546 547
	$(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
548
	$(INSTALL) -m 644 $(srcdir)/share/http/.hosts $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/.hosts
549
	for i in $(srcdir)/share/http/*.* ; do \
550
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/`basename $${i}` ; \
551
	done
552 553
	for i in $(srcdir)/share/http/dialogs/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/dialogs/`basename $${i}` ; \
554
	done
555 556
	for i in $(srcdir)/share/http/js/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/js/`basename $${i}` ; \
557
	done
558 559
	for i in $(srcdir)/share/http/images/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/images/`basename $${i}` ; \
560
	done
561 562
	for i in $(srcdir)/share/http/requests/*.* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/requests/`basename $${i}` ; \
563
	done
564
	$(INSTALL) -m 644 $(srcdir)/share/http/requests/readme $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/requests/readme.txt
565
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
566
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
567 568
	  $(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 ; \
569 570 571 572 573 574 575
	  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
576
	find $(top_builddir)/VLC-release.app/Contents/Resources/English.lproj -name designable.nib -delete;
577 578
	find $(top_builddir)/VLC-release.app -type d -exec chmod ugo+rx '{}' \;
	find $(top_builddir)/VLC-release.app -type f -exec chmod ugo+r '{}' \;
579

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

676 677 678 679 680
###############################################################################
# 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
681
# the same setup as the maintaner(s).
682
#
683

684 685 686
############################################################################
## Win                                                                    ##
############################################################################
687
win32_destdir=$(top_builddir)/vlc-$(VERSION)
688 689 690
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
npvlc=vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)
axvlc=vlc-$(VERSION)/activex/axvlc$(LIBEXT)
691 692 693
win32_lua_destdir=$(win32_destdir)/lua
win32_http_destdir=$(win32_destdir)/http

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

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

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

719
# Necessary icons
720
	cp $(srcdir)/share/vlc.ico $(win32_destdir)/
721 722

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

733
#  Mozilla plugin
Gildas Bazin's avatar
 
Gildas Bazin committed
734
if BUILD_MOZILLA
735 736
	mkdir -p "$(win32_destdir)/mozilla"
	cp $(top_builddir)/projects/mozilla/.libs/npvlc$(LIBEXT) $(win32_destdir)/mozilla/
737
	cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest $(win32_destdir)/mozilla/
Gildas Bazin's avatar
 
Gildas Bazin committed
738 739
endif

740
# ActiveX plugin
741
if BUILD_ACTIVEX
742 743 744 745
	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/*
746

747
	cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/
748
	cp $(top_srcdir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/
749
endif
750

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

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

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

770
# Contrib *.dll's
771
	cp $(srcdir)/extras/contrib/lib/*.dll "vlc-$(VERSION)/" || true
772

773 774
# Copy the lua scripts (HTTP)
if BUILD_LUA
775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796
	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
797
endif
798

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

# Copy the http files
if BUILD_HTTPD
825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847
	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

848 849 850 851
endif

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

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

881
# SDK
882 883
	mkdir -p "$(win32_destdir)/sdk.tmp"
	mkdir -p "$(win32_destdir)/sdk"
884 885 886 887 888 889 890
	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

891
#strip exe and main dll
892
package-win-common-strip: package-win32-base-debug
893 894 895 896 897 898
	@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
899
	for i in "" vlc-$(VERSION)/*$(LIBEXT) ; \
900 901
      do if test -n "$$i" ; then \
      $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \
902
      $(OBJCOPY) --strip-all "$$i" ; \
903 904 905 906
      $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \
	  mv "$$i.dbg" "$(win32_debugdir)"; \
    fi; done

907
#strip all plugins dll
908
package-win32-base: package-win-common-strip
909
	for i in