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

5 6
NULL =

7 8 9
# 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.
10 11 12 13
#  - intl should come before modules and . because all the code uses gettext
#  - modules should come before . because vlc needs the builtins
#  - . should come before mozilla because the plugin needs libvlc_pic.a
#  - po should come before . because VLC.app needs the pofiles
14
SUBDIRS = intl modules po . mozilla activex share m4 doc
15
DIST_SUBDIRS = $(SUBDIRS) src debian ipkg lib
16

17 18 19
EXTRA_DIST = \
	HACKING \
	INSTALL.win32 \
20
	vlc.exe.manifest \
21 22 23 24 25
	MAINTAINERS \
	README.MacOSX.rtf \
	bootstrap \
	src/extras/COPYING \
	toolbox \
26
	vlc-api.pl \
Sam Hocevar's avatar
Sam Hocevar committed
27
	vlc-config.in.in \
28
	vlc.spec \
29
	vlc.spec.mdk \
30
	vlc.win32.nsi \
31 32
	$(NULL)

33 34 35 36 37 38
BUILT_SOURCES =
SUFFIXES = 

# Tell aclocal to use -I m4. Wonder if it really works.
ACLOCAL_AMFLAGS = -I m4

39
# XXX: these flags could be set in configure.ac, but we set them here
40
# because old versions of automake don't support them in configure.ac.
41
AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects
42

43 44 45 46 47
###############################################################################
# Headers
###############################################################################

BUILT_SOURCES += \
48
	stamp-api \
49
	src/misc/modules_builtin.h \
50
	$(NULL)
51 52 53 54 55 56 57 58 59 60

pkgincludedir = $(includedir)/vlc

dist_pkginclude_HEADERS = \
	include/vlc/vlc.h \
	include/vlc/aout.h \
	include/vlc/vout.h \
	include/vlc/sout.h \
	include/vlc/decoder.h \
	include/vlc/input.h \
61
	include/vlc/intf.h \
62
	include/vlc/control.h \
63
	$(NULL)
64

65
noinst_HEADERS = $(HEADERS_include)
66 67 68 69 70

HEADERS_include = \
	include/aout_internal.h \
	include/audio_output.h \
	include/beos_specific.h \
71
	include/charset.h \
72
	include/codecs.h \
73 74
	include/configuration.h \
	include/darwin_specific.h \
75 76 77 78 79 80 81 82
	include/intf_eject.h \
	include/iso_lang.h \
	include/main.h \
	include/mmx.h \
	include/modules.h \
	include/modules_inner.h \
	include/mtime.h \
	include/network.h \
83
	include/osd.h \
84
	include/os_specific.h \
85
	include/snapshot.h \
86
	include/stream_output.h \
Sam Hocevar's avatar
Sam Hocevar committed
87
	include/variables.h \
88
	include/video_output.h \
89
	include/vlc_access.h \
90
	include/vlc_bits.h \
91
	include/vlc_block.h \
Gildas Bazin's avatar
 
Gildas Bazin committed
92
	include/vlc_block_helper.h \
Gildas Bazin's avatar
 
Gildas Bazin committed
93
	include/vlc_codec.h \
94 95 96
	include/vlc_common.h \
	include/vlc_config.h \
	include/vlc_cpu.h \
97
	include/vlc_demux.h \
98
	include/vlc_error.h \
99
	include/vlc_es.h \
100
	include/vlc_es_out.h \
101
	include/vlc_filter.h \
102
	include/vlc_config_cat.h \
103
	include/vlc_httpd.h \
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
104
	include/vlc_tls.h \
105
	include/vlc_md5.h \
106
	include/vlc_image.h \
107
	include/vlc_input.h \
108
	include/vlc_interface.h \
Gildas Bazin's avatar
 
Gildas Bazin committed
109
	include/vlc_keys.h \
110
	include/vlc_messages.h \
Gildas Bazin's avatar
 
Gildas Bazin committed
111
	include/vlc_meta.h \
112 113
	include/vlc_objects.h \
	include/vlc_playlist.h \
114
	include/vlc_spu.h \
115
	include/vlc_stream.h \
116
	include/vlc_symbols.h \
117
	include/vlc_threads_funcs.h \
118
	include/vlc_threads.h \
119
	include/vlc_video.h \
120
	include/vlc_vlm.h \
121
	include/vlc_vod.h \
Gildas Bazin's avatar
Gildas Bazin committed
122
	include/vlc_xml.h \
123
	include/vout_synchro.h \
124 125
	include/win32_specific.h \
	$(NULL)
126

127
src/misc/modules_builtin.h: Makefile src/misc/modules_builtin.h.in vlc-config
Sam Hocevar's avatar
Sam Hocevar committed
128
	srcdir=$(srcdir) $(srcdir)/toolbox --update-includes
129
	touch $@
130

131
# These dependencies are mandatory
132
$(SOURCES_libvlc): src/misc/modules_builtin.h $(LIB_intl)
133

134 135 136 137 138
###############################################################################
# Optional libintl - FIXME, bad dependencies
###############################################################################

intl/libintl.a: FORCE
Sam Hocevar's avatar
Sam Hocevar committed
139
	cd $(top_builddir)/intl && $(MAKE) $(AM_MAKEFLAGS)
140 141 142 143 144

if BUILD_INTL
LIB_intl = intl/libintl.a
endif

145 146 147 148 149 150 151 152
###############################################################################
# MacOS X project
###############################################################################

EXTRA_DIST += \
	extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib \
	extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib \
153 154
	extras/MacOSX/Resources/English.lproj/About.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/About.nib/info.nib \
155
	extras/MacOSX/Resources/English.lproj/About.nib/keyedobjects.nib \
156 157
	extras/MacOSX/Resources/English.lproj/Open.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/Open.nib/info.nib \
158
	extras/MacOSX/Resources/English.lproj/Open.nib/keyedobjects.nib \
159 160
	extras/MacOSX/Resources/English.lproj/Preferences.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/Preferences.nib/info.nib \
161
	extras/MacOSX/Resources/English.lproj/Preferences.nib/keyedobjects.nib \
