Skip to content
Commits on Source (12)
......@@ -676,9 +676,8 @@ function( atlas_generate_reflex_dictionary dictfile dictname )
set( pcm_name "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/" )
set( pcm_name "${pcm_name}${CMAKE_SHARED_LIBRARY_PREFIX}" )
set( pcm_name "${pcm_name}${dictname}_rdict.pcm" )
set( rootmap_name "${CMAKE_CURRENT_BINARY_DIR}" )
set( rootmap_name "${rootmap_name}${CMAKE_FILES_DIRECTORY}" )
set( rootmap_name "${rootmap_name}/${dictname}.dsomap" )
set( rootmap_name_rel "${pkgDir}${CMAKE_FILES_DIRECTORY}/${dictname}.dsomap" )
set( rootmap_name "${CMAKE_BINARY_DIR}/${rootmap_name_rel}" )
# The library's physical name:
if( APPLE )
......@@ -762,7 +761,7 @@ function( atlas_generate_reflex_dictionary dictfile dictname )
if( CMAKE_OSX_SYSROOT )
set( cmd "${cmd} -isysroot ${CMAKE_OSX_SYSROOT}" )
endif()
set( cmd "${cmd} -MM -MT ${rootmap_name} -MF ${dictname}.d" )
set( cmd "${cmd} -MM -MT ${rootmap_name_rel} -MF ${dictname}.d" )
set( cmd "${cmd} ${ARG_HEADER}\n" )
endif()
set( cmd "${cmd}${genreflex} ${ARG_HEADER}" )
......
# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
#
# Module finding HJets in the LCG release. Defines:
# - HJETS_FOUND
# - HJETS_INCLUDE_DIR
# - HJETS_INCLUDE_DIRS
# - HJETS_LIBRARIES
# - HJETS_LIBRARY_DIRS
#
# Can be steered by HJETS_LCGROOT.
#
# The LCG include(s):
include( LCGFunctions )
# Declare the external module:
lcg_external_module( NAME HJets
INCLUDE_SUFFIXES include INCLUDE_NAMES HJets/Amplitudes/AmplitudeBase.h
LIBRARY_SUFFIXES lib lib/HJets
COMPULSORY_COMPONENTS HJets${CMAKE_SHARED_LIBRARY_SUFFIX} )
# Handle the standard find_package arguments:
include( FindPackageHandleStandardArgs )
find_package_handle_standard_args( HJets DEFAULT_MSG HJETS_INCLUDE_DIR
HJETS_LIBRARIES )
mark_as_advanced( HJETS_FOUND HJETS_INCLUDE_DIR HJETS_INCLUDE_DIRS
HJETS_LIBRARIES HJETS_LIBRARY_DIRS )
# Set up the RPM dependency:
lcg_need_rpm( hjets )
......@@ -18,33 +18,114 @@ list( REMOVE_DUPLICATES Qt5_FIND_COMPONENTS )
# Use the helper macro for the wrapping:
lcg_wrap_find_module( Qt5 )
# Names of the libraries that were processed already.
set( _processedQt5Libs )
# Helper macro for adding one Qt5 imported target's properties to the
# QT5_INCLUDE_DIRS, QT5_LIBRARY_DIRS and QT5_LIBRARIES variables.
macro( _processQt5Library name )
# Check if this library was processed already or not.
if( NOT ${name} IN_LIST _processedQt5Libs )
# Remember that we've now processed this Qt5 library.
list( APPEND _processedQt5Libs ${name} )
# Get the include directories associated with this library.
get_target_property( _incDirs Qt5::${name} INTERFACE_INCLUDE_DIRECTORIES )
foreach( _incDir ${_incDirs} )
set( _relocatableIncDir ${_incDir} )
_lcg_make_paths_relocatable( _relocatableIncDir )
list( APPEND QT5_INCLUDE_DIRS
$<BUILD_INTERFACE:${_incDir}>
$<INSTALL_INTERFACE:${_relocatableIncDir}> )
unset( _relocatableIncDir )
endforeach()
unset( _incDirs )
# Add this library itself to QT5_LIBRARIES.
get_target_property( _location Qt5::${name} LOCATION )
set( _relocatableLocation ${_location} )
_lcg_make_paths_relocatable( _relocatableLocation )
list( APPEND QT5_LIBRARIES
$<BUILD_INTERFACE:${_location}>
$<INSTALL_INTERFACE:${_relocatableLocation}> )
unset( _relocatableLocation )
# Add its directory to QT5_LIBRARY_DIRS.
get_filename_component( _libDir ${_location} DIRECTORY )
set( _relocatableLibDir ${_libDir} )
_lcg_make_paths_relocatable( _relocatableLibDir )
list( APPEND QT5_LIBRARY_DIRS
$<BUILD_INTERFACE:${_libDir}>
$<INSTALL_INTERFACE:${_relocatableLibDir}> )
unset( _location )
unset( _libDir )
unset( _relocatableLibDir )
# Get the (Qt5) dependencies of this library, and process them
# recursively.
get_target_property( _dependencies Qt5::${name}
INTERFACE_LINK_LIBRARIES )
foreach( _dependency ${_dependencies} )
# Ignore non-target dependencies.
if( NOT TARGET ${_dependency} )
continue()
endif()
# Only case about Qt5 imported targets.
if( "${_dependency}" MATCHES "^Qt5::(.*)" )
_processQt5Library( ${CMAKE_MATCH_1} )
endif()
endforeach()
endif()
endmacro( _processQt5Library )
# Set the environment variables needed for the Qt5 runtime.
if( Qt5_FOUND )
# Get some useful paths and set some variables.
get_target_property( QtCore_location Qt5::Core LOCATION )
get_filename_component( QtCore_dir ${QtCore_location} DIRECTORY )
get_filename_component( Qt_dir ${QtCore_dir} DIRECTORY )
# Add the library directory to the runtime environment.
set( _relocatableLibDir "${QtCore_dir}" )
_lcg_make_paths_relocatable( _relocatableLibDir )
set( QT5_LIBRARY_DIRS
$<BUILD_INTERFACE:${QtCore_dir}>
$<INSTALL_INTERFACE:${_relocatableLibDir}> )
unset( _relocatableLibDir )
# Set up the runtime environment variables.
set( QT5_ENVIRONMENT
SET QTLIB "${QtCore_dir}"
PREPEND QT_PLUGIN_PATH "${Qt_dir}/plugins" )
# Clean up.
unset( QtCore_location )
unset( QtCore_dir )
unset( Qt_dir )
endif()
# Get some useful paths and set some variables.
get_target_property( QtCore_location Qt5::Core LOCATION )
get_filename_component( QtCore_dir ${QtCore_location} DIRECTORY )
get_filename_component( Qt_dir ${QtCore_dir} DIRECTORY )
# Add the library directory to the runtime environment.
set( _relocatableLibDir "${QtCore_dir}" )
_lcg_make_paths_relocatable( _relocatableLibDir )
set( QT5_LIBRARY_DIRS
$<BUILD_INTERFACE:${QtCore_dir}>
$<INSTALL_INTERFACE:${_relocatableLibDir}> )
unset( _relocatableLibDir )
# Set up the runtime environment variables.
set( QT5_ENVIRONMENT
FORCESET QTLIB "${QtCore_dir}"
PREPEND QT_PLUGIN_PATH "${Qt_dir}/plugins" )
# Clean up.
unset( QtCore_location )
unset( QtCore_dir )
unset( Qt_dir )
# Set up QT5_INCLUDE_DIRS and QT5_LIBRARIES as "simple" variables based
# on the imported targets provided by the Qt5 installation.
set( QT5_INCLUDE_DIRS )
set( QT5_LIBRARIES )
# Loop over the components/libraries set to be found.
foreach( _component ${Qt5_FIND_COMPONENTS} )
_processQt5Library( ${_component} )
endforeach()
# Remove all duplicates from the created variables.
list( REMOVE_DUPLICATES QT5_INCLUDE_DIRS )
list( REMOVE_DUPLICATES QT5_LIBRARY_DIRS )
list( REMOVE_DUPLICATES QT5_LIBRARIES )
endif()
# Clean up.
unset( _processedQt5Libs )
# Set up the RPM dependency.
lcg_need_rpm( Qt5 )
# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
#
# Configuration for building/configuring prmon as part of the offline
# software build.
#
# Set the name of the package:
atlas_subdir( prmon )
# In release rebuild mode stop here:
if( ATLAS_RELEASE_MODE )
return()
endif()
# Set the source
set( _prmonSource "http://cern.ch/atlas-software-dist-eos/externals/prmon/v1.1.1.tar.gz" )
set( _prmonSourceMD5 "f522381830f98041328a1da8c383a209" )
# Print what's going on
message( STATUS "Buliding prmon as part of this project" )
# Temporary directory for the build results
set( _buildDir ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/prmonBuild )
# Extras
set( _extraArgs )
if( NOT "${CMAKE_BUILD_TYPE}" STREQUAL "" )
list( APPEND _extraArgs -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} )
endif()
if( NOT "${CMAKE_CXX_STANDARD}" STREQUAL "" )
list( APPEND _extraArgs -DCMAKE_CXX_STANDARD:STRING=${CMAKE_CXX_STANDARD} )
endif()
# Build prmon for the build area:
ExternalProject_Add( prmon
PREFIX ${CMAKE_BINARY_DIR}
INSTALL_DIR ${CMAKE_BINARY_DIR}/${ATLAS_PLATFORM}
URL ${_prmonSource}
URL_MD5 ${_prmonSourceMD5}
CMAKE_CACHE_ARGS
-DCMAKE_PREFIX_PATH:PATH=${CMAKE_BINARY_DIR}/${ATLAS_PLATFORM}
-DCMAKE_INSTALL_PREFIX:PATH=${_buildDir}
${_extraArgs}
LOG_CONFIGURE 1 )
ExternalProject_Add_Step( prmon buildinstall
COMMAND ${CMAKE_COMMAND} -E copy_directory ${_buildDir}/ <INSTALL_DIR>
COMMENT "Installing prmon into the build area"
DEPENDEES install )
add_dependencies( prmon nlohmann_json )
add_dependencies( Package_prmon prmon )
# Install it here
install( DIRECTORY ${_buildDir}/
DESTINATION . USE_SOURCE_PERMISSIONS OPTIONAL )
prmon
=======
This package builds Process Monitor (prmon), a
small stand alone program that can monitor the
resource consumption of a process and its children.
See https://github.com/HSF/prmon for more information.
......@@ -18,6 +18,7 @@
+ External/lwtnn
+ External/MKL
+ External/nlohmann_json
+ External/prmon
+ External/Simage
+ External/SoQt
+ External/dSFMT
......