Makefile.am 49.7 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 src bin modules share doc test
11
EXTRA_SUBDIRS = m4 extras/package/ipkg \
12
	libs/loader libs/srtp \
13
	projects/mozilla projects/activex
14
DIST_SUBDIRS = $(BASE_SUBDIRS) $(EXTRA_SUBDIRS)
15

16 17 18 19 20 21 22
SUBDIRS = po src
if LOADER
SUBDIRS += libs/loader
endif
if HAVE_LIBGCRYPT
SUBDIRS += libs/srtp
endif
23 24 25
if BUILD_VLC
SUBDIRS += bin
endif
26
SUBDIRS += modules share doc test
27 28 29 30
if BUILD_MOZILLA
SUBDIRS += projects/mozilla
endif
if BUILD_ACTIVEX
31
SUBDIRS += projects/activex
32
endif
33

34 35 36
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
37
	INSTALL.wince \
38
	extras/package/win32/vlc.exe.manifest \
39
	MAINTAINERS \
40
	extras/package/macosx/README.MacOSX.rtf \
Sam Hocevar's avatar
Sam Hocevar committed
41
	vlc-config.in.in \
42 43 44
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.mandriva.spec \
	extras/package/rpm/vlc.altlinux.spec \
45 46 47 48
	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
49

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
50 51
dist_noinst_SCRIPTS = bootstrap toolbox

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
52
BUILT_SOURCES_distclean = vlc-config compile extras/package/win32/vlc.win32.nsi
53
if HAVE_DARWIN
54
BUILT_SOURCES_clean = macosx-sdk
55 56 57
else
BUILT_SOURCES_clean =
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
58

59
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
60

61 62
SUFFIXES = 

63 64
DISTCHECK_CONFIGURE_FLAGS = \
	--enable-fast-install \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
65
	--disable-dbus \
66
	--disable-dvd --disable-mad --disable-libmpeg2 \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
67
	--disable-ffmpeg --disable-faad --disable-wxwidgets --disable-skins2 \
68
	--disable-live555 \
69
	--disable-fribidi --disable-glx
70

71
ACLOCAL_AMFLAGS = -I m4
72 73 74 75 76 77
AUTOMAKE_OPTIONS = \
	1.9 \
	-Wall \
	check-news \
	dist-bzip2 \
	no-dist-gzip
Christophe Mutricy's avatar
Christophe Mutricy committed
78
#	std-options
79

80 81
ChangeLog: Makefile.am
	rm -f -- "$@"
82
	cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
83 84
	ln -sf doc/ChangeLog-2008 "$@"

85 86 87 88 89
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
90 91
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/info.nib \
92
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
93 94 95
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/keyedobjects.nib \
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
	extras/package/macosx/Resources/English.lproj/About.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/About.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/About.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Open.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Open.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Open.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Preferences.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Preferences.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Wizard.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Wizard.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Extended.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Extended.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Extended.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Update.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Update.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Update.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Interaction.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/Interaction.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/Interaction.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/InteractionErrorPanel.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/InteractionErrorPanel.nib/info.nib \
	extras/package/macosx/Resources/English.lproj/InteractionErrorPanel.nib/keyedobjects.nib \
123
	extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
	extras/package/macosx/Resources/a52.icns \
	extras/package/macosx/Resources/aac.icns \
	extras/package/macosx/Resources/asf.icns \
	extras/package/macosx/Resources/asx.icns \
	extras/package/macosx/Resources/avi.icns \
	extras/package/macosx/Resources/bin.icns \
	extras/package/macosx/Resources/cue.icns \
	extras/package/macosx/Resources/dat.icns \
	extras/package/macosx/Resources/divx.icns \
	extras/package/macosx/Resources/dv.icns \
	extras/package/macosx/Resources/generic.icns \
	extras/package/macosx/Resources/m3u.icns \
	extras/package/macosx/Resources/mov.icns \
	extras/package/macosx/Resources/mp3.icns \
	extras/package/macosx/Resources/mp4.icns \
	extras/package/macosx/Resources/mpeg.icns \
	extras/package/macosx/Resources/mpeg1.icns \
	extras/package/macosx/Resources/mpeg2.icns \
	extras/package/macosx/Resources/mpeg4.icns \
	extras/package/macosx/Resources/mpg.icns \
	extras/package/macosx/Resources/ogg.icns \
	extras/package/macosx/Resources/ogm.icns \
	extras/package/macosx/Resources/pls.icns \
	extras/package/macosx/Resources/srt.icns \
	extras/package/macosx/Resources/sub.icns \
	extras/package/macosx/Resources/vlc.icns \
	extras/package/macosx/Resources/vob.icns \
	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