162 163 164
	extras/MacOSX/Resources/English.lproj/Wizard.nib/classes.nib \
	extras/MacOSX/Resources/English.lproj/Wizard.nib/info.nib \
	extras/MacOSX/Resources/English.lproj/Wizard.nib/keyedobjects.nib \
165
	extras/MacOSX/Resources/English.lproj/InfoPlist.strings \
166 167 168 169 170 171 172 173
	extras/MacOSX/Resources/a52.icns \
	extras/MacOSX/Resources/aac.icns \
	extras/MacOSX/Resources/asf.icns \
	extras/MacOSX/Resources/asx.icns \
	extras/MacOSX/Resources/avi.icns \
	extras/MacOSX/Resources/bin.icns \
	extras/MacOSX/Resources/cue.icns \
	extras/MacOSX/Resources/dat.icns \
174
	extras/MacOSX/Resources/divx.icns \
175
	extras/MacOSX/Resources/dv.icns \
176
	extras/MacOSX/Resources/generic.icns \
177 178 179 180
	extras/MacOSX/Resources/m3u.icns \
	extras/MacOSX/Resources/mov.icns \
	extras/MacOSX/Resources/mp3.icns \
	extras/MacOSX/Resources/mp4.icns \
181 182 183 184
	extras/MacOSX/Resources/mpeg.icns \
	extras/MacOSX/Resources/mpeg1.icns \
	extras/MacOSX/Resources/mpeg2.icns \
	extras/MacOSX/Resources/mpeg4.icns \
185 186 187 188 189 190
	extras/MacOSX/Resources/mpg.icns \
	extras/MacOSX/Resources/ogg.icns \
	extras/MacOSX/Resources/ogm.icns \
	extras/MacOSX/Resources/pls.icns \
	extras/MacOSX/Resources/srt.icns \
	extras/MacOSX/Resources/sub.icns \
191
	extras/MacOSX/Resources/vlc.icns \
192 193 194
	extras/MacOSX/Resources/vob.icns \
	extras/MacOSX/Resources/wma.icns \
	extras/MacOSX/Resources/wmv.icns \
195
	extras/MacOSX/Resources/pause.png \
196
	extras/MacOSX/Resources/pause_blue.png \
197
	extras/MacOSX/Resources/play.png \
198
	extras/MacOSX/Resources/play_blue.png \
199
	extras/MacOSX/Resources/stop.png \
200 201 202 203
	extras/MacOSX/Resources/stop_blue.png \
	extras/MacOSX/Resources/display.png \
	extras/MacOSX/Resources/display_slider.png \
	extras/MacOSX/Resources/display_track.png \
204 205
	extras/MacOSX/Resources/equalizerdrawer_active.png \
	extras/MacOSX/Resources/equalizerdrawer_blue.png \
206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222
	extras/MacOSX/Resources/fullscreen_active.png \
	extras/MacOSX/Resources/fullscreen_blue.png \
	extras/MacOSX/Resources/next_active.png \
	extras/MacOSX/Resources/next_blue.png \
	extras/MacOSX/Resources/playlistdrawer_active.png \
	extras/MacOSX/Resources/playlistdrawer_blue.png \
	extras/MacOSX/Resources/previous_active.png \
	extras/MacOSX/Resources/previous_blue.png \
	extras/MacOSX/Resources/skip_forward_active.png \
	extras/MacOSX/Resources/skip_forward_blue.png \
	extras/MacOSX/Resources/skip_previous_active.png \
	extras/MacOSX/Resources/skip_previous_blue.png \
	extras/MacOSX/Resources/volume_high.png \
	extras/MacOSX/Resources/volume_low.png \
	extras/MacOSX/Resources/volumeslider_blue.png \
	extras/MacOSX/Resources/volumeslider_normal.png \
	extras/MacOSX/Resources/volumetrack.png \
223
	extras/MacOSX/Resources/about_bg.png \
224
	extras/MacOSX/Resources/vlc.scriptSuite \
225
	extras/MacOSX/Resources/vlc.scriptTerminology \
226
	extras/MacOSX/Resources/README \
227
	extras/MacOSX/vlc.pbproj/project.pbxproj \
228
	extras/MacOSX/macosx-dmg \
229 230 231
	$(NULL)

###############################################################################
232
# MS Visual Studio and eMbedded Visual Studio projects
233 234 235 236
###############################################################################

EXTRA_DIST += \
	msvc/vlc.dsw \
237 238
	msvc/libvlc.dsp.in \
	msvc/plugins.dsp.in \
239
	msvc/vlc.dsp.in \
240
	msvc/config.h.in \
241
	msvc/modules_builtin_msvc.h \
242
	evc/vlc.vcw \
243
	evc/libvlc.vcp.in \
244
	evc/vlc.vcp.in \
245
	evc/plugins.vcp.in \
246
	evc/errno.h \
247
	evc/config.h.in \
248
	evc/modules_builtin_evc.h \
249 250
	$(NULL)

Gildas Bazin's avatar
 
Gildas Bazin committed
251
dist-hook:
Sam Hocevar's avatar
Sam Hocevar committed
252
	cd $(distdir) && srcdir=$(srcdir) $(srcdir)/toolbox --update-vc
253
	distdir=$(distdir) srcdir=$(srcdir) $(srcdir)/toolbox --dist-contrib
Gildas Bazin's avatar
 
Gildas Bazin committed
254

255 256 257 258 259
###############################################################################
# Building libvlc
###############################################################################

bin_SCRIPTS = vlc-config
260 261 262
vlc-config: $(top_builddir)/config.status $(top_builddir)/vlc-config.in
	cd $(top_builddir) && $(SHELL) ./config.status --file=$@
	-cd $(top_builddir) && chmod 0755 $@
263

264 265 266 267
$(SOURCES): vlc-config

CLEANFILES = $(BUILT_SOURCES)

Sam Hocevar's avatar
Sam Hocevar committed
268
lib_LIBRARIES = lib/libvlc.a $(LIBRARIES_libvlc_pic)
269 270

lib_libvlc_a_SOURCES = $(SOURCES_libvlc)
Sam Hocevar's avatar
Sam Hocevar committed
271 272 273
lib_libvlc_a_CFLAGS = `$(VLC_CONFIG) --cflags vlc`
lib_libvlc_a_CXXFLAGS = `$(VLC_CONFIG) --cxxflags vlc`
lib_libvlc_a_OBJCFLAGS = `$(VLC_CONFIG) --objcflags vlc`
274 275

