Makefile.am 44.5 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.
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
8
#  - src (libvlc) is nedeed by modules
9
#  - libs/* are needed by modules
10
DIST_SUBDIRS = m4 compat doc po share src modules lib bin test
11
SUBDIRS = compat doc po share src modules lib
12 13 14
if BUILD_VLC
SUBDIRS += bin
endif
15
SUBDIRS += test
16

17 18 19
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
20
	extras/package/win32/vlc.exe.manifest \
21
	extras/package/win32/libvlc.dll.manifest \
22
	extras/package/macosx/README.MacOSX.rtf \
23 24
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
25
	extras/package/win32/vlc.win32.nsi.in \
26
	extras/package/win32/spad.nsi.in \
27 28
	extras/package/win32/UAC.nsh \
	extras/package/win32/UAC.dll \
29
	extras/package/win32/languages/declaration.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
30 31 32 33
	extras/package/win32/languages/bengali.nsh \
	extras/package/win32/languages/brazilian_portuguese.nsh \
	extras/package/win32/languages/bulgarian.nsh \
	extras/package/win32/languages/catalan.nsh \
34
	extras/package/win32/languages/danish.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
35
	extras/package/win32/languages/dutch.nsh \
36
	extras/package/win32/languages/english.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
	extras/package/win32/languages/estonian.nsh \
	extras/package/win32/languages/finnish.nsh \
	extras/package/win32/languages/french.nsh \
	extras/package/win32/languages/german.nsh \
	extras/package/win32/languages/hungarian.nsh \
	extras/package/win32/languages/italian.nsh \
	extras/package/win32/languages/japanese.nsh \
	extras/package/win32/languages/occitan.nsh \
	extras/package/win32/languages/polish.nsh \
	extras/package/win32/languages/punjabi.nsh \
	extras/package/win32/languages/romanian.nsh \
	extras/package/win32/languages/schinese.nsh \
	extras/package/win32/languages/slovak.nsh \
	extras/package/win32/languages/slovenian.nsh \
	extras/package/win32/languages/sorani.nsh \
52
	extras/package/win32/languages/spanish.nsh
53

54
dist_noinst_SCRIPTS = bootstrap
55
nodist_noinst_SCRIPTS = compile
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
56

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
57
BUILT_SOURCES_distclean =
58 59 60 61
if HAVE_WIN32
BUILT_SOURCES_distclean += \
	extras/package/win32/vlc.win32.nsi extras/package/win32/spad.nsi
endif
62
if HAVE_DARWIN
63
BUILT_SOURCES_clean = macosx-sdk
64 65 66
else
BUILT_SOURCES_clean =
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
67

68
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
69

70 71
SUFFIXES = 

72 73
DISTCHECK_CONFIGURE_FLAGS = \
	--enable-fast-install \
74 75 76
	--disable-a52 \
	--disable-avcodec --disable-avformat \
	--disable-postproc --disable-swscale \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
77
	--disable-dbus \
78 79
	--disable-mad --disable-libmpeg2 \
	--disable-faad --disable-skins2 \
80
	--disable-live555 \
81
	--disable-fribidi --disable-glx \
82
	--disable-mkv \
83
	--with-kde-solid='$${datadir}/kde4/apps'
84

85
ACLOCAL_AMFLAGS = -I m4
86
AUTOMAKE_OPTIONS = \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
87
	1.11 \
88 89
	-Wall \
	check-news \
90
	dist-xz \
91
	no-dist-gzip
Christophe Mutricy's avatar
Christophe Mutricy committed
92
#	std-options
93

94 95
ChangeLog: Makefile.am
	rm -f -- "$@"
96
	cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
KO Myung-Hun's avatar
KO Myung-Hun committed
97
	$(LN_S) -f doc/ChangeLog-2009 "$@"
98

99 100 101 102 103
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
104 105 106 107 108
	extras/package/macosx/Resources/about_bg.png \
	extras/package/macosx/Resources/add_embedded.png \
	extras/package/macosx/Resources/add_embedded_graphite.png \
	extras/package/macosx/Resources/dsa_pub.pem \
	extras/package/macosx/Resources/embedded_vout.png \
