From 5c4fee64eaccbbc90c170ba51cd8226576d02b68 Mon Sep 17 00:00:00 2001 From: nim Date: Sun, 21 Oct 2007 20:55:29 +0000 Subject: [PATCH] lots and lots of experimental changes (Makefile, lgc generation, new fontforge...) --- .cvsignore | 2 +- dejavu-fonts-lgc-fontconfig.conf | 180 ++++++++++++++++++++++ dejavu-fonts-makefile.patch | 246 +++++++++++++++++++++++++++++++ dejavu-fonts.spec | 102 +++++++++---- sources | 2 +- 5 files changed, 502 insertions(+), 30 deletions(-) create mode 100644 dejavu-fonts-lgc-fontconfig.conf create mode 100644 dejavu-fonts-makefile.patch diff --git a/.cvsignore b/.cvsignore index 3b758ab..55474b4 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -dejavu-sfd-2.20.tar.bz2 +dejavu-sfd-20071014-2016.tar.bz2 diff --git a/dejavu-fonts-lgc-fontconfig.conf b/dejavu-fonts-lgc-fontconfig.conf new file mode 100644 index 0000000..37363b4 --- /dev/null +++ b/dejavu-fonts-lgc-fontconfig.conf @@ -0,0 +1,180 @@ + + + + + + + + + Bitstream Vera Sans + + + DejaVu LGC Sans + + + + + Bitstream Vera Serif + + + DejaVu LGC Serif + + + + + Bitstream Vera Sans Mono + + + DejaVu LGC Sans Mono + + + + + + + DejaVu Sans + + + DejaVu LGC Sans + + + + + DejaVu Serif + + + DejaVu LGC Serif + + + + + DejaVu Sans Mono + + + DejaVu LGC Sans Mono + + + + + DejaVu Sans Light + + + DejaVu LGC Sans Light + + + + + DejaVu Sans Condensed + + + DejaVu LGC Sans Condensed + + + + + DejaVu Serif Condensed + + + DejaVu LGC Serif Condensed + + + + + + DejaVu LGC Sans + DejaVu LGC Sans Condensed + + sans-serif + + + + DejaVu LGC Serif + DejaVu LGC Serif Condensed + + serif + + + + DejaVu LGC Sans Mono + + monospace + + + + + + sans-serif + + DejaVu LGC Sans + + + + serif + + DejaVu LGC Serif + + + + monospace + + DejaVu LGC Sans Mono + + + + + + + DejaVu LGC Sans + + + 7.5 + + + false + + + + + DejaVu LGC Serif + + + 7.5 + + + false + + + + + DejaVu LGC Sans Mono + + + 7.5 + + + false + + + + + DejaVu LGC Sans Condensed + + + 7.5 + + + false + + + + + DejaVu LGC Serif Condensed + + + 7.5 + + + false + + + diff --git a/dejavu-fonts-makefile.patch b/dejavu-fonts-makefile.patch new file mode 100644 index 0000000..7a548df --- /dev/null +++ b/dejavu-fonts-makefile.patch @@ -0,0 +1,246 @@ +diff -uNr dejavu-sfd-20071014-2016.orig/generate.pe dejavu-sfd-20071014-2016/generate.pe +--- dejavu-sfd-20071014-2016.orig/generate.pe 2007-10-14 05:57:03.000000000 +0200 ++++ dejavu-sfd-20071014-2016/generate.pe 2007-10-21 22:36:13.000000000 +0200 +@@ -37,7 +37,7 @@ + if (Strcasestr ($fontname, "ExtraLight") > -1) + gen_flags = exp_gen_flags + endif +- Generate("generated/" + $fontname + ".ttf", "", gen_flags) ++ Generate( $curfont + ".ttf", "", gen_flags) + Close() + i++ + endloop +diff -uNr dejavu-sfd-20071014-2016.orig/Makefile dejavu-sfd-20071014-2016/Makefile +--- dejavu-sfd-20071014-2016.orig/Makefile 1970-01-01 01:00:00.000000000 +0100 ++++ dejavu-sfd-20071014-2016/Makefile 2007-10-21 22:35:52.000000000 +0200 +@@ -0,0 +1,230 @@ ++.PHONY: all full sans lgc ttf full-ttf sans-ttf lgc-ttf dist src-dist full-dist sans-dist lgc-dist check full-check sans-check lgc-check clean ++ ++# Release version ++VERSION = 2.21 ++# Initial source directory, assumed read-only ++SRCDIR = ./ ++# Directory where temporary files live ++TMPDIR = tmp/ ++# Directory where final files are created ++BUILDDIR = build/ ++# Directory where final archives are created ++DISTDIR = dist/ ++ ++OLDSTATUS = ./status.txt ++BLOCKS = ./Blocks.txt ++UNICODEDATA = ./UnicodeData.txt ++FC-LANG = ./fc-lang ++ ++GENERATE = ./generate.pe ++TTPOSTPROC = ./ttpostproc.pl ++LGC = ./lgc.pe ++UNICOVER = ./unicover.pl ++LANGCOVER = ./langcover.pl ++STATUS = ./status.pl ++PROBLEMS = ./problems.pl ++ ++SRC := $(wildcard $(SRCDIR)*.sfd) ++FULLSFD := $(patsubst $(SRCDIR)%.sfd, $(TMPDIR)%.sfd, $(SRC)) ++LGCSFD := $(patsubst $(SRCDIR)DejaVu%.sfd, $(TMPDIR)DejaVuLGC%.sfd, $(SRC)) ++FULLTTF := $(patsubst $(TMPDIR)%.sfd, $(BUILDDIR)%.ttf, $(FULLSFD)) ++LGCTTF := $(patsubst $(TMPDIR)%.sfd, $(BUILDDIR)%.ttf, $(LGCSFD)) ++ ++all : full sans lgc ++ ++$(TMPDIR)%.sfd: $(SRCDIR)%.sfd ++ @echo "➊ $< ❱❱❱ $@" ++ install -d $(dir $@) ++ sed "s@\(Version:\? \)\(0\.[0-9]\+\.[0-9]\+\|[1-9][0-9]*\.[0-9]\+\)@\1$(VERSION)@" $< > $@ ++ ++$(TMPDIR)DejaVuLGC%.sfd: $(TMPDIR)DejaVu%.sfd ++ @echo "➋ $< ❱❱❱ $@" ++ sed -e 's,FontName: DejaVu,FontName: DejaVuLGC,'\ ++ -e 's,FullName: DejaVu,FullName: DejaVu LGC,'\ ++ -e 's,FamilyName: DejaVu,FamilyName: DejaVu LGC,'\ ++ -e 's,"DejaVu \(\(Sans\|Serif\)*\( Condensed\| Mono\)*\( Bold\)*\( Oblique\|Italic\)*\)","DejaVu LGC \1",g' < $< > $@ ++ @echo "Stripping unwanted glyphs from $@" ++ $(LGC) $@ ++ ++$(BUILDDIR)%.ttf: $(TMPDIR)%.sfd ++ @echo "➌ $< ❱❱❱ $@" ++ install -d $(dir $@) ++ $(GENERATE) $< ++ mv $<.ttf $@ ++ $(TTPOSTPROC) $@ ++ $(RM) $@~ ++ ++$(BUILDDIR)status.txt: $(FULLSFD) ++ @echo "➍ ❱❱❱ $@" ++ install -d $(dir $@) ++ $(STATUS) $(VERSION) $(OLDSTATUS) $(FULLSFD) > $@ ++ ++$(BUILDDIR)unicover.txt: $(TMPDIR)DejaVuSans.sfd $(TMPDIR)DejaVuSerif.sfd $(TMPDIR)DejaVuMonoSans.sfd ++ @echo "➎ ❱❱❱ $@" ++ install -d $(dir $@) ++ $(UNICOVER) $(UNICODEDATA) $(BLOCKS) \ ++ $(TMPDIR)DejaVuSans.sfd "Sans" \ ++ $(TMPDIR)DejaVuSerif.sfd "Serif" \ ++ $(TMPDIR)DejaVuMonoSans.sfd "Sans Mono" > $@ ++ ++$(BUILDDIR)unicover-sans.txt: $(TMPDIR)DejaVuSans.sfd ++ @echo "➎ ❱❱❱ $@" ++ install -d $(dir $@) ++ $(UNICOVER) $(UNICODEDATA) $(BLOCKS) \ ++ $(TMPDIR)DejaVuSans.sfd "Sans" > $@ ++ ++$(BUILDDIR)unicover-lgc.txt: $(TMPDIR)DejaVuLGCSans.sfd $(TMPDIR)DejaVuLGCSerif.sfd $(TMPDIR)DejaVuLGCMonoSans.sfd ++ @echo "➎ ❱❱❱ $@" ++ install -d $(dir $@) ++ $(UNICOVER) $(UNICODEDATA) $(BLOCKS) \ ++ $(TMPDIR)DejaVuLGCSans.sfd "Sans" \ ++ $(TMPDIR)DejaVuLGCSerif.sfd "Serif" \ ++ $(TMPDIR)DejaVuLGCMonoSans.sfd "Sans Mono" > $@ ++ ++$(BUILDDIR)langcover.txt: $(TMPDIR)DejaVuSans.sfd $(TMPDIR)DejaVuSerif.sfd $(TMPDIR)DejaVuMonoSans.sfd ++ @echo "➏ ❱❱❱ $@" ++ install -d $(dir $@) ++ifeq "$(FC-LANG)" "" ++ touch $@ ++else ++ $(LANGCOVER) $(FC-LANG) \ ++ $(TMPDIR)DejaVuSans.sfd "Sans" \ ++ $(TMPDIR)DejaVuSerif.sfd "Serif" \ ++ $(TMPDIR)DejaVuMonoSans.sfd "Sans Mono" > $@ ++endif ++ ++$(BUILDDIR)langcover-sans.txt: $(TMPDIR)DejaVuSans.sfd ++ @echo "➏ ❱❱❱ $@" ++ install -d $(dir $@) ++ifeq "$(FC-LANG)" "" ++ touch $@ ++else ++ $(LANGCOVER) $(FC-LANG) \ ++ $(TMPDIR)DejaVuSans.sfd "Sans" > $@ ++endif ++ ++$(BUILDDIR)langcover-lgc.txt: $(TMPDIR)DejaVuLGCSans.sfd $(TMPDIR)DejaVuLGCSerif.sfd $(TMPDIR)DejaVuLGCMonoSans.sfd ++ @echo "➏ ❱❱❱ $@" ++ install -d $(dir $@) ++ifeq "$(FC-LANG)" "" ++ touch $@ ++else ++ $(LANGCOVER) $(FC-LANG) \ ++ $(TMPDIR)DejaVuLGCSans.sfd "Sans" \ ++ $(TMPDIR)DejaVuLGCSerif.sfd "Serif" \ ++ $(TMPDIR)DejaVuLGCMonoSans.sfd "Sans Mono" > $@ ++endif ++ ++$(TMPDIR)dejavu-fonts-$(VERSION)/: $(BUILDDIR)unicover.txt $(BUILDDIR)langcover.txt ++ @echo "➐ ❱❱❱ $@" ++ install -d -m 0755 $@ ++ install -p -m 0755 $(GENERATE) $(TTPOSTPROC) $(LGC) \ ++ $(UNICOVER) $(LANGCOVER) $(STATUS) $(PROBLEMS) \ ++ $@ ++ install -p -m 0644 Makefile $(FULLSFD) \ ++ $(BUILDDIR)unicover.txt \ ++ $(BUILDDIR)langcover.txt \ ++ $(BUILDDIR)status.txt \ ++ AUTHORS BUGS LICENSE NEWS README \ ++ $@ ++ ++$(TMPDIR)dejavu-fonts-ttf-$(VERSION)/: full ++ @echo "➐ ❱❱❱ $@" ++ install -d -m 0755 $@/{doc,ttf} ++ install -p -m 0644 $(FULLTTF) $@/ttf ++ install -p -m 0644 $(BUILDDIR)unicover.txt \ ++ $(BUILDDIR)langcover.txt \ ++ $(BUILDDIR)status.txt \ ++ AUTHORS BUGS LICENSE NEWS README \ ++ $@/doc ++ ++$(TMPDIR)dejavu-sans-ttf-$(VERSION)/: sans ++ @echo "➐ ❱❱❱ $@" ++ install -d -m 0755 $@/{doc,ttf} ++ install -p -m 0644 $(BUILDDIR)DejaVuSans.ttf $@/ttf ++ install -p -m 0644 $(BUILDDIR)unicover-sans.txt \ ++ $(BUILDDIR)langcover-sans.txt \ ++ AUTHORS BUGS LICENSE NEWS README \ ++ $@/doc ++ ++$(TMPDIR)dejavu-lgc-fonts-ttf-$(VERSION)/: lgc ++ @echo "➐ ❱❱❱ $@" ++ install -d -m 0755 $@/{doc,ttf} ++ install -p -m 0644 $(LGCTTF) $@/ttf ++ install -p -m 0644 $(BUILDDIR)unicover-lgc.txt \ ++ $(BUILDDIR)langcover-lgc.txt \ ++ AUTHORS BUGS LICENSE NEWS README \ ++ $@/doc ++ ++$(DISTDIR)%.zip: $(TMPDIR)% ++ @echo "➑ ❱❱❱ $@" ++ install -d $(dir $@) ++ (cd $(TMPDIR); zip -rv $(abspath $@) $(notdir $<)) ++ ++$(DISTDIR)%.tar.bz2: $(TMPDIR)% ++ @echo "➑ ❱❱❱ $@" ++ install -d $(dir $@) ++ (cd $(TMPDIR); tar cjvf $(abspath $@) $(notdir $<)) ++ ++%.md5: % ++ @echo "➒ ❱❱❱ $@" ++ (cd $(dir $<); md5sum -b $(notdir $<) > $(abspath $@)) ++ ++%.sha512: % ++ @echo "➒ ❱❱❱ $@" ++ (cd $(dir $<); sha512sum -b $(notdir $<) > $(abspath $@)) ++ ++full : $(FULLTTF) $(BUILDDIR)unicover.txt $(BUILDDIR)langcover.txt $(BUILDDIR)status.txt ++ ++sans : $(BUILDDIR)DejaVuSans.ttf $(BUILDDIR)unicover-sans.txt $(BUILDDIR)langcover-sans.txt ++ ++lgc : $(LGCTTF) $(BUILDDIR)unicover-lgc.txt $(BUILDDIR)langcover-lgc.txt ++ ++ttf : full-ttf sans-ttf lgc-ttf ++ ++full-ttf : $(FULLTTF) ++ ++sans-ttf: $(BUILDDIR)DejaVuSans.ttf ++ ++lgc-ttf : $(LGCTTF) ++ ++dist : src-dist full-dist sans-dist lgc-dist ++ ++src-dist : $(DISTDIR)dejavu-fonts-$(VERSION).zip \ ++ $(DISTDIR)dejavu-fonts-$(VERSION).zip.md5 \ ++ $(DISTDIR)dejavu-fonts-$(VERSION).zip.sha512 \ ++ $(DISTDIR)dejavu-fonts-$(VERSION).tar.bz2 \ ++ $(DISTDIR)dejavu-fonts-$(VERSION).tar.bz2.md5 \ ++ $(DISTDIR)dejavu-fonts-$(VERSION).tar.bz2.sha512 ++ ++full-dist : $(DISTDIR)dejavu-fonts-ttf-$(VERSION).zip \ ++ $(DISTDIR)dejavu-fonts-ttf-$(VERSION).zip.md5 \ ++ $(DISTDIR)dejavu-fonts-ttf-$(VERSION).zip.sha512 \ ++ $(DISTDIR)dejavu-fonts-ttf-$(VERSION).tar.bz2 \ ++ $(DISTDIR)dejavu-fonts-ttf-$(VERSION).tar.bz2.md5 \ ++ $(DISTDIR)dejavu-fonts-ttf-$(VERSION).tar.bz2.sha512 ++ ++sans-dist: $(DISTDIR)dejavu-sans-ttf-$(VERSION).zip \ ++ $(DISTDIR)dejavu-sans-ttf-$(VERSION).zip.md5 \ ++ $(DISTDIR)dejavu-sans-ttf-$(VERSION).zip.sha512 ++ ++lgc-dist : $(DISTDIR)dejavu-lgc-fonts-ttf-$(VERSION).zip \ ++ $(DISTDIR)dejavu-lgc-fonts-ttf-$(VERSION).zip.md5 \ ++ $(DISTDIR)dejavu-lgc-fonts-ttf-$(VERSION).zip.sha512 \ ++ $(DISTDIR)dejavu-lgc-fonts-ttf-$(VERSION).tar.bz2 \ ++ $(DISTDIR)dejavu-lgc-fonts-ttf-$(VERSION).tar.bz2.md5 \ ++ $(DISTDIR)dejavu-lgc-fonts-ttf-$(VERSION).tar.bz2.sha512 ++ ++check : full-check ++ ++full-check : $(FULLSFD) ++ $(PROBLEMS) $< ++ ++sans-check : $(TMPDIR)DejaVuSans.sfd ++ $(PROBLEMS) $< ++ ++lgc-check : $(LGCSFD) ++ $(PROBLEMS) $< ++ ++clean : ++ $(RM) -r $(TMPDIR) $(BUILDDIR) $(DISTDIR) diff --git a/dejavu-fonts.spec b/dejavu-fonts.spec index 35f17f7..4a34f89 100644 --- a/dejavu-fonts.spec +++ b/dejavu-fonts.spec @@ -4,11 +4,11 @@ %define archivename %{fontname}-sfd-%{archiveversion} -#define alphatag .20070616svn1889 +%define alphatag .20071014svn2016 #define alphatag .rc1 -#define archiveversion 20070627-1922 -%define archiveversion %{version} +%define archiveversion 20071014-2016 +#define archiveversion %{version} # Let the perl maintainer worry about Unicode.org data files @@ -16,9 +16,9 @@ %define UnicodeData %(eval "$(%{__perl} -V:privlibexp)"; echo $privlibexp)/unicore/UnicodeData.txt Name: %{fontname}-fonts -Version: 2.20 -Release: 1%{?alphatag}%{?dist} -Summary: DejaVu fonts +Version: 2.21 +Release: 0.1%{?alphatag}%{?dist} +Summary: DejaVu fonts, mature typefaces Group: User Interface/X License: Modifiable & redistributable, with naming restrictions @@ -31,6 +31,10 @@ Source2: %{name}-fontconfig-unhint-small.conf # DejaVu fontconfig setup (experimental families) Source3: %{name}-experimental-fontconfig.conf Source4: %{name}-experimental-fontconfig-unhint-small.conf +# DejaVu LGC setup +Source5: %{name}-lgc-fontconfig.conf + +Patch0: %{name}-makefile.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # Older fontforge versions will not work due to sfd format changes @@ -50,41 +54,47 @@ This package includes the typefaces the DejaVu project considers mature. %package experimental Group: User Interface/X -Summary: Experimental DejaVu typefaces +Summary: DejaVu fonts, experimental typefaces # Does not really make sense without the core typefaces Requires: %{name} = %{version}-%{release} %description experimental The DejaVu fonts are a font family based on the "Bitstream Vera" fonts release -1.10. +1.10. Its purpose is to provide a wider range of characters while maintaining +the original look and feel through the process of collaborative development. This package includes the typefaces the DejaVu project considers experimental. +%package -n %{fontname}-lgc-fonts +Group: User Interface/X +Summary: DejaVu fonts, Latin Greek Cyrillic subset +# Could possibly conflict with the main package, as there's really no sense to +# install both +#Conflicts: %{name} <= %{version}-%{release} + + +%description -n %{fontname}-lgc-fonts +The DejaVu fonts are a font family based on the "Bitstream Vera" fonts release +1.10. Its purpose is to provide a wider range of characters while maintaining +the original look and feel through the process of collaborative development. + +This package includes a subset of DejaVu typefaces limited to Latin, Greek and +Cyrillic glyphs. + + %prep %setup -q -n %{archivename} +%patch0 -p1 -b .make %build -./generate.sh -./status.pl %{version} status.txt *.sfd > status.txt.new -mv status.txt.new status.txt -./unicover.pl %{UnicodeData} %{Blocks} \ - DejaVuSans.sfd Sans \ - DejaVuSerif.sfd Serif \ - DejaVuMonoSans.sfd "Sans Mono" > unicover.txt -# We should probably also regenerate langcover.txt -# but it requires resolution of -# https://bugs.freedesktop.org/show_bug.cgi?id=6316 - -# Remove mes files or they end in %doc -rm mes*.txt +make %{?_smp_mflags} VERSION=%{version} FC-LANG="" \ + BLOCKS=%{Blocks} UNICODEDATA=%{UnicodeData} %check -# Current upstream files are full of "problems" -# Do not panic if the output is long -./problems.pl *.sfd +make check %install @@ -92,7 +102,7 @@ rm -fr %{buildroot} # Fonts install -m 0755 -d %{buildroot}%{fontdir} -install -m 0644 -p generated/*.ttf %{buildroot}%{fontdir} +install -m 0644 -p build/*.ttf %{buildroot}%{fontdir} # Fontconfig tweaks install -m 0755 -d %{buildroot}%{fontconfdir} @@ -100,6 +110,7 @@ install -m 0644 -p %{SOURCE1} %{buildroot}%{fontconfdir}57-%{fontname}.conf install -m 0644 -p %{SOURCE2} %{buildroot}%{fontconfdir}20-unhint-small-%{fontname}.conf install -m 0644 -p %{SOURCE3} %{buildroot}%{fontconfdir}61-%{fontname}-experimental.conf install -m 0644 -p %{SOURCE4} %{buildroot}%{fontconfdir}20-unhint-small-%{fontname}-experimental.conf +install -m 0644 -p %{SOURCE5} %{buildroot}%{fontconfdir}59-%{fontname}-lgc.conf %clean @@ -134,9 +145,25 @@ if [ "$1" = "0" ]; then fi +%post -n %{fontname}-lgc-fonts +if [ -x %{_bindir}/fc-cache ]; then + %{_bindir}/fc-cache %{fontdir} +fi + + +%postun -n %{fontname}-lgc-fonts +if [ "$1" = "0" ]; then + if [ -x %{_bindir}/fc-cache ]; then + %{_bindir}/fc-cache %{fontdir} + fi +fi + + + %files %defattr(0644,root,root,0755) -%doc *.txt AUTHORS BUGS LICENSE NEWS README +%doc AUTHORS BUGS LICENSE NEWS README +%doc build/unicover.txt build/langcover.txt build/status.txt %config(noreplace) %{fontconfdir}20-unhint-small-%{fontname}.conf %config(noreplace) %{fontconfdir}57-%{fontname}.conf @@ -145,7 +172,8 @@ fi %{fontdir}/*.ttf %exclude %{fontdir}/DejaVu*Condensed*.ttf %exclude %{fontdir}/DejaVu*ExtraLight*.ttf -%exclude %{fontdir}/DejaVuSerif-*Italic.ttf +%exclude %{fontdir}/DejaVuSerif*Italic.ttf +%exclude %{fontdir}/DejaVuLGC*.ttf %files experimental @@ -156,10 +184,28 @@ fi %{fontdir}/DejaVu*Condensed*.ttf %{fontdir}/DejaVu*ExtraLight*.ttf -%{fontdir}/DejaVuSerif-*Italic.ttf +%{fontdir}/DejaVuSerif*Italic.ttf + + +%files -n %{fontname}-lgc-fonts +%defattr(0644,root,root,0755) +%doc AUTHORS BUGS LICENSE NEWS README +%doc build/unicover-lgc.txt build/langcover-lgc.txt + +%config(noreplace) %{fontconfdir}59-%{fontname}-lgc.conf + +%dir %{fontdir} +%{fontdir}/DejaVuLGC*.ttf %changelog +* Sun Oct 21 2007 +☢ 2.21-0.1.20071014svn2016 +⚠ Very experimental version to test major changes: + ✓ new fontforge version + ✓ use of a real makefile at last + ✓ replacing standalone lgc package with subpackage generated with the rest + * Tue Sep 18 2007 Nicolas Mailhot ☺ 2.20-1 ✓ 2.20 final diff --git a/sources b/sources index aa13b72..5cf274f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9633569289671481b328becd09f0e72b dejavu-sfd-2.20.tar.bz2 +c4c2b5a8f61af0ac9385575226aa40c1 dejavu-sfd-20071014-2016.tar.bz2