1#
2# FreeType 2 smooth renderer module build rules
3#
4
5
6# Copyright 1996-2018 by
7# David Turner, Robert Wilhelm, and Werner Lemberg.
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# smooth driver directory
17#
18SMOOTH_DIR := $(SRC_DIR)/smooth
19
20
21# compilation flags for the driver
22#
23SMOOTH_COMPILE := $(CC) $(ANSIFLAGS)                               \
24                        $I$(subst /,$(COMPILER_SEP),$(SMOOTH_DIR)) \
25                        $(INCLUDE_FLAGS)                           \
26                        $(FT_CFLAGS)
27
28
29# smooth driver sources (i.e., C files)
30#
31SMOOTH_DRV_SRC := $(SMOOTH_DIR)/ftgrays.c  \
32                  $(SMOOTH_DIR)/ftsmooth.c \
33                  $(SMOOTH_DIR)/ftspic.c
34
35
36# smooth driver headers
37#
38SMOOTH_DRV_H := $(SMOOTH_DRV_SRC:%c=%h)  \
39                $(SMOOTH_DIR)/ftsmerrs.h
40
41
42# smooth driver object(s)
43#
44#   SMOOTH_DRV_OBJ_M is used during `multi' builds.
45#   SMOOTH_DRV_OBJ_S is used during `single' builds.
46#
47SMOOTH_DRV_OBJ_M := $(SMOOTH_DRV_SRC:$(SMOOTH_DIR)/%.c=$(OBJ_DIR)/%.$O)
48SMOOTH_DRV_OBJ_S := $(OBJ_DIR)/smooth.$O
49
50# smooth driver source file for single build
51#
52SMOOTH_DRV_SRC_S := $(SMOOTH_DIR)/smooth.c
53
54
55# smooth driver - single object
56#
57$(SMOOTH_DRV_OBJ_S): $(SMOOTH_DRV_SRC_S) $(SMOOTH_DRV_SRC) \
58                     $(FREETYPE_H) $(SMOOTH_DRV_H)
59	$(SMOOTH_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(SMOOTH_DRV_SRC_S))
60
61
62# smooth driver - multiple objects
63#
64$(OBJ_DIR)/%.$O: $(SMOOTH_DIR)/%.c $(FREETYPE_H) $(SMOOTH_DRV_H)
65	$(SMOOTH_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
66
67
68# update main driver object lists
69#
70DRV_OBJS_S += $(SMOOTH_DRV_OBJ_S)
71DRV_OBJS_M += $(SMOOTH_DRV_OBJ_M)
72
73
74# EOF
75