We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Make CMakeMake easyblock immune to system boost.
As mentioned in 
https://github.com/easybuilders/easybuild-easyconfigs/pull/7149
if an old boost-devel rpm installed on CentOS6:
```
boost-devel-1.41.0-25.el6.centos.x86_64

$ rpm -ql boost-devel-1.41.0-25.el6.centos.x86_64 | grep -i cmake
/usr/lib64/boost/Boost-relwithdebinfo.cmake
/usr/lib64/boost/Boost.cmake
/usr/lib64/boost/BoostConfig.cmake
/usr/lib64/boost/BoostConfigVersion.cmake

-- Boost  found.
Boost Include: /usr/include
Boost Linkdir: /usr/lib64
```
then anything that combines cmake and boost gets confused by this as the EB boost does not include any cmake files.

adding `-DBoost_NO_SYSTEM_PATHS=ON -DBoost_NO_BOOST_CMAKE=ON`
avoids this.

ref:
https://github.com/Kitware/CMake/blob/master/Modules/FindBoost.cmake
(which shows that if it finds a Boost-cmake config file, it's game over)
https://cmake.org/cmake/help/v3.12/module/FindBoost.html

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `easybuild/easyblocks/generic/cmakemake.py`
Content:
```
1 ##
2 # Copyright 2009-2019 Ghent University
3 #
4 # This file is part of EasyBuild,
5 # originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
6 # with support of Ghent University (http://ugent.be/hpc),
7 # the Flemish Supercomputer Centre (VSC) (https://www.vscentrum.be),
8 # Flemish Research Foundation (FWO) (http://www.fwo.be/en)
9 # and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en).
10 #
11 # https://github.com/easybuilders/easybuild
12 #
13 # EasyBuild is free software: you can redistribute it and/or modify
14 # it under the terms of the GNU General Public License as published by
15 # the Free Software Foundation v2.
16 #
17 # EasyBuild is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 # GNU General Public License for more details.
21 #
22 # You should have received a copy of the GNU General Public License
23 # along with EasyBuild.  If not, see <http://www.gnu.org/licenses/>.
24 ##
25 """
26 EasyBuild support for software that is configured with CMake, implemented as an easyblock
27 
28 @author: Stijn De Weirdt (Ghent University)
29 @author: Dries Verdegem (Ghent University)
30 @author: Kenneth Hoste (Ghent University)
31 @author: Pieter De Baets (Ghent University)
32 @author: Jens Timmerman (Ghent University)
33 @author: Ward Poelmans (Ghent University)
34 @author: Maxime Boissonneault (Compute Canada - Universite Laval)
35 """
36 import os
37 
38 from easybuild.easyblocks.generic.configuremake import ConfigureMake
39 from easybuild.framework.easyconfig import CUSTOM
40 from easybuild.tools.config import build_option
41 from easybuild.tools.filetools import change_dir, mkdir, which
42 from easybuild.tools.environment import setvar
43 from easybuild.tools.run import run_cmd
44 from vsc.utils.missing import nub
45 
46 
47 DEFAULT_CONFIGURE_CMD = 'cmake'
48 
49 
50 class CMakeMake(ConfigureMake):
51     """Support for configuring build with CMake instead of traditional configure script"""
52 
53     @staticmethod
54     def extra_options(extra_vars=None):
55         """Define extra easyconfig parameters specific to CMakeMake."""
56         extra_vars = ConfigureMake.extra_options(extra_vars)
57         extra_vars.update({
58             'abs_path_compilers': [False, "Specify compilers via absolute file path (not via command names)", CUSTOM],
59             'configure_cmd': [DEFAULT_CONFIGURE_CMD, "Configure command to use", CUSTOM],
60             'srcdir': [None, "Source directory location to provide to cmake command", CUSTOM],
61             'separate_build_dir': [False, "Perform build in a separate directory", CUSTOM],
62         })
63         return extra_vars
64 
65     def configure_step(self, srcdir=None, builddir=None):
66         """Configure build using cmake"""
67 
68         # Set the search paths for CMake
69         tc_ipaths = self.toolchain.get_variable("CPPFLAGS", list)
70         tc_lpaths = self.toolchain.get_variable("LDFLAGS", list)
71         cpaths = os.getenv('CPATH', '').split(os.pathsep)
72         lpaths = os.getenv('LD_LIBRARY_PATH', '').split(os.pathsep)
73         include_paths = os.pathsep.join(nub(tc_ipaths + cpaths))
74         library_paths = os.pathsep.join(nub(tc_lpaths + lpaths))
75         setvar("CMAKE_INCLUDE_PATH", include_paths)
76         setvar("CMAKE_LIBRARY_PATH", library_paths)
77 
78         if builddir is None and self.cfg.get('separate_build_dir', False):
79             builddir = os.path.join(self.builddir, 'easybuild_obj')
80 
81         if builddir:
82             mkdir(builddir, parents=True)
83             change_dir(builddir)
84             default_srcdir = self.cfg['start_dir']
85         else:
86             default_srcdir = '.'
87 
88         if srcdir is None:
89             if self.cfg.get('srcdir', None) is not None:
90                 srcdir = self.cfg['srcdir']
91             else:
92                 srcdir = default_srcdir
93 
94         options = ['-DCMAKE_INSTALL_PREFIX=%s' % self.installdir]
95         env_to_options = {
96             'CC': 'CMAKE_C_COMPILER',
97             'CFLAGS': 'CMAKE_C_FLAGS',
98             'CXX': 'CMAKE_CXX_COMPILER',
99             'CXXFLAGS': 'CMAKE_CXX_FLAGS',
100             'F90': 'CMAKE_Fortran_COMPILER',
101             'FFLAGS': 'CMAKE_Fortran_FLAGS',
102         }
103         for env_name, option in env_to_options.items():
104             value = os.getenv(env_name)
105             if value is not None:
106                 if option.endswith('_COMPILER') and self.cfg.get('abs_path_compilers', False):
107                     value = which(value)
108                     self.log.info("Using absolute path to compiler command: %s", value)
109                 options.append("-D%s='%s'" % (option, value))
110 
111         if build_option('rpath'):
112             # instruct CMake not to fiddle with RPATH when --rpath is used, since it will undo stuff on install...
113             # https://github.com/LLNL/spack/blob/0f6a5cd38538e8969d11bd2167f11060b1f53b43/lib/spack/spack/build_environment.py#L416
114             options.append('-DCMAKE_SKIP_RPATH=ON')
115 
116         # show what CMake is doing by default
117         options.append('-DCMAKE_VERBOSE_MAKEFILE=ON')
118 
119         options_string = ' '.join(options)
120 
121         command = ' '.join([
122             self.cfg['preconfigopts'],
123             self.cfg.get('configure_cmd') or DEFAULT_CONFIGURE_CMD,
124             options_string,
125             self.cfg['configopts'],
126             srcdir])
127         (out, _) = run_cmd(command, log_all=True, simple=False)
128 
129         return out
130
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/easybuild/easyblocks/generic/cmakemake.py b/easybuild/easyblocks/generic/cmakemake.py
--- a/easybuild/easyblocks/generic/cmakemake.py
+++ b/easybuild/easyblocks/generic/cmakemake.py
@@ -40,6 +40,7 @@
 from easybuild.tools.config import build_option
 from easybuild.tools.filetools import change_dir, mkdir, which
 from easybuild.tools.environment import setvar
+from easybuild.tools.modules import get_software_root
 from easybuild.tools.run import run_cmd
 from vsc.utils.missing import nub
 
@@ -56,6 +57,8 @@
         extra_vars = ConfigureMake.extra_options(extra_vars)
         extra_vars.update({
             'abs_path_compilers': [False, "Specify compilers via absolute file path (not via command names)", CUSTOM],
+            'allow_system_boost': [False, "Always allow CMake to pick up on Boost installed in OS "
+                                          "(even if Boost is included as a dependency)", CUSTOM],
             'configure_cmd': [DEFAULT_CONFIGURE_CMD, "Configure command to use", CUSTOM],
             'srcdir': [None, "Source directory location to provide to cmake command", CUSTOM],
             'separate_build_dir': [False, "Perform build in a separate directory", CUSTOM],
@@ -116,6 +119,19 @@
         # show what CMake is doing by default
         options.append('-DCMAKE_VERBOSE_MAKEFILE=ON')
 
+        if not self.cfg.get('allow_system_boost', False):
+            # don't pick up on system Boost if Boost is included as dependency
+            # - specify Boost location via -DBOOST_ROOT
+            # - instruct CMake to not search for Boost headers/libraries in other places
+            # - disable search for Boost CMake package configuration file
+            boost_root = get_software_root('Boost')
+            if boost_root:
+                options.extend([
+                    '-DBOOST_ROOT=%s' % boost_root,
+                    '-DBoost_NO_SYSTEM_PATHS=ON',
+                    '-DBoost_NO_BOOST_CMAKE=ON',
+                ])
+
         options_string = ' '.join(options)
 
         command = ' '.join([

{"golden_diff": "diff --git a/easybuild/easyblocks/generic/cmakemake.py b/easybuild/easyblocks/generic/cmakemake.py\n--- a/easybuild/easyblocks/generic/cmakemake.py\n+++ b/easybuild/easyblocks/generic/cmakemake.py\n@@ -40,6 +40,7 @@\n from easybuild.tools.config import build_option\n from easybuild.tools.filetools import change_dir, mkdir, which\n from easybuild.tools.environment import setvar\n+from easybuild.tools.modules import get_software_root\n from easybuild.tools.run import run_cmd\n from vsc.utils.missing import nub\n \n@@ -56,6 +57,8 @@\n         extra_vars = ConfigureMake.extra_options(extra_vars)\n         extra_vars.update({\n             'abs_path_compilers': [False, \"Specify compilers via absolute file path (not via command names)\", CUSTOM],\n+            'allow_system_boost': [False, \"Always allow CMake to pick up on Boost installed in OS \"\n+                                          \"(even if Boost is included as a dependency)\", CUSTOM],\n             'configure_cmd': [DEFAULT_CONFIGURE_CMD, \"Configure command to use\", CUSTOM],\n             'srcdir': [None, \"Source directory location to provide to cmake command\", CUSTOM],\n             'separate_build_dir': [False, \"Perform build in a separate directory\", CUSTOM],\n@@ -116,6 +119,19 @@\n         # show what CMake is doing by default\n         options.append('-DCMAKE_VERBOSE_MAKEFILE=ON')\n \n+        if not self.cfg.get('allow_system_boost', False):\n+            # don't pick up on system Boost if Boost is included as dependency\n+            # - specify Boost location via -DBOOST_ROOT\n+            # - instruct CMake to not search for Boost headers/libraries in other places\n+            # - disable search for Boost CMake package configuration file\n+            boost_root = get_software_root('Boost')\n+            if boost_root:\n+                options.extend([\n+                    '-DBOOST_ROOT=%s' % boost_root,\n+                    '-DBoost_NO_SYSTEM_PATHS=ON',\n+                    '-DBoost_NO_BOOST_CMAKE=ON',\n+                ])\n+\n         options_string = ' '.join(options)\n \n         command = ' '.join([\n", "issue": "Make CMakeMake easyblock immune to system boost.\nAs mentioned in \r\nhttps://github.com/easybuilders/easybuild-easyconfigs/pull/7149\r\nif an old boost-devel rpm installed on CentOS6:\r\n```\r\nboost-devel-1.41.0-25.el6.centos.x86_64\r\n\r\n$ rpm -ql boost-devel-1.41.0-25.el6.centos.x86_64 | grep -i cmake\r\n/usr/lib64/boost/Boost-relwithdebinfo.cmake\r\n/usr/lib64/boost/Boost.cmake\r\n/usr/lib64/boost/BoostConfig.cmake\r\n/usr/lib64/boost/BoostConfigVersion.cmake\r\n\r\n-- Boost  found.\r\nBoost Include: /usr/include\r\nBoost Linkdir: /usr/lib64\r\n```\r\nthen anything that combines cmake and boost gets confused by this as the EB boost does not include any cmake files.\r\n\r\nadding `-DBoost_NO_SYSTEM_PATHS=ON -DBoost_NO_BOOST_CMAKE=ON`\r\navoids this.\r\n\r\nref:\r\nhttps://github.com/Kitware/CMake/blob/master/Modules/FindBoost.cmake\r\n(which shows that if it finds a Boost-cmake config file, it's game over)\r\nhttps://cmake.org/cmake/help/v3.12/module/FindBoost.html\n", "before_files": [{"content": "##\n# Copyright 2009-2019 Ghent University\n#\n# This file is part of EasyBuild,\n# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),\n# with support of Ghent University (http://ugent.be/hpc),\n# the Flemish Supercomputer Centre (VSC) (https://www.vscentrum.be),\n# Flemish Research Foundation (FWO) (http://www.fwo.be/en)\n# and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en).\n#\n# https://github.com/easybuilders/easybuild\n#\n# EasyBuild is free software: you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation v2.\n#\n# EasyBuild is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with EasyBuild.  If not, see <http://www.gnu.org/licenses/>.\n##\n\"\"\"\nEasyBuild support for software that is configured with CMake, implemented as an easyblock\n\n@author: Stijn De Weirdt (Ghent University)\n@author: Dries Verdegem (Ghent University)\n@author: Kenneth Hoste (Ghent University)\n@author: Pieter De Baets (Ghent University)\n@author: Jens Timmerman (Ghent University)\n@author: Ward Poelmans (Ghent University)\n@author: Maxime Boissonneault (Compute Canada - Universite Laval)\n\"\"\"\nimport os\n\nfrom easybuild.easyblocks.generic.configuremake import ConfigureMake\nfrom easybuild.framework.easyconfig import CUSTOM\nfrom easybuild.tools.config import build_option\nfrom easybuild.tools.filetools import change_dir, mkdir, which\nfrom easybuild.tools.environment import setvar\nfrom easybuild.tools.run import run_cmd\nfrom vsc.utils.missing import nub\n\n\nDEFAULT_CONFIGURE_CMD = 'cmake'\n\n\nclass CMakeMake(ConfigureMake):\n    \"\"\"Support for configuring build with CMake instead of traditional configure script\"\"\"\n\n    @staticmethod\n    def extra_options(extra_vars=None):\n        \"\"\"Define extra easyconfig parameters specific to CMakeMake.\"\"\"\n        extra_vars = ConfigureMake.extra_options(extra_vars)\n        extra_vars.update({\n            'abs_path_compilers': [False, \"Specify compilers via absolute file path (not via command names)\", CUSTOM],\n            'configure_cmd': [DEFAULT_CONFIGURE_CMD, \"Configure command to use\", CUSTOM],\n            'srcdir': [None, \"Source directory location to provide to cmake command\", CUSTOM],\n            'separate_build_dir': [False, \"Perform build in a separate directory\", CUSTOM],\n        })\n        return extra_vars\n\n    def configure_step(self, srcdir=None, builddir=None):\n        \"\"\"Configure build using cmake\"\"\"\n\n        # Set the search paths for CMake\n        tc_ipaths = self.toolchain.get_variable(\"CPPFLAGS\", list)\n        tc_lpaths = self.toolchain.get_variable(\"LDFLAGS\", list)\n        cpaths = os.getenv('CPATH', '').split(os.pathsep)\n        lpaths = os.getenv('LD_LIBRARY_PATH', '').split(os.pathsep)\n        include_paths = os.pathsep.join(nub(tc_ipaths + cpaths))\n        library_paths = os.pathsep.join(nub(tc_lpaths + lpaths))\n        setvar(\"CMAKE_INCLUDE_PATH\", include_paths)\n        setvar(\"CMAKE_LIBRARY_PATH\", library_paths)\n\n        if builddir is None and self.cfg.get('separate_build_dir', False):\n            builddir = os.path.join(self.builddir, 'easybuild_obj')\n\n        if builddir:\n            mkdir(builddir, parents=True)\n            change_dir(builddir)\n            default_srcdir = self.cfg['start_dir']\n        else:\n            default_srcdir = '.'\n\n        if srcdir is None:\n            if self.cfg.get('srcdir', None) is not None:\n                srcdir = self.cfg['srcdir']\n            else:\n                srcdir = default_srcdir\n\n        options = ['-DCMAKE_INSTALL_PREFIX=%s' % self.installdir]\n        env_to_options = {\n            'CC': 'CMAKE_C_COMPILER',\n            'CFLAGS': 'CMAKE_C_FLAGS',\n            'CXX': 'CMAKE_CXX_COMPILER',\n            'CXXFLAGS': 'CMAKE_CXX_FLAGS',\n            'F90': 'CMAKE_Fortran_COMPILER',\n            'FFLAGS': 'CMAKE_Fortran_FLAGS',\n        }\n        for env_name, option in env_to_options.items():\n            value = os.getenv(env_name)\n            if value is not None:\n                if option.endswith('_COMPILER') and self.cfg.get('abs_path_compilers', False):\n                    value = which(value)\n                    self.log.info(\"Using absolute path to compiler command: %s\", value)\n                options.append(\"-D%s='%s'\" % (option, value))\n\n        if build_option('rpath'):\n            # instruct CMake not to fiddle with RPATH when --rpath is used, since it will undo stuff on install...\n            # https://github.com/LLNL/spack/blob/0f6a5cd38538e8969d11bd2167f11060b1f53b43/lib/spack/spack/build_environment.py#L416\n            options.append('-DCMAKE_SKIP_RPATH=ON')\n\n        # show what CMake is doing by default\n        options.append('-DCMAKE_VERBOSE_MAKEFILE=ON')\n\n        options_string = ' '.join(options)\n\n        command = ' '.join([\n            self.cfg['preconfigopts'],\n            self.cfg.get('configure_cmd') or DEFAULT_CONFIGURE_CMD,\n            options_string,\n            self.cfg['configopts'],\n            srcdir])\n        (out, _) = run_cmd(command, log_all=True, simple=False)\n\n        return out\n", "path": "easybuild/easyblocks/generic/cmakemake.py"}], "after_files": [{"content": "##\n# Copyright 2009-2019 Ghent University\n#\n# This file is part of EasyBuild,\n# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),\n# with support of Ghent University (http://ugent.be/hpc),\n# the Flemish Supercomputer Centre (VSC) (https://www.vscentrum.be),\n# Flemish Research Foundation (FWO) (http://www.fwo.be/en)\n# and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en).\n#\n# https://github.com/easybuilders/easybuild\n#\n# EasyBuild is free software: you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation v2.\n#\n# EasyBuild is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with EasyBuild.  If not, see <http://www.gnu.org/licenses/>.\n##\n\"\"\"\nEasyBuild support for software that is configured with CMake, implemented as an easyblock\n\n@author: Stijn De Weirdt (Ghent University)\n@author: Dries Verdegem (Ghent University)\n@author: Kenneth Hoste (Ghent University)\n@author: Pieter De Baets (Ghent University)\n@author: Jens Timmerman (Ghent University)\n@author: Ward Poelmans (Ghent University)\n@author: Maxime Boissonneault (Compute Canada - Universite Laval)\n\"\"\"\nimport os\n\nfrom easybuild.easyblocks.generic.configuremake import ConfigureMake\nfrom easybuild.framework.easyconfig import CUSTOM\nfrom easybuild.tools.config import build_option\nfrom easybuild.tools.filetools import change_dir, mkdir, which\nfrom easybuild.tools.environment import setvar\nfrom easybuild.tools.modules import get_software_root\nfrom easybuild.tools.run import run_cmd\nfrom vsc.utils.missing import nub\n\n\nDEFAULT_CONFIGURE_CMD = 'cmake'\n\n\nclass CMakeMake(ConfigureMake):\n    \"\"\"Support for configuring build with CMake instead of traditional configure script\"\"\"\n\n    @staticmethod\n    def extra_options(extra_vars=None):\n        \"\"\"Define extra easyconfig parameters specific to CMakeMake.\"\"\"\n        extra_vars = ConfigureMake.extra_options(extra_vars)\n        extra_vars.update({\n            'abs_path_compilers': [False, \"Specify compilers via absolute file path (not via command names)\", CUSTOM],\n            'allow_system_boost': [False, \"Always allow CMake to pick up on Boost installed in OS \"\n                                          \"(even if Boost is included as a dependency)\", CUSTOM],\n            'configure_cmd': [DEFAULT_CONFIGURE_CMD, \"Configure command to use\", CUSTOM],\n            'srcdir': [None, \"Source directory location to provide to cmake command\", CUSTOM],\n            'separate_build_dir': [False, \"Perform build in a separate directory\", CUSTOM],\n        })\n        return extra_vars\n\n    def configure_step(self, srcdir=None, builddir=None):\n        \"\"\"Configure build using cmake\"\"\"\n\n        # Set the search paths for CMake\n        tc_ipaths = self.toolchain.get_variable(\"CPPFLAGS\", list)\n        tc_lpaths = self.toolchain.get_variable(\"LDFLAGS\", list)\n        cpaths = os.getenv('CPATH', '').split(os.pathsep)\n        lpaths = os.getenv('LD_LIBRARY_PATH', '').split(os.pathsep)\n        include_paths = os.pathsep.join(nub(tc_ipaths + cpaths))\n        library_paths = os.pathsep.join(nub(tc_lpaths + lpaths))\n        setvar(\"CMAKE_INCLUDE_PATH\", include_paths)\n        setvar(\"CMAKE_LIBRARY_PATH\", library_paths)\n\n        if builddir is None and self.cfg.get('separate_build_dir', False):\n            builddir = os.path.join(self.builddir, 'easybuild_obj')\n\n        if builddir:\n            mkdir(builddir, parents=True)\n            change_dir(builddir)\n            default_srcdir = self.cfg['start_dir']\n        else:\n            default_srcdir = '.'\n\n        if srcdir is None:\n            if self.cfg.get('srcdir', None) is not None:\n                srcdir = self.cfg['srcdir']\n            else:\n                srcdir = default_srcdir\n\n        options = ['-DCMAKE_INSTALL_PREFIX=%s' % self.installdir]\n        env_to_options = {\n            'CC': 'CMAKE_C_COMPILER',\n            'CFLAGS': 'CMAKE_C_FLAGS',\n            'CXX': 'CMAKE_CXX_COMPILER',\n            'CXXFLAGS': 'CMAKE_CXX_FLAGS',\n            'F90': 'CMAKE_Fortran_COMPILER',\n            'FFLAGS': 'CMAKE_Fortran_FLAGS',\n        }\n        for env_name, option in env_to_options.items():\n            value = os.getenv(env_name)\n            if value is not None:\n                if option.endswith('_COMPILER') and self.cfg.get('abs_path_compilers', False):\n                    value = which(value)\n                    self.log.info(\"Using absolute path to compiler command: %s\", value)\n                options.append(\"-D%s='%s'\" % (option, value))\n\n        if build_option('rpath'):\n            # instruct CMake not to fiddle with RPATH when --rpath is used, since it will undo stuff on install...\n            # https://github.com/LLNL/spack/blob/0f6a5cd38538e8969d11bd2167f11060b1f53b43/lib/spack/spack/build_environment.py#L416\n            options.append('-DCMAKE_SKIP_RPATH=ON')\n\n        # show what CMake is doing by default\n        options.append('-DCMAKE_VERBOSE_MAKEFILE=ON')\n\n        if not self.cfg.get('allow_system_boost', False):\n            # don't pick up on system Boost if Boost is included as dependency\n            # - specify Boost location via -DBOOST_ROOT\n            # - instruct CMake to not search for Boost headers/libraries in other places\n            # - disable search for Boost CMake package configuration file\n            boost_root = get_software_root('Boost')\n            if boost_root:\n                options.extend([\n                    '-DBOOST_ROOT=%s' % boost_root,\n                    '-DBoost_NO_SYSTEM_PATHS=ON',\n                    '-DBoost_NO_BOOST_CMAKE=ON',\n                ])\n\n        options_string = ' '.join(options)\n\n        command = ' '.join([\n            self.cfg['preconfigopts'],\n            self.cfg.get('configure_cmd') or DEFAULT_CONFIGURE_CMD,\n            options_string,\n            self.cfg['configopts'],\n            srcdir])\n        (out, _) = run_cmd(command, log_all=True, simple=False)\n\n        return out\n", "path": "easybuild/easyblocks/generic/cmakemake.py"}]}