Home | History | Annotate | Download | only in amiga
      1 #
      2 # Makefile for FreeType2 link library using Amiga SAS/C 6.58
      3 #
      4 
      5 
      6 # Copyright 2005-2018 by
      7 # Werner Lemberg and Detlef Wrkner.
      8 #
      9 # This file is part of the FreeType project, and may only be used, modified,
     10 # and distributed under the terms of the FreeType project license,
     11 # LICENSE.TXT.  By continuing to use, modify, or distribute this file you
     12 # indicate that you have read the license and understand and accept it
     13 # fully.
     14 
     15 
     16 # to build from the builds/amiga directory call
     17 #
     18 #  smake assign
     19 #  smake
     20 #
     21 # Your programs source code should start with this
     22 # (uncomment the parts you do not need to keep the program small):
     23 # ---8<---
     24 #define FT_USE_AUTOFIT // autofitter
     25 #define FT_USE_RASTER  // monochrome rasterizer
     26 #define FT_USE_SMOOTH  // anti-aliasing rasterizer
     27 #define FT_USE_TT      // truetype font driver
     28 #define FT_USE_T1      // type1 font driver
     29 #define FT_USE_T42     // type42 font driver
     30 #define FT_USE_T1CID   // cid-keyed type1 font driver
     31 #define FT_USE_CFF     // opentype font driver
     32 #define FT_USE_BDF     // bdf bitmap font driver
     33 #define FT_USE_PCF     // pcf bitmap font driver
     34 #define FT_USE_PFR     // pfr font driver
     35 #define FT_USE_WINFNT  // windows .fnt|.fon bitmap font driver
     36 #define FT_USE_OTV     // opentype validator
     37 #define FT_USE_GXV     // truetype gx validator
     38 #include "FT:src/base/ftinit.c"
     39 # ---8<---
     40 #
     41 # link your programs with ft2_680x0.lib and either ftsystem.o or ftsystempure.o
     42 # (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or
     43 # FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
     44 
     45 OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfntfmt.o ftfstype.o \
     46 	  ftgasp.o ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o           \
     47 	  ftpatent.o ftpfr.o ftstroke.o ftsynth.o fttype1.o ftwinfnt.o
     48 
     49 OBJSYSTEM = ftsystem.o ftsystempure.o
     50 
     51 OBJDEBUG = ftdebug.o ftdebugpure.o
     52 
     53 OBJAFIT = autofit.o
     54 
     55 OBJGXV = gxvalid.o
     56 
     57 OBJOTV = otvalid.o
     58 
     59 OBJPS = psaux.o psnames.o pshinter.o
     60 
     61 OBJRASTER = raster.o smooth.o
     62 
     63 OBJSFNT = sfnt.o
     64 
     65 OBJCACHE = ftcache.o
     66 
     67 OBJFONTD = cff.o type1.o type42.o type1cid.o\
     68 	   truetype.o winfnt.o bdf.o pcf.o pfr.o
     69 
     70 CORE = FT:src/
     71 
     72 CPU       = 68000
     73 #CPU      = 68020
     74 #CPU      = 68030
     75 #CPU      = 68040
     76 #CPU      = 68060
     77 
     78 OPTIMIZER = optinlocal
     79 
     80 SCFLAGS = optimize opttime optsched strmerge data=faronly idlen=50 cpu=$(CPU)\
     81 	  idir=include/ idir=$(CORE) idir=FT:include/ nostackcheck nochkabort\
     82 	  noicons ignore=79,85,110,306 parameters=both define=FT2_BUILD_LIBRARY
     83 
     84 LIB  = ft2_$(CPU).lib
     85 
     86 # sample linker options
     87 OPTS = link lib=$(LIB),lib:sc.lib,lib:amiga.lib,lib:debug.lib\
     88        smallcode smalldata noicons utillib
     89 
     90 # sample program entry
     91 #myprog: myprog.c ftsystem.o $(LIB)
     92 #	sc $< programname=$@ ftsystem.o $(SCFLAGS) $(OPTS)
     93 
     94 all:	$(LIB) $(OBJSYSTEM) $(OBJDEBUG)
     95 
     96 assign:
     97 	assign FT: //
     98 
     99 # uses separate object modules in lib to make for easier debugging
    100 # also, can make smaller programs if entire engine is not used
    101 ft2_$(CPU).lib:  $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
    102 	oml $@ r $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
    103 
    104 clean:
    105 	-delete \#?.o
    106 
    107 realclean: clean
    108 	-delete ft2$(CPU).lib
    109 
    110 #
    111 # freetype library base
    112 #
    113 ftbase.o: $(CORE)base/ftbase.c
    114 	sc $(SCFLAGS) objname=$@ $<
    115 ftinit.o: $(CORE)base/ftinit.c
    116 	sc $(SCFLAGS) objname=$@ $<
    117 ftsystem.o: $(CORE)base/ftsystem.c
    118 	sc $(SCFLAGS) objname=$@ $<
    119 ftsystempure.o: src/base/ftsystem.c	## pure version for use in run-time library etc
    120 	sc $(SCFLAGS) objname=$@ $<
    121 ftdebug.o: $(CORE)base/ftdebug.c
    122 	sc $(SCFLAGS) objname=$@ $<
    123 ftdebugpure.o: src/base/ftdebug.c	## pure version for use in run-time library etc
    124 	sc $(SCFLAGS) objname=$@ $<
    125 #
    126 # freetype library base extensions
    127 #
    128 ftbbox.o: $(CORE)base/ftbbox.c
    129 	sc $(SCFLAGS) objname=$@ $<
    130 ftbdf.o: $(CORE)base/ftbdf.c
    131 	sc $(SCFLAGS) objname=$@ $<
    132 ftbitmap.o: $(CORE)base/ftbitmap.c
    133 	sc $(SCFLAGS) objname=$@ $<
    134 ftcid.o: $(CORE)base/ftcid.c
    135 	sc $(SCFLAGS) objname=$@ $<
    136 ftfntfmt.o: $(CORE)base/ftfntfmt.c
    137 	sc $(SCFLAGS) objname=$@ $<
    138 ftfstype.o: $(CORE)base/ftfstype.c
    139 	sc $(SCFLAGS) objname=$@ $<
    140 ftgasp.o: $(CORE)base/ftgasp.c
    141 	sc $(SCFLAGS) objname=$@ $<
    142 ftglyph.o: $(CORE)base/ftglyph.c
    143 	sc $(SCFLAGS) objname=$@ $<
    144 ftgxval.o: $(CORE)base/ftgxval.c
    145 	sc $(SCFLAGS) objname=$@ $<
    146 ftlcdfil.o: $(CORE)base/ftlcdfil.c
    147 	sc $(SCFLAGS) objname=$@ $<
    148 ftmm.o: $(CORE)base/ftmm.c
    149 	sc $(SCFLAGS) objname=$@ $<
    150 ftotval.o: $(CORE)base/ftotval.c
    151 	sc $(SCFLAGS) objname=$@ $<
    152 ftpatent.o: $(CORE)base/ftpatent.c
    153 	sc $(SCFLAGS) objname=$@ $<
    154 ftpfr.o: $(CORE)base/ftpfr.c
    155 	sc $(SCFLAGS) objname=$@ $<
    156 ftstroke.o: $(CORE)base/ftstroke.c
    157 	sc $(SCFLAGS) objname=$@ $<
    158 ftsynth.o: $(CORE)base/ftsynth.c
    159 	sc $(SCFLAGS) objname=$@ $<
    160 fttype1.o: $(CORE)base/fttype1.c
    161 	sc $(SCFLAGS) objname=$@ $<
    162 ftwinfnt.o: $(CORE)base/ftwinfnt.c
    163 	sc $(SCFLAGS) objname=$@ $<
    164 
    165 #
    166 # freetype library autofitter module
    167 #
    168 autofit.o: $(CORE)autofit/autofit.c
    169 	sc $(SCFLAGS) objname=$@ $<
    170 
    171 #
    172 # freetype library PS hinting module
    173 #
    174 pshinter.o: $(CORE)pshinter/pshinter.c
    175 	sc $(SCFLAGS) objname=$@ $<
    176 #
    177 # freetype library PS support module
    178 #
    179 psaux.o: $(CORE)psaux/psaux.c
    180 	sc $(SCFLAGS) objname=$@ $<
    181 
    182 #
    183 # freetype library PS glyph names module
    184 #
    185 psnames.o: $(CORE)psnames/psnames.c
    186 	sc $(SCFLAGS) code=far objname=$@ $<
    187 
    188 #
    189 # freetype library monochrome raster module
    190 #
    191 raster.o: $(CORE)raster/raster.c
    192 	sc $(SCFLAGS) objname=$@ $<
    193 
    194 #
    195 # freetype library anti-aliasing raster module
    196 #
    197 smooth.o: $(CORE)smooth/smooth.c
    198 	sc $(SCFLAGS) objname=$@ $<
    199 
    200 #
    201 # freetype library 'sfnt' module
    202 #
    203 sfnt.o: $(CORE)sfnt/sfnt.c
    204 	sc $(SCFLAGS) objname=$@ $<
    205 
    206 #
    207 # freetype library glyph and image caching system (still experimental)
    208 #
    209 ftcache.o: $(CORE)cache/ftcache.c
    210 	sc $(SCFLAGS) objname=$@ $<
    211 
    212 #
    213 # freetype library OpenType font driver
    214 #
    215 cff.o: $(CORE)cff/cff.c
    216 	sc $(SCFLAGS) objname=$@ $<
    217 
    218 #
    219 # freetype library TrueType font driver
    220 #
    221 truetype.o: $(CORE)truetype/truetype.c
    222 	sc $(SCFLAGS) objname=$@ $<
    223 
    224 #
    225 # freetype library Type1 font driver
    226 #
    227 type1.o: $(CORE)type1/type1.c
    228 	sc $(SCFLAGS) objname=$@ $<
    229 
    230 #
    231 # FreeType2 library Type42 font driver
    232 #
    233 type42.o: $(CORE)type42/type42.c
    234 	sc $(SCFLAGS) objname=$@ $<
    235 
    236 #
    237 # freetype library CID-keyed Type1 font driver
    238 #
    239 type1cid.o: $(CORE)cid/type1cid.c
    240 	sc $(SCFLAGS) objname=$@ $<
    241 #
    242 # freetype library CID-keyed Type1 font driver extensions
    243 #
    244 #cidafm.o: $(CORE)cid/cidafm.c
    245 #	sc $(SCFLAGS) objname=$@ $<
    246 
    247 #
    248 # freetype library BDF bitmap font driver
    249 #
    250 bdf.o: $(CORE)bdf/bdf.c
    251 	sc $(SCFLAGS) objname=$@ $<
    252 
    253 #
    254 # freetype library PCF bitmap font driver
    255 #
    256 pcf.o: $(CORE)pcf/pcf.c
    257 	sc $(SCFLAGS) objname=$@ $<
    258 
    259 #
    260 # freetype library gzip support for compressed PCF bitmap fonts
    261 #
    262 gzip.o: $(CORE)gzip/ftgzip.c
    263 	sc $(SCFLAGS) define FAR objname=$@ $<
    264 
    265 #
    266 # freetype library bzip2 support for compressed PCF bitmap fonts
    267 #
    268 bzip2.o: $(CORE)bzip2/ftbzip2.c
    269 	sc $(SCFLAGS) define FAR objname=$@ $<
    270 
    271 #
    272 # freetype library compress support for compressed PCF bitmap fonts
    273 #
    274 lzw.o: $(CORE)lzw/ftlzw.c
    275 	sc $(SCFLAGS) objname=$@ $<
    276 
    277 #
    278 # freetype library PFR font driver
    279 #
    280 pfr.o: $(CORE)pfr/pfr.c
    281 	sc $(SCFLAGS) objname=$@ $<
    282 
    283 #
    284 # freetype library Windows FNT/FON bitmap font driver
    285 #
    286 winfnt.o: $(CORE)winfonts/winfnt.c
    287 	sc $(SCFLAGS) objname=$@ $<
    288 
    289 #
    290 # freetype library TrueTypeGX validator
    291 #
    292 gxvalid.o: $(CORE)gxvalid/gxvalid.c
    293 	sc $(SCFLAGS) objname=$@ $<
    294 
    295 #
    296 # freetype library OpenType validator
    297 #
    298 otvalid.o: $(CORE)otvalid/otvalid.c
    299 	sc $(SCFLAGS) objname=$@ $<
    300 
    301 #Local Variables:
    302 #coding: latin-1
    303 #End:
    304