menu-cache: pick up unmaintained port

This commit is contained in:
Danny Rawlins 2020-12-18 22:23:26 +11:00
parent c7e54b60e7
commit 7660fcc0e1
4 changed files with 125 additions and 12 deletions

View File

@ -3,6 +3,7 @@ drwxr-xr-x root/root usr/include/
drwxr-xr-x root/root usr/include/menu-cache/
-rw-r--r-- root/root usr/include/menu-cache/menu-cache.h
drwxr-xr-x root/root usr/lib/
-rw-r--r-- root/root usr/lib/libmenu-cache.a
-rwxr-xr-x root/root usr/lib/libmenu-cache.la
lrwxrwxrwx root/root usr/lib/libmenu-cache.so -> libmenu-cache.so.3.2.0
lrwxrwxrwx root/root usr/lib/libmenu-cache.so.3 -> libmenu-cache.so.3.2.0

View File

@ -1,5 +1,6 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF32F3sc4P9j3pMUACxU5WzyoGoHRLPvzCd4VuvDXaK3FodDkuA6JccNLQkWzkcXSmsFTBWzpUBton8AvMtpnqmAc=
SHA256 (Pkgfile) = bfff97e2c6966f68eaac9496e0f097a1f89598c7f8bb2822b4917f0460637933
SHA256 (.footprint) = 1155ac116f2576b10f0d7537987ea942ac3362406ee9268520787954ea11c293
RWSagIOpLGJF38pnj9WDsD5ddAPD9ueGJdwmZ7PcPgHYdku+jDorBdlhHElcI3ld1/W+AYHxzxtmJuCN9v5sWIMUbWctr6hyGww=
SHA256 (Pkgfile) = 9c01cac7d4a4ff908873124303bdd50fe99b870114351168909eb21730456211
SHA256 (.footprint) = e2d64ddd1950bab6b15f7c1d24bf664dedd4aa5ad9653dac9a60c40b0d3ad020
SHA256 (menu-cache-1.1.0.tar.xz) = ed02eb459dcb398f69b9fa5bf4dd813020405afc84331115469cdf7be9273ec7
SHA256 (menu-cache-1.1.0-0001-Support-gcc10-compilation.patch) = 393723ca805cb5ffb5eee2ad00a1c4624b513ca72bfb6a880d71907fb96e83de

View File

@ -1,19 +1,22 @@
# Description: Caching mechanism for freedesktop.org compliant menus
# URL: https://lxde.org/
# Maintainer: unmaintained
# Maintainer: Danny Rawlins, crux at romster dot me
# Depends on: libfm-extra
name=menu-cache
version=1.1.0
release=1
source=(https://downloads.sourceforge.net/lxde/$name-$version.tar.xz)
source=(https://downloads.sourceforge.net/lxde/$name-$version.tar.xz
menu-cache-1.1.0-0001-Support-gcc10-compilation.patch)
build() {
cd $name-$version
./configure --prefix=/usr \
--disable-static \
--libexecdir=/usr/lib/$name
make
make DESTDIR=$PKG install
}
cd $name-$version
patch -p1 -i $SRC/menu-cache-1.1.0-0001-Support-gcc10-compilation.patch
./configure --prefix=/usr \
--libexecdir=/usr/lib/$name
make
make DESTDIR=$PKG install
}

View File

