BAL and Maple Release 2.2
Signed-off-by: Shad Ansari <developer@Carbon.local>
diff --git a/bcm68620_release/release/Makefile b/bcm68620_release/release/Makefile
new file mode 100644
index 0000000..29a26ef
--- /dev/null
+++ b/bcm68620_release/release/Makefile
@@ -0,0 +1,166 @@
+# Central Makefile
+#
+PLATFORM ?= maple
+TOP_DIR=$(shell pwd)
+export PLATFORM
+export TOP_DIR
+
+ifeq ("$(PLATFORM)", "maple")
+ DEVICE=bcm68620
+ export DEVICE
+else
+ $(error Set DEVICE for $(PLATFORM))
+endif
+
+MAKE_DIR=$(TOP_DIR)/make
+MAKE_DEVICE_DIR=$(MAKE_DIR)/$(DEVICE)
+export MAKE_DIR
+export MAKE_DEVICE_DIR
+
+include $(MAKE_DIR)/Makefile.initial_config
+OUT_DIR ?= $(TOP_DIR)/build
+OUT_DOCS_DIR ?= $(OUT_DIR)/doc
+
+# Identify whether it is customer or development build
+EMB_MODULE_LIST=$(realpath $(MAKE_DEVICE_DIR)/modules.embedded)
+ifeq ("$(EMB_MODULE_LIST)", "")
+ RELEASE_BUILD=y
+ export RELEASE_BUILD
+ USE_LINT=n
+ export USE_LINT
+ OUT_HOST_DIR ?= $(OUT_DIR)
+ COPY_FS_SH = $(TOP_DIR)/make/copy_host_fs.sh
+else
+ OUT_HOST_DIR ?= $(OUT_DIR)/$(PLATFORM)/host
+ OUT_EMBEDDED_DIR ?= $(OUT_DIR)/$(PLATFORM)/embedded
+ COPY_FS_SH = $(TOP_DIR)/scripts/copy_host_fs.sh
+ export OUT_EMBEDDED_DIR
+endif
+
+ifneq ("$(BOARD)", "")
+ COPY_HOST_FS_CMD = $(SILENT_BUILD)$(COPY_FS_SH) TOP_DIR=$(TOP_DIR) OUT_HOST_DIR=$(OUT_HOST_DIR)
+endif
+
+export OUT_HOST_DIR
+export OUT_DOCS_DIR
+
+# List of all modules, all library modules and all application modules
+export ALL_MODULES
+export ALL_LIB_MODULES
+export ALL_APP_MODULES
+
+# Current board
+export BOARD
+
+V ?= 0
+ifeq (x"$(V)", x"0")
+ SILENT = -s
+ export SILENT
+ SILENT_BUILD=@
+endif
+
+ifeq ("$(RELEASE_BUILD)", "y")
+all: build_host
+else
+all: build_host build_embedded
+endif
+ $(COPY_HOST_FS_CMD)
+ @echo --- All done ---
+
+copy_host_fs:
+ $(COPY_HOST_FS_CMD)
+
+ifeq ("$(RELEASE_BUILD)", "y")
+clean: clean_host
+else
+clean: clean_host clean_embedded
+endif
+ rm -fr $(OUT_DIR)
+
+help_general:
+ @echo "make parameters:"
+ @echo " PLATFORM - platform to perform the build for. The default platform is $$PLATFORM"
+ @echo " Supported platforms are: maple"
+ @echo " BOARD - TBD board"
+ @echo " ENABLE_EPON - Include EPON/10GEPON support. Default =y, unless overwritten in platform configuration"
+ @echo " ENABLE_GPON - Include GPON support. Default =y, unless overwritten in platform configuration"
+ @echo " ENABLE_XGPON - Include XGPON support. Default =y, unless overwritten in platform configuration"
+ @echo " V=<output_level> - =1-verbose command output, =2-makefile debug output"
+ @echo " GEN_OBJTAGS - Low-level option. OBGTAGS to be passed to code generator"
+ @echo " EXTRA_TYPES - Low-level option. Space-delimited list of extra types without bcmolt_ prefix"
+ @echo " ENABLE_CLI - =n-exclude CLI support. Included by default"
+ @echo " ENABLE_LOG - =n-exclude dev_log support. Included by default"
+ @echo "make targets:"
+ @echo " all - build everything for the PLATFORM. This is the default target"
+ @echo " host - build PLATFORM's host side"
+ @echo " embedded - build PLATFORM's embedded side"
+ @echo " clean - clean everything for the PLATFORM"
+ @echo " clean_host - clean PLATFORM's host side"
+ @echo " clean_embedded - clean PLATFORM's embedded side"
+ @echo " docs - generate reference document in html format"
+ @echo " docs_pdf - generate reference document in pdf format"
+ @echo " drivers - generate librdb, ru_gen and hal_generator driver layers"
+ @echo " clean_drivers - clean librdb, ru_gen and hal_generator"
+
+
+ifeq ("$(RELEASE_BUILD)", "y")
+help: help_general help_host
+else
+help: help_general help_host help_embedded
+endif
+
+docs: docs_host
+
+docs_host:
+ $(SILENT_BUILD)$(MAKE) SUBSYSTEM=host -f $(MAKE_DIR)/Makefile.main $@
+
+docs_pdf: docs
+ $(SILENT_BUILD)$(MAKE) -C $(OUT_DOCS_DIR)/latex
+
+docs_clean:
+ $(SILENT_BUILD)$(BOLD_PRINT) "Cleaning docs"
+ $(SILENT_BUILD)rm -fr $(OUT_DOCS_DIR)
+
+clobber: clean docs_clean
+
+host: build_host
+ $(COPY_HOST_FS_CMD)
+
+clean_host:
+ $(SILENT_BUILD)rm -fr $(OUT_HOST_DIR)
+ $(SILENT_BUILD)$(MAKE) $(SILENT) SUBSYSTEM=host -f $(MAKE_DIR)/Makefile.main $@
+
+%_host:
+ $(SILENT_BUILD)$(MAKE) $(SILENT) SUBSYSTEM=host -f $(MAKE_DIR)/Makefile.main $@
+
+ifneq ("$(RELEASE_BUILD)", "y")
+embedded: build_embedded
+ $(COPY_HOST_FS_CMD)
+
+clean_embedded:
+ $(SILENT_BUILD)rm -fr $(OUT_EMBEDDED_DIR)
+ $(SILENT_BUILD)$(MAKE) $(SILENT) SUBSYSTEM=embedded -f $(MAKE_DIR)/Makefile.main $@
+
+docs_embedded:
+
+%_embedded:
+ $(SILENT_BUILD)$(MAKE) $(SILENT) SUBSYSTEM=embedded -f $(MAKE_DIR)/Makefile.main $@
+
+endif
+
+
+hal_generator:
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/hal_generator/src
+
+drivers:
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/hal_generator/librdb
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/hal_generator/ru_gen
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/pm_drv_generator
+
+
+clean_drivers:
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/hal_generator/librdb clean
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/hal_generator/ru_gen clean
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/hal_generator/src clean
+ $(SILENT_BUILD)$(MAKE) $(SLIENT) -C $(TOP_DIR)/embedded/pm_drv_generator clean
+