Makefile.am 44 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
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
10 11 12 13
DIST_SUBDIRS = \
	m4 compat doc po share src \
	bin modules test
SUBDIRS = compat doc po share src
14 15 16
if BUILD_VLC
SUBDIRS += bin
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
17
SUBDIRS += modules test
18

19 20 21
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
22
	extras/package/win32/vlc.exe.manifest \
23
	extras/package/win32/libvlc.dll.manifest \
24
	extras/package/macosx/README.MacOSX.rtf \
25 26
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
27
	extras/package/win32/vlc.win32.nsi.in \
28
	extras/package/win32/spad.nsi.in \
29 30
	extras/package/win32/UAC.nsh \
	extras/package/win32/UAC.dll \
31
	extras/package/win32/languages/declaration.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
32 33 34 35
	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 \
36
	extras/package/win32/languages/danish.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
37
	extras/package/win32/languages/dutch.nsh \
38
	extras/package/win32/languages/english.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
	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 \
54
	extras/package/win32/languages/spanish.nsh
55

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

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

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

72 73
SUFFIXES = 

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

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

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

101 102 103 104 105
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
106 107 108 109 110
	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 \
111 112 113 114 115 116 117 118 119 120 121 122
	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 \
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 171 172
	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 \
173
	extras/package/macosx/Resources/mainwindow/bottom-background.png \
174
	extras/package/macosx/Resources/mainwindow/bottom-bar-mini.png \
175 176
	extras/package/macosx/Resources/mainwindow/dropzone-background.png \
	extras/package/macosx/Resources/mainwindow/dropzone.png \
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
	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 \
225
	extras/package/macosx/Resources/mainwindow_dark/bottom-background_dark.png \
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 265 266
	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 \
267
	extras/package/macosx/Resources/pause_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
268
	extras/package/macosx/Resources/pause_embedded_graphite.png \
269
	extras/package/macosx/Resources/play_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
270
	extras/package/macosx/Resources/play_embedded_graphite.png \
271 272 273 274 275 276 277 278
	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
279 280
	extras/package/macosx/Resources/repeat_embedded_graphite.png \
	extras/package/macosx/Resources/repeat_single_embedded_graphite.png \
281
	extras/package/macosx/Resources/shuffle_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
282
	extras/package/macosx/Resources/shuffle_embedded_graphite.png \
283 284 285 286 287 288 289
	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 \
290
	extras/package/macosx/Resources/skip_forward_active_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
291
	extras/package/macosx/Resources/skip_forward_embedded_graphite.png \
292
	extras/package/macosx/Resources/skip_previous_active_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
293
	extras/package/macosx/Resources/skip_previous_embedded_graphite.png \
294 295
	extras/package/macosx/Resources/vlc.scriptSuite \
	extras/package/macosx/Resources/vlc.scriptTerminology \
296 297 298 299 300 301 302 303 304 305
	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
306 307 308 309 310 311
	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
312
	extras/package/macosx/README.MacOSX.rtf \
313
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
314

315 316

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

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

336 337 338 339
###############################################################################
# Building libvlc
###############################################################################

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

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

libvlc: libcompat
351
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
352

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

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

.PHONY: libvlc core doc
360

361 362 363 364
###############################################################################
# Building aliases
###############################################################################

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

dist_noinst_SCRIPTS += make-alias

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

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

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

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

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

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

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

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

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

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

406
silentstd = $(silentstd_$(V))
407
silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
408
silentstd_0 = 2>&1 >/dev/null
409

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

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

637 638 639 640 641
###############################################################################
# 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
642
# the same setup as the maintaner(s).
643
#
644

645 646 647
############################################################################
## Win                                                                    ##
############################################################################
648
destdir=$(prefix)
649
win32_destdir=$(top_builddir)/vlc-$(VERSION)
650
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
651
win32_xpi_destdir=$(win32_destdir)/vlc-plugin
652

653 654 655 656 657 658 659 660 661 662 663 664 665 666
if HAVE_WIN64
build-npapi:
	touch $@

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

build-activex:
	touch $@
else
667 668
if HAVE_WIN32
include extras/package/npapi.am
Rafaël Carré's avatar
Rafaël Carré committed
669
include extras/package/activex.am
670
endif
671 672
endif
endif
673

674
#Win-common is for win32 and wince
Rafaël Carré's avatar
Rafaël Carré committed
675
package-win-common: install build-npapi build-activex
676
# Check that tmp isn't in the way
677
	@if test -e "$(win32_destdir)"; then \
678 679 680 681 682
	    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; \
683
	else \
684 685
	    echo "Debug dir OK."; mkdir -p "$(win32_debugdir)"; \
	    echo "Dest dir OK."; mkdir -p "$(win32_destdir)"; \
686
	fi
687

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

694
# Text files and clean them
Rafaël Carré's avatar
Rafaël Carré committed
695
	for file in AUTHORS THANKS ; \
696
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
697
	for file in NEWS COPYING README; \
698
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
699

700
# Necessary icon
701
	cp $(srcdir)/share/icons/vlc.ico $(win32_destdir)
Luca Barbato's avatar
Luca Barbato committed
702

