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