annotate DOCS/tech/binary-packaging.txt @ 15745:3d712cf823c0

Sync with 1.1010
author gpoirier
date Fri, 17 Jun 2005 11:31:25 +0000
parents 37e1dc7e7107
children d771b3d98d9d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
1 ________________________________________________
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
2 How to make good binary package(s) of MPlayer?
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
4 by Dominik 'Rathann' Mierzejewski
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
5
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
6 About this document
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
7 ~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
8
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
9 With the release of MPlayer 0.90pre9, all licensing issues have been
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
10 eliminated and all code is licensed under the GPL, which allows
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
11 independent packagers to create and distribute binary packages. At first,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
12 this was discouraged by some of the developers, but the users' demand for
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
13 ready-to-use binary packages convinced some people to create them.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
14 Unfortunately, many currently available packages are crippled, include
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
15 their own obsolete config files or are mispackaged in some other way. This
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
16 document aims to establish a common set of packaging guidelines so that
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
17 proper official binary packages for various Linux distributions and other
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
18 operating systems can be maintained.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
19
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
20
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
21 Conventions
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
22 ~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
23 Whenever you see "MUST", it means that following the mentioned guideline
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
24 is required. Whenever you see "SHOULD", it means that following the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
25 guideline is highly recommended, but not required.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
26
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
27
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
28 Minimum feature set
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
29 ~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
30 Due to MPlayer design, it is impossible to simply include all possible
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
31 features and enable or disable them at runtime. That is why packagers
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
32 SHOULD avoid "dependency hell" by retaining a reasonable, limited default
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
33 feature set. After some discussion with other developers, we agreed that
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
34 the following features MUST be included in any official binary package:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
35
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
36 * audio/video output
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
37 - fbdev
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
38 - JPEG/PNG/TGA
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
39 - (X)MGA
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
40 - OSS
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
41 - SDL
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
42 - tdfxfb
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
43 - (c/x)vidix
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
44 - X11/Xvideo
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
45
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
46 * codecs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
47 - FAAD
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
48 - libavcodec(internal)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
49 - native codecs (libmpeg2/liba52/mp3lib)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
50 - Ogg Vorbis support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
51 - RealPlayer codecs support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
52 - Win32/VfW/DShow/QT codecs support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
53 - XAnim codecs support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
54
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
55 * general:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
56 - default font
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
57 - FreeType fonts support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
58 - HTML documentation
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
59 - large file support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
60 - man page(s)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
61
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
62 * input/demuxers:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
63 - DVD(mpdvdkit2)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
64 - streaming
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
65 - Matroska(internal)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
66 - (S)VCD
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
67 - tv(v4l/v4l2)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
68
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
69 There is great demand for the GUI, so it SHOULD be included, but it MUST
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
70 come as a separate package (see Tips and Tricks for details).
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
71
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
72 Including other features, like LIVE.COM streaming or JACK support, is
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
73 acceptable. They SHOULD, however, be build-time configurable, with the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
74 default build configuration containing the above set.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
75
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
76 It seems there are some packages in the wild which lack included docs.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
77 This is VERY BAD, as it forces users to look for outside support when most
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
78 of the common problems are easy to solve and are already described in the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
79 docs, thus increasing the number of repeated posts in MPlayer mailing
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
80 lists. Binary packages MUST include both the man page and HTML
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
81 documentation. Translated versions SHOULD be included, even if your
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
82 package management system does not provide specific support for
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
83 internationalization.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
84
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
85 Libavcodec MUST always be in the latest development version and it SHOULD
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
86 be linked statically into the mplayer binary, because MPlayer requires a
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
87 recent libavcodec snapshot. While some distributions provide FFmpeg
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
88 packages containing a shared libavcodec library, they are often based on the
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
89 last "release" version of FFmpeg, which is quite old and will usually not
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
90 function correctly with MPlayer.
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
91
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
92
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
93 File locations
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
94 ~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
95 In general, you SHOULD follow your distribution guidelines. For example,
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
96 for Red Hat and Fedora RPMs I am using FHS-compliant paths:
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
97
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
98 /etc/mplayer/ system-wide configs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
99 /usr/bin/ binaries
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
100 /usr/lib/codecs/ binary codecs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
101 /usr/share/doc/mplayer-version/ docs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
102 /usr/share/man/man1/ man page
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
103 /usr/share/man/XX/man1/ translated man page
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
104 /usr/share/mplayer/font/ fonts
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
105 /usr/share/mplayer/Skin/ GUI skins
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
106
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
107 You MUST never include the codecs.conf file in your package. It is useful
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
108 only for development purposes and often causes obscure problems for users.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
109
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
110
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
111 One package or many packages?
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
112 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
113 Although it is tempting to simply provide a single all-in-one package,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
114 I think it is best to split MPlayer into several packages. It may be
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
115 a little more troublesome for less clueful users, but it allows you to
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
116 install only what you need. This is the layout I am using for Red Hat and
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
117 Fedora RPMs:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
118
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
119 mencoder contains MEncoder binary (mencoder)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
120 mplayer contains MPlayer binary without GUI (mplayer),
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
121 config files, man pages and documentation;
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
122 required by mplayer-gui
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
123 mplayer-codecs-* contain binary codecs available from MPlayer's site
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
124 mplayer-font-* contain various bitmap fonts for OSD (obsolete)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
125 mplayer-gui contains MPlayer binary with GUI (gmplayer);
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
126 requires default skin package
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
127 mplayer-skin-* contain various MPlayer GUI skins
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
128 mplayer-vidix contains VIDIX support library for MPlayer
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
129 mplayer-vidix-* contain VIDIX drivers for specific cards, one per package
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
130
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
131 There is no strict policy for now, just use your common sense.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
132
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
133
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
134 Compilation
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
135 ~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
136 While it is acceptable to provide packages optimized for specific CPUs,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
137 you MUST provide at least one "lowest common denominator" package set
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
138 that will work on all CPUs. This means it MUST be configured with the
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
139 --enable-runtime-cpudetection option. Building for specific CPUs requires
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
140 disabling this option, but try to make sure that users cannot accidentally
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
141 install a package not suitable for their CPU. With RPMs, for example, this
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
142 is handled automatically, when building with the "--target arch" rpm option.
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
143
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
144 Compiler flags MUST be set to either configure-generated CFLAGS or something
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
145 as close to them as possible.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
146
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
147 Users MUST be able to rebuild your source package without hand-editing on
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
148 any system with the same distribution installed. Remember to disable
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
149 (--disable-xxx) any optional features, because MPlayer's configure script
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
150 autodetects most of them. This ensures that binary package builds are
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
151 deterministic -- that is, provided they have at least the required
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
152 development packages installed, two different people using the same
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
153 distribution will get binaries with the same dependencies.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
154
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
155 You SHOULD provide an option to rebuild the package with full debug
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
156 information enabled (by passing --enable-debug=3 to ./configure and
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
157 disabling any stripping of binaries and libs during the build process).
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
158 For example my source RPM can be rebuilt with a "--with debug" option, which
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
159 does just that, making it easier to supply gdb information along with any
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
160 bug reports, while retaining all benefits of using binary packages.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
161
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
162
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
163 Modifications
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
164 ~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
165
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
166 You MUST modify `mplayer -v` output so that it is clear that a user is
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
167 using your binary package, by patching version.h and modifying the version
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
168 string inside. Suggested convention is to include distribution name and,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
169 possibly, the signature of the packager or the repository. For example:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
170
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
171 original:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
172 MPlayer 1.0pre5-3.3.2 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
173 modified:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
174 MPlayer 1.0pre5-Fedora-GS-3.3.2 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
175 MPlayer 1.0pre5-Mandrake-PLF-3.2.3 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
176 MPlayer 1.0pre5-Solaris-3.4.0 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
177
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
178
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
179 Tips and tricks
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
180 ~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
181 In my package layout, mplayer and mplayer-gui can be installed at the same
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
182 time, because they contain differently named binaries and there is no
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
183 conflict. The trick is to build MPlayer once with --enable-gui, rename the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
184 resulting binary to "gmplayer" and then build it again, without GUI, but
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
185 keeping the rest of ./configure options the same.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
186
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
187 To provide man pages for all MPlayer suite binaries (mplayer, gmplayer,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
188 mencoder), you can use man-links instead of regular symbolic links.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
189 Creating a mencoder man page linked to mplayer is as simple as:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
190
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
191 echo ".so mplayer.1" >> mencoder.1
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
192
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
193 A similar trick can be used for "man gmplayer". This avoids problems with
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
194 gzipped man pages and symbolic links.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
195
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
196 Newer Red Hat and Fedora distributions keep localized man pages encoded in
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
197 UTF-8. If your distribution does the same, make sure you convert MPlayer's
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
198 translated man pages to UTF-8 so that man mplayer works for locales other
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
199 than English.