1# 2# Makefile for the Broadcom CTF 3# 4# Copyright (C) 2012, Broadcom Corporation. All Rights Reserved. 5# 6# Permission to use, copy, modify, and/or distribute this software for any 7# purpose with or without fee is hereby granted, provided that the above 8# copyright notice and this permission notice appear in all copies. 9# 10# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 13# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 15# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 16# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17# 18# $Id: Makefile,v 1.1 2009-10-27 01:27:44 $ 19# 20 21obj-${CONFIG_BCM_CTF} := ctf.o 22 23CTFSRC := ../../../../../../../src/router/ctf/ 24CTFOBJ := $(CTFSRC)/hndctf.o $(CTFSRC)/hndctf_linux.o 25SYMOBJ := $(CTFSRC)/hndctf.o 26 27ifeq ($(CONFIG_BUZZZ_FUNC),y) 28subdir-ccflags-y += -O0 -fno-inline -finstrument-functions 29endif # CONFIG_BUZZZ_FUNC 30 31# Search for sources under src/router/ctf 32ifneq (,$(wildcard $(src)/$(CTFSRC)/*.c)) 33 EXTRA_CFLAGS += -I$(src)/$(CTFSRC)/../../router/ctf -DHNDCTF 34 ctf-objs := $(CTFOBJ) ctf_ksyms.o 35else 36 ctf-objs := $(CTFSRC)/linux/ctf.o 37endif 38 39ifeq (,${KERNELRELEASE}) 40 # Normal makefile 41 KERNELDIR := $(BASEDIR)/components/opensource/linux/linux-2.6.36 42 43 .PHONY: all clean 44 all clean : 45 +$(MAKE) -C $(KERNELDIR) M=`pwd` $@ 46endif 47 48PHONY += $(src)/ctf_ksyms.c 49 50quiet_cmd_ksyms = CALL $< 51 cmd_ksyms = $(CONFIG_SHELL) -e $< $(src)/$(SYMOBJ) > $@ 52 53$(src)/ctf_ksyms.c: $(src)/ctf_ksyms.sh $(src)/$(SYMOBJ) FORCE 54 $(call cmd,ksyms) 55 56clean-files += $(CTFSRC)/*.o $(CTFSRC)/.*.o.cmd 57