• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1########################################################
2# Copyright 2019 ARM Limited. All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without modification,
5# are permitted provided that the following conditions are met:
6#
7# 1. Redistributions of source code must retain the above copyright notice,
8# this list of conditions and the following disclaimer.
9#
10# 2. Redistributions in binary form must reproduce the above copyright notice,
11# this list of conditions and the following disclaimer in the documentation
12# and/or other materials provided with the distribution.
13#
14# 3. Neither the name of the copyright holder nor the names of its contributors
15# may be used to endorse or promote products derived from this software without
16# specific prior written permission.
17#
18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' AND
19# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
22# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#
29#################################################################################
30
31########
32# RCTDL - test makefile for snapshot lister test.
33#
34
35CXX := $(MASTER_CXX)
36LINKER := $(MASTER_LINKER)
37
38PROG = mem-buffer-eg
39
40BUILD_DIR=./$(PLAT_DIR)
41
42VPATH	=	 $(OCSD_TESTS)/source
43
44CXX_INCLUDES	=	\
45			-I$(OCSD_TESTS)/source \
46			-I$(OCSD_INCLUDE) \
47			-I$(OCSD_TESTS)/snapshot_parser_lib/include
48
49OBJECTS		=	$(BUILD_DIR)/mem_buff_demo.o
50
51LIBS		=	-L$(LIB_TEST_TARGET_DIR) -lsnapshot_parser \
52				-L$(LIB_TARGET_DIR) -l$(LIB_BASE_NAME)
53
54all: copy_libs
55
56test_app: $(BIN_TEST_TARGET_DIR)/$(PROG)
57
58
59 $(BIN_TEST_TARGET_DIR)/$(PROG): $(OBJECTS) | build_dir
60			mkdir -p  $(BIN_TEST_TARGET_DIR)
61			$(LINKER) $(LDFLAGS) $(OBJECTS) -Wl,--start-group $(LIBS) -Wl,--end-group -o $(BIN_TEST_TARGET_DIR)/$(PROG)
62
63build_dir:
64	mkdir -p $(BUILD_DIR)
65
66.PHONY: copy_libs
67copy_libs: $(BIN_TEST_TARGET_DIR)/$(PROG)
68	cp $(LIB_TARGET_DIR)/*.so* $(BIN_TEST_TARGET_DIR)/.
69
70
71
72#### build rules
73## object dependencies
74DEPS := $(OBJECTS:%.o=%.d)
75
76-include $(DEPS)
77
78## object compile
79$(BUILD_DIR)/%.o : %.cpp | build_dir
80			$(CXX) $(CXXFLAGS) $(CXX_INCLUDES) -MMD $< -o $@
81
82#### clean
83.PHONY: clean
84clean :
85	-rm $(BIN_TEST_TARGET_DIR)/$(PROG) $(OBJECTS)
86	-rm $(DEPS)
87	-rm $(BIN_TEST_TARGET_DIR)/*.so*
88	-rmdir $(BUILD_DIR)
89
90# end of file makefile
91