xref: /freebsd/lib/libpmc/Makefile (revision e52d92164754cbfff84767d4c6eb3cc93e8c21ae)
1# $FreeBSD$
2
3PACKAGE=lib${LIB}
4LIB=	pmc
5
6SRCS=	libpmc.c pmclog.c libpmc_pmu_util.c
7INCS=	pmc.h pmclog.h
8
9CFLAGS+= -I${.CURDIR}
10
11.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
12
13.if ${MACHINE_ARCH} == "aarch64"
14EVENT_ARCH="arm64"
15.elif ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
16EVENT_ARCH="x86"
17.elif ${MACHINE_ARCH} == "powerpc"
18EVENT_ARCH="powerpc"
19.endif
20
21JEVENTS= ${BTOOLSPATH:U.}/pmu-events/jevents
22# This file is built in a subdirectory so never try to rebuild
23# it here due to missing meta file.
24${JEVENTS}: .NOMETA
25
26libpmc_events.c: ${JEVENTS}
27	${JEVENTS} ${EVENT_ARCH} ${.CURDIR}/pmu-events/arch libpmc_events.c
28SRCS+= libpmc_events.c
29.endif
30
31MAN=	pmc.3
32MAN+=	pmc_allocate.3
33MAN+=	pmc_attach.3
34MAN+=	pmc_capabilities.3
35MAN+=	pmc_configure_logfile.3
36MAN+=	pmc_disable.3
37MAN+=	pmc_event_names_of_class.3
38MAN+=	pmc_get_driver_stats.3
39MAN+=	pmc_get_msr.3
40MAN+=	pmc_init.3
41MAN+=	pmc_name_of_capability.3
42MAN+=	pmc_read.3
43MAN+=	pmc_set.3
44MAN+=	pmc_start.3
45MAN+=	pmclog.3
46MAN+=	pmc.soft.3
47
48# PMC-dependent manual pages
49MAN+=	pmc.atom.3
50MAN+=	pmc.atomsilvermont.3
51MAN+=	pmc.core.3
52MAN+=	pmc.core2.3
53MAN+=	pmc.corei7.3
54MAN+=	pmc.corei7uc.3
55MAN+=	pmc.haswell.3
56MAN+=	pmc.haswelluc.3
57MAN+=	pmc.haswellxeon.3
58MAN+=	pmc.iaf.3
59MAN+=	pmc.ivybridge.3
60MAN+=	pmc.ivybridgexeon.3
61MAN+=	pmc.k7.3
62MAN+=	pmc.k8.3
63MAN+=	pmc.mips24k.3
64MAN+=	pmc.octeon.3
65MAN+=	pmc.p4.3
66MAN+=	pmc.p5.3
67MAN+=	pmc.p6.3
68MAN+=	pmc.sandybridge.3
69MAN+=	pmc.sandybridgeuc.3
70MAN+=	pmc.sandybridgexeon.3
71MAN+=	pmc.tsc.3
72MAN+=	pmc.ucf.3
73MAN+=	pmc.westmere.3
74MAN+=	pmc.westmereuc.3
75MAN+=	pmc.xscale.3
76
77MLINKS+= \
78	pmc_allocate.3 pmc_release.3 \
79	pmc_attach.3 pmc_detach.3 \
80	pmc_capabilities.3 pmc_ncpu.3 \
81	pmc_capabilities.3 pmc_npmc.3 \
82	pmc_capabilities.3 pmc_pmcinfo.3 \
83	pmc_capabilities.3 pmc_cpuinfo.3 \
84	pmc_capabilities.3 pmc_width.3 \
85	pmc_configure_logfile.3 pmc_flush_logfile.3 \
86	pmc_configure_logfile.3 pmc_writelog.3 \
87	pmc_disable.3 pmc_enable.3 \
88	pmc_name_of_capability.3 pmc_name_of_class.3 \
89	pmc_name_of_capability.3 pmc_name_of_cputype.3 \
90	pmc_name_of_capability.3 pmc_name_of_disposition.3 \
91	pmc_name_of_capability.3 pmc_name_of_event.3 \
92	pmc_name_of_capability.3 pmc_name_of_mode.3 \
93	pmc_name_of_capability.3 pmc_name_of_state.3 \
94	pmc_read.3 pmc_rw.3 \
95	pmc_read.3 pmc_write.3 \
96	pmc_start.3 pmc_stop.3
97
98MLINKS+= \
99	pmclog.3 pmclog_open.3 \
100	pmclog.3 pmclog_close.3 \
101	pmclog.3 pmclog_feed.3 \
102	pmclog.3 pmclog_read.3
103
104.include <bsd.lib.mk>
105