Skip to content

Commit 62f522b

Browse files
authored
Merge pull request #154 from intel-innersource/add_silent
Added PCM_SILENT define usage to PCM_STATIC
2 parents 5405daf + 0e9f3c5 commit 62f522b

File tree

2 files changed

+29
-16
lines changed

2 files changed

+29
-16
lines changed

src/CMakeLists.txt

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,29 +30,40 @@ set(PROJECT_NAMES pcm pcm-numa pcm-latency pcm-power pcm-msr pcm-memory pcm-ts
3030
file(GLOB COMMON_SOURCES msr.cpp cpucounters.cpp pci.cpp mmio.cpp bw.cpp utils.cpp topology.cpp debug.cpp threadpool.cpp)
3131
file(GLOB UNUX_SOURCES dashboard.cpp resctrl.cpp)
3232

33-
if(LINUX OR FREE_BSD)
33+
if(UNIX) # LINUX, FREE_BSD, APPLE
3434
list(APPEND PROJECT_NAMES pcm-sensor)
3535
if(LINUX)
3636
list(APPEND PROJECT_NAMES pcm-sensor-server)
37-
endif(LINUX)
38-
add_library(PCM_STATIC STATIC ${COMMON_SOURCES} ${UNUX_SOURCES})
39-
set_target_properties(PCM_STATIC PROPERTIES OUTPUT_NAME pcm)
40-
41-
add_library(PCM_SHARED SHARED pcm-core.cpp)
42-
target_link_libraries(PCM_SHARED PRIVATE PCM_STATIC Threads::Threads)
43-
set_target_properties(PCM_SHARED PROPERTIES OUTPUT_NAME pcm)
44-
endif(LINUX OR FREE_BSD)
37+
endif()
4538

46-
if(APPLE)
47-
list(APPEND PROJECT_NAMES pcm-sensor)
39+
# libpcm.a
4840
add_library(PCM_STATIC STATIC ${COMMON_SOURCES} ${UNUX_SOURCES})
49-
include_directories("${CMAKE_SOURCE_DIR}/src/MacMSRDriver") # target_include_directories doesn't work
5041
set_target_properties(PCM_STATIC PROPERTIES OUTPUT_NAME pcm)
5142

43+
# libpcm.a with -DPCM_SILENT for Release*
44+
add_library(PCM_STATIC_SILENT STATIC ${COMMON_SOURCES} ${UNUX_SOURCES})
45+
target_compile_definitions(PCM_STATIC_SILENT PRIVATE
46+
$<$<CONFIG:Release>:PCM_SILENT>
47+
$<$<CONFIG:MinSizeRel>:PCM_SILENT>
48+
$<$<CONFIG:RelWithDebInfo>:PCM_SILENT>
49+
)
50+
51+
# libpcm.so
5252
add_library(PCM_SHARED SHARED pcm-core.cpp)
53-
target_link_libraries(PCM_SHARED PRIVATE PCM_STATIC PcmMsr Threads::Threads)
53+
# PCM_SILENT in Release* for pcm-core.cpp
54+
target_compile_definitions(PCM_SHARED PRIVATE
55+
$<$<CONFIG:Release>:PCM_SILENT>
56+
$<$<CONFIG:MinSizeRel>:PCM_SILENT>
57+
$<$<CONFIG:RelWithDebInfo>:PCM_SILENT>
58+
)
59+
if(APPLE)
60+
include_directories("${CMAKE_SOURCE_DIR}/src/MacMSRDriver") # target_include_directories doesn't work
61+
target_link_libraries(PCM_SHARED PRIVATE PCM_STATIC_SILENT PcmMsr Threads::Threads)
62+
else()
63+
target_link_libraries(PCM_SHARED PRIVATE PCM_STATIC_SILENT Threads::Threads)
64+
endif()
5465
set_target_properties(PCM_SHARED PROPERTIES OUTPUT_NAME pcm)
55-
endif(APPLE)
66+
endif()
5667

5768
if(MSVC)
5869
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHa /Zi")
@@ -65,7 +76,7 @@ if(MSVC)
6576
# Rest of windows/* files + restrictDriverAccess.cpp -> PCM_STATIC
6677
file(GLOB WINDOWS_SOURCES winpmem/winpmem.cpp windows/stdafx.cpp freegetopt/getopt.cpp)
6778
add_library(PCM_STATIC STATIC $<TARGET_OBJECTS:restrictDriverAccess> ${COMMON_SOURCES} ${WINDOWS_SOURCES})
68-
target_compile_definitions(PCM_STATIC PRIVATE _UNICODE UNICODE _CONSOLE)
79+
target_compile_definitions(PCM_STATIC PRIVATE UNICODE _UNICODE _CONSOLE)
6980

7081
# Graphical perfmon front-end: pcm-lib, pcm-service
7182
# Files: COMMON_FILES() + pcm-lib.cpp winpmem\winpmem.cpp dllmain.cpp

src/cpucounters.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3893,7 +3893,9 @@ void PCM::cleanupPMU(const bool silent)
38933893
if (!silent) std::cerr << " Zeroed PMU registers\n";
38943894
#endif
38953895
}
3896-
3896+
#ifdef PCM_SILENT
3897+
#pragma GCC diagnostic ignored "-Wunused-parameter"
3898+
#endif
38973899
void PCM::cleanupUncorePMUs(const bool silent)
38983900
{
38993901
for (auto & sPMUs : iioPMUs)

0 commit comments

Comments
 (0)