#
#    Copyright (c) 2014 Nest Labs, Inc.
#    All rights reserved.
#
#    This document is the property of Nest Labs. It is considered
#    confidential and proprietary information.
#
#    This document may not be reproduced or transmitted in any form,
#    in whole or in part, without the express written permission of
#    Nest Labs.
#
#    Description:
#      This file is the makefile for the GCC G++
#      staging rules and commands for the GNU C++
#      Standard Library.
#

# Stage the build to a temporary installation area.
#
# Per the comments at the top of this file, we simply pull the tool
# chain's C++ library. We also appear to need libgcc.

.PHONY: stage
stage: build | $(ResultDirectory)
	$(Verbose)install -d $(call GenerateResultPaths,,usr/lib)
	$(Verbose)install $(ToolLibDir)/libgcc_s.so.1		$(call GenerateResultPaths,,usr/lib/libgcc_s.so.1)
	$(Verbose)install $(ToolLibDir)/../usr/lib/libstdc++.so.6.0.18	$(call GenerateResultPaths,,usr/lib/libstdc++.so.6.0.18)
	$(Verbose)ln -sf libgcc_s.so.1     			$(call GenerateResultPaths,,usr/lib/libgcc_s.so)
	$(Verbose)ln -sf libstdc++.so.6.0.18			$(call GenerateResultPaths,,usr/lib/libstdc++.so)
	$(Verbose)ln -sf libstdc++.so.6.0.18			$(call GenerateResultPaths,,usr/lib/libstdc++.so.6)
