123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- 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.
- [Retrieved from:
- https://github.com/lxde/menu-cache/pull/19/commits/1ce739649b4d66339a03fc0ec9ee7a2f7c141780]
- Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
- ---
- 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
|