159 160 161
	extras/package/macosx/Resources/display_left.png \
	extras/package/macosx/Resources/display_middle.png \
	extras/package/macosx/Resources/display_right.png \
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 221 222 223 224 225 226 227 228
	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
229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254
	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 \
	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 \
255 256 257 258 259 260 261 262 263 264
	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 \
265 266
	extras/package/macosx/plugin/Info.plist.in \
	extras/package/macosx/plugin/InstallerInfo.plist.in \
267 268
	extras/package/macosx/plugin/InstallerDescription.plist \
	extras/package/macosx/plugin/pbdevelopment.plist \
269
	extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
270 271 272 273 274 275
	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
276
	extras/package/macosx/README.MacOSX.rtf \
277
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
278

279 280

###############################################################################
Rafaël Carré's avatar
Rafaël Carré committed
281
# Various utilities ( editor syntax files, D-Bus controller ... )
282 283
##############################################################################
EXTRA_DIST += \
284
	extras/analyser/zsh_completion.sh \
285 286 287 288
	extras/analyser/zsh.cpp \
	extras/analyser/emacs.init \
	extras/analyser/vlc.vim \
	extras/analyser/valgrind.suppressions \
289
	extras/buildsystem/make.pl \
290 291
	extras/misc/mpris.py \
	extras/misc/mpris.glade
292

Gildas Bazin's avatar
 
Gildas Bazin committed
293
dist-hook:
294
	distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
Gildas Bazin's avatar
 
Gildas Bazin committed
295

296 297 298 299
###############################################################################
# Building libvlc
###############################################################################

300
noinst_SCRIPTS = vlc-config
301
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
302 303
	$(SHELL) ./config.status --file=$@
	chmod 0755 $@
304
	touch $@
305

306 307
vlc-config.in: vlc-config.in.in
	./config.status --recheck
308
	touch $@
309

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
310
CLEANFILES = $(BUILT_SOURCES_clean)
311
DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile ChangeLog
312

313 314 315 316
# Shortcut for developpers to rebuild the core (libvlc + vlc)
# Don't use it if you don't know what it is about.
# Don't complain if it doesn't work. -- Courmisch
libvlc:
317
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
318

319 320
core: libvlc
	cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT)
321

322 323 324 325
doc:
	cd doc && $(MAKE) $(AM_MAKEFLAGS) doc

.PHONY: libvlc core doc
326

Christophe Mutricy's avatar
Christophe Mutricy committed
327 328
#To get some nice output
nice:
Christophe Mutricy's avatar
Christophe Mutricy committed
329
	$(top_builddir)/compile
Christophe Mutricy's avatar
Christophe Mutricy committed
330

331
if HAVE_BEOS
332
noinst_DATA = vlc-bundle
333
vlc-bundle: vlc
Sam Hocevar's avatar
Sam Hocevar committed
334 335 336
	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
337 338
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
339 340
	    mkdir -p $(top_builddir)/vlc-bundle/plugins ; \
	    cp "$$i$(LIBEXT)" $(top_builddir)/vlc-bundle/plugins/ ; \
341 342
	  fi ; \
	done
Sam Hocevar's avatar
Sam Hocevar committed
343 344 345 346
	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/ ; \