703
# Locales
704
	-cp -r $(destdir)/share/locale $(win32_destdir)
705

706
# Plugins
707
	cp -r $(destdir)/lib/vlc/plugins $(win32_destdir)
708

709
if BUILD_LUA
710 711 712
	mkdir -p $(win32_destdir)/lua
	cp -r $(destdir)/lib/vlc/lua/* $(win32_destdir)/lua
	cp -r $(destdir)/share/vlc/lua/* $(win32_destdir)/lua
713 714 715
endif

if BUILD_SKINS
716
	cp -r $(destdir)/share/vlc/skins2 $(win32_destdir)/skins
717 718
endif
if BUILD_OSDMENU
719
	cp -r $(destdir)/share/vlc/osdmenu "$(win32_destdir)/osdmenu"
720
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
721 722 723
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
724
	done
725
endif
Rafaël Carré's avatar
Rafaël Carré committed
726
if !HAVE_WIN64
727
if !HAVE_WINCE
Rafaël Carré's avatar
Rafaël Carré committed
728 729
	cp "$(top_builddir)/activex-vlc/src/axvlc.dll.manifest" "$(win32_destdir)/"
	cp "$(top_builddir)/activex-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
730
	cp "$(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest" "$(win32_destdir)/"
Rafaël Carré's avatar
Rafaël Carré committed
731
	cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
732
endif
733
endif
734

735
# SDK
736
	mkdir -p "$(win32_destdir)/sdk/lib"
737 738 739
	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 \
740
        cp -rv $(destdir)/lib/$$file "$(win32_destdir)/sdk/lib"; done
Rafaël Carré's avatar
Rafaël Carré committed
741
if !HAVE_WIN64
742
if !HAVE_WINCE
743
	mkdir -p "$(win32_destdir)/sdk/activex"
Rafaël Carré's avatar
Rafaël Carré committed
744 745
	cp $(top_builddir)/activex-vlc/README $(win32_destdir)/sdk/activex/README.TXT
	cp $(top_builddir)/activex-vlc/src/test.html $(win32_destdir)/sdk/activex/
746
endif
747
endif
748

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
749
	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) {} \;
750

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

757
package-win-base: package-win-common
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
758
	find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -or -name '*$(EXEEXT)' \) | while read i; \
759
	do if test -n "$$i" ; then \
760 761 762 763 764 765 766
	    $(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
767
package-win32-webplugin-common: package-win-base
768 769
	mkdir -p "$(win32_xpi_destdir)/plugins"
	find $(destdir) -maxdepth 4 -name "*$(LIBEXT)" -exec cp {} "$(win32_xpi_destdir)/" \;
770
if !HAVE_WIN64
771
	cp $(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest "$(win32_xpi_destdir)/plugins"
772
endif
773 774 775 776
	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*"
777

Rafaël Carré's avatar
Rafaël Carré committed
778
package-win32-xpi: package-win32-webplugin-common
779
if !HAVE_WIN64
780
	cp $(top_builddir)/npapi-vlc/npapi/install.rdf "$(win32_xpi_destdir)"
781
	cd $(win32_xpi_destdir) && zip -r "../vlc-$(VERSION).xpi" install.rdf plugins
782
endif
783

Rafaël Carré's avatar
Rafaël Carré committed
784
package-win32-crx: package-win32-webplugin-common
785
if !HAVE_WIN64
786
	cp $(top_builddir)/npapi-vlc/npapi/manifest.json "$(win32_xpi_destdir)"
787 788
	crxmake --pack-extension "$(win32_xpi_destdir)" \
		--extension-output "$(win32_destdir)/vlc-$(VERSION).crx" --ignore-file install.rdf
789
endif
790

Rafaël Carré's avatar
Rafaël Carré committed
791
package-win32-base-exe: package-win-base
792 793 794 795 796 797 798 799 800 801
# 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"

802
# Create package
803
	if makensis -VERSION >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
804
	    MAKENSIS="makensis"; \
805
	elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
806
	    MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
807
	elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
808
	    MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
Rafaël Carré's avatar
typo  
Rafaël Carré committed
809
	elif wine --version >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
810
	    MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
811 812 813
	else \
	    echo 'Error: cannot locate makensis tool'; exit 1; \
	fi; \
814
	eval "$$MAKENSIS $(win32_destdir)/spad.nsi"; \
815
	eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
816

817
package-win32-base-zip: package-win-base
818
# Create package
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
819
	rm -f -- vlc-$(VERSION)-win32.zip
820
	zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
Gildas Bazin's avatar
 
Gildas Bazin committed
821

822
package-win32-base-debug-zip: package-win-common
823 824 825 826
# Create package
	rm -f -- vlc-$(VERSION)-win32-debug.zip
	zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)

827
package-win32-base-7zip: package-win-base
828
# Create package
829
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
830

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

835
package-win32-cleanup:
836
	rm -Rf $(win32_destdir) $(win32_debugdir)
837

838
package-win32-exe: package-win-base package-win32-base-exe package-win32-cleanup
Gildas Bazin's avatar
 
Gildas Bazin committed
839

840
package-win32-zip: package-win32-base-zip package-win32-cleanup
841

842
package-win32-debug-zip: package-win32-base-debug-zip package-win32-cleanup
843

844 845 846
package-win32-7zip: package-win32-base-7zip package-win32-cleanup

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

848
package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe package-win32-xpi
849

850
package-win32: package-win32-no-clean package-win32-cleanup
851

852
package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip package-win32-cleanup
853

854

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
855 856 857
#######
# WinCE
#######
858
package-wince-base: package-win-base
859

860
package-wince-base-zip: package-wince-base
861
# Create package
862 863
	rm -f -- vlc-$(VERSION)-wince.zip
	zip -r -9 vlc-$(VERSION)-wince.zip vlc-$(VERSION)
864

865
package-wince: package-wince-base-zip package-win32-cleanup
866 867


868 869 870
#########################################################################
## MacOS X                                                             ##
#########################################################################
871
package-macosx: VLC-release.app ChangeLog
872
# Check that the temporary location isn't in the way
873 874
	@if test -e "$(top_builddir)/vlc-$(VERSION)/"; then \
	  rm -Rf "$(top_builddir)/vlc-$(VERSION)/" ; \
875 876
	fi

877 878
	echo "Create package directory: vlc-$(VERSION)/";
	mkdir -p "$(top_builddir)/vlc-$(VERSION)/";
879

880
# Copy relevant files 
881
	@if test -e "$(top_builddir)/VLC-release.app/"; then \
882
	  cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
883
	else \
884
	  cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
885
	fi
886
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
887
          mkdir -p $(top_builddir)/vlc-$(VERSION)/.background/ && \
888 889 890 891 892
          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/
893 894

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

897
# Create disk image (temporarily taken from the 0.8.6-bugfix branch to provide reliable NBs)
898 899
	echo "Creating disk image"
	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
900
	hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
901 902 903
	  "$(top_builddir)/vlc-$(VERSION).dmg" -scrub
	echo "Disk image creation completed:"
	ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
904 905

# Create disk image 
906 907
#	echo "Creating disk image"
#	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
908 909
#	hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
#	  "$(top_builddir)/vlc-$(VERSION).dmg" -format UDRW \
910
#	  -scrub -imagekey zlib-level=9 -attach
911 912 913 914

# 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.
915 916 917 918
#	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)"
919
#	sleep 1 # Make sure operation completes
920
#	cd "$(srcdir)"
921 922

# Unmount the image now
923 924
#	hdiutil detach "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
#	rm -R $(top_builddir)/vlcmnt
925 926 927

# Make sure the image is not writable
# Note: We can't directly create a read only dmg as we do the bless stuff
928 929
	echo "Make the disk image read-only"
	mv "$(top_builddir)/vlc-$(VERSION).dmg" "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
930
	hdiutil convert "$(top_builddir)/vlc-$(VERSION)-rw.dmg" -format UDBZ -o "$(top_builddir)/vlc-$(VERSION).dmg"
931
	rm "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
932 933

# We are done
934 935
	echo "Disk image creation completed:"
	ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
936 937

# Clean up
938
	rm -Rf "$(top_builddir)/vlc-$(VERSION)"
939

940
package-macosx-zip: VLC-release.app
941 942 943
	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
944
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies
945 946
	for i in AUTHORS COPYING ChangeLog README THANKS NEWS; do \
	  cp $(srcdir)/$$i $(top_builddir)/vlc-$(VERSION)/Goodies; \
947 948 949 950
	done
	cp -R  $(srcdir)/extras/package/macosx/Delete_Preferences.app \
	     $(top_builddir)/vlc-$(VERSION)/Goodies
	cp $(srcdir)/extras/package/macosx/README.MacOSX.rtf \
951
	   $(top_builddir)/vlc-$(VERSION)/Read\ Me.rtf
952
	zip -r -y -9 $(top_builddir)/vlc-$(VERSION).zip $(top_builddir)/vlc-$(VERSION)
953
	rm -Rf $(top_builddir)/vlc-$(VERSION)
954 955

package-macosx-framework-zip:
956 957 958 959
	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
960 961 962
	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; \
963
	done
964
	zip -r -y -9 $(top_builddir)/vlckit-$(VERSION).zip $(top_builddir)/vlckit-$(VERSION)
965
	rm -Rf $(top_builddir)/vlc-$(VERSION)
966

967
package-translations:
968 969
	@if test -e "$(srcdir)/vlc-translations-$(VERSION)"; then \
	  echo "Error: please remove $(srcdir)/vlc-translations-$(VERSION), it is in the way"; \
970 971
	  false; \
	else \
972
	  echo "OK."; mkdir -p "$(srcdir)/vlc-translations-$(VERSION)"; \
973 974
	fi
# Copy translations
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
975
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
976
	  cp "$(srcdir)/po/$${i}.po" \
977
	    "$(srcdir)/vlc-translations-$(VERSION)/$${i}.po" \
978 979 980
	    || true ; \
	done
	cp "$(srcdir)/doc/translations.txt" \
981
	  "$(srcdir)/vlc-translations-$(VERSION)/README.txt"
982