2008-06-17 11:40:04 +00:00
|
|
|
# MPlayer Makefile
|
|
|
|
#
|
|
|
|
# copyright (c) 2008 Diego Biurrun
|
|
|
|
# Rewritten entirely from a set of Makefiles written by Arpi and many others.
|
|
|
|
#
|
|
|
|
# This file is part of MPlayer.
|
|
|
|
#
|
|
|
|
# MPlayer is free software; you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU General Public License as published by
|
|
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
|
|
# (at your option) any later version.
|
|
|
|
#
|
|
|
|
# MPlayer is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License along
|
|
|
|
# with MPlayer; if not, write to the Free Software Foundation, Inc.,
|
|
|
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
2001-02-24 20:28:24 +00:00
|
|
|
|
|
|
|
include config.mak
|
|
|
|
|
2008-05-09 17:51:44 +00:00
|
|
|
###### variable declarations #######
|
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
SOURCES_AUDIO_INPUT-$(ALSA) += stream/ai_alsa1x.c
|
|
|
|
SOURCES_AUDIO_INPUT-$(OSS) += stream/ai_oss.c
|
|
|
|
SOURCES-$(AUDIO_INPUT) += $(SOURCES_AUDIO_INPUT-yes)
|
|
|
|
SOURCES-$(CDDA) += stream/stream_cdda.c \
|
|
|
|
stream/cdinfo.c
|
|
|
|
SOURCES-$(CDDB) += stream/stream_cddb.c
|
|
|
|
SOURCES-$(DVBIN) += stream/dvb_tune.c \
|
|
|
|
stream/stream_dvb.c
|
|
|
|
SOURCES-$(DVDREAD) += stream/stream_dvd.c \
|
|
|
|
stream/stream_dvd_common.c
|
|
|
|
|
|
|
|
SOURCES-$(FTP) += stream/stream_ftp.c
|
|
|
|
SOURCES-$(HAVE_SYS_MMAN_H) += audio/filter/af_export.c osdep/mmap_anon.c
|
|
|
|
SOURCES-$(LADSPA) += audio/filter/af_ladspa.c
|
|
|
|
SOURCES-$(LIBASS) += sub/ass_mp.c sub/sd_ass.c
|
|
|
|
|
|
|
|
SOURCES-$(LIBBLURAY) += stream/stream_bluray.c
|
|
|
|
SOURCES-$(LIBBS2B) += audio/filter/af_bs2b.c
|
|
|
|
|
|
|
|
SOURCES-$(LIBPOSTPROC) += video/filter/vf_pp.c
|
|
|
|
SOURCES-$(LIBSMBCLIENT) += stream/stream_smb.c
|
|
|
|
|
|
|
|
SOURCES-$(MACOSX_FINDER) += osdep/macosx_finder_args.m
|
2012-12-09 14:05:21 +00:00
|
|
|
SOURCES-$(MACOSX_BUNDLE) += osdep/macosx_bundle.m
|
2012-12-01 21:07:33 +00:00
|
|
|
SOURCES-$(COCOA) += video/out/osx_common.m \
|
2012-11-09 00:06:43 +00:00
|
|
|
video/out/cocoa_common.m \
|
|
|
|
osdep/cocoa_events.m
|
|
|
|
SOURCES-$(MNG) += demux/demux_mng.c
|
|
|
|
SOURCES-$(MPG123) += audio/decode/ad_mpg123.c
|
|
|
|
|
|
|
|
SOURCES-$(NEED_GETTIMEOFDAY) += osdep/gettimeofday.c
|
|
|
|
SOURCES-$(NEED_GLOB) += osdep/glob-win.c
|
|
|
|
SOURCES-$(NEED_SHMEM) += osdep/shmem.c
|
2013-01-13 16:22:28 +00:00
|
|
|
SOURCES-$(NETWORKING) += stream/asf_mmst_streaming.c \
|
2012-11-09 00:06:43 +00:00
|
|
|
stream/asf_streaming.c \
|
|
|
|
stream/cookies.c \
|
|
|
|
stream/http.c \
|
|
|
|
stream/network.c \
|
|
|
|
stream/udp.c \
|
|
|
|
stream/tcp.c \
|
|
|
|
stream/stream_udp.c \
|
|
|
|
|
|
|
|
SOURCES-$(PRIORITY) += osdep/priority.c
|
|
|
|
SOURCES-$(PVR) += stream/stream_pvr.c
|
|
|
|
SOURCES-$(RADIO) += stream/stream_radio.c
|
|
|
|
SOURCES-$(RADIO_CAPTURE) += stream/audio_in.c
|
|
|
|
SOURCES-$(STREAM_CACHE) += stream/cache2.c
|
|
|
|
|
|
|
|
SOURCES-$(TV) += stream/stream_tv.c stream/tv.c \
|
|
|
|
stream/frequencies.c stream/tvi_dummy.c
|
|
|
|
SOURCES-$(TV_BSDBT848) += stream/tvi_bsdbt848.c
|
|
|
|
|
|
|
|
SOURCES-$(TV_V4L2) += stream/tvi_v4l2.c stream/audio_in.c
|
|
|
|
SOURCES-$(VCD) += stream/stream_vcd.c
|
|
|
|
SOURCES-$(VSTREAM) += stream/stream_vstream.c
|
|
|
|
SOURCES-$(DUMMY_OSD) += sub/osd_dummy.c
|
|
|
|
SOURCES-$(LIBASS_OSD) += sub/osd_libass.c
|
|
|
|
|
|
|
|
SOURCES-$(ALSA) += audio/out/ao_alsa.c
|
|
|
|
SOURCES-$(APPLE_IR) += core/input/appleir.c
|
|
|
|
SOURCES-$(APPLE_REMOTE) += core/input/ar.c
|
|
|
|
SOURCES-$(CACA) += video/out/vo_caca.c
|
2012-12-28 07:07:14 +00:00
|
|
|
SOURCES-$(SDL) += audio/out/ao_sdl.c
|
|
|
|
SOURCES-$(SDL2) += video/out/vo_sdl.c
|
2012-11-09 00:06:43 +00:00
|
|
|
SOURCES-$(COREAUDIO) += audio/out/ao_coreaudio.c
|
|
|
|
SOURCES-$(COREVIDEO) += video/out/vo_corevideo.m
|
|
|
|
SOURCES-$(DIRECT3D) += video/out/vo_direct3d.c \
|
|
|
|
video/out/w32_common.c
|
|
|
|
SOURCES-$(DSOUND) += audio/out/ao_dsound.c
|
|
|
|
SOURCES-$(GL) += video/out/gl_common.c video/out/gl_osd.c \
|
|
|
|
video/out/vo_opengl.c \
|
|
|
|
video/out/vo_opengl_old.c \
|
|
|
|
video/out/pnm_loader.c
|
|
|
|
|
|
|
|
SOURCES-$(ENCODING) += video/out/vo_lavc.c audio/out/ao_lavc.c \
|
|
|
|
core/encode_lavc.c
|
|
|
|
SOURCES-$(GL_WIN32) += video/out/w32_common.c
|
|
|
|
SOURCES-$(GL_X11) += video/out/x11_common.c
|
|
|
|
|
|
|
|
SOURCES-$(JACK) += audio/out/ao_jack.c
|
|
|
|
SOURCES-$(JOYSTICK) += core/input/joystick.c
|
|
|
|
SOURCES-$(LIBQUVI) += core/quvi.c
|
|
|
|
SOURCES-$(LIRC) += core/input/lirc.c
|
|
|
|
SOURCES-$(OPENAL) += audio/out/ao_openal.c
|
|
|
|
SOURCES-$(OSS) += audio/out/ao_oss.c
|
|
|
|
SOURCES-$(PULSE) += audio/out/ao_pulse.c
|
|
|
|
SOURCES-$(PORTAUDIO) += audio/out/ao_portaudio.c
|
|
|
|
SOURCES-$(RSOUND) += audio/out/ao_rsound.c
|
|
|
|
SOURCES-$(VDPAU) += video/out/vo_vdpau.c
|
|
|
|
|
|
|
|
SOURCES-$(X11) += video/out/vo_x11.c video/out/x11_common.c
|
|
|
|
SOURCES-$(XV) += video/out/vo_xv.c
|
|
|
|
|
|
|
|
|
|
|
|
SOURCES = talloc.c \
|
|
|
|
audio/format.c \
|
|
|
|
audio/mixer.c \
|
|
|
|
audio/reorder_ch.c \
|
|
|
|
audio/decode/ad.c \
|
|
|
|
audio/decode/ad_lavc.c \
|
|
|
|
audio/decode/ad_spdif.c \
|
|
|
|
audio/decode/dec_audio.c \
|
|
|
|
audio/filter/af.c \
|
|
|
|
audio/filter/af_center.c \
|
|
|
|
audio/filter/af_channels.c \
|
|
|
|
audio/filter/af_delay.c \
|
|
|
|
audio/filter/af_dummy.c \
|
|
|
|
audio/filter/af_equalizer.c \
|
|
|
|
audio/filter/af_extrastereo.c \
|
|
|
|
audio/filter/af_format.c \
|
|
|
|
audio/filter/af_hrtf.c \
|
|
|
|
audio/filter/af_karaoke.c \
|
|
|
|
audio/filter/af_lavcac3enc.c \
|
|
|
|
audio/filter/af_lavcresample.c \
|
|
|
|
audio/filter/af_pan.c \
|
|
|
|
audio/filter/af_resample.c \
|
|
|
|
audio/filter/af_scaletempo.c \
|
|
|
|
audio/filter/af_sinesuppress.c \
|
|
|
|
audio/filter/af_sub.c \
|
|
|
|
audio/filter/af_surround.c \
|
|
|
|
audio/filter/af_sweep.c \
|
|
|
|
audio/filter/af_tools.c \
|
|
|
|
audio/filter/af_volnorm.c \
|
|
|
|
audio/filter/af_volume.c \
|
|
|
|
audio/filter/filter.c \
|
|
|
|
audio/filter/window.c \
|
|
|
|
audio/out/ao.c \
|
|
|
|
audio/out/ao_null.c \
|
|
|
|
audio/out/ao_pcm.c \
|
|
|
|
core/asxparser.c \
|
|
|
|
core/av_log.c \
|
|
|
|
core/av_opts.c \
|
|
|
|
core/bstr.c \
|
|
|
|
core/codec-cfg.c \
|
|
|
|
core/command.c \
|
|
|
|
core/cpudetect.c \
|
|
|
|
core/defaultopts.c \
|
|
|
|
core/m_config.c \
|
|
|
|
core/m_option.c \
|
|
|
|
core/m_property.c \
|
|
|
|
core/m_struct.c \
|
|
|
|
core/mp_common.c \
|
|
|
|
core/mp_fifo.c \
|
|
|
|
core/mp_msg.c \
|
|
|
|
core/mplayer.c \
|
|
|
|
core/parser-cfg.c \
|
|
|
|
core/parser-mpcmd.c \
|
|
|
|
core/path.c \
|
|
|
|
core/playlist.c \
|
|
|
|
core/playlist_parser.c \
|
|
|
|
core/screenshot.c \
|
|
|
|
core/subopt-helper.c \
|
|
|
|
core/version.c \
|
|
|
|
core/input/input.c \
|
|
|
|
core/timeline/tl_edl.c \
|
|
|
|
core/timeline/tl_matroska.c \
|
|
|
|
core/timeline/tl_cue.c \
|
|
|
|
demux/asfheader.c \
|
|
|
|
demux/aviheader.c \
|
|
|
|
demux/aviprint.c \
|
|
|
|
demux/demux.c \
|
|
|
|
demux/demux_asf.c \
|
|
|
|
demux/demux_avi.c \
|
|
|
|
demux/demux_edl.c \
|
|
|
|
demux/demux_cue.c \
|
|
|
|
demux/demux_lavf.c \
|
|
|
|
demux/demux_mf.c \
|
|
|
|
demux/demux_mkv.c \
|
|
|
|
demux/demux_mpg.c \
|
|
|
|
demux/demux_ts.c \
|
|
|
|
demux/mp3_hdr.c \
|
|
|
|
demux/parse_es.c \
|
|
|
|
demux/mpeg_hdr.c \
|
|
|
|
demux/demux_rawaudio.c \
|
|
|
|
demux/demux_rawvideo.c \
|
|
|
|
demux/ebml.c \
|
|
|
|
demux/extension.c \
|
|
|
|
demux/mf.c \
|
|
|
|
demux/mp_taglists.c \
|
|
|
|
demux/video.c \
|
|
|
|
osdep/numcores.c \
|
|
|
|
osdep/io.c \
|
|
|
|
stream/stream.c \
|
demux_lavf: add support for libavdevice
libavdevice supports various "special" video and audio inputs, such
as screen-capture or libavfilter filter graphs.
libavdevice inputs are implemented as demuxers. They don't use the
custom stream callbacks (in AVFormatContext.pb). Instead, input
parameters are passed as filename. This means the mpv stream layer has
to be disabled. Do this by adding the pseudo stream handler avdevice://,
whose only purpose is passing the filename to demux_lavf, without
actually doing anything.
Change the logic how the filename is passed to libavformat. Remove
handling of the filename from demux_open_lavf() and move it to
lavf_check_file(). (This also fixes a possible bug when skipping the
"lavf://" prefix.)
libavdevice now can be invoked by specifying demuxer and args as in:
mpv avdevice://demuxer:args
The args are passed as filename to libavformat. When using libavdevice
demuxers, their actual meaning is highly implementation specific. They
don't refer to actual filenames.
Note:
libavdevice is disabled by default. There is one problem: libavdevice
pulls in libavfilter, which in turn causes symbol clashes with mpv
internals. The problem is that libavfilter includes a mplayer filter
bridge, which is used to interface with a set of nearly unmodified
mplayer filters copied into libavfilter. This filter bridge uses the
same symbol names as mplayer/mpv's filter chain, which results in symbol
clashes at link-time.
This can be prevented by building ffmpeg with --disable-filter=mp, but
unfortunately this is not the default.
This means linking to libavdevice (which in turn forces linking with
libavfilter by default) must be disabled. We try doing this by compiling
a test file that defines one of the clashing symbols (vf_mpi_clear).
To enable libavdevice input, ffmpeg should be built with the options:
--disable-filter=mp
and mpv with:
--enable-libavdevice
Originally, I tried to auto-detect it. But the resulting complications
in configure did't seem worth the trouble.
2012-11-30 17:41:04 +00:00
|
|
|
stream/stream_avdevice.c \
|
2012-11-09 00:06:43 +00:00
|
|
|
stream/stream_file.c \
|
|
|
|
stream/stream_lavf.c \
|
|
|
|
stream/stream_mf.c \
|
|
|
|
stream/stream_null.c \
|
|
|
|
stream/url.c \
|
|
|
|
sub/dec_sub.c \
|
|
|
|
sub/draw_bmp.c \
|
|
|
|
sub/find_sub.c \
|
|
|
|
sub/find_subfiles.c \
|
|
|
|
sub/img_convert.c \
|
|
|
|
sub/sd_lavc.c \
|
|
|
|
sub/spudec.c \
|
|
|
|
sub/sub.c \
|
|
|
|
sub/subassconvert.c \
|
|
|
|
sub/subreader.c \
|
|
|
|
video/csputils.c \
|
|
|
|
video/fmt-conversion.c \
|
|
|
|
video/image_writer.c \
|
|
|
|
video/img_format.c \
|
|
|
|
video/mp_image.c \
|
|
|
|
video/sws_utils.c \
|
|
|
|
video/decode/dec_video.c \
|
|
|
|
video/decode/vd.c \
|
|
|
|
video/decode/vd_lavc.c \
|
|
|
|
video/filter/vf.c \
|
|
|
|
video/filter/pullup.c \
|
|
|
|
video/filter/vf_crop.c \
|
|
|
|
video/filter/vf_delogo.c \
|
|
|
|
video/filter/vf_divtc.c \
|
|
|
|
video/filter/vf_dlopen.c \
|
|
|
|
video/filter/vf_down3dright.c \
|
|
|
|
video/filter/vf_dsize.c \
|
2012-11-15 14:16:12 +00:00
|
|
|
video/filter/vf_eq.c \
|
2012-11-09 00:06:43 +00:00
|
|
|
video/filter/vf_expand.c \
|
|
|
|
video/filter/vf_flip.c \
|
|
|
|
video/filter/vf_format.c \
|
|
|
|
video/filter/vf_gradfun.c \
|
|
|
|
video/filter/vf_hqdn3d.c \
|
|
|
|
video/filter/vf_ilpack.c \
|
|
|
|
video/filter/vf_mirror.c \
|
|
|
|
video/filter/vf_noformat.c \
|
|
|
|
video/filter/vf_noise.c \
|
|
|
|
video/filter/vf_phase.c \
|
|
|
|
video/filter/vf_pullup.c \
|
|
|
|
video/filter/vf_rotate.c \
|
|
|
|
video/filter/vf_scale.c \
|
|
|
|
video/filter/vf_screenshot.c \
|
|
|
|
video/filter/vf_softpulldown.c \
|
|
|
|
video/filter/vf_stereo3d.c \
|
|
|
|
video/filter/vf_sub.c \
|
|
|
|
video/filter/vf_swapuv.c \
|
|
|
|
video/filter/vf_unsharp.c \
|
|
|
|
video/filter/vf_vo.c \
|
|
|
|
video/filter/vf_yadif.c \
|
|
|
|
video/out/bitmap_packer.c \
|
|
|
|
video/out/aspect.c \
|
|
|
|
video/out/filter_kernels.c \
|
|
|
|
video/out/geometry.c \
|
|
|
|
video/out/vo.c \
|
|
|
|
video/out/vo_null.c \
|
|
|
|
video/out/vo_image.c \
|
|
|
|
osdep/$(GETCH) \
|
|
|
|
osdep/$(TIMER) \
|
|
|
|
$(SOURCES-yes)
|
|
|
|
|
|
|
|
OBJECTS += $(addsuffix .o, $(basename $(SOURCES)))
|
|
|
|
OBJECTS-$(PE_EXECUTABLE) += osdep/mpv-rc.o
|
|
|
|
OBJECTS += $(OBJECTS-yes)
|
|
|
|
|
|
|
|
DEP_FILES = $(patsubst %.S,%.d,$(patsubst %.cpp,%.d,$(patsubst %.c,%.d,$(SOURCES:.m=.d) $(SOURCES:.m=.d))))
|
|
|
|
|
2012-11-13 23:43:55 +00:00
|
|
|
ALL_TARGETS += mpv$(EXESUF)
|
2012-11-09 00:06:43 +00:00
|
|
|
|
2012-11-14 12:06:00 +00:00
|
|
|
INSTALL_BIN += install-mpv
|
|
|
|
INSTALL_BIN_STRIP += install-mpv-strip
|
|
|
|
INSTALL_MAN =
|
2012-11-13 23:43:55 +00:00
|
|
|
|
|
|
|
ifeq ($(BUILD_MAN),yes)
|
2012-11-14 12:06:00 +00:00
|
|
|
INSTALL_MAN += install-mpv-man
|
|
|
|
ALL_TARGETS += DOCS/man/en/mpv.1
|
2012-11-13 23:43:55 +00:00
|
|
|
endif
|
manpage: merge new manpage
About a year ago, ubitux converted most of the old manpage from the
hard to maintain nroff format to reStructuredText. This was not merged
back into the master repository immediately. The argument was that the
new manpage still required work to be done. However, progress was very
slow. Even worse: the old manpage wasn't updated, because it was
scheduled for deletion, and updating it would have meant useless work.
Now the situation is that the new manpage still isn't finished, and the
old manpage is grossly out of sync with the player. This is not helpful
for users. Additionally, keeping the new manpage in a separate branch,
while the normal development repository for code had the old manpage,
was very inconvenient, because you couldn't just update the
documentation in the same commit as the code.
Even though the new manpage isn't finished yet, merging it now seems to
be the best course of action. Squash-merge the manpage development
branch [1], revision e89f5dd3f2, which branches from the mplayer2
master branch after revision 159102e0cb.
Committers:
* Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.)
* Uoti Urpala <uau@mplayer2.org> (Many updates.)
* Myself (Minor edits.)
Most text of the manpage has been directly taken from the old manpage,
because this is a conversion, not a complete rewrite.
[1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man
2012-08-02 19:37:33 +00:00
|
|
|
|
2008-04-28 17:54:14 +00:00
|
|
|
DIRS = . \
|
2012-11-09 00:06:43 +00:00
|
|
|
audio \
|
|
|
|
audio/decode \
|
|
|
|
audio/filter \
|
|
|
|
audio/out \
|
|
|
|
core \
|
|
|
|
core/input \
|
|
|
|
core/timeline \
|
|
|
|
demux \
|
2008-04-08 18:25:30 +00:00
|
|
|
osdep \
|
2008-04-24 13:38:12 +00:00
|
|
|
stream \
|
2011-01-16 18:03:08 +00:00
|
|
|
sub \
|
2012-11-09 00:06:43 +00:00
|
|
|
video \
|
|
|
|
video/decode \
|
|
|
|
video/filter \
|
|
|
|
video/out
|
2002-09-22 13:04:19 +00:00
|
|
|
|
2008-07-05 09:07:24 +00:00
|
|
|
|
2009-04-20 00:18:59 +00:00
|
|
|
ADDSUFFIXES = $(foreach suf,$(1),$(addsuffix $(suf),$(2)))
|
|
|
|
ADD_ALL_DIRS = $(call ADDSUFFIXES,$(1),$(DIRS))
|
|
|
|
ADD_ALL_EXESUFS = $(1) $(call ADDSUFFIXES,$(EXESUFS_ALL),$(1))
|
2009-04-20 00:16:53 +00:00
|
|
|
|
2011-06-30 21:18:52 +00:00
|
|
|
###### brief build output #######
|
|
|
|
|
|
|
|
ifndef V
|
|
|
|
$(eval override CC = @printf "CC\t$$@\n"; $(CC))
|
|
|
|
$(eval override RM = @$(RM))
|
|
|
|
endif
|
|
|
|
|
2008-05-09 17:51:44 +00:00
|
|
|
###### generic rules #######
|
|
|
|
|
2012-11-13 23:43:55 +00:00
|
|
|
all: $(ALL_TARGETS)
|
2002-09-22 13:04:19 +00:00
|
|
|
|
manpage: merge new manpage
About a year ago, ubitux converted most of the old manpage from the
hard to maintain nroff format to reStructuredText. This was not merged
back into the master repository immediately. The argument was that the
new manpage still required work to be done. However, progress was very
slow. Even worse: the old manpage wasn't updated, because it was
scheduled for deletion, and updating it would have meant useless work.
Now the situation is that the new manpage still isn't finished, and the
old manpage is grossly out of sync with the player. This is not helpful
for users. Additionally, keeping the new manpage in a separate branch,
while the normal development repository for code had the old manpage,
was very inconvenient, because you couldn't just update the
documentation in the same commit as the code.
Even though the new manpage isn't finished yet, merging it now seems to
be the best course of action. Squash-merge the manpage development
branch [1], revision e89f5dd3f2, which branches from the mplayer2
master branch after revision 159102e0cb.
Committers:
* Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.)
* Uoti Urpala <uau@mplayer2.org> (Many updates.)
* Myself (Minor edits.)
Most text of the manpage has been directly taken from the old manpage,
because this is a conversion, not a complete rewrite.
[1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man
2012-08-02 19:37:33 +00:00
|
|
|
%.1: %.rst
|
2012-11-02 13:37:02 +00:00
|
|
|
$(RST2MAN) $< $@
|
manpage: merge new manpage
About a year ago, ubitux converted most of the old manpage from the
hard to maintain nroff format to reStructuredText. This was not merged
back into the master repository immediately. The argument was that the
new manpage still required work to be done. However, progress was very
slow. Even worse: the old manpage wasn't updated, because it was
scheduled for deletion, and updating it would have meant useless work.
Now the situation is that the new manpage still isn't finished, and the
old manpage is grossly out of sync with the player. This is not helpful
for users. Additionally, keeping the new manpage in a separate branch,
while the normal development repository for code had the old manpage,
was very inconvenient, because you couldn't just update the
documentation in the same commit as the code.
Even though the new manpage isn't finished yet, merging it now seems to
be the best course of action. Squash-merge the manpage development
branch [1], revision e89f5dd3f2, which branches from the mplayer2
master branch after revision 159102e0cb.
Committers:
* Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.)
* Uoti Urpala <uau@mplayer2.org> (Many updates.)
* Myself (Minor edits.)
Most text of the manpage has been directly taken from the old manpage,
because this is a conversion, not a complete rewrite.
[1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man
2012-08-02 19:37:33 +00:00
|
|
|
|
2010-02-23 23:33:10 +00:00
|
|
|
%.o: %.S
|
2010-07-01 23:18:16 +00:00
|
|
|
$(CC) $(DEPFLAGS) $(CFLAGS) -c -o $@ $<
|
2010-02-23 23:33:10 +00:00
|
|
|
|
2008-12-06 02:41:45 +00:00
|
|
|
%.o: %.c
|
2010-07-01 23:18:16 +00:00
|
|
|
$(CC) $(DEPFLAGS) $(CFLAGS) -c -o $@ $<
|
2008-04-29 08:53:08 +00:00
|
|
|
|
2008-12-06 02:41:45 +00:00
|
|
|
%.o: %.cpp
|
2010-07-01 23:18:16 +00:00
|
|
|
$(CC) $(DEPFLAGS) $(CXXFLAGS) -c -o $@ $<
|
2008-04-29 08:53:08 +00:00
|
|
|
|
2008-12-06 02:41:45 +00:00
|
|
|
%.o: %.m
|
2010-07-01 23:18:16 +00:00
|
|
|
$(CC) $(DEPFLAGS) $(CFLAGS) -c -o $@ $<
|
2010-02-23 23:33:10 +00:00
|
|
|
|
2008-07-06 13:26:30 +00:00
|
|
|
%-rc.o: %.rc
|
|
|
|
$(WINDRES) -I. $< $@
|
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
mpv$(EXESUF): $(OBJECTS)
|
2012-10-11 00:04:08 +00:00
|
|
|
mpv$(EXESUF):
|
2009-10-19 09:56:18 +00:00
|
|
|
$(CC) -o $@ $^ $(EXTRALIBS)
|
2008-08-07 12:35:34 +00:00
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
core/codec-cfg.c: core/codecs.conf.h
|
|
|
|
core/codecs.conf.h: TOOLS/file2string.pl etc/codecs.conf
|
2012-07-01 23:35:57 +00:00
|
|
|
./$^ >$@
|
2006-07-13 01:20:14 +00:00
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
core/input/input.c: core/input/input_conf.h
|
|
|
|
core/input/input_conf.h: TOOLS/file2string.pl etc/input.conf
|
2012-08-01 20:52:28 +00:00
|
|
|
./$^ >$@
|
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
video/out/vo_vdpau.c: video/out/vdpau_template.c
|
|
|
|
video/out/vdpau_template.c: TOOLS/vdpau_functions.pl
|
2012-07-01 23:09:03 +00:00
|
|
|
./$< > $@
|
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
demux/ebml.c demux/demux_mkv.c: demux/ebml_types.h
|
|
|
|
demux/ebml_types.h: TOOLS/matroska.pl
|
2012-07-01 23:09:03 +00:00
|
|
|
./$< --generate-header > $@
|
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
demux/ebml.c: demux/ebml_defs.c
|
|
|
|
demux/ebml_defs.c: TOOLS/matroska.pl
|
2012-07-01 23:09:03 +00:00
|
|
|
./$< --generate-definitions > $@
|
2002-12-15 23:45:19 +00:00
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
video/out/vo_opengl.c: video/out/vo_opengl_shaders.h
|
|
|
|
video/out/vo_opengl_shaders.h: TOOLS/file2string.pl video/out/vo_opengl_shaders.glsl
|
2012-07-28 15:31:55 +00:00
|
|
|
./$^ >$@
|
2012-03-30 23:13:38 +00:00
|
|
|
|
2012-07-28 21:03:19 +00:00
|
|
|
sub/osd_libass.c: sub/osd_font.h
|
2012-11-07 14:49:44 +00:00
|
|
|
sub/osd_font.h: TOOLS/file2string.pl sub/osd_font.pfb
|
2012-07-28 21:03:19 +00:00
|
|
|
./$^ >$@
|
|
|
|
|
2008-05-09 17:47:19 +00:00
|
|
|
# ./configure must be rerun if it changed
|
|
|
|
config.mak: configure
|
|
|
|
@echo "############################################################"
|
|
|
|
@echo "####### Please run ./configure again - it's changed! #######"
|
|
|
|
@echo "############################################################"
|
|
|
|
|
2011-02-19 17:01:07 +00:00
|
|
|
version.h .version: version.sh
|
|
|
|
./$<
|
|
|
|
|
|
|
|
# Force version.sh to run to potentially regenerate version.h
|
|
|
|
-include .version
|
2008-04-29 08:35:58 +00:00
|
|
|
|
2010-06-14 11:16:30 +00:00
|
|
|
%$(EXESUF): %.c
|
2010-06-14 11:24:55 +00:00
|
|
|
$(CC) $(CFLAGS) -o $@ $^
|
2008-07-04 14:35:44 +00:00
|
|
|
|
2010-09-04 00:20:08 +00:00
|
|
|
|
2008-05-09 17:51:44 +00:00
|
|
|
###### dependency declarations / specific CFLAGS ######
|
2006-07-13 01:20:14 +00:00
|
|
|
|
2012-11-09 00:06:43 +00:00
|
|
|
core/version.c osdep/mpv-rc.o: version.h
|
2008-04-08 18:25:30 +00:00
|
|
|
|
2012-10-20 14:45:05 +00:00
|
|
|
osdep/mpv-rc.o: osdep/mpv.exe.manifest
|
2010-07-04 07:13:18 +00:00
|
|
|
|
2012-11-13 23:08:25 +00:00
|
|
|
DOCS/man/en/mpv.1: DOCS/man/en/af.rst \
|
|
|
|
DOCS/man/en/ao.rst \
|
|
|
|
DOCS/man/en/changes.rst \
|
|
|
|
DOCS/man/en/encode.rst \
|
|
|
|
DOCS/man/en/input.rst \
|
|
|
|
DOCS/man/en/options.rst \
|
|
|
|
DOCS/man/en/vf.rst \
|
|
|
|
DOCS/man/en/vo.rst
|
|
|
|
|
2008-04-27 11:46:56 +00:00
|
|
|
|
2008-05-27 11:31:57 +00:00
|
|
|
###### installation / clean / generic rules #######
|
2008-04-27 22:53:18 +00:00
|
|
|
|
2012-11-14 12:06:00 +00:00
|
|
|
install: $(INSTALL_BIN) $(INSTALL_MAN)
|
|
|
|
install-no-man: $(INSTALL_BIN)
|
|
|
|
install-strip: $(INSTALL_BIN_STRIP) $(INSTALL_MAN)
|
|
|
|
install-strip-no-man: $(INSTALL_BIN_STRIP)
|
manpage: merge new manpage
About a year ago, ubitux converted most of the old manpage from the
hard to maintain nroff format to reStructuredText. This was not merged
back into the master repository immediately. The argument was that the
new manpage still required work to be done. However, progress was very
slow. Even worse: the old manpage wasn't updated, because it was
scheduled for deletion, and updating it would have meant useless work.
Now the situation is that the new manpage still isn't finished, and the
old manpage is grossly out of sync with the player. This is not helpful
for users. Additionally, keeping the new manpage in a separate branch,
while the normal development repository for code had the old manpage,
was very inconvenient, because you couldn't just update the
documentation in the same commit as the code.
Even though the new manpage isn't finished yet, merging it now seems to
be the best course of action. Squash-merge the manpage development
branch [1], revision e89f5dd3f2, which branches from the mplayer2
master branch after revision 159102e0cb.
Committers:
* Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.)
* Uoti Urpala <uau@mplayer2.org> (Many updates.)
* Myself (Minor edits.)
Most text of the manpage has been directly taken from the old manpage,
because this is a conversion, not a complete rewrite.
[1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man
2012-08-02 19:37:33 +00:00
|
|
|
|
2007-01-30 11:02:19 +00:00
|
|
|
install-dirs:
|
2008-12-06 01:57:08 +00:00
|
|
|
if test ! -d $(BINDIR) ; then $(INSTALL) -d $(BINDIR) ; fi
|
2007-01-30 11:00:54 +00:00
|
|
|
|
2008-05-18 17:16:43 +00:00
|
|
|
install-%: %$(EXESUF) install-dirs
|
2012-11-14 12:06:00 +00:00
|
|
|
$(INSTALL) -m 755 $< $(BINDIR)
|
|
|
|
|
|
|
|
install-%-strip: %$(EXESUF) install-dirs
|
|
|
|
$(INSTALL) -m 755 -s $< $(BINDIR)
|
2007-01-30 11:00:54 +00:00
|
|
|
|
2012-11-13 22:41:38 +00:00
|
|
|
install-mpv-man: install-mpv-man-en
|
2008-08-07 12:35:34 +00:00
|
|
|
|
2012-10-11 00:04:08 +00:00
|
|
|
install-mpv-man-en: DOCS/man/en/mpv.1
|
2008-12-06 01:57:08 +00:00
|
|
|
if test ! -d $(MANDIR)/man1 ; then $(INSTALL) -d $(MANDIR)/man1 ; fi
|
2012-10-11 00:04:08 +00:00
|
|
|
$(INSTALL) -m 644 DOCS/man/en/mpv.1 $(MANDIR)/man1/
|
2008-05-18 17:05:16 +00:00
|
|
|
|
2001-10-22 22:46:38 +00:00
|
|
|
uninstall:
|
2012-10-11 00:04:08 +00:00
|
|
|
$(RM) $(BINDIR)/mpv$(EXESUF)
|
|
|
|
$(RM) $(MANDIR)/man1/mpv.1
|
2012-11-13 22:41:38 +00:00
|
|
|
$(RM) $(MANDIR)/en/man1/mpv.1
|
2001-10-22 22:46:38 +00:00
|
|
|
|
2008-04-30 17:54:02 +00:00
|
|
|
clean:
|
2012-07-14 04:32:57 +00:00
|
|
|
-$(RM) $(call ADD_ALL_DIRS,/*.o /*.d /*.a /*.ho /*~)
|
manpage: merge new manpage
About a year ago, ubitux converted most of the old manpage from the
hard to maintain nroff format to reStructuredText. This was not merged
back into the master repository immediately. The argument was that the
new manpage still required work to be done. However, progress was very
slow. Even worse: the old manpage wasn't updated, because it was
scheduled for deletion, and updating it would have meant useless work.
Now the situation is that the new manpage still isn't finished, and the
old manpage is grossly out of sync with the player. This is not helpful
for users. Additionally, keeping the new manpage in a separate branch,
while the normal development repository for code had the old manpage,
was very inconvenient, because you couldn't just update the
documentation in the same commit as the code.
Even though the new manpage isn't finished yet, merging it now seems to
be the best course of action. Squash-merge the manpage development
branch [1], revision e89f5dd3f2, which branches from the mplayer2
master branch after revision 159102e0cb.
Committers:
* Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.)
* Uoti Urpala <uau@mplayer2.org> (Many updates.)
* Myself (Minor edits.)
Most text of the manpage has been directly taken from the old manpage,
because this is a conversion, not a complete rewrite.
[1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man
2012-08-02 19:37:33 +00:00
|
|
|
-$(RM) $(call ADD_ALL_DIRS,/*.o /*.a /*.ho /*~)
|
2012-10-11 00:04:08 +00:00
|
|
|
-$(RM) $(call ADD_ALL_EXESUFS,mpv)
|
2012-11-13 22:41:38 +00:00
|
|
|
-$(RM) DOCS/man/en/mpv.1
|
2012-08-01 21:21:55 +00:00
|
|
|
-$(RM) version.h
|
2012-11-09 00:06:43 +00:00
|
|
|
-$(RM) core/codecs.conf.h
|
|
|
|
-$(RM) core/input/input_conf.h
|
|
|
|
-$(RM) video/out/vdpau_template.c
|
|
|
|
-$(RM) demux/ebml_types.h demux/ebml_defs.c
|
|
|
|
-$(RM) video/out/vo_opengl_shaders.h
|
2012-08-01 21:21:55 +00:00
|
|
|
-$(RM) sub/osd_font.h
|
2006-08-03 17:31:30 +00:00
|
|
|
|
2012-07-28 16:32:26 +00:00
|
|
|
distclean: clean
|
2012-08-01 21:21:55 +00:00
|
|
|
-$(RM) config.log config.mak config.h TAGS tags
|
2001-02-24 20:28:24 +00:00
|
|
|
|
2008-01-10 18:40:26 +00:00
|
|
|
TAGS:
|
2011-06-30 20:12:48 +00:00
|
|
|
$(RM) $@; find . -name '*.[chS]' -o -name '*.asm' | xargs etags -a
|
2008-01-10 18:40:26 +00:00
|
|
|
|
|
|
|
tags:
|
2011-06-30 20:12:48 +00:00
|
|
|
$(RM) $@; find . -name '*.[chS]' -o -name '*.asm' | xargs ctags -a
|
2008-01-10 18:40:26 +00:00
|
|
|
|
2012-08-13 10:08:22 +00:00
|
|
|
osxbundle:
|
|
|
|
@TOOLS/osxbundle.py mpv
|
|
|
|
|
2010-09-20 12:07:56 +00:00
|
|
|
-include $(DEP_FILES)
|
2008-04-24 21:58:45 +00:00
|
|
|
|
2012-11-13 22:52:08 +00:00
|
|
|
.PHONY: all *install* *clean .version
|
2010-06-22 13:15:34 +00:00
|
|
|
|
|
|
|
# Disable suffix rules. Most of the builtin rules are suffix rules,
|
|
|
|
# so this saves some time on slow systems.
|
|
|
|
.SUFFIXES:
|
2010-11-03 22:50:44 +00:00
|
|
|
|
|
|
|
# If a command returns failure but changed its target file, delete the
|
|
|
|
# (presumably malformed) file. Otherwise the file would be considered to
|
|
|
|
# be up to date if make is restarted.
|
|
|
|
|
|
|
|
.DELETE_ON_ERROR:
|