109 110 111 112 113 114 115 116 117 118 119 120
	extras/package/macosx/Resources/English.lproj/About.xib \
	extras/package/macosx/Resources/English.lproj/AudioEffects.xib \
	extras/package/macosx/Resources/English.lproj/Bookmarks.xib \
	extras/package/macosx/Resources/English.lproj/CoreDialogs.xib \
	extras/package/macosx/Resources/English.lproj/ErrorPanel.xib \
	extras/package/macosx/Resources/English.lproj/MainMenu.xib \
	extras/package/macosx/Resources/English.lproj/MediaInfo.xib \
	extras/package/macosx/Resources/English.lproj/Open.xib \
	extras/package/macosx/Resources/English.lproj/Preferences.xib \
	extras/package/macosx/Resources/English.lproj/SyncTracks.xib \
	extras/package/macosx/Resources/English.lproj/VideoEffects.xib \
	extras/package/macosx/Resources/English.lproj/Wizard.xib \
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 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170
	extras/package/macosx/Resources/fspanel/fs_background.png \
	extras/package/macosx/Resources/fspanel/fs_exit_fullscreen.png \
	extras/package/macosx/Resources/fspanel/fs_exit_fullscreen_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_forward.png \
	extras/package/macosx/Resources/fspanel/fs_forward_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_pause.png \
	extras/package/macosx/Resources/fspanel/fs_pause_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_play.png \
	extras/package/macosx/Resources/fspanel/fs_play_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_rewind.png \
	extras/package/macosx/Resources/fspanel/fs_rewind_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_skip_next.png \
	extras/package/macosx/Resources/fspanel/fs_skip_next_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_skip_previous.png \
	extras/package/macosx/Resources/fspanel/fs_skip_previous_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_stop.png \
	extras/package/macosx/Resources/fspanel/fs_stop_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_time_slider.png \
	extras/package/macosx/Resources/fspanel/fs_time_slider_knob.png \
	extras/package/macosx/Resources/fspanel/fs_time_slider_knob_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_volume_max.png \
	extras/package/macosx/Resources/fspanel/fs_volume_max_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_volume_mute.png \
	extras/package/macosx/Resources/fspanel/fs_volume_mute_highlight.png \
	extras/package/macosx/Resources/fspanel/fs_volume_slider_bar.png \
	extras/package/macosx/Resources/fspanel/fs_volume_slider_knob.png \
	extras/package/macosx/Resources/fspanel/fs_volume_slider_knob_highlight.png \
	extras/package/macosx/Resources/icons/aiff.icns \
	extras/package/macosx/Resources/icons/audio.icns \
	extras/package/macosx/Resources/icons/avi.icns \
	extras/package/macosx/Resources/icons/flv.icns \
	extras/package/macosx/Resources/icons/generic.icns \
	extras/package/macosx/Resources/icons/m4a.icns \
	extras/package/macosx/Resources/icons/m4v.icns \
	extras/package/macosx/Resources/icons/mkv.icns \
	extras/package/macosx/Resources/icons/mov.icns \
	extras/package/macosx/Resources/icons/movie.icns \
	extras/package/macosx/Resources/icons/mp3.icns \
	extras/package/macosx/Resources/icons/mpeg.icns \
	extras/package/macosx/Resources/icons/ogg.icns \
	extras/package/macosx/Resources/icons/playlist.icns \
	extras/package/macosx/Resources/icons/rm.icns \
	extras/package/macosx/Resources/icons/subtitle.icns \
	extras/package/macosx/Resources/icons/vlc.icns \
	extras/package/macosx/Resources/icons/vob.icns \
	extras/package/macosx/Resources/icons/wav.icns \
	extras/package/macosx/Resources/icons/wma.icns \
	extras/package/macosx/Resources/icons/wmv.icns \
	extras/package/macosx/Resources/mainwindow/back-pressed.png \
	extras/package/macosx/Resources/mainwindow/back.png \
171
	extras/package/macosx/Resources/mainwindow/bottom-background.png \
172
	extras/package/macosx/Resources/mainwindow/bottom-bar-mini.png \
173 174
	extras/package/macosx/Resources/mainwindow/dropzone-background.png \
	extras/package/macosx/Resources/mainwindow/dropzone.png \
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
	extras/package/macosx/Resources/mainwindow/effects-double-buttons-blue.png \
	extras/package/macosx/Resources/mainwindow/effects-double-buttons-pressed.png \
	extras/package/macosx/Resources/mainwindow/effects-double-buttons.png \
	extras/package/macosx/Resources/mainwindow/effects-one-button-blue.png \
	extras/package/macosx/Resources/mainwindow/effects-one-button.png \
	extras/package/macosx/Resources/mainwindow/forward-pressed.png \
	extras/package/macosx/Resources/mainwindow/forward.png \
	extras/package/macosx/Resources/mainwindow/fullscreen-double-buttons-pressed.png \
	extras/package/macosx/Resources/mainwindow/fullscreen-double-buttons.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-fill-left.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-fill-middle.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-fill-right.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-knob.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-wrapper-left.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-wrapper-middle.png \
	extras/package/macosx/Resources/mainwindow/mini-progressbar-wrapper-right.png \
	extras/package/macosx/Resources/mainwindow/pause-pressed.png \
	extras/package/macosx/Resources/mainwindow/pause.png \
	extras/package/macosx/Resources/mainwindow/play-pressed.png \
	extras/package/macosx/Resources/mainwindow/play.png \
	extras/package/macosx/Resources/mainwindow/playlist-blue.png \
	extras/package/macosx/Resources/mainwindow/playlist-pressed.png \
	extras/package/macosx/Resources/mainwindow/playlist.png \
	extras/package/macosx/Resources/mainwindow/progression-fill-left.png \
	extras/package/macosx/Resources/mainwindow/progression-fill-middle.png \
	extras/package/macosx/Resources/mainwindow/progression-fill-right.png \
	extras/package/macosx/Resources/mainwindow/progression-knob.png \
	extras/package/macosx/Resources/mainwindow/progression-track-wrapper-left.png \
	extras/package/macosx/Resources/mainwindow/progression-track-wrapper-middle.png \
	extras/package/macosx/Resources/mainwindow/progression-track-wrapper-right.png \
	extras/package/macosx/Resources/mainwindow/repeat-all-pressed.png \
	extras/package/macosx/Resources/mainwindow/repeat-all.png \
	extras/package/macosx/Resources/mainwindow/repeat-one-pressed.png \
	extras/package/macosx/Resources/mainwindow/repeat-one.png \
	extras/package/macosx/Resources/mainwindow/repeat-pressed.png \
	extras/package/macosx/Resources/mainwindow/repeat.png \
	extras/package/macosx/Resources/mainwindow/shuffle-blue-pressed.png \
	extras/package/macosx/Resources/mainwindow/shuffle-on.png \
	extras/package/macosx/Resources/mainwindow/shuffle-pressed.png \
	extras/package/macosx/Resources/mainwindow/shuffle.png \
	extras/package/macosx/Resources/mainwindow/stop-pressed.png \
	extras/package/macosx/Resources/mainwindow/stop.png \
	extras/package/macosx/Resources/mainwindow/volume-high.png \
	extras/package/macosx/Resources/mainwindow/volume-low.png \
	extras/package/macosx/Resources/mainwindow/volume-slider-knob.png \
	extras/package/macosx/Resources/mainwindow/volume-slider-track.png \
	extras/package/macosx/Resources/mainwindow_dark/back-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/back_dark.png \
