Makefile.am 45.7 KB
Newer Older
1 2 3
###############################################################################
# Automake targets and declarations
###############################################################################
4

5 6 7
# SUBDIRS stores the directories where a "make" is required when building
# something. DIST_SUBDIRS stores the directories where nothing is built but
# which have makefiles with distribution information.
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
EXTRA_DIST = \
18
	extras/package/win32/vlc.exe.manifest \
19
	extras/package/win32/libvlc.dll.manifest \
20
	extras/package/macosx/README.MacOSX.rtf \
21 22
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
23
	extras/package/win32/vlc.win32.nsi.in \
24
	extras/package/win32/spad.nsi.in \
25 26
	extras/package/win32/UAC.nsh \
	extras/package/win32/UAC.dll \
27
	extras/package/win32/languages/declaration.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
28
	extras/package/win32/languages/bengali.nsh \
29
	extras/package/win32/languages/basque.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
30 31 32
	extras/package/win32/languages/brazilian_portuguese.nsh \
	extras/package/win32/languages/bulgarian.nsh \
	extras/package/win32/languages/catalan.nsh \
33
	extras/package/win32/languages/danish.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
34
	extras/package/win32/languages/dutch.nsh \
35
	extras/package/win32/languages/english.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
36 37 38 39 40 41 42
	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 \
Christophe Mutricy's avatar
Christophe Mutricy committed
43
	extras/package/win32/languages/lithuanian.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
44 45 46 47 48 49 50 51
	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
	extras/package/macosx/Resources/about_bg.png \
	extras/package/macosx/Resources/dsa_pub.pem \
106 107 108 109 110 111 112 113 114 115 116 117
	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 \
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
	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 \
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
	extras/package/macosx/Resources/fspanel/fs_background@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_exit_fullscreen@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_exit_fullscreen_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_forward@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_forward_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_pause@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_pause_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_play@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_play_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_rewind@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_rewind_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_skip_next@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_skip_next_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_skip_previous@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_skip_previous_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_stop@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_stop_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_time_slider@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_time_slider_knob@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_time_slider_knob_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_max@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_max_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_mute@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_mute_highlight@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_slider_bar@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_slider_knob@x1.5.png \
	extras/package/macosx/Resources/fspanel/fs_volume_slider_knob_highlight@x1.5.png \
172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194
	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 \
195
	extras/package/macosx/Resources/mainwindow/bottom-background.png \
196
	extras/package/macosx/Resources/mainwindow/bottombar-mini.png \
197 198
	extras/package/macosx/Resources/mainwindow/dropzone-background.png \
	extras/package/macosx/Resources/mainwindow/dropzone.png \
199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235
	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 \
236
	extras/package/macosx/Resources/mainwindow/shuffle-blue.png \
237 238 239 240 241 242 243 244 245 246
	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 \
247
	extras/package/macosx/Resources/mainwindow_dark/bottom-background_dark.png \
248
	extras/package/macosx/Resources/mainwindow_dark/bottombar-mini.png \
249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296
	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 \
	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 \
297 298 299 300 301 302 303
	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 \
304 305
	extras/package/macosx/Resources/vlc.scriptSuite \
	extras/package/macosx/Resources/vlc.scriptTerminology \
306 307 308 309 310 311 312 313 314 315
	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
316 317 318 319 320 321
	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
322
	extras/package/macosx/README.MacOSX.rtf \
323
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
324

325 326

###############################################################################
Rafaël Carré's avatar
Rafaël Carré committed
327
# Various utilities ( editor syntax files, D-Bus controller ... )
328 329
##############################################################################
EXTRA_DIST += \
330
	extras/analyser/zsh_completion.sh \
331 332 333 334
	extras/analyser/zsh.cpp \
	extras/analyser/emacs.init \
	extras/analyser/vlc.vim \
	extras/analyser/valgrind.suppressions \
335
	extras/buildsystem/make.pl \
336
	extras/misc/mpris.py \
Pierre Ynard's avatar
Pierre Ynard committed
337
	extras/misc/mpris.xml
338

339 340 341 342 343 344 345
###############################################################################
# Scripts for building dependencies.
##############################################################################
EXTRA_DIST += \
	contrib/bootstrap \
	contrib/src/

346 347 348 349
###############################################################################
# Building libvlc
###############################################################################

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
350
CLEANFILES = $(BUILT_SOURCES_clean)
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
351
DISTCLEANFILES = $(BUILT_SOURCES_distclean) compile
352
MAINTAINERCLEANFILES = ChangeLog
353

354
# Shortcut for developers to rebuild the core (libvlc + vlc)
355 356
# Don't use it if you don't know what it is about.
# Don't complain if it doesn't work. -- Courmisch
357 358 359
libcompat:
	cd compat && $(MAKE) $(AM_MAKEFLAGS)

360 361 362 363 364
libvlccore: libcompat
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlccore.la

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

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

369 370 371 372
doc:
	cd doc && $(MAKE) $(AM_MAKEFLAGS) doc

.PHONY: libvlc core doc
373

374 375 376 377
###############################################################################
# Building aliases
###############################################################################

