1
2PACKAGE=lib${LIB}
3SHLIBDIR?=	/lib
4
5.include <src.opts.mk>
6
7OPENCSDSRC=	${SRCTOP}/contrib/opencsd
8
9.PATH:	${OPENCSDSRC}/decoder/source/ete/		\
10	${OPENCSDSRC}/decoder/source/etmv4/		\
11	${OPENCSDSRC}/decoder/source/etmv3/		\
12	${OPENCSDSRC}/decoder/source/pkt_printers/	\
13	${OPENCSDSRC}/decoder/source/mem_acc/		\
14	${OPENCSDSRC}/decoder/source/i_dec/		\
15	${OPENCSDSRC}/decoder/source/c_api/		\
16	${OPENCSDSRC}/decoder/source/ptm/		\
17	${OPENCSDSRC}/decoder/source/stm/		\
18	${OPENCSDSRC}/decoder/source/			\
19	${OPENCSDSRC}/decoder/include/opencsd/ete/	\
20	${OPENCSDSRC}/decoder/include/opencsd/etmv4/	\
21	${OPENCSDSRC}/decoder/include/opencsd/etmv3/	\
22	${OPENCSDSRC}/decoder/include/opencsd/stm/	\
23	${OPENCSDSRC}/decoder/include/opencsd/ptm/	\
24	${OPENCSDSRC}/decoder/include/opencsd/c_api/	\
25	${OPENCSDSRC}/decoder/include/opencsd/		\
26	${OPENCSDSRC}/decoder/include
27
28LIB=	opencsd
29SHLIB_MAJOR=0
30
31# Embedded Trace Extensions (ETE)
32SRCS=	\
33	trc_cmp_cfg_ete.cpp
34
35# ETMv3
36SRCS+=	\
37	trc_cmp_cfg_etmv3.cpp		\
38	trc_pkt_decode_etmv3.cpp	\
39	trc_pkt_elem_etmv3.cpp		\
40	trc_pkt_proc_etmv3.cpp		\
41	trc_pkt_proc_etmv3_impl.cpp
42
43# ETMv4
44SRCS+=	\
45	trc_cmp_cfg_etmv4.cpp			\
46	trc_etmv4_stack_elem.cpp		\
47	trc_pkt_decode_etmv4i.cpp		\
48	trc_pkt_elem_etmv4i.cpp			\
49	trc_pkt_proc_etmv4i.cpp
50
51# PKT_PRINTERS
52SRCS+=	\
53	raw_frame_printer.cpp			\
54	trc_print_fact.cpp
55
56# PTM
57SRCS+=	\
58	trc_cmp_cfg_ptm.cpp			\
59	trc_pkt_decode_ptm.cpp			\
60	trc_pkt_elem_ptm.cpp			\
61	trc_pkt_proc_ptm.cpp
62
63# STM
64SRCS+=	\
65	trc_pkt_decode_stm.cpp			\
66	trc_pkt_elem_stm.cpp			\
67	trc_pkt_proc_stm.cpp
68
69# C_API
70SRCS+=	\
71	ocsd_c_api_custom_obj.cpp		\
72	ocsd_c_api.cpp
73
74# SRC
75SRCS+=	\
76	ocsd_code_follower.cpp			\
77	ocsd_dcd_tree.cpp			\
78	ocsd_error.cpp				\
79	ocsd_error_logger.cpp			\
80	ocsd_gen_elem_list.cpp			\
81	ocsd_gen_elem_stack.cpp			\
82	ocsd_lib_dcd_register.cpp		\
83	ocsd_msg_logger.cpp			\
84	ocsd_version.cpp			\
85	trc_component.cpp			\
86	trc_core_arch_map.cpp			\
87	trc_frame_deformatter.cpp		\
88	trc_gen_elem.cpp			\
89	trc_printable_elem.cpp			\
90	trc_ret_stack.cpp
91
92# MEM_ACC
93SRCS+=	\
94	trc_mem_acc_base.cpp			\
95	trc_mem_acc_cache.cpp			\
96	trc_mem_acc_cb.cpp			\
97	trc_mem_acc_mapper.cpp			\
98	trc_mem_acc_bufptr.cpp			\
99	trc_mem_acc_file.cpp
100
101# I_DEC
102SRCS+=	\
103	trc_i_decode.cpp			\
104	trc_idec_arminst.cpp
105
106CFLAGS+=	\
107	-I${OPENCSDSRC}/decoder/include/	\
108	-I${.CURDIR}
109
110INCS=	\
111	ocsd_if_types.h			\
112	ocsd_if_version.h		\
113	trc_gen_elem_types.h		\
114	trc_pkt_types.h
115
116INCSDIR=${INCLUDEDIR}/opencsd
117
118APIINCS=	\
119	ocsd_c_api_cust_fact.h		\
120	ocsd_c_api_cust_impl.h		\
121	ocsd_c_api_custom.h		\
122	ocsd_c_api_types.h		\
123	opencsd_c_api.h
124
125APIINCSDIR=${INCLUDEDIR}/opencsd/c_api/
126
127ETEINCS=	\
128	ete_decoder.h			\
129	trc_cmp_cfg_ete.h		\
130	trc_dcd_mngr_ete.h		\
131	trc_pkt_types_ete.h
132
133ETEINCSDIR=${INCLUDEDIR}/opencsd/ete/
134
135ETMV4INCS=	\
136	etmv4_decoder.h			\
137	trc_cmp_cfg_etmv4.h		\
138	trc_dcd_mngr_etmv4i.h		\
139	trc_etmv4_stack_elem.h		\
140	trc_pkt_decode_etmv4i.h		\
141	trc_pkt_elem_etmv4i.h		\
142	trc_pkt_proc_etmv4.h		\
143	trc_pkt_proc_etmv4i.h		\
144	trc_pkt_types_etmv4.h
145
146ETMV4INCSDIR=${INCLUDEDIR}/opencsd/etmv4/
147
148ETMV3INCS=	\
149	etmv3_decoder.h			\
150	trc_cmp_cfg_etmv3.h		\
151	trc_dcd_mngr_etmv3.h		\
152	trc_pkt_decode_etmv3.h		\
153	trc_pkt_elem_etmv3.h		\
154	trc_pkt_proc_etmv3.h		\
155	trc_pkt_types_etmv3.h
156
157ETMV3INCSDIR=${INCLUDEDIR}/opencsd/etmv3/
158
159PTMINCS=	\
160	ptm_decoder.h			\
161	trc_cmp_cfg_ptm.h		\
162	trc_dcd_mngr_ptm.h		\
163	trc_pkt_decode_ptm.h		\
164	trc_pkt_elem_ptm.h		\
165	trc_pkt_proc_ptm.h		\
166	trc_pkt_types_ptm.h
167
168PTMINCSDIR=${INCLUDEDIR}/opencsd/ptm/
169
170STMINCS=	\
171	stm_decoder.h			\
172	trc_cmp_cfg_stm.h		\
173	trc_dcd_mngr_stm.h		\
174	trc_pkt_decode_stm.h		\
175	trc_pkt_elem_stm.h		\
176	trc_pkt_proc_stm.h		\
177	trc_pkt_types_stm.h
178
179STMINCSDIR=${INCLUDEDIR}/opencsd/stm/
180
181INCSGROUPS=INCS APIINCS ETEINCS ETMV3INCS ETMV4INCS PTMINCS STMINCS
182
183LIBADD= cxxrt
184
185WARNS?= 1
186
187HAS_TESTS=
188
189.include <bsd.lib.mk>
190