2018-08-07 02:14:37 -05:00
|
|
|
#
|
2018-08-23 14:05:14 -05:00
|
|
|
# Copyright 2017 Broadcom
|
2018-08-07 02:14:37 -05:00
|
|
|
#
|
2018-08-23 14:05:14 -05:00
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU General Public License, version 2, as
|
|
|
|
# published by the Free Software Foundation (the "GPL").
|
|
|
|
#
|
|
|
|
# This program is distributed in the hope that it will be useful, but
|
|
|
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
# General Public License version 2 (GPLv2) for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
|
|
# version 2 (GPLv2) along with this source code.
|
2018-08-07 02:14:37 -05:00
|
|
|
#
|
|
|
|
# $Id: Make.lib,v 1.14 Broadcom SDK $
|
|
|
|
# $Copyright: (c) 2005 Broadcom Corp.
|
|
|
|
# All Rights Reserved.$
|
|
|
|
#
|
|
|
|
# Make rules/targets for handling libraries
|
|
|
|
|
|
|
|
.SECONDARY:: ${BOBJS}
|
|
|
|
|
|
|
|
BOBJS_FAST = ${BOBJS}
|
|
|
|
BOBJS_MAKE_CMD =
|
|
|
|
|
|
|
|
ifeq ($(FAST),1)
|
|
|
|
ifneq ($(strip $(BOBJS)),)
|
|
|
|
BOBJS_FAST =
|
|
|
|
BOBJS_ARGS = -j9
|
|
|
|
BOBJS_MAKE_CMD = pwd && make LSRUN=$(SDK)/tools/lsrun.pl $(BOBJS_ARGS) ${BOBJS}
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(TOOLS),Borland)
|
|
|
|
|
|
|
|
LIBSUFFIX=lib
|
|
|
|
|
|
|
|
${LIBDIR}/%.lib: ${BORLAND_BOBJS}
|
|
|
|
$(RM) $@
|
|
|
|
$(FOREACH) -subdir "$(LIBDIR)" \
|
|
|
|
"tlib $@ $(foreach obj, $(BORLAND_LOBJS), +-$(obj))"
|
|
|
|
|
|
|
|
else # !Borland
|
|
|
|
|
|
|
|
ifeq ($(LINUX_MAKE_SHARED_LIB),1)
|
|
|
|
LIBSUFFIX=so.${SHAREDLIBVER}
|
|
|
|
else
|
|
|
|
LIBSUFFIX=a
|
|
|
|
endif
|
|
|
|
|
|
|
|
targetlib = ${LIBDIR}/${lib}.${LIBSUFFIX}
|
|
|
|
|
|
|
|
all:: ${BLDDIR}/.tree ${targetlib}
|
|
|
|
|
|
|
|
${LIBDIR}/%.${LIBSUFFIX}: ${BOBJS_FAST}
|
|
|
|
$(BOBJS_MAKE_CMD)
|
|
|
|
ifdef QUIET
|
|
|
|
@$(ECHO) Building library $(notdir $@)
|
|
|
|
endif
|
|
|
|
$Q$(RM) $@
|
|
|
|
ifeq ($(LINUX_MAKE_SHARED_LIB),1)
|
|
|
|
$(CC) -shared -Wl,-soname,${lib}.${LIBSUFFIX}${EXTRA_LIB_LDFLAGS} -o ${targetlib} ${BOBJS} -lc
|
|
|
|
else
|
|
|
|
${Q}cd $(dir $(word 1,${BOBJS}));$(AR) ${ARFLAGS} $@ $(sort $(notdir ${BOBJS}))
|
|
|
|
endif
|
|
|
|
|
|
|
|
endif # !Borland
|
|
|
|
|
|
|
|
|
|
|
|
install:: all
|
|
|
|
|
|
|
|
clean::
|
|
|
|
ifdef QUIET
|
|
|
|
@$(ECHO) Cleaning objects for ${LOCALDIR} and ${lib}
|
|
|
|
endif
|
|
|
|
$Q$(RM) ${BOBJS}
|
|
|
|
$Q$(RM) ${targetlib}
|
|
|
|
|
|
|
|
distclean:: clean
|