Radix cross Linux

The main Radix cross Linux repository contains the build scripts of packages, which have the most complete and common functionality for desktop machines

452 Commits   2 Branches   1 Tag
Index: create.patch.sh
===================================================================
--- create.patch.sh	(nonexistent)
+++ create.patch.sh	(revision 109)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+VERSION=1.1.0
+
+tar --files-from=file.list -xJvf ../menu-cache-$VERSION.tar.xz
+mv menu-cache-$VERSION menu-cache-$VERSION-orig
+
+cp -rf ./menu-cache-$VERSION-new ./menu-cache-$VERSION
+
+diff --unified -Nr  menu-cache-$VERSION-orig  menu-cache-$VERSION > menu-cache-$VERSION-gcc10.patch
+
+mv menu-cache-$VERSION-gcc10.patch ../patches
+
+rm -rf ./menu-cache-$VERSION
+rm -rf ./menu-cache-$VERSION-orig

Property changes on: create.patch.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: file.list
===================================================================
--- file.list	(nonexistent)
+++ file.list	(revision 109)
@@ -0,0 +1 @@
+menu-cache-1.1.0/menu-cache-gen/menu-tags.h
Index: menu-cache-1.1.0-new/menu-cache-gen/menu-tags.h
===================================================================
--- menu-cache-1.1.0-new/menu-cache-gen/menu-tags.h	(nonexistent)
+++ menu-cache-1.1.0-new/menu-cache-gen/menu-tags.h	(revision 109)
@@ -0,0 +1,163 @@
+/*
+ *      Copyright 2014 Andriy Grytsenko (LStranger) <andrej@rep.kiev.ua>
+ *
+ *      This file is a part of libmenu-cache package and created program
+ *      should be not used without the library.
+ *
+ *      This library is free software; you can redistribute it and/or
+ *      modify it under the terms of the GNU Lesser General Public
+ *      License as published by the Free Software Foundation; either
+ *      version 2.1 of the License, or (at your option) any later version.
+ *
+ *      This library is distributed in the hope that it will be useful,
+ *      but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *      Lesser General Public License for more details.
+ *
+ *      You should have received a copy of the GNU Lesser General Public
+ *      License along with this library; if not, write to the Free Software
+ *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#include <libfm/fm-extra.h>
+#include <menu-cache.h>
+
+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 */
+    MERGE_FILES, /* first set */
+    MERGE_MENUS,
+    MERGE_ALL, /* only set */
+    MERGE_FILES_MENUS, /* second set */
+    MERGE_MENUS_FILES
+} MenuMergeType;
+
+typedef struct {
+    MenuCacheType type : 2; /* used by MenuMenu, MENU_CACHE_TYPE_DIR */
+    gboolean only_unallocated : 1; /* for Menuname: TRUE if show_empty is set */
+    gboolean is_set : 1; /* used by MenuMenu, for Menuname: TRUE if allow_inline is set */
+    gboolean show_empty : 1;
+    gboolean allow_inline : 1;
+    gboolean inline_header : 1;
+    gboolean inline_alias : 1;
+    gboolean inline_header_is_set : 1; /* for Menuname */
+    gboolean inline_alias_is_set : 1; /* for Menuname */
+    gboolean inline_limit_is_set : 1; /* for Menuname; for MenuMenu is Legacy mark */
+    gboolean nodisplay : 1;
+    GList *items; /* items are MenuItem : Menuname or Filename or Separator or Merge */
+    int inline_limit;
+} MenuLayout;
+
+/* Menuname item */
+typedef struct {
+    MenuLayout layout;
+    char *name;
+} MenuMenuname;
+
+/* Filename item in layout */
+typedef struct {
+    MenuCacheType type : 2; /* MENU_CACHE_TYPE_APP */
+    char *id;
+} MenuFilename;
+
+/* Separator item */
+typedef struct {
+    MenuCacheType type : 2; /* MENU_CACHE_TYPE_SEP */
+} MenuSep;
+
+/* Merge item */
+typedef struct {
+    MenuCacheType type : 2; /* MENU_CACHE_TYPE_NONE */
+    MenuMergeType merge_type;
+} MenuMerge;
+
+/* Menu item */
+typedef struct {
+    MenuLayout layout; /* copied from hash on </Menu> */
+    char *name;
+    /* next fields are only for Menu */
+    char *key; /* for sorting */
+    GList *id; /* <Directory> for <Menu>, may be NULL, first is most relevant */
+    /* next fields are only for composer */
+    GList *children; /* items are MenuItem : MenuApp, MenuMenu, MenuSep, MenuRule */
+    char *title;
+    char *comment;
+    char *icon;
+    const char *dir;
+} MenuMenu;
+
+/* File item in menu */
+typedef struct {
+    MenuCacheType type : 2; /* MENU_CACHE_TYPE_APP */
+    gboolean excluded : 1;
+    gboolean allocated : 1;
+    gboolean matched : 1;
+    gboolean use_terminal : 1;
+    gboolean use_notification : 1;
+    gboolean hidden : 1;
+    GList *dirs; /* can be reordered until allocated */
+    GList *menus;
+    char *filename; /* if NULL then is equal to id */
+    char *key; /* for sorting */
+    char *id;
+    char *title;
+    char *comment;
+    char *icon;
+    char *generic_name;
+    char *exec;
+    char *try_exec;
+    char *wd;
+    const char **categories; /* all char ** keep interned values */
+    const char **keywords;
+    const char **show_in;
+    const char **hide_in;
+} MenuApp;
+
+/* a placeholder for matching */
+typedef struct {
+    MenuCacheType type : 2; /* MENU_CACHE_TYPE_NONE */
+    FmXmlFileItem *rule;
+} MenuRule;
+
+/* requested language(s) */
+extern char **languages;
+
+/* list of menu files to monitor */
+extern GSList *MenuFiles;
+
+/* list of menu dirs to monitor */
+extern GSList *MenuDirs;
+
+/* list of available app dirs */
+extern GSList *AppDirs;
+
+/* list of available dir dirs */
+extern GSList *DirDirs;
+
+/* parse and merge menu files */
+MenuMenu *get_merged_menu(const char *file, FmXmlFile **xmlfile, GError **error);
+
+/* parse all files into layout and save cache file */
+gboolean save_menu_cache(MenuMenu *layout, const char *menuname, const char *file,
+                         gboolean with_hidden);
+
+/* free MenuLayout data */
+void _free_layout_items(GList *data);
+
+/* verbosity level */
+extern gint verbose;
+
+#define DBG if (verbose) g_debug
+#define VDBG if (verbose > 1) g_debug
+#define VVDBG if (verbose > 2) g_debug