menu-cache.

This commit is contained in:
uglyside
2025-07-03 06:53:32 +03:00
parent ca05a3d306
commit d8a4ca3aa1
3 changed files with 14 additions and 121 deletions
+5 -6
View File
@@ -1,16 +1,14 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt
# See the file https://www.gnu.org/licenses/gpl-3.0.txt
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
from pisi.actionsapi import pisitools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
shelltools.system("./autogen.sh")
autotools.configure("--disable-static \
--libexecdir=/usr/lib \
--sysconfdir=/etc")
@@ -20,4 +18,5 @@ def build():
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("AUTHORS", "COPYING")
@@ -1,108 +0,0 @@
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
+9 -7
View File
@@ -1,19 +1,19 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "https://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>menu-cache</Name>
<Homepage>https://www.lxde.org/</Homepage>
<Homepage>https://github.com/lxde/menu-cache</Homepage>
<Packager>
<Name>Ayhan Yalçınsoy</Name>
<Email>ayhanyalcinsoy@pisilinux.org</Email>
</Packager>
<License>GPL2</License>
<License>LGPLv2.1</License>
<IsA>app</IsA>
<Icon>lxqt</Icon>
<Summary>freedesktop.org desktop menus for LXDE</Summary>
<Description>Library used to read freedesktop.org menus</Description>
<Archive sha1sum="e3cd5ca9f094c7e1d8ca09b43bf5d819cd4efc26" type="targz">https://github.com/lxde/menu-cache/archive/1.1.1.tar.gz</Archive>
<Archive sha1sum="47f8952597e4a9bdb52de64f4e701e8f9f63d952" type="tarxz">https://github.com/lxde/releases/raw/master/releases/menu-cache-1.1.1.tar.xz</Archive>
<BuildDependencies>
<Dependency>gtk-doc</Dependency>
<Dependency>glib2-devel</Dependency>
@@ -21,12 +21,12 @@
<Dependency versionFrom="6.9.0">qt6-base-devel</Dependency>
</BuildDependencies>
<Patches>
<!-- <Patch>menu-cache-1.1.0-0001-Support-gcc10-compilation.patch</Patch> -->
<!-- <Patch level="1"></Patch> -->
</Patches>
</Source>
<Package>
<Name>menu-cache</Name>
<Summary>Development headers for libfm-qt</Summary>
<RuntimeDependencies>
<Dependency>glib2</Dependency>
<Dependency>libfm-extra</Dependency>
@@ -37,6 +37,7 @@
<Path fileType="data">/usr/share</Path>
</Files>
</Package>
<Package>
<Name>menu-cache-devel</Name>
<Summary>Development files for menu-cache</Summary>
@@ -46,9 +47,10 @@
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="library">/usr/lib/pkgconfig</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
</Files>
</Package>
<History>
<Update release="14">
<Date>2025-05-15</Date>