223
	extras/package/macosx/Resources/mainwindow_dark/bottom-background_dark.png \
224 225 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 252 253 254 255 256 257 258 259 260 261 262 263 264
	extras/package/macosx/Resources/mainwindow_dark/effects-double-buttons-blue_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/effects-double-buttons-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/effects-double-buttons_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/effects-one-button-blue_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/effects-one-button_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/forward-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/forward_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/fullscreen-double-buttons-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/fullscreen-double-buttons_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/pause-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/pause_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/play-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/play_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/playlist-blue-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/playlist-blue_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/playlist-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/playlist_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progressbar-fill-left_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progressbar-fill-middle_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progressbar-fill-right_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progression-knob_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progression-track-wrapper-left_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progression-track-wrapper-middle_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/progression-track-wrapper-right_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/repeat-all-blue-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/repeat-all-blue_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/repeat-one-blue-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/repeat-one-blue_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/repeat-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/repeat_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/shuffle-blue-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/shuffle-blue_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/shuffle-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/shuffle_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/stop-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/stop_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/volume-high_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/volume-low_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/volume-slider-knob_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/volume-slider-track_dark.png \
	extras/package/macosx/Resources/noart.png \
265
	extras/package/macosx/Resources/pause_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
266
	extras/package/macosx/Resources/pause_embedded_graphite.png \
267
	extras/package/macosx/Resources/play_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
268
	extras/package/macosx/Resources/play_embedded_graphite.png \
269 270 271 272 273 274 275 276
	extras/package/macosx/Resources/prefs/spref_cone_Audio_64.png \
	extras/package/macosx/Resources/prefs/spref_cone_Hotkeys_64.png \
	extras/package/macosx/Resources/prefs/spref_cone_Input_64.png \
	extras/package/macosx/Resources/prefs/spref_cone_Interface_64.png \
	extras/package/macosx/Resources/prefs/spref_cone_Subtitles_64.png \
	extras/package/macosx/Resources/prefs/spref_cone_Video_64.png \
	extras/package/macosx/Resources/README \
	extras/package/macosx/Resources/repeat_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
277 278
	extras/package/macosx/Resources/repeat_embedded_graphite.png \
	extras/package/macosx/Resources/repeat_single_embedded_graphite.png \
279
	extras/package/macosx/Resources/shuffle_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
280
	extras/package/macosx/Resources/shuffle_embedded_graphite.png \
281 282 283 284 285 286 287
	extras/package/macosx/Resources/sidebar-icons/document-music-playlist.png \
	extras/package/macosx/Resources/sidebar-icons/film-cast.png \
	extras/package/macosx/Resources/sidebar-icons/film.png \
	extras/package/macosx/Resources/sidebar-icons/music-beam.png \
	extras/package/macosx/Resources/sidebar-icons/network-cloud.png \
	extras/package/macosx/Resources/sidebar-icons/picture.png \
	extras/package/macosx/Resources/sidebar-icons/README \
288
	extras/package/macosx/Resources/skip_forward_active_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
289
	extras/package/macosx/Resources/skip_forward_embedded_graphite.png \
290
	extras/package/macosx/Resources/skip_previous_active_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
291
	extras/package/macosx/Resources/skip_previous_embedded_graphite.png \
292 293
	extras/package/macosx/Resources/vlc.scriptSuite \
	extras/package/macosx/Resources/vlc.scriptTerminology \
294 295 296 297 298 299 300 301 302 303
	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 \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
304 305 306 307 308 309
	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
310
	extras/package/macosx/README.MacOSX.rtf \
311
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
312

313 314

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

327 328 329 330 331 332 333
###############################################################################
# Scripts for building dependencies.
##############################################################################
EXTRA_DIST += \
	contrib/bootstrap \
	contrib/src/

334 335 336 337
###############################################################################
# Building libvlc
###############################################################################

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
338
CLEANFILES = $(BUILT_SOURCES_clean)
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
339
DISTCLEANFILES = $(BUILT_SOURCES_distclean) compile
340
MAINTAINERCLEANFILES = ChangeLog
341

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

348 349 350 351 352
libvlccore: libcompat
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlccore.la

libvlc: libvlccore
	cd lib && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
353

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
354
core: libvlc vlc$(EXEEXT)
355
	cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
356

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

.PHONY: libvlc core doc
361

362 363 364 365
###############################################################################
# Building aliases
###############################################################################

366
ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
367
bin_SCRIPTS = $(ALIASES)
368
CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
369 370 371 372
EXTRA_SCRIPTS = $(ALL_ALIASES)

dist_noinst_SCRIPTS += make-alias

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