lib_libvlc_pic_a_SOURCES = $(SOURCES_libvlc)
Sam Hocevar's avatar
Sam Hocevar committed
276 277 278
lib_libvlc_pic_a_CFLAGS = `$(VLC_CONFIG) --cflags vlc pic`
lib_libvlc_pic_a_CXXFLAGS = `$(VLC_CONFIG) --cxxflags vlc pic`
lib_libvlc_pic_a_OBJCFLAGS = `$(VLC_CONFIG) --objcflags vlc pic`
279 280

if HAVE_BEOS
281
OPT_SOURCES_libvlc_beos = $(SOURCES_libvlc_beos)
282 283
endif
if HAVE_DARWIN
284
OPT_SOURCES_libvlc_darwin = $(SOURCES_libvlc_darwin)
285 286
endif
if HAVE_WIN32
287
OPT_SOURCES_libvlc_win32 = $(SOURCES_libvlc_win32)
288
endif
289 290 291
if HAVE_WINCE
OPT_SOURCES_libvlc_win32 = $(SOURCES_libvlc_win32)
endif
292
if BUILD_DIRENT
293
OPT_SOURCES_libvlc_dirent = $(SOURCES_libvlc_dirent)
294 295
endif
if BUILD_GETOPT
296
OPT_SOURCES_libvlc_getopt = $(SOURCES_libvlc_getopt)
297
endif
298
if BUILD_MOZILLA
299
if !HAVE_WIN32
300 301
LIBRARIES_libvlc_pic = lib/libvlc_pic.a
endif
302
endif
303 304

EXTRA_DIST += \
305 306 307 308 309
	$(SOURCES_libvlc_beos) \
	$(SOURCES_libvlc_darwin) \
	$(SOURCES_libvlc_win32) \
	$(SOURCES_libvlc_dirent) \
	$(SOURCES_libvlc_getopt) \
310 311
	$(NULL)

312
SOURCES_libvlc_beos = \
313
	src/misc/beos_specific.cpp \
314 315
	$(NULL)

316
SOURCES_libvlc_darwin = \
317
	src/misc/darwin_specific.m \
318 319
	$(NULL)

320
SOURCES_libvlc_win32 = \
321 322 323
	src/misc/win32_specific.c \
	$(NULL)

324
SOURCES_libvlc_dirent = \
325 326 327
	src/extras/dirent.c \
	$(NULL)

328
SOURCES_libvlc_getopt = \
329 330 331 332 333
	src/extras/getopt.c \
	src/extras/getopt.h \
	src/extras/getopt1.c \
	$(NULL)

334
SOURCES_libvlc_common = \
335 336 337 338 339
	src/libvlc.c \
	src/libvlc.h \
	src/interface/interface.c \
	src/interface/intf_eject.c \
	src/playlist/playlist.c \
340 341
	src/playlist/sort.c \
	src/playlist/loadsave.c \
Clément Stenac's avatar
Fixes  
Clément Stenac committed
342
	src/playlist/view.c \
343
	src/playlist/item.c \
344
	src/playlist/item-ext.c \
345
	src/playlist/services_discovery.c \
Laurent Aimar's avatar
Laurent Aimar committed
346 347
	src/input/access.c \
	src/input/clock.c \
Gildas Bazin's avatar
Gildas Bazin committed
348
	src/input/control.c \
Laurent Aimar's avatar
Laurent Aimar committed
349 350
	src/input/decoder.c \
	src/input/demux.c \
351
	src/input/es_out.c \
Laurent Aimar's avatar
Laurent Aimar committed
352 353
	src/input/input.c \
	src/input/input_internal.h \
354
	src/input/stream.c \
355
	src/input/mem_stream.c \
356
	src/input/subtitles.c \
Laurent Aimar's avatar
Laurent Aimar committed
357
	src/input/var.c \
358 359 360 361
	src/video_output/video_output.c \
	src/video_output/vout_pictures.c \
	src/video_output/vout_pictures.h \
	src/video_output/video_text.c \
362
	src/video_output/video_widgets.c \
363
	src/video_output/vout_subpictures.c \
364
	src/video_output/vout_synchro.c \
Gildas Bazin's avatar
Gildas Bazin committed
365
	src/video_output/vout_intf.c \
366 367 368 369 370 371 372 373
	src/audio_output/common.c \
	src/audio_output/dec.c \
	src/audio_output/filters.c \
	src/audio_output/input.c \
	src/audio_output/mixer.c \
	src/audio_output/output.c \
	src/audio_output/intf.c \
	src/stream_output/stream_output.c \
374 375
	src/stream_output/announce.c \
	src/stream_output/sap.c \
376
	src/misc/charset.c \
Laurent Aimar's avatar
Laurent Aimar committed
377
	src/misc/httpd.c \
378
	src/misc/tls.c \
379
	src/misc/md5.c \
380
	src/misc/mtime.c \
381
	src/misc/block.c \
382 383 384 385
	src/misc/modules.c \
	src/misc/threads.c \
	src/misc/cpu.c \
	src/misc/configuration.c \
386
	src/misc/image.c \
387
	src/misc/iso_lang.c \
388
	src/misc/iso-639_def.h \
389 390
	src/misc/messages.c \
	src/misc/objects.c \
Sam Hocevar's avatar
Sam Hocevar committed
391
	src/misc/variables.c \
392
	src/misc/error.c \
Laurent Aimar's avatar
 
Laurent Aimar committed
393
	src/misc/net.c \
394
	src/misc/getaddrinfo.c \
395
	src/misc/vlm.c \
Gildas Bazin's avatar
Gildas Bazin committed
396
	src/misc/xml.c \
397
	src/extras/libc.c \
398 399 400
	src/control/core.c \
	src/control/util.c \
	src/control/audio_video.c \
401 402 403 404 405 406 407 408 409
	$(NULL)

SOURCES_libvlc = \
	$(SOURCES_libvlc_common) \
	$(OPT_SOURCES_libvlc_beos) \
	$(OPT_SOURCES_libvlc_darwin) \
	$(OPT_SOURCES_libvlc_win32) \
	$(OPT_SOURCES_libvlc_dirent) \
	$(OPT_SOURCES_libvlc_getopt) \
