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


      1 #
      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 = libs/phymod
      8 
      9 ifndef PHYMOD
     10 PHYMOD = $(CURDIR)
     11 endif
     12 
     13 include ${PHYMOD}/make/config.mk
     14 
     15 # Core library
     16 VPATH = acc core diag
     17 VSRCS = $(wildcard acc/*.c) $(wildcard core/*.c) $(wildcard diag/*.c)
     18 
     19 # Symbolic debug
     20 VPATH += sym sym/chip
     21 VSRCS += $(wildcard sym/*.c) $(wildcard sym/chip/*.c)
     22 
     23 # PHY simulators
     24 VPATH += sim sim/chip
     25 VSRCS += $(wildcard sim/*.c) $(wildcard sim/chip/*.c)
     26 
     27 # PHY util
     28 VPATH += util 
     29 VSRCS += $(wildcard util/*.c) 
     30 
     31 #
     32 # The PHYMOD_CHIPS make variable can be used to compile the sources
     33 # for only one chip (or a subset of chips).
     34 #
     35 # Please see $PHYMOD/examples/libonly/Makefile for examples
     36 #
     37 ifneq ($(PHYMOD_CHIPS),)
     38 MAKE_PHYMOD_CHIPS := $(PHYMOD_CHIPS)
     39 endif
     40 
     41 # Eagle chip support
     42 ifeq ($(PHYMOD_CHIPS),)
     43 MAKE_PHYMOD_CHIPS += EAGLE
     44 endif
     45 ifneq ($(filter EAGLE,$(MAKE_PHYMOD_CHIPS)),)
     46 VPATH += chip/eagle chip/eagle/tier2 chip/eagle/tier1
     47 VSRCS += $(wildcard chip/eagle/*.c)
     48 VSRCS += $(wildcard chip/eagle/tier2/*.c)
     49 VSRCS += $(wildcard chip/eagle/tier1/*.c)
     50 endif
     51 
     52 # Eagle dpll chip support
     53 ifeq ($(PHYMOD_CHIPS),)
     54 MAKE_PHYMOD_CHIPS += EAGLE_DPLL
     55 endif
     56 ifneq ($(filter EAGLE_DPLL,$(MAKE_PHYMOD_CHIPS)),)
     57 VPATH += chip/eagle_dpll chip/eagle_dpll/tier2 chip/eagle_dpll/tier1
     58 VSRCS += $(wildcard chip/eagle_dpll/*.c)
     59 VSRCS += $(wildcard chip/eagle_dpll/tier2/*.c)
     60 VSRCS += $(wildcard chip/eagle_dpll/tier1/*.c)
     61 endif
     62 
     63 # Falcon chip support
     64 ifeq ($(PHYMOD_CHIPS),)
     65 MAKE_PHYMOD_CHIPS += FALCON
     66 endif
     67 ifneq ($(filter FALCON,$(MAKE_PHYMOD_CHIPS)),)
     68 VPATH += chip/falcon chip/falcon/tier2 chip/falcon/tier1
     69 VSRCS += $(wildcard chip/falcon/*.c)
     70 VSRCS += $(wildcard chip/falcon/tier2/*.c)
     71 VSRCS += $(wildcard chip/falcon/tier1/*.c)
     72 endif
     73 
     74 # QSGMII/Eagle chip support
     75 ifeq ($(PHYMOD_CHIPS),)
     76 MAKE_PHYMOD_CHIPS += QSGMIIE
     77 endif
     78 ifneq ($(filter QSGMIIE,$(MAKE_PHYMOD_CHIPS)),)
     79 VPATH += chip/qsgmiie chip/qsgmiie/tier2 chip/qsgmiie/tier1
     80 VSRCS += $(wildcard chip/qsgmiie/*.c)
     81 VSRCS += $(wildcard chip/qsgmiie/tier2/*.c)
     82 VSRCS += $(wildcard chip/qsgmiie/tier1/*.c)
     83 endif
     84 
     85 # TSC/Eagle chip support
     86 ifeq ($(PHYMOD_CHIPS),)
     87 MAKE_PHYMOD_CHIPS += TSCE
     88 endif
     89 ifneq ($(filter TSCE,$(MAKE_PHYMOD_CHIPS)),)
     90 VPATH += chip/tsce chip/tsce/tier2 chip/tsce/tier1
     91 VSRCS += $(wildcard chip/tsce/*.c)
     92 VSRCS += $(wildcard chip/tsce/tier2/*.c)
     93 VSRCS += $(wildcard chip/tsce/tier1/*.c)
     94 endif
     95 
     96 # TSC/Eagle DPLL chip support
     97 ifeq ($(PHYMOD_CHIPS),)
     98 MAKE_PHYMOD_CHIPS += TSCE_DPLL
     99 endif
    100 ifneq ($(filter TSCE_DPLL,$(MAKE_PHYMOD_CHIPS)),)
    101 VPATH += chip/tsce_dpll chip/tsce_dpll/tier2 chip/tsce_dpll/tier1
    102 VSRCS += $(wildcard chip/tsce_dpll/*.c)
    103 VSRCS += $(wildcard chip/tsce_dpll/tier2/*.c)
    104 VSRCS += $(wildcard chip/tsce_dpll/tier1/*.c)
    105 endif
    106 
    107 # TSC/Falcon chip support
    108 ifeq ($(PHYMOD_CHIPS),)
    109 MAKE_PHYMOD_CHIPS += TSCF
    110 endif
    111 ifneq ($(filter TSCF,$(MAKE_PHYMOD_CHIPS)),)
    112 VPATH += chip/tscf chip/tscf/tier2 chip/tscf/tier1
    113 VSRCS += $(wildcard chip/tscf/*.c)
    114 VSRCS += $(wildcard chip/tscf/tier2/*.c)
    115 VSRCS += $(wildcard chip/tscf/tier1/*.c)
    116 endif
    117 
    118 # Viper chip support
    119 ifeq ($(PHYMOD_CHIPS),)
    120 MAKE_PHYMOD_CHIPS += VIPER
    121 endif
    122 ifneq ($(filter VIPER,$(MAKE_PHYMOD_CHIPS)),)
    123 VPATH += chip/viper chip/viper/tier2 chip/viper/tier1
    124 VSRCS += $(wildcard chip/viper/*.c)
    125 VSRCS += $(wildcard chip/viper/tier2/*.c)
    126 VSRCS += $(wildcard chip/viper/tier1/*.c)
    127 endif
    128 
    129 # Furia chip support
    130 ifeq ($(PHYMOD_CHIPS),)
    131 MAKE_PHYMOD_CHIPS += FURIA
    132 endif
    133 ifneq ($(filter FURIA,$(MAKE_PHYMOD_CHIPS)),)
    134 VPATH += chip/furia chip/furia/tier2 chip/furia/tier1 chip/furia/tier1/falcon_furia_src chip/furia_82212 chip/furia_82212/tier2
    135 VSRCS += $(wildcard chip/furia/*.c)
    136 VSRCS += $(wildcard chip/furia/tier2/*.c)
    137 VSRCS += $(wildcard chip/furia/tier1/*.c)
    138 VSRCS += $(wildcard chip/furia/tier1/falcon_furia_src/falcon_furia_functions.c)
    139 VSRCS += $(wildcard chip/furia/tier1/falcon_furia_src/falcon_furia_dependencies.c)
    140 
    141 VSRCS += $(wildcard chip/furia_82212/*.c)
    142 VSRCS += $(wildcard chip/furia_82212/tier2/*.c)
    143 endif
    144 
    145 # QTC chip support
    146 ifeq ($(PHYMOD_CHIPS),)
    147 MAKE_PHYMOD_CHIPS += QTC
    148 endif
    149 ifneq ($(filter QTC,$(MAKE_PHYMOD_CHIPS)),)
    150 VPATH += chip/qtce chip/qtce/tier2 chip/qtce/tier1
    151 VSRCS += $(wildcard chip/qtce/*.c)
    152 VSRCS += $(wildcard chip/qtce/tier2/*.c)
    153 VSRCS += $(wildcard chip/qtce/tier1/*.c)
    154 endif
    155 
    156 # Sesto chip support
    157 ifeq ($(PHYMOD_CHIPS),)
    158 MAKE_PHYMOD_CHIPS += SESTO
    159 endif
    160 ifneq ($(filter SESTO,$(MAKE_PHYMOD_CHIPS)),)
    161 VPATH += chip/sesto chip/sesto/tier2 chip/sesto/tier1 chip/sesto/tier1/sesto_serdes/falcon_furia_sesto_src chip/sesto/tier1/sesto_serdes/merlin_sesto_src
    162 VSRCS += $(wildcard chip/sesto/*.c)
    163 VSRCS += $(wildcard chip/sesto/tier2/*.c)
    164 VSRCS += $(wildcard chip/sesto/tier1/*.c)
    165 VSRCS += $(wildcard chip/sesto/tier1/sesto_serdes/falcon_furia_sesto_src/falcon_furia_sesto_functions.c)
    166 VSRCS += $(wildcard chip/sesto/tier1/sesto_serdes/falcon_furia_sesto_src/falcon_furia_sesto_dependencies.c)
    167 VSRCS += $(wildcard chip/sesto/tier1/sesto_serdes/merlin_sesto_src/merlin_sesto_functions.c)
    168 VSRCS += $(wildcard chip/sesto/tier1/sesto_serdes/merlin_sesto_src/merlin_sesto_dependencies.c)
    169 endif
    170 
    171 
    172 # Madura chip support
    173 ifeq ($(PHYMOD_CHIPS),)
    174 MAKE_PHYMOD_CHIPS += MADURA
    175 endif
    176 ifneq ($(filter MADURA,$(MAKE_PHYMOD_CHIPS)),)
    177 VPATH += chip/madura chip/madura/tier2 chip/madura/tier1 chip/madura/tier1/madura_serdes/falcon_madura_src  chip/madura/tier1/madura_serdes/falcon2_madura_src
    178 VSRCS += $(wildcard chip/madura/*.c)
    179 VSRCS += $(wildcard chip/madura/tier2/*.c)
    180 VSRCS += $(wildcard chip/madura/tier1/*.c)
    181 VSRCS += $(wildcard chip/madura/tier1/madura_serdes/falcon_madura_src/falcon_madura_functions.c)
    182 VSRCS += $(wildcard chip/madura/tier1/madura_serdes/falcon_madura_src/falcon_madura_dependencies.c)
    183 VSRCS += $(wildcard chip/madura/tier1/madura_serdes/falcon2_madura_src/falcon2_madura_functions.c)
    184 VSRCS += $(wildcard chip/madura/tier1/madura_serdes/falcon2_madura_src/falcon2_madura_dependencies.c)
    185 endif
    186 
    187 
    188 # quadra28 chip support
    189 ifeq ($(PHYMOD_CHIPS),)
    190 MAKE_PHYMOD_CHIPS += QUADRA28
    191 endif
    192 ifneq ($(filter QUADRA28,$(MAKE_PHYMOD_CHIPS)),)
    193 VPATH += chip/quadra28 chip/quadra28/tier2 chip/quadra28/tier1 chip/quadra28/tier1/quadra28_serdes
    194 VSRCS += $(wildcard chip/quadra28/*.c)
    195 VSRCS += $(wildcard chip/quadra28/tier2/*.c)
    196 VSRCS += $(wildcard chip/quadra28/tier1/*.c)
    197 VSRCS += $(wildcard chip/quadra28/tier1/quadra28_serdes/merlin_quadra28_functions.c)
    198 VSRCS += $(wildcard chip/quadra28/tier1/quadra28_serdes/merlin_quadra28_dependencies.c)
    199 endif
    200 
    201 
    202 # huracan  chip support
    203 ifeq ($(PHYMOD_CHIPS),)
    204 MAKE_PHYMOD_CHIPS += HURACAN
    205 endif
    206 ifneq ($(filter HURACAN,$(MAKE_PHYMOD_CHIPS)),)
    207 VPATH += chip/huracan chip/huracan/tier2 chip/huracan/tier1 
    208 VSRCS += $(wildcard chip/huracan/*.c)
    209 VSRCS += $(wildcard chip/huracan/tier2/*.c)
    210 VSRCS += $(wildcard chip/huracan/tier1/*.c)
    211 endif
    212 
    213 # Dino chip support
    214 ifeq ($(PHYMOD_CHIPS),)
    215 MAKE_PHYMOD_CHIPS += DINO 
    216 endif
    217 ifneq ($(filter DINO,$(MAKE_PHYMOD_CHIPS)),)
    218 VPATH += chip/dino chip/dino/tier2 chip/dino/tier1 chip/dino/tier1/dino_serdes/falcon2_dino_src chip/dino/tier1/dino_serdes/merlin_dino_src
    219 VSRCS += $(wildcard chip/dino/*.c)
    220 VSRCS += $(wildcard chip/dino/tier2/*.c)
    221 VSRCS += $(wildcard chip/dino/tier1/*.c)
    222 VSRCS += $(wildcard chip/dino/tier1/dino_serdes/falcon2_dino_src/falcon2_dino_functions.c)
    223 VSRCS += $(wildcard chip/dino/tier1/dino_serdes/falcon2_dino_src/falcon2_dino_dependencies.c)
    224 VSRCS += $(wildcard chip/dino/tier1/dino_serdes/merlin_dino_src/merlin_dino_functions.c)
    225 VSRCS += $(wildcard chip/dino/tier1/dino_serdes/merlin_dino_src/merlin_dino_dependencies.c)
    226 endif
    227 # phy8806x support
    228 ifeq ($(PHYMOD_CHIPS),)
    229 MAKE_PHYMOD_CHIPS += PHY8806X
    230 endif
    231 ifneq ($(filter PHY8806X,$(MAKE_PHYMOD_CHIPS)),)
    232 VPATH += chip/phy8806x chip/phy8806x/tier2 chip/phy8806x/tier1
    233 VSRCS += $(filter-out chip/phy8806x/phy8806x_pe_api.c,  $(wildcard chip/phy8806x/*.c))
    234 VSRCS += $(wildcard chip/phy8806x/tier2/*.c)
    235 VSRCS += $(wildcard chip/phy8806x/tier1/*.c)
    236 endif
    237 
    238 # Falcon16 chip support
    239 ifeq ($(PHYMOD_CHIPS),)
    240 MAKE_PHYMOD_CHIPS += FALCON16
    241 endif
    242 ifneq ($(filter FALCON16,$(MAKE_PHYMOD_CHIPS)),)
    243 VPATH += chip/falcon16 chip/falcon16/tier2 chip/falcon16/tier1 chip/falcon16/tier1/src
    244 VSRCS += $(wildcard chip/falcon16/*.c)
    245 VSRCS += $(wildcard chip/falcon16/tier2/*.c)
    246 VSRCS += $(wildcard chip/falcon16/tier1/*.c)
    247 VSRCS += $(wildcard chip/falcon16/tier1/src/*.c)
    248 endif
    249 
    250 # BLACKHAWK chip support
    251 ifeq ($(PHYMOD_CHIPS),)
    252 MAKE_PHYMOD_CHIPS += BLACKHAWK
    253 endif
    254 ifneq ($(filter BLACKHAWK,$(MAKE_PHYMOD_CHIPS)),)
    255 VPATH += chip/blackhawk chip/blackhawk/tier2 chip/blackhawk/tier1
    256 VSRCS += $(wildcard chip/blackhawk/*.c)
    257 VSRCS += $(wildcard chip/blackhawk/tier2/*.c)
    258 VSRCS += $(wildcard chip/blackhawk/tier1/*.c)
    259 VSRCS += $(wildcard chip/blackhawk/tier1/src/*.c)
    260 endif
    261 
    262 # TSCBH chip support
    263 ifeq ($(PHYMOD_CHIPS),)
    264 MAKE_PHYMOD_CHIPS += TSCBH
    265 endif
    266 ifneq ($(filter TSCBH,$(MAKE_PHYMOD_CHIPS)),)
    267 VPATH += chip/tscbh chip/tscbh/tier2 chip/tscbh/tier1
    268 VSRCS += $(wildcard chip/tscbh/*.c)
    269 VSRCS += $(wildcard chip/tscbh/tier2/*.c)
    270 VSRCS += $(wildcard chip/tscbh/tier1/*.c)
    271 endif
    272 
    273 
    274 # TSCF16 chip support
    275 ifeq ($(PHYMOD_CHIPS),)
    276 MAKE_PHYMOD_CHIPS += TSCF16
    277 endif
    278 ifneq ($(filter TSCF16,$(MAKE_PHYMOD_CHIPS)),)
    279 VPATH += chip/tscf16 chip/tscf16/tier2 chip/tscf16/tier1
    280 VSRCS += $(wildcard chip/tscf16/*.c)
    281 VSRCS += $(wildcard chip/tscf16/tier2/*.c)
    282 VSRCS += $(wildcard chip/tscf16/tier1/*.c)
    283 endif
    284 
    285 # MERLIN16 chip support
    286 ifeq ($(PHYMOD_CHIPS),)
    287 MAKE_PHYMOD_CHIPS += MERLIN16 
    288 endif
    289 ifneq ($(filter MERLIN16,$(MAKE_PHYMOD_CHIPS)),)
    290 VPATH += chip/merlin16 chip/merlin16/tier2 chip/merlin16/tier1
    291 VSRCS += $(wildcard chip/merlin16/*.c)
    292 VSRCS += $(wildcard chip/merlin16/tier2/*.c)
    293 VSRCS += $(wildcard chip/merlin16/tier1/*.c)
    294 endif
    295 
    296 ifeq ($(PHYMOD_CHIPS),)
    297 MAKE_PHYMOD_CHIPS += TSCE16 
    298 endif
    299 ifneq ($(filter TSCE16,$(MAKE_PHYMOD_CHIPS)),)
    300 VPATH += chip/tsce16 chip/tsce16/tier2 chip/tsce16/tier1
    301 VSRCS += $(wildcard chip/tsce16/*.c)
    302 VSRCS += $(wildcard chip/tsce16/tier2/*.c)
    303 VSRCS += $(wildcard chip/tsce16/tier1/*.c)
    304 endif
    305 
    306 # TSCF GEN3 chip support
    307 ifeq ($(PHYMOD_CHIPS),)
    308 MAKE_PHYMOD_CHIPS += TSCF_GEN3
    309 endif
    310 ifneq ($(filter TSCF_GEN3,$(MAKE_PHYMOD_CHIPS)),)
    311 VPATH += chip/tscf_gen3 chip/tscf_gen3/tier2 chip/tscf_gen3/tier1
    312 VSRCS += $(wildcard chip/tscf_gen3/*.c)
    313 VSRCS += $(wildcard chip/tscf_gen3/tier2/*.c)
    314 VSRCS += $(wildcard chip/tscf_gen3/tier1/*.c)
    315 endif
    316 
    317 # FALCON MONTEREY chip support
    318 ifeq ($(PHYMOD_CHIPS),)
    319 MAKE_PHYMOD_CHIPS += FALCON_DPLL 
    320 endif
    321 ifneq ($(filter FALCON_DPLL,$(MAKE_PHYMOD_CHIPS)),)
    322 VPATH += chip/falcon_dpll chip/falcon_dpll/tier2 chip/falcon_dpll/tier1
    323 VSRCS += $(wildcard chip/falcon_dpll/*.c)
    324 VSRCS += $(wildcard chip/falcon_dpll/tier2/*.c)
    325 VSRCS += $(wildcard chip/falcon_dpll/tier1/*.c)
    326 endif
    327 
    328 # QTCE16 chip support
    329 ifeq ($(PHYMOD_CHIPS),)
    330 MAKE_PHYMOD_CHIPS += QTCE16
    331 endif
    332 ifneq ($(filter QTCE16,$(MAKE_PHYMOD_CHIPS)),)
    333 VPATH += chip/qtce16 chip/qtce16/tier2 chip/qtce16/tier1
    334 VSRCS += $(wildcard chip/qtce16/*.c)
    335 VSRCS += $(wildcard chip/qtce16/tier2/*.c)
    336 VSRCS += $(wildcard chip/qtce16/tier1/*.c)
    337 endif
    338 
    339 # BLACKHAWK7_V1L8P2 chip support
    340 ifeq ($(PHYMOD_CHIPS),)
    341 MAKE_PHYMOD_CHIPS += BLACKHAWK7_V1L8P2
    342 endif
    343 ifneq ($(filter BLACKHAWK7_V1L8P2,$(MAKE_PHYMOD_CHIPS)),)
    344 VPATH += chip/blackhawk7_v1l8p2 chip/blackhawk7_v1l8p2/tier2 chip/blackhawk7_v1l8p2/tier1
    345 VSRCS += $(wildcard chip//blackhawk7_v1l8p2/*.c)
    346 VSRCS += $(wildcard chip//blackhawk7_v1l8p2/tier2/*.c)
    347 VSRCS += $(wildcard chip//blackhawk7_v1l8p2/tier1/*.c)
    348 endif
    349 
    350 # TSCBH_GEN2 chip support
    351 ifeq ($(PHYMOD_CHIPS),)
    352 MAKE_PHYMOD_CHIPS += TSCBH_GEN2
    353 endif
    354 ifneq ($(filter TSCBH_GEN2,$(MAKE_PHYMOD_CHIPS)),)
    355 VPATH += chip/tscbh_gen2 chip/tscbh_gen2/tier2
    356 VSRCS += $(wildcard chip/tscbh_gen2/*.c)
    357 VSRCS += $(wildcard chip/tscbh_gen2/tier2/*.c)
    358 endif
    359 
    360 # MERLIN7 chip support
    361 ifeq ($(PHYMOD_CHIPS),)
    362 MAKE_PHYMOD_CHIPS += MERLIN7
    363 endif
    364 ifneq ($(filter MERLIN7,$(MAKE_PHYMOD_CHIPS)),)
    365 VPATH += chip/merlin7 chip/merlin7/tier2 chip/merlin7/tier1
    366 VSRCS += $(wildcard chip/merlin7/*.c)
    367 VSRCS += $(wildcard chip/merlin7/tier2/*.c)
    368 VSRCS += $(wildcard chip/merlin7/tier1/*.c)
    369 endif
    370 
    371 # TSCE7 chip support
    372 ifeq ($(PHYMOD_CHIPS),)
    373 MAKE_PHYMOD_CHIPS += TSCE7
    374 endif
    375 ifneq ($(filter TSCE7,$(MAKE_PHYMOD_CHIPS)),)
    376 VPATH += chip/tsce7 chip/tsce7/tier2
    377 VSRCS += $(wildcard chip/tsce7/*.c)
    378 VSRCS += $(wildcard chip/tsce7/tier2/*.c)
    379 endif
    380 
    381 ifeq ($(PHYMOD_CHIPS),)
    382 MAKE_PHYMOD_CHIPS += null
    383 endif
    384 ifneq ($(filter null,$(MAKE_PHYMOD_CHIPS)),)
    385 VPATH += chip/null
    386 VSRCS += $(wildcard chip/null/*.c)
    387 endif
    388 
    389 LSRCS = $(notdir $(VSRCS))
    390 LOBJS = $(addsuffix .o, $(basename $(LSRCS)))
    391 BOBJS = $(addprefix $(BLDDIR)/,$(LOBJS))
    392 
    393 LIBNAME = libphymod
    394 include ${PHYMOD}/make/lib.mk
    395 
    396 include ${PHYMOD}/make/depend.mk