Edit

kc3-lang/freetype/src/cache/rules.mk

Branch :

  • Show log

    Commit

  • Author : Werner Lemberg
    Date : 2019-05-04 08:13:22
    Hash : 7b841047
    Message : Various clang 8.0 static analyzer fixes. Reported by Sender Ghost <lightside@gmx.com>. * src/autofit/afcjk.c (af_cjk_hints_compute_edges): Catch a corner case where `edge->first' could be NULL. * src/pfr/pfrobjs.c (pfr_slot_load): Remove unnecessary test of `size'. * src/raster/ftraster.c (Draw_Sweep): Catch a corner case where `draw_right' might be NULL. * src/sfnt/ttmtx.c (tt_face_get_metrics): Fix limit test for `aadvance'. Ensure `abearing' always hold a meaningful result. * src/truetype/ttgload.c (load_truetype_glyph): Ensure `subglyph' is not NULL before accessing it. * src/truetype/ttgxvar.c (TT_Set_Named_Instance): Remove unnecessary test of `namedstyle'. * src/type42/t42parse.c (t42_parser_done): Ensure `parser->root.funcs.done' is not NULL before accessing it.

  • src/cache/rules.mk
  • #
    # FreeType 2 Cache configuration rules
    #
    
    
    # Copyright (C) 2000-2019 by
    # David Turner, Robert Wilhelm, and Werner Lemberg.
    #
    # This file is part of the FreeType project, and may only be used, modified,
    # and distributed under the terms of the FreeType project license,
    # LICENSE.TXT.  By continuing to use, modify, or distribute this file you
    # indicate that you have read the license and understand and accept it
    # fully.
    
    
    # Cache driver directory
    #
    CACHE_DIR := $(SRC_DIR)/cache
    
    
    # compilation flags for the driver
    #
    CACHE_COMPILE := $(CC) $(ANSIFLAGS)                              \
                           $I$(subst /,$(COMPILER_SEP),$(CACHE_DIR)) \
                           $(INCLUDE_FLAGS)                          \
                           $(FT_CFLAGS)
    
    
    # Cache driver sources (i.e., C files)
    #
    CACHE_DRV_SRC := $(CACHE_DIR)/ftcbasic.c \
                     $(CACHE_DIR)/ftccache.c \
                     $(CACHE_DIR)/ftccmap.c  \
                     $(CACHE_DIR)/ftcglyph.c \
                     $(CACHE_DIR)/ftcimage.c \
                     $(CACHE_DIR)/ftcmanag.c \
                     $(CACHE_DIR)/ftcmru.c   \
                     $(CACHE_DIR)/ftcsbits.c
    
    
    # Cache driver headers
    #
    CACHE_DRV_H := $(CACHE_DIR)/ftccache.h \
                   $(CACHE_DIR)/ftccback.h \
                   $(CACHE_DIR)/ftcerror.h \
                   $(CACHE_DIR)/ftcglyph.h \
                   $(CACHE_DIR)/ftcimage.h \
                   $(CACHE_DIR)/ftcmanag.h \
                   $(CACHE_DIR)/ftcmru.h   \
                   $(CACHE_DIR)/ftcsbits.h
    
    
    # Cache driver object(s)
    #
    #   CACHE_DRV_OBJ_M is used during `multi' builds.
    #   CACHE_DRV_OBJ_S is used during `single' builds.
    #
    CACHE_DRV_OBJ_M := $(CACHE_DRV_SRC:$(CACHE_DIR)/%.c=$(OBJ_DIR)/%.$O)
    CACHE_DRV_OBJ_S := $(OBJ_DIR)/ftcache.$O
    
    # Cache driver source file for single build
    #
    CACHE_DRV_SRC_S := $(CACHE_DIR)/ftcache.c
    
    
    # Cache driver - single object
    #
    $(CACHE_DRV_OBJ_S): $(CACHE_DRV_SRC_S) $(CACHE_DRV_SRC) \
                       $(FREETYPE_H) $(CACHE_DRV_H)
    	$(CACHE_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(CACHE_DRV_SRC_S))
    
    
    # Cache driver - multiple objects
    #
    $(OBJ_DIR)/%.$O: $(CACHE_DIR)/%.c $(FREETYPE_H) $(CACHE_DRV_H)
    	$(CACHE_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
    
    
    # update main driver object lists
    #
    DRV_OBJS_S += $(CACHE_DRV_OBJ_S)
    DRV_OBJS_M += $(CACHE_DRV_OBJ_M)
    
    
    # EOF