378
ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
379
bin_SCRIPTS = $(ALIASES)
380
CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
381 382 383 384
EXTRA_SCRIPTS = $(ALL_ALIASES)

dist_noinst_SCRIPTS += make-alias

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

387
cvlc: make-alias Makefile
388
	$(AM_V_GEN)$(MKALIAS) dummy
389

390
rvlc: make-alias Makefile
391
	$(AM_V_GEN)$(MKALIAS) rc
392

393
svlc: make-alias Makefile
394
	$(AM_V_GEN)$(MKALIAS) skins2
395

396
qvlc: make-alias Makefile
397
	$(AM_V_GEN)$(MKALIAS) qt4
398

399
nvlc: make-alias Makefile
400
	$(AM_V_GEN)$(MKALIAS) ncurses
401

402
mvlc: make-alias Makefile
403
	$(AM_V_GEN)$(MKALIAS) maemo
404

405
if BUILD_VLC
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
406
noinst_SCRIPTS = vlc$(EXEEXT)
407
endif
408

409
vlc$(EXEEXT):
KO Myung-Hun's avatar
KO Myung-Hun committed
410
	$(AM_V_GEN)$(LN_S) -f bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
411

412
if HAVE_DARWIN
413
if BUILD_MACOSX_VLC_APP
414
# Create the MacOS X app
415
noinst_DATA = VLC.app
416
endif
417 418
endif

419 420 421 422 423 424 425 426 427 428 429 430
###############################################################################
# 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

431
silentstd = $(silentstd_$(V))
432
silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
433
silentstd_0 = 2>&1 >/dev/null
434

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

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

654 655 656 657 658
###############################################################################
# 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
659
# the same setup as the maintaner(s).
660
#
661

662 663 664
############################################################################
## Win                                                                    ##
############################################################################
665
destdir=$(prefix)
666
win32_destdir=$(top_builddir)/vlc-$(VERSION)
667
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
668
win32_xpi_destdir=$(win32_destdir)/vlc-plugin
669

670
if HAVE_WIN64
Rafaël Carré's avatar
Rafaël Carré committed
671
include extras/package/npapi.am
672 673 674 675 676
else
if HAVE_WINCE
build-npapi:
	touch $@
else
677 678 679
if HAVE_WIN32
include extras/package/npapi.am
endif
680 681
endif
endif
682

683
#Win-common is for win32 and wince
684
package-win-common: install build-npapi
685
# Check that tmp isn't in the way
686
	@if test -e "$(win32_destdir)"; then \
687 688 689 690 691
	    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; \
692
	else \
693 694
	    echo "Debug dir OK."; mkdir -p "$(win32_debugdir)"; \
	    echo "Dest dir OK."; mkdir -p "$(win32_destdir)"; \
695
	fi
696

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

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

709
# Necessary icon
710
	cp $(srcdir)/share/icons/vlc.ico $(win32_destdir)
Luca Barbato's avatar
Luca Barbato committed
711

712
# Locales
713
	-cp -r $(destdir)/share/locale $(win32_destdir)
714

715
# Plugins
716
	cp -r $(destdir)/lib/vlc/plugins $(win32_destdir)
717