410
	$(NULL)
411 412 413 414 415

###############################################################################
# Building vlc
###############################################################################

Sam Hocevar's avatar
Sam Hocevar committed
416
bin_PROGRAMS = vlc
417

418
vlc_SOURCES = src/vlc.c
419

420 421
# Work around a bug in the arm-wince-pe linker
if HAVE_WINCE
422
vlc_WORKAROUNDLDFLAGS = lib/libvlc.a
423 424
endif

425 426 427 428
vlc_LDFLAGS = `$(VLC_CONFIG) --libs vlc builtin` $(vlc_WORKAROUNDLDFLAGS)
vlc_LDADD = lib/libvlc.a $(DATA_win32_rc) $(LIB_intl)
vlc_CFLAGS = `$(VLC_CONFIG) --cflags vlc`

429 430
# We use DEPENDENCIES_vlc instead of vlc_DEPENDENCIES because of an
# old automake-1.5 bug (automake/279).
Sam Hocevar's avatar
Sam Hocevar committed
431
DEPENDENCIES_vlc = lib/libvlc.a $(DATA_win32_rc) $(LIB_intl)
432

Sam Hocevar's avatar
Sam Hocevar committed
433 434
vlc$(EXEEXT): $(vlc_OBJECTS) $(DEPENDENCIES_vlc) stamp-builtin
	@rm -f $(top_builddir)/vlc$(EXEEXT)