375
cvlc: make-alias Makefile
376
	$(AM_V_GEN)$(MKALIAS) dummy
377

378
rvlc: make-alias Makefile
379
	$(AM_V_GEN)$(MKALIAS) rc
380

381
svlc: make-alias Makefile
382
	$(AM_V_GEN)$(MKALIAS) skins2
383

384
qvlc: make-alias Makefile
385
	$(AM_V_GEN)$(MKALIAS) qt4
386

387
nvlc: make-alias Makefile
388
	$(AM_V_GEN)$(MKALIAS) ncurses
389

390
mvlc: make-alias Makefile
391
	$(AM_V_GEN)$(MKALIAS) maemo
392

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

397
vlc$(EXEEXT):
KO Myung-Hun's avatar
KO Myung-Hun committed
398
	$(AM_V_GEN)$(LN_S) -f bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
399

400
if HAVE_DARWIN
401
if BUILD_MACOSX_VLC_APP
402
# Create the MacOS X app
403
noinst_DATA = VLC.app
404
endif
405 406
endif

407 408 409 410 411 412 413 414 415 416 417 418
###############################################################################
# Installing plugins cache
###############################################################################
install-exec-hook:
	if test "$(build)" = "$(host)"; then \
		LD_LIBRARY_PATH="$(DESTDIR)$(libdir):$$LD_LIBRARY_PATH" \
		"$(DESTDIR)$(vlclibdir)/vlc-cache-gen$(EXEEXT)" \
			 "$(DESTDIR)$(vlclibdir)/plugins" ; \
	else \
		echo "Cross-compilation: cache generation skipped!" ; \
	fi

419
silentstd = $(silentstd_$(V))
420
silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
421
silentstd_0 = 2>&1 >/dev/null
422

423 424
# VLC-release.app for packaging and giving it to your friends
# use package-macosx to get a nice dmg
425
VLC-release.app: vlc
426
	( cd src && $(MAKE) $(AM_MAKEFLAGS) install $(silentstd) )
427
	rm -Rf "$(top_builddir)/tmp"
428
	mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
429
	rm -Rf $(top_builddir)/VLC-release.app
430
	for i in vlc.xcodeproj Resources README.MacOSX.rtf ; do \
431 432
	  cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \
	done
433
	REVISION=`(git --git-dir=$(srcdir)/.git describe --always || echo exported)` && \
434 435 436
	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/
437
	for i in AUTHORS COPYING THANKS; do \
438 439
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
440
	mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle
441
	cp -R $(CONTRIB_DIR)/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle
442 443
	mkdir -p $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
	cp -R $(CONTRIB_DIR)/BGHUDAppKit/BGHUDAppKit.framework $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
444 445
	mkdir -p $(top_builddir)/tmp/extras/contrib/Growl
	cp -R $(CONTRIB_DIR)/Growl/Growl.framework $(top_builddir)/tmp/extras/contrib/Growl
446 447 448
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
449 450
	    AppleRemote.h \
	    AppleRemote.m \
451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473
	    about.h \
	    about.m \
	    applescript.h \
	    applescript.m \
	    controls.h \
	    controls.m \
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
	    playlistinfo.h \
	    playlistinfo.m \
	    prefs_widgets.h \
	    prefs_widgets.m \
	    prefs.h \
	    prefs.m \
474 475
	    simple_prefs.h \
	    simple_prefs.m \
476 477
	    vout.h \
	    voutgl.m \
478 479
	    wizard.h \
	    wizard.m \
Jean-Paul Saman's avatar
Jean-Paul Saman committed
480 481
	    bookmarks.h \
	    bookmarks.m \
482 483
	    coredialogs.h \
	    coredialogs.m \
484 485
	    embeddedwindow.h \
	    embeddedwindow.m \
486 487
	    fspanel.h \
	    fspanel.m \
