Roland Winklmeier
2017-07-21 10:15:54 UTC
Dear Qt developers,
since 5.9 some of my projects install targets are failing. Investigation
has shown that the generated Makefiles reference now a different INSTALL
executable. Before it was 'install' from GNU coreutils and now it is
calling 'qmake -install qinstall'.
Apart from the fact that I could not find anything in the changelog about
this bigger change (only a few references that make install will no longer
modify the timestamp etc), there are several behavior changes affecting
existing install targets.
* Installing a symbol link was deep copying the link target under the link
name. Example:
libfoo.so -> libfoo1.0.0.so
Installing libfoo.so installed the binary libfoo.so without creating a
symbol link.
* Using wildcards to copy several targets is broken. Example:
libfoo.so -> libfoo1.0.0.so
Installing libfoo*.so fails now. Before it was copying the link and the
binary.
Maybe the above use cases are not the perfect solution for a specific
problem, but they were working. Also there might be other features (or even
bugs), users of coreutils install were relying on and are no longer
available.
Is this considered acceptable since the usage of coreutils install was a
private configuration and developers should never rely on its behavior?
Cheers R.
since 5.9 some of my projects install targets are failing. Investigation
has shown that the generated Makefiles reference now a different INSTALL
executable. Before it was 'install' from GNU coreutils and now it is
calling 'qmake -install qinstall'.
Apart from the fact that I could not find anything in the changelog about
this bigger change (only a few references that make install will no longer
modify the timestamp etc), there are several behavior changes affecting
existing install targets.
* Installing a symbol link was deep copying the link target under the link
name. Example:
libfoo.so -> libfoo1.0.0.so
Installing libfoo.so installed the binary libfoo.so without creating a
symbol link.
* Using wildcards to copy several targets is broken. Example:
libfoo.so -> libfoo1.0.0.so
Installing libfoo*.so fails now. Before it was copying the link and the
binary.
Maybe the above use cases are not the perfect solution for a specific
problem, but they were working. Also there might be other features (or even
bugs), users of coreutils install were relying on and are no longer
available.
Is this considered acceptable since the usage of coreutils install was a
private configuration and developers should never rely on its behavior?
Cheers R.