Makefile.am 45 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
BASE_SUBDIRS = po compat src bin modules share doc test
11
EXTRA_SUBDIRS = m4 \
Rafaël Carré's avatar
Rafaël Carré committed
12
	libs/loader libs/srtp libs/unzip
13
DIST_SUBDIRS = $(BASE_SUBDIRS) $(EXTRA_SUBDIRS)
14

15
SUBDIRS = po compat src
16 17 18
if LOADER
SUBDIRS += libs/loader
endif
19
if HAVE_GCRYPT
20 21
SUBDIRS += libs/srtp
endif
22
if HAVE_ZLIB
23
if !HAVE_MINIZIP
24 25
SUBDIRS += libs/unzip
endif
26
endif
27 28 29
if BUILD_VLC
SUBDIRS += bin
endif
30
SUBDIRS += modules share doc test
31

32 33 34
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
35
	extras/package/win32/vlc.exe.manifest \
36
	extras/package/win32/libvlc.dll.manifest \
37
	extras/package/macosx/README.MacOSX.rtf \
Sam Hocevar's avatar
Sam Hocevar committed
38
	vlc-config.in.in \
39 40
	extras/package/rpm/vlc.fedora.spec \
	extras/package/rpm/vlc.altlinux.spec \
41
	extras/package/win32/vlc.win32.nsi.in \
42
	extras/package/win32/spad.nsi.in \
43 44
	extras/package/win32/UAC.nsh \
	extras/package/win32/UAC.dll \
45
	extras/package/win32/languages/declaration.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
46 47 48 49
	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 \
50
	extras/package/win32/languages/danish.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
51
	extras/package/win32/languages/dutch.nsh \
52
	extras/package/win32/languages/english.nsh \
Christophe Mutricy's avatar
Christophe Mutricy committed
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
	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 \
68
	extras/package/win32/languages/spanish.nsh
69

70
dist_noinst_SCRIPTS = bootstrap
71
nodist_noinst_SCRIPTS = compile
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
72

73 74 75 76 77
BUILT_SOURCES_distclean = vlc-config
if HAVE_WIN32
BUILT_SOURCES_distclean += \
	extras/package/win32/vlc.win32.nsi extras/package/win32/spad.nsi
endif
78
if HAVE_DARWIN
79
BUILT_SOURCES_clean = macosx-sdk
80 81 82
else
BUILT_SOURCES_clean =
endif
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
83

84
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
85

86 87
SUFFIXES = 

88 89
DISTCHECK_CONFIGURE_FLAGS = \
	--enable-fast-install \
90 91 92
	--disable-a52 \
	--disable-avcodec --disable-avformat \
	--disable-postproc --disable-swscale \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
93
	--disable-dbus \
94 95
	--disable-mad --disable-libmpeg2 \
	--disable-faad --disable-skins2 \
96
	--disable-live555 \
97
	--disable-fribidi --disable-glx \
98
	--disable-mkv \
99
	--with-kde-solid='$${datadir}/kde4/apps'
100

101
ACLOCAL_AMFLAGS = -I m4
102
AUTOMAKE_OPTIONS = \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
103
	1.11 \
104 105
	-Wall \
	check-news \
106
	dist-xz \
107
	no-dist-gzip
Christophe Mutricy's avatar
Christophe Mutricy committed
108
#	std-options
109

110 111
ChangeLog: Makefile.am
	rm -f -- "$@"
112
	cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
KO Myung-Hun's avatar
KO Myung-Hun committed
113
	$(LN_S) -f doc/ChangeLog-2009 "$@"
114

115 116 117 118 119
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
120 121 122 123 124
	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 \
125
	extras/package/macosx/Resources/English.lproj/About.nib/designable.nib \
126
	extras/package/macosx/Resources/English.lproj/About.nib/keyedobjects.nib \
127 128
	extras/package/macosx/Resources/English.lproj/AudioEffects.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/AudioEffects.nib/keyedobjects.nib \
129
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/designable.nib \
130
	extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \
131
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/designable.nib \
132
	extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \
133
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/designable.nib \
134
	extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \
