From 7cdc80777ac786fb51585703c0f124bab5e9e33a Mon Sep 17 00:00:00 2001 From: PRESFIL Date: Sat, 7 May 2022 23:53:35 +0300 Subject: [PATCH] Add `make install` support for `linux` platform At the moment, `qmake` generates a Makefile with an empty instruction for install: due to the fact that `INSTALLS` and `TARGET.{path,files}` were empty. Now Makefile can perform `make install` / `make uninstall` and install/delete the executable file, desktop file and icons. This commit implements this feature only for `linux` platform, but it can be extended to other unix platforms if desired. According to the commit history, icons are not used directly anywhere, not used by flatpack, so moving should not break anything, but it was necessary to install icons in the correct location on the `linux` platform. --- .../icons/128x128/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/16x16/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/22x22/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/24x24/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/256x256/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/32x32/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/48x48/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/512x512/{ => apps}/website.i2pd.i2pd.png | Bin .../icons/64x64/{ => apps}/website.i2pd.i2pd.png | Bin i2pd_qt.pro | 13 +++++++++++++ 10 files changed, 13 insertions(+) rename contrib/icons/128x128/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/16x16/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/22x22/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/24x24/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/256x256/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/32x32/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/48x48/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/512x512/{ => apps}/website.i2pd.i2pd.png (100%) rename contrib/icons/64x64/{ => apps}/website.i2pd.i2pd.png (100%) diff --git a/contrib/icons/128x128/website.i2pd.i2pd.png b/contrib/icons/128x128/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/128x128/website.i2pd.i2pd.png rename to contrib/icons/128x128/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/16x16/website.i2pd.i2pd.png b/contrib/icons/16x16/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/16x16/website.i2pd.i2pd.png rename to contrib/icons/16x16/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/22x22/website.i2pd.i2pd.png b/contrib/icons/22x22/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/22x22/website.i2pd.i2pd.png rename to contrib/icons/22x22/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/24x24/website.i2pd.i2pd.png b/contrib/icons/24x24/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/24x24/website.i2pd.i2pd.png rename to contrib/icons/24x24/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/256x256/website.i2pd.i2pd.png b/contrib/icons/256x256/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/256x256/website.i2pd.i2pd.png rename to contrib/icons/256x256/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/32x32/website.i2pd.i2pd.png b/contrib/icons/32x32/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/32x32/website.i2pd.i2pd.png rename to contrib/icons/32x32/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/48x48/website.i2pd.i2pd.png b/contrib/icons/48x48/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/48x48/website.i2pd.i2pd.png rename to contrib/icons/48x48/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/512x512/website.i2pd.i2pd.png b/contrib/icons/512x512/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/512x512/website.i2pd.i2pd.png rename to contrib/icons/512x512/apps/website.i2pd.i2pd.png diff --git a/contrib/icons/64x64/website.i2pd.i2pd.png b/contrib/icons/64x64/apps/website.i2pd.i2pd.png similarity index 100% rename from contrib/icons/64x64/website.i2pd.i2pd.png rename to contrib/icons/64x64/apps/website.i2pd.i2pd.png diff --git a/i2pd_qt.pro b/i2pd_qt.pro index 64fb3ba..f8ad18d 100644 --- a/i2pd_qt.pro +++ b/i2pd_qt.pro @@ -3,6 +3,15 @@ QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = i2pd_qt +TARGET.files = i2pd_qt +linux:TARGET.path = /usr/bin/ + +desktop.files = contrib/website.i2pd.i2pd.desktop +linux:desktop.path = /usr/share/applications/ + +icons.files = contrib/icons/* +linux:icons.path = /usr/share/icons/hicolor/ + TEMPLATE = app QMAKE_CXXFLAGS *= -Wno-unused-parameter -Wno-maybe-uninitialized -Wno-deprecated-copy CONFIG += strict_c++ c++11 @@ -143,6 +152,10 @@ macx { linux:!android { message("Using Linux settings") LIBS += -lcrypto -lssl -lboost_system -lboost_date_time -lboost_filesystem -lboost_program_options -lpthread -lminiupnpc + + INSTALLS += TARGET + INSTALLS += icons + INSTALLS += desktop } windows {