488 489 490 491
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
492
	$(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
493
	xcodebuild -target vlc SYMROOT=../../../build DSTROOT=../../../build $(silentstd) && \
494
	cd ../../../../ && \
495
	cp -R $(top_builddir)/tmp/build/Default/VLC.bundle $(top_builddir)/VLC-release.app; \
496 497
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
498
	PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh
499 500 501 502
	$(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 ; \
503 504 505
	$(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}` ; \
506
	done ; \
507 508 509
	$(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}` ; \
510
	done ; \
511 512 513
	$(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}` ; \
514
	done ; \
515 516 517
	$(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}` ; \
518
	done ; \
519 520 521 522 523 524 525
	$(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}` ; \
526
	done
527 528
	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}` ; \
529
	done
530 531
	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}` ; \
532
	done
533 534
	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}` ; \
535
	done
536 537
	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}` ; \
538
	done
539
	$(INSTALL) -m 644 $(srcdir)/share/lua/http/requests/README.txt $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests/README.txt
540
	$(INSTALL) -m 644 $(srcdir)/share/vlc512x512.png $(top_builddir)/VLC-release.app/Contents/MacOS/share/vlc512x512.png
541
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
542
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
543 544
	  $(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 ; \
545
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
KO Myung-Hun's avatar
KO Myung-Hun committed
546
	  $(LN_S) -f ../English.lproj/InfoPlist.strings \
547
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
548
	  $(LN_S) -f ../English.lproj/MainMenu.xib \
549 550 551
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	done
	printf "APPLVLC#" >| $(top_builddir)/VLC-release.app/Contents/PkgInfo
552
	rm -Rf $(top_builddir)/VLC-release.app/Contents/Frameworks/BGHUDAppKit.framework/Resources/
553 554
	find $(top_builddir)/VLC-release.app -type d -exec chmod ugo+rx '{}' \;
	find $(top_builddir)/VLC-release.app -type f -exec chmod ugo+r '{}' \;
555

556
# This is just for development purposes. 
557
# The resulting VLC.app will only run in this tree.
558
VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/lib/.libs/libvlc.dylib
559
	$(AM_V_GEN)(cd src && make install $(silentstd))
560 561
	rm -Rf $(top_builddir)/tmp
	mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
Loïc Minier's avatar
Loïc Minier committed
562
	rm -Rf $(top_builddir)/VLC.app
563
	for i in vlc.xcodeproj Resources README.MacOSX.rtf; do \
564 565
	  cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \
	done
566
	REVISION=`(git --git-dir=$(srcdir)/.git describe --always || echo exported)` && \
567 568 569
	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/
570
	for i in AUTHORS COPYING THANKS; do \
Loïc Minier's avatar
Loïc Minier committed
571 572
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
573
	mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle
574
	cp -R $(CONTRIB_DIR)/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle
575 576
	mkdir -p $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
	cp -R $(CONTRIB_DIR)/BGHUDAppKit/BGHUDAppKit.framework $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
577 578
	mkdir -p $(top_builddir)/tmp/extras/contrib/Growl
	cp -R $(CONTRIB_DIR)/Growl/Growl.framework $(top_builddir)/tmp/extras/contrib/Growl
Loïc Minier's avatar
Loïc Minier committed
579 580 581
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
582 583
	    AppleRemote.h \
	    AppleRemote.m \
Loïc Minier's avatar
Loïc Minier committed
584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600
	    about.h \
	    about.m \
	    applescript.h \
	    applescript.m \
	    controls.h \
	    controls.m \
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
601 602
	    playlistinfo.h \
	    playlistinfo.m \
603 604
	    prefs_widgets.h \
	    prefs_widgets.m \
Loïc Minier's avatar
Loïc Minier committed
605 606
	    prefs.h \
	    prefs.m \
607 608
	    simple_prefs.h \
	    simple_prefs.m \
Loïc Minier's avatar
Loïc Minier committed
609
	    vout.h \
610
	    voutgl.m \
611 612
	    wizard.h \
	    wizard.m \
Jean-Paul Saman's avatar
Jean-Paul Saman committed
613 614
	    bookmarks.h \
	    bookmarks.m \
615 616
	    coredialogs.h \
	    coredialogs.m \
617 618
	    embeddedwindow.h \
	    embeddedwindow.m \
619 620
	    fspanel.h \
	    fspanel.m \
Loïc Minier's avatar
Loïc Minier committed
621 622 623 624
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
625
	$(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
626
	xcodebuild -target vlc SYMROOT=../../../build DSTROOT=../../../build $(silentstd) && \
627
	cd ../../../../ && \
628
	cp -R -L $(top_builddir)/tmp/build/Default/VLC.bundle $(top_builddir)/VLC.app
Loïc Minier's avatar
Loïc Minier committed
629
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS
630 631
	touch $(top_builddir)/VLC.app/Contents/MacOS/VLC
	chmod +x $(top_builddir)/VLC.app/Contents/MacOS/VLC
632
	$(INSTALL) $(top_builddir)/bin/.libs/vlc $(top_builddir)/VLC.app/Contents/MacOS/VLC
KO Myung-Hun's avatar
KO Myung-Hun committed
633
	$(LN_S) -f ../../../modules $(top_builddir)/VLC.app/Contents/MacOS/plugins
634 635
	install -d $(top_builddir)/VLC.app/Contents/MacOS/share
	for i in `ls $(srcdir)/share`; do \
KO Myung-Hun's avatar
KO Myung-Hun committed
636
	   $(LN_S) -f `pwd`/$(srcdir)/share/$$i $(top_builddir)/VLC.app/Contents/MacOS/share/; \
637
	done
638
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share/locale
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
639
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
640
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \
KO Myung-Hun's avatar
KO Myung-Hun committed
641
	  $(LN_S) -f `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
642
	  mkdir -p $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
KO Myung-Hun's avatar
KO Myung-Hun committed
643
	  $(LN_S) -f ../English.lproj/InfoPlist.strings \
Loïc Minier's avatar
Loïc Minier committed
644
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
645
	  $(LN_S) -f ../English.lproj/MainMenu.xib \
Loïc Minier's avatar
Loïc Minier committed
646
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
647
	done
Loïc Minier's avatar
Loïc Minier committed
648
	printf "APPLVLC#" >| $(top_builddir)/VLC.app/Contents/PkgInfo
649

650 651 652 653 654
###############################################################################
# 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
655
# the same setup as the maintaner(s).
656
#
657

658 659 660
############################################################################
## Win                                                                    ##
############################################################################
661
destdir=$(prefix)
662
win32_destdir=$(top_builddir)/vlc-$(VERSION)
663
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
664
win32_xpi_destdir=$(win32_destdir)/vlc-plugin
665

666 667 668 669 670 671 672 673 674 675 676 677 678 679
if HAVE_WIN64
build-npapi:
	touch $@

build-activex:
	touch $@
else
if HAVE_WINCE
build-npapi:
	touch $@

build-activex:
	touch $@
