5 SRCS= libpmc.c pmclog.c libpmc_pmu_util.c libpmc_json.cc
6 INCS= pmc.h pmclog.h pmcformat.h
8 CFLAGS+= -I${SRCTOP}/${RELDIR:H}/libpmcstat
11 .if ${MACHINE_CPUARCH} == "aarch64"
13 .elif ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
15 .elif ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH:Mpowerpc64*} != ""
18 # This will generate an empty events table
22 .if ${MK_DIRDEPS_BUILD} == "yes"
23 # avoid circular dependency
24 GENDIRDEPS_FILTER+= N${RELDIR:H}/libpmcstat
25 JEVENTS?= ${HOST_OBJTOP}/${RELDIR}/pmu-events/jevents
27 JEVENTS= ${BTOOLSPATH:U.}/pmu-events/jevents
29 # This file is built in a subdirectory so never try to rebuild it here.
36 libpmc_events.c: ${JEVENTS} .META
37 ${JEVENTS} ${EVENT_ARCH} ${.CURDIR}/pmu-events/arch ${.TARGET}.tmp
38 if [ ! -e ${.TARGET} ] || ! cmp -s ${.TARGET} ${.TARGET}.tmp; then \
39 mv -f ${.TARGET}.tmp ${.TARGET}; \
41 CLEANFILES+= libpmc_events.c libpmc_events.c.tmp
42 SRCS+= libpmc_events.c
46 CFLAGS+= -I${.CURDIR} -I${SRCTOP}/sys
47 CWARNFLAGS.gcc+= -Wno-shadow -Wno-cast-align
49 # Silence warnings about usage of deprecated std::auto_ptr
50 CXXWARNFLAGS+= -Wno-deprecated-declarations
55 MAN+= pmc_capabilities.3
56 MAN+= pmc_configure_logfile.3
58 MAN+= pmc_event_names_of_class.3
59 MAN+= pmc_get_driver_stats.3
62 MAN+= pmc_name_of_capability.3
69 # PMC-dependent manual pages
71 MAN+= pmc.atomsilvermont.3
80 MAN+= pmc.haswellxeon.3
83 MAN+= pmc.ivybridgexeon.3
86 MAN+= pmc.sandybridge.3
87 MAN+= pmc.sandybridgeuc.3
88 MAN+= pmc.sandybridgexeon.3
92 MAN+= pmc.westmereuc.3
95 pmc_allocate.3 pmc_release.3 \
96 pmc_attach.3 pmc_detach.3 \
97 pmc_capabilities.3 pmc_ncpu.3 \
98 pmc_capabilities.3 pmc_npmc.3 \
99 pmc_capabilities.3 pmc_pmcinfo.3 \
100 pmc_capabilities.3 pmc_cpuinfo.3 \
101 pmc_capabilities.3 pmc_width.3 \
102 pmc_configure_logfile.3 pmc_flush_logfile.3 \
103 pmc_configure_logfile.3 pmc_writelog.3 \
104 pmc_disable.3 pmc_enable.3 \
105 pmc_name_of_capability.3 pmc_name_of_class.3 \
106 pmc_name_of_capability.3 pmc_name_of_cputype.3 \
107 pmc_name_of_capability.3 pmc_name_of_disposition.3 \
108 pmc_name_of_capability.3 pmc_name_of_event.3 \
109 pmc_name_of_capability.3 pmc_name_of_mode.3 \
110 pmc_name_of_capability.3 pmc_name_of_state.3 \
111 pmc_read.3 pmc_rw.3 \
112 pmc_read.3 pmc_write.3 \
113 pmc_start.3 pmc_stop.3
116 pmclog.3 pmclog_open.3 \
117 pmclog.3 pmclog_close.3 \
118 pmclog.3 pmclog_feed.3 \
119 pmclog.3 pmclog_read.3
121 .include <bsd.lib.mk>