347 348
	  done ; \
	fi
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
349
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
350
	  mkdir -p "$(top_builddir)/vlc-bundle/share/locale/$$i/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
351
	  cp "$(top_builddir)/po/$$i.gmo" \
352
	    "$(top_builddir)/vlc-bundle/share/locale/$$i/LC_MESSAGES/vlc.mo" || true ; \
Eric Petit's avatar
Eric Petit committed
353
	done
Sam Hocevar's avatar
Sam Hocevar committed
354
	find $(top_builddir)/vlc-bundle -type f -exec mimeset -f "{}" \;
355 356
endif

357 358 359 360
###############################################################################
# Building aliases
###############################################################################

361
ALL_ALIASES = cvlc rvlc svlc wxvlc qvlc nvlc mvlc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
362
bin_SCRIPTS = $(ALIASES)
363
CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
364 365 366 367
EXTRA_SCRIPTS = $(ALL_ALIASES)

dist_noinst_SCRIPTS += make-alias

368
MKALIAS = bindir="$(bindir)" transform="$(transform)" program_prefix="$(program_prefix)" program_suffix="$(program_suffix)" $(top_srcdir)/make-alias $@
369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386

cvlc: make-alias
	$(MKALIAS) dummy

rvlc: make-alias
	$(MKALIAS) rc

svlc: make-alias
	$(MKALIAS) skins2

wxvlc: make-alias
	$(MKALIAS) wx

qvlc: make-alias
	$(MKALIAS) qt4

nvlc: make-alias
	$(MKALIAS) ncurses
387

388 389 390
mvlc: make-alias
	$(MKALIAS) maemo

391
if BUILD_VLC
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
392
noinst_SCRIPTS += vlc$(EXEEXT)
393
endif
394

395 396 397
vlc$(EXEEXT): Makefile.am
	rm -f -- vlc vlc.tmp
	echo '#! /bin/sh' > vlc.tmp
398
	echo 'exec "$$(dirname "$$0")/bin/vlc-static$(EXEEXT)" "--plugin-path=$$(dirname "$$0")/modules" "$$@"' >> vlc.tmp
399 400
	chmod +x vlc.tmp
	mv -f -- vlc.tmp vlc
401

402
if HAVE_DARWIN
403
if BUILD_VLC
404
# Create the MacOS X app
405
noinst_DATA = VLC.app
406
endif
407 408
endif

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

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

670 671 672 673 674
###############################################################################
# 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
675
# the same setup as the maintaner(s).
676
#
677

678 679 680
############################################################################
## Win                                                                    ##
############################################################################
681 682 683 684
win32_destdir=$(top_builddir)/vlc-$(VERSION)
win32_lua_destdir=$(win32_destdir)/lua
win32_http_destdir=$(win32_destdir)/http

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

695
# Copy relevant files
696
# Copy executables and libs
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
697
	cp "$(top_builddir)/bin/.libs/vlc$(EXEEXT)" "$(win32_destdir)/"
698 699 700
	cp "$(top_srcdir)/extras/package/win32/vlc.exe.manifest" "$(win32_destdir)/"
	cp "$(top_builddir)/src/.libs/libvlccore$(LIBEXT)" "$(win32_destdir)/"
	cp "$(top_builddir)/src/.libs/libvlc$(LIBEXT)" "$(win32_destdir)/"
701

702
# Copy Text files
703
	for file in AUTHORS MAINTAINERS THANKS ; \
704
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
705
	for file in NEWS COPYING README; \
706
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
707
	unix2dos "$(win32_destdir)/"*.txt || echo "WARNING: this shouldn't happen"
Gildas Bazin's avatar
 
Gildas Bazin committed
708

709
# Necessary icons
710
	cp $(srcdir)/share/vlc48x48.ico $(win32_destdir)/
711 712

# Copy the locales
713
	mkdir -p $(win32_destdir)/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
714
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
715
	  mkdir -p "$(win32_destdir)/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
