# $Id: Makefile24,v 1.7.2.1 2004/08/02 22:24:58 mikpe Exp $
# Performance-monitoring counters driver Makefile for 2.4 kernels.

# construct various object file lists:
# kernel-objs-y		kernel objects exporting symbols
# y-objs-y		kernel objects not exporting symbols
# m-objs-m		perfctr.o if driver is module, empty otherwise
# driver-objs-y		objects for perfctr.o module, or empty

# This also covers x86_64.
driver-objs-$(CONFIG_X86) := x86.o
tests-objs-$(CONFIG_X86) := x86_tests.o
kernel-objs-$(CONFIG_X86) := x86_setup.o

driver-objs-$(CONFIG_PPC32) := ppc.o
tests-objs-$(CONFIG_PPC32) := ppc_tests.o
kernel-objs-$(CONFIG_PPC32) := ppc_setup.o

driver-objs-y += init.o marshal.o
driver-objs-$(CONFIG_PERFCTR_INIT_TESTS) += $(tests-objs-y)
driver-objs-$(CONFIG_PERFCTR_VIRTUAL) += virtual.o
stub-objs-$(CONFIG_PERFCTR)-$(CONFIG_PERFCTR_VIRTUAL) := virtual_stub.o
driver-objs-$(CONFIG_PERFCTR_GLOBAL) += global.o
m-objs-$(CONFIG_PERFCTR) := perfctr.o
y-objs-$(CONFIG_PERFCTR) := $(driver-objs-y)
kernel-objs-y += $(stub-objs-m-y)

perfctr-objs		:= $(driver-objs-y)
obj-m			+= $(m-objs-m)

export-objs		:= $(kernel-objs-y)
O_TARGET		:= kperfctr.o
obj-y			:= $(kernel-objs-y) $(y-objs-y)
list-multi		:= perfctr.o

include $(TOPDIR)/Rules.make

perfctr.o:	$(perfctr-objs)
	$(LD) -r -o $@ $(perfctr-objs)
