Makefile.mk revision b3cedf98a3c8545da2234c2d35cb5d687984035f
13742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman#===- lib/Makefile.mk --------------------------------------*- Makefile -*--===# 23742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# 33742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# The LLVM Compiler Infrastructure 43742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# 53742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# This file is distributed under the University of Illinois Open Source 63742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# License. See LICENSE.TXT for details. 73742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# 83742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman#===------------------------------------------------------------------------===# 93742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman 103742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanModuleName := builtins 113742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs := 123742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman 133742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# Add arch specific optimized implementations. 143742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs += i386 ppc x86_64 arm 153742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman 163742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# Add other submodules. 173742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs += asan 183742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs += interception 193742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs += profile 203742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs += sanitizer_common 213742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSubDirs += tsan 223742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman 233742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# FIXME: We don't currently support building an atomic library, and as it must 243742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# be a separate library from the runtime library, we need to remove its source 253742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# code from the source files list. 263742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanExcludedSources := atomic.c 273742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman 283742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# Define the variables for this specific directory. 293742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanSources := $(foreach file,$(wildcard $(Dir)/*.c),$(filter-out $(ExcludedSources),$(notdir $(file)))) 303742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanObjNames := $(Sources:%.c=%.o) 313742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanImplementation := Generic 323742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman 333742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman# FIXME: use automatic dependencies? 343742d9db8b6edb10627b0f89336cca5249f1d15aManuel RomanDependencies := $(wildcard $(Dir)/*.h) 353742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman