We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Spack provides wrong path for include library
I am trying to setup my own package for Spack using a very simple C++ program:

```
// in test.cpp
#include <iostream>
#include <armadillo>

using namespace std;
using namespace arma;

int main()
{
	mat A = randu<mat>(4,5);
	mat B = randu<mat>(4,5);

	cout << A*B.t() << endl;

	return 0;
}
```

The program depends on the library Armadillo. I compile the program using CMake; here is my CMakeLists.txt file:

```
project(test)

# -----------------------------------------------------------------------------

# Require CMake 2.8.
cmake_minimum_required(VERSION 2.8)

# -----------------------------------------------------------------------------
# CMake policies.

# VERSION not allowed in project() unless CMP0048 is set to NEW.
cmake_policy(SET CMP0048 NEW)

# Allow creating targets with reserved names
# or which do not match the validity pattern.
cmake_policy(SET CMP0037 OLD)

# -----------------------------------------------------------------------------

find_package(Armadillo)

if(ARMADILLO_FOUND)
    list(APPEND OLIVE_DEFINITIONS "-DHAVE_ARMA")
    list(APPEND OLIVE_INCLUDE_DIRS "${ARMADILLO_INCLUDE_DIRS}")
else()
    MESSAGE(FATAL_ERROR "A library with Armadillo API is not found.")
endif()

# -----------------------------------------------------------------------------  

find_package(BLAS REQUIRED)

find_package(LAPACK REQUIRED)

if(LAPACK_FOUND)
    list(APPEND OLIVE_LIBRARIES ${LAPACK_LIBRARIES})
else()
    MESSAGE(FATAL_ERROR "A library with LAPACK API is not found.")
endif()
    
# -----------------------------------------------------------------------------  

# Preprocessor definitions.
foreach(OLIVE_DEFINITION ${OLIVE_DEFINITIONS})
    add_definitions(${OLIVE_DEFINITION})
endforeach()

# Include directories.
foreach(OLIVE_INCLUDE_DIR ${OLIVE_INCLUDE_DIRS})
    include_directories(${OLIVE_INCLUDE_DIR})
endforeach()

# Linker directories.
foreach(OLIVE_LIBRARY_DIR ${OLIVE_LIBRARY_DIRS})
    link_directories(${OLIVE_LIBRARY_DIR})
endforeach()

# Executable.
add_executable (test test.cpp)
target_link_libraries(test ${OLIVE_LIBRARIES})
```

Then I create a package using the `spack create` command:

```
from spack import *

class Olive(CMakePackage):

    homepage = "http://www.example.com"
    url      = "file:///home/chvillanuevap/Workspace/olive-1.0.0.tar.gz"

    version('1.0.0', '4d594401468e9a7766c2c2e0f1c0c4e2')

    depends_on('cmake', type='build')
    depends_on('armadillo')

    def cmake_args(self):
        args = []
        return args
```

When I run `spack install olive`, I get the following error:

```
Building CXX object CMakeFiles/test.dir/test.cpp.o
/home/chvillanuevap/Workspace/spack/lib/spack/env/gcc/g++   -DHAVE_ARMA -I/home/chvillanuevap/Workspace/spack/opt/spack/linux-ubuntu16-x86_64/gcc-5.4.0/armadillo-7.500.0-k7fwnukwvvyzgfxhyhhwwxjhaohmdmit/include  -O2 -g -DNDEBUG   -o CMakeFiles/test.dir/test.cpp.o -c /home/chvillanuevap/Workspace/spack/var/spack/stage/olive-1.0.0-io6llpqdxqohx457argmnsjqtq4fpmhr/olive/test.cpp
In file included from /home/chvillanuevap/Workspace/spack/opt/spack/linux-ubuntu16-x86_64/gcc-5.4.0/armadillo-7.500.0-k7fwnukwvvyzgfxhyhhwwxjhaohmdmit/include/armadillo:83:0,
                 from /home/chvillanuevap/Workspace/spack/var/spack/stage/olive-1.0.0-io6llpqdxqohx457argmnsjqtq4fpmhr/olive/test.cpp:2:
/home/chvillanuevap/Workspace/spack/opt/spack/linux-ubuntu16-x86_64/gcc-5.4.0/armadillo-7.500.0-k7fwnukwvvyzgfxhyhhwwxjhaohmdmit/include/armadillo_bits/include_superlu.hpp:91:53: fatal error: /home/chvillanuevap/Workspace/spack/opt/spack/1-ubuntu16-x86_64/gcc-5.4.0/superlu-5.2.1-lrqbalx6k6q6btuxmszymj7p5dal65d2/include/supermatrix.h: No such file or directory
```

