Makefile (1394B)
1 # -*- Makefile -*- 2 # 3 # This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 4 # 5 # Copyright 2007-2019 Broadcom Inc. All rights reserved. 6 # 7 LOCALDIR = systems/linux/kernel/modules/knet-cb 8 9 include ${SDK}/make/Make.config 10 11 LIBS = $(LIBDIR)/libkern.a 12 13 ifeq ($(kernel_version),2_4) 14 MODULE = $(LIBDIR)/linux-knet-cb.o 15 else 16 KERNEL_MODULE_DIR = kernel_module 17 18 THIS_MOD_NAME := linux-knet-cb 19 MODULE = $(LIBDIR)/$(THIS_MOD_NAME).o 20 KMODULE = $(LIBDIR)/$(THIS_MOD_NAME).ko 21 22 build: $(MODULE) $(KMODULE) 23 endif 24 25 KBUILD_EXTRA_SYMBOLS := ${BLDDIR}/../bcm-knet/kernel_module/Module.symvers 26 27 # BCM Network Device 28 29 $(MODULE): $(BLDDIR)/.tree $(BOBJS) $(LIBS) 30 $(LD) $(MODULE_LDFLAGS) -r -d $(BOBJS) $(LIBS) -o $@ 31 ifneq ($(kernel_version),2_4) 32 $(KMODULE): $(MODULE) 33 rm -fr $(BLDDIR)/$(KERNEL_MODULE_DIR) 34 mkdir $(BLDDIR)/$(KERNEL_MODULE_DIR) 35 cp ${SDK}/make/Makefile.linux-kmodule $(BLDDIR)/$(KERNEL_MODULE_DIR)/Makefile 36 cat ${KBUILD_EXTRA_SYMBOLS} > $(BLDDIR)/$(KERNEL_MODULE_DIR)/Module.symvers 37 MOD_NAME=$(THIS_MOD_NAME) $(MAKE) -C $(BLDDIR)/$(KERNEL_MODULE_DIR) $(THIS_MOD_NAME).ko 38 endif 39 40 # Make.depend is before clean:: so that Make.depend's clean:: runs first. 41 42 include ${SDK}/make/Make.depend 43 44 clean:: 45 $(RM) $(BLDDIR)/version.c $(BLDDIR)/version.o 46 $(RM) $(BOBJS) $(MODULE) 47 48 ifneq ($(kernel_version),2_4) 49 .PHONY: build 50 endif