435 436 437 438
	@case `$(VLC_CONFIG) --linkage vlc builtin` in \
	  c++) echo $(CXXLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ; $(CXXLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ;; \
	  objc) echo $(OBJCLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ; $(OBJCLINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ;; \
	  c|*) echo $(LINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ; $(LINK) $(vlc_OBJECTS) $(vlc_LDADD) $(vlc_LDFLAGS) $(LIBS) ;; \
Sam Hocevar's avatar
Sam Hocevar committed
439
	esac
Eric Petit's avatar
Eric Petit committed
440

441
if HAVE_BEOS
442
noinst_DATA = vlc-bundle
443
vlc-bundle: vlc
Sam Hocevar's avatar
Sam Hocevar committed
444 445 446
	rm -Rf $(top_builddir)/vlc-bundle ; mkdir -p $(top_builddir)/vlc-bundle
	cp $(top_builddir)/vlc $(top_builddir)/vlc-bundle/
	xres -o $(top_builddir)/vlc-bundle/vlc $(srcdir)/share/vlc_beos.rsrc
447 448
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
449 450
	    mkdir -p $(top_builddir)/vlc-bundle/plugins ; \
	    cp "$$i$(LIBEXT)" $(top_builddir)/vlc-bundle/plugins/ ; \
451 452
	  fi ; \
	done
Sam Hocevar's avatar
Sam Hocevar committed
453 454 455 456
	if test -d $(top_builddir)/extras/contrib/vlc-lib ; then \
	  mkdir -p $(top_builddir)/vlc-bundle/lib ; \
	  for i in $(top_builddir)/extras/contrib/vlc-lib/*.so ; do \
	    cp $$i $(top_builddir)/vlc-bundle/lib/ ; \
457 458
	  done ; \
	fi
Eric Petit's avatar
Eric Petit committed
459
	for i in $(ALL_LINGUAS); do \
Sam Hocevar's avatar
Sam Hocevar committed
460 461 462
	  mkdir -p "$(top_builddir)/vlc-bundle/locale/$$i/LC_MESSAGES" ; \
	  cp "$(top_builddir)/po/$$i.gmo" \
	    "$(top_builddir)/vlc-bundle/locale/$$i/LC_MESSAGES/vlc.mo" || true ; \
Eric Petit's avatar
Eric Petit committed
463
	done
Sam Hocevar's avatar
Sam Hocevar committed
464
	find $(top_builddir)/vlc-bundle -type f -exec mimeset -f "{}" \;
465 466
endif

Sam Hocevar's avatar
Sam Hocevar committed
467
# Install the modules and the symlinks
468
install-exec-local:
Sam Hocevar's avatar
Sam Hocevar committed
469
	for i in "" `$(VLC_CONFIG) --target plugin` ; do if test -n "$$i" ; then \
470 471
	  echo $(INSTALL) -m 755 "$$i$(LIBEXT)" "$(DESTDIR)$(libdir)/vlc/`echo $$i | sed -e 's,.*modules/\([^/]*\).*,\1,'`" ; \
	  $(INSTALL) -m 755 "$$i$(LIBEXT)" "$(DESTDIR)$(libdir)/vlc/`echo $$i | sed -e 's,.*modules/\([^/]*\).*,\1,'`" ; \
Sam Hocevar's avatar
Sam Hocevar committed
472
	fi ; done
473
	for i in "" `$(VLC_CONFIG) --target builtin` ; do if test -n "$$i" ; then \
474
	  echo $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
475
	  $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
Sam Hocevar's avatar
Sam Hocevar committed
476
	fi ; done
477 478 479 480 481 482
if BUILD_MOZILLA
	for i in "" `$(VLC_CONFIG) --target builtin pic` ; do if test -n "$$i" ; then \
	  echo $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
	  $(INSTALL) -m 644 "$$i" "$(DESTDIR)$(libdir)/vlc" ; \
	fi ; done
endif
Sam Hocevar's avatar
Sam Hocevar committed
483
	for i in "" $(ALIASES) ; do if test -n "$$i" ; then \
Sam Hocevar's avatar
Sam Hocevar committed
484 485
	  rm -f "$(DESTDIR)$(bindir)/$$i" && \
	  ln -s vlc "$(DESTDIR)$(bindir)/$$i" ; \
486 487
	fi ; done

488 489
# the opposite of install-{data,exec}-local
uninstall-local:
490 491 492 493 494 495 496 497 498 499 500 501 502 503
	@for i in "" `$(VLC_CONFIG) --target plugin` ; do if test -n "$$i" ; then \
	  echo rm -f "$(DESTDIR)$(libdir)/vlc/`echo $$i | sed -e 's,.*modules/\([^/]*\).*,\1,'`/$$(basename $$i$(LIBEXT))" ; \
	  rm -f "$(DESTDIR)$(libdir)/vlc/`echo $$i | sed -e 's,.*modules/\([^/]*\).*,\1,'`/$$(basename $$i$(LIBEXT))" ; \
	fi ; done
	@for i in "" `$(VLC_CONFIG) --target builtin` ; do if test -n "$$i" ; then \
	  echo rm -f "$(DESTDIR)$(libdir)/vlc/$$(basename $$i)" ; \
	  rm -f "$(DESTDIR)$(libdir)/vlc/$$(basename $$i)" ; \
	fi ; done
if BUILD_MOZILLA
	@for i in "" `$(VLC_CONFIG) --target builtin pic` ; do if test -n "$$i" ; then \
	  echo rm -f "$$i" "$(DESTDIR)$(libdir)/vlc/$$(basename $$i)" ; \
	  rm -f "$$i" "$(DESTDIR)$(libdir)/vlc/$$(basename $$i)" ; \
	fi ; done
endif
504 505 506 507
	for i in "" $(ALIASES) ; do if test -n "$$i" ; then \
	  rm -f "$(DESTDIR)$(bindir)/$$i" ; \
	fi ; done

508 509
if HAVE_DARWIN
# Create the MacOS X app
510
vlc_app_DATA = VLC.app
511
vlc_appdir = $(bindir)
512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557
# VLC-release.app is the old VLC.app target
VLC-release.app: vlc
	@if test -e "$(top_builddir)/tmp"; then \
	  echo "Error: please remove $(top_builddir)/tmp, it is in the way"; \
	  false; \
	else \
	  echo "OK."; mkdir -p "$(top_builddir)/tmp/extras"; \
	fi
	rm -Rf $(top_builddir)/VLC-release.app
	cp -r $(srcdir)/extras/MacOSX $(top_builddir)/tmp/extras
	for i in AUTHORS COPYING README.MacOSX.rtf THANKS; do \
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	cp $(srcdir)/modules/audio_output/coreaudio.c \
	   $(top_builddir)/tmp/modules/audio_output/coreaudio.c
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
	    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 \
	    vout.h \
	    voutqt.m \
	    voutgl.m \
558 559
	    wizard.h \
	    wizard.m \
560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
	cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)'
	cp -r $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
	      $(top_builddir)/VLC-release.app
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
	$(INSTALL) $(top_builddir)/vlc \
		   $(top_builddir)/VLC-release.app/Contents/MacOS/VLC
	ln -sf ./VLC $(top_builddir)/VLC-release.app/Contents/MacOS/clivlc
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/modules
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
	  if test -n "$$i" ; \
	    then $(INSTALL) "$$i$(LIBEXT)" \
			   "$(top_builddir)/VLC-release.app/Contents/MacOS/modules" ; \
	  fi ; done
	if test -d $(top_builddir)/extras/contrib/vlc-lib; then \
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/MacOS/lib ; \
	  for i in $(top_builddir)/extras/contrib/vlc-lib/*.dylib ; do \
	    $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/lib/vlc_`basename $${i}` ; \
	  done ; \
	fi
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http
	for i in $(srcdir)/share/http/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/`basename $${i}` ; \
	done ; \
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/vlm
	for i in $(srcdir)/share/http/vlm/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/vlm/`basename $${i}` ; \
	done ; \
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/admin
	for i in $(srcdir)/share/http/admin/* ; do \
	  $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/admin/`basename $${i}` ; \
	done ; \
	$(INSTALL) -m 644 $(srcdir)/share/http/admin/.access $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/admin/.access
	$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/locale
	for i in $(ALL_LINGUAS); do \
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
	  cp $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
	  mkdir -p $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/InfoPlist.strings \
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/MainMenu.nib \
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/vlc.scriptTerminology \
	      $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
	done
	printf "APPLVLC#" >| $(top_builddir)/VLC-release.app/Contents/PkgInfo

Sam Hocevar's avatar
Sam Hocevar committed
612
VLC.app: vlc
Loïc Minier's avatar
Loïc Minier committed
613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634
	@if test -e "$(top_builddir)/tmp"; then \
	  echo "Error: please remove $(top_builddir)/tmp, it is in the way"; \
	  false; \
	else \
	  echo "OK."; mkdir -p "$(top_builddir)/tmp/extras"; \
	fi
	rm -Rf $(top_builddir)/VLC.app
	cp -r $(srcdir)/extras/MacOSX $(top_builddir)/tmp/extras
	for i in AUTHORS COPYING README.MacOSX.rtf THANKS; do \
	  cp "$(srcdir)/$$i" $(top_builddir)/tmp; \
	done
	mkdir -p $(top_builddir)/tmp/modules/audio_output
	cp $(srcdir)/modules/audio_output/coreaudio.c \
	   $(top_builddir)/tmp/modules/audio_output/coreaudio.c
	mkdir -p $(top_builddir)/tmp/modules/gui/macosx
	for i in \
	    about.h \
	    about.m \
	    applescript.h \
	    applescript.m \
	    controls.h \
	    controls.m \
635 636
	    equalizer.h \
	    equalizer.m \
Loïc Minier's avatar
Loïc Minier committed
637 638 639 640 641 642 643 644 645 646 647
	    intf.h \
	    intf.m \
	    macosx.m \
	    misc.h \
	    misc.m \
	    open.h \
	    open.m \
	    output.h \
	    output.m \
	    playlist.h \
	    playlist.m \
648 649
	    playlistinfo.h \
	    playlistinfo.m \
650 651
	    prefs_widgets.h \
	    prefs_widgets.m \
Loïc Minier's avatar
Loïc Minier committed
652 653 654
	    prefs.h \
	    prefs.m \
	    vout.h \
655 656
	    voutqt.m \
	    voutgl.m \
657 658
	    wizard.h \
	    wizard.m \
Loïc Minier's avatar
Loïc Minier committed
659 660 661 662
	    vout.m; do \
	  cp "$(srcdir)/modules/gui/macosx/$$i" \
             $(top_builddir)/tmp/modules/gui/macosx; \
	done
663
	cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)'
664
	cp -r $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
Loïc Minier's avatar
Loïc Minier committed
665 666 667 668 669
	      $(top_builddir)/VLC.app
	rm -Rf $(top_builddir)/tmp
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS
	$(INSTALL) $(top_builddir)/vlc \
		   $(top_builddir)/VLC.app/Contents/MacOS/VLC
Derk-Jan Hartman's avatar
Derk-Jan Hartman committed
670
	ln -sf ./VLC $(top_builddir)/VLC.app/Contents/MacOS/clivlc
Loïc Minier's avatar
Loïc Minier committed
671
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/modules
Sam Hocevar's avatar
Sam Hocevar committed
672
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
Loïc Minier's avatar
Loïc Minier committed
673
	  if test -n "$$i" ; \
674
	    then ln -sfn "`pwd`/$$i$(LIBEXT)" \
Loïc Minier's avatar
Loïc Minier committed
675
			   "$(top_builddir)/VLC.app/Contents/MacOS/modules" ; \
Sam Hocevar's avatar
Sam Hocevar committed
676
	  fi ; done
677
	if test -d $(top_builddir)/extras/contrib/vlc-lib; then \
678 679
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/lib ; \
	  for i in $(top_builddir)/extras/contrib/vlc-lib/*.dylib ; do \
680
	    ln -sfn `pwd`/$${i} $(top_builddir)/VLC.app/Contents/MacOS/lib/vlc_`basename $${i}` ; \
681
	  done ; \
682
	fi
683
	ln -sfn `pwd`/share $(top_builddir)/VLC.app/Contents/MacOS/
Loïc Minier's avatar
Loïc Minier committed
684
	$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/locale
685
	for i in $(ALL_LINGUAS); do \
Loïc Minier's avatar
Loïc Minier committed
686
	  mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
687
	  ln -sfn `pwd`/po/$${i}.gmo $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
Loïc Minier's avatar
Loïc Minier committed
688 689 690 691 692
	  mkdir -p $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/InfoPlist.strings \
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
	  ln -sf ../English.lproj/MainMenu.nib \
	      $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
693
	done
Loïc Minier's avatar
Loïc Minier committed
694
	printf "APPLVLC#" >| $(top_builddir)/VLC.app/Contents/PkgInfo
695 696 697
endif

if HAVE_WIN32
698
DATA_win32_rc = $(noinst_share_vlc_win32_rc_DATA)
699 700 701
noinst_share_vlc_win32_rc_DATA = share/vlc_win32_rc.$(OBJEXT)
noinst_share_vlc_win32_rcdir = $(libdir)
share/vlc_win32_rc.$(OBJEXT): share/vlc_win32_rc.rc
702
	$(WINDRES) -DVERSION=$(VERSION) -DVERSION_NUMBER=`echo $(VERSION).0.0.0 | sed 's/\([0-9]*\)[^.]*\.*\([0-9]*\)[^.]*\.*\([0-9]*\)[^.]*\.*\([0-9]*\).*/\1,\2,\3,\4/'` --include-dir $(srcdir)/share -i $< -o $@
703 704
endif

705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722
###############################################################################
# Building specific source packages
###############################################################################

dist-woody: distdir
	$(remove_distdir_woody)
	mv $(distdir) $(PACKAGE)-woody-$(VERSION)
	$(srcdir)/toolbox --make-woody $(PACKAGE)-woody-$(VERSION)
	$(AMTAR) chof - $(PACKAGE)-woody-$(VERSION) \
	  | GZIP=$(GZIP_ENV) gzip -c >$(PACKAGE)-woody-$(VERSION).tar.gz
	$(remove_distdir_woody)

remove_distdir_woody = \
  { test ! -d $(PACKAGE)-woody-$(VERSION) \
    || { find $(PACKAGE)-woody-$(VERSION) -type d ! -perm -200 \
           -exec chmod u+w {} ';' \
         && rm -fr $(PACKAGE)-woody-$(VERSION); }; }

723 724 725 726 727 728 729
###############################################################################
# Building architecture-specific binary packages
###############################################################################

# XXX: this rule is probably only useful to you if you have exactly
# the same setup as me. Contact sam@zoy.org if you need to use it.
#
Gildas Bazin's avatar
 
Gildas Bazin committed
730
package-win32-base:
731
# Check that tmp isn't in the way
732 733
	@if test -e "$(top_builddir)/vlc-${VERSION}"; then \
	  echo "Error: please remove $(top_builddir)/vlc-${VERSION}, it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
734
	  false; \
735
	else \
736
	  echo "OK."; mkdir -p "$(top_builddir)/vlc-${VERSION}"; \
737
	fi
738

739
# Copy relevant files
740 741 742 743
	cp "$(srcdir)/vlc.win32.nsi" "$(top_builddir)/vlc-${VERSION}/"
	cp "$(top_builddir)/vlc$(EXEEXT)" "$(top_builddir)/vlc-${VERSION}/"
	cp "$(top_srcdir)/vlc.exe.manifest" "$(top_builddir)/vlc-${VERSION}/"
	$(STRIP) "$(top_builddir)/vlc-${VERSION}/vlc$(EXEEXT)"
744

Gildas Bazin's avatar
 
Gildas Bazin committed
745
	for file in AUTHORS MAINTAINERS THANKS NEWS COPYING README ; \
746 747
	  do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; \
	  unix2dos "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; done
Gildas Bazin's avatar
 
Gildas Bazin committed
748

749
	mkdir -p "$(top_builddir)/vlc-${VERSION}/plugins"
Sam Hocevar's avatar
Sam Hocevar committed
750
	for i in "" `$(VLC_CONFIG) --target plugin` ; do \
Sam Hocevar's avatar
Sam Hocevar committed
751
	  if test -n "$$i" ; then \
752 753
	    $(INSTALL) "$(top_builddir)/$$i$(LIBEXT)" \
            "$(top_builddir)/vlc-${VERSION}/plugins/" ; \
Sam Hocevar's avatar
Sam Hocevar committed
754
	  fi ; done
Gildas Bazin's avatar
 
Gildas Bazin committed
755

756
	for i in "" $(top_builddir)/vlc-${VERSION}/plugins/*$(LIBEXT) ; \
757
	  do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done
Gildas Bazin's avatar
 
Gildas Bazin committed
758

759
	mkdir $(top_builddir)/vlc-${VERSION}/locale
Gildas Bazin's avatar
 
Gildas Bazin committed
760
	for i in $(ALL_LINGUAS); do \
761
	  mkdir -p "$(top_builddir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES" ; \
Sam Hocevar's avatar
Sam Hocevar committed
762
	  cp "$(srcdir)/po/$${i}.gmo" \
763
	    "$(top_builddir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES/vlc.mo" \
Gildas Bazin's avatar
 
Gildas Bazin committed
764
            || true ; \
Gildas Bazin's avatar
 
Gildas Bazin committed
765 766
	done

767
	mkdir -p $(top_builddir)/vlc-${VERSION}/skins/fonts
768
	for i in $(srcdir)/share/skins2/fonts/*.*; do \
769
	  cp $$i $(top_builddir)/vlc-${VERSION}/skins/fonts/ || true ; \
770
	done
771
	for i in $(srcdir)/share/skins2/*.*; do \
772
	  cp $$i $(top_builddir)/vlc-${VERSION}/skins/ || true ; \
773
	done
Gildas Bazin's avatar
 
Gildas Bazin committed
774

775 776 777
	mkdir -p "$(top_builddir)/vlc-${VERSION}/http/admin"
	mkdir -p "$(top_builddir)/vlc-${VERSION}/http/vlm"
	cp $(srcdir)/share/http/*.html $(top_builddir)/vlc-${VERSION}/http/ ;
778
	unix2dos $(top_builddir)/vlc-${VERSION}/http/*.html ;
779
	cp $(srcdir)/share/http/*.css $(top_builddir)/vlc-${VERSION}/http/ ;
780 781 782
	unix2dos $(top_builddir)/vlc-${VERSION}/http/*.css ;
	cp $(srcdir)/share/http/*.png $(top_builddir)/vlc-${VERSION}/http/
	cp $(srcdir)/share/http/*.ico $(top_builddir)/vlc-${VERSION}/http/ ;
Gildas Bazin's avatar
 
Gildas Bazin committed
783
	cp $(srcdir)/share/http/admin/*.html \
784
           $(top_builddir)/vlc-${VERSION}/http/admin/ ;
785
	unix2dos $(top_builddir)/vlc-${VERSION}/http/admin/*.html ;
786 787
	cp $(srcdir)/share/http/admin/dboxfiles.html \
           $(top_builddir)/vlc-${VERSION}/http/admin/ ;
Gildas Bazin's avatar
 
Gildas Bazin committed
788
	cp $(srcdir)/share/http/admin/.access \
789
           $(top_builddir)/vlc-${VERSION}/http/admin/ ;
790
	unix2dos $(top_builddir)/vlc-${VERSION}/http/admin/.access ;
791
	cp $(srcdir)/share/http/vlm/*.html \
792
           $(top_builddir)/vlc-${VERSION}/http/vlm/ ;
793
	unix2dos $(top_builddir)/vlc-${VERSION}/http/vlm/*.html ;
Gildas Bazin's avatar
 
Gildas Bazin committed
794

795
	cp $(srcdir)/share/vlc48x48new.ico $(top_builddir)/vlc-${VERSION}/ ;
796

797
	mkdir -p "$(top_builddir)/vlc-${VERSION}/mozilla"
Gildas Bazin's avatar
 
Gildas Bazin committed
798
if BUILD_MOZILLA
799 800 801
	cp $(top_builddir)/mozilla/*$(LIBEXT) $(top_builddir)/vlc-${VERSION}/mozilla/ ;
	$(STRIP) $(top_builddir)/vlc-${VERSION}/mozilla/*$(LIBEXT);
	cp $(top_builddir)/mozilla/vlcintf.xpt  $(top_builddir)/vlc-${VERSION}/mozilla/ ;
Gildas Bazin's avatar
 
Gildas Bazin committed
802 803
endif

804 805 806 807 808 809 810 811 812
	mkdir -p "$(top_builddir)/vlc-${VERSION}/activex"
if BUILD_ACTIVEX
	cp $(top_builddir)/activex/README.TXT  $(top_builddir)/vlc-${VERSION}/activex/ ;
	cp $(top_builddir)/activex/test.html  $(top_builddir)/vlc-${VERSION}/activex/ ;
	unix2dos $(top_builddir)/vlc-${VERSION}/activex/* ;

	cp $(top_builddir)/activex/*$(LIBEXT) $(top_builddir)/vlc-${VERSION}/activex/ ;
	$(STRIP) $(top_builddir)/vlc-${VERSION}/activex/*$(LIBEXT);
endif
813 814 815 816
# Rebase all those DLLs to speed up loading (need cygwin rebase)
	if [ -x rebase ]; then \
		find $(top_builddir)/vlc-${VERSION} -type f -name '*.dll' -print | rebase -b 0x70000000 -T -; \
	fi
817

Gildas Bazin's avatar
 
Gildas Bazin committed
818
package-win32-base-exe:
819
# Create package
820
	wine C:/Program\ Files/NSIS/makensis.exe \
821 822 823 824 825 826
             /DVERSION=${VERSION} $(top_builddir)/vlc-${VERSION}/vlc.win32.nsi

package-win32-base-exe-cygwin:
# Create package
	C:/Program\ Files/NSIS/makensis.exe \
             /DVERSION=${VERSION} $(top_builddir)/vlc-${VERSION}/vlc.win32.nsi
Gildas Bazin's avatar
 
Gildas Bazin committed
827

828 829 830 831
package-win32-base-exe-linux:
# Create package
	makensis -DVERSION=${VERSION} $(top_builddir)/vlc-${VERSION}/vlc.win32.nsi

Gildas Bazin's avatar
 
Gildas Bazin committed
832
package-win32-base-zip:
833
# Create package 
Gildas Bazin's avatar
 
Gildas Bazin committed
834
	zip -r vlc-${VERSION}-win32.zip vlc-${VERSION}
Gildas Bazin's avatar
 
Gildas Bazin committed
835 836 837

package-win32-exe: package-win32-base package-win32-base-exe
# Clean up
838
	rm -Rf $(top_builddir)/vlc-${VERSION}
Gildas Bazin's avatar
 
Gildas Bazin committed
839

840 841 842 843
package-win32-exe-linux: package-win32-base package-win32-base-exe-linux
# Clean up
	rm -Rf $(top_builddir)/vlc-${VERSION}

Gildas Bazin's avatar
 
Gildas Bazin committed
844 845
package-win32-zip: package-win32-base package-win32-base-zip
# Clean up
846
	rm -Rf $(top_builddir)/vlc-${VERSION}
Gildas Bazin's avatar
 
Gildas Bazin committed
847 848

package-win32: package-win32-base package-win32-base-exe package-win32-base-zip
849
# Clean up
850
	rm -Rf $(top_builddir)/vlc-${VERSION}
851 852 853

package-beos:
# Check that tmp isn't in the way
854
	@if test -e $(srcdir)/tmp; then \
Sam Hocevar's avatar
Sam Hocevar committed
855
	  echo "Error: please remove $(srcdir)/tmp, it is in the way"; \
856
	  false ; \
857
	else \
858
	  echo "OK." ; mkdir $(srcdir)/tmp ; \
859
	fi
860

861
# Copy relevant files
862
	mkdir -p $(srcdir)/tmp/vlc ;
863 864 865 866 867 868 869 870 871 872
	cd $(srcdir) && cp -R vlc-bundle/* AUTHORS COPYING ChangeLog README \
	  THANKS NEWS tmp/vlc/ ;

# Create debug package
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc ;
	find $(srcdir)/tmp/vlc -exec mimeset -f {} \; ;
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-${VERSION} ;
	(cd $(srcdir)/tmp ; zip -9 -r vlc-${VERSION}-BeOS-debug.zip vlc-${VERSION} )
	mv $(srcdir)/tmp/vlc-${VERSION}-BeOS-debug.zip $(srcdir)/ ;
	mv $(srcdir)/tmp/vlc-${VERSION} $(srcdir)/tmp/vlc ;
873

874
# Create normal package
875 876
	$(STRIP) --strip-debug --strip-unneeded $(srcdir)/tmp/vlc/vlc ;
	find $(srcdir)/tmp/vlc -name 'lib*.so' -exec $(STRIP) \
877
	  --strip-debug --strip-unneeded "{}" \; ;
878 879 880
	xres -o $(srcdir)/tmp/vlc/vlc $(srcdir)/share/vlc_beos.rsrc ;
	find $(srcdir)/tmp/vlc -exec mimeset -f {} \; ;
	mv $(srcdir)/tmp/vlc $(srcdir)/tmp/vlc-${VERSION} ;
881
	(cd $(srcdir)/tmp ; zip -9 -r vlc-${VERSION}-BeOS.zip vlc-${VERSION} )
882
	mv $(srcdir)/tmp/vlc-${VERSION}-BeOS.zip $(srcdir)/ ;
883

884
# Clean up
885
	rm -Rf $(srcdir)/tmp ;
886 887 888

package-macosx:
# Check that tmp isn't in the way
Loïc Minier's avatar
Loïc Minier committed
889 890
	@if test -e "$(top_builddir)/tmp"; then \
	  echo "Error: please remove $(top_builddir)/tmp, it is in the way"; \
Sam Hocevar's avatar
Sam Hocevar committed
891
	  false; \
892
	else \
Loïc Minier's avatar
Loïc Minier committed
893
	  echo "OK."; mkdir -p "$(top_builddir)/tmp"; \
894 895 896
	fi

# Copy relevant files 
897
	cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/tmp/VLC.app"
Loïc Minier's avatar
Loïc Minier committed
898
	cd "$(srcdir)" && cp AUTHORS COPYING ChangeLog README README.MacOSX.rtf THANKS NEWS $(top_builddir)/tmp/
899 900

# Create disk image 
901
	$(srcdir)/extras/MacOSX/macosx-dmg "vlc-${VERSION}" $(top_builddir)/tmp
902 903

# Clean up
Loïc Minier's avatar
Loïc Minier committed
904
	rm -Rf $(top_builddir)/tmp
905

906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933
package-translations:
	@if test -e "$(srcdir)/vlc-translations-${VERSION}"; then \
	  echo "Error: please remove $(srcdir)/vlc-translations-${VERSION}, it is in the way"; \
	  false; \
	else \
	  echo "OK."; mkdir -p "$(srcdir)/vlc-translations-${VERSION}"; \
	fi
# Copy translations
	for i in $(ALL_LINGUAS); do \
	  cp "$(srcdir)/po/$${i}.po" \
	    "$(srcdir)/vlc-translations-${VERSION}/$${i}.po" \
	    || true ; \
	done
	cp "$(srcdir)/doc/translations.txt" \
	  "$(srcdir)/vlc-translations-${VERSION}/README.txt"

	echo "#!/bin/sh" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo 'if test $$# != 1; then' >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "	echo \"Usage: convert-po.sh <.po file>\"" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "	exit 1" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "fi" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo "" >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"
	echo 'msgfmt --statistics -o vlc.mo $$1' >>"$(srcdir)/vlc-translations-$(VERSION)/convert.po.sh"

	$(AMTAR) chof - $(srcdir)/vlc-translations-$(VERSION) \
	  | GZIP=$(GZIP_ENV) gzip -c >$(srcdir)/vlc-translations-$(VERSION).tar.gz

Sam Hocevar's avatar
Sam Hocevar committed
934 935 936
###############################################################################
# Stamp rules
###############################################################################
937
clean: clean-stamp clean-recursive
Sam Hocevar's avatar
Sam Hocevar committed
938
clean-stamp:
939
	rm -f stamp-builtin stamp-api
Sam Hocevar's avatar
Sam Hocevar committed
940 941 942 943 944 945 946 947 948 949

stamp-builtin: FORCE
	@for dep in "" `$(VLC_CONFIG) --target builtin`; do \
	  if test "$${dep}" -nt "$(top_builddir)/vlc$(EXEEXT)"; then \
	    rm -f $@; \
	    break; \
	  fi; \
	done
	@if test ! -f $@; then printf "" > $@; fi

950 951
stamp-api: Makefile.in $(HEADERS_include) vlc-config vlc-api.pl src/misc/modules_builtin.h.in
	cd $(srcdir) && cat $(HEADERS_include) | perl ./vlc-api.pl
952 953
	touch stamp-api

954 955 956 957
###############################################################################
# Force rule
###############################################################################
FORCE: