Makefile.am 47.1 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 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 23
SUBDIRS = po src
if LOADER
SUBDIRS += libs/loader
endif
if HAVE_LIBGCRYPT
SUBDIRS += libs/srtp
endif
SUBDIRS += modules share doc test
24 25 26 27
if BUILD_MOZILLA
SUBDIRS += projects/mozilla
endif
if BUILD_ACTIVEX
28
SUBDIRS += projects/activex
29
endif
30

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

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
47 48
dist_noinst_SCRIPTS = bootstrap toolbox

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

56
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
57

58 59
SUFFIXES = 

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

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

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

82 83 84 85 86
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
87 88
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/classes.nib \
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/info.nib \
89
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
90 91 92
	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 \
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
	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 \
120
	extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
121 122 123 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
	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
156 157 158
	extras/package/macosx/Resources/display_left.png \
	extras/package/macosx/Resources/display_middle.png \
	extras/package/macosx/Resources/display_right.png \
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 221 222 223 224 225
	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
226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251
	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 \
252 253 254 255 256 257 258 259 260 261
	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 \
262 263
	extras/package/macosx/plugin/Info.plist.in \
	extras/package/macosx/plugin/InstallerInfo.plist.in \
264 265
	extras/package/macosx/plugin/InstallerDescription.plist \
	extras/package/macosx/plugin/pbdevelopment.plist \
266
	extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
267 268 269 270 271 272
	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
273
	extras/package/macosx/README.MacOSX.rtf \
274
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
275

276 277

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

Gildas Bazin's avatar
 
Gildas Bazin committed
290
dist-hook:
291
	distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
Gildas Bazin's avatar
 
Gildas Bazin committed
292

293 294 295 296
###############################################################################
# Building libvlc
###############################################################################

297
noinst_SCRIPTS = vlc-config
298
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
299 300
	$(SHELL) ./config.status --file=$@
	chmod 0755 $@
301
	touch $@
302

303 304
vlc-config.in: vlc-config.in.in
	./config.status --recheck
305
	touch $@
306

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

310 311 312 313
# 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:
314
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlccore.la
315

316
core:
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
317
	cd src && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT)
318

319 320 321 322
doc:
	cd doc && $(MAKE) $(AM_MAKEFLAGS) doc

.PHONY: libvlc core doc
323

Christophe Mutricy's avatar
Christophe Mutricy committed
324 325
#To get some nice output
nice:
Christophe Mutricy's avatar
Christophe Mutricy committed
326
	$(top_builddir)/compile
Christophe Mutricy's avatar
Christophe Mutricy committed
327

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

354 355 356 357 358
###############################################################################
# Building aliases
###############################################################################

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

dist_noinst_SCRIPTS += make-alias

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

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
384

385
if BUILD_VLC
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
386
noinst_SCRIPTS += vlc$(EXEEXT)
387
endif
388

389 390 391 392 393 394
vlc$(EXEEXT): Makefile.am
	rm -f -- vlc vlc.tmp
	echo '#! /bin/sh' > vlc.tmp
	echo 'exec "$$(dirname "$$0")/src/vlc$(EXEEXT)" "--plugin-path=$$(dirname "$$0")/modules" "$$@"' >> vlc.tmp
	chmod +x vlc.tmp
	mv -f -- vlc.tmp vlc
395

396
if HAVE_DARWIN
397
if BUILD_VLC
398
# Create the MacOS X app
399
noinst_DATA = VLC.app
400
endif
401 402
endif

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

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

657 658 659 660 661
###############################################################################
# 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
662
# the same setup as the maintaner(s).
663
#
664

665 666 667 668
win32_destdir=$(top_builddir)/vlc-$(VERSION)
win32_lua_destdir=$(win32_destdir)/lua
win32_http_destdir=$(win32_destdir)/http

669
#Win-common if for win32 and wince
670
package-win-common:
671
# Check that tmp isn't in the way
672 673
	@if test -e "$(win32_destdir)"; then \
	  echo "Error: please remove $(win32_destdir), it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
674
	  false; \
675
	else \
676
	  echo "OK."; mkdir -p "$(win32_destdir)"; \
677
	fi
678

679
# Copy relevant files
680
# Copy executables and libs
681 682 683 684
	cp "$(top_builddir)/src/.libs/vlc$(EXEEXT)" "$(win32_destdir)/"
	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)/"
685

686
# Copy Text files
687
	for file in AUTHORS MAINTAINERS THANKS ; \
