QNapi / qnapi

Qt-based, multi-engine, multi-platform subtitle downloader
http://qnapi.github.io
291 stars 39 forks source link

Define subtarget INSTALLS in each of subtarget's .pro #145

Closed rplociennik closed 6 years ago

rplociennik commented 6 years ago

While creating a QNapi package I noticed that while qnapic binary was being produced, it never got copied to the installation directory, nor ended up in the package as a result. The immediate reason for it was the lack of associated rule in the Makefile produced by qmake.

qmake's debug log for the main qnapi.pro unveiled the following:

DEBUG 1: /build/qt5-base/src/qtbase-everywhere-src-5.10.1/qmake/generators/makefile.cpp:321 Failure to find qnapic in vpath () DEBUG 1: no definition for install cli_target: install target not created DEBUG 1: /build/qt5-base/src/qtbase-everywhere-src-5.10.1/qmake/generators/makefile.cpp:321 Failure to find qnapi in vpath ()

Apparently, the only reason why even gui_target was getting installed was due to filename similarity between the final binary (qnapi) and the main qnapi.pro.

To circumvent these issues I decided to define install targets in their own .pro files, combining that with a common qnapi.pri with definitions of platform-specific directories shared between them.

rplociennik commented 6 years ago

A single AppVeyor build scenario keeps failing, however I don't think the change has anything to do with it. I can't verify the build environment either, though...

krzemin commented 6 years ago

I think AppVeyor build fails due to path mismatch of Qt 5.10 installation:

https://www.appveyor.com/docs/build-environment/#qt

Apparently they removed 5.10.0 in favor of 5.10.1.

I bumped version in appveyor.yml - after you rebase onto master, the build should pass.

rplociennik commented 6 years ago

Ah, I wasn't aware I could have fixed that all along. ;) Thanks for taking care of that.