You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
build: mkldnn compat: put symlinks together with generate lib
CMake allows overriding the place where the libraries are being
generated using:
``` cmake
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY some_place)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY some_place)
```
In this case, the `libdnnl.so` will be put in `some_place` instead of
usual `${CMAKE_CURRENT_BINARY_DIR}` location.
However, we generate the compat symlinks in the latter location. This
makes them point to non-existent library, which in turn:
1. Invalidates the symlink;
2. Betrays users expectations on find the library (which is though
a symlink) in the proper location `some_place`.
3. Makes `make` regenerate the symlink all the time no matter whether
it exists or not. That happens because `make` checks whether the
target (symlink) is _older_ than the prerequisite (`libdnnl.so`).
It seems that the date for symlink is checked by the date of the
object it points to. Since the symlink points to nowhere, the
target is considered always outdated.
This closes#743.
0 commit comments