else
680 681
if HAVE_WIN32
include extras/package/npapi.am
Rafaël Carré's avatar
Rafaël Carré committed
682
include extras/package/activex.am
683
endif
684 685
endif
endif
686

687
#Win-common is for win32 and wince
Rafaël Carré's avatar
Rafaël Carré committed
688
package-win-common: install build-npapi build-activex
689
# Check that tmp isn't in the way
690
	@if test -e "$(win32_destdir)"; then \
691 692 693 694 695
	    echo "Error: please remove $(win32_destdir), it is in the way"; \
	    false; \
	elif test -e "$(win32_debugdir)"; then \
	    echo "Error: please remove $(win32_debugdir), it is in the way"; \
	    false; \
696
	else \
697 698
	    echo "Debug dir OK."; mkdir -p "$(win32_debugdir)"; \
	    echo "Dest dir OK."; mkdir -p "$(win32_destdir)"; \
699
	fi
700

701
# Executables, major libs+manifests
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
702
	find $(destdir) -maxdepth 4 \( -name "*$(LIBEXT)" -o -name "*$(EXEEXT)" \) -exec cp {} "$(win32_destdir)/" \;
703
	for file in $(top_srcdir)/extras/package/win32/vlc$(EXEEXT).manifest \
704 705
                $(top_srcdir)/extras/package/win32/libvlc$(LIBEXT).manifest; \
	    do cp $$file "$(win32_destdir)/" ; done;
706

707
# Text files and clean them
Rafaël Carré's avatar
Rafaël Carré committed
708
	for file in AUTHORS THANKS ; \
709
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
710
	for file in NEWS COPYING README; \
711
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
712

713
# Necessary icon
714
	cp $(srcdir)/share/icons/vlc.ico $(win32_destdir)
Luca Barbato's avatar
Luca Barbato committed
715

716
# Locales
717
	-cp -r $(destdir)/share/locale $(win32_destdir)
718

719
# Plugins
720
	cp -r $(destdir)/lib/vlc/plugins $(win32_destdir)
721