135 136 137 138 139 140 141 142 143
	extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/MediaInfo.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Open.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/Open.nib/keyedobjects.nib \
	extras/package/macosx/Resources/English.lproj/Preferences.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
144 145
	extras/package/macosx/Resources/English.lproj/SyncTracks.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/SyncTracks.nib/keyedobjects.nib \
146 147
	extras/package/macosx/Resources/English.lproj/VideoEffects.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/VideoEffects.nib/keyedobjects.nib \
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 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 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 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290
	extras/package/macosx/Resources/English.lproj/Wizard.nib/designable.nib \
	extras/package/macosx/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
	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 \
	extras/package/macosx/Resources/mainwindow/bottom-bar-mini.png \
	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/volumetrack.png \
	extras/package/macosx/Resources/mainwindow_dark/back-pressed_dark.png \
	extras/package/macosx/Resources/mainwindow_dark/back_dark.png \
	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 \
291
	extras/package/macosx/Resources/pause_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
292
	extras/package/macosx/Resources/pause_embedded_graphite.png \
293
	extras/package/macosx/Resources/play_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
294
	extras/package/macosx/Resources/play_embedded_graphite.png \
295 296 297 298 299 300 301 302
	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
303 304
	extras/package/macosx/Resources/repeat_embedded_graphite.png \
	extras/package/macosx/Resources/repeat_single_embedded_graphite.png \
305
	extras/package/macosx/Resources/shuffle_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
306
	extras/package/macosx/Resources/shuffle_embedded_graphite.png \
307
	extras/package/macosx/Resources/skip_forward_active_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
308
	extras/package/macosx/Resources/skip_forward_embedded_graphite.png \
309
	extras/package/macosx/Resources/skip_previous_active_embedded.png \
Felix Paul Kühne's avatar
Felix Paul Kühne committed
310
	extras/package/macosx/Resources/skip_previous_embedded_graphite.png \
311 312
	extras/package/macosx/Resources/vlc.scriptSuite \
	extras/package/macosx/Resources/vlc.scriptTerminology \
313 314 315 316 317 318 319 320 321 322
	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
323 324 325 326 327 328
	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
329
	extras/package/macosx/README.MacOSX.rtf \
330
	extras/package/macosx/Info.plist.in
Felix Paul Kühne's avatar
Felix Paul Kühne committed
331

332 333

###############################################################################
Rafaël Carré's avatar
Rafaël Carré committed
334
# Various utilities ( editor syntax files, D-Bus controller ... )
335 336
##############################################################################
EXTRA_DIST += \
337
	extras/analyser/zsh_completion.sh \
338 339 340 341
	extras/analyser/zsh.cpp \
	extras/analyser/emacs.init \
	extras/analyser/vlc.vim \
	extras/analyser/valgrind.suppressions \
342
	extras/buildsystem/make.pl \
343
	extras/misc/mpris.py \
Pierre Ynard's avatar
Pierre Ynard committed
344
	extras/misc/mpris.xml
345

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

350
noinst_SCRIPTS = vlc-config
351
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
352 353
	$(SHELL) ./config.status --file=$@
	chmod 0755 $@
354
	touch $@
355

356 357
vlc-config.in: vlc-config.in.in
	./config.status --recheck
358
	touch $@
359

Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
360
CLEANFILES = $(BUILT_SOURCES_clean)
361 362
DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile
MAINTAINERCLEANFILES = ChangeLog
363

364
# Shortcut for developers to rebuild the core (libvlc + vlc)
365 366
# Don't use it if you don't know what it is about.
# Don't complain if it doesn't work. -- Courmisch
367 368 369 370
libcompat:
	cd compat && $(MAKE) $(AM_MAKEFLAGS)

libvlc: libcompat
371
	cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
372

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

376 377 378 379
doc:
	cd doc && $(MAKE) $(AM_MAKEFLAGS) doc

.PHONY: libvlc core doc
380

381 382 383 384
###############################################################################
# Building aliases
###############################################################################

385
ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
386
bin_SCRIPTS = $(ALIASES)
387
CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
388 389 390 391
EXTRA_SCRIPTS = $(ALL_ALIASES)

