rules.mk (2308B)
1 # 2 # FreeType 2 Cache configuration rules 3 # 4 5 6 # Copyright (C) 2000-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 # Cache driver directory 17 # 18 CACHE_DIR := $(SRC_DIR)/cache 19 20 21 # compilation flags for the driver 22 # 23 CACHE_COMPILE := $(CC) $(ANSIFLAGS) \ 24 $I$(subst /,$(COMPILER_SEP),$(CACHE_DIR)) \ 25 $(INCLUDE_FLAGS) \ 26 $(FT_CFLAGS) 27 28 29 # Cache driver sources (i.e., C files) 30 # 31 CACHE_DRV_SRC := $(CACHE_DIR)/ftcbasic.c \ 32 $(CACHE_DIR)/ftccache.c \ 33 $(CACHE_DIR)/ftccmap.c \ 34 $(CACHE_DIR)/ftcglyph.c \ 35 $(CACHE_DIR)/ftcimage.c \ 36 $(CACHE_DIR)/ftcmanag.c \ 37 $(CACHE_DIR)/ftcmru.c \ 38 $(CACHE_DIR)/ftcsbits.c 39 40 41 # Cache driver headers 42 # 43 CACHE_DRV_H := $(CACHE_DIR)/ftccache.h \ 44 $(CACHE_DIR)/ftccback.h \ 45 $(CACHE_DIR)/ftcerror.h \ 46 $(CACHE_DIR)/ftcglyph.h \ 47 $(CACHE_DIR)/ftcimage.h \ 48 $(CACHE_DIR)/ftcmanag.h \ 49 $(CACHE_DIR)/ftcmru.h \ 50 $(CACHE_DIR)/ftcsbits.h 51 52 53 # Cache driver object(s) 54 # 55 # CACHE_DRV_OBJ_M is used during `multi' builds. 56 # CACHE_DRV_OBJ_S is used during `single' builds. 57 # 58 CACHE_DRV_OBJ_M := $(CACHE_DRV_SRC:$(CACHE_DIR)/%.c=$(OBJ_DIR)/%.$O) 59 CACHE_DRV_OBJ_S := $(OBJ_DIR)/ftcache.$O 60 61 # Cache driver source file for single build 62 # 63 CACHE_DRV_SRC_S := $(CACHE_DIR)/ftcache.c 64 65 66 # Cache driver - single object 67 # 68 $(CACHE_DRV_OBJ_S): $(CACHE_DRV_SRC_S) $(CACHE_DRV_SRC) \ 69 $(FREETYPE_H) $(CACHE_DRV_H) 70 $(CACHE_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(CACHE_DRV_SRC_S)) 71 72 73 # Cache driver - multiple objects 74 # 75 $(OBJ_DIR)/%.$O: $(CACHE_DIR)/%.c $(FREETYPE_H) $(CACHE_DRV_H) 76 $(CACHE_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) 77 78 79 # update main driver object lists 80 # 81 DRV_OBJS_S += $(CACHE_DRV_OBJ_S) 82 DRV_OBJS_M += $(CACHE_DRV_OBJ_M) 83 84 85 # EOF