Shad Ansari | 2f7f9be | 2017-06-07 13:34:53 -0700 | [diff] [blame^] | 1 | ############################################################################### |
| 2 | # |
| 3 | # <:copyright-BRCM:2016:proprietary:standard |
| 4 | # |
| 5 | # Broadcom Ltd. Proprietary and Confidential.(c) 2016 Broadcom Ltd. |
| 6 | # All Rights Reserved |
| 7 | # |
| 8 | # This program is the proprietary software of Broadcom Ltd. and/or its |
| 9 | # licensors, and may only be used, duplicated, modified or distributed pursuant |
| 10 | # to the terms and conditions of a separate, written license agreement executed |
| 11 | # between you and Broadcom Ltd. (an "Authorized License"). Except as set forth in |
| 12 | # an Authorized License, Broadcom Ltd. grants no license (express or implied), right |
| 13 | # to use, or waiver of any kind with respect to the Software, and Broadcom Ltd. |
| 14 | # expressly reserves all rights in and to the Software and all intellectual |
| 15 | # property rights therein. IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU HAVE |
| 16 | # NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY NOTIFY |
| 17 | # BROADCOM LTD AND DISCONTINUE ALL USE OF THE SOFTWARE. |
| 18 | # |
| 19 | # Except as expressly set forth in the Authorized License, |
| 20 | # |
| 21 | # 1. This program, including its structure, sequence and organization, |
| 22 | # constitutes the valuable trade secrets of Broadcom Ltd., and you shall use |
| 23 | # all reasonable efforts to protect the confidentiality thereof, and to |
| 24 | # use this information only in connection with your use of Broadcom Ltd. |
| 25 | # integrated circuit products. |
| 26 | # |
| 27 | # 2. TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS" |
| 28 | # AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS OR |
| 29 | # WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH |
| 30 | # RESPECT TO THE SOFTWARE. BROADCOM SPECIFICALLY DISCLAIMS ANY AND |
| 31 | # ALL IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, |
| 32 | # FITNESS FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR |
| 33 | # COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION OR CORRESPONDENCE |
| 34 | # TO DESCRIPTION. YOU ASSUME THE ENTIRE RISK ARISING OUT OF USE OR |
| 35 | # PERFORMANCE OF THE SOFTWARE. |
| 36 | # |
| 37 | # 3. TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM OR |
| 38 | # ITS LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL, |
| 39 | # INDIRECT, OR EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY |
| 40 | # WAY RELATING TO YOUR USE OF OR INABILITY TO USE THE SOFTWARE EVEN |
| 41 | # IF BROADCOM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES; |
| 42 | # OR (ii) ANY AMOUNT IN EXCESS OF THE AMOUNT ACTUALLY PAID FOR THE |
| 43 | # SOFTWARE ITSELF OR U.S. $1, WHICHEVER IS GREATER. THESE LIMITATIONS |
| 44 | # SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY |
| 45 | # LIMITED REMEDY. |
| 46 | # :> |
| 47 | # |
| 48 | ############################################################################### |
| 49 | # |
| 50 | # Makefile for building doxygen for bal source code |
| 51 | # |
| 52 | ############################################################################### |
| 53 | |
| 54 | PROJECT_NUMBER=$(shell ./genProjectNumber.sh) |
| 55 | TMP_FILE=cfg.tmp |
| 56 | OUTPUT_FILE=doxygen_output.txt |
| 57 | WARNINGS_FILE=doxygen_warnings.txt |
| 58 | |
| 59 | GEN_GRAPHS ?= NO |
| 60 | |
| 61 | .PHONY: docs |
| 62 | docs: |
| 63 | @if [ "$(GEN_GRAPHS)" != "YES" ]; then \ |
| 64 | echo "#####################################################################" ; \ |
| 65 | echo "# Graphs will NOT be generated #" ; \ |
| 66 | echo "# Type 'make GEN_GRAPHS=YES' to instruct doxygen to generate graphs #" ; \ |
| 67 | echo "#####################################################################" ; \ |
| 68 | sleep 3 ; \ |
| 69 | fi |
| 70 | $(call gen_doc_cmd,$(OUT_DOCS_DIR)/bal_internal,bal.doxy) |
| 71 | $(call gen_doc_cmd,$(OUT_DOCS_DIR)/bal_public,bal_public.doxy) |
| 72 | $(call gen_doc_cmd,$(OUT_DOCS_DIR)/sdn_pal,sdn_pal.doxy) |
| 73 | $(call gen_doc_cmd,$(OUT_DOCS_DIR)/omcisvc,omcisvc.doxy) |
| 74 | |
| 75 | define gen_doc_cmd |
| 76 | rm -fr $1 |
| 77 | mkdir -p $1 |
| 78 | sed -e 's@%OUT_DOCS_DIR@$1@g' \ |
| 79 | -e 's@%SRC_DIR@$(TOP_SRC_DIR)@g' \ |
| 80 | -e 's@%PROJECT_NUMBER@$(PROJECT_NUMBER)@g' \ |
| 81 | -e 's@%HAVE_DOT@$(GEN_GRAPHS)@g' \ |
| 82 | -e 's@%MODEL_DIR@$(OUT_DIR_BASE)/src/common/include@g' \ |
| 83 | -e 's@%OMCI_MODEL_DIR@$(OUT_DIR_BASE)/src/lib/libomcisvc@g' \ |
| 84 | $2 > $1/Doxyfile |
| 85 | rm -fr $1/$(OUTPUT_FILE) $1/$(WARNINGS_FILE) |
| 86 | cd $1 && doxygen 2>$1/$(WARNINGS_FILE) | tee $1/$(OUTPUT_FILE) |
| 87 | @echo "" |
| 88 | @echo "############################################" |
| 89 | @echo "# Checking doxygen output for warnings... #" |
| 90 | @echo "############################################" |
| 91 | @cat $1/$(WARNINGS_FILE) |
| 92 | @test -s $1/$(WARNINGS_FILE) && echo -ne "\n!!! WARNINGS WERE FOUND!!!\n\nPlease see warnings listed above and check $1/$(WARNINGS_FILE) for more information\n\n" && exit -1 || echo "Done." |
| 93 | rm -fr $1/$(OUTPUT_FILE) $1/$(WARNINGS_FILE) $1/Doxyfile |
| 94 | endef |