• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1########################################################
2# Copyright 2015 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 simple c api packet list test.
33#
34
35CC := $(MASTER_CC)
36LINKER := $(MASTER_LINKER)
37
38PROG = c_api_pkt_print_test
39
40BUILD_DIR=./$(PLAT_DIR)
41
42VPATH	=	 $(OCSD_TESTS)/source
43
44CC_INCLUDES	=	\
45			-I$(OCSD_TESTS)/source \
46			-I$(OCSD_TESTS)/ext_dcd_test_eg/c_api_echo_test \
47			-I$(OCSD_INCLUDE)
48
49OBJECTS		=	$(BUILD_DIR)/c_api_pkt_print_test.o
50
51LIBS		=	-L$(LIB_TARGET_DIR) -l$(LIB_BASE_NAME) -l$(LIB_CAPI_NAME) \
52				-L$(LIB_TEST_TARGET_DIR) -l_echo_test_dcd
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			cp $(LIB_TARGET_DIR)/*.so .
63
64build_dir:
65	mkdir -p $(BUILD_DIR)
66
67.PHONY: copy_libs
68copy_libs: $(BIN_TEST_TARGET_DIR)/$(PROG)
69	cp $(LIB_TARGET_DIR)/*.so $(BIN_TEST_TARGET_DIR)/.
70
71
72#### build rules
73
74## object dependencies
75DEPS := $(OBJECTS:%.o=%.d)
76
77-include $(DEPS)
78
79## object compile
80$(BUILD_DIR)/%.o : %.c | build_dir
81			$(CC) $(CFLAGS) $(CC_INCLUDES) -MMD $< -o $@
82
83#### clean
84.PHONY: clean
85clean :
86	-rm $(BIN_TEST_TARGET_DIR)/$(PROG) $(OBJECTS)
87	-rm $(DEPS)
88	-rm ./*.so
89	-rmdir $(BUILD_DIR)
90
91# end of file makefile
92