718
if BUILD_LUA
719 720 721
	mkdir -p $(win32_destdir)/lua
	cp -r $(destdir)/lib/vlc/lua/* $(win32_destdir)/lua
	cp -r $(destdir)/share/vlc/lua/* $(win32_destdir)/lua
722 723 724
endif

if BUILD_SKINS
725
	cp -r $(destdir)/share/vlc/skins2 $(win32_destdir)/skins
726 727
endif
if BUILD_OSDMENU
728
	cp -r $(destdir)/share/vlc/osdmenu "$(win32_destdir)/osdmenu"
729
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
730 731 732
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
733
	done
734
endif
735

736
if !HAVE_WINCE
737
if !HAVE_WIN64
738 739
	cp "$(top_builddir)/npapi-vlc/activex/axvlc.dll.manifest" "$(win32_destdir)/"
	cp "$(top_builddir)/npapi-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
740
endif
741
	cp "$(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest" "$(win32_destdir)/"
Rafaël Carré's avatar
Rafaël Carré committed
742
	cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
743
endif
744

745 746 747
# Compiler shared DLLs
# For win64 only, Debian mingw32 compilers are built with --disable-shared
if HAVE_WIN64
Rafaël Carré's avatar
Rafaël Carré committed
748
#   if gcc_s_sjlj/stdc++ DLLs exist, our C++ modules were linked to them
749 750 751 752
	gcc_lib_dir=`x86_64-w64-mingw32-gcc -v /dev/null 2>&1 | grep ^LIBRARY_PATH|cut -d= -f2|cut -d: -f1` ; \
	cp "$${gcc_lib_dir}/libstdc++-6.dll" "$${gcc_lib_dir}/libgcc_s_sjlj-1.dll" "$(win32_destdir)/" ; true
endif

753
# SDK
754
	mkdir -p "$(win32_destdir)/sdk/lib"
755 756 757
	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 \
758
        cp -rv $(destdir)/lib/$$file "$(win32_destdir)/sdk/lib"; done
Rafaël Carré's avatar
Rafaël Carré committed
759
if !HAVE_WIN64
760
if !HAVE_WINCE
761
	mkdir -p "$(win32_destdir)/sdk/activex"
762 763
	cp $(top_builddir)/npapi-vlc/activex/README.TXT $(win32_destdir)/sdk/activex/README.TXT
	cp $(top_builddir)/npapi-vlc/share/test.html $(win32_destdir)/sdk/activex/
764
endif
765
endif
766

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

769
#Enable DEP and ASLR for all the binaries
Rafaël Carré's avatar
Rafaël Carré committed
770
	find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -print -o -name '*$(EXEEXT)' -print \) -exec $(top_srcdir)/extras/package/win32/peflags.pl {} \;
771
	find $(win32_destdir)/plugins/ -type f \( -name '*.a' -or -name '*.la' \) -exec rm -rvf {} \;
772

773
package-win-base: package-win-common
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
774
	find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -or -name '*$(EXEEXT)' \) | while read i; \
775
	do if test -n "$$i" ; then \
776 777 778 779 780 781 782
	    $(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
783
package-win32-webplugin-common: package-win-base
784 785
	mkdir -p "$(win32_xpi_destdir)/plugins"
	find $(destdir) -maxdepth 4 -name "*$(LIBEXT)" -exec cp {} "$(win32_xpi_destdir)/" \;
786
	cp $(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest "$(win32_xpi_destdir)/plugins"
787 788 789 790
	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*"
791

Rafaël Carré's avatar
Rafaël Carré committed
792
package-win32-xpi: package-win32-webplugin-common
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

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

Rafaël Carré's avatar
Rafaël Carré committed
801
package-win32-base-exe: package-win-base
802 803 804 805 806 807 808 809 810 811
# 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"

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

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

832
package-win32-base-debug-zip: package-win-common
833 834 835 836
# Create package
	rm -f -- vlc-$(VERSION)-win32-debug.zip
	zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)

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

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

845
package-win32-cleanup:
846
	rm -Rf $(win32_destdir) $(win32_debugdir)
847

848
package-win32-exe: package-win-base package-win32-base-exe package-win32-cleanup
Gildas Bazin's avatar
 
Gildas Bazin committed
849

850
package-win32-zip: package-win32-base-zip package-win32-cleanup
851

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

854 855 856
package-win32-7zip: package-win32-base-7zip package-win32-cleanup

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

858
package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe package-win32-xpi
859

860
package-win32: package-win32-no-clean package-win32-cleanup
861

862
package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip package-win32-cleanup
863

864

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
865 866 867
#######
# WinCE
#######
868
package-wince-base: package-win-base
869

870
package-wince-base-zip: package-wince-base
871
# Create package
872 873
	rm -f -- vlc-$(VERSION)-wince.zip
	zip -r -9 vlc-$(VERSION)-wince.zip vlc-$(VERSION)
874

875
package-wince: package-wince-base-zip package-win32-cleanup
876 877


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

887 888
	echo "Create package directory: vlc-$(VERSION)/";
	mkdir -p "$(top_builddir)/vlc-$(VERSION)/";
889

890
# Copy relevant files 
891
	@if test -e "$(top_builddir)/VLC-release.app/"; then \
892
	  cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
893
	else \
894
	  cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
895
	fi
896
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
897
          mkdir -p $(top_builddir)/vlc-$(VERSION)/.background/ && \
898 899 900 901 902
          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/
903 904

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

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

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

# 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.
925 926 927 928
#	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)"
929
#	sleep 1 # Make sure operation completes
930
#	cd "$(srcdir)"
931 932

# Unmount the image now
933 934
#	hdiutil detach "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
#	rm -R $(top_builddir)/vlcmnt
935 936 937

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

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

# Clean up
948
	rm -Rf "$(top_builddir)/vlc-$(VERSION)"
949

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

package-macosx-framework-zip:
966 967 968 969
	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
970 971 972
	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; \
973
	done
974
	zip -r -y -9 $(top_builddir)/vlckit-$(VERSION).zip $(top_builddir)/vlckit-$(VERSION)
975
	rm -Rf $(top_builddir)/vlc-$(VERSION)
976

977
package-translations:
978 979
	@if test -e "$(srcdir)/vlc-translations-$(VERSION)"; then \
	  echo "Error: please remove $(srcdir)/vlc-translations-$(VERSION), it is in the way"; \
980 981
	  false; \
	else \
982
	  echo "OK."; mkdir -p "$(srcdir)/vlc-translations-$(VERSION)"; \
983 984
	fi
# Copy translations
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
985
	cat $(top_srcdir)/po/LINGUAS | while read i; do \
986
	  cp "$(srcdir)/po/$${i}.po" \
987
	    "$(srcdir)/vlc-translations-$(VERSION)/$${i}.po" \
988 989 990
	    || true ; \
	done
	cp "$(srcdir)/doc/translations.txt" \
991
	  "$(srcdir)/vlc-translations-$(VERSION)/README.txt"
992 993 994 995 996 997 998 999 1000 1001