dist_noinst_SCRIPTS += make-alias

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

394
cvlc: make-alias Makefile
395
	$(AM_V_GEN)$(MKALIAS) dummy
396

397
rvlc: make-alias Makefile
398
	$(AM_V_GEN)$(MKALIAS) rc
399

400
svlc: make-alias Makefile
401
	$(AM_V_GEN)$(MKALIAS) skins2
402

403
qvlc: make-alias Makefile
404
	$(AM_V_GEN)$(MKALIAS) qt4
405

406
nvlc: make-alias Makefile
407
	$(AM_V_GEN)$(MKALIAS) ncurses
408

409
mvlc: make-alias Makefile
410
	$(AM_V_GEN)$(MKALIAS) maemo
411

412
if BUILD_VLC
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
413
noinst_SCRIPTS += vlc$(EXEEXT)
414
endif
415

416
vlc$(EXEEXT):
KO Myung-Hun's avatar
KO Myung-Hun committed
417
	$(AM_V_GEN)$(LN_S) -f bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
418

419
if HAVE_DARWIN
420
if BUILD_MACOSX_VLC_APP
421
# Create the MacOS X app
422
noinst_DATA = VLC.app
423
endif
424 425
endif

426
silentstd = $(silentstd_$(V))
427
silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
428
silentstd_0 = 2>&1 >/dev/null
429

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

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

662 663 664 665 666
###############################################################################
# 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
667
# the same setup as the maintaner(s).
668
#
669

670 671 672
############################################################################
## Win                                                                    ##
############################################################################
673
destdir=$(prefix)
674
win32_destdir=$(top_builddir)/vlc-$(VERSION)
675
win32_debugdir=$(top_builddir)/symbols-$(VERSION)
676
win32_xpi_destdir=$(win32_destdir)/vlc-plugin
677

678 679 680 681 682 683 684 685 686 687 688 689 690 691
if HAVE_WIN64
build-npapi:
	touch $@

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

build-activex:
	touch $@
else
692 693
if HAVE_WIN32
include extras/package/npapi.am
Rafaël Carré's avatar
Rafaël Carré committed
694
include extras/package/activex.am
695
endif
696 697
endif
endif
698

699
#Win-common is for win32 and wince
Rafaël Carré's avatar
Rafaël Carré committed
700
package-win-common: install build-npapi build-activex
701
# Check that tmp isn't in the way
702
	@if test -e "$(win32_destdir)"; then \
703 704 705 706 707
	    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; \
708
	else \
709 710
	    echo "Debug dir OK."; mkdir -p "$(win32_debugdir)"; \
	    echo "Dest dir OK."; mkdir -p "$(win32_destdir)"; \
711
	fi
712

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

719
# Text files and clean them
Rafaël Carré's avatar
Rafaël Carré committed
720
	for file in AUTHORS THANKS ; \
721
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
Christophe Mutricy's avatar
Christophe Mutricy committed
722
	for file in NEWS COPYING README; \
723
	  do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
724

725
# Necessary icon
726
	cp $(srcdir)/share/icons/vlc.ico $(win32_destdir)
Luca Barbato's avatar
Luca Barbato committed
727

728
# Locales
729
	-cp -r $(destdir)/share/locale $(win32_destdir)
730

731
# Plugins
732
	cp -r $(destdir)/lib/vlc/plugins $(win32_destdir)
733

