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 (2907B)


      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-diag
      8 
      9 include ${SDK}/make/Make.config
     10 
     11 DIAG = ${COND_LIB_BCMX_DIAG} libdiag.a
     12 
     13 
     14 ifdef ESW_CHIPS
     15 DIAG += libdiag_esw.a \
     16         libtsl3uc.a \
     17         libtsbasic.a \
     18         libtsl3mc.a \
     19         libtsmpls.a \
     20         libtsmmu.a \
     21         libtsoam.a \
     22         libtsniv.a \
     23         libtsriot.a \
     24         libtsvlan.a \
     25         libtsvxlan.a \
     26         libtsfflow.a \
     27         libtsifp.a \
     28         libtsvfp.a \
     29         libtsefp.a \
     30         libtscos.a \
     31         libtsloadbalance.a \
     32         libtsdgm.a \
     33         libtstcb.a \
     34         libtspstat.a \
     35         libtsphy.a \
     36         libtsledup.a \
     37         libtscmic.a \
     38         libtsvisibility.a \
     39         libtswarmboot.a \
     40         libtechsupport.a
     41 DIAG += libtsetrap.a
     42 DIAG += libtsint.a
     43 DIAG += libtshistogram.a
     44 DIAG += libtsalpm.a
     45 DIAG += libtscancun.a
     46 endif
     47 
     48 ifdef DPP_CHIPS
     49 DIAG += libdiag_dpp.a
     50 endif
     51 
     52 ifdef DFE_CHIPS
     53 DIAG += libdiag_dfe.a libdiag_dcmn.a
     54 else
     55 ifdef DPP_CHIPS
     56 DIAG += libdiag_dcmn.a
     57 endif
     58 endif
     59 
     60 ifdef PORTMOD_SUPPORT
     61 DIAG += libdiag_portmod.a
     62 endif
     63 
     64 ifndef NO_SAL_APPL
     65 COND_LIB_SAL_APPL=libsal_appl.a
     66 COND_LIB_SAL_APPL_PLATFORM=libsal_appl_plat.a
     67 endif
     68 
     69 DIAG_LIBS = \
     70 	${DIAG}\
     71 	${COND_LIB_PHYMOD_DIAG} \
     72 	${COND_LIB_PORTMOD_DIAG} \
     73 	libkern.a \
     74 	${COND_LIB_SAL_APPL} \
     75 	${COND_LIB_EDITLINE} \
     76 	${COND_LIB_DIAG_APS} \
     77 	${COND_LIB_SAL_APPL_PLATFORM}
     78 
     79 BCM_LIBS = $(DIAG_LIBS) $(COND_LIB_ETH_DRV)
     80 BCM_LIBS_BLD = $(addprefix $(LIBDIR)/,$(BCM_LIBS))
     81 ifndef BUILD_MACSEC
     82 BCM_LIBS_BLD += ${EXTERNAL_LIBS}
     83 endif
     84 
     85 ifeq ($(kernel_version),2_4)
     86 MODULE = $(LIBDIR)/linux-bcm-diag.o
     87 else
     88 KERNEL_MODULE_DIR = kernel_module
     89 
     90 THIS_MOD_NAME := linux-bcm-diag
     91 MODULE = $(LIBDIR)/$(THIS_MOD_NAME).o
     92 KMODULE = $(LIBDIR)/$(THIS_MOD_NAME).ko
     93 
     94 build: $(MODULE) $(KMODULE)
     95 endif
     96 
     97 KBUILD_EXTRA_SYMBOLS := ${BLDDIR}/../bcm-core/kernel_module/Module.symvers
     98 KBUILD_EXTRA_SYMBOLS += ${BLDDIR}/../uk-proxy/kernel_module/Module.symvers
     99 
    100 # BCM Diag Shell
    101 
    102 $(MODULE): $(BLDDIR)/.tree $(BOBJS) $(BCM_LIBS_BLD)
    103 	$(LD) $(MODULE_LDFLAGS) -r -d $(BOBJS) --start-group $(BCM_LIBS_BLD) --end-group -o $@
    104 ifneq ($(kernel_version),2_4)
    105 $(KMODULE): $(MODULE)
    106 	rm -fr $(BLDDIR)/$(KERNEL_MODULE_DIR)
    107 	mkdir $(BLDDIR)/$(KERNEL_MODULE_DIR)
    108 	cp ${SDK}/make/Makefile.linux-kmodule $(BLDDIR)/$(KERNEL_MODULE_DIR)/Makefile
    109 	cat ${KBUILD_EXTRA_SYMBOLS} > $(BLDDIR)/$(KERNEL_MODULE_DIR)/Module.symvers
    110 	MOD_NAME=$(THIS_MOD_NAME) $(MAKE) -C $(BLDDIR)/$(KERNEL_MODULE_DIR) $(THIS_MOD_NAME).ko
    111 endif
    112 
    113 # Make.depend is before clean:: so that Make.depend's clean:: runs first.
    114 
    115 include ${SDK}/make/Make.depend
    116 
    117 clean::
    118 	$(RM) $(BLDDIR)/version.c $(BLDDIR)/version.o
    119 	$(RM) $(BOBJS) $(MODULE)
    120 
    121 ifneq ($(kernel_version),2_4)
    122 .PHONY: build
    123 endif