adium 2509:3e5d7a71e9fd: libjson-glib.framework
commits at adium.im
commits at adium.im
Sun Jun 21 17:44:56 UTC 2009
details: http://hg.adium.im/adium/rev/3e5d7a71e9fd
revision: 2509:3e5d7a71e9fd
author: Zachary West <zacw at adium.im>
date: Sun Jun 21 13:43:25 2009 -0400
libjson-glib.framework
Subject: adium 2510:f4b9ca6c6b36: Project changes for libjson-glib.framework
details: http://hg.adium.im/adium/rev/f4b9ca6c6b36
revision: 2510:f4b9ca6c6b36
author: Zachary West <zacw at adium.im>
date: Sun Jun 21 13:43:35 2009 -0400
Project changes for libjson-glib.framework
Subject: adium 2511:2ca847c2b11c: Dependency build script changes for json-glib
details: http://hg.adium.im/adium/rev/2ca847c2b11c
revision: 2511:2ca847c2b11c
author: Zachary West <zacw at adium.im>
date: Sun Jun 21 13:44:00 2009 -0400
Dependency build script changes for json-glib
Subject: adium 2512:af575111bcee: im.pidgin.adium at 83638905971b97ae72bc7318a7f152adf5e8b6f1 which has pidgin-facebookchat at r508 (1.51+)
details: http://hg.adium.im/adium/rev/af575111bcee
revision: 2512:af575111bcee
author: Zachary West <zacw at adium.im>
date: Sun Jun 21 13:44:29 2009 -0400
im.pidgin.adium at 83638905971b97ae72bc7318a7f152adf5e8b6f1 which has pidgin-facebookchat at r508 (1.51+)
diffs (915 lines):
diff -r 375347213ef2 -r af575111bcee Adium.xcodeproj/project.pbxproj
--- a/Adium.xcodeproj/project.pbxproj Sun Jun 21 13:20:47 2009 -0400
+++ b/Adium.xcodeproj/project.pbxproj Sun Jun 21 13:44:29 2009 -0400
@@ -144,6 +144,9 @@
11879C0B0F6FF4C400CACFB1 /* AITwitterAccountOAuthSetup.m in Sources */ = {isa = PBXBuildFile; fileRef = 11879C0A0F6FF4C400CACFB1 /* AITwitterAccountOAuthSetup.m */; };
11879DF80F6FFC0B00CACFB1 /* OAuthConsumer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 11879DF70F6FFC0B00CACFB1 /* OAuthConsumer.framework */; };
11879E0A0F6FFC1000CACFB1 /* OAuthConsumer.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 11879DF70F6FFC0B00CACFB1 /* OAuthConsumer.framework */; };
+ 118A44500FEEA828008153C0 /* libjson-glib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 118A444F0FEEA828008153C0 /* libjson-glib.framework */; };
+ 118A44510FEEA828008153C0 /* libjson-glib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 118A444F0FEEA828008153C0 /* libjson-glib.framework */; };
+ 118A44540FEEA82E008153C0 /* libjson-glib.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 118A444F0FEEA828008153C0 /* libjson-glib.framework */; };
1192E6D90FD3056F003CAEF5 /* AIAnnoyingIRCMessagesHiderPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 1192E6B10FD30307003CAEF5 /* AIAnnoyingIRCMessagesHiderPlugin.h */; };
1192E6DA0FD30578003CAEF5 /* AIAnnoyingIRCMessagesHiderPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 1192E6B20FD30307003CAEF5 /* AIAnnoyingIRCMessagesHiderPlugin.m */; };
11945F400F7935A2002A54B3 /* Ignore.png in Resources */ = {isa = PBXBuildFile; fileRef = 11945F3F0F7935A2002A54B3 /* Ignore.png */; };
@@ -1679,6 +1682,7 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
+ 118A44540FEEA82E008153C0 /* libjson-glib.framework in Copy Frameworks */,
633404710F9C18EF003C77A9 /* AIUtilities.framework in Copy Frameworks */,
639DF9D80F97E678003C9A32 /* AdiumLibpurple.framework in Copy Frameworks */,
11879E0A0F6FFC1000CACFB1 /* OAuthConsumer.framework in Copy Frameworks */,
@@ -1889,6 +1893,7 @@
11879C090F6FF4C400CACFB1 /* AITwitterAccountOAuthSetup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AITwitterAccountOAuthSetup.h; path = "Plugins/Twitter Plugin/AITwitterAccountOAuthSetup.h"; sourceTree = "<group>"; };
11879C0A0F6FF4C400CACFB1 /* AITwitterAccountOAuthSetup.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AITwitterAccountOAuthSetup.m; path = "Plugins/Twitter Plugin/AITwitterAccountOAuthSetup.m"; sourceTree = "<group>"; };
11879DF70F6FFC0B00CACFB1 /* OAuthConsumer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OAuthConsumer.framework; path = Frameworks/OAuthConsumer.framework; sourceTree = "<group>"; };
+ 118A444F0FEEA828008153C0 /* libjson-glib.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = "libjson-glib.framework"; path = "Frameworks/libjson-glib.framework"; sourceTree = "<group>"; };
1192E6B10FD30307003CAEF5 /* AIAnnoyingIRCMessagesHiderPlugin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AIAnnoyingIRCMessagesHiderPlugin.h; path = "Plugins/Purple Service/AIAnnoyingIRCMessagesHiderPlugin.h"; sourceTree = "<group>"; };
1192E6B20FD30307003CAEF5 /* AIAnnoyingIRCMessagesHiderPlugin.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AIAnnoyingIRCMessagesHiderPlugin.m; path = "Plugins/Purple Service/AIAnnoyingIRCMessagesHiderPlugin.m"; sourceTree = "<group>"; };
11945F3F0F7935A2002A54B3 /* Ignore.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Ignore.png; path = "Frameworks/Adium Framework/Resources/Ignore.png"; sourceTree = "<group>"; };
@@ -4742,6 +4747,7 @@
811035180CDE783800EC6038 /* SecurityInterface.framework in Frameworks */,
633405990F9C2C00003C77A9 /* AIUtilities.framework in Frameworks */,
3485D8EB09EB446900232CC4 /* Adium.framework in Frameworks */,
+ 118A44500FEEA828008153C0 /* libjson-glib.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -4788,6 +4794,7 @@
340C1ABF0BD58FAB00D09235 /* Security.framework in Frameworks */,
31E0CD810C5EEF5200271DB1 /* CoreAudio.framework in Frameworks */,
11879DF80F6FFC0B00CACFB1 /* OAuthConsumer.framework in Frameworks */,
+ 118A44510FEEA828008153C0 /* libjson-glib.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -4882,6 +4889,7 @@
1172FCA10CDAA8DE00B8E233 /* Frameworks */ = {
isa = PBXGroup;
children = (
+ 118A444F0FEEA828008153C0 /* libjson-glib.framework */,
1172FBC30CDAA8D400B8E233 /* libglib.framework */,
1172FBC40CDAA8D400B8E233 /* libgmodule.framework */,
1172FBC50CDAA8D400B8E233 /* libgobject.framework */,
@@ -12333,6 +12341,10 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 63C7E2060FAFAA4700B310AC /* AdiumLibpurple.xcconfig */;
buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)/Frameworks\"",
+ );
};
name = Debug;
};
@@ -12340,6 +12352,10 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 63C7E2060FAFAA4700B310AC /* AdiumLibpurple.xcconfig */;
buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)/Frameworks\"",
+ );
};
name = Release;
};
@@ -12347,6 +12363,10 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 63C7E2060FAFAA4700B310AC /* AdiumLibpurple.xcconfig */;
buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)/Frameworks\"",
+ );
};
name = "Release-Debug";
};
@@ -12459,6 +12479,10 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 63C7E2040FAFAA4700B310AC /* Adium.xcconfig */;
buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)/Frameworks\"",
+ );
};
name = Debug;
};
@@ -12466,6 +12490,10 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 63C7E2040FAFAA4700B310AC /* Adium.xcconfig */;
buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)/Frameworks\"",
+ );
};
name = Release;
};
@@ -12473,6 +12501,10 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 63C7E2040FAFAA4700B310AC /* Adium.xcconfig */;
buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)/Frameworks\"",
+ );
};
name = "Release-Debug";
};
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Headers
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Headers Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,1 @@
+Versions/Current/Headers
\ No newline at end of file
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Resources
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Resources Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,1 @@
+Versions/Current/Resources
\ No newline at end of file
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-enum-types.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-enum-types.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,24 @@
+
+/* Generated data (by glib-mkenums) */
+
+#ifndef __JSON_ENUM_TYPES_H__
+#define __JSON_ENUM_TYPES_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/* enumerations from "../json-glib/json-parser.h" */
+GType json_parser_error_get_type (void) G_GNUC_CONST;
+#define JSON_TYPE_PARSER_ERROR (json_parser_error_get_type())
+
+/* enumerations from "../json-glib/json-types.h" */
+GType json_node_type_get_type (void) G_GNUC_CONST;
+#define JSON_TYPE_NODE_TYPE (json_node_type_get_type())
+
+G_END_DECLS
+
+#endif /* !__JSON_ENUM_TYPES_H__ */
+
+/* Generated data ends here */
+
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-generator.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-generator.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,82 @@
+/* json-generator.h - JSON streams generator
+ *
+ * This file is part of JSON-GLib
+ * Copyright (C) 2007 OpenedHand Ltd.
+ *
+ * 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 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.
+ *
+ * Author:
+ * Emmanuele Bassi <ebassi at openedhand.com>
+ */
+
+#ifndef __JSON_GENERATOR_H__
+#define __JSON_GENERATOR_H__
+
+#include <json-glib/json-types.h>
+
+G_BEGIN_DECLS
+
+#define JSON_TYPE_GENERATOR (json_generator_get_type ())
+#define JSON_GENERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSON_TYPE_GENERATOR, JsonGenerator))
+#define JSON_IS_GENERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSON_TYPE_GENERATOR))
+#define JSON_GENERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSON_TYPE_GENERATOR, JsonGeneratorClass))
+#define JSON_IS_GENERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSON_TYPE_GENERATOR))
+#define JSON_GENERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSON_TYPE_GENERATOR, JsonGeneratorClass))
+
+typedef struct _JsonGenerator JsonGenerator;
+typedef struct _JsonGeneratorPrivate JsonGeneratorPrivate;
+typedef struct _JsonGeneratorClass JsonGeneratorClass;
+
+/**
+ * JsonGenerator:
+ *
+ * JSON data streams generator. The contents of the #JsonGenerator structure
+ * are private and should only be accessed via the provided API.
+ */
+struct _JsonGenerator
+{
+ /*< private >*/
+ GObject parent_instance;
+
+ JsonGeneratorPrivate *priv;
+};
+
+/**
+ * JsonGeneratorClass:
+ *
+ * #JsonGenerator class
+ */
+struct _JsonGeneratorClass
+{
+ /*< private >*/
+ GObjectClass parent_class;
+
+ /* padding, for future expansion */
+ void (* _json_reserved1) (void);
+ void (* _json_reserved2) (void);
+ void (* _json_reserved3) (void);
+ void (* _json_reserved4) (void);
+};
+
+GType json_generator_get_type (void) G_GNUC_CONST;
+
+JsonGenerator *json_generator_new (void);
+gchar * json_generator_to_data (JsonGenerator *generator,
+ gsize *length);
+gboolean json_generator_to_file (JsonGenerator *generator,
+ const gchar *filename,
+ GError **error);
+void json_generator_set_root (JsonGenerator *generator,
+ JsonNode *node);
+
+G_END_DECLS
+
+#endif /* __JSON_GENERATOR_H__ */
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-glib.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-glib.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,10 @@
+#ifndef __JSON_GLIB_H__
+#define __JSON_GLIB_H__
+
+#include <json-glib/json-types.h>
+#include <json-glib/json-generator.h>
+#include <json-glib/json-parser.h>
+#include <json-glib/json-version.h>
+#include <json-glib/json-enum-types.h>
+
+#endif /* __JSON_GLIB_H__ */
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-gobject.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-gobject.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,88 @@
+/* json-gobject.h - JSON GObject integration
+ *
+ * This file is part of JSON-GLib
+ * Copyright (C) 2007 OpenedHand Ltd.
+ *
+ * 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 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.
+ *
+ * Author:
+ * Emmanuele Bassi <ebassi at openedhand.com>
+ */
+
+#ifndef __JSON_GOBJECT_H__
+#define __JSON_GOBJECT_H__
+
+#include <json-glib/json-types.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define JSON_TYPE_SERIALIZABLE (json_serializable_get_type ())
+#define JSON_SERIALIZABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSON_TYPE_SERIALIZABLE, JsonSerializable))
+#define JSON_IS_SERIALIZABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSON_TYPE_SERIALIZABLE))
+#define JSON_SERIALIZABLE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), JSON_TYPE_SERIALIZABLE, JsonSerializableIface))
+
+typedef struct _JsonSerializable JsonSerializable; /* dummy */
+typedef struct _JsonSerializableIface JsonSerializableIface;
+
+/**
+ * JsonSerializableIface:
+ * @serialize_property: virtual function for serializing a #GObject property
+ * into a #JsonNode
+ * @deserialize_property: virtual function for deserializing a #JsonNode
+ * into a #GObject property
+ *
+ * Interface that allows serializing and deserializing #GObject<!-- -->s
+ * with properties storing complex data types. The json_serialize_gobject()
+ * function will check if the passed #GObject implements this interface,
+ * so it can also be used to override the default property serialization
+ * sequence.
+ */
+struct _JsonSerializableIface
+{
+ /*< private >*/
+ GTypeInterface g_iface;
+
+ /*< public >*/
+ JsonNode *(* serialize_property) (JsonSerializable *serializable,
+ const gchar *property_name,
+ const GValue *value,
+ GParamSpec *pspec);
+ gboolean (* deserialize_property) (JsonSerializable *serializable,
+ const gchar *property_name,
+ GValue *value,
+ GParamSpec *pspec,
+ JsonNode *property_node);
+};
+
+GType json_serializable_get_type (void) G_GNUC_CONST;
+
+JsonNode *json_serializable_serialize_property (JsonSerializable *serializable,
+ const gchar *property_name,
+ const GValue *value,
+ GParamSpec *pspec);
+gboolean json_serializable_deserialize_property (JsonSerializable *serializable,
+ const gchar *property_name,
+ GValue *value,
+ GParamSpec *pspec,
+ JsonNode *property_node);
+
+
+GObject *json_construct_gobject (GType gtype,
+ const gchar *data,
+ gsize length,
+ GError **error);
+gchar * json_serialize_gobject (GObject *gobject,
+ gsize *length) G_GNUC_MALLOC;
+
+G_END_DECLS
+
+#endif /* __JSON_GOBJECT_H__ */
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-parser.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-parser.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,142 @@
+/* json-parser.h - JSON streams parser
+ *
+ * This file is part of JSON-GLib
+ * Copyright (C) 2007 OpenedHand Ltd.
+ *
+ * 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 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.
+ *
+ * Author:
+ * Emmanuele Bassi <ebassi at openedhand.com>
+ */
+
+#ifndef __JSON_PARSER_H__
+#define __JSON_PARSER_H__
+
+#include <glib-object.h>
+#include "json-types.h"
+
+G_BEGIN_DECLS
+
+#define JSON_TYPE_PARSER (json_parser_get_type ())
+#define JSON_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSON_TYPE_PARSER, JsonParser))
+#define JSON_IS_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSON_TYPE_PARSER))
+#define JSON_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSON_TYPE_PARSER, JsonParserClass))
+#define JSON_IS_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSON_TYPE_PARSER))
+#define JSON_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSON_TYPE_PARSER, JsonParserClass))
+
+#define JSON_PARSER_ERROR (json_parser_error_quark ())
+
+typedef struct _JsonParser JsonParser;
+typedef struct _JsonParserPrivate JsonParserPrivate;
+typedef struct _JsonParserClass JsonParserClass;
+
+/**
+ * JsonParserError:
+ * @JSON_PARSER_ERROR_PARSE: parse error
+ * @JSON_PARSER_ERROR_UNKNOWN: unknown error
+ *
+ * Error enumeration for #JsonParser
+ */
+typedef enum {
+ JSON_PARSER_ERROR_PARSE,
+
+ JSON_PARSER_ERROR_UNKNOWN
+} JsonParserError;
+
+/**
+ * JsonParser:
+ *
+ * JSON data streams parser. The contents of the #JsonParser structure are
+ * private and should only be accessed via the provided API.
+ */
+struct _JsonParser
+{
+ /*< private >*/
+ GObject parent_instance;
+
+ JsonParserPrivate *priv;
+};
+
+/**
+ * JsonParserClass:
+ * @parse_start: class handler for the JsonParser::parse-start signal
+ * @object_start: class handler for the JsonParser::object-start signal
+ * @object_member: class handler for the JsonParser::object-member signal
+ * @object_end: class handler for the JsonParser::object-end signal
+ * @array_start: class handler for the JsonParser::array-start signal
+ * @array_element: class handler for the JsonParser::array-element signal
+ * @array_end: class handler for the JsonParser::array-end signal
+ * @parse_end: class handler for the JsonParser::parse-end signal
+ * @error: class handler for the JsonParser::error signal
+ *
+ * #JsonParser class.
+ */
+struct _JsonParserClass
+{
+ /*< private >*/
+ GObjectClass parent_class;
+
+ /*< public >*/
+ void (* parse_start) (JsonParser *parser);
+
+ void (* object_start) (JsonParser *parser);
+ void (* object_member) (JsonParser *parser,
+ JsonObject *object,
+ const gchar *member_name);
+ void (* object_end) (JsonParser *parser,
+ JsonObject *object);
+
+ void (* array_start) (JsonParser *parser);
+ void (* array_element) (JsonParser *parser,
+ JsonArray *array,
+ gint index_);
+ void (* array_end) (JsonParser *parser,
+ JsonArray *array);
+
+ void (* parse_end) (JsonParser *parser);
+
+ void (* error) (JsonParser *parser,
+ const GError *error);
+
+ /*< private >*/
+ /* padding for future expansion */
+ void (* _json_reserved1) (void);
+ void (* _json_reserved2) (void);
+ void (* _json_reserved3) (void);
+ void (* _json_reserved4) (void);
+ void (* _json_reserved5) (void);
+ void (* _json_reserved6) (void);
+ void (* _json_reserved7) (void);
+ void (* _json_reserved8) (void);
+};
+
+GQuark json_parser_error_quark (void);
+GType json_parser_get_type (void) G_GNUC_CONST;
+
+JsonParser *json_parser_new (void);
+gboolean json_parser_load_from_file (JsonParser *parser,
+ const gchar *filename,
+ GError **error);
+gboolean json_parser_load_from_data (JsonParser *parser,
+ const gchar *data,
+ gssize length,
+ GError **error);
+
+JsonNode * json_parser_get_root (JsonParser *parser);
+
+guint json_parser_get_current_line (JsonParser *parser);
+guint json_parser_get_current_pos (JsonParser *parser);
+gboolean json_parser_has_assignment (JsonParser *parser,
+ gchar **variable_name);
+
+G_END_DECLS
+
+#endif /* __JSON_PARSER_H__ */
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-types.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-types.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,170 @@
+/* json-types.h - JSON data types
+ *
+ * This file is part of JSON-GLib
+ * Copyright (C) 2007 OpenedHand Ltd.
+ *
+ * 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 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.
+ *
+ * Author:
+ * Emmanuele Bassi <ebassi at openedhand.com>
+ */
+
+#ifndef __JSON_TYPES_H__
+#define __JSON_TYPES_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/**
+ * JSON_NODE_TYPE:
+ * @node: a #JsonNode
+ *
+ * Evaluates to the #JsonNodeType contained by @node
+ */
+#define JSON_NODE_TYPE(node) (((JsonNode *) (node))->type)
+
+#define JSON_TYPE_NODE (json_node_get_type ())
+#define JSON_TYPE_OBJECT (json_object_get_type ())
+#define JSON_TYPE_ARRAY (json_array_get_type ())
+
+/**
+ * JsonObject:
+ *
+ * A JSON object type. The contents of the #JsonObject structure are private
+ * and should only be accessed by the provided API
+ */
+typedef struct _JsonObject JsonObject;
+
+/**
+ * JsonArray:
+ *
+ * A JSON array type. The contents of the #JsonArray structure are private
+ * and should only be accessed by the provided API
+ */
+typedef struct _JsonArray JsonArray;
+
+typedef struct _JsonNode JsonNode;
+
+/**
+ * JsonNodeType:
+ * @JSON_NODE_OBJECT: The node contains a #JsonObject
+ * @JSON_NODE_ARRAY: The node contains a #JsonArray
+ * @JSON_NODE_VALUE: The node contains a fundamental type
+ * @JSON_NODE_NULL: Special type, for nodes containing null
+ *
+ * Indicates the content of a #JsonNode.
+ */
+typedef enum {
+ JSON_NODE_OBJECT,
+ JSON_NODE_ARRAY,
+ JSON_NODE_VALUE,
+ JSON_NODE_NULL
+} JsonNodeType;
+
+/**
+ * JsonNode:
+ * @type: the type of node
+ *
+ * A generic container of JSON data types. The contents of the #JsonNode
+ * structure are private and should only be accessed via the provided
+ * functions and never directly.
+ */
+struct _JsonNode
+{
+ /*< private >*/
+ JsonNodeType type;
+
+ union {
+ JsonObject *object;
+ JsonArray *array;
+ GValue value;
+ } data;
+
+ JsonNode *parent;
+};
+
+GType json_node_get_type (void) G_GNUC_CONST;
+JsonNode * json_node_new (JsonNodeType type);
+JsonNode * json_node_copy (JsonNode *node);
+void json_node_free (JsonNode *node);
+GType json_node_get_value_type (JsonNode *node);
+
+void json_node_set_object (JsonNode *node,
+ JsonObject *object);
+void json_node_take_object (JsonNode *node,
+ JsonObject *object);
+JsonObject * json_node_get_object (JsonNode *node);
+JsonObject * json_node_dup_object (JsonNode *node);
+void json_node_set_array (JsonNode *node,
+ JsonArray *array);
+void json_node_take_array (JsonNode *node,
+ JsonArray *array);
+JsonArray * json_node_get_array (JsonNode *node);
+JsonArray * json_node_dup_array (JsonNode *node);
+void json_node_set_value (JsonNode *node,
+ const GValue *value);
+void json_node_get_value (JsonNode *node,
+ GValue *value);
+void json_node_set_string (JsonNode *node,
+ const gchar *value);
+G_CONST_RETURN gchar *json_node_get_string (JsonNode *node);
+gchar * json_node_dup_string (JsonNode *node);
+void json_node_set_int (JsonNode *node,
+ gint value);
+gint json_node_get_int (JsonNode *node);
+void json_node_set_double (JsonNode *node,
+ gdouble value);
+gdouble json_node_get_double (JsonNode *node);
+void json_node_set_boolean (JsonNode *node,
+ gboolean value);
+gboolean json_node_get_boolean (JsonNode *node);
+JsonNode * json_node_get_parent (JsonNode *node);
+G_CONST_RETURN gchar *json_node_type_name (JsonNode *node);
+
+GType json_object_get_type (void) G_GNUC_CONST;
+JsonObject * json_object_new (void);
+JsonObject * json_object_ref (JsonObject *object);
+void json_object_unref (JsonObject *object);
+void json_object_add_member (JsonObject *object,
+ const gchar *member_name,
+ JsonNode *node);
+GList * json_object_get_members (JsonObject *object);
+JsonNode * json_object_get_member (JsonObject *object,
+ const gchar *member_name);
+JsonNode * json_object_dup_member (JsonObject *object,
+ const gchar *member_name);
+gboolean json_object_has_member (JsonObject *object,
+ const gchar *member_name);
+void json_object_remove_member (JsonObject *object,
+ const gchar *member_name);
+GList * json_object_get_values (JsonObject *object);
+guint json_object_get_size (JsonObject *object);
+
+GType json_array_get_type (void) G_GNUC_CONST;
+JsonArray * json_array_new (void);
+JsonArray * json_array_sized_new (guint n_elements);
+JsonArray * json_array_ref (JsonArray *array);
+void json_array_unref (JsonArray *array);
+void json_array_add_element (JsonArray *array,
+ JsonNode *node);
+GList * json_array_get_elements (JsonArray *array);
+JsonNode * json_array_get_element (JsonArray *array,
+ guint index_);
+JsonNode * json_array_dup_element (JsonArray *array,
+ guint index_);
+void json_array_remove_element (JsonArray *array,
+ guint index_);
+guint json_array_get_length (JsonArray *array);
+
+G_END_DECLS
+
+#endif /* __JSON_TYPES_H__ */
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-version.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Headers/json-version.h Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,92 @@
+/* json-version.h - JSON-GLib versioning information
+ *
+ * This file is part of JSON-GLib
+ * Copyright (C) 2007 OpenedHand Ltd.
+ *
+ * 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 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.
+ *
+ * Author:
+ * Emmanuele Bassi <ebassi at openedhand.com>
+ */
+
+#ifndef __JSON_VERSION_H__
+#define __JSON_VERSION_H__
+
+/**
+ * SECTION:json-version
+ * @short_description: JSON-GLib version checking
+ *
+ * JSON-GLib provides macros to check the version of the library
+ * at compile-time
+ */
+
+/**
+ * JSON_MAJOR_VERSION:
+ *
+ * Json major version component (e.g. 1 if %JSON_VERSION is 1.2.3)
+ */
+#define JSON_MAJOR_VERSION (0)
+
+/**
+ * JSON_MINOR_VERSION:
+ *
+ * Json minor version component (e.g. 2 if %JSON_VERSION is 1.2.3)
+ */
+#define JSON_MINOR_VERSION (6)
+
+/**
+ * JSON_MICRO_VERSION:
+ *
+ * Json micro version component (e.g. 3 if %JSON_VERSION is 1.2.3)
+ */
+#define JSON_MICRO_VERSION (2)
+
+/**
+ * JSON_VERSION
+ *
+ * Json version.
+ */
+#define JSON_VERSION (0.6.2)
+
+/**
+ * JSON_VERSION_S:
+ *
+ * Json version, encoded as a string, useful for printing and
+ * concatenation.
+ */
+#define JSON_VERSION_S "0.6.2"
+
+/**
+ * JSON_VERSION_HEX:
+ *
+ * Json version, encoded as an hexadecimal number, useful for
+ * integer comparisons.
+ */
+#define JSON_VERSION_HEX (JSON_MAJOR_VERSION << 24 | \
+ JSON_MINOR_VERSION << 16 | \
+ JSON_MICRO_VERSION << 8)
+
+/**
+ * JSON_CHECK_VERSION:
+ * @major: required major version
+ * @minor: required minor version
+ * @micro: required micro version
+ *
+ * Compile-time version checking. Evaluates to %TRUE if the version
+ * of Json is greater than the required one.
+ */
+#define JSON_CHECK_VERSION(major,minor,micro) \
+ (JSON_MAJOR_VERSION > (major) || \
+ (JSON_MAJOR_VERSION == (major) && JSON_MINOR_VERSION > (minor)) || \
+ (JSON_MAJOR_VERSION == (major) && JSON_MINOR_VERSION == (minor) && \
+ JSON_MICRO_VERSION >= (micro)))
+
+#endif /* __JSON_VERSION_H__ */
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Resources/English.lproj/InfoPlist.strings
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/1.0.0/Resources/English.lproj/InfoPlist.strings Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,3 @@
+/* Localized versions of Info.plist keys */
+
+CFBundleName = "libjson-glib";
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/Resources/Info.plist
Binary file Frameworks/libjson-glib.framework/Versions/1.0.0/Resources/Info.plist has changed
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/1.0.0/libjson-glib
Binary file Frameworks/libjson-glib.framework/Versions/1.0.0/libjson-glib has changed
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/Versions/Current
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/Versions/Current Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,1 @@
+1.0.0
\ No newline at end of file
diff -r 375347213ef2 -r af575111bcee Frameworks/libjson-glib.framework/libjson-glib
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Frameworks/libjson-glib.framework/libjson-glib Sun Jun 21 13:44:29 2009 -0400
@@ -0,0 +1,1 @@
+Versions/Current/libjson-glib
\ No newline at end of file
diff -r 375347213ef2 -r af575111bcee Frameworks/libpurple.framework/Versions/0.6.0/Headers/yahoo_packet.h
--- a/Frameworks/libpurple.framework/Versions/0.6.0/Headers/yahoo_packet.h Sun Jun 21 13:20:47 2009 -0400
+++ b/Frameworks/libpurple.framework/Versions/0.6.0/Headers/yahoo_packet.h Sun Jun 21 13:44:29 2009 -0400
@@ -107,6 +107,7 @@
YAHOO_SERVICE_CHGRP_15 = 0xe7,
YAHOO_SERVICE_STATUS_15 = 0xf0,
YAHOO_SERVICE_LIST_15 = 0xf1,
+ YAHOO_SERVICE_MESSAGE_ACK = 0xfb,
YAHOO_SERVICE_WEBLOGIN = 0x0226,
YAHOO_SERVICE_SMS_MSG = 0x02ea
/* YAHOO_SERVICE_DISCONNECT = 0x07d1 Server forces us to disconnect. Is sent with TCP FIN flag set */
diff -r 375347213ef2 -r af575111bcee Frameworks/libpurple.framework/Versions/0.6.0/libpurple
Binary file Frameworks/libpurple.framework/Versions/0.6.0/libpurple has changed
diff -r 375347213ef2 -r af575111bcee Utilities/dep-build-scripts/common.sh
--- a/Utilities/dep-build-scripts/common.sh Sun Jun 21 13:20:47 2009 -0400
+++ b/Utilities/dep-build-scripts/common.sh Sun Jun 21 13:44:29 2009 -0400
@@ -12,6 +12,7 @@
MEANWHILE=meanwhile-1.0.2
GADU=libgadu-1.7.1
INTLTOOL=intltool-0.36.2
+JSONLIB=json-glib-0.6.2
GPG_ERROR=libgpg-error-1.6
GCRYPT=libgcrypt-1.4.1
LIBXML2=libxml2-2.7.3
diff -r 375347213ef2 -r af575111bcee Utilities/dep-build-scripts/framework_maker/frameworkize.py
--- a/Utilities/dep-build-scripts/framework_maker/frameworkize.py Sun Jun 21 13:20:47 2009 -0400
+++ b/Utilities/dep-build-scripts/framework_maker/frameworkize.py Sun Jun 21 13:44:29 2009 -0400
@@ -40,9 +40,9 @@
return (library_name, 'A')
# Note: these styles are named after where I noticed them, not necessarily
# where they originate. -RAF
- regexes = [r'([A-Za-z0-9_]*)-([0-9.]*)', #apr style
- r'([A-Za-z0-9_]*[a-zA-Z])\.([0-9.]*)', #gnu style
- r'([A-Za-z0-9_]*[a-zA-Z])([0-9.]*)', #sqlite style
+ regexes = [r'([A-Za-z0-9_-]*)-([0-9.]*)$', #apr style
+ r'([A-Za-z0-9_-]*[a-zA-Z])\.([0-9.]*)$', #gnu style
+ r'([A-Za-z0-9_-]*[a-zA-Z])([0-9.]*)$', #sqlite style
]
for regex in regexes:
match = re.match(regex, library_name)
diff -r 375347213ef2 -r af575111bcee Utilities/dep-build-scripts/purple_dependencies_make.sh
--- a/Utilities/dep-build-scripts/purple_dependencies_make.sh Sun Jun 21 13:20:47 2009 -0400
+++ b/Utilities/dep-build-scripts/purple_dependencies_make.sh Sun Jun 21 13:44:29 2009 -0400
@@ -121,4 +121,32 @@
cd ..
done
+# json-glib for the facebook prpl
+for ARCH in ppc i386 ; do
+ echo "Building json-glib for $ARCH"
+
+ export CFLAGS="$BASE_CFLAGS -arch $ARCH"
+ export CXXFLAGS="$CFLAGS"
+ export LDFLAGS="$BASE_LDFLAGS -arch $ARCH"
+
+ mkdir json-glib-$ARCH || true
+ cd json-glib-$ARCH
+
+ case $ARCH in
+ ppc) TARGET_DIR="$TARGET_DIR_PPC"
+ export PATH="$PATH_PPC"
+ export PKG_CONFIG_PATH="$TARGET_DIR_PPC/lib/pkgconfig";;
+ i386) TARGET_DIR="$TARGET_DIR_I386"
+ export PATH="$PATH_I386"
+ export PKG_CONFIG_PATH="$TARGET_DIR_I386/lib/pkgconfig";;
+ esac
+
+ echo ' Configuring...'
+ "$SOURCEDIR/$JSONLIB/configure" --prefix=$TARGET_DIR #>> $LOG_FILE 2>&1
+
+ echo ' make && make install'
+ make -j $NUMBER_OF_CORES && make install #>> $LOG_FILE 2>&1
+ cd ..
+done
+
echo "Done - now run ./purple_make.sh"
diff -r 375347213ef2 -r af575111bcee Utilities/dep-build-scripts/purple_make.sh
--- a/Utilities/dep-build-scripts/purple_make.sh Sun Jun 21 13:20:47 2009 -0400
+++ b/Utilities/dep-build-scripts/purple_make.sh Sun Jun 21 13:44:29 2009 -0400
@@ -87,13 +87,13 @@
cp $SOURCEDIR/cyrus-sasl-2.1.18/include/*.h $TARGET_DIR/include/sasl
#Note that whether we use openssl or cdsa the same underlying workarounds (as seen in jabber.c, only usage at present 12/07) are needed
- export CFLAGS="$BASE_CFLAGS -arch $ARCH -I$TARGET_DIR/include -I$SDK_ROOT/usr/include/kerberosIV -DHAVE_SSL -DHAVE_OPENSSL -fno-common "
+ export CFLAGS="$BASE_CFLAGS -arch $ARCH -I$TARGET_DIR/include -I$TARGET_DIR/include/json-glib-1.0 -I$SDK_ROOT/usr/include/kerberosIV -DHAVE_SSL -DHAVE_OPENSSL -fno-common "
if [ "$DEBUG_SYMBOLS" = "TRUE" ] ; then
export CFLAGS="$CFLAGS -gdwarf-2 -g3"
fi
- export LDFLAGS="$BASE_LDFLAGS -L$TARGET_DIR/lib -arch $ARCH -lsasl2"
+ export LDFLAGS="$BASE_LDFLAGS -L$TARGET_DIR/lib -arch $ARCH -lsasl2 -ljson-glib-1.0"
export PKG_CONFIG="$TARGET_DIR_BASE-$ARCH/bin/pkg-config"
export MSGFMT="`which msgfmt`"
diff -r 375347213ef2 -r af575111bcee Utilities/dep-build-scripts/universalize.sh
--- a/Utilities/dep-build-scripts/universalize.sh Sun Jun 21 13:20:47 2009 -0400
+++ b/Utilities/dep-build-scripts/universalize.sh Sun Jun 21 13:44:29 2009 -0400
@@ -16,6 +16,7 @@
MEANWHILE=libmeanwhile.1
GADU=libgadu.3.7.0
SASL=libsasl2.2
+JSONGLIB=libjson-glib-1.0.0
# vv
# I'm not sure what to do to universalize the vv libs, especially the gst-plugins
@@ -54,6 +55,9 @@
# no headers to copy, make an empty file so that rtool isn't sad
touch libgthread-2.0.0/no_headers_here.txt
+mkdir libjson-glib-1.0.0 || true
+cp -R $TARGET_DIR_I386/include/json-glib-1.0/ $UNIVERSAL_DIR/include/libjson-glib-1.0.0/
+
rm -rf $UNIVERSAL_DIR/include/$PURPLE_FOLDER
cp -R $TARGET_DIR_I386/include/libpurple $UNIVERSAL_DIR/include/$PURPLE_FOLDER
# Another hack: we need libgadu.h
@@ -64,7 +68,7 @@
cd $UNIVERSAL_DIR
-for lib in $LIBINTL $LIBGLIB $LIBGOBJECT $LIBGTHREAD $LIBGMODULE $MEANWHILE \
+for lib in $LIBINTL $LIBGLIB $LIBGOBJECT $LIBGTHREAD $LIBGMODULE $MEANWHILE $JSONGLIB \
$GADU $LIBPURPLE; do
echo "Making $lib universal..."
python $SCRIPT_DIR/framework_maker/universalize.py \
More information about the commits
mailing list