Notice how the path for SuperLU (a dependency of Armadillo) says `1-ubuntu16-x86_64` for the architecture instead of the correct `linux-ubuntu16-x86_64`. Why does this happen?

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `var/spack/repos/builtin/packages/armadillo/package.py`
Content:
```
1 ##############################################################################
2 # Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
3 # Produced at the Lawrence Livermore National Laboratory.
4 #
5 # This file is part of Spack.
6 # Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
7 # LLNL-CODE-647188
8 #
9 # For details, see https://github.com/llnl/spack
10 # Please also see the NOTICE and LICENSE files for our notice and the LGPL.
11 #
12 # This program is free software; you can redistribute it and/or modify
13 # it under the terms of the GNU Lesser General Public License (as
14 # published by the Free Software Foundation) version 2.1, February 1999.
15 #
16 # This program is distributed in the hope that it will be useful, but
17 # WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
19 # conditions of the GNU Lesser General Public License for more details.
20 #
21 # You should have received a copy of the GNU Lesser General Public
22 # License along with this program; if not, write to the Free Software
23 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 ##############################################################################
25 from spack import *
26 
27 
28 class Armadillo(CMakePackage):
29     """Armadillo is a high quality linear algebra library (matrix maths)
30     for the C++ language, aiming towards a good balance between speed and
31     ease of use."""
32 
33     homepage = "http://arma.sourceforge.net/"
34     url = "http://sourceforge.net/projects/arma/files/armadillo-7.200.1.tar.xz"
35 
36     version('7.900.1', '5ef71763bd429a3d481499878351f3be')
37     version('7.500.0', '7d316fdf3c3c7ea92b64704180ae315d')
38     version('7.200.2', 'b21585372d67a8876117fd515d8cf0a2')
39     version('7.200.1', 'ed86d6df0058979e107502e1fe3e469e')
40 
41     variant('hdf5', default=False, description='Include HDF5 support')
42 
43     depends_on('cmake@2.8.12:', type='build')
44     depends_on('arpack-ng')  # old arpack causes undefined symbols
45     depends_on('blas')
46     depends_on('lapack')
47     depends_on('superlu@5.2:')
48     depends_on('hdf5', when='+hdf5')
49 
50     def cmake_args(self):
51         spec = self.spec
52 
53         arpack = find_libraries('libarpack', root=spec[
54                                 'arpack-ng'].prefix.lib, shared=True)
55         superlu = find_libraries('libsuperlu', root=spec[
56                                  'superlu'].prefix, shared=False, recurse=True)
57         return [
58             # ARPACK support
59             '-DARPACK_LIBRARY={0}'.format(arpack.joined()),
60             # BLAS support
61             '-DBLAS_LIBRARY={0}'.format(spec['blas'].libs.joined()),
62             # LAPACK support
63             '-DLAPACK_LIBRARY={0}'.format(spec['lapack'].libs.joined()),
64             # SuperLU support
65             '-DSuperLU_INCLUDE_DIR={0}'.format(spec['superlu'].prefix.include),
66             '-DSuperLU_LIBRARY={0}'.format(superlu.joined()),
67             # HDF5 support
68             '-DDETECT_HDF5={0}'.format('ON' if '+hdf5' in spec else 'OFF')
69         ]
70
```
--- 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/var/spack/repos/builtin/packages/armadillo/package.py b/var/spack/repos/builtin/packages/armadillo/package.py
--- a/var/spack/repos/builtin/packages/armadillo/package.py
+++ b/var/spack/repos/builtin/packages/armadillo/package.py
@@ -33,6 +33,9 @@
     homepage = "http://arma.sourceforge.net/"
     url = "http://sourceforge.net/projects/arma/files/armadillo-7.200.1.tar.xz"
 
