1 ###############################################################################
2 # Automake targets and declarations
3 ###############################################################################
5 # SUBDIRS stores the directories where a "make" is required when building
6 # something. DIST_SUBDIRS stores the directories where nothing is built but
7 # which have makefiles with distribution information.
8 # - src (libvlc) is nedeed by modules
9 # - libs/* are needed by modules
10 BASE_SUBDIRS = po compat src bin modules share doc test
12 libs/loader libs/srtp libs/unzip
13 DIST_SUBDIRS = $(BASE_SUBDIRS) $(EXTRA_SUBDIRS)
15 SUBDIRS = po compat src
17 SUBDIRS += libs/loader
30 SUBDIRS += modules share doc test
35 extras/package/win32/vlc.exe.manifest \
36 extras/package/win32/libvlc.dll.manifest \
37 extras/package/macosx/README.MacOSX.rtf \
39 extras/package/rpm/vlc.fedora.spec \
40 extras/package/rpm/vlc.altlinux.spec \
41 extras/package/win32/vlc.win32.nsi.in \
42 extras/package/win32/spad.nsi.in \
43 extras/package/win32/UAC.nsh \
44 extras/package/win32/UAC.dll \
45 extras/package/win32/languages/declaration.nsh \
46 extras/package/win32/languages/bengali.nsh \
47 extras/package/win32/languages/brazilian_portuguese.nsh \
48 extras/package/win32/languages/bulgarian.nsh \
49 extras/package/win32/languages/catalan.nsh \
50 extras/package/win32/languages/danish.nsh \
51 extras/package/win32/languages/dutch.nsh \
52 extras/package/win32/languages/english.nsh \
53 extras/package/win32/languages/estonian.nsh \
54 extras/package/win32/languages/finnish.nsh \
55 extras/package/win32/languages/french.nsh \
56 extras/package/win32/languages/german.nsh \
57 extras/package/win32/languages/hungarian.nsh \
58 extras/package/win32/languages/italian.nsh \
59 extras/package/win32/languages/japanese.nsh \
60 extras/package/win32/languages/occitan.nsh \
61 extras/package/win32/languages/polish.nsh \
62 extras/package/win32/languages/punjabi.nsh \
63 extras/package/win32/languages/romanian.nsh \
64 extras/package/win32/languages/schinese.nsh \
65 extras/package/win32/languages/slovak.nsh \
66 extras/package/win32/languages/slovenian.nsh \
67 extras/package/win32/languages/sorani.nsh \
68 extras/package/win32/languages/spanish.nsh
70 dist_noinst_SCRIPTS = bootstrap
71 nodist_noinst_SCRIPTS = compile
73 BUILT_SOURCES_distclean = vlc-config
75 BUILT_SOURCES_distclean += \
76 extras/package/win32/vlc.win32.nsi extras/package/win32/spad.nsi
79 BUILT_SOURCES_clean = macosx-sdk
84 BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
88 DISTCHECK_CONFIGURE_FLAGS = \
89 --enable-fast-install \
91 --disable-avcodec --disable-avformat \
92 --disable-postproc --disable-swscale \
94 --disable-mad --disable-libmpeg2 \
95 --disable-faad --disable-skins2 \
97 --disable-fribidi --disable-glx \
99 --with-kde-solid='$${datadir}/kde4/apps'
101 ACLOCAL_AMFLAGS = -I m4
110 ChangeLog: Makefile.am
112 cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
113 $(LN_S) -f doc/ChangeLog-2009 "$@"
115 ###############################################################################
117 ###############################################################################
120 extras/package/macosx/Resources/English.lproj/MainMenu.nib/designable.nib \
121 extras/package/macosx/Resources/English.lproj/MainMenu.nib/keyedobjects.nib \
122 extras/package/macosx/Resources/English.lproj/MediaInfo.nib/designable.nib \
123 extras/package/macosx/Resources/English.lproj/MediaInfo.nib/keyedobjects.nib \
124 extras/package/macosx/Resources/English.lproj/About.nib/designable.nib \
125 extras/package/macosx/Resources/English.lproj/About.nib/keyedobjects.nib \
126 extras/package/macosx/Resources/English.lproj/Open.nib/designable.nib \
127 extras/package/macosx/Resources/English.lproj/Open.nib/keyedobjects.nib \
128 extras/package/macosx/Resources/English.lproj/Preferences.nib/designable.nib \
129 extras/package/macosx/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
130 extras/package/macosx/Resources/English.lproj/Wizard.nib/designable.nib \
131 extras/package/macosx/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
132 extras/package/macosx/Resources/English.lproj/Bookmarks.nib/designable.nib \
133 extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \
134 extras/package/macosx/Resources/English.lproj/Extended.nib/designable.nib \
135 extras/package/macosx/Resources/English.lproj/Extended.nib/keyedobjects.nib \
136 extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/designable.nib \
137 extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \
138 extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/designable.nib \
139 extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \
140 extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \
141 extras/package/macosx/Resources/dsa_pub.pem \
142 extras/package/macosx/Resources/aiff.icns \
143 extras/package/macosx/Resources/audio.icns \
144 extras/package/macosx/Resources/avi.icns \
145 extras/package/macosx/Resources/flv.icns \
146 extras/package/macosx/Resources/generic.icns \
147 extras/package/macosx/Resources/m4a.icns \
148 extras/package/macosx/Resources/m4v.icns \
149 extras/package/macosx/Resources/mkv.icns \
150 extras/package/macosx/Resources/mov.icns \
151 extras/package/macosx/Resources/movie.icns \
152 extras/package/macosx/Resources/mp3.icns \
153 extras/package/macosx/Resources/mpeg.icns \
154 extras/package/macosx/Resources/ogg.icns \
155 extras/package/macosx/Resources/playlist.icns \
156 extras/package/macosx/Resources/rm.icns \
157 extras/package/macosx/Resources/subtitle.icns \
158 extras/package/macosx/Resources/vob.icns \
159 extras/package/macosx/Resources/wav.icns \
160 extras/package/macosx/Resources/vlc.icns \
161 extras/package/macosx/Resources/wma.icns \
162 extras/package/macosx/Resources/wmv.icns \
163 extras/package/macosx/Resources/pause.png \
164 extras/package/macosx/Resources/play.png \
165 extras/package/macosx/Resources/stop.png \
166 extras/package/macosx/Resources/display_left.png \
167 extras/package/macosx/Resources/display_middle.png \
168 extras/package/macosx/Resources/display_right.png \
169 extras/package/macosx/Resources/display_slider.png \
170 extras/package/macosx/Resources/display_track.png \
171 extras/package/macosx/Resources/equalizerdrawer_active.png \
172 extras/package/macosx/Resources/fullscreen_active.png \
173 extras/package/macosx/Resources/next_active.png \
174 extras/package/macosx/Resources/playlistdrawer_active.png \
175 extras/package/macosx/Resources/previous_active.png \
176 extras/package/macosx/Resources/skip_forward_active.png \
177 extras/package/macosx/Resources/skip_previous_active.png \
178 extras/package/macosx/Resources/volume_high.png \
179 extras/package/macosx/Resources/volume_low.png \
180 extras/package/macosx/Resources/volumeslider_normal.png \
181 extras/package/macosx/Resources/volumetrack.png \
182 extras/package/macosx/Resources/about_bg.png \
183 extras/package/macosx/Resources/skip_forward_active_embedded.png \
184 extras/package/macosx/Resources/play_embedded.png \
185 extras/package/macosx/Resources/pause_embedded.png \
186 extras/package/macosx/Resources/skip_previous_active_embedded.png \
187 extras/package/macosx/Resources/vlc.scriptSuite \
188 extras/package/macosx/Resources/vlc.scriptTerminology \
189 extras/package/macosx/Resources/README \
190 extras/package/macosx/Resources/add_embedded.png \
191 extras/package/macosx/Resources/repeat_embedded.png \
192 extras/package/macosx/Resources/shuffle_embedded.png \
193 extras/package/macosx/Resources/fs_volume_slider_knob_highlight.png \
194 extras/package/macosx/Resources/fs_volume_slider_knob.png \
195 extras/package/macosx/Resources/fs_volume_slider_bar.png \
196 extras/package/macosx/Resources/fs_volume_mute_highlight.png \
197 extras/package/macosx/Resources/fs_volume_mute.png \
198 extras/package/macosx/Resources/fs_volume_max_highlight.png \
199 extras/package/macosx/Resources/fs_volume_max.png \
200 extras/package/macosx/Resources/fs_time_slider_knob_highlight.png \
201 extras/package/macosx/Resources/fs_time_slider_knob.png \
202 extras/package/macosx/Resources/fs_time_slider.png \
203 extras/package/macosx/Resources/fs_stop_highlight.png \
204 extras/package/macosx/Resources/fs_stop.png \
205 extras/package/macosx/Resources/fs_skip_previous_highlight.png \
206 extras/package/macosx/Resources/fs_skip_previous.png \
207 extras/package/macosx/Resources/fs_skip_next_highlight.png \
208 extras/package/macosx/Resources/fs_skip_next.png \
209 extras/package/macosx/Resources/fs_rewind_highlight.png \
210 extras/package/macosx/Resources/fs_rewind.png \
211 extras/package/macosx/Resources/fs_play_highlight.png \
212 extras/package/macosx/Resources/fs_play.png \
213 extras/package/macosx/Resources/fs_pause_highlight.png \
214 extras/package/macosx/Resources/fs_pause.png \
215 extras/package/macosx/Resources/fs_forward_highlight.png \
216 extras/package/macosx/Resources/fs_forward.png \
217 extras/package/macosx/Resources/fs_exit_fullscreen_highlight.png \
218 extras/package/macosx/Resources/fs_exit_fullscreen.png \
219 extras/package/macosx/Resources/fs_background.png \
220 extras/package/macosx/Resources/add_embedded_graphite.png \
221 extras/package/macosx/Resources/equalizerdrawer_graphite.png \
222 extras/package/macosx/Resources/fullscreen_graphite.png \
223 extras/package/macosx/Resources/next_graphite.png \
224 extras/package/macosx/Resources/pause_embedded_graphite.png \
225 extras/package/macosx/Resources/pause_graphite.png \
226 extras/package/macosx/Resources/play_embedded_graphite.png \
227 extras/package/macosx/Resources/play_graphite.png \
228 extras/package/macosx/Resources/playlistdrawer_graphite.png \
229 extras/package/macosx/Resources/previous_graphite.png \
230 extras/package/macosx/Resources/repeat_embedded_graphite.png \
231 extras/package/macosx/Resources/repeat_single_embedded_graphite.png \
232 extras/package/macosx/Resources/shuffle_embedded_graphite.png \
233 extras/package/macosx/Resources/skip_forward_embedded_graphite.png \
234 extras/package/macosx/Resources/skip_forward_graphite.png \
235 extras/package/macosx/Resources/skip_previous_embedded_graphite.png \
236 extras/package/macosx/Resources/skip_previous_graphite.png \
237 extras/package/macosx/Resources/stop_graphite.png \
238 extras/package/macosx/Resources/volumeslider_graphite.png \
239 extras/package/macosx/Resources/backward_big_down.png \
240 extras/package/macosx/Resources/backward_big.png \
241 extras/package/macosx/Resources/eq_sm.pdf \
242 extras/package/macosx/Resources/forward_big_down.png \
243 extras/package/macosx/Resources/forward_big.png \
244 extras/package/macosx/Resources/fs_sm.pdf \
245 extras/package/macosx/Resources/list_sm.pdf \
246 extras/package/macosx/Resources/next_sm.pdf \
247 extras/package/macosx/Resources/pause_big_down.png \
248 extras/package/macosx/Resources/pause_big.png \
249 extras/package/macosx/Resources/play_big_down.png \
250 extras/package/macosx/Resources/play_big.png \
251 extras/package/macosx/Resources/prev_sm.pdf \
252 extras/package/macosx/Resources/sidebarAdd.png \
253 extras/package/macosx/Resources/sidebarRepeat.png \
254 extras/package/macosx/Resources/sidebarRepeatOn.png \
255 extras/package/macosx/Resources/sidebarRepeatOneOn.png \
256 extras/package/macosx/Resources/sidebarResizeWidget.png \
257 extras/package/macosx/Resources/sidebarShuffle.png \
258 extras/package/macosx/Resources/sidebarShuffleOn.png \
259 extras/package/macosx/Resources/sidebarStatusAreaBackground.png \
260 extras/package/macosx/Resources/stop_sm.pdf \
261 extras/package/macosx/Resources/noart.png \
262 extras/package/macosx/Resources/spref_cone_Audio_64.png \
263 extras/package/macosx/Resources/spref_cone_Hotkeys_64.png \
264 extras/package/macosx/Resources/spref_cone_Input_64.png \
265 extras/package/macosx/Resources/spref_cone_Interface_64.png \
266 extras/package/macosx/Resources/spref_cone_Subtitles_64.png \
267 extras/package/macosx/Resources/spref_cone_Video_64.png \
268 extras/package/macosx/fullscreen_panel.svg \
269 extras/package/macosx/ub.sh \
270 extras/package/macosx/vlc.xcodeproj/project.pbxproj \
271 extras/package/macosx/Delete_Preferences.app/Contents/Info.plist \
272 extras/package/macosx/Delete_Preferences.app/Contents/PkgInfo \
273 extras/package/macosx/Delete_Preferences.app/Contents/MacOS/applet \
274 extras/package/macosx/Delete_Preferences.app/Contents/Resources/description.rtfd/TXT.rtf \
275 extras/package/macosx/Delete_Preferences.app/Contents/Resources/applet.icns \
276 extras/package/macosx/Delete_Preferences.app/Contents/Resources/applet.rsrc \
277 extras/package/macosx/Delete_Preferences.app/Contents/Resources/Scripts/main.scpt \
278 extras/package/macosx/eyetvplugin/EyeTVPluginDefs.h \
279 extras/package/macosx/eyetvplugin/Info.plist \
280 extras/package/macosx/eyetvplugin/eyetvplugin.c \
281 extras/package/macosx/eyetvplugin/eyetvplugin.h \
282 extras/package/macosx/eyetvplugin/English.lproj/InfoPlist.strings \
283 extras/package/macosx/eyetvplugin/eyetvplugin.xcodeproj/project.pbxproj \
284 extras/package/macosx/README.MacOSX.rtf \
285 extras/package/macosx/Info.plist.in
288 ###############################################################################
289 # Various utilities ( editor syntax files, D-Bus controller ... )
290 ##############################################################################
292 extras/analyser/zsh_completion.sh \
293 extras/analyser/zsh.cpp \
294 extras/analyser/emacs.init \
295 extras/analyser/vlc.vim \
296 extras/analyser/valgrind.suppressions \
297 extras/buildsystem/make.pl \
298 extras/misc/mpris.py \
299 extras/misc/mpris.glade
301 ###############################################################################
303 ###############################################################################
305 noinst_SCRIPTS = vlc-config
306 vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
307 $(SHELL) ./config.status --file=$@
311 vlc-config.in: vlc-config.in.in
312 ./config.status --recheck
315 CLEANFILES = $(BUILT_SOURCES_clean)
316 DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile
317 MAINTAINERCLEANFILES = ChangeLog
319 # Shortcut for developers to rebuild the core (libvlc + vlc)
320 # Don't use it if you don't know what it is about.
321 # Don't complain if it doesn't work. -- Courmisch
323 cd compat && $(MAKE) $(AM_MAKEFLAGS)
326 cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
328 core: libvlc vlc$(EXEEXT)
329 cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
332 cd doc && $(MAKE) $(AM_MAKEFLAGS) doc
334 .PHONY: libvlc core doc
336 ###############################################################################
338 ###############################################################################
340 ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc
341 bin_SCRIPTS = $(ALIASES)
342 CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
343 EXTRA_SCRIPTS = $(ALL_ALIASES)
345 dist_noinst_SCRIPTS += make-alias
347 MKALIAS = bindir="$(bindir)" transform="$(transform)" program_prefix="$(program_prefix)" program_suffix="$(program_suffix)" $(top_srcdir)/make-alias $@
349 cvlc: make-alias Makefile
350 $(AM_V_GEN)$(MKALIAS) dummy
352 rvlc: make-alias Makefile
353 $(AM_V_GEN)$(MKALIAS) rc
355 svlc: make-alias Makefile
356 $(AM_V_GEN)$(MKALIAS) skins2
358 qvlc: make-alias Makefile
359 $(AM_V_GEN)$(MKALIAS) qt4
361 nvlc: make-alias Makefile
362 $(AM_V_GEN)$(MKALIAS) ncurses
364 mvlc: make-alias Makefile
365 $(AM_V_GEN)$(MKALIAS) maemo
368 noinst_SCRIPTS += vlc$(EXEEXT)
372 $(AM_V_GEN)$(LN_S) -f bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
375 if BUILD_MACOSX_VLC_APP
376 # Create the MacOS X app
377 noinst_DATA = VLC.app
381 silentstd = $(silentstd_$(V))
382 silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
383 silentstd_0 = 2>&1 >/dev/null
385 # VLC-release.app for packaging and giving it to your friends
386 # use package-macosx to get a nice dmg
388 ( cd src && $(MAKE) $(AM_MAKEFLAGS) install $(silentstd) )
389 rm -Rf "$(top_builddir)/tmp"
390 mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
391 rm -Rf $(top_builddir)/VLC-release.app
392 for i in vlc.xcodeproj Resources README.MacOSX.rtf ; do \
393 cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \
395 REVISION=`(git --git-dir=$(srcdir)/.git describe --always || echo exported)` && \
396 cat $(top_builddir)/extras/package/macosx/Info.plist | \
397 sed "s/#REVISION#/$$REVISION/g" > $(top_builddir)/tmp/extras/package/macosx/Info.plist
398 cp -R $(top_builddir)/extras/package/macosx/Resources $(top_builddir)/tmp/extras/package/macosx/
399 for i in AUTHORS COPYING THANKS; do \
400 cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
402 mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle
403 cp -R $(CONTRIB_DIR)/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle
404 mkdir -p $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
405 cp -R $(CONTRIB_DIR)/BGHUDAppKit/BGHUDAppKit.framework $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
406 mkdir -p $(top_builddir)/tmp/extras/contrib/Growl
407 cp -R $(CONTRIB_DIR)/Growl/Growl.framework $(top_builddir)/tmp/extras/contrib/Growl
408 mkdir -p $(top_builddir)/tmp/modules/audio_output
409 mkdir -p $(top_builddir)/tmp/modules/gui/macosx
455 cp "$(srcdir)/modules/gui/macosx/$$i" \
456 $(top_builddir)/tmp/modules/gui/macosx; \
458 $(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
459 xcodebuild -target vlc SYMROOT=../../../build DSTROOT=../../../build $(silentstd) && \
461 cp -R $(top_builddir)/tmp/build/Default/VLC.bundle $(top_builddir)/VLC-release.app; \
462 rm -Rf $(top_builddir)/tmp
463 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
464 PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh
465 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua
466 for i in $(srcdir)/share/lua/*.* ; do \
467 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/`basename $${i}` ; \
469 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/playlist
470 for i in $(srcdir)/share/lua/playlist/*.* ; do \
471 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/playlist/`basename $${i}` ; \
473 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/meta
474 for i in $(srcdir)/share/lua/meta/*.* ; do \
475 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/meta/`basename $${i}` ; \
477 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf
478 for i in $(srcdir)/share/lua/intf/*.* ; do \
479 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf/`basename $${i}` ; \
481 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf/modules
482 for i in $(srcdir)/share/lua/intf/modules/*.* ; do \
483 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/intf/modules/`basename $${i}` ; \
485 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/dialogs
486 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/js
487 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/images
488 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests
489 $(INSTALL) -m 644 $(srcdir)/share/lua/http/.hosts $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/.hosts
490 for i in $(srcdir)/share/lua/http/*.* ; do \
491 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/`basename $${i}` ; \
493 for i in $(srcdir)/share/lua/http/dialogs/* ; do \
494 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/dialogs/`basename $${i}` ; \
496 for i in $(srcdir)/share/lua/http/js/*.* ; do \
497 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/js/`basename $${i}` ; \
499 for i in $(srcdir)/share/lua/http/images/*.* ; do \
500 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/images/`basename $${i}` ; \
502 for i in $(srcdir)/share/lua/http/requests/*.* ; do \
503 $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests/`basename $${i}` ; \
505 $(INSTALL) -m 644 $(srcdir)/share/lua/http/requests/README.txt $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/http/requests/README.txt
506 $(INSTALL) -m 644 $(srcdir)/share/vlc512x512.png $(top_builddir)/VLC-release.app/Contents/MacOS/share/vlc512x512.png
507 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale
508 cat $(top_srcdir)/po/LINGUAS | while read i; do \
509 $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \
510 $(INSTALL) $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
511 mkdir -p $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
512 $(LN_S) -f ../English.lproj/InfoPlist.strings \
513 $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
514 $(LN_S) -f ../English.lproj/MainMenu.nib \
515 $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
517 printf "APPLVLC#" >| $(top_builddir)/VLC-release.app/Contents/PkgInfo
518 find $(top_builddir)/VLC-release.app/Contents/Resources/English.lproj -name designable.nib -delete;
519 find $(top_builddir)/VLC-release.app -type d -exec chmod ugo+rx '{}' \;
520 find $(top_builddir)/VLC-release.app -type f -exec chmod ugo+r '{}' \;
522 # This is just for development purposes.
523 # The resulting VLC.app will only run in this tree.
524 VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.libs/libvlc.dylib
525 $(AM_V_GEN)(cd src && make install $(silentstd))
526 rm -Rf $(top_builddir)/tmp
527 mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
528 rm -Rf $(top_builddir)/VLC.app
529 for i in vlc.xcodeproj Resources README.MacOSX.rtf; do \
530 cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \
532 REVISION=`(git --git-dir=$(srcdir)/.git describe --always || echo exported)` && \
533 cat $(top_builddir)/extras/package/macosx/Info.plist | \
534 sed "s/#REVISION#/$$REVISION/g" > $(top_builddir)/tmp/extras/package/macosx/Info.plist
535 cp -R $(top_builddir)/extras/package/macosx/Resources $(top_builddir)/tmp/extras/package/macosx/
536 for i in AUTHORS COPYING THANKS; do \
537 cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
539 mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle
540 cp -R $(CONTRIB_DIR)/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle
541 mkdir -p $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
542 cp -R $(CONTRIB_DIR)/BGHUDAppKit/BGHUDAppKit.framework $(top_builddir)/tmp/extras/contrib/BGHUDAppKit
543 mkdir -p $(top_builddir)/tmp/extras/contrib/Growl
544 cp -R $(CONTRIB_DIR)/Growl/Growl.framework $(top_builddir)/tmp/extras/contrib/Growl
545 mkdir -p $(top_builddir)/tmp/modules/audio_output
546 mkdir -p $(top_builddir)/tmp/modules/gui/macosx
592 cp "$(srcdir)/modules/gui/macosx/$$i" \
593 $(top_builddir)/tmp/modules/gui/macosx; \
595 $(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \
596 xcodebuild -target vlc SYMROOT=../../../build DSTROOT=../../../build $(silentstd) && \
598 cp -R -L $(top_builddir)/tmp/build/Default/VLC.bundle $(top_builddir)/VLC.app
599 $(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS
600 touch $(top_builddir)/VLC.app/Contents/MacOS/VLC
601 chmod +x $(top_builddir)/VLC.app/Contents/MacOS/VLC
602 $(INSTALL) $(top_builddir)/bin/.libs/vlc $(top_builddir)/VLC.app/Contents/MacOS/VLC
603 $(LN_S) -f ../../../modules $(top_builddir)/VLC.app/Contents/MacOS/plugins
604 install -d $(top_builddir)/VLC.app/Contents/MacOS/share
605 for i in `ls $(srcdir)/share`; do \
606 $(LN_S) -f `pwd`/$(srcdir)/share/$$i $(top_builddir)/VLC.app/Contents/MacOS/share/; \
608 $(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share/locale
609 cat $(top_srcdir)/po/LINGUAS | while read i; do \
610 mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \
611 $(LN_S) -f `pwd`/$(srcdir)/po/$${i}.gmo $(top_builddir)/VLC.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
612 mkdir -p $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
613 $(LN_S) -f ../English.lproj/InfoPlist.strings \
614 $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
615 $(LN_S) -f ../English.lproj/MainMenu.nib \
616 $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
618 printf "APPLVLC#" >| $(top_builddir)/VLC.app/Contents/PkgInfo
620 ###############################################################################
621 # Building architecture-specific binary packages
622 ###############################################################################
624 # XXX: this rule is probably only useful to you if you have exactly
625 # the same setup as the maintaner(s).
628 ############################################################################
630 ############################################################################
632 win32_destdir=$(top_builddir)/vlc-$(VERSION)
633 win32_debugdir=$(top_builddir)/symbols-$(VERSION)
634 win32_xpi_destdir=$(win32_destdir)/vlc-plugin
651 include extras/package/npapi.am
652 include extras/package/activex.am
657 #Win-common is for win32 and wince
658 package-win-common: install build-npapi build-activex
659 # Check that tmp isn't in the way
660 @if test -e "$(win32_destdir)"; then \
661 echo "Error: please remove $(win32_destdir), it is in the way"; \
663 elif test -e "$(win32_debugdir)"; then \
664 echo "Error: please remove $(win32_debugdir), it is in the way"; \
667 echo "Debug dir OK."; mkdir -p "$(win32_debugdir)"; \
668 echo "Dest dir OK."; mkdir -p "$(win32_destdir)"; \
671 # Executables, major libs+manifests
672 find $(destdir) -maxdepth 4 \( -name "*$(LIBEXT)" -o -name "*$(EXEEXT)" \) -exec cp {} "$(win32_destdir)/" \;
673 for file in $(top_srcdir)/extras/package/win32/vlc$(EXEEXT).manifest \
674 $(top_srcdir)/extras/package/win32/libvlc$(LIBEXT).manifest; \
675 do cp $$file "$(win32_destdir)/" ; done;
677 # Text files and clean them
678 for file in AUTHORS THANKS ; \
679 do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done;
680 for file in NEWS COPYING README; \
681 do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done
684 cp $(srcdir)/share/icons/vlc.ico $(win32_destdir)
687 -cp -r $(destdir)/share/locale $(win32_destdir)
690 cp -r $(destdir)/lib/vlc/plugins $(win32_destdir)
693 mkdir -p $(win32_destdir)/lua
694 cp -r $(destdir)/lib/vlc/lua/* $(win32_destdir)/lua
695 cp -r $(destdir)/share/vlc/lua/* $(win32_destdir)/lua
699 cp -r $(destdir)/share/vlc/skins2 $(win32_destdir)/skins
702 cp -r $(destdir)/share/vlc/osdmenu "$(win32_destdir)/osdmenu"
703 for file in $(win32_destdir)/osdmenu/*.cfg; do \
704 sed 's%share/osdmenu%osdmenu%g' "$$file" > "$$file.tmp" || exit $$? ; \
705 sed 's%/%\\%g' "$$file.tmp" > "$$file" || exit$$? ; \
706 rm -f -- "$$file.tmp"; \
711 cp "$(top_builddir)/activex-vlc/src/axvlc.dll.manifest" "$(win32_destdir)/"
712 cp "$(top_builddir)/activex-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
713 cp "$(top_builddir)/npapi-vlc/src/npvlc.dll.manifest" "$(win32_destdir)/"
714 cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
719 mkdir -p "$(win32_destdir)/sdk/lib"
720 cp -r $(destdir)/include "$(win32_destdir)/sdk"
721 cp -r $(destdir)/lib/pkgconfig "$(win32_destdir)/sdk/lib"
722 for file in libvlc.dll.a libvlc.la libvlccore.dll.a libvlccore.la; do \
723 cp -rv $(destdir)/lib/$$file "$(win32_destdir)/sdk/lib"; done
726 mkdir -p "$(win32_destdir)/sdk/activex"
727 cp $(top_builddir)/activex-vlc/README $(win32_destdir)/sdk/activex/README.TXT
728 cp $(top_builddir)/activex-vlc/src/test.html $(win32_destdir)/sdk/activex/
732 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) {} \;
734 #Enable DEP and ASLR for all the binaries
736 find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -print -o -name '*$(EXEEXT)' -print \) -exec $(PEFLAGS) --dynamicbase=true --nxcompat=true {} \;
738 find $(win32_destdir)/plugins/ -type f \( -name '*.a' -or -name '*.la' \) -exec rm -rvf {} \;
740 package-win-base: package-win-common
741 find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -or -name '*$(EXEEXT)' \) | while read i; \
742 do if test -n "$$i" ; then \
743 $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \
744 $(OBJCOPY) --strip-all "$$i" ; \
745 $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \
746 mv "$$i.dbg" "$(win32_debugdir)"; \
750 package-win32-webplugin-common: package-win-base
751 mkdir -p "$(win32_xpi_destdir)/plugins"
752 find $(destdir) -maxdepth 4 -name "*$(LIBEXT)" -exec cp {} "$(win32_xpi_destdir)/" \;
754 cp $(top_builddir)/npapi-vlc/src/npvlc.dll.manifest "$(win32_xpi_destdir)/plugins"
756 cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_xpi_destdir)/plugins"
757 cp -r $(win32_destdir)/plugins/ "$(win32_xpi_destdir)/plugins"
758 rm -rf "$(win32_xpi_destdir)/plugins/plugins/*qt*"
759 rm -rf "$(win32_xpi_destdir)/plugins/plugins/*skins*"
761 package-win32-xpi: package-win32-webplugin-common
763 cp $(top_builddir)/npapi-vlc/src/install.rdf "$(win32_xpi_destdir)"
764 cd $(win32_xpi_destdir) && zip -r "../vlc-$(VERSION).xpi" install.rdf plugins
767 package-win32-crx: package-win32-webplugin-common
769 cp $(top_builddir)/npapi-vlc/src/manifest.json "$(win32_xpi_destdir)"
770 crxmake --pack-extension "$(win32_xpi_destdir)" \
771 --extension-output "$(win32_destdir)/vlc-$(VERSION).crx" --ignore-file install.rdf
774 package-win32-base-exe: package-win-base
776 cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/"
777 cp "$(top_builddir)/extras/package/win32/spad.nsi" "$(win32_destdir)/"
778 mkdir "$(win32_destdir)/languages"
779 cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/"
780 # Copy the UAC NSIS plugin
781 mkdir -p "$(win32_destdir)/NSIS"
782 cp "$(top_srcdir)/extras/package/win32/UAC.nsh" "$(win32_destdir)/NSIS"
783 cp "$(top_srcdir)/extras/package/win32/UAC.dll" "$(win32_destdir)/NSIS"
786 if makensis -VERSION >/dev/null 2>&1; then \
787 MAKENSIS="makensis"; \
788 elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
789 MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis"; \
790 elif [ -x "$(PROGRAMFILES)/NSIS/makensis" ]; then \
791 MAKENSIS="$(PROGRAMFILES)/NSIS/makensis"; \
792 elif wine --version >/dev/null 2>&1; then \
793 MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe"; \
795 echo 'Error: cannot locate makensis tool'; exit 1; \
797 eval "$$MAKENSIS $(win32_destdir)/spad.nsi"; \
798 eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
800 package-win32-base-zip: package-win-base
802 rm -f -- vlc-$(VERSION)-win32.zip
803 zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION)
805 package-win32-base-debug-zip: package-win-common
807 rm -f -- vlc-$(VERSION)-win32-debug.zip
808 zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION)
810 package-win32-base-7zip: package-win-base
812 7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION)
814 package-win32-base-debug-7zip: package-win-common
816 7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32-debug.7z vlc-$(VERSION)
818 package-win32-cleanup:
819 rm -Rf $(win32_destdir) $(win32_debugdir)
821 package-win32-exe: package-win-base package-win32-base-exe package-win32-cleanup
823 package-win32-zip: package-win32-base-zip package-win32-cleanup
825 package-win32-debug-zip: package-win32-base-debug-zip package-win32-cleanup
827 package-win32-7zip: package-win32-base-7zip package-win32-cleanup
829 package-win32-debug-7zip: package-win32-base-debug-7zip package-win32-cleanup
831 package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe package-win32-xpi
833 package-win32: package-win32-no-clean package-win32-cleanup
835 package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip package-win32-cleanup
841 package-wince-base: package-win-base
843 package-wince-base-zip: package-wince-base
845 rm -f -- vlc-$(VERSION)-wince.zip
846 zip -r -9 vlc-$(VERSION)-wince.zip vlc-$(VERSION)
848 package-wince: package-wince-base-zip package-win32-cleanup
851 #########################################################################
853 #########################################################################
854 package-macosx: VLC-release.app ChangeLog
855 # Check that the temporary location isn't in the way
856 @if test -e "$(top_builddir)/vlc-$(VERSION)/"; then \
857 rm -Rf "$(top_builddir)/vlc-$(VERSION)/" ; \
860 echo "Create package directory: vlc-$(VERSION)/";
861 mkdir -p "$(top_builddir)/vlc-$(VERSION)/";
863 # Copy relevant files
864 @if test -e "$(top_builddir)/VLC-release.app/"; then \
865 cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
867 cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-$(VERSION)/VLC.app"; \
869 mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
870 mkdir -p $(top_builddir)/vlc-$(VERSION)/.background/ && \
871 cp $(srcdir)/AUTHORS $(srcdir)/COPYING $(srcdir)/README $(srcdir)/THANKS $(srcdir)/NEWS $(top_builddir)/vlc-$(VERSION)/Goodies/ && \
872 cp -R $(srcdir)/extras/package/macosx/Delete_Preferences.app $(top_builddir)/vlc-$(VERSION)/Goodies/Delete\ VLC\ Preferences.app && \
873 cp $(srcdir)/extras/package/macosx/README.MacOSX.rtf $(top_builddir)/vlc-$(VERSION)/Read\ Me.rtf && \
874 cp $(srcdir)/extras/package/macosx/Resources/about_bg.png $(top_builddir)/vlc-$(VERSION)/.background/background.png
875 cp -L $(top_builddir)/ChangeLog $(top_builddir)/vlc-$(VERSION)/Goodies/
877 # Place a link to the application folder
878 $(LN_S) /Applications $(top_builddir)/vlc-$(VERSION)/Applications
880 # Create disk image (temporarily taken from the 0.8.6-bugfix branch to provide reliable NBs)
881 echo "Creating disk image"
882 rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
883 hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
884 "$(top_builddir)/vlc-$(VERSION).dmg" -scrub
885 echo "Disk image creation completed:"
886 ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
889 # echo "Creating disk image"
890 # rm -f "$(top_builddir)/vlc-$(VERSION).dmg"
891 # hdiutil create -verbose -srcfolder "$(top_builddir)/vlc-$(VERSION)" \
892 # "$(top_builddir)/vlc-$(VERSION).dmg" -format UDRW \
893 # -scrub -imagekey zlib-level=9 -attach
895 # Make sure the root window of the dmg will pop up when the dmg is mounted.
896 # Note: We dont mount in /Volumes to be sure we won't collide with an other
897 # finder mounted dmg with the same name.
898 # echo "Make sure the root window of the dmg will pop up when the dmg is mounted"
899 # mkdir -p $(top_builddir)/vlcmnt
900 # hdiutil attach -nokernel -readwrite -noverify -noautoopen -private "$(top_builddir)/vlc-$(VERSION).dmg" -mountpoint "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
901 # bless --folder "$(top_builddir)/vlcmnt/vlc-$(VERSION)/" --openfolder "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
902 # sleep 1 # Make sure operation completes
905 # Unmount the image now
906 # hdiutil detach "$(top_builddir)/vlcmnt/vlc-$(VERSION)"
907 # rm -R $(top_builddir)/vlcmnt
909 # Make sure the image is not writable
910 # Note: We can't directly create a read only dmg as we do the bless stuff
911 echo "Make the disk image read-only"
912 mv "$(top_builddir)/vlc-$(VERSION).dmg" "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
913 hdiutil convert "$(top_builddir)/vlc-$(VERSION)-rw.dmg" -format UDBZ -o "$(top_builddir)/vlc-$(VERSION).dmg"
914 rm "$(top_builddir)/vlc-$(VERSION)-rw.dmg"
917 echo "Disk image creation completed:"
918 ls -la "$(top_builddir)/vlc-$(VERSION).dmg" ; echo
921 rm -Rf "$(top_builddir)/vlc-$(VERSION)"
923 package-macosx-zip: VLC-release.app
924 rm -Rf $(top_builddir)/vlc-$(VERSION)
925 mkdir -p $(top_builddir)/vlc-$(VERSION)
926 cp -R $(top_builddir)/VLC-release.app $(top_builddir)/vlc-$(VERSION)/VLC.app
927 mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies
928 for i in AUTHORS COPYING ChangeLog README THANKS NEWS; do \
929 cp $(srcdir)/$$i $(top_builddir)/vlc-$(VERSION)/Goodies; \
931 cp -R $(srcdir)/extras/package/macosx/Delete_Preferences.app \
932 $(top_builddir)/vlc-$(VERSION)/Goodies
933 cp $(srcdir)/extras/package/macosx/README.MacOSX.rtf \
934 $(top_builddir)/vlc-$(VERSION)/Read\ Me.rtf
935 zip -r -y -9 $(top_builddir)/vlc-$(VERSION).zip $(top_builddir)/vlc-$(VERSION)
936 rm -Rf $(top_builddir)/vlc-$(VERSION)
938 package-macosx-framework-zip:
939 rm -Rf $(top_builddir)/vlckit-$(VERSION)
940 mkdir -p $(top_builddir)/vlckit-$(VERSION)
941 cp -R $(srcdir)/projects/macosx/framework/build/Debug/VLCKit.framework \
942 $(top_builddir)/vlckit-$(VERSION)/VLCKit.framework
943 mkdir -p $(top_builddir)/vlc-$(VERSION)/Goodies
944 for i in AUTHORS COPYING ChangeLog README THANKS NEWS; do \
945 cp $(srcdir)/$$i $(top_builddir)/vlckit-$(VERSION)/Goodies; \
947 zip -r -y -9 $(top_builddir)/vlckit-$(VERSION).zip $(top_builddir)/vlckit-$(VERSION)
948 rm -Rf $(top_builddir)/vlc-$(VERSION)
950 package-translations:
951 @if test -e "$(srcdir)/vlc-translations-$(VERSION)"; then \
952 echo "Error: please remove $(srcdir)/vlc-translations-$(VERSION), it is in the way"; \
955 echo "OK."; mkdir -p "$(srcdir)/vlc-translations-$(VERSION)"; \
958 cat $(top_srcdir)/po/LINGUAS | while read i; do \
959 cp "$(srcdir)/po/$${i}.po" \
960 "$(srcdir)/vlc-translations-$(VERSION)/$${i}.po" \
963 cp "$(srcdir)/doc/translations.txt" \
964 "$(srcdir)/vlc-translations-$(VERSION)/README.txt"
966 echo "#!/bin/sh" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
967 echo "" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
968 echo 'if test $$# != 1; then' >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
969 echo " echo \"Usage: convert-po.sh <.po file>\"" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
970 echo " exit 1" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
971 echo "fi" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
972 echo "" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
973 echo 'msgfmt --statistics -o vlc.mo $$1' >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
975 $(AMTAR) chof - $(srcdir)/vlc-translations-$(VERSION) \
976 | GZIP=$(GZIP_ENV) gzip -c >$(srcdir)/vlc-translations-$(VERSION).tar.gz
978 ###############################################################################
979 # PO translation files update
980 ###############################################################################
984 cd po && $(MAKE) POTFILES vlc.pot update-po
987 ###############################################################################
988 # Enforce Mac OS X deployment target environment variable
989 ###############################################################################
990 macosx-sdk: Makefile.in $(HEADERS_include) vlc-config
991 export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_DEPLOYMENT_TARGET)