Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ATDM: Recursively set group and perms on install dir (ATDV-241) #7285

Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion cmake/ctest/drivers/atdm/utils/setup_env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,11 @@ if [ "${ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE}" != "" ] ; then
# pages where this build will end up.
CDASH_TESTING_DATE=`${WORKSPACE}/Trilinos/cmake/ctest/drivers/trilinos_cdash_build_testing_day.sh`

if [[ "${ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}" == "" ]] ; then
export ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR="${ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE}/${CDASH_TESTING_DATE}"
fi
echo "ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=${ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}"

# Get a unique name for the build that includes the system name, but not the
# 'Trilinos-atdm-' prefix. For example, for the build name
# 'Trilinos-atdm-cee-rhel6_clang-5.0.1_openmpi-1.10.2_serial_static_opt'
Expand All @@ -89,9 +94,15 @@ if [ "${ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE}" != "" ] ; then
SYSTEM_AND_BUILD_NAME=`echo $JOB_NAME | sed 's/.*Trilinos-atdm-\(.*\)$/\1/'`

# Full install dir path <install-prefix-base>/<date>/<system-build-name>
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX="${ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE}/${CDASH_TESTING_DATE}/${SYSTEM_AND_BUILD_NAME}"
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX="${ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}/${SYSTEM_AND_BUILD_NAME}"

# Show the full install dir path
echo "ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX=${ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX}"

fi

if [[ "${ATDM_CONFIG_MAKE_INSTALL_GROUP}" == "" ]] \
&& [[ "${ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT}" != "" ]] ; then
export ATDM_CONFIG_MAKE_INSTALL_GROUP="${ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT}"
fi
echo "ATDM_CONFIG_MAKE_INSTALL_GROUP=${ATDM_CONFIG_MAKE_INSTALL_GROUP}"
11 changes: 11 additions & 0 deletions cmake/std/atdm/ATDMDevEnvSettings.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -471,6 +471,17 @@ IF (COMMAND INSTALL AND NOT "${CMAKE_INSTALL_PREFIX}" STREQUAL "")
$ENV{ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX} CACHE FILEPATH )
ENDIF()

IF (NOT "$ENV{ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}" STREQUAL "")
ATDM_SET_CACHE(Trilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR
"$ENV{ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}"
CACHE FILEPATH)
ENDIF()

ATDM_SET_CACHE(Trilinos_MAKE_INSTALL_GROUP "$ENV{ATDM_CONFIG_MAKE_INSTALL_GROUP}"
CACHE STRING)
ATDM_SET_ENABLE(Trilinos_MAKE_INSTALL_GROUP_WRITABLE TRUE)
ATDM_SET_ENABLE(Trilinos_MAKE_INSTALL_WORLD_READABLE TRUE)

ATDM_SET_CACHE(Trilinos_INSTALL_PBP_RUNNER "$ENV{ATDM_CONFIG_INSTALL_PBP_RUNNER}"
CACHE FILEPATH)

Expand Down
25 changes: 25 additions & 0 deletions cmake/std/atdm/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,31 @@ value that might be passed in or set otherwise. (This is a `FORCE`D cache
variable set on `CMAKE_INSTALL_PREFIX` so this value will appear in the
`CMakeCache.txt` file.)

If permissions need to be set on a basdir of `CMAKE_INSTALL_PREFIX`, then one
can set a base dir of this through:

```
$ export ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=<install-base-dir>
```

where `<install-base-dir>` must be a base directory of `<install-prefix>`. If
not explicitly set in this way, then it is assumed to be whatever the set
value is for `CMAKE_INSTALL_PREFIX`.

By default, every file and directory created during the install under
`<install-base-dir>` will be made explicitly group read/write and "other"
readable. (That can be changed by setting CMake Cache vars starting wtih
`Trilinos_MAKE_INSTALL_`.)

The owning group for everything under `<install-base-dir>` can be set using:

```
$ export ATDM_CONFIG_MAKE_INSTALL_GROUP=<owning-group>
```

Otherwise, the owning group will be set by the group sticky bit or by the
default user's group (on systems that don't support the group sticky bit).

The name of the installed script `load_matching_env.sh` can be changed at
configure-time using the CMake cache variable:

Expand Down
4 changes: 4 additions & 0 deletions cmake/std/atdm/ats1/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -199,4 +199,8 @@ export EUCLID_ROOT=${sparc_tpl_prefix_path}/${system_name}-${node_arch}/euclid-2
# Define and export atdm_run_script_on_compute_node
source $ATDM_SCRIPT_DIR/common/define_run_on_slurm_compute_node_func.sh

# Install-related stuff
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/projects/atdm_devops/trilinos_installs
export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops

export ATDM_CONFIG_COMPLETED_ENV_SETUP=TRUE
3 changes: 2 additions & 1 deletion cmake/std/atdm/ats2/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -255,8 +255,9 @@ export F77=mpifort
export FC=mpifort
export F90=mpifort

# Default install location
# Install-related stuff
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/projects/atdm_devops/trilinos_installs/
export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops

# System-info for what ATS-2 system we are using
if [[ "${ATDM_CONFIG_KNOWN_HOSTNAME}" == "vortex" ]] ; then
Expand Down
3 changes: 3 additions & 0 deletions cmake/std/atdm/cts1/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,6 @@ export ATDM_CONFIG_SLURM_DEFAULT_ACCOUNT=fy150090
source $ATDM_SCRIPT_DIR/common/toss3/environment_new.sh

export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/projects/atdm_devops/trilinos_installs/
export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops

export ATDM_CONFIG_COMPLETED_ENV_SETUP=TRUE
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no race going on (this is not parallel code). Might be better to remove these vars from common/toss3/environment_new.sh since TOSS-3 is an OS system env, not a particular cluster.

1 change: 1 addition & 0 deletions cmake/std/atdm/sems-rhel6/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,7 @@ export ATDM_CONFIG_MPI_PRE_FLAGS="--bind-to;none"

export ATDM_CONFIG_WORKSPACE_BASE_DEFAULT=/home/atdm-devops-admin/jenkins
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/home/atdm-devops-admin/trilinos_installs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could be removed.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, that is pointing to /home/atdm-devops-admin/ instead of the default location of /projects/atdm_devops/.

export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops
export ATDM_CONFIG_INSTALL_PBP_RUNNER_DEFAULT=/home/atdm-devops-admin/tools/run-as-atdm-devops-admin

#
Expand Down
5 changes: 5 additions & 0 deletions cmake/std/atdm/sems-rhel7/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -282,4 +282,9 @@ export MPIF90=`which mpif90`

export ATDM_CONFIG_MPI_PRE_FLAGS="--bind-to;none"

# Install-related stuff
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/projects/atdm_devops/trilinos_installs
export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops
e10harvey marked this conversation as resolved.
Show resolved Hide resolved
# NOTE: Above assumes that one is running on a CEE RHE7 machine!

export ATDM_CONFIG_COMPLETED_ENV_SETUP=TRUE
8 changes: 8 additions & 0 deletions cmake/std/atdm/utils/unset_atdm_config_vars_environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ unset ATDM_CONFIG_MPI_POST_FLAGS
unset ATDM_CONFIG_WORKSPACE_BASE_DEFAULT
unset ATDM_CONFIG_INSTALL_PBP_RUNNER_DEFAULT
unset ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT
unset ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT
unset ATDM_CONFIG_SBATCH_DEFAULT_TIMEOUT
unset ATDM_CONFIG_SBATCH_DEFAULT_ACCOUNT
unset atdm_run_script_on_compute_node
Expand All @@ -60,3 +61,10 @@ unset ATDM_CONFIG_MPI_EXEC_NUMPROCS_FLAG
unset atdm_run_script_on_compute_node
unset ATDM_CONFIG_Trilinos_LINK_SEARCH_START_STATIC
unset ATDM_CONFIG_SBATCH_EXTRA_ARGS

