14a4ef702597471bff5e249b8ec9d94d265007895Richard Smith#===- lib/ubsan/Makefile.mk ---------------------------------*- Makefile -*--===#
24a4ef702597471bff5e249b8ec9d94d265007895Richard Smith#
34a4ef702597471bff5e249b8ec9d94d265007895Richard Smith#                     The LLVM Compiler Infrastructure
44a4ef702597471bff5e249b8ec9d94d265007895Richard Smith#
54a4ef702597471bff5e249b8ec9d94d265007895Richard Smith# This file is distributed under the University of Illinois Open Source
64a4ef702597471bff5e249b8ec9d94d265007895Richard Smith# License. See LICENSE.TXT for details.
74a4ef702597471bff5e249b8ec9d94d265007895Richard Smith#
84a4ef702597471bff5e249b8ec9d94d265007895Richard Smith#===------------------------------------------------------------------------===#
94a4ef702597471bff5e249b8ec9d94d265007895Richard Smith
104a4ef702597471bff5e249b8ec9d94d265007895Richard SmithModuleName := ubsan
114a4ef702597471bff5e249b8ec9d94d265007895Richard SmithSubDirs :=
124a4ef702597471bff5e249b8ec9d94d265007895Richard Smith
134a4ef702597471bff5e249b8ec9d94d265007895Richard SmithSources := $(foreach file,$(wildcard $(Dir)/*.cc),$(notdir $(file)))
143e587a4f631c1b7338d4f2a29df74b704b8bb1caRichard SmithCXXSources := ubsan_type_hash.cc ubsan_handlers_cxx.cc
153e587a4f631c1b7338d4f2a29df74b704b8bb1caRichard SmithCSources := $(filter-out $(CXXSources),$(Sources))
164a4ef702597471bff5e249b8ec9d94d265007895Richard SmithObjNames := $(Sources:%.cc=%.o)
174a4ef702597471bff5e249b8ec9d94d265007895Richard Smith
184a4ef702597471bff5e249b8ec9d94d265007895Richard SmithImplementation := Generic
194a4ef702597471bff5e249b8ec9d94d265007895Richard Smith
204a4ef702597471bff5e249b8ec9d94d265007895Richard Smith# FIXME: use automatic dependencies?
214a4ef702597471bff5e249b8ec9d94d265007895Richard SmithDependencies := $(wildcard $(Dir)/*.h)
224a4ef702597471bff5e249b8ec9d94d265007895Richard SmithDependencies += $(wildcard $(Dir)/../sanitizer_common/*.h)
234a4ef702597471bff5e249b8ec9d94d265007895Richard Smith
244a4ef702597471bff5e249b8ec9d94d265007895Richard Smith# Define a convenience variable for all the ubsan functions.
253e587a4f631c1b7338d4f2a29df74b704b8bb1caRichard SmithUbsanFunctions := $(CSources:%.cc=%)
263e587a4f631c1b7338d4f2a29df74b704b8bb1caRichard SmithUbsanCXXFunctions := $(CXXSources:%.cc=%)
27