688
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
689
	for file in NEWS COPYING README; \
690 691
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
	unix2dos "$(win32_destdir)/"*.txt
Gildas Bazin's avatar
 
Gildas Bazin committed
692

693
# Necessary icons
694
	cp $(srcdir)/share/vlc48x48.ico $(win32_destdir)/
695 696

# Copy the locales
697
	mkdir -p $(win32_destdir)/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
698
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
699
	  mkdir -p "$(win32_destdir)/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
700
	  cp "$(srcdir)/po/$${i}.gmo" \
701
	    "$(win32_destdir)/locale/$${i}/LC_MESSAGES/vlc.mo" \
Gildas Bazin's avatar
 
Gildas Bazin committed
702
            || true ; \
Gildas Bazin's avatar
 
Gildas Bazin committed
703
	done
704 705
	mkdir -p $(win32_destdir)/locale/qt4/
	cp $(QT4LOCALEDIR)/*.qm $(win32_destdir)/locale/qt4/ || true
Gildas Bazin's avatar
 
Gildas Bazin committed
706

707
#  Mozilla plugin
Gildas Bazin's avatar
 
Gildas Bazin committed
708
if BUILD_MOZILLA
709 710
	mkdir -p "$(win32_destdir)/mozilla"
	cp $(top_builddir)/projects/mozilla/.libs/npvlc$(LIBEXT) $(win32_destdir)/mozilla/
Gildas Bazin's avatar
 
Gildas Bazin committed
711 712
endif

713
# ActiveX plugin
714
if BUILD_ACTIVEX
715 716 717 718
	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/*
719

720
	cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/
721
endif
722

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

728 729
package-win32-base-debug: package-win-common
# Copy relevant files
730
# Script installer
731
	cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/"
732 733
	mkdir "$(win32_destdir)/languages"
	cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/"
734

735
# Plugins
736
	mkdir -p "$(win32_destdir)/plugins"
Christophe Mutricy's avatar
Christophe Mutricy committed
737
	find modules/ -name '*_plugin$(LIBEXT)' | while read i; do \
738
	  if test -n "$$i" ; then \
739
	    $(INSTALL) "$$i" "vlc-$(VERSION)/plugins/" ; \
740 741
	  fi ; done

742 743
# Copy the lua scripts (HTTP)
if BUILD_LUA
744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765
	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
766
endif
767

768
if BUILD_LUA
769
#Lua Scripts
770
	$(INSTALL) -d $(win32_lua_destdir)/playlist
771
	for i in $(srcdir)/share/lua/playlist/*.* ; do \
772
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/playlist/`basename $${i}` ; \
773
	done
774
	$(INSTALL) -d $(win32_lua_destdir)/meta
775
	for i in $(srcdir)/share/lua/meta/*.* ; do \
776
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/`basename $${i}` ; \
777
	done
778
	$(INSTALL) -d $(win32_lua_destdir)/intf
779
	for i in $(srcdir)/share/lua/intf/*.* ; do \
780
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/`basename $${i}` ; \
781
	done
782
	$(INSTALL) -d $(win32_lua_destdir)/intf/modules
783
	for i in $(srcdir)/share/lua/intf/modules/*.* ; do \
784
	  $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/intf/modules/`basename $${i}` ; \
785 786 787 788 789
	done
endif

# Copy the http files
if BUILD_HTTPD
790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825
	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/
826 827 828 829
endif

if BUILD_SKINS
# Skins
830
	mkdir -p $(win32_destdir)/skins/fonts
831
	for i in $(srcdir)/share/skins2/fonts/*.*; do \
832
	  cp -- "$$i" $(win32_destdir)/skins/fonts/ || true ; \
833 834
	done
	for i in $(srcdir)/share/skins2/*.*; do \
835
	  cp -- "$$i" $(win32_destdir)/skins/ || true ; \
836
	done
837
endif
838

839
if BUILD_OSDMENU
840
#OSD Menu
841 842
	mkdir -p "$(win32_destdir)/osdmenu"
	cp $(srcdir)/share/osdmenu/*.* "$(win32_destdir)/osdmenu"
843
	for dir in dvd dvd/selected dvd/unselect dvd/selection dvd/volume default default/selected default/selection default/volume minimal;do \
844 845 846
		mkdir -p "$(win32_destdir)/osdmenu/$$dir"; \
		for file in $(srcdir)/share/osdmenu/$${dir}/*.png ;do \
			 cp -- "$$file" "$(win32_destdir)/osdmenu/$$dir"; \
847 848
		done; \
	done
849 850
	unix2dos $(win32_destdir)/osdmenu/*.cfg;
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
851 852 853
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
854
	done
855
endif
856

857
# SDK
858 859
	mkdir -p "$(win32_destdir)/sdk.tmp"
	mkdir -p "$(win32_destdir)/sdk"
860 861 862 863 864 865 866
	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

867
#strip exe and main dll
868 869
package-win-common-strip: package-win32-base-debug
	$(STRIP) "vlc-$(VERSION)/vlc$(EXEEXT)"
870 871 872
	$(STRIP) "vlc-$(VERSION)/libvlccore$(LIBEXT)"
	$(STRIP) "vlc-$(VERSION)/libvlc$(LIBEXT)"
if BUILD_MOZILLA
873
	$(STRIP) "vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)"
874 875
endif
if BUILD_ACTIVEX
876
	$(STRIP) "vlc-$(VERSION)/activex/axvlc$(LIBEXT)"
877 878
endif

879
#strip all plugins dll
880
package-win32-base: package-win-common-strip
881
	for i in "" $(win32_destdir)/plugins/*$(LIBEXT) ; \
882 883
	  do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done

884
package-win32-base-exe: package-win32-base
885
# Create package
886
	rm -Rf $(win32_destdir)/sdk
887
	if makensis -VERSION >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
888
	    MAKENSIS="makensis"; \
889
	elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
890
	    MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
891
	elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
892
	    MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
Rafaël Carré's avatar
typo  
Rafaël Carré committed
893
	elif wine --version >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
894
	    MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
895 896 897
	else \
	    echo 'Error: cannot locate makensis tool'; exit 1; \
	fi; \
898
	eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
899

900
package-win32-base-zip: package-win32-base
901
# Create package 
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
902
	rm -f -- vlc-$(VERSION)-win32.zip
903
	zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
Gildas Bazin's avatar
 
Gildas Bazin committed
904

905 906
package-win32-base-7zip: package-win32-base
# Create package 
907
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
908

Gildas Bazin's avatar
 
Gildas Bazin committed
909 910
package-win32-exe: package-win32-base package-win32-base-exe
# Clean up
911
	rm -Rf $(win32_destdir)
912

913
package-win32-zip: package-win32-base-zip
Gildas Bazin's avatar
 
Gildas Bazin committed
914
# Clean up
915
	rm -Rf $(win32_destdir)
Gildas Bazin's avatar
 
Gildas Bazin committed
916

917 918
package-win32-7zip: package-win32-base-7zip
# Clean up
919
	rm -Rf $(win32_destdir)
920

921
package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe 
922 923

package-win32: package-win32-no-clean
924
# Clean up
925
	rm -Rf $(win32_destdir)
926

927
package-wince-base: package-win-common package-win-common-strip
928 929 930

package-wince-base-zip:
# Create package 
931
	zip -r vlc-$(VERSION)-wince.zip vlc-$(VERSION)
932 933 934

package-wince: package-wince-base  package-wince-base-zip
# Clean up
935
	rm -Rf $(win32_destdir)
936 937


938 939
package-beos:
# Check that tmp isn't in the way
940
	@if test -e $(srcdir)/tmp; then \
Sam Hocevar's avatar
Sam Hocevar committed
941
	  echo "Error: please remove $(srcdir)/tmp, it is in the way"; \
942
	  false ; \
943
	else \
944
	  echo "OK." ; mkdir $(srcdir)/tmp ; \
945
	fi
946

947
# Copy relevant files
948
	mkdir -p $(srcdir)/tmp/vlc
949
	cd $(srcdir) && cp -R vlc-bundle/* AUTHORS COPYING ChangeLog README \
950
	  THANKS NEWS tmp/vlc/
951 952

# Create debug package
953 954 955
	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)
956
	(cd $(srcdir)/tmp && zip -9 -r vlc-$(VERSION)-BeOS-debug.zip vlc-$(VERSION) )
957 958
	mv $(srcdir)/tmp/vlc-$(VERSION)-BeOS-debug.zip $(srcdir)/
	mv $(srcdir)/tmp/vlc-$(VERSION) $(srcdir)/tmp/vlc
959

960
# Create normal package
961
	$(STRIP) --strip-debug --strip-unneeded $(srcdir)/tmp/vlc/vlc
962