# NOTE: Not unsetting the following env vars on purpose because we want users
# to be able to set them before sourcing atdm/load-env.sh <buildname>:
#
# * ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX
# * ATDM_CONFIG_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR
# * ATDM_CONFIG_MAKE_INSTALL_GROUP
1 change: 1 addition & 0 deletions cmake/std/atdm/van1-tx2/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ export ATDM_CONFIG_WCID_ACCOUNT_DEFAULT=fy150090

# Install related
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/projects/atdm_devops/trilinos_installs
export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops

#
# Done
Expand Down
1 change: 1 addition & 0 deletions cmake/std/atdm/waterman/environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,7 @@ export ATDM_CONFIG_MPI_POST_FLAGS="-map-by;socket:PE=4"

export ATDM_CONFIG_WORKSPACE_BASE_DEFAULT=/home/atdm-devops-admin/jenkins
export ATDM_CONFIG_TRIL_CMAKE_INSTALL_PREFIX_DATE_BASE_DEFAULT=/home/atdm-devops-admin/trilinos_installs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could be removed.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no such thing as /projects/atdm_devops/ on 'waterman' and they were not willing to set one up. Therefore, we had to use /home/atdm-devops-admin/ to do Trilinos installs under.

export ATDM_CONFIG_MAKE_INSTALL_GROUP_DEFAULT=wg-run-as-atdm-devops
export ATDM_CONFIG_INSTALL_PBP_RUNNER_DEFAULT=/home/atdm-devops-admin/tools/run-as-atdm-devops-admin

#
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
INCLUDE(TribitsAddInstallGroupAndPermsFixups)

TRIBITS_ADD_INSTALL_GROUP_AND_PERMS_FIXUPS()

# NOTE: This is a workaround for a problem with an issue with CMake where you
# must call install(SCRIPT ...) in a subdirectory added with
# add_subdirectory() in order for CMake to run that install script after all
# of the other subdirectories (which are TriBITS packages). As of CMake 3.14,
# you can set the policy set_policy(CMP0082 NEW) which would have allowed us
# to put this in the base TRIBITS_PROJECT_IMPL() macro. But since TriBITS is
# not allowed to require CMake 3.14 yet, we must use this workaround. To make
# super sure that this install(SCRIPTS ...) script will get called last, the
# policy CMP0082 is set to NEW in the TribitsCMakePolicies.cmake file. In
# automated testing of TriBITS, this seems to show that this custom script
# runs after all of the other files get installed (even with CMake 3.11) and
# passes the automated tests that ensures that the last file installed is
# given the correct permissions! At least that is what happened with TriBITS.
18 changes: 17 additions & 1 deletion cmake/tribits/core/installation/cmake_pbp_install.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,39 @@
# 'cmake -P cmake_install.cmake' command fails.
#

set(PROJECT_BINARY_DIR @PROJECT_BINARY_DIR@)
set(TRIBITS_ENABLED_PACKAGES_BINARY_DIRS @TRIBITS_ENABLED_PACKAGES_BINARY_DIRS@)