@ -0,0 +1,108 @@
From 1ce739649b4d66339a03fc0ec9ee7a2f7c141780 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Fri, 24 Jan 2020 13:33:00 +0900
Subject: [PATCH] Support gcc10 compilation
gcc10 now defaults to -fno-common, and with gcc10 menu-cache compilation fails like
/bin/ld: menu-merge.o:menu-cache-gen/menu-tags.h:167: multiple definition of `DirDirs'; main.o:menu-cache-gen/menu-tags.h:167: first defined here
/bin/ld: menu-merge.o:menu-cache-gen/menu-tags.h:164: multiple definition of `AppDirs'; main.o:menu-cache-gen/menu-tags.h:164: first defined here
/bin/ld: menu-merge.o:menu-cache-gen/menu-tags.h:52: multiple definition of `menuTag_Layout'; main.o:menu-cache-gen/menu-tags.h:52: first defined here
....
This patch fixes compilation with gcc10: properly declaring variables in header with "extern", and also removing some unneeded variables in header files.
---
menu-cache-gen/menu-tags.h | 55 ++++++++++++--------------------------
1 file changed, 17 insertions(+), 38 deletions(-)
diff --git a/menu-cache-gen/menu-tags.h b/menu-cache-gen/menu-tags.h
index f3fd7d3..f71c0bc 100644
--- a/menu-cache-gen/menu-tags.h
+++ b/menu-cache-gen/menu-tags.h
@@ -22,38 +22,17 @@
#include <libfm/fm-extra.h>
#include <menu-cache.h>
-FmXmlFileTag menuTag_Menu;
-FmXmlFileTag menuTag_AppDir;
-FmXmlFileTag menuTag_DefaultAppDirs;
-FmXmlFileTag menuTag_DirectoryDir;
-FmXmlFileTag menuTag_DefaultDirectoryDirs;
-FmXmlFileTag menuTag_Include;
-FmXmlFileTag menuTag_Exclude;
-FmXmlFileTag menuTag_Filename;
-FmXmlFileTag menuTag_Or;
-FmXmlFileTag menuTag_And;
-FmXmlFileTag menuTag_Not;
-FmXmlFileTag menuTag_Category;
-FmXmlFileTag menuTag_MergeFile;
-FmXmlFileTag menuTag_MergeDir;
-FmXmlFileTag menuTag_DefaultMergeDirs;
-FmXmlFileTag menuTag_Directory;
-FmXmlFileTag menuTag_Name;
-FmXmlFileTag menuTag_Deleted;
-FmXmlFileTag menuTag_NotDeleted;
-FmXmlFileTag menuTag_OnlyUnallocated;
-FmXmlFileTag menuTag_NotOnlyUnallocated;
-FmXmlFileTag menuTag_All;
-FmXmlFileTag menuTag_LegacyDir;
-FmXmlFileTag menuTag_KDELegacyDirs;
-FmXmlFileTag menuTag_Move;
-FmXmlFileTag menuTag_Old;
-FmXmlFileTag menuTag_New;
-FmXmlFileTag menuTag_Layout;
-FmXmlFileTag menuTag_DefaultLayout;
-FmXmlFileTag menuTag_Menuname;
-FmXmlFileTag menuTag_Separator;
-FmXmlFileTag menuTag_Merge;
+extern FmXmlFileTag menuTag_AppDir;
+extern FmXmlFileTag menuTag_DirectoryDir;
+extern FmXmlFileTag menuTag_Include;
+extern FmXmlFileTag menuTag_Exclude;
+extern FmXmlFileTag menuTag_Filename;
+extern FmXmlFileTag menuTag_Or;
+extern FmXmlFileTag menuTag_And;
+extern FmXmlFileTag menuTag_Not;
+extern FmXmlFileTag menuTag_Category;
+extern FmXmlFileTag menuTag_All;
+extern FmXmlFileTag menuTag_LegacyDir;
typedef enum {
MERGE_NONE, /* starting value */
@@ -152,19 +131,19 @@ typedef struct {
} MenuRule;
/* requested language(s) */
-char **languages;
+extern char **languages;
/* list of menu files to monitor */
-GSList *MenuFiles;
+extern GSList *MenuFiles;
/* list of menu dirs to monitor */
-GSList *MenuDirs;
+extern GSList *MenuDirs;
/* list of available app dirs */
-GSList *AppDirs;
+extern GSList *AppDirs;
/* list of available dir dirs */
-GSList *DirDirs;
+extern GSList *DirDirs;
/* parse and merge menu files */
MenuMenu *get_merged_menu(const char *file, FmXmlFile **xmlfile, GError **error);
@@ -177,7 +156,7 @@ gboolean save_menu_cache(MenuMenu *layout, const char *menuname, const char *fil
void _free_layout_items(GList *data);
/* verbosity level */
-gint verbose;
+extern gint verbose;
#define DBG if (verbose) g_debug
#define VDBG if (verbose > 1) g_debug
--
2.24.1