+    version('8.100.1', 'd9762d6f097e0451d0cfadfbda295e7c')
+    version('7.950.1', 'c06eb38b12cae49cab0ce05f96147147')
+    # NOTE: v7.900.1 download url seems broken is no v7.950.1?
     version('7.900.1', '5ef71763bd429a3d481499878351f3be')
     version('7.500.0', '7d316fdf3c3c7ea92b64704180ae315d')
     version('7.200.2', 'b21585372d67a8876117fd515d8cf0a2')
@@ -47,11 +50,17 @@
     depends_on('superlu@5.2:')
     depends_on('hdf5', when='+hdf5')
 
+    # Adds an `#undef linux` to prevent preprocessor expansion of include
+    # directories with `linux` in them getting transformed into a 1.
+    # E.g. `/path/linux-x86_64/dir` -> `/path/1-x86_64/dir` if/when a linux
+    # platform's compiler is adding `#define linux 1`.
+    patch('undef_linux.patch', when='platform=linux')
+
     def cmake_args(self):
         spec = self.spec
 
         arpack = find_libraries('libarpack', root=spec[
-                                'arpack-ng'].prefix.lib, shared=True)
+                                'arpack-ng'].prefix.lib64, shared=True)
         superlu = find_libraries('libsuperlu', root=spec[
                                  'superlu'].prefix, shared=False, recurse=True)
         return [

{"golden_diff": "diff --git a/var/spack/repos/builtin/packages/armadillo/package.py b/var/spack/repos/builtin/packages/armadillo/package.py\n--- a/var/spack/repos/builtin/packages/armadillo/package.py\n+++ b/var/spack/repos/builtin/packages/armadillo/package.py\n@@ -33,6 +33,9 @@\n     homepage = \"http://arma.sourceforge.net/\"\n     url = \"http://sourceforge.net/projects/arma/files/armadillo-7.200.1.tar.xz\"\n \n+    version('8.100.1', 'd9762d6f097e0451d0cfadfbda295e7c')\n+    version('7.950.1', 'c06eb38b12cae49cab0ce05f96147147')\n+    # NOTE: v7.900.1 download url seems broken is no v7.950.1?\n     version('7.900.1', '5ef71763bd429a3d481499878351f3be')\n     version('7.500.0', '7d316fdf3c3c7ea92b64704180ae315d')\n     version('7.200.2', 'b21585372d67a8876117fd515d8cf0a2')\n@@ -47,11 +50,17 @@\n     depends_on('superlu@5.2:')\n     depends_on('hdf5', when='+hdf5')\n \n+    # Adds an `#undef linux` to prevent preprocessor expansion of include\n+    # directories with `linux` in them getting transformed into a 1.\n+    # E.g. `/path/linux-x86_64/dir` -> `/path/1-x86_64/dir` if/when a linux\n+    # platform's compiler is adding `#define linux 1`.\n+    patch('undef_linux.patch', when='platform=linux')\n+\n     def cmake_args(self):\n         spec = self.spec\n \n         arpack = find_libraries('libarpack', root=spec[\n-                                'arpack-ng'].prefix.lib, shared=True)\n+                                'arpack-ng'].prefix.lib64, shared=True)\n         superlu = find_libraries('libsuperlu', root=spec[\n                                  'superlu'].prefix, shared=False, recurse=True)\n         return [\n", "issue": "Spack provides wrong path for include library\nI am trying to setup my own package for Spack using a very simple C++ program:\r\n\r\n```\r\n// in test.cpp\r\n#include <iostream>\r\n#include <armadillo>\r\n\r\nusing namespace std;\r\nusing namespace arma;\r\n\r\nint main()\r\n{\r\n\tmat A = randu<mat>(4,5);\r\n\tmat B = randu<mat>(4,5);\r\n\r\n\tcout << A*B.t() << endl;\r\n\r\n\treturn 0;\r\n}\r\n```\r\n\r\nThe program depends on the library Armadillo. I compile the program using CMake; here is my CMakeLists.txt file:\r\n\r\n```\r\nproject(test)\r\n\r\n# -----------------------------------------------------------------------------\r\n\r\n# Require CMake 2.8.\r\ncmake_minimum_required(VERSION 2.8)\r\n\r\n# -----------------------------------------------------------------------------\r\n# CMake policies.\r\n\r\n# VERSION not allowed in project() unless CMP0048 is set to NEW.\r\ncmake_policy(SET CMP0048 NEW)\r\n\r\n# Allow creating targets with reserved names\r\n# or which do not match the validity pattern.\r\ncmake_policy(SET CMP0037 OLD)\r\n\r\n# -----------------------------------------------------------------------------\r\n\r\nfind_package(Armadillo)\r\n\r\nif(ARMADILLO_FOUND)\r\n    list(APPEND OLIVE_DEFINITIONS \"-DHAVE_ARMA\")\r\n    list(APPEND OLIVE_INCLUDE_DIRS \"${ARMADILLO_INCLUDE_DIRS}\")\r\nelse()\r\n    MESSAGE(FATAL_ERROR \"A library with Armadillo API is not found.\")\r\nendif()\r\n\r\n# -----------------------------------------------------------------------------  \r\n\r\nfind_package(BLAS REQUIRED)\r\n\r\nfind_package(LAPACK REQUIRED)\r\n\r\nif(LAPACK_FOUND)\r\n    list(APPEND OLIVE_LIBRARIES ${LAPACK_LIBRARIES})\r\nelse()\r\n    MESSAGE(FATAL_ERROR \"A library with LAPACK API is not found.\")\r\nendif()\r\n    \r\n# -----------------------------------------------------------------------------  \r\n\r\n# Preprocessor definitions.\r\nforeach(OLIVE_DEFINITION ${OLIVE_DEFINITIONS})\r\n    add_definitions(${OLIVE_DEFINITION})\r\nendforeach()\r\n\r\n# Include directories.\r\nforeach(OLIVE_INCLUDE_DIR ${OLIVE_INCLUDE_DIRS})\r\n    include_directories(${OLIVE_INCLUDE_DIR})\r\nendforeach()\r\n\r\n# Linker directories.\r\nforeach(OLIVE_LIBRARY_DIR ${OLIVE_LIBRARY_DIRS})\r\n    link_directories(${OLIVE_LIBRARY_DIR})\r\nendforeach()\r\n\r\n# Executable.\r\nadd_executable (test test.cpp)\r\ntarget_link_libraries(test ${OLIVE_LIBRARIES})\r\n```\r\n\r\nThen I create a package using the `spack create` command:\r\n\r\n```\r\nfrom spack import *\r\n\r\nclass Olive(CMakePackage):\r\n\r\n    homepage = \"http://www.example.com\"\r\n    url      = \"file:///home/chvillanuevap/Workspace/olive-1.0.0.tar.gz\"\r\n\r\n    version('1.0.0', '4d594401468e9a7766c2c2e0f1c0c4e2')\r\n\r\n    depends_on('cmake', type='build')\r\n    depends_on('armadillo')\r\n\r\n    def cmake_args(self):\r\n        args = []\r\n        return args\r\n```\r\n\r\nWhen I run `spack install olive`, I get the following error:\r\n\r\n```\r\nBuilding CXX object CMakeFiles/test.dir/test.cpp.o\r\n/home/chvillanuevap/Workspace/spack/lib/spack/env/gcc/g++   -DHAVE_ARMA -I/home/chvillanuevap/Workspace/spack/opt/spack/linux-ubuntu16-x86_64/gcc-5.4.0/armadillo-7.500.0-k7fwnukwvvyzgfxhyhhwwxjhaohmdmit/include  -O2 -g -DNDEBUG   -o CMakeFiles/test.dir/test.cpp.o -c /home/chvillanuevap/Workspace/spack/var/spack/stage/olive-1.0.0-io6llpqdxqohx457argmnsjqtq4fpmhr/olive/test.cpp\r\nIn file included from /home/chvillanuevap/Workspace/spack/opt/spack/linux-ubuntu16-x86_64/gcc-5.4.0/armadillo-7.500.0-k7fwnukwvvyzgfxhyhhwwxjhaohmdmit/include/armadillo:83:0,\r\n                 from /home/chvillanuevap/Workspace/spack/var/spack/stage/olive-1.0.0-io6llpqdxqohx457argmnsjqtq4fpmhr/olive/test.cpp:2:\r\n/home/chvillanuevap/Workspace/spack/opt/spack/linux-ubuntu16-x86_64/gcc-5.4.0/armadillo-7.500.0-k7fwnukwvvyzgfxhyhhwwxjhaohmdmit/include/armadillo_bits/include_superlu.hpp:91:53: fatal error: /home/chvillanuevap/Workspace/spack/opt/spack/1-ubuntu16-x86_64/gcc-5.4.0/superlu-5.2.1-lrqbalx6k6q6btuxmszymj7p5dal65d2/include/supermatrix.h: No such file or directory\r\n```\r\n\r\nNotice how the path for SuperLU (a dependency of Armadillo) says `1-ubuntu16-x86_64` for the architecture instead of the correct `linux-ubuntu16-x86_64`. Why does this happen?\n", "before_files": [{"content": "##############################################################################\n# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.\n# Produced at the Lawrence Livermore National Laboratory.\n#\n# This file is part of Spack.\n# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.\n# LLNL-CODE-647188\n#\n# For details, see https://github.com/llnl/spack\n# Please also see the NOTICE and LICENSE files for our notice and the LGPL.\n#\n# This program is free software; you can redistribute it and/or modify\n# it under the terms of the GNU Lesser General Public License (as\n# published by the Free Software Foundation) version 2.1, February 1999.\n#\n# This program is distributed in the hope that it will be useful, but\n# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and\n# conditions of the GNU Lesser General Public License for more details.\n#\n# You should have received a copy of the GNU Lesser General Public\n# License along with this program; if not, write to the Free Software\n# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\n##############################################################################\nfrom spack import *\n\n\nclass Armadillo(CMakePackage):\n    \"\"\"Armadillo is a high quality linear algebra library (matrix maths)\n    for the C++ language, aiming towards a good balance between speed and\n    ease of use.\"\"\"\n\n    homepage = \"http://arma.sourceforge.net/\"\n    url = \"http://sourceforge.net/projects/arma/files/armadillo-7.200.1.tar.xz\"\n\n    version('7.900.1', '5ef71763bd429a3d481499878351f3be')\n    version('7.500.0', '7d316fdf3c3c7ea92b64704180ae315d')\n    version('7.200.2', 'b21585372d67a8876117fd515d8cf0a2')\n    version('7.200.1', 'ed86d6df0058979e107502e1fe3e469e')\n\n    variant('hdf5', default=False, description='Include HDF5 support')\n\n    depends_on('cmake@2.8.12:', type='build')\n    depends_on('arpack-ng')  # old arpack causes undefined symbols\n    depends_on('blas')\n    depends_on('lapack')\n    depends_on('superlu@5.2:')\n    depends_on('hdf5', when='+hdf5')\n\n    def cmake_args(self):\n        spec = self.spec\n\n        arpack = find_libraries('libarpack', root=spec[\n                                'arpack-ng'].prefix.lib, shared=True)\n        superlu = find_libraries('libsuperlu', root=spec[\n                                 'superlu'].prefix, shared=False, recurse=True)\n        return [\n            # ARPACK support\n            '-DARPACK_LIBRARY={0}'.format(arpack.joined()),\n            # BLAS support\n            '-DBLAS_LIBRARY={0}'.format(spec['blas'].libs.joined()),\n            # LAPACK support\n            '-DLAPACK_LIBRARY={0}'.format(spec['lapack'].libs.joined()),\n            # SuperLU support\n            '-DSuperLU_INCLUDE_DIR={0}'.format(spec['superlu'].prefix.include),\n            '-DSuperLU_LIBRARY={0}'.format(superlu.joined()),\n            # HDF5 support\n            '-DDETECT_HDF5={0}'.format('ON' if '+hdf5' in spec else 'OFF')\n        ]\n", "path": "var/spack/repos/builtin/packages/armadillo/package.py"}], "after_files": [{"content": "##############################################################################\n# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.\n# Produced at the Lawrence Livermore National Laboratory.\n#\n# This file is part of Spack.\n# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.\n# LLNL-CODE-647188\n#\n# For details, see https://github.com/llnl/spack\n# Please also see the NOTICE and LICENSE files for our notice and the LGPL.\n#\n# This program is free software; you can redistribute it and/or modify\n# it under the terms of the GNU Lesser General Public License (as\n# published by the Free Software Foundation) version 2.1, February 1999.\n#\n# This program is distributed in the hope that it will be useful, but\n# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and\n# conditions of the GNU Lesser General Public License for more details.\n#\n# You should have received a copy of the GNU Lesser General Public\n# License along with this program; if not, write to the Free Software\n# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\n##############################################################################\nfrom spack import *\n\n\nclass Armadillo(CMakePackage):\n    \"\"\"Armadillo is a high quality linear algebra library (matrix maths)\n    for the C++ language, aiming towards a good balance between speed and\n    ease of use.\"\"\"\n\n    homepage = \"http://arma.sourceforge.net/\"\n    url = \"http://sourceforge.net/projects/arma/files/armadillo-7.200.1.tar.xz\"\n\n    version('8.100.1', 'd9762d6f097e0451d0cfadfbda295e7c')\n    version('7.950.1', 'c06eb38b12cae49cab0ce05f96147147')\n    # NOTE: v7.900.1 download url seems broken is no v7.950.1?\n    version('7.900.1', '5ef71763bd429a3d481499878351f3be')\n    version('7.500.0', '7d316fdf3c3c7ea92b64704180ae315d')\n    version('7.200.2', 'b21585372d67a8876117fd515d8cf0a2')\n    version('7.200.1', 'ed86d6df0058979e107502e1fe3e469e')\n\n    variant('hdf5', default=False, description='Include HDF5 support')\n\n    depends_on('cmake@2.8.12:', type='build')\n    depends_on('arpack-ng')  # old arpack causes undefined symbols\n    depends_on('blas')\n    depends_on('lapack')\n    depends_on('superlu@5.2:')\n    depends_on('hdf5', when='+hdf5')\n\n    # Adds an `#undef linux` to prevent preprocessor expansion of include\n    # directories with `linux` in them getting transformed into a 1.\n    # E.g. `/path/linux-x86_64/dir` -> `/path/1-x86_64/dir` if/when a linux\n    # platform's compiler is adding `#define linux 1`.\n    patch('undef_linux.patch', when='platform=linux')\n\n    def cmake_args(self):\n        spec = self.spec\n\n        arpack = find_libraries('libarpack', root=spec[\n                                'arpack-ng'].prefix.lib64, shared=True)\n        superlu = find_libraries('libsuperlu', root=spec[\n                                 'superlu'].prefix, shared=False, recurse=True)\n        return [\n            # ARPACK support\n            '-DARPACK_LIBRARY={0}'.format(arpack.joined()),\n            # BLAS support\n            '-DBLAS_LIBRARY={0}'.format(spec['blas'].libs.joined()),\n            # LAPACK support\n            '-DLAPACK_LIBRARY={0}'.format(spec['lapack'].libs.joined()),\n            # SuperLU support\n            '-DSuperLU_INCLUDE_DIR={0}'.format(spec['superlu'].prefix.include),\n            '-DSuperLU_LIBRARY={0}'.format(superlu.joined()),\n            # HDF5 support\n            '-DDETECT_HDF5={0}'.format('ON' if '+hdf5' in spec else 'OFF')\n        ]\n", "path": "var/spack/repos/builtin/packages/armadillo/package.py"}]}