Unfortunately, this does not add PCM_ROOT_DIR as a customizable variable in the cmake-gui. Any ideas?
On Fri, May 8, 2015 at 3:35 PM, <[email protected]> wrote: > # HG changeset patch > # User Deepthi Nandakumar <[email protected]> > # Date 1431064348 -19800 > # Fri May 08 11:22:28 2015 +0530 > # Node ID 4203e7ac7d784a307d6d7174f69d96a86bc576c8 > # Parent 7a1fd70739410f874f8ccd51ad688a29364d5e72 > cmake: add support for finding Intel PCM on Windows > > diff -r 7a1fd7073941 -r 4203e7ac7d78 source/CMakeLists.txt > --- a/source/CMakeLists.txt Tue May 05 14:44:19 2015 -0700 > +++ b/source/CMakeLists.txt Fri May 08 11:22:28 2015 +0530 > @@ -296,7 +296,7 @@ > endif() > endif(WARNINGS_AS_ERRORS) > > -if (WIN32) > +if(WIN32) > # Visual leak detector > find_package(VLD QUIET) > if(VLD_FOUND) > @@ -314,7 +314,20 @@ > # default to targeting Windows 7 for the NUMA APIs > add_definitions(-D_WIN32_WINNT=_WIN32_WINNT_WIN7) > endif(WINXP_SUPPORT) > -endif() > +endif(WIN32) > + > +if(WIN32) > + option(ENABLE_PCM "Enable profiling using Intel Performance Counter > Monitor" OFF) > + if(ENABLE_PCM) > + find_package(PCM) > + if(PCM_FOUND) > + add_definitions(-DENABLE_PCM) > + list(APPEND PLATFORM_LIBS PCM) > + include_directories(${PCM_ROOT_DIR}) > + add_subdirectory(profile/PCM) > + endif(PCM_FOUND) > + endif(ENABLE_PCM) > +endif(WIN32) > > include(version) # determine X265_VERSION and X265_LATEST_TAG > include_directories(. common encoder "${PROJECT_BINARY_DIR}") > @@ -478,7 +491,6 @@ > source_group(input FILES ${InputFiles}) > source_group(output FILES ${OutputFiles}) > source_group(filters FILES ${FilterFiles}) > - > check_include_files(getopt.h HAVE_GETOPT_H) > if(NOT HAVE_GETOPT_H) > if(MSVC) > diff -r 7a1fd7073941 -r 4203e7ac7d78 source/cmake/FindPCM.cmake > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/source/cmake/FindPCM.cmake Fri May 08 11:22:28 2015 +0530 > @@ -0,0 +1,25 @@ > +include(FindPackageHandleStandardArgs) > +SET(PCM_ROOT_DIR "C:/Program > Files/Intel/IntelPerformanceCounterMonitorV2.8" CACHE PATH "Location of > Intel PCM Root Directory") > + > +find_path(PCM_ROOT_DIR > + NAMES cpucounters.h > + HINTS ${PCM_ROOT_DIR} > + DOC "PCM root directory") > + > +if(X64) > + find_path(PCM_OBJ_DIR > + NAMES cpucounters.obj > + HINTS ${PCM_ROOT_DIR} > + PATH_SUFFIXES PCM_Win/x64/Release PCM_Win/x64/Debug > + DOC "PCM Object files") > +else() > + find_path(PCM_OBJ_DIR > + NAMES cpucounters.obj > + HINTS ${PCM_ROOT_DIR} > + PATH_SUFFIXES PCM_Win/Release PCM_Win/Debug > + DOC "PCM Object files") > +endif(X64) > + > +mark_as_advanced(PCM_ROOT_DIR PCM_OBJ_DIR) > + > +find_package_handle_standard_args(PCM REQUIRED_VARS PCM_ROOT_DIR > PCM_OBJ_DIR) > diff -r 7a1fd7073941 -r 4203e7ac7d78 source/profile/CMakeLists.txt > --- a/source/profile/CMakeLists.txt Tue May 05 14:44:19 2015 -0700 > +++ b/source/profile/CMakeLists.txt Fri May 08 11:22:28 2015 +0530 > @@ -23,3 +23,16 @@ > list(APPEND PLATFORM_LIBS libittnotify.a dl) > endif() > endif(ENABLE_VTUNE) > + > +if(WIN32) > + option(ENABLE_PCM "Enable profiling using Intel Performance Counter > Monitor" OFF) > + if(ENABLE_PCM) > + find_package(PCM) > + if(PCM_FOUND) > + add_definitions(-DENABLE_PCM) > + add_subdirectory(PCM) > + list(APPEND PLATFORM_LIBS pcm) > + include_directories(${PCM_ROOT_DIR}) > + endif(PCM_FOUND) > + endif(ENABLE_PCM) > +endif(WIN32) > \ No newline at end of file > diff -r 7a1fd7073941 -r 4203e7ac7d78 source/profile/PCM/CMakeLists.txt > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/source/profile/PCM/CMakeLists.txt Fri May 08 11:22:28 2015 +0530 > @@ -0,0 +1,5 @@ > +include_directories(${PCM_ROOT_DIR}) > +file(GLOB PCMFiles ${PCM_OBJ_DIR}/cpucounters.obj > ${PCM_OBJ_DIR}/client_bw.obj ${PCM_OBJ_DIR}/msr.obj > + ${PCM_OBJ_DIR}/pci.obj ${PCM_OBJ_DIR}/winpmem.obj > ${PCM_OBJ_DIR}/utils.obj) > +source_group(ObjFiles FILES ${PCMFiles}) > +add_library(PCM ${PCMFiles} pcm.h pcm.cpp) > diff -r 7a1fd7073941 -r 4203e7ac7d78 source/profile/PCM/pcm.cpp > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/source/profile/PCM/pcm.cpp Fri May 08 11:22:28 2015 +0530 > @@ -0,0 +1,22 @@ > > +/***************************************************************************** > + * Copyright (C) 2015 x265 project > + * > + * Authors: Deepthi Nandakumar <[email protected]> > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, > USA. > + * > + * This program is also available under a commercial proprietary license. > + * For more information, contact us at license @ x265.com. > + > *****************************************************************************/ > \ No newline at end of file > diff -r 7a1fd7073941 -r 4203e7ac7d78 source/profile/PCM/pcm.h > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/source/profile/PCM/pcm.h Fri May 08 11:22:28 2015 +0530 > @@ -0,0 +1,29 @@ > > +/***************************************************************************** > + * Copyright (C) 2015 x265 project > + * > + * Authors: Deepthi Nandakumar <[email protected]> > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, > USA. > + * > + * This program is also available under a commercial proprietary license. > + * For more information, contact us at license @ x265.com. > + > *****************************************************************************/ > + > +#ifndef PCM_H > +#define PCM_H > + > +#include "cpucounters.h" > + > +#endif > \ No newline at end of file >
_______________________________________________ x265-devel mailing list [email protected] https://mailman.videolan.org/listinfo/x265-devel
