- Generate encodings.dir files in the encodings dirs with mkfontscale from
the base fonts package post install script, to work around bug (#173875)
This commit is contained in:
parent
1d77c34d19
commit
b66234b2c3
@ -30,7 +30,7 @@
|
||||
Summary: X.Org X11 fonts
|
||||
Name: xorg-x11-fonts
|
||||
Version: 7.0
|
||||
Release: 1
|
||||
Release: 2
|
||||
License: Various licenses
|
||||
Group: User Interface/X
|
||||
URL: http://www.x.org
|
||||
@ -103,8 +103,8 @@ X.Org X Window System fonts
|
||||
%package base
|
||||
Summary: Base fonts required by the X Window System.
|
||||
Group: User Interface/X
|
||||
Requires(post): mkfontdir, fontconfig, chkfontpath
|
||||
Requires(postun): mkfontdir, fontconfig
|
||||
Requires(post): mkfontdir, mkfontscale, fontconfig, chkfontpath
|
||||
Requires(postun): mkfontdir, mkfontscale, fontconfig, chkfontpath
|
||||
# Required so upgrades work, since base fonts moved here from main pkg
|
||||
Conflicts: XFree86 <= 4.2.0-3.1
|
||||
# The fonts.* files from truetype and syriac moved from those pkgs to base
|
||||
@ -406,25 +406,29 @@ Contains a set of Cyrillic fonts.
|
||||
%build
|
||||
for dir in $(find . -maxdepth 1 -type d -name '[a-z]*-[0-9]*' | sort | sed -e 's#\./##g') ; do
|
||||
pushd $dir
|
||||
# FIXME: Yes, this perl hack is fairly ugly, but beats the heck out of
|
||||
# making a patch that patches 35 or so configure.ac files and maintaining
|
||||
# it for an indefinite amount of time. Hopefully my solution here will
|
||||
# get considered to be included in upstream 7.1 release in which case I'll
|
||||
# turn it into a series of diffs instead and submit it. For now tho, perl
|
||||
# is my friend. -- mharris
|
||||
perl -p -i -e 's#(^DEFAULT(_|_OTF|_TTF)FONTDIR=)\${libdir}/X11/fonts#\1\$(pkg-config --variable=fontdir fontutil)#' configure.ac
|
||||
autoconf
|
||||
#3,4,6,10,11,12,13,16
|
||||
%configure \
|
||||
--disable-iso8859-3 \
|
||||
--disable-iso8859-4 \
|
||||
--disable-iso8859-6 \
|
||||
--disable-iso8859-10 \
|
||||
--disable-iso8859-11 \
|
||||
--disable-iso8859-12 \
|
||||
--disable-iso8859-13 \
|
||||
--disable-iso8859-16
|
||||
# --prefix=$RPM_BUILD_ROOT/usr --libdir=$RPM_BUILD_ROOT%{_x11fontdirprefix} --datadir=$RPM_BUILD_ROOT%{_datadir}
|
||||
case $dir in
|
||||
encodings-*)
|
||||
perl -p -i -e 's#(^DEFAULT(_|_OTF|_TTF)FONTDIR=)\${libdir}/X11/fonts#\1\$(pkg-config --variable=fontdir fontutil)#' configure.ac
|
||||
autoconf
|
||||
%configure
|
||||
;;
|
||||
|
||||
*)
|
||||
# FIXME: Yes, this perl hack is fairly ugly, but beats the heck out of
|
||||
# making a patch that patches 35 or so configure.ac files and maintaining
|
||||
# it for an indefinite amount of time. Hopefully my solution here will
|
||||
# get considered to be included in upstream 7.1 release in which case I'll
|
||||
# turn it into a series of diffs instead and submit it. For now tho, perl
|
||||
# is my friend. -- mharris
|
||||
perl -p -i -e 's#(^DEFAULT(_|_OTF|_TTF)FONTDIR=)\${libdir}/X11/fonts#\1\$(pkg-config --variable=fontdir fontutil)#' configure.ac
|
||||
autoconf
|
||||
%configure \
|
||||
--disable-iso8859-3 --disable-iso8859-4 --disable-iso8859-6 \
|
||||
--disable-iso8859-10 --disable-iso8859-11 --disable-iso8859-12 \
|
||||
--disable-iso8859-13 --disable-iso8859-16
|
||||
;;
|
||||
esac
|
||||
|
||||
make
|
||||
popd
|
||||
done
|
||||
@ -439,7 +443,6 @@ for dir in $(find . -maxdepth 1 -type d -name '[a-z]*-[0-9]*' | sort | sed -e 's
|
||||
# specification of the 'fontdir' variable, instead of it being
|
||||
# relative to libdir.
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
# libdir=%{_x11fontdirprefix}
|
||||
popd
|
||||
done
|
||||
|
||||
@ -459,7 +462,6 @@ done
|
||||
chmod 0644 $FONTDIR/$subdir/{encodings,fonts}.dir
|
||||
|
||||
# Create bogus fonts.cache-* files
|
||||
# touch $FONTDIR/$subdir/fonts.cache
|
||||
# Create somewhat future-proofed ghosted fonts.cache-* files so that
|
||||
# the font packages own these files.
|
||||
for fcver in $(seq 1 9) ; do
|
||||
@ -471,24 +473,6 @@ done
|
||||
|
||||
# Remove unwanted fonts
|
||||
{
|
||||
# Remove unwanted 100dpi,75dpi ISO8859-{3,4,10,13} fonts
|
||||
%if 0
|
||||
{
|
||||
for dir in $RPM_BUILD_ROOT%{_x11fontdir}/{100dpi,75dpi} ; do
|
||||
find $dir -iregex ".*-ISO8859-\(3\|4\|10\|13\)\.pcf.*" | xargs rm --
|
||||
done
|
||||
}
|
||||
# font-misc-misc (Remove unwanted ISO8859-{3,4,6,10,11,12,13,16} fonts
|
||||
# NOTE: Although we don't ship ISO8859-{5,7,8} encodings of most fonts in
|
||||
# monolithic X, we do ship misc-fixed in ISO8859-{5,7,8}, so we'll keep
|
||||
# them in modular too.
|
||||
{
|
||||
for dir in $RPM_BUILD_ROOT%{_x11fontdir}/misc ; do
|
||||
find $dir -iregex ".*-ISO8859-\(3\|4\|6\|10\|11\|12\|13\|16\)\.pcf.*" | xargs rm --
|
||||
done
|
||||
}
|
||||
%endif
|
||||
# || : &> /dev/null
|
||||
# font-misc-meltho (syriac fonts)
|
||||
{
|
||||
# Remove fonts which contain bad codepoints, as documented in bug #97591
|
||||
@ -511,6 +495,20 @@ done
|
||||
|
||||
%post base
|
||||
{
|
||||
ENCODINGSDIR=%{_datadir}/X11/fonts/encodings
|
||||
# Generate the encodings.dir files in the encodings directories during
|
||||
# install time to work around bugs in upstream Makefiles. This is more
|
||||
# consistent with how we generate fonts.dir files anyway. Fixes bugs:
|
||||
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=173875
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=6028
|
||||
{
|
||||
for each in "${ENCODINGSDIR}" "${ENCODINGSDIR}/large" ; do
|
||||
pushd $each &> /dev/null
|
||||
mkfontscale -n -e "${each}"
|
||||
popd &> /dev/null
|
||||
done
|
||||
}
|
||||
|
||||
FONTDIR=%{_x11fontdir}/misc
|
||||
mkfontdir $FONTDIR
|
||||
|
||||
@ -541,7 +539,8 @@ done
|
||||
# /usr/sbin/chkfontpath -qr %{_x11fontdir}/misc
|
||||
|
||||
fc-cache $FONTDIR
|
||||
} || :
|
||||
}
|
||||
# || :
|
||||
# &> /dev/null || :
|
||||
|
||||
%postun base
|
||||
@ -937,10 +936,10 @@ rm -rf $RPM_BUILD_ROOT
|
||||
# encodings
|
||||
%dir %{_datadir}/X11/fonts/encodings
|
||||
%dir %{_datadir}/X11/fonts/encodings/large
|
||||
%{_datadir}/X11/fonts/encodings/*.enc*
|
||||
%{_datadir}/X11/fonts/encodings/encodings.dir
|
||||
%{_datadir}/X11/fonts/encodings/large/*.enc*
|
||||
%{_datadir}/X11/fonts/encodings/large/encodings.dir
|
||||
%{_datadir}/X11/fonts/encodings/*.enc.gz
|
||||
%ghost %verify(not md5 size mtime) %{_datadir}/X11/fonts/encodings/encodings.dir
|
||||
%{_datadir}/X11/fonts/encodings/large/*.enc.gz
|
||||
%ghost %verify(not md5 size mtime) %{_datadir}/X11/fonts/encodings/large/encodings.dir
|
||||
%ghost %verify(not md5 size mtime) %{_x11fontdir}/misc/encodings.dir
|
||||
%ghost %verify(not md5 size mtime) %{_x11fontdir}/misc/fonts.dir
|
||||
# NOTE: Xorg supplies this fonts.alias, so it is not ghosted
|
||||
@ -1524,6 +1523,10 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%ghost %verify(not md5 size mtime) %{_x11fontdir}/cyrillic/fonts.cache-*
|
||||
|
||||
%changelog
|
||||
* Fri Feb 24 2006 Mike A. Harris <mharris@redhat.com> 7.0-2
|
||||
- Generate encodings.dir files in the encodings dirs with mkfontscale from the
|
||||
base fonts package post install script, to work around bug (#173875)
|
||||
|
||||
* Thu Jan 26 2006 Mike A. Harris <mharris@redhat.com> 7.0-1
|
||||
- Bumped artificial package version to 7.0, to indicate that the font tarballs
|
||||
are all from X11R7.0.
|
||||
|
Loading…
Reference in New Issue
Block a user