build: fix the build where install prefix is not user-writable
ClosedPublic

Authored by bshah on Feb 24 2020, 6:16 AM.

Details

Summary
  • Validate only the files and symlinks
  • Fix target names, they were swapped
  • generate the icons in build-dir and then install it
Test Plan

done make and make install and verified install_manifest.txt looks sane

Diff Detail

Repository
R266 Breeze Icons
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
bshah created this revision.Feb 24 2020, 6:16 AM
Restricted Application added a project: Frameworks. · View Herald TranscriptFeb 24 2020, 6:16 AM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
bshah requested review of this revision.Feb 24 2020, 6:16 AM
sitter accepted this revision.Feb 24 2020, 11:23 AM
sitter added a subscriber: sitter.

I'd rather have the excess spaces been done away with. Otherwise LGTM, please rebase and land.

This revision is now accepted and ready to land.Feb 24 2020, 11:23 AM
This revision was automatically updated to reflect the committed changes.
dfaure added a subscriber: dfaure.Mar 6 2020, 10:10 PM
dfaure added inline comments.
icons-dark/CMakeLists.txt
17

Any reason for this generated/ subdir?

It breaks symlinks, which only do "../../" because they don't expect to have to go out of one-more-subdir (and they don't after installation).

See https://build.kde.org/job/Frameworks/view/Platform%20-%20SUSEQt5.12/job/breeze-icons/job/kf5-qt5%20SUSEQt5.12/267/testReport/projectroot/autotests/symlink/

Note that symlinktest only checks the source dir (which is another bug), so it doesn't fail locally if you use a builddir completely outside the srcdir. But on CI it seems to be a subdir, so the recursive search in the source dir finds them.
I'm guessing symlinktest should also check the builddir (".") to make such test failures easier to reproduce no matter what the local setup.

Nobody cares about broken CI, or my comment here wasn't noticed, so I fixed it myself. https://phabricator.kde.org/D28188