diff options
Diffstat (limited to 'x11-libs/libcompizconfig/files')
-rw-r--r-- | x11-libs/libcompizconfig/files/libcompizconfig-0.8.2-allow-system-libiniparser.patch | 239 |
1 files changed, 239 insertions, 0 deletions
diff --git a/x11-libs/libcompizconfig/files/libcompizconfig-0.8.2-allow-system-libiniparser.patch b/x11-libs/libcompizconfig/files/libcompizconfig-0.8.2-allow-system-libiniparser.patch new file mode 100644 index 00000000..3028faf9 --- /dev/null +++ b/x11-libs/libcompizconfig/files/libcompizconfig-0.8.2-allow-system-libiniparser.patch @@ -0,0 +1,239 @@ +diff -Naur libcompizconfig-0.8.2.orig/config.h.in libcompizconfig-0.8.2/config.h.in +--- libcompizconfig-0.8.2.orig/config.h.in 2009-03-05 15:29:12.000000000 +0000 ++++ libcompizconfig-0.8.2/config.h.in 2009-05-02 14:55:48.000000000 +0100 +@@ -30,6 +30,9 @@ + /* Define if your <locale.h> file defines LC_MESSAGES. */ + #undef HAVE_LC_MESSAGES + ++/* Define to 1 if you have the `iniparser' library (-liniparser). */ ++#undef HAVE_LIBINIPARSER ++ + /* Define to 1 if you have the `protobuf' library (-lprotobuf). */ + #undef HAVE_LIBPROTOBUF + +diff -Naur libcompizconfig-0.8.2.orig/configure.ac libcompizconfig-0.8.2/configure.ac +--- libcompizconfig-0.8.2.orig/configure.ac 2009-03-05 03:22:22.000000000 +0000 ++++ libcompizconfig-0.8.2/configure.ac 2009-05-02 14:55:48.000000000 +0100 +@@ -116,6 +116,16 @@ + fi + AM_CONDITIONAL([USE_PROTOBUF], [test "x$use_protobuf" = "xyes"]) + ++AC_ARG_WITH(internal-iniparser, ++ [AS_HELP_STRING([--without-internal-iniparser],[Don't use bundled iniparser lib])], ++ [], [with_internal_iniparser=yes]) ++ ++if test "x$with_internal_iniparser" = "xno"; then ++ AC_CHECK_LIB([iniparser], [iniparser_getnsec], [], ++ [AC_MSG_ERROR([Error! You need to have libiniparser])]) ++fi ++AM_CONDITIONAL([WITH_INTERNAL_INIPARSER], [test "x$with_internal_iniparser" = "xyes"]) ++ + AC_CHECK_HEADERS([sys/inotify.h], [have_inotify=yes], [have_inotify=no]) + + AC_ARG_ENABLE(debug, +diff -Naur libcompizconfig-0.8.2.orig/include/ccs.h libcompizconfig-0.8.2/include/ccs.h +--- libcompizconfig-0.8.2.orig/include/ccs.h 2009-03-05 03:22:22.000000000 +0000 ++++ libcompizconfig-0.8.2/include/ccs.h 2009-05-02 14:55:48.000000000 +0100 +@@ -695,19 +695,9 @@ + + /* INI file stuff */ + +-typedef struct _dictionary_ +-{ +- /** Number of entries in dictionary */ +- int n; +- /** Storage size */ +- int size; +- /** List of string values */ +- char **val; +- /** List of string keys */ +- char **key ; +- /** List of hash values for keys */ +- unsigned *hash; +-} IniDictionary; ++#include <iniparser.h> ++ ++typedef dictionary IniDictionary; + + IniDictionary* ccsIniNew (void); + IniDictionary* ccsIniOpen (const char *fileName); +diff -Naur libcompizconfig-0.8.2.orig/src/Makefile.am libcompizconfig-0.8.2/src/Makefile.am +--- libcompizconfig-0.8.2.orig/src/Makefile.am 2009-03-05 15:28:59.000000000 +0000 ++++ libcompizconfig-0.8.2/src/Makefile.am 2009-05-02 14:55:48.000000000 +0100 +@@ -39,14 +39,17 @@ + lists.c \ + compiz.cpp \ + config.c \ +- iniparser.c \ + ini.c \ + bindings.c \ + filewatch.c \ +- ccs-private.h \ +- iniparser.h ++ ccs-private.h + + libcompizconfig_la_LIBADD = @LIBXML2_LIBS@ @LIBX11_LIBS@ $(PROTOBUF_LIB) + + lib_LTLIBRARIES=libcompizconfig.la + ++if WITH_INTERNAL_INIPARSER ++ ++ libcompizconfig_la_SOURCES += iniparser.h iniparser.c ++ ++endif +diff -Naur libcompizconfig-0.8.2.orig/src/ini.c libcompizconfig-0.8.2/src/ini.c +--- libcompizconfig-0.8.2.orig/src/ini.c 2009-03-05 03:22:22.000000000 +0000 ++++ libcompizconfig-0.8.2/src/ini.c 2009-05-02 14:56:12.000000000 +0100 +@@ -23,9 +23,10 @@ + #include <sys/stat.h> + #include <sys/types.h> + #include <errno.h> ++#include <ctype.h> + + #include <ccs.h> +-#include "iniparser.h" ++#include <iniparser.h> + + /** + * Creates the parent directory for @fileName, recursively creating a directory +@@ -77,7 +78,7 @@ + if (file) + fclose (file); + +- return iniparser_new ((char*) fileName); ++ return iniparser_load ((char*) fileName); + } + + IniDictionary* +@@ -89,17 +90,22 @@ + void + ccsIniClose (IniDictionary *dictionary) + { +- iniparser_free (dictionary); ++ iniparser_freedict (dictionary); + } + + void + ccsIniSave (IniDictionary *dictionary, + const char *fileName) + { ++ FILE *f; + if (!ccsCreateDirFor (fileName)) + return; + +- iniparser_dump_ini (dictionary, fileName); ++ f = fopen(fileName, "w"); ++ if(!f) ++ return; ++ iniparser_dump_ini (dictionary, f); ++ fclose(f); + } + + static char* +@@ -127,11 +133,11 @@ + char *sectionName; + + asprintf (§ionName, "%s:%s", section, entry); +- ++/* + if (!iniparser_find_entry (dictionary, (char*) section)) + iniparser_add_entry (dictionary, (char*) section, NULL, NULL); +- +- iniparser_setstr (dictionary, sectionName, (char*) value); ++*/ ++ iniparser_set (dictionary, sectionName, (char*) value); + + free (sectionName); + } +diff -Naur libcompizconfig-0.8.2.orig/src/iniparser.h libcompizconfig-0.8.2/src/iniparser.h +--- libcompizconfig-0.8.2.orig/src/iniparser.h 2009-03-05 03:22:22.000000000 +0000 ++++ libcompizconfig-0.8.2/src/iniparser.h 1970-01-01 01:00:00.000000000 +0100 +@@ -1,65 +0,0 @@ +-/* +- Based upon libiniparser, by Nicolas Devillard +- Hacked into 1 file (m-iniparser) by Freek/2005 +- Original terms following: +- +- -- - +- +- Copyright (c) 2000 by Nicolas Devillard (ndevilla AT free DOT fr). +- +- Written by Nicolas Devillard. Not derived from licensed software. +- +- Permission is granted to anyone to use this software for any +- purpose on any computer system, and to redistribute it freely, +- subject to the following restrictions: +- +- 1. The author is not responsible for the consequences of use of +- this software, no matter how awful, even if they arise +- from defects in it. +- +- 2. The origin of this software must not be misrepresented, either +- by explicit claim or by omission. +- +- 3. Altered versions must be plainly marked as such, and must not +- be misrepresented as being the original software. +- +- 4. This notice may not be removed or altered. +- +- */ +- +- +-#ifndef _INIPARSER_H_ +-#define _INIPARSER_H_ +-#include <stdio.h> +-#include <stdlib.h> +-#include <string.h> +-#include <unistd.h> +-#include <ctype.h> +- +-#include <ccs.h> +- +-typedef IniDictionary dictionary; +- +-typedef struct _FileLock +-{ +- int fd; +-} FileLock; +- +-/* generated by genproto */ +- +-dictionary * iniparser_new(char *ininame); +-dictionary * dictionary_new(int size); +-void iniparser_free(dictionary * d); +- +- +-int iniparser_getnsec(dictionary * d); +-char * iniparser_getsecname(dictionary * d, int n); +-void iniparser_dump_ini(dictionary * d, const char * file_name); +-char * iniparser_getstring(dictionary * d, char * key, char * def); +-void iniparser_add_entry(dictionary * d, char * sec, char * key, char * val); +-int iniparser_find_entry(dictionary * ini, char * entry); +-int iniparser_setstr(dictionary * ini, char * entry, char * val); +-void iniparser_unset(dictionary * ini, char * entry); +- +-#endif +- +diff -Naur libcompizconfig-0.8.2.orig/src/main.c libcompizconfig-0.8.2/src/main.c +--- libcompizconfig-0.8.2.orig/src/main.c 2009-03-05 03:22:22.000000000 +0000 ++++ libcompizconfig-0.8.2/src/main.c 2009-05-02 14:56:26.000000000 +0100 +@@ -34,9 +34,9 @@ + #include <math.h> + + #include <ccs.h> ++#include <iniparser.h> + + #include "ccs-private.h" +-#include "iniparser.h" + + Bool basicMetadata = FALSE; + +@@ -2577,7 +2577,7 @@ + return FALSE; + fclose (fp); + +- importFile = iniparser_new ((char *) fileName); ++ importFile = iniparser_load ((char *) fileName); + if (!importFile) + return FALSE; + |