XpConfig wants to install fonts and run mkfontscale on the font directories.
mkfontscale is not built in this case.
Created attachment 751 [details] [review]
Created attachment 764 [details] [review]
Don't run mkfontscale if BuildServersOnly
How about just not running mkfontscale when BuildServersOnly is YES?
(see patch for details)
I've just tested this patch here and it works fine. I'll go ahead and check it
in shortly. Matthieu, if this works for you as well, please close the bug. Thanks!
Ok, your patch fixes the problem too.
I wonder if it makes sense to install these fonts outside of the standard
font directory though, but this is left for later.
First comment while reading the patch:
#ifdef'ing out the font/ dirs in the model-config areas isn't the correct
solution. These files (which aren't real fonts, the *.pmf files work more like
*.afm files (e.g. metrics information)) are part of the model-configs and cannot
be removed conditionally - you are simply removing the information about the
Matthieu Herrb wrote:
> I wonder if it makes sense to install these fonts outside of the standard
> font directory though, but this is left for later.
Because this aren't real fonts. These files are font metrics information which
are conditionnally added to the list of fonts when the matching printer model is
> XpConfig wants to install fonts and run mkfontscale on the font directories.
> mkfontscale is not built in this case.
The correct fix may be simply to build "mkfontscale", use it to generate the
fonts.dir index but don't install "mkfontscale".
Would that work ?
(In reply to comment #7)
> The correct fix may be simply to build "mkfontscale", use it to generate the
> fonts.dir index but don't install "mkfontscale".
> Would that work ?
I think that would work as well.
Please provide a patch, and I will verify/commit it.
The result of make install after a build with BuildServersOnly=YES doesn't work
alone. Afaik the main X server still needs the 'fixed' and 'cursor' fonts which
are not build nor installed by this build.
Requiring that the font metrics are built and installed separatly when doing a
build with XServersOnly=YES is not a problem.
And about installing those metrics, the current build system puts them in
/etc/X11/xserver, which imho is wrong. These data are not supposed to be
customized on a per machine basis. So they should better stay in
Matthieu, that is an excellent point. Should anyone reasonably expect that an
install from BuildServersOnly (with nothing else on the system) to work?
The BuildServersOnly test for this release was only a build test -- it was not
an install test. The only install tests were (1) no host.def file and (2) a
host.def file with ProjectRoot defined and NothingOutsideProjectRoot=YES.
I feel that the BuildServersOnly is a facility to speed up the build/test cycle
for people doing development. So having make install not installing all
required components to run the server is not a problem, since developpers will
have these components installed by some other mean.
If one sees BuildServersOnly as a step to make a modular distribution, then
things may be different and than it may need to install every component required
to run the servers, including a minimal set of fonts (and metrics), xkbcomp and
its data files...
I do not (and I seriously doubt others would) consider BuildServersOnly as a
step toward modularization, and for this release, I do not want to hold it up
for a solution that would make a BuildServersOnly install fully useable as that
would involve a significant amount of work.
This was discussed on today's release wranglers call and if any new patches are
available by the deadline today at 6pm EDT, then they can be considered.
Otherwise, we will go with the workaround that we currently have.
Taking bug myself...
Created attachment 809 [details] [review]
Proposed patch for 2004-09-01-trunk
The patch backs out the non-working solution from attachment 764 [details] [review] (well, it
wallpapers over the original problem but ruins the model-config metrics data...
;-/) and tries to solve the issue via building mkfontscale (but don't install
it) that it can be used later to build the model-config metrics index files
(and "fixed" and "cursor" fonts on demand, too).
I am not sure whether this can be done better... the |ComplexProgramTarget()|
rule doesn't have a flag to "not" install an application so I am simply hacking
around that detail via #undef'ing the |Install*| rules.
Comment on attachment 809 [details] [review]
Proposed patch for 2004-09-01-trunk
Requesting r= ...
I've looked at this patch and thought about it for a while. I really don't
think it is the right way to handle the BuildServersOnly install case. As noted
in earlier comments, while the BuildServersOnly install should not fail, the
installed code is not expected to work properly unless you are installing over
the top of another full build install.
The fix suggested uses some internal knowledge of how Imake works to get around
installing mkfontscale, which is very kludgy, so I do not think this the correct
way to handle it.
Also, I don't think it is correct to install the fonts just for the Xprt server
when the other X servers (Xorg, Xvfb, etc.) wont work without their fonts
installed either. We could install a minimal set of fonts for the other servers
to work properly, but I do not think that is good idea.
As we are extremely close to the release, I think we should stick with the
original solution since that corrected the problem in a very simple way, so I'm
going to close this bug. A new bug can be opened against the next release to
continue to search for a better solution.
It may be better to turn off the building of the Xp config files completely
instead of generating a castrated form which does not work - the current form is