rules.mk (2392B)
1 # 2 # FreeType 2 SFNT driver configuration rules 3 # 4 5 6 # Copyright (C) 1996-2025 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 # SFNT driver directory 17 # 18 SFNT_DIR := $(SRC_DIR)/sfnt 19 20 21 # compilation flags for the driver 22 # 23 SFNT_COMPILE := $(CC) $(ANSIFLAGS) \ 24 $I$(subst /,$(COMPILER_SEP),$(SFNT_DIR)) \ 25 $(INCLUDE_FLAGS) \ 26 $(FT_CFLAGS) 27 28 29 # SFNT driver sources (i.e., C files) 30 # 31 SFNT_DRV_SRC := $(SFNT_DIR)/pngshim.c \ 32 $(SFNT_DIR)/sfdriver.c \ 33 $(SFNT_DIR)/sfobjs.c \ 34 $(SFNT_DIR)/sfwoff.c \ 35 $(SFNT_DIR)/sfwoff2.c \ 36 $(SFNT_DIR)/ttbdf.c \ 37 $(SFNT_DIR)/ttcmap.c \ 38 $(SFNT_DIR)/ttcolr.c \ 39 $(SFNT_DIR)/ttsvg.c \ 40 $(SFNT_DIR)/ttcpal.c \ 41 $(SFNT_DIR)/ttgpos.c \ 42 $(SFNT_DIR)/ttkern.c \ 43 $(SFNT_DIR)/ttload.c \ 44 $(SFNT_DIR)/ttmtx.c \ 45 $(SFNT_DIR)/ttpost.c \ 46 $(SFNT_DIR)/ttsbit.c \ 47 $(SFNT_DIR)/woff2tags.c 48 49 # SFNT driver headers 50 # 51 SFNT_DRV_H := $(SFNT_DRV_SRC:%c=%h) \ 52 $(SFNT_DIR)/sferrors.h 53 54 55 # SFNT driver object(s) 56 # 57 # SFNT_DRV_OBJ_M is used during `multi' builds. 58 # SFNT_DRV_OBJ_S is used during `single' builds. 59 # 60 SFNT_DRV_OBJ_M := $(SFNT_DRV_SRC:$(SFNT_DIR)/%.c=$(OBJ_DIR)/%.$O) 61 SFNT_DRV_OBJ_S := $(OBJ_DIR)/sfnt.$O 62 63 # SFNT driver source file for single build 64 # 65 SFNT_DRV_SRC_S := $(SFNT_DIR)/sfnt.c 66 67 68 # SFNT driver - single object 69 # 70 $(SFNT_DRV_OBJ_S): $(SFNT_DRV_SRC_S) $(SFNT_DRV_SRC) \ 71 $(FREETYPE_H) $(SFNT_DRV_H) 72 $(SFNT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(SFNT_DRV_SRC_S)) 73 74 75 # SFNT driver - multiple objects 76 # 77 $(OBJ_DIR)/%.$O: $(SFNT_DIR)/%.c $(FREETYPE_H) $(SFNT_DRV_H) 78 $(SFNT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) 79 80 81 # update main driver object lists 82 # 83 DRV_OBJS_S += $(SFNT_DRV_OBJ_S) 84 DRV_OBJS_M += $(SFNT_DRV_OBJ_M) 85 86 87 # EOF