configure should still install cmake files - #438
Conversation
|
The CMake config files cannot be used on their own. They include the following line: arpack-ng/cmake/arpackng-config.cmake.in Line 35 in 947a004 The file CMake doesn't support catching fatal errors and continuing execution. On the other hand, if no CMake config files would be installed at all, CMake determines that gracefully in downstream projects, and they can fall back to alternative ways to locating ARPACK-ng. See, e.g., ElmerCSC/elmerfem#907 where this came up with the version of ARPACK-ng that is distributed by Debian. That version is apparently built using the Makefile rules. Would it be ok to revert this change? |
The CMake config files contain the following instruction:
```
include("${CMAKE_CURRENT_LIST_DIR}/arpackngTargets.cmake")
```
The file `arpackngTargets.cmake` is generated by CMake. It is not
generated by the Makefile rules (nor by the `configure` script).
That means that trying to use the CMake config files in downstream CMake
projects leads to a fatal error like the following:
```
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/arpack-ng/arpackng-config.cmake:35 (include):
include could not find requested file:
```
CMake does not support catching fatal errors and continuing execution.
That means that the configuration for downstream projects bails at that
point even if ARPACK-ng is actually correctly installed (apart from the
broken CMake config files).
On the other hand, if no CMake config files are installed at all, CMake
determines that gracefully in downstream projects. If that should happen,
these projects can fall back to alternative ways to locating ARPACK-ng
(e.g., using the pkg-config files or looking at default locations).
This reverts opencollab#438 to avoid this error.
The CMake config files contain the following instruction:
```
include("${CMAKE_CURRENT_LIST_DIR}/arpackngTargets.cmake")
```
The file `arpackngTargets.cmake` is generated by CMake. It is not
generated by the Makefile rules (nor by the `configure` script).
That means that trying to use the CMake config files in downstream CMake
projects leads to a fatal error like the following:
```
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/arpack-ng/arpackng-config.cmake:35 (include):
include could not find requested file:
```
CMake does not support catching fatal errors and continuing execution.
That means that the configuration for downstream projects bails at that
point even if ARPACK-ng is actually correctly installed (apart from the
broken CMake config files).
On the other hand, if no CMake config files are installed at all, CMake
determines that gracefully in downstream projects. If that should happen,
these projects can fall back to alternative ways to locating ARPACK-ng
(e.g., using the pkg-config files or looking at default locations).
This reverts opencollab#438 to avoid this error.
|
I opened #492 that reverts this PR. |
No description provided.