722
if BUILD_LUA
723 724 725
	mkdir -p $(win32_destdir)/lua
	cp -r $(destdir)/lib/vlc/lua/* $(win32_destdir)/lua
	cp -r $(destdir)/share/vlc/lua/* $(win32_destdir)/lua
726 727 728
endif

if BUILD_SKINS
729
	cp -r $(destdir)/share/vlc/skins2 $(win32_destdir)/skins
730 731
endif
if BUILD_OSDMENU
732
	cp -r $(destdir)/share/vlc/osdmenu "$(win32_destdir)/osdmenu"
733
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
734 735 736
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
737
	done
738
endif
Rafaël Carré's avatar
Rafaël Carré committed
739
if !HAVE_WIN64
740
if !HAVE_WINCE
Rafaël Carré's avatar
Rafaël Carré committed
741 742
	cp "$(top_builddir)/activex-vlc/src/axvlc.dll.manifest" "$(win32_destdir)/"
	cp "$(top_builddir)/activex-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
743
	cp "$(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest" "$(win32_destdir)/"
Rafaël Carré's avatar
Rafaël Carré committed
744
	cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
745
endif
746
endif
747

748
# SDK
749
	mkdir -p "$(win32_destdir)/sdk/lib"
750 751 752
	cp -r $(destdir)/include "$(win32_destdir)/sdk"
	cp -r $(destdir)/lib/pkgconfig "$(win32_destdir)/sdk/lib"
	for file in libvlc.dll.a libvlc.la libvlccore.dll.a libvlccore.la; do \
753
        cp -rv $(destdir)/lib/$$file "$(win32_destdir)/sdk/lib"; done
Rafaël Carré's avatar
Rafaël Carré committed
754
if !HAVE_WIN64
755
if !HAVE_WINCE
756
	mkdir -p "$(win32_destdir)/sdk/activex"
Rafaël Carré's avatar
Rafaël Carré committed
757 758
	cp $(top_builddir)/activex-vlc/README $(win32_destdir)/sdk/activex/README.TXT
	cp $(top_builddir)/activex-vlc/src/test.html $(win32_destdir)/sdk/activex/
759
endif
760
endif
761

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
762
	find $(win32_destdir) -type f \( -name "*xml" -or -name "*html" -or -name '*js' -or -name '*css' -or -name '*hosts' -or -iname '*txt' -or -name '*.cfg' -or -name '*.lua' \) -exec $(U2D) {} \;
763

764 765
#Enable DEP and ASLR for all the binaries
if USE_PEFLAGS
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
766
	find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -print -o -name '*$(EXEEXT)' -print \) -exec $(PEFLAGS) --dynamicbase=true --nxcompat=true {} \;
767
endif
768
	find $(win32_destdir)/plugins/ -type f \( -name '*.a' -or -name '*.la' \) -exec rm -rvf {} \;
769

770
package-win-base: package-win-common
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
771
	find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -or -name '*$(EXEEXT)' \) | while read i; \
772
	do if test -n "$$i" ; then \
773 774 775 776 777 778 779
	    $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \
	    $(OBJCOPY) --strip-all "$$i" ; \
	    $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \
	    mv "$$i.dbg" "$(win32_debugdir)"; \
	  fi ; \
	done

Rafaël Carré's avatar
Rafaël Carré committed
780
package-win32-webplugin-common: package-win-base
781 782
	mkdir -p "$(win32_xpi_destdir)/plugins"
	find $(destdir) -maxdepth 4 -name "*$(LIBEXT)" -exec cp {} "$(win32_xpi_destdir)/" \;
783
if !HAVE_WIN64
784
	cp $(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest "$(win32_xpi_destdir)/plugins"
785
endif
786 787 788 789
	cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_xpi_destdir)/plugins"
	cp -r $(win32_destdir)/plugins/ "$(win32_xpi_destdir)/plugins"
	rm -rf "$(win32_xpi_destdir)/plugins/plugins/*qt*"
	rm -rf "$(win32_xpi_destdir)/plugins/plugins/*skins*"
790

Rafaël Carré's avatar
Rafaël Carré committed
791
package-win32-xpi: package-win32-webplugin-common
792
if !HAVE_WIN64
793
	cp $(top_builddir)/npapi-vlc/npapi/install.rdf "$(win32_xpi_destdir)"
794
	cd $(win32_xpi_destdir) && zip -r "../vlc-$(VERSION).xpi" install.rdf plugins
795
endif
796

Rafaël Carré's avatar
Rafaël Carré committed
797
package-win32-crx: package-win32-webplugin-common
798
if !HAVE_WIN64
799
	cp $(top_builddir)/npapi-vlc/npapi/manifest.json "$(win32_xpi_destdir)"
800 801
	crxmake --pack-extension "$(win32_xpi_destdir)" \
		--extension-output "$(win32_destdir)/vlc-$(VERSION).crx" --ignore-file install.rdf
802
endif
803

Rafaël Carré's avatar
Rafaël Carré committed
804
package-win32-base-exe: package-win-base
805 806 807 808 809 810 811 812 813 814
# Script installer
	cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/"
	cp "$(top_builddir)/extras/package/win32/spad.nsi" "$(win32_destdir)/"
	mkdir "$(win32_destdir)/languages"
	cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/"
# Copy the UAC NSIS plugin
	mkdir -p "$(win32_destdir)/NSIS"
	cp "$(top_srcdir)/extras/package/win32/UAC.nsh" "$(win32_destdir)/NSIS"
	cp "$(top_srcdir)/extras/package/win32/UAC.dll" "$(win32_destdir)/NSIS"

815
# Create package
816
	if makensis -VERSION >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
817
	    MAKENSIS="makensis"; \
818
	elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
819
	    MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
820
	elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
821
	    MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
Rafaël Carré's avatar
typo  
Rafaël Carré committed
822
	elif wine --version >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
823
	    MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
824 825 826
	else \
	    echo 'Error: cannot locate makensis tool'; exit 1; \
	fi; \
827
	eval "$$MAKENSIS $(win32_destdir)/spad.nsi"; \
828
	eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
829

830
package-win32-base-zip: package-win-base
831
# Create package
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
832
	rm -f -- vlc-$(VERSION)-win32.zip
833
	zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
Gildas Bazin's avatar
 
Gildas Bazin committed
834

835
package-win32-base-debug-zip: package-win-common
836 837 838 839
# Create package
	rm -f -- vlc-$(VERSION)-win32-debug.zip
	zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)

840
package-win32-base-7zip: package-win-base
841
# Create package
842
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
843

844
package-win32-base-debug-7zip: package-win-common
845 846 847
# Create package
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32-debug.7z vlc-$(VERSION)

848
package-win32-cleanup:
849
	rm -Rf $(win32_destdir) $(win32_debugdir)
850

851
package-win32-exe: package-win-base package-win32-base-exe package-win32-cleanup
Gildas Bazin's avatar
 
Gildas Bazin committed
852

853
package-win32-zip: package-win32-base-zip package-win32-cleanup
854

855
package-win32-debug-zip: package-win32-base-debug-zip package-win32-cleanup
856

857 858 859
package-win32-7zip: package-win32-base-7zip package-win32-cleanup

package-win32-debug-7zip: package-win32-base-debug-7zip package-win32-cleanup
860

861
package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe package-win32-xpi
862

863
package-win32: package-win32-no-clean package-win32-cleanup
864

865
package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip package-win32-cleanup
866

867

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
868 869 870
#######
# WinCE
#######
871
package-wince-base: package-win-base
872

873
package-wince-base-zip: package-wince-base
874
# Create package
875 876
	rm -f -- vlc-$(VERSION)-wince.zip
	zip -r -9 vlc-$(VERSION)-wince.zip vlc-$(VERSION)
877

878
package-wince: package-wince-base-zip package-win32-cleanup
879 880


881 882 883
#########################################################################
## MacOS X                                                             ##
#########################################################################
884
package-macosx: VLC-release.app ChangeLog
885
# Check that the temporary location isn't in the way
886 887
	@if test -e "$(top_builddir)/vlc-$(VERSION)/"; then \
	  rm -Rf "$(top_builddir)/vlc-$(VERSION)/" ; \
888 889
	fi

890 891
	echo "Create package directory: vlc-$(VERSION)/";
	mkdir -p "$(top_builddir)/vlc-$(VERSION)/";
892

893
# Copy relevant files 
894
	@if test -e "$(top_builddir)/VLC-release.app/"; then \
895
	  cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
896
	else \
897
	  cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
898
	fi
899
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
900
          mkdir -p $(top_builddir)/vlc-$(VERSION)/.background/ && \
901 902 903 904 905
          cp $(srcdir)/AUTHORS $(srcdir)/COPYING $(srcdir)/README $(srcdir)/THANKS $(srcdir)/NEWS $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
          cp -R  $(srcdir)/extras/package/macosx/Delete_Preferences.app $(top_builddir)/vlc-$(VERSION)/Goodies/Delete\ VLC\ Preferences.app && \
	  cp $(srcdir)/extras/package/macosx/README.MacOSX.rtf $(top_builddir)/vlc-$(VERSION)/Read\ Me.rtf && \
	  cp $(srcdir)/extras/package/macosx/Resources/about_bg.png $(top_builddir)/vlc-$(VERSION)/.background/background.png
	cp -L $(top_builddir)/ChangeLog $(top_builddir)/vlc-$(VERSION)/Goodies/
906 907

# Place a link to the application folder
KO Myung-Hun's avatar
KO Myung-Hun committed
908
	$(LN_S) /Applications $(top_builddir)/vlc-$(VERSION)/Applications
909

910
# Create disk image (temporarily taken from the 0.8.6-bugfix branch to provide reliable NBs)
911 912
	echo "Creating disk image"
	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
913
	hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
914 915 916
	  "$(top_builddir)/vlc-$(VERSION).dmg" -scrub
	echo "Disk image creation completed:"
	ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
917 918

# Create disk image 
919 920
#	echo "Creating disk image"
#	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
921 922
#	hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
#	  "$(top_builddir)/vlc-$(VERSION).dmg" -format UDRW \
923
#	  -scrub -imagekey zlib-level=9 -attach
924 925 926 927

# Make sure the root window of the dmg will pop up when the dmg is mounted.
# Note: We dont mount in /Volumes to be sure we won't collide with an other
# finder mounted dmg with the same name.
928 929 930 931
#	echo "Make sure the root window of the dmg will pop up when the dmg is mounted"
#	mkdir -p $(top_builddir)/vlcmnt
#	hdiutil attach -nokernel -readwrite -noverify -noautoopen -private "$(top_builddir)/vlc-$(VERSION).dmg" -mountpoint "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
#	bless --folder "$(top_builddir)/vlcmnt/vlc-$(VERSION)/" --openfolder "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
932
#	sleep 1 # Make sure operation completes
933
#	cd "$(srcdir)"
934 935

# Unmount the image now
936 937
#	hdiutil detach "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
#	rm -R $(top_builddir)/vlcmnt
938 939 940

# Make sure the image is not writable
# Note: We can't directly create a read only dmg as we do the bless stuff
941 942
	echo "Make the disk image read-only"
	mv "$(top_builddir)/vlc-$(VERSION).dmg" "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
943
	hdiutil convert "$(top_builddir)/vlc-$(VERSION)-rw.dmg" -format UDBZ -o "$(top_builddir)/vlc-$(VERSION).dmg"
944
	rm "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
945 946

# We are done
947 948
	echo "Disk image creation completed:"
	ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
949 950

# Clean up
951
	rm -Rf "$(top_builddir)/vlc-$(VERSION)"
952

953
package-macosx-zip: VLC-release.app
954 955 956
	rm -Rf $(top_builddir)/vlc-$(VERSION)
	mkdir -p $(top_builddir)/vlc-$(VERSION)
	cp -R $(top_builddir)/VLC-release.app $(top_builddir)/vlc-$(VERSION)/VLC.app
957
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies
958 959
	for i in AUTHORS COPYING ChangeLog README THANKS NEWS; do \
	  cp $(srcdir)/$$i $(top_builddir)/vlc-$(VERSION)/Goodies; \
960 961 962 963
	done
	cp -R  $(srcdir)/extras/package/macosx/Delete_Preferences.app \
	     $(top_builddir)/vlc-$(VERSION)/Goodies
	cp $(srcdir)/extras/package/macosx/README.MacOSX.rtf \
964
	   $(top_builddir)/vlc-$(VERSION)/Read\ Me.rtf
965
	zip -r -y -9 $(top_builddir)/vlc-$(VERSION).zip $(top_builddir)/vlc-$(VERSION)
966
	rm -Rf $(top_builddir)/vlc-$(VERSION)
967 968

package-macosx-framework-zip:
969 970 971 972
	rm -Rf $(top_builddir)/vlckit-$(VERSION)
	mkdir -p $(top_builddir)/vlckit-$(VERSION)
	cp -R $(srcdir)/projects/macosx/framework/build/Debug/VLCKit.framework \
	  $(top_builddir)/vlckit-$(VERSION)/VLCKit.framework
973 974 975
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies
	for i in AUTHORS COPYING ChangeLog README THANKS NEWS; do \
	  cp $(srcdir)/$$i $(top_builddir)/vlckit-$(VERSION)/Goodies; \
976
	done
977
	zip -r -y -9 $(top_builddir)/vlckit-$(VERSION).zip $(top_builddir)/vlckit-$(VERSION)
978
	rm -Rf $(top_builddir)/vlc-$(VERSION)
979

980
package-translations:
981 982
	@if test -e "$(srcdir)/vlc-translations-$(VERSION)"; then \
	  echo "Error: please remove $(srcdir)/vlc-translations-$(VERSION), it is in the way"; \
983 984
	  false; \
	else \
985
	  echo "OK."; mkdir -p "$(srcdir)/vlc-translations-$(VERSION)"; \
986 987
	fi
# Copy translations
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
988
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
989
	  cp "$(srcdir)/po/$${i}.po" \
Rémi Denis-Courmont's avatar