Home | History | Annotate | Line # | Download | only in generate
      1 # Copyright (C) 1989-2000, 2002, 2003 Free Software Foundation, Inc.
      2 #      Written by James Clark (jjc (at] jclark.com)
      3 #
      4 # This file is part of groff.
      5 #
      6 # groff is free software; you can redistribute it and/or modify it under
      7 # the terms of the GNU General Public License as published by the Free
      8 # Software Foundation; either version 2, or (at your option) any later
      9 # version.
     10 #
     11 # groff is distributed in the hope that it will be useful, but WITHOUT ANY
     12 # WARRANTY; without even the implied warranty of MERCHANTABILITY or
     13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
     14 # for more details.
     15 #
     16 # You should have received a copy of the GNU General Public License along
     17 # with groff; see the file COPYING.  If not, write to the Free Software
     18 # Foundation, 51 Franklin St - Fifth Floor, Boston, MA 02110-1301, USA.
     19 
     20 # This is set up so you can do
     21 #   make -f generate/Makefile
     22 # in the parent directory of this directory.
     23 
     24 # The following line is required for DOS/Windows systems, since
     25 # this Makefile needs a Unixy shell to run.
     26 SHELL = /bin/sh
     27 
     28 # Directory containing AFM files.  Must not be current directory.
     29 # Either long names (eg Times-Roman.afm) or short names (eg timesr.afm)
     30 # may be used. See the afmname script.
     31 afmdir=/usr/local/lib/afm
     32 srcdir=generate
     33 
     34 SPECIALFONTS=S
     35 DINGBATSFONTS=ZD ZDR
     36 GREEKFONTS=SS
     37 TEXTFONTS=AB ABI AI AR BMB BMBI BMI BMR CB CBI CI CR HB HBI HI HR HNB HNBI \
     38   HNI HNR NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI
     39 
     40 FONTS=$(TEXTFONTS) $(SPECIALFONTS) $(GREEKFONTS) $(DINGBATSFONTS) EURO
     41 
     42 DESC=$(srcdir)/../DESC
     43 AFMTODIT=afmtodit -d$(DESC)
     44 IFLAG=-i 50
     45 RFLAG=-i 0 -m
     46 NOLIGFLAG=-n
     47 TEXTENC=$(srcdir)/../text.enc
     48 EFLAG=-e $(TEXTENC)
     49 TEXTMAP=$(srcdir)/textmap
     50 AFMNAME=$(srcdir)/afmname
     51 
     52 all: $(FONTS)
     53 
     54 TR:
     55 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
     56 	`$(AFMNAME) $(afmdir)/Times-Roman.afm` $(TEXTMAP) $@
     57 
     58 TB:
     59 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
     60 	`$(AFMNAME) $(afmdir)/Times-Bold.afm` $(TEXTMAP) $@
     61 
     62 TI:
     63 	$(AFMTODIT) $(EFLAG) $(IFLAG) -a 7 \
     64 	`$(AFMNAME) $(afmdir)/Times-Italic.afm` $(TEXTMAP) $@
     65 
     66 TBI:
     67 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
     68 	`$(AFMNAME) $(afmdir)/Times-BoldItalic.afm` $(TEXTMAP) $@
     69 
     70 HR:
     71 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
     72 	`$(AFMNAME) $(afmdir)/Helvetica.afm` $(TEXTMAP) $@
     73 
     74 HB:
     75 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
     76 	`$(AFMNAME) $(afmdir)/Helvetica-Bold.afm` $(TEXTMAP) $@
     77 
     78 HI:
     79 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
     80 	`$(AFMNAME) $(afmdir)/Helvetica-Oblique.afm` $(TEXTMAP) $@
     81 
     82 HBI:
     83 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
     84 	`$(AFMNAME) $(afmdir)/Helvetica-BoldOblique.afm` $(TEXTMAP) $@
     85 
     86 CR:
     87 	$(AFMTODIT) $(NOLIGFLAG) $(EFLAG) $(RFLAG) \
     88 	`$(AFMNAME) $(afmdir)/Courier.afm` $(TEXTMAP) $@
     89 
     90 CB:
     91 	$(AFMTODIT) $(NOLIGFLAG) $(EFLAG) $(RFLAG) \
     92 	`$(AFMNAME) $(afmdir)/Courier-Bold.afm` $(TEXTMAP) $@
     93 
     94 CI:
     95 	$(AFMTODIT) $(NOLIGFLAG) $(EFLAG) $(IFLAG) \
     96 	`$(AFMNAME) $(afmdir)/Courier-Oblique.afm` $(TEXTMAP) $@
     97 
     98 CBI:
     99 	$(AFMTODIT) $(NOLIGFLAG) $(EFLAG) $(IFLAG) \
    100 	`$(AFMNAME) $(afmdir)/Courier-BoldOblique.afm` $(TEXTMAP) $@
    101 
    102 PR:
    103 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    104 	`$(AFMNAME) $(afmdir)/Palatino-Roman.afm` $(TEXTMAP) $@
    105 
    106 PB:
    107 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    108 	`$(AFMNAME) $(afmdir)/Palatino-Bold.afm` $(TEXTMAP) $@
    109 
    110 PI:
    111 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    112 	`$(AFMNAME) $(afmdir)/Palatino-Italic.afm` $(TEXTMAP) $@
    113 
    114 PBI:
    115 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    116 	`$(AFMNAME) $(afmdir)/Palatino-BoldItalic.afm` $(TEXTMAP) $@
    117 
    118 NR:
    119 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    120 	`$(AFMNAME) $(afmdir)/NewCenturySchlbk-Roman.afm` $(TEXTMAP) $@
    121 
    122 NB:
    123 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    124 	`$(AFMNAME) $(afmdir)/NewCenturySchlbk-Bold.afm` $(TEXTMAP) $@
    125 
    126 NI:
    127 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    128 	`$(AFMNAME) $(afmdir)/NewCenturySchlbk-Italic.afm` $(TEXTMAP) $@
    129 
    130 NBI:
    131 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    132 	`$(AFMNAME) $(afmdir)/NewCenturySchlbk-BoldItalic.afm` $(TEXTMAP) $@
    133 
    134 BMR:
    135 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    136 	`$(AFMNAME) $(afmdir)/Bookman-Light.afm` $(TEXTMAP) $@
    137 
    138 BMB:
    139 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    140 	`$(AFMNAME) $(afmdir)/Bookman-Demi.afm` $(TEXTMAP) $@
    141 
    142 BMI:
    143 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    144 	`$(AFMNAME) $(afmdir)/Bookman-LightItalic.afm` $(TEXTMAP) $@
    145 
    146 BMBI:
    147 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    148 	`$(AFMNAME) $(afmdir)/Bookman-DemiItalic.afm` $(TEXTMAP) $@
    149 
    150 AR:
    151 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    152 	`$(AFMNAME) $(afmdir)/AvantGarde-Book.afm` $(TEXTMAP) $@
    153 
    154 AB:
    155 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    156 	`$(AFMNAME) $(afmdir)/AvantGarde-Demi.afm` $(TEXTMAP) $@
    157 
    158 AI:
    159 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    160 	`$(AFMNAME) $(afmdir)/AvantGarde-BookOblique.afm` $(TEXTMAP) $@
    161 
    162 ABI:
    163 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    164 	`$(AFMNAME) $(afmdir)/AvantGarde-DemiOblique.afm` $(TEXTMAP) $@
    165 
    166 HNR:
    167 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    168 	`$(AFMNAME) $(afmdir)/Helvetica-Narrow.afm` $(TEXTMAP) $@
    169 
    170 HNB:
    171 	$(AFMTODIT) $(EFLAG) $(RFLAG) \
    172 	`$(AFMNAME) $(afmdir)/Helvetica-Narrow-Bold.afm` $(TEXTMAP) $@
    173 
    174 HNI:
    175 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    176 	`$(AFMNAME) $(afmdir)/Helvetica-Narrow-Oblique.afm` $(TEXTMAP) $@
    177 
    178 HNBI:
    179 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    180 	`$(AFMNAME) $(afmdir)/Helvetica-Narrow-BoldOblique.afm` $(TEXTMAP) $@
    181 
    182 ZCMI:
    183 	$(AFMTODIT) $(EFLAG) $(IFLAG) \
    184 	`$(AFMNAME) $(afmdir)/ZapfChancery-MediumItalic.afm` $(TEXTMAP) $@
    185 
    186 ZD:
    187 	$(AFMTODIT) -s $(RFLAG) \
    188 	`$(AFMNAME) $(afmdir)/ZapfDingbats.afm` $(srcdir)/dingbats.map $@
    189 
    190 SS: $(srcdir)/symbolsl.afm
    191 	$(AFMTODIT) -s -x $(IFLAG) \
    192 	$(srcdir)/symbolsl.afm $(srcdir)/lgreekmap $@
    193 
    194 S: symbol.afm
    195 	$(AFMTODIT) -s $(RFLAG) symbol.afm symbolmap $@
    196 
    197 ZDR: zapfdr.afm
    198 	$(AFMTODIT) -s $(RFLAG) zapfdr.afm $(srcdir)/dingbats.rmap $@
    199 
    200 # the map is just a dummy
    201 EURO: freeeuro.afm
    202 	$(AFMTODIT) $(RFLAG) freeeuro.afm symbolmap $@
    203 
    204 freeeuro.afm freeeuro.pfa: generate/freeeuro.sfd
    205 	pfaedit -script generate/sfdtopfa.pe generate/freeeuro.sfd
    206 
    207 symbol.afm: $(srcdir)/symbol.sed
    208 	-rm -f $@
    209 	sed -f $(srcdir)/symbol.sed `$(AFMNAME) $(afmdir)/Symbol.afm` >$@
    210 
    211 zapfdr.afm:
    212 	-rm -f $@
    213 	sed -e '/^FontName /s/ZapfDingbats/ZapfDingbats-Reverse/' \
    214 	  `$(AFMNAME) $(afmdir)/ZapfDingbats.afm` >$@
    215 
    216 ZD: $(srcdir)/dingbats.map
    217 ZDR: $(srcdir)/dingbats.rmap
    218 $(TEXTFONTS): $(TEXTMAP) $(TEXTENC)
    219 $(SPECIALFONTS): symbolmap
    220 $(GREEKFONTS): $(srcdir)/lgreekmap
    221 $(FONTS): $(DESC)
    222 
    223 symbolmap: $(TEXTMAP) $(srcdir)/symbolchars
    224 	echo '#' >$@
    225 	echo '# This is a list of all predefined groff symbols.' >>$@
    226 	echo '#' >>$@
    227 	cat $(TEXTMAP) $(srcdir)/symbolchars >>$@
    228 
    229 clean:
    230 	-rm -f symbolmap symbol.afm zapfdr.afm
    231 
    232 realclean: clean
    233 	-rm -f $(FONTS)
    234 
    235 extraclean: realclean
    236 	-rm -f core *~ "#*"
    237 
    238 .PHONY: all clean realclean extraclean
    239 
    240