734
if BUILD_LUA
735 736 737
	mkdir -p $(win32_destdir)/lua
	cp -r $(destdir)/lib/vlc/lua/* $(win32_destdir)/lua
	cp -r $(destdir)/share/vlc/lua/* $(win32_destdir)/lua
738 739 740
endif

if BUILD_SKINS
741
	cp -r $(destdir)/share/vlc/skins2 $(win32_destdir)/skins
742 743
endif
if BUILD_OSDMENU
744
	cp -r $(destdir)/share/vlc/osdmenu "$(win32_destdir)/osdmenu"
745
	for file in $(win32_destdir)/osdmenu/*.cfg; do \
746 747 748
		sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
		sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
		rm -f -- "$$file.tmp"; \
749
	done
750
endif
Rafaël Carré's avatar
Rafaël Carré committed
751
if !HAVE_WIN64
752
if !HAVE_WINCE
Rafaël Carré's avatar
Rafaël Carré committed
753 754 755 756
	cp "$(top_builddir)/activex-vlc/src/axvlc.dll.manifest" "$(win32_destdir)/"
	cp "$(top_builddir)/activex-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
	cp "$(top_builddir)/npapi-vlc/src/npvlc.dll.manifest" "$(win32_destdir)/"
	cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
757
endif
758
endif
759

760
# SDK
761
	mkdir -p "$(win32_destdir)/sdk/lib"
762 763 764
	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 \
765
        cp -rv $(destdir)/lib/$$file "$(win32_destdir)/sdk/lib"; done
Rafaël Carré's avatar
Rafaël Carré committed
766
if !HAVE_WIN64
767
if !HAVE_WINCE
768
	mkdir -p "$(win32_destdir)/sdk/activex"
Rafaël Carré's avatar
Rafaël Carré committed
769 770
	cp $(top_builddir)/activex-vlc/README $(win32_destdir)/sdk/activex/README.TXT
	cp $(top_builddir)/activex-vlc/src/test.html $(win32_destdir)/sdk/activex/
771
endif
772
endif
773

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

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

782
package-win-base: package-win-common
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
783
	find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -or -name '*$(EXEEXT)' \) | while read i; \
784
	do if test -n "$$i" ; then \
785 786 787 788 789 790 791
	    $(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
792
package-win32-webplugin-common: package-win-base
793 794
	mkdir -p "$(win32_xpi_destdir)/plugins"
	find $(destdir) -maxdepth 4 -name "*$(LIBEXT)" -exec cp {} "$(win32_xpi_destdir)/" \;
795
if !HAVE_WIN64
Rafaël Carré's avatar
Rafaël Carré committed
796
	cp $(top_builddir)/npapi-vlc/src/npvlc.dll.manifest "$(win32_xpi_destdir)/plugins"
797
endif
798 799 800 801
	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*"
802

Rafaël Carré's avatar
Rafaël Carré committed
803
package-win32-xpi: package-win32-webplugin-common
804
if !HAVE_WIN64
805
	cp $(top_builddir)/npapi-vlc/src/install.rdf "$(win32_xpi_destdir)"
806
	cd $(win32_xpi_destdir) && zip -r "../vlc-$(VERSION).xpi" install.rdf plugins
807
endif
808

Rafaël Carré's avatar
Rafaël Carré committed
809
package-win32-crx: package-win32-webplugin-common
810
if !HAVE_WIN64
811
	cp $(top_builddir)/npapi-vlc/src/manifest.json "$(win32_xpi_destdir)"
812 813
	crxmake --pack-extension "$(win32_xpi_destdir)" \
		--extension-output "$(win32_destdir)/vlc-$(VERSION).crx" --ignore-file install.rdf
814
endif
815

Rafaël Carré's avatar
Rafaël Carré committed
816
package-win32-base-exe: package-win-base
817 818 819 820 821 822 823 824 825 826
# 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"

827
# Create package
828
	if makensis -VERSION >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
829
	    MAKENSIS="makensis"; \
830
	elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
831
	    MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
832
	elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
833
	    MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
Rafaël Carré's avatar
typo  
Rafaël Carré committed
834
	elif wine --version >/dev/null 2>&1; then \
Christophe Mutricy's avatar
Christophe Mutricy committed
835
	    MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
836 837 838
	else \
	    echo 'Error: cannot locate makensis tool'; exit 1; \
	fi; \
839
	eval "$$MAKENSIS $(win32_destdir)/spad.nsi"; \
840
	eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
841

842
package-win32-base-zip: package-win-base
843
# Create package
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
844
	rm -f -- vlc-$(VERSION)-win32.zip
845
	zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
Gildas Bazin's avatar
 
Gildas Bazin committed
846

847
package-win32-base-debug-zip: package-win-common
848 849 850 851
# Create package
	rm -f -- vlc-$(VERSION)-win32-debug.zip
	zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)

852
package-win32-base-7zip: package-win-base
853
# Create package
854
	7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
855

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

860
package-win32-cleanup:
861
	rm -Rf $(win32_destdir) $(win32_debugdir)
862

863
package-win32-exe: package-win-base package-win32-base-exe package-win32-cleanup
Gildas Bazin's avatar
 
Gildas Bazin committed
864

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

867
package-win32-debug-zip: package-win32-base-debug-zip package-win32-cleanup
868

869 870 871
package-win32-7zip: package-win32-base-7zip package-win32-cleanup

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

873
package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe package-win32-xpi
874

875
package-win32: package-win32-no-clean package-win32-cleanup
876

877
package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip package-win32-cleanup
878

879

Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
880 881 882
#######
# WinCE
#######
883
package-wince-base: package-win-base
884

885
package-wince-base-zip: package-wince-base
886
# Create package
887 888
	rm -f -- vlc-$(VERSION)-wince.zip
	zip -r -9 vlc-$(VERSION)-wince.zip vlc-$(VERSION)
889

890
package-wince: package-wince-base-zip package-win32-cleanup
891 892


893 894 895
#########################################################################
## MacOS X                                                             ##
#########################################################################
896
package-macosx: VLC-release.app ChangeLog
897
# Check that the temporary location isn't in the way
898 899
	@if test -e "$(top_builddir)/vlc-$(VERSION)/"; then \
	  rm -Rf "$(top_builddir)/vlc-$(VERSION)/" ; \
900 901
	fi

902 903
	echo "Create package directory: vlc-$(VERSION)/";
	mkdir -p "$(top_builddir)/vlc-$(VERSION)/";
904

905
# Copy relevant files 
906
	@if test -e "$(top_builddir)/VLC-release.app/"; then \
907
	  cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
908
	else \
909
	  cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
910
	fi
911
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
912
          mkdir -p $(top_builddir)/vlc-$(VERSION)/.background/ && \
913 914 915 916 917
          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/
918 919

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

922
# Create disk image (temporarily taken from the 0.8.6-bugfix branch to provide reliable NBs)
923 924
	echo "Creating disk image"
	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
925
	hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
926 927 928
	  "$(top_builddir)/vlc-$(VERSION).dmg" -scrub
	echo "Disk image creation completed:"
	ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
929 930

# Create disk image 
931 932
#	echo "Creating disk image"
#	rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
933 934
#	hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
#	  "$(top_builddir)/vlc-$(VERSION).dmg" -format UDRW \
935
#	  -scrub -imagekey zlib-level=9 -attach
936 937 938 939

# 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.
940 941 942 943
#	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)"
944
#	sleep 1 # Make sure operation completes
945
#	cd "$(srcdir)"
946 947

# Unmount the image now
948 949
#	hdiutil detach "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
#	rm -R $(top_builddir)/vlcmnt
950 951 952

# Make sure the image is not writable
# Note: We can't directly create a read only dmg as we do the bless stuff
953 954
	echo "Make the disk image read-only"
	mv "$(top_builddir)/vlc-$(VERSION).dmg" "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
955
	hdiutil convert "$(top_builddir)/vlc-$(VERSION)-rw.dmg" -format UDBZ -o "$(top_builddir)/vlc-$(VERSION).dmg"
956
	rm "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
957 958

# We are done
959 960
	echo "Disk image creation completed:"
	ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
961 962

# Clean up
963
	rm -Rf "$(top_builddir)/vlc-$(VERSION)"
964

965
package-macosx-zip: VLC-release.app
966 967 968
	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
969
	mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies
970 971
	for i in AUTHORS COPYING ChangeLog README THANKS NEWS; do \
	  cp $(srcdir)/$$i $(top_builddir)/vlc-$(VERSION)/Goodies; \
972 973 974 975
	done
	cp -R  $(srcdir)/extras/package/macosx/Delete_Preferences.app \
	     $(top_builddir)/vlc-$(VERSION)/Goodies
	cp $(srcdir)/extras/package/macosx/README.MacOSX.rtf \