716
	  cp "$(srcdir)/po/$${i}.gmo" \
717
	    "$(win32_destdir)/locale/$${i}/LC_MESSAGES/vlc.mo" \
Gildas Bazin's avatar
 
Gildas Bazin committed
718
            || true ; \
Gildas Bazin's avatar
 
Gildas Bazin committed
719
	done
720 721
	mkdir -p $(win32_destdir)/locale/qt4/
	cp $(QT4LOCALEDIR)/*.qm $(win32_destdir)/locale/qt4/ || true
Gildas Bazin's avatar
 
Gildas Bazin committed
722

723
#  Mozilla plugin
Gildas Bazin's avatar
 
Gildas Bazin committed
724
if BUILD_MOZILLA
725 726
	mkdir -p "$(win32_destdir)/mozilla"
	cp $(top_builddir)/projects/mozilla/.libs/npvlc$(LIBEXT) $(win32_destdir)/mozilla/
Gildas Bazin's avatar
 
Gildas Bazin committed
727 728
endif

729
# ActiveX plugin
730
if BUILD_ACTIVEX
731 732 733 734
	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/*
735

736
	cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/
737
endif
738

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

744 745
package-win32-base-debug: package-win-common
# Copy relevant files
746
# Script installer
747
	cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/"
748 749
	mkdir "$(win32_destdir)/languages"
	cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/"
750

751
# Plugins
752
	mkdir -p "$(win32_destdir)/plugins"
Christophe Mutricy's avatar
Christophe Mutricy committed
753
	find modules/ -name '*_plugin$(LIBEXT)' | while read i; do \
754
	  if test -n "$$i" ; then \
755
	    $(INSTALL) "$$i" "vlc-$(VERSION)/plugins/" ; \
756 757
	  fi ; done

758
# Contrib *.dll's
759
	cp $(srcdir)/extras/contrib/lib/*.dll "vlc-$(VERSION)/" || true
760

761 762
# Copy the lua scripts (HTTP)
if BUILD_LUA
763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784
	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
785
endif
786

787
if BUILD_LUA
788
#Lua Scripts
789 790 791 792
	$(INSTALL) -d $(win32_lua_destdir)
	for i in $(srcdir)/share/lua/*.* ; do \
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/`basename $${i}` ; \
	done
793
	$(INSTALL) -d $(win32_lua_destdir)/playlist
794
	for i in $(srcdir)/share/lua/playlist/*.* ; do \
795
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/playlist/`basename $${i}` ; \
796
	done
797
	$(INSTALL) -d $(win32_lua_destdir)/meta
798
	for i in $(srcdir)/share/lua/meta/*.* ; do \
799
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/`basename $${i}` ; \
800
	done
801
	$(INSTALL) -d $(win32_lua_destdir)/intf
802
	for i in $(srcdir)/share/lua/intf/*.* ; do \
803
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/`basename $${i}` ; \
804
	done
805
	$(INSTALL) -d $(win32_lua_destdir)/intf/modules
806
	for i in $(srcdir)/share/lua/intf/modules/*.* ; do \
807
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/modules/`basename $${i}` ; \
808 809 810 811 812
	done
endif

# Copy the http files
if BUILD_HTTPD
813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848
	mkdir -p "$(win32_http_destdir)/images"
	mkdir -p "$(win32_http_destdir)/requests"
	mkdir -p "$(win32_http_destdir)/js"
	mkdir -p "$(win32_http_destdir)/dialogs"
	mkdir -p "$(win32_http_destdir)/old"
	mkdir -p "$(win32_http_destdir)/old/vlm"
	mkdir -p "$(win32_http_destdir)/old/admin"
	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

	cp $(srcdir)/share/http/old/*.html $(win32_http_destdir)/old/
	unix2dos $(win32_http_destdir)/old/*.html
	cp $(srcdir)/share/http/old/*.css $(win32_http_destdir)/old/
	cp $(srcdir)/share/http/old/.hosts $(win32_http_destdir)/old/
	cp $(srcdir)/share/http/old/*.png $(win32_http_destdir)/old/
	cp $(srcdir)/share/http/old/vlm/*.html $(win32_http_destdir)/old/vlm/
	unix2dos $(win32_http_destdir)/old/vlm/*.html
	cp $(srcdir)/share/http/old/admin/*.html $(win32_http_destdir)/old/admin/
	unix2dos $(win32_http_destdir)/old/admin/*.html
	cp $(srcdir)/share/http/old/admin/.access $(win32_http_destdir)/old/admin/
849 850 851 852
endif

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

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

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

890
#strip exe and main dll
891
package-win-common-strip: package-win32-base-debug
892 893
	for i in "" vlc-$(VERSION)/*$(LIBEXT) ; \
	  do if test -n "$$i" ; then $(STRIP) "$$i" ; fi; done
894
if BUILD_MOZILLA
895
	$(STRIP) "vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)"
896 897
endif
if BUILD_ACTIVEX
898
	$(STRIP) "vlc-$(VERSION)/activex/axvlc$(LIBEXT)"
899 900
endif

901
#strip all plugins dll
902
package-win32-base: package-win-common-strip
903
	for i in "" $(win32_destdir)/plugins/*$(LIBEXT) ; \
904 905
	  do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done

906
package-win32-base-exe: package-win32-base
907
# Create package
908
	rm -Rf $(win32_destdir)/sdk
909
	if makensis -VERSION >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
910
	    MAKENSIS="makensis"; \
911
	elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
912
	    MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
913
	elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
914
	    MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
Rafaël Carré's avatar
typo  
Rafaël Carré committed
915
	elif wine --version >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
916
	    MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
917 918 919
	else \
	    echo 'Error: cannot locate makensis tool'; exit 1; \
	fi; \
920
	eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
921

922
package-win32-base-zip: package-win32-base
923
# Create package 
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
924
	rm -f -- vlc-$(VERSION)-win32.zip
925
	zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
Gildas Bazin's avatar
 
Gildas Bazin committed
926

927 928 929 930 931
package-win32-base-debug-zip: package-win32-base-debug
# Create package
	rm -f -- vlc-$(VERSION)-win32-debug.zip
	zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)

932 933
package-win32-base-7zip: package-win32-base
# Create package 
934
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
935

936 937 938 939
package-win32-base-debug-7zip: package-win32-base-debug
# Create package
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32-debug.7z vlc-$(VERSION)

Gildas Bazin's avatar
 
Gildas Bazin committed
940 941
package-win32-exe: package-win32-base package-win32-base-exe
# Clean up
942
	rm -Rf $(win32_destdir)
943

944
package-win32-zip: package-win32-base-zip
Gildas Bazin's avatar
 
Gildas Bazin committed
945
# Clean up
946
	rm -Rf $(win32_destdir)
Gildas Bazin's avatar
 
Gildas Bazin committed
947

948 949 950 951
package-win32-debug-zip: package-win32-base-debug-zip
# Clean up
	rm -Rf $(win32_destdir)

952 953
package-win32-7zip: package-win32-base-7zip
# Clean up
954
	rm -Rf $(win32_destdir)
955

956 957 958 959
package-win32-debug-7zip: package-win32-base-debug-7zip
# Clean up
	rm -Rf $(win32_destdir)

960
package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe 
961 962

package-win32: package-win32-no-clean
963
# Clean up
964
	rm -Rf $(win32_destdir)
965

966 967 968 969
package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip
# Clean up
	rm -Rf $(win32_destdir)

970
package-wince-base: package-win-common package-win-common-strip
971 972 973

package-wince-base-zip:
# Create package 
974
	zip -r vlc-$(VERSION)-wince.zip vlc-$(VERSION)
975 976 977

package-wince: package-wince-base  package-wince-base-zip
# Clean up
978
	rm -Rf $(win32_destdir)
979 980


981 982 983
#####################################################################
##   BeOS                                                          ##
#####################################################################
984 985
package-beos:
# Check that tmp isn't in the way
986
	@if test -e $(srcdir)/tmp; then \
Sam Hocevar's avatar
Sam Hocevar committed
987
	  echo "Error: please remove $(srcdir)/tmp, it is in the way"; \
988
	  false ; \
989
	else \
990
	  echo "OK." ; mkdir $(srcdir)/tmp ; \
991
	fi
992

993
# Copy relevant files
994
	mkdir -p $(srcdir)/tmp/vlc
995
	cd $(srcdir) && cp -R vlc-bundle/* AUTHORS COPYING ChangeLog README \
996
	  THANKS NEWS tmp/vlc/
997 998

# Create debug package
999 1000 1001
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc
	find $(srcdir)/tmp/vlc -exec mimeset -f {} \;
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-$(VERSION)
1002
	(cd $(srcdir)/tmp && zip -9 -r vlc-$(VERSION)-BeOS-debug.zip vlc-$(VERSION) )
1003 1004
	mv $(srcdir)/tmp/vlc-$(VERSION)-BeOS-debug.zip $(srcdir)/
	mv $(srcdir)/tmp/vlc-$(VERSION) $(srcdir)/tmp/vlc
1005

1006
# Create normal package
1007
	$(STRIP) --strip-debug --strip-unneeded $(srcdir)/tmp/vlc/vlc
1008
	find $(srcdir)/tmp/vlc -name 'lib*.so' -exec $(STRIP) \
1009 1010 1011 1012
	  --strip-debug --strip-unneeded "{}" \;
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc
	find $(srcdir)/tmp/vlc -exec mimeset -f {} \;
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-$(VERSION)
1013
	(cd $(srcdir)/tmp &&  zip -9 -r vlc-$(VERSION)-BeOS.zip vlc-$(VERSION) )
1014
	mv $(srcdir)/tmp/vlc-$(VERSION)-BeOS.zip $(srcdir)/
1015

1016
# Clean up
1017
	rm -Rf $(srcdir)/tmp
1018

1019 1020 1021
#########################################################################
## MacOS X                                                             ##
#########################################################################
1022
package-macosx: VLC-release.app ChangeLog
1023
# Check that the temporary location isn't in the way
1024 1025
	@if test -e "$(top_builddir)/vlc-$(VERSION)/"; then \
	  rm -Rf "$(top_builddir)/vlc-$(VERSION)/" ; \
1026 1027
	fi

1028 1029
	echo "Create package directory: vlc-$(VERSION)/";
	mkdir -p "$(top_builddir)/vlc-$(VERSION)/";
1030

1031
# Copy relevant files 
1032
	@if test -e "$(top_builddir)/VLC-release.app/"; then \
1033
	  cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
1034
	else \
1035
	  cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
1036
	fi
1037 1038 1039
	cd "$(srcdir)" && mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
          mkdir -p $(top_builddir)/vlc-$(VERSION)/.background/ && \
          cp AUTHORS COPYING ChangeLog README THANKS NEWS $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
1040
          cp -R  extras/package/macosx/Delete_Preferences.app $(top_builddir)/vlc-$(VERSION)/Goodies/Delete\ VLC\ Preferences.app && \
Rafaël Carré's avatar
Rafaël Carré committed
1041
	  cp extras/package/macosx/README.MacOSX.rtf $(top_builddir)/vlc-$(VERSION)/Read\ Me.rtf && \
1042
	  cp extras/package/macosx/Resources/about_bg.png $(top_builddir)/vlc-$(VERSION)/.background/background.png
1043 1044

# Place a link to the application folder
1045
	ln -s /Applications $(top_builddir)/vlc-$(VERSION)/Applications
1046

1047
# Create disk image (temporarily taken from the 0.8.6-bugfix branch to provide reliable NBs)
1048 1049
	echo "Creating disk image"
	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
Rémi Denis-Courmont's avatar