openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

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/bcm-net
      8 
      9 include ${SDK}/make/Make.config
     10 
     11 LIBS = $(LIBDIR)/libkern.a
     12 
     13 ifeq ($(kernel_version),2_4)
     14 MODULE = $(LIBDIR)/linux-bcm-net.o
     15 else
     16 KERNEL_MODULE_DIR = kernel_module
     17 
     18 THIS_MOD_NAME := linux-bcm-net
     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-core/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