1#
2# %CopyrightBegin%
3#
4# Copyright Ericsson AB 2003-2018. All Rights Reserved.
5#
6# Licensed under the Apache License, Version 2.0 (the "License");
7# you may not use this file except in compliance with the License.
8# You may obtain a copy of the License at
9#
10#     http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS,
14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15# See the License for the specific language governing permissions and
16# limitations under the License.
17#
18# %CopyrightEnd%
19#
20
21include $(ERL_TOP)/make/target.mk
22
23# ----------------------------------------------------
24# Configuration info.
25# ----------------------------------------------------
26include $(ERL_TOP)/make/$(TARGET)/otp.mk
27
28# ----------------------------------------------------
29# Application version
30# ----------------------------------------------------
31include ../vsn.mk
32VSN=$(COMMON_TEST_VSN)
33
34# ----------------------------------------------------
35# Release directory specification
36# ----------------------------------------------------
37RELSYSDIR = $(RELEASE_PATH)/lib/common_test-$(VSN)
38
39# ----------------------------------------------------
40# Target Specs
41# ----------------------------------------------------
42
43MODULES= \
44	ct \
45	ct_logs \
46	ct_framework \
47	ct_ftp \
48	ct_ssh \
49	ct_snmp \
50	ct_gen_conn \
51	ct_rpc \
52	ct_run \
53	ct_master \
54	ct_telnet \
55	ct_util \
56	ct_cover \
57	ct_testspec \
58	ct_event \
59	ct_master_event \
60	ct_master_logs \
61	ct_master_status \
62	ct_repeat \
63	ct_telnet_client \
64	ct_make \
65	vts \
66	ct_webtool \
67	ct_webtool_sup \
68	unix_telnet \
69	ct_config \
70	ct_config_plain \
71	ct_config_xml \
72	ct_slave \
73        ct_hooks\
74        ct_hooks_lock\
75	cth_log_redirect\
76	cth_surefire \
77	ct_netconfc \
78	ct_conn_log_h \
79	cth_conn_log \
80	ct_groups \
81	ct_property_test \
82	ct_release_test \
83	ct_default_gl \
84	erl2html2 \
85	test_server_ctrl \
86	test_server_gl \
87	test_server_io \
88	test_server_node \
89	test_server \
90	test_server_sup
91
92
93TARGET_MODULES= $(MODULES:%=$(EBIN)/%)
94BEAM_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR))
95
96ERL_FILES= $(MODULES:=.erl)
97HRL_FILES = \
98	ct_util.hrl \
99	ct_netconfc.hrl
100EXTERNAL_HRL_FILES = \
101	../include/ct.hrl \
102	../include/ct_event.hrl
103
104EXTERNAL_INC_PATH = ../include
105
106DTD_FILES = \
107	mp.dtd
108
109# ----------------------------------------------------
110# FLAGS
111# ----------------------------------------------------
112ERL_COMPILE_FLAGS += -pa ../ebin -I../include -I $(ERL_TOP)/lib/snmp/include/ \
113	-I../../xmerl/inc/ -I $(ERL_TOP)/lib/kernel/include -Werror
114
115# ----------------------------------------------------
116# Targets
117# ----------------------------------------------------
118TARGET_FILES = \
119	$(GEN_ERL_FILES:%.erl=$(EBIN)/%.$(EMULATOR)) \
120	$(BEAM_FILES) \
121	$(APP_TARGET) $(APPUP_TARGET)
122
123APP_FILE= common_test.app
124APP_SRC= $(APP_FILE).src
125APP_TARGET= $(EBIN)/$(APP_FILE)
126
127APPUP_FILE= common_test.appup
128APPUP_SRC= $(APPUP_FILE).src
129APPUP_TARGET= $(EBIN)/$(APPUP_FILE)
130
131tests debug opt: $(TARGET_FILES)
132
133docs:
134
135clean:
136	rm -f $(TARGET_FILES) $(GEN_FILES)
137	rm -f core
138
139# ----------------------------------------------------
140# Special Build Targets
141# ----------------------------------------------------
142$(APP_TARGET): $(APP_SRC) ../vsn.mk
143	$(vsn_verbose)sed -e 's;%VSN%;$(VSN);' $< > $@
144
145$(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
146	$(vsn_verbose)sed -e 's;%VSN%;$(VSN);' $< > $@
147
148# ----------------------------------------------------
149# Release Target
150# ----------------------------------------------------
151include $(ERL_TOP)/make/otp_release_targets.mk
152
153release_spec: opt
154	$(INSTALL_DIR) "$(RELSYSDIR)/src"
155	$(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src"
156	$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
157	$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
158	$(INSTALL_DIR) "$(RELSYSDIR)/include"
159	$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
160
161release_tests_spec: opt
162	$(INSTALL_DIR) $(RELEASE_PATH)/common_test_test
163	$(INSTALL_DATA) $(ERL_FILES)  \
164        $(HRL_FILES) $(TARGET_FILES) $(RELEASE_PATH)/common_test_test
165
166release_docs_spec: docs
167
168# Include dependencies -- list below added by Kostis Sagonas
169$(EBIN)/cth_log_redirect.beam: ../../kernel/include/logger.hrl ../../kernel/src/logger_internal.hrl
170