execute_process(COMMAND @CMAKE_COMMAND@ -P cmake_install.cmake
execute_process(
COMMAND @CMAKE_COMMAND@ -P "${PROJECT_BINARY_DIR}/cmake_install.cmake"
RESULT_VARIABLE global_install_rtn)

if (NOT global_install_rtn EQUAL 0)

message(
"\n"
"***\n"
"*** The global install failed so resorting to package-by-package installs\n"
"***\n"
"\n"
)

foreach (pkg_binary_dir ${TRIBITS_ENABLED_PACKAGES_BINARY_DIRS})
execute_process(COMMAND @CMAKE_COMMAND@ -P cmake_install.cmake
WORKING_DIRECTORY ${pkg_binary_dir}
RESULT_VARIABLE global_install_rtn)
endforeach()
message(SEND_ERROR "Error, full install failed!")

set(set_installed_group_and_permissions_file
"${PROJECT_BINARY_DIR}/set_installed_group_and_permissions.cmake")
if (EXISTS "${set_installed_group_and_permissions_file}")
execute_process(
COMMAND @CMAKE_COMMAND@ -P "${set_installed_group_and_permissions_file}"
RESULT_VARIABLE set_installed_rtn)
if (NOT global_install_rtn EQUAL 0)
message(SEND_ERROR "ERROR: Fixup of group and permissions filed!")
endif()
endif()

endif()
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
#!/bin/sh

#
# Configured inputs
#

# Base install dir and subdirs where last element in array gives CMAKE_INSTALL_PREFIX
SET(projectInstallBaseDir "@PROJECT_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR@")
SET(projectSubdirPathsArray "@PROJECT_SUBDIR_PATHS_ARRAY@")
# Group and permissions
SET(PROJECT_MAKE_INSTALL_GROUP "@PROJECT_MAKE_INSTALL_GROUP@")
SET(PROJECT_MAKE_INSTALL_PERMS_CHANGE "@PROJECT_MAKE_INSTALL_PERMS_CHANGE@")

# Helper functions

SET(CHMOD_CHGRP_IDX 0)

FUNCTION(ECHO_AND_RUN_CMND)
STRING(REPLACE ";" " " CMND_STR "${ARGN}")
MESSAGE(STATUS "${CHMOD_CHGRP_IDX}: Running: ${CMND_STR}")
EXECUTE_PROCESS(COMMAND ${ARGN} RESULT_VARIABLE RTN_CODE)
IF (NOT RTN_CODE EQUAL 0)
MESSAGE(SEND_ERROR "ERROR: Above command failed!")
ENDIF()
ENDFUNCTION()

FUNCTION(SET_DIR_OWNER_AND_PERMS dirPath recurseFlag)

IF (NOT "${PROJECT_MAKE_INSTALL_GROUP}" STREQUAL "")
ECHO_AND_RUN_CMND(
chgrp ${PROJECT_MAKE_INSTALL_GROUP} ${recurseFlag} "${dirPath}")
ENDIF()

IF (NOT "${PROJECT_MAKE_INSTALL_PERMS_CHANGE}" STREQUAL "")
ECHO_AND_RUN_CMND(
chmod ${PROJECT_MAKE_INSTALL_PERMS_CHANGE} ${recurseFlag} "${dirPath}")
ENDIF()

MATH(EXPR CHMOD_CHGRP_IDX "${CHMOD_CHGRP_IDX}+1")
SET(CHMOD_CHGRP_IDX ${CHMOD_CHGRP_IDX} PARENT_SCOPE)

ENDFUNCTION()

# Executable script

IF (EXISTS "${projectInstallBaseDir}")

LIST(LENGTH projectSubdirPathsArray numSubDirs)

# Get projectSubdirPathsArrayLessOne and CMAKE_INSTALL_PREFIX
SET(projectSubdirPathsArrayLessOne "${projectSubdirPathsArray}")
IF (numSubDirs GREATER 0)
LIST(REMOVE_AT projectSubdirPathsArrayLessOne -1)
ENDIF()

# Loop over base dirs and set group and permissions and set CMAKE_INSTALL_PREFIX
SET(dirPath "${projectInstallBaseDir}")
IF (numSubDirs EQUAL 0)
# The base dir is CMAKE_INSTALL_PREFIX
SET(CMAKE_INSTALL_PREFIX "${dirPath}")
ELSE()
# Non-recursive set of the group and permissions
SET_DIR_OWNER_AND_PERMS("${dirPath}" "")
FOREACH(subDirEle ${projectSubdirPathsArrayLessOne})
SET(dirPath "${dirPath}/${subDirEle}")
SET_DIR_OWNER_AND_PERMS("${dirPath}" "")
ENDFOREACH()
# Append last subdir which gives CMAKE_INSTALL_PREFIX
LIST(GET projectSubdirPathsArray -1 lastSubdir)
SET(CMAKE_INSTALL_PREFIX "${dirPath}/${lastSubdir}")
ENDIF()

# Recursive set of group and permsisions on CMAKE_INSTALL_PREFIX
SET_DIR_OWNER_AND_PERMS("${CMAKE_INSTALL_PREFIX}" "-R")

ELSE()

MESSAGE(FATAL_ERROR
""
"*** ERROR: The directory:"
"***"
"*** ${projectInstallBaseDir}"
"***"
"*** does not exist so can't fix group and permissions!"
"***"
""
)

ENDIF()
3 changes: 1 addition & 2 deletions cmake/tribits/core/package_arch/TribitsAddExecutable.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -326,8 +326,7 @@ INCLUDE(CMakeParseArguments)
# CMake command ``INSTALL(TARGETS <exeTargetName> ...)`` is added to install
# the built executable into the ``${CMAKE_INSTALL_PREFIX}/bin/`` directory
# (actual install directory path is determined by
# ``${PROJECT_NAME}_INSTALL_RUNTIME_DIR``, see `Setting the install prefix at
# configure time`_) .
# ``${PROJECT_NAME}_INSTALL_RUNTIME_DIR``, see `Setting the install prefix`_).
#
FUNCTION(TRIBITS_ADD_EXECUTABLE EXE_NAME)

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
INCLUDE(Join)
INCLUDE(TribitsFilepathHelpers)


FUNCTION(TRIBITS_CONFIGURE_SET_INSTALLED_GROUP_AND_PERMS_FILE TARGET_FILE)

SET(PROJECT_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR
"${${PROJECT_NAME}_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}")

TRIBITS_GET_DIR_ARRAY_BELOW_BASE_DIR(
"${${PROJECT_NAME}_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR}"
"${CMAKE_INSTALL_PREFIX}"
PROJECT_SUBDIR_PATHS_ARRAY
)

SET(PROJECT_MAKE_INSTALL_GROUP "${${PROJECT_NAME}_MAKE_INSTALL_GROUP}")

SET(group_perms "")
IF (${PROJECT_NAME}_MAKE_INSTALL_GROUP_WRITABLE)
SET(group_perms "g+rwX")
ELSEIF (${PROJECT_NAME}_MAKE_INSTALL_GROUP_READABLE)
SET(group_perms "g+rX")
ENDIF()

SET(other_perms "")
IF (${PROJECT_NAME}_MAKE_INSTALL_WORLD_READABLE)
SET(other_perms "o+rX")
ENDIF()

JOIN(PROJECT_MAKE_INSTALL_PERMS_CHANGE "," FALSE
${group_perms} ${other_perms} )

SET(tribits_install_src
"${${PROJECT_NAME}_TRIBITS_DIR}/${TRIBITS_CMAKE_INSTALLATION_FILES_DIR}")
CONFIGURE_FILE(
"${tribits_install_src}/set_installed_group_and_permissions.cmake.in"
"${TARGET_FILE}" @ONLY )

ENDFUNCTION()


FUNCTION(TRIBITS_ADD_INSTALL_GROUP_AND_PERMS_FIXUPS)

IF (NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")

SET(set_installed_group_and_permissions_file
"${PROJECT_BINARY_DIR}/set_installed_group_and_permissions.cmake")

TRIBITS_CONFIGURE_SET_INSTALLED_GROUP_AND_PERMS_FILE(
"${set_installed_group_and_permissions_file}" )

# Fix up install for default 'install' command
INSTALL(SCRIPT "${set_installed_group_and_permissions_file}")

ENDIF()

ENDFUNCTION()
3 changes: 3 additions & 0 deletions cmake/tribits/core/package_arch/TribitsCMakePolicies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,6 @@ CMAKE_POLICY(SET CMP0011 NEW)
IF (POLICY CMP0053)
CMAKE_POLICY(SET CMP0053 NEW)
ENDIF()
IF (POLICY CMP0082)
CMAKE_POLICY(SET CMP0082 NEW)
ENDIF()
Loading