mirror of
https://git.yoctoproject.org/poky
synced 2026-04-04 23:02:22 +02:00
distcc: clean up the UI install logic
Remove the local copy of the desktop file, instead apply a patch from upstream to fix the file. This also fixes the install paths, so update the recipe. Remove glibc-specific installation as this was due to uclibc failures. Refresh and submit upstream the out-of-tree build fix. (From OE-Core rev: f69cb86f4c15497c6324a0e8063f86cc31cfe7aa) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
56da8174e7
commit
4503c1c411
@@ -15,9 +15,9 @@ PACKAGECONFIG[popt] = "--without-included-popt,--with-included-popt,popt"
|
||||
RRECOMMENDS_${PN} = "avahi-daemon"
|
||||
|
||||
SRC_URI = "git://github.com/distcc/distcc.git \
|
||||
file://fix-gnome.patch \
|
||||
file://separatebuilddir.patch \
|
||||
file://default \
|
||||
file://distccmon-gnome.desktop \
|
||||
file://distcc \
|
||||
file://distcc.service"
|
||||
SRCREV = "4cde9bcfbda589abd842e3bbc652ce369085eaae"
|
||||
@@ -51,13 +51,8 @@ do_install() {
|
||||
install -d ${D}${systemd_unitdir}/system/
|
||||
install -m 0644 ${WORKDIR}/distcc.service ${D}${systemd_unitdir}/system
|
||||
sed -i -e 's,@BINDIR@,${bindir},g' ${D}${systemd_unitdir}/system/distcc.service
|
||||
${DESKTOPINSTALL}
|
||||
}
|
||||
DESKTOPINSTALL = ""
|
||||
DESKTOPINSTALL_libc-glibc () {
|
||||
install -d ${D}${datadir}/distcc/
|
||||
install -m 0644 ${WORKDIR}/distccmon-gnome.desktop ${D}${datadir}/distcc/
|
||||
}
|
||||
|
||||
PACKAGES += "distcc-distmon-gnome"
|
||||
|
||||
FILES_${PN} = " ${sysconfdir} \
|
||||
@@ -67,8 +62,10 @@ FILES_${PN} = " ${sysconfdir} \
|
||||
${bindir}/distccmon-text \
|
||||
${sbindir}/update-distcc-symlinks \
|
||||
${systemd_unitdir}/system/distcc.service"
|
||||
|
||||
FILES_distcc-distmon-gnome = " ${bindir}/distccmon-gnome \
|
||||
${datadir}/distcc"
|
||||
${datadir}/applications \
|
||||
${datadir}/pixmaps"
|
||||
|
||||
|
||||
#
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Version=0.9.4
|
||||
Exec=distccmon-gnome
|
||||
Name=distcc monitor
|
||||
GenericName=Distributed Compile Monitor
|
||||
Comment=Graphical view of distributed compile tasks
|
||||
Icon=distccmon-gnome-icon
|
||||
TryExec=distccmon-gnome
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=GNOME;Development;
|
||||
StartupNotify=true
|
||||
122
meta/recipes-devtools/distcc/files/fix-gnome.patch
Normal file
122
meta/recipes-devtools/distcc/files/fix-gnome.patch
Normal file
@@ -0,0 +1,122 @@
|
||||
Upstream-Status: Backport [https://github.com/distcc/distcc/pull/319]
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
From 2faacc2be8d7eeee0a3f66d88fedd1d3ab11070e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
|
||||
Date: Sat, 8 Dec 2018 12:50:07 +0100
|
||||
Subject: [PATCH] Fix desktop spec compliance of distccmon-gnome install
|
||||
|
||||
Update the .desktop file and install rules for distccmon-gnome to
|
||||
conform to the freedesktop.org specifications. More specifically:
|
||||
|
||||
- update to version 1.0 of the spec
|
||||
- remove obsolete 'Encoding' key
|
||||
- remove obsolete 'Application' category and add recommended 'GTK'
|
||||
- install icon file to the correct directory
|
||||
- strip suffix from desktop file (specifying it is deprecated)
|
||||
- while at it, remove redundant '-icon' from the filename
|
||||
- install desktop file to the correct directory
|
||||
---
|
||||
Makefile.in | 18 ++++++++++--------
|
||||
gnome/distccmon-gnome.desktop | 7 +++----
|
||||
...mon-gnome-icon.png => distccmon-gnome.png} | Bin
|
||||
src/mon-gnome.c | 2 +-
|
||||
4 files changed, 14 insertions(+), 13 deletions(-)
|
||||
rename gnome/{distccmon-gnome-icon.png => distccmon-gnome.png} (100%)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 6e1e467..1106559 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -52,13 +52,14 @@ mandir = @mandir@
|
||||
includedir = @includedir@
|
||||
oldincludedir = /usr/include
|
||||
docdir = @docdir@
|
||||
-pkgdatadir = $(datadir)/@PACKAGE_NAME@
|
||||
+icondir = $(datarootdir)/pixmaps
|
||||
+desktopdir = $(datarootdir)/applications
|
||||
|
||||
include_server_builddir = $(builddir)/_include_server
|
||||
|
||||
# These must be done from here, not from autoconf, because they can
|
||||
# contain variable expansions written in Make syntax. Ew.
|
||||
-DIR_DEFS = -DLIBDIR="\"${libdir}\"" -DSYSCONFDIR="\"${sysconfdir}\"" -DPKGDATADIR="\"${pkgdatadir}\""
|
||||
+DIR_DEFS = -DLIBDIR="\"${libdir}\"" -DSYSCONFDIR="\"${sysconfdir}\"" -DICONDIR="\"${icondir}\""
|
||||
|
||||
# arguments to pkgconfig
|
||||
GNOME_PACKAGES = @GNOME_PACKAGES@
|
||||
@@ -387,7 +388,7 @@ man_HTML = man/distcc_1.html man/distccd_1.html man/distccmon_text_1.html \
|
||||
man/lsdistcc_1.html man/pump_1.html man/include_server_1.html
|
||||
MEN = $(man1_MEN)
|
||||
|
||||
-gnome_data = gnome/distccmon-gnome-icon.png \
|
||||
+gnome_data = gnome/distccmon-gnome.png \
|
||||
gnome/distccmon-gnome.desktop
|
||||
|
||||
popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
|
||||
@@ -1033,7 +1034,8 @@ showpaths:
|
||||
@echo " programs $(DESTDIR)$(bindir)"
|
||||
@echo " sbin programs $(DESTDIR)$(sbindir)"
|
||||
@echo " system configuration $(DESTDIR)$(sysconfdir)"
|
||||
- @echo " shared data files $(DESTDIR)$(pkgdatadir)"
|
||||
+ @echo " icon file $(DESTDIR)$(icondir)"
|
||||
+ @echo " application file $(DESTDIR)$(desktopdir)"
|
||||
|
||||
|
||||
# install-sh can't handle multiple arguments, but we don't need any
|
||||
@@ -1129,10 +1131,10 @@ install-example: $(example_DOCS)
|
||||
done
|
||||
|
||||
install-gnome-data: $(gnome_data)
|
||||
- $(mkinstalldirs) "$(DESTDIR)$(pkgdatadir)"
|
||||
- for p in $(gnome_data); do \
|
||||
- $(INSTALL_DATA) "$$p" "$(DESTDIR)$(pkgdatadir)" || exit 1; \
|
||||
- done
|
||||
+ $(mkinstalldirs) "$(DESTDIR)$(icondir)"
|
||||
+ $(mkinstalldirs) "$(DESTDIR)$(desktopdir)"
|
||||
+ $(INSTALL_DATA) gnome/distccmon-gnome.png "$(DESTDIR)$(icondir)"
|
||||
+ $(INSTALL_DATA) gnome/distccmon-gnome.desktop "$(DESTDIR)$(desktopdir)"
|
||||
|
||||
install-conf: $(conf_files) $(default_files)
|
||||
$(mkinstalldirs) "$(DESTDIR)$(sysconfdir)/distcc"
|
||||
diff --git a/gnome/distccmon-gnome.desktop b/gnome/distccmon-gnome.desktop
|
||||
index bd1fa26..7205f5e 100644
|
||||
--- a/gnome/distccmon-gnome.desktop
|
||||
+++ b/gnome/distccmon-gnome.desktop
|
||||
@@ -1,6 +1,5 @@
|
||||
[Desktop Entry]
|
||||
-Version=0.9.4
|
||||
-Encoding=UTF-8
|
||||
+Version=1.0
|
||||
Exec=distccmon-gnome
|
||||
Name=distcc monitor
|
||||
Name[sv]=distcc övervakare
|
||||
@@ -8,9 +7,9 @@ GenericName=Distributed Compile Monitor
|
||||
GenericName[sv]=Distribuerad kompilerings-övervakare
|
||||
Comment=Graphical view of distributed compile tasks
|
||||
Comment[sv]=Grafisk vy av distribuerade kompileringsuppgifter
|
||||
-Icon=distccmon-gnome-icon.png
|
||||
+Icon=distccmon-gnome
|
||||
TryExec=distccmon-gnome
|
||||
Terminal=false
|
||||
Type=Application
|
||||
-Categories=GNOME;Application;Development;
|
||||
+Categories=GNOME;GTK;Development;
|
||||
StartupNotify=true
|
||||
diff --git a/gnome/distccmon-gnome-icon.png b/gnome/distccmon-gnome.png
|
||||
similarity index 100%
|
||||
rename from gnome/distccmon-gnome-icon.png
|
||||
rename to gnome/distccmon-gnome.png
|
||||
diff --git a/src/mon-gnome.c b/src/mon-gnome.c
|
||||
index 24681d0..bfc286d 100644
|
||||
--- a/src/mon-gnome.c
|
||||
+++ b/src/mon-gnome.c
|
||||
@@ -599,7 +599,7 @@ static GtkWidget * dcc_gnome_make_mainwin (void)
|
||||
|
||||
#if GTK_CHECK_VERSION(2,2,0)
|
||||
gtk_window_set_icon_from_file (GTK_WINDOW (mainwin),
|
||||
- PKGDATADIR "/distccmon-gnome-icon.png",
|
||||
+ ICONDIR "/distccmon-gnome.png",
|
||||
NULL);
|
||||
#endif
|
||||
|
||||
@@ -1,21 +1,33 @@
|
||||
When building with a separate build directory, make install fails,
|
||||
unable to find the gnome_data files. This patch corrects the
|
||||
patch and ensures the build works in this case.
|
||||
Upstream-Status: Backport [https://github.com/distcc/distcc/pull/363]
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
RP 2013/3/8
|
||||
From 469628ee8dc90c7162d1a850c0b179b7349f9cf3 Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@intel.com>
|
||||
Date: Tue, 17 Sep 2019 13:04:22 +0100
|
||||
Subject: [PATCH] Makefile.in: fix out-of-tree builds when the GNOME UI is
|
||||
enabled
|
||||
|
||||
Upstream-Status: Pending
|
||||
The install command doesn't use $(srcdir) so out-of-tree builds fail.
|
||||
|
||||
Index: git/Makefile.in
|
||||
===================================================================
|
||||
--- git.orig/Makefile.in
|
||||
+++ git/Makefile.in
|
||||
@@ -1117,7 +1117,7 @@ install-example: $(example_DOCS)
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
---
|
||||
Makefile.in | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 123054f..b9ce974 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -1130,8 +1130,8 @@ install-example: $(example_DOCS)
|
||||
install-gnome-data: $(gnome_data)
|
||||
$(mkinstalldirs) "$(DESTDIR)$(pkgdatadir)"
|
||||
for p in $(gnome_data); do \
|
||||
- $(INSTALL_DATA) "$$p" "$(DESTDIR)$(pkgdatadir)" || exit 1; \
|
||||
+ $(INSTALL_DATA) "$(srcdir)/$$p" "$(DESTDIR)$(pkgdatadir)" || exit 1; \
|
||||
done
|
||||
$(mkinstalldirs) "$(DESTDIR)$(icondir)"
|
||||
$(mkinstalldirs) "$(DESTDIR)$(desktopdir)"
|
||||
- $(INSTALL_DATA) gnome/distccmon-gnome.png "$(DESTDIR)$(icondir)"
|
||||
- $(INSTALL_DATA) gnome/distccmon-gnome.desktop "$(DESTDIR)$(desktopdir)"
|
||||
+ $(INSTALL_DATA) $(srcdir)/gnome/distccmon-gnome.png "$(DESTDIR)$(icondir)"
|
||||
+ $(INSTALL_DATA) $(srcdir)/gnome/distccmon-gnome.desktop "$(DESTDIR)$(desktopdir)"
|
||||
|
||||
install-conf: $(conf_files) $(default_files)
|
||||
$(mkinstalldirs) "$(DESTDIR)$(sysconfdir)/distcc"
|
||||
--
|
||||
2.20.1
|
||||
|
||||
Reference in New Issue
Block a user