--- /dev/null
+/* .h generated by valac 0.36.6, the Vala compiler, do not modify */
+
+
+#ifndef ___HOME_ALAN_GITLIVE_ROOJSPACKER_JSDOC__H__
+#define ___HOME_ALAN_GITLIVE_ROOJSPACKER_JSDOC__H__
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gee.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gio/gio.h>
+#include <json-glib/json-glib.h>
+
+G_BEGIN_DECLS
+
+
+#define JSDOC_TYPE_TOKEN_STREAM (jsdoc_token_stream_get_type ())
+#define JSDOC_TOKEN_STREAM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TOKEN_STREAM, JSDOCTokenStream))
+#define JSDOC_TOKEN_STREAM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TOKEN_STREAM, JSDOCTokenStreamClass))
+#define JSDOC_IS_TOKEN_STREAM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TOKEN_STREAM))
+#define JSDOC_IS_TOKEN_STREAM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TOKEN_STREAM))
+#define JSDOC_TOKEN_STREAM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TOKEN_STREAM, JSDOCTokenStreamClass))
+
+typedef struct _JSDOCTokenStream JSDOCTokenStream;
+typedef struct _JSDOCTokenStreamClass JSDOCTokenStreamClass;
+typedef struct _JSDOCTokenStreamPrivate JSDOCTokenStreamPrivate;
+
+#define JSDOC_TYPE_TOKEN (jsdoc_token_get_type ())
+#define JSDOC_TOKEN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TOKEN, JSDOCToken))
+#define JSDOC_TOKEN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TOKEN, JSDOCTokenClass))
+#define JSDOC_IS_TOKEN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TOKEN))
+#define JSDOC_IS_TOKEN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TOKEN))
+#define JSDOC_TOKEN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TOKEN, JSDOCTokenClass))
+
+typedef struct _JSDOCToken JSDOCToken;
+typedef struct _JSDOCTokenClass JSDOCTokenClass;
+
+#define JSDOC_TYPE_COLLAPSE (jsdoc_collapse_get_type ())
+#define JSDOC_COLLAPSE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_COLLAPSE, JSDOCCollapse))
+#define JSDOC_COLLAPSE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_COLLAPSE, JSDOCCollapseClass))
+#define JSDOC_IS_COLLAPSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_COLLAPSE))
+#define JSDOC_IS_COLLAPSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_COLLAPSE))
+#define JSDOC_COLLAPSE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_COLLAPSE, JSDOCCollapseClass))
+
+typedef struct _JSDOCCollapse JSDOCCollapse;
+typedef struct _JSDOCCollapseClass JSDOCCollapseClass;
+typedef struct _JSDOCCollapsePrivate JSDOCCollapsePrivate;
+
+#define JSDOC_TYPE_PACKER (jsdoc_packer_get_type ())
+#define JSDOC_PACKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_PACKER, JSDOCPacker))
+#define JSDOC_PACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_PACKER, JSDOCPackerClass))
+#define JSDOC_IS_PACKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_PACKER))
+#define JSDOC_IS_PACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_PACKER))
+#define JSDOC_PACKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_PACKER, JSDOCPackerClass))
+
+typedef struct _JSDOCPacker JSDOCPacker;
+typedef struct _JSDOCPackerClass JSDOCPackerClass;
+
+#define JSDOC_TYPE_IDENTIFIER (jsdoc_identifier_get_type ())
+#define JSDOC_IDENTIFIER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_IDENTIFIER, JSDOCIdentifier))
+#define JSDOC_IDENTIFIER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_IDENTIFIER, JSDOCIdentifierClass))
+#define JSDOC_IS_IDENTIFIER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_IDENTIFIER))
+#define JSDOC_IS_IDENTIFIER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_IDENTIFIER))
+#define JSDOC_IDENTIFIER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_IDENTIFIER, JSDOCIdentifierClass))
+
+typedef struct _JSDOCIdentifier JSDOCIdentifier;
+typedef struct _JSDOCIdentifierClass JSDOCIdentifierClass;
+typedef struct _JSDOCIdentifierPrivate JSDOCIdentifierPrivate;
+
+#define JSDOC_TYPE_SCOPE (jsdoc_scope_get_type ())
+#define JSDOC_SCOPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_SCOPE, JSDOCScope))
+#define JSDOC_SCOPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_SCOPE, JSDOCScopeClass))
+#define JSDOC_IS_SCOPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_SCOPE))
+#define JSDOC_IS_SCOPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_SCOPE))
+#define JSDOC_SCOPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_SCOPE, JSDOCScopeClass))
+
+typedef struct _JSDOCScope JSDOCScope;
+typedef struct _JSDOCScopeClass JSDOCScopeClass;
+
+#define JSDOC_TYPE_LANGCLASS (jsdoc_langclass_get_type ())
+#define JSDOC_LANGCLASS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_LANGCLASS, JSDOCLang_Class))
+#define JSDOC_LANGCLASS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_LANGCLASS, JSDOCLang_ClassClass))
+#define JSDOC_IS_LANGCLASS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_LANGCLASS))
+#define JSDOC_IS_LANGCLASS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_LANGCLASS))
+#define JSDOC_LANGCLASS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_LANGCLASS, JSDOCLang_ClassClass))
+
+typedef struct _JSDOCLang_Class JSDOCLang_Class;
+typedef struct _JSDOCLang_ClassClass JSDOCLang_ClassClass;
+typedef struct _JSDOCLang_ClassPrivate JSDOCLang_ClassPrivate;
+
+#define JSDOC_TYPE_TOKEN_NAME (jsdoc_token_name_get_type ())
+typedef struct _JSDOCPackerPrivate JSDOCPackerPrivate;
+
+#define JSDOC_TYPE_PACKER_RUN (jsdoc_packer_run_get_type ())
+#define JSDOC_PACKER_RUN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_PACKER_RUN, JSDOCPackerRun))
+#define JSDOC_PACKER_RUN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_PACKER_RUN, JSDOCPackerRunClass))
+#define JSDOC_IS_PACKER_RUN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_PACKER_RUN))
+#define JSDOC_IS_PACKER_RUN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_PACKER_RUN))
+#define JSDOC_PACKER_RUN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_PACKER_RUN, JSDOCPackerRunClass))
+
+typedef struct _JSDOCPackerRun JSDOCPackerRun;
+typedef struct _JSDOCPackerRunClass JSDOCPackerRunClass;
+
+#define JSDOC_PACKER_TYPE_RESULT_TYPE (jsdoc_packer_result_type_get_type ())
+
+#define JSDOC_TYPE_SCOPE_PARSER (jsdoc_scope_parser_get_type ())
+#define JSDOC_SCOPE_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_SCOPE_PARSER, JSDOCScopeParser))
+#define JSDOC_SCOPE_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_SCOPE_PARSER, JSDOCScopeParserClass))
+#define JSDOC_IS_SCOPE_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_SCOPE_PARSER))
+#define JSDOC_IS_SCOPE_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_SCOPE_PARSER))
+#define JSDOC_SCOPE_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_SCOPE_PARSER, JSDOCScopeParserClass))
+
+typedef struct _JSDOCScopeParser JSDOCScopeParser;
+typedef struct _JSDOCScopeParserClass JSDOCScopeParserClass;
+typedef struct _JSDOCScopeParserPrivate JSDOCScopeParserPrivate;
+
+#define JSDOC_TYPE_SCOPE_PARSER_MODE (jsdoc_scope_parser_mode_get_type ())
+typedef struct _JSDOCScopePrivate JSDOCScopePrivate;
+
+#define JSDOC_TYPE_TEXT_STREAM_CHAR (jsdoc_text_stream_char_get_type ())
+#define JSDOC_TEXT_STREAM_CHAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TEXT_STREAM_CHAR, JSDOCTextStreamChar))
+#define JSDOC_TEXT_STREAM_CHAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TEXT_STREAM_CHAR, JSDOCTextStreamCharClass))
+#define JSDOC_IS_TEXT_STREAM_CHAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TEXT_STREAM_CHAR))
+#define JSDOC_IS_TEXT_STREAM_CHAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TEXT_STREAM_CHAR))
+#define JSDOC_TEXT_STREAM_CHAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TEXT_STREAM_CHAR, JSDOCTextStreamCharClass))
+
+typedef struct _JSDOCTextStreamChar JSDOCTextStreamChar;
+typedef struct _JSDOCTextStreamCharClass JSDOCTextStreamCharClass;
+typedef struct _JSDOCTextStreamCharPrivate JSDOCTextStreamCharPrivate;
+
+#define JSDOC_TYPE_TEXT_STREAM (jsdoc_text_stream_get_type ())
+#define JSDOC_TEXT_STREAM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TEXT_STREAM, JSDOCTextStream))
+#define JSDOC_TEXT_STREAM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TEXT_STREAM, JSDOCTextStreamClass))
+#define JSDOC_IS_TEXT_STREAM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TEXT_STREAM))
+#define JSDOC_IS_TEXT_STREAM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TEXT_STREAM))
+#define JSDOC_TEXT_STREAM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TEXT_STREAM, JSDOCTextStreamClass))
+
+typedef struct _JSDOCTextStream JSDOCTextStream;
+typedef struct _JSDOCTextStreamClass JSDOCTextStreamClass;
+typedef struct _JSDOCTextStreamPrivate JSDOCTextStreamPrivate;
+
+#define JSDOC_TYPE_TOKEN_ARRAY (jsdoc_token_array_get_type ())
+#define JSDOC_TOKEN_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TOKEN_ARRAY, JSDOCTokenArray))
+#define JSDOC_TOKEN_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TOKEN_ARRAY, JSDOCTokenArrayClass))
+#define JSDOC_IS_TOKEN_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TOKEN_ARRAY))
+#define JSDOC_IS_TOKEN_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TOKEN_ARRAY))
+#define JSDOC_TOKEN_ARRAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TOKEN_ARRAY, JSDOCTokenArrayClass))
+
+typedef struct _JSDOCTokenArray JSDOCTokenArray;
+typedef struct _JSDOCTokenArrayClass JSDOCTokenArrayClass;
+typedef struct _JSDOCTokenArrayPrivate JSDOCTokenArrayPrivate;
+
+#define JSDOC_TYPE_TOKEN_READER (jsdoc_token_reader_get_type ())
+#define JSDOC_TOKEN_READER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TOKEN_READER, JSDOCTokenReader))
+#define JSDOC_TOKEN_READER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TOKEN_READER, JSDOCTokenReaderClass))
+#define JSDOC_IS_TOKEN_READER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TOKEN_READER))
+#define JSDOC_IS_TOKEN_READER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TOKEN_READER))
+#define JSDOC_TOKEN_READER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TOKEN_READER, JSDOCTokenReaderClass))
+
+typedef struct _JSDOCTokenReader JSDOCTokenReader;
+typedef struct _JSDOCTokenReaderClass JSDOCTokenReaderClass;
+typedef struct _JSDOCTokenReaderPrivate JSDOCTokenReaderPrivate;
+
+#define JSDOC_TYPE_TOKEN_KEY_MAP (jsdoc_token_key_map_get_type ())
+#define JSDOC_TOKEN_KEY_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_TOKEN_KEY_MAP, JSDOCTokenKeyMap))
+#define JSDOC_TOKEN_KEY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_TOKEN_KEY_MAP, JSDOCTokenKeyMapClass))
+#define JSDOC_IS_TOKEN_KEY_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_TOKEN_KEY_MAP))
+#define JSDOC_IS_TOKEN_KEY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_TOKEN_KEY_MAP))
+#define JSDOC_TOKEN_KEY_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_TOKEN_KEY_MAP, JSDOCTokenKeyMapClass))
+
+typedef struct _JSDOCTokenKeyMap JSDOCTokenKeyMap;
+typedef struct _JSDOCTokenKeyMapClass JSDOCTokenKeyMapClass;
+typedef struct _JSDOCTokenKeyMapPrivate JSDOCTokenKeyMapPrivate;
+typedef struct _JSDOCTokenPrivate JSDOCTokenPrivate;
+
+#define JSDOC_TYPE_TOKEN_TYPE (jsdoc_token_type_get_type ())
+typedef struct _JSDOCPackerRunPrivate JSDOCPackerRunPrivate;
+
+#define JSDOC_TYPE_WALKER (jsdoc_walker_get_type ())
+#define JSDOC_WALKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_WALKER, JSDOCWalker))
+#define JSDOC_WALKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_WALKER, JSDOCWalkerClass))
+#define JSDOC_IS_WALKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_WALKER))
+#define JSDOC_IS_WALKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_WALKER))
+#define JSDOC_WALKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_WALKER, JSDOCWalkerClass))
+
+typedef struct _JSDOCWalker JSDOCWalker;
+typedef struct _JSDOCWalkerClass JSDOCWalkerClass;
+typedef struct _JSDOCWalkerPrivate JSDOCWalkerPrivate;
+
+#define JSDOC_TYPE_SYMBOL_SET (jsdoc_symbol_set_get_type ())
+#define JSDOC_SYMBOL_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_SYMBOL_SET, JSDOCSymbolSet))
+#define JSDOC_SYMBOL_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_SYMBOL_SET, JSDOCSymbolSetClass))
+#define JSDOC_IS_SYMBOL_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_SYMBOL_SET))
+#define JSDOC_IS_SYMBOL_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_SYMBOL_SET))
+#define JSDOC_SYMBOL_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_SYMBOL_SET, JSDOCSymbolSetClass))
+
+typedef struct _JSDOCSymbolSet JSDOCSymbolSet;
+typedef struct _JSDOCSymbolSetClass JSDOCSymbolSetClass;
+typedef struct _JSDOCSymbolSetPrivate JSDOCSymbolSetPrivate;
+
+#define JSDOC_TYPE_SYMBOL (jsdoc_symbol_get_type ())
+#define JSDOC_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_SYMBOL, JSDOCSymbol))
+#define JSDOC_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_SYMBOL, JSDOCSymbolClass))
+#define JSDOC_IS_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_SYMBOL))
+#define JSDOC_IS_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_SYMBOL))
+#define JSDOC_SYMBOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_SYMBOL, JSDOCSymbolClass))
+
+typedef struct _JSDOCSymbol JSDOCSymbol;
+typedef struct _JSDOCSymbolClass JSDOCSymbolClass;
+
+#define JSDOC_TYPE_DOC_COMMENT (jsdoc_doc_comment_get_type ())
+#define JSDOC_DOC_COMMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_DOC_COMMENT, JSDOCDocComment))
+#define JSDOC_DOC_COMMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_DOC_COMMENT, JSDOCDocCommentClass))
+#define JSDOC_IS_DOC_COMMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_DOC_COMMENT))
+#define JSDOC_IS_DOC_COMMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_DOC_COMMENT))
+#define JSDOC_DOC_COMMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_DOC_COMMENT, JSDOCDocCommentClass))
+
+typedef struct _JSDOCDocComment JSDOCDocComment;
+typedef struct _JSDOCDocCommentClass JSDOCDocCommentClass;
+typedef struct _JSDOCDocCommentPrivate JSDOCDocCommentPrivate;
+
+#define JSDOC_TYPE_DOC_TAG (jsdoc_doc_tag_get_type ())
+#define JSDOC_DOC_TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_DOC_TAG, JSDOCDocTag))
+#define JSDOC_DOC_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_DOC_TAG, JSDOCDocTagClass))
+#define JSDOC_IS_DOC_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_DOC_TAG))
+#define JSDOC_IS_DOC_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_DOC_TAG))
+#define JSDOC_DOC_TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_DOC_TAG, JSDOCDocTagClass))
+
+typedef struct _JSDOCDocTag JSDOCDocTag;
+typedef struct _JSDOCDocTagClass JSDOCDocTagClass;
+
+#define JSDOC_TYPE_DOC_TAG_TITLE (jsdoc_doc_tag_title_get_type ())
+
+#define JSDOC_TYPE_DOC_PARSER (jsdoc_doc_parser_get_type ())
+#define JSDOC_DOC_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JSDOC_TYPE_DOC_PARSER, JSDOCDocParser))
+#define JSDOC_DOC_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JSDOC_TYPE_DOC_PARSER, JSDOCDocParserClass))
+#define JSDOC_IS_DOC_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JSDOC_TYPE_DOC_PARSER))
+#define JSDOC_IS_DOC_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JSDOC_TYPE_DOC_PARSER))
+#define JSDOC_DOC_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JSDOC_TYPE_DOC_PARSER, JSDOCDocParserClass))
+
+typedef struct _JSDOCDocParser JSDOCDocParser;
+typedef struct _JSDOCDocParserClass JSDOCDocParserClass;
+typedef struct _JSDOCDocParserPrivate JSDOCDocParserPrivate;
+typedef struct _JSDOCDocTagPrivate JSDOCDocTagPrivate;
+typedef struct _JSDOCSymbolPrivate JSDOCSymbolPrivate;
+
+struct _JSDOCTokenStream {
+ GObject parent_instance;
+ JSDOCTokenStreamPrivate * priv;
+ GeeArrayList* tokens;
+ gint cursor;
+};
+
+struct _JSDOCTokenStreamClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCCollapse {
+ JSDOCTokenStream parent_instance;
+ JSDOCCollapsePrivate * priv;
+};
+
+struct _JSDOCCollapseClass {
+ JSDOCTokenStreamClass parent_class;
+};
+
+typedef enum {
+ JSDOC_COMPRESS_WHITE_ERROR_BRACE
+} JSDOCCompressWhiteError;
+#define JSDOC_COMPRESS_WHITE_ERROR jsdoc_compress_white_error_quark ()
+struct _JSDOCIdentifier {
+ GObject parent_instance;
+ JSDOCIdentifierPrivate * priv;
+ gchar* name;
+ gint refcount;
+ gchar* mungedValue;
+ JSDOCScope* scope;
+ gboolean toMunge;
+};
+
+struct _JSDOCIdentifierClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCLang_Class {
+ GObject parent_instance;
+ JSDOCLang_ClassPrivate * priv;
+};
+
+struct _JSDOCLang_ClassClass {
+ GObjectClass parent_class;
+};
+
+typedef enum {
+ JSDOC_TOKEN_NAME_UNKNOWN_TOKEN,
+ JSDOC_TOKEN_NAME_BREAK,
+ JSDOC_TOKEN_NAME_CASE,
+ JSDOC_TOKEN_NAME_CATCH,
+ JSDOC_TOKEN_NAME_CONST,
+ JSDOC_TOKEN_NAME_CONTINUE,
+ JSDOC_TOKEN_NAME_DEFAULT,
+ JSDOC_TOKEN_NAME_DELETE,
+ JSDOC_TOKEN_NAME_DO,
+ JSDOC_TOKEN_NAME_ELSE,
+ JSDOC_TOKEN_NAME_FALSE,
+ JSDOC_TOKEN_NAME_FINALLY,
+ JSDOC_TOKEN_NAME_FOR,
+ JSDOC_TOKEN_NAME_FUNCTION,
+ JSDOC_TOKEN_NAME_IF,
+ JSDOC_TOKEN_NAME_IN,
+ JSDOC_TOKEN_NAME_INSTANCEOF,
+ JSDOC_TOKEN_NAME_NEW,
+ JSDOC_TOKEN_NAME_NULL,
+ JSDOC_TOKEN_NAME_RETURN,
+ JSDOC_TOKEN_NAME_SWITCH,
+ JSDOC_TOKEN_NAME_THIS,
+ JSDOC_TOKEN_NAME_THROW,
+ JSDOC_TOKEN_NAME_TRUE,
+ JSDOC_TOKEN_NAME_TRY,
+ JSDOC_TOKEN_NAME_TYPEOF,
+ JSDOC_TOKEN_NAME_VOID,
+ JSDOC_TOKEN_NAME_WHILE,
+ JSDOC_TOKEN_NAME_WITH,
+ JSDOC_TOKEN_NAME_VAR,
+ JSDOC_TOKEN_NAME_EVAL,
+ JSDOC_TOKEN_NAME_NAME,
+ JSDOC_TOKEN_NAME_MULTI_LINE_COMM,
+ JSDOC_TOKEN_NAME_JSDOC,
+ JSDOC_TOKEN_NAME_SINGLE_LINE_COMM,
+ JSDOC_TOKEN_NAME_SEMICOLON,
+ JSDOC_TOKEN_NAME_COMMA,
+ JSDOC_TOKEN_NAME_HOOK,
+ JSDOC_TOKEN_NAME_COLON,
+ JSDOC_TOKEN_NAME_OR,
+ JSDOC_TOKEN_NAME_AND,
+ JSDOC_TOKEN_NAME_BITWISE_OR,
+ JSDOC_TOKEN_NAME_BITWISE_XOR,
+ JSDOC_TOKEN_NAME_BITWISE_AND,
+ JSDOC_TOKEN_NAME_STRICT_EQ,
+ JSDOC_TOKEN_NAME_EQ,
+ JSDOC_TOKEN_NAME_ASSIGN,
+ JSDOC_TOKEN_NAME_STRICT_NE,
+ JSDOC_TOKEN_NAME_NE,
+ JSDOC_TOKEN_NAME_LSH,
+ JSDOC_TOKEN_NAME_LE,
+ JSDOC_TOKEN_NAME_LT,
+ JSDOC_TOKEN_NAME_URSH,
+ JSDOC_TOKEN_NAME_RSH,
+ JSDOC_TOKEN_NAME_GE,
+ JSDOC_TOKEN_NAME_GT,
+ JSDOC_TOKEN_NAME_INCREMENT,
+ JSDOC_TOKEN_NAME_DECREMENT,
+ JSDOC_TOKEN_NAME_PLUS,
+ JSDOC_TOKEN_NAME_MINUS,
+ JSDOC_TOKEN_NAME_MUL,
+ JSDOC_TOKEN_NAME_DIV,
+ JSDOC_TOKEN_NAME_MOD,
+ JSDOC_TOKEN_NAME_NOT,
+ JSDOC_TOKEN_NAME_BITWISE_NOT,
+ JSDOC_TOKEN_NAME_DOT,
+ JSDOC_TOKEN_NAME_LEFT_BRACE,
+ JSDOC_TOKEN_NAME_RIGHT_BRACE,
+ JSDOC_TOKEN_NAME_LEFT_CURLY,
+ JSDOC_TOKEN_NAME_RIGHT_CURLY,
+ JSDOC_TOKEN_NAME_LEFT_PAREN,
+ JSDOC_TOKEN_NAME_RIGHT_PAREN,
+ JSDOC_TOKEN_NAME_SPACE,
+ JSDOC_TOKEN_NAME_NEWLINE,
+ JSDOC_TOKEN_NAME_DOUBLE_QUOTE,
+ JSDOC_TOKEN_NAME_SINGLE_QUOTE,
+ JSDOC_TOKEN_NAME_OCTAL,
+ JSDOC_TOKEN_NAME_DECIMAL,
+ JSDOC_TOKEN_NAME_HEX_DEC,
+ JSDOC_TOKEN_NAME_REGX,
+ JSDOC_TOKEN_NAME_START_OF_STREAM,
+ JSDOC_TOKEN_NAME_END_OF_STREAM,
+ JSDOC_TOKEN_NAME_UNKNOWN
+} JSDOCTokenName;
+
+typedef enum {
+ JSDOC_LANG_ERROR_ArgumentError
+} JSDOCLangError;
+#define JSDOC_LANG_ERROR jsdoc_lang_error_quark ()
+struct _JSDOCPacker {
+ GObject parent_instance;
+ JSDOCPackerPrivate * priv;
+ GeeArrayList* files;
+ gchar* activeFile;
+ gchar* outstr;
+ JSDOCPackerRun* config;
+ GeeHashMap* result_count;
+ GeeHashMap* result;
+};
+
+struct _JSDOCPackerClass {
+ GObjectClass parent_class;
+};
+
+typedef enum {
+ JSDOC_PACKER_RESULT_TYPE_err,
+ JSDOC_PACKER_RESULT_TYPE_warn
+} JSDOCPackerResultType;
+
+typedef enum {
+ JSDOC_PACKER_ERROR_ArgumentError
+} JSDOCPackerError;
+#define JSDOC_PACKER_ERROR jsdoc_packer_error_quark ()
+struct _JSDOCScopeParser {
+ GObject parent_instance;
+ JSDOCScopeParserPrivate * priv;
+};
+
+struct _JSDOCScopeParserClass {
+ GObjectClass parent_class;
+};
+
+typedef enum {
+ JSDOC_SCOPE_PARSER_MODE_BUILDING_SYMBOL_TREE,
+ JSDOC_SCOPE_PARSER_MODE_PASS2_SYMBOL_TREE
+} JSDOCScopeParserMode;
+
+struct _JSDOCScope {
+ GObject parent_instance;
+ JSDOCScopePrivate * priv;
+ JSDOCScope* parent;
+ GeeArrayList* subScopes;
+ gchar* ident;
+};
+
+struct _JSDOCScopeClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCTextStreamChar {
+ GObject parent_instance;
+ JSDOCTextStreamCharPrivate * priv;
+ gchar c;
+ gboolean eof;
+};
+
+struct _JSDOCTextStreamCharClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCTextStream {
+ GObject parent_instance;
+ JSDOCTextStreamPrivate * priv;
+};
+
+struct _JSDOCTextStreamClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCTokenArray {
+ GObject parent_instance;
+ JSDOCTokenArrayPrivate * priv;
+ GeeArrayList* tokens;
+};
+
+struct _JSDOCTokenArrayClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCTokenReader {
+ GObject parent_instance;
+ JSDOCTokenReaderPrivate * priv;
+ gboolean collapseWhite;
+ gboolean keepDocs;
+ gboolean keepWhite;
+ gboolean keepComments;
+ gboolean sepIdents;
+ gchar* filename;
+ gboolean ignoreBadGrammer;
+};
+
+struct _JSDOCTokenReaderClass {
+ GObjectClass parent_class;
+};
+
+typedef enum {
+ JSDOC_TOKENREADER_ERROR_ArgumentError,
+ JSDOC_TOKENREADER_ERROR_SyntaxError
+} JSDOCTokenReader_Error;
+#define JSDOC_TOKENREADER_ERROR jsdoc_tokenreader_error_quark ()
+typedef enum {
+ JSDOC_TOKEN_STREAM_ERROR_ArgumentError
+} JSDOCTokenStreamError;
+#define JSDOC_TOKEN_STREAM_ERROR jsdoc_token_stream_error_quark ()
+struct _JSDOCTokenKeyMap {
+ GObject parent_instance;
+ JSDOCTokenKeyMapPrivate * priv;
+ JSDOCToken* key;
+ GeeArrayList* vals;
+};
+
+struct _JSDOCTokenKeyMapClass {
+ GObjectClass parent_class;
+};
+
+typedef enum {
+ JSDOC_TOKEN_TYPE_TOKN,
+ JSDOC_TOKEN_TYPE_KEYW,
+ JSDOC_TOKEN_TYPE_NAME,
+ JSDOC_TOKEN_TYPE_COMM,
+ JSDOC_TOKEN_TYPE_PUNC,
+ JSDOC_TOKEN_TYPE_WHIT,
+ JSDOC_TOKEN_TYPE_STRN,
+ JSDOC_TOKEN_TYPE_NUMB,
+ JSDOC_TOKEN_TYPE_REGX,
+ JSDOC_TOKEN_TYPE_VOID
+} JSDOCTokenType;
+
+struct _JSDOCToken {
+ GObject parent_instance;
+ JSDOCTokenPrivate * priv;
+ gint id;
+ gchar* data;
+ JSDOCTokenType type;
+ JSDOCTokenName name;
+ gint line;
+ gchar* prefix;
+ gchar* outData;
+ JSDOCIdentifier* identifier;
+ GeeArrayList* items;
+ GeeHashMap* props;
+ GeeArrayList* keyseq;
+};
+
+struct _JSDOCTokenClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCPackerRun {
+ GApplication parent_instance;
+ JSDOCPackerRunPrivate * priv;
+ gchar* opt_target;
+ gchar* opt_debug_target;
+ gchar* opt_real_basedir;
+ gchar* opt_doc_target;
+ gchar* opt_doc_template_dir;
+ gboolean opt_doc_include_private;
+ gboolean opt_debug;
+ gboolean opt_skip_scope;
+ gboolean opt_keep_whitespace;
+ gboolean opt_dump_tokens;
+ gboolean opt_clean_cache;
+ gchar* opt_doc_ext;
+};
+
+struct _JSDOCPackerRunClass {
+ GApplicationClass parent_class;
+};
+
+struct _JSDOCWalker {
+ GObject parent_instance;
+ JSDOCWalkerPrivate * priv;
+};
+
+struct _JSDOCWalkerClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCSymbolSet {
+ GObject parent_instance;
+ JSDOCSymbolSetPrivate * priv;
+};
+
+struct _JSDOCSymbolSetClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCDocComment {
+ GObject parent_instance;
+ JSDOCDocCommentPrivate * priv;
+ gboolean isUserComment;
+ gboolean hasTags;
+ gchar* src;
+ GeeArrayList* tags;
+};
+
+struct _JSDOCDocCommentClass {
+ GObjectClass parent_class;
+};
+
+typedef enum {
+ JSDOC_DOC_TAG_TITLE_NO_VALUE,
+ JSDOC_DOC_TAG_TITLE_PARAM,
+ JSDOC_DOC_TAG_TITLE_PROPERTY,
+ JSDOC_DOC_TAG_TITLE_CFG,
+ JSDOC_DOC_TAG_TITLE_EXAMPLE,
+ JSDOC_DOC_TAG_TITLE_SINGLETON,
+ JSDOC_DOC_TAG_TITLE_AUTHOR,
+ JSDOC_DOC_TAG_TITLE_METHOD,
+ JSDOC_DOC_TAG_TITLE_DESC,
+ JSDOC_DOC_TAG_TITLE_OVERVIEW,
+ JSDOC_DOC_TAG_TITLE_SINCE,
+ JSDOC_DOC_TAG_TITLE_CONSTANT,
+ JSDOC_DOC_TAG_TITLE_VERSION,
+ JSDOC_DOC_TAG_TITLE_DEPRECATED,
+ JSDOC_DOC_TAG_TITLE_SEE,
+ JSDOC_DOC_TAG_TITLE_CLASS,
+ JSDOC_DOC_TAG_TITLE_NAMESPACE,
+ JSDOC_DOC_TAG_TITLE_CONSTRUCTOR,
+ JSDOC_DOC_TAG_TITLE_STATIC,
+ JSDOC_DOC_TAG_TITLE_INNER,
+ JSDOC_DOC_TAG_TITLE_FIELD,
+ JSDOC_DOC_TAG_TITLE_FUNCTION,
+ JSDOC_DOC_TAG_TITLE_EVENT,
+ JSDOC_DOC_TAG_TITLE_NAME,
+ JSDOC_DOC_TAG_TITLE_RETURN,
+ JSDOC_DOC_TAG_TITLE_THROWS,
+ JSDOC_DOC_TAG_TITLE_REQUIRES,
+ JSDOC_DOC_TAG_TITLE_TYPE,
+ JSDOC_DOC_TAG_TITLE_PRIVATE,
+ JSDOC_DOC_TAG_TITLE_IGNORE,
+ JSDOC_DOC_TAG_TITLE_ARGUMENTS,
+ JSDOC_DOC_TAG_TITLE_EXTENDS,
+ JSDOC_DOC_TAG_TITLE_DEFAULT,
+ JSDOC_DOC_TAG_TITLE_MEMBEROF,
+ JSDOC_DOC_TAG_TITLE_PUBLIC,
+ JSDOC_DOC_TAG_TITLE_SCOPE,
+ JSDOC_DOC_TAG_TITLE_SCOPEALIAS
+} JSDOCDocTagTitle;
+
+struct _JSDOCDocParser {
+ GObject parent_instance;
+ JSDOCDocParserPrivate * priv;
+};
+
+struct _JSDOCDocParserClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCDocTag {
+ GObject parent_instance;
+ JSDOCDocTagPrivate * priv;
+ JSDOCDocTagTitle title;
+ gchar* type;
+ gchar* name;
+ gboolean isOptional;
+ gchar* defaultValue;
+ gchar* desc;
+ GeeArrayList* optvalues;
+ gchar* memberOf;
+};
+
+struct _JSDOCDocTagClass {
+ GObjectClass parent_class;
+};
+
+struct _JSDOCSymbol {
+ GObject parent_instance;
+ JSDOCSymbolPrivate * priv;
+ GeeArrayList* augments;
+ GeeArrayList* methods;
+ GeeArrayList* properties;
+ GeeArrayList* returns;
+ GeeArrayList* childClasses;
+ GeeArrayList* inheritsFrom;
+ GeeHashMap* cfgs;
+ JSDOCDocComment* comment;
+ gchar* alias;
+ gchar* desc;
+ gchar* isa;
+ gboolean isEvent;
+ gboolean isConstant;
+ gboolean isIgnored;
+ gboolean isInner;
+ gboolean isNamespace;
+ gboolean isPrivate;
+ gboolean isStatic;
+ gchar* memberOf;
+};
+
+struct _JSDOCSymbolClass {
+ GObjectClass parent_class;
+};
+
+
+GType jsdoc_token_stream_get_type (void) G_GNUC_CONST;
+GType jsdoc_token_get_type (void) G_GNUC_CONST;
+GType jsdoc_collapse_get_type (void) G_GNUC_CONST;
+GType jsdoc_packer_get_type (void) G_GNUC_CONST;
+JSDOCCollapse* jsdoc_collapse_new (GeeArrayList* tokens, JSDOCPacker* pk, const gchar* filename);
+JSDOCCollapse* jsdoc_collapse_construct (GType object_type, GeeArrayList* tokens, JSDOCPacker* pk, const gchar* filename);
+GQuark jsdoc_compress_white_error_quark (void);
+gchar* jsdoc_CompressWhite (JSDOCTokenStream* ts, JSDOCPacker* packer, gboolean keepWhite);
+GType jsdoc_identifier_get_type (void) G_GNUC_CONST;
+GType jsdoc_scope_get_type (void) G_GNUC_CONST;
+JSDOCIdentifier* jsdoc_identifier_new (const gchar* name, JSDOCScope* scope);
+JSDOCIdentifier* jsdoc_identifier_construct (GType object_type, const gchar* name, JSDOCScope* scope);
+GType jsdoc_langclass_get_type (void) G_GNUC_CONST;
+JSDOCLang_Class* jsdoc_langclass_new (void);
+JSDOCLang_Class* jsdoc_langclass_construct (GType object_type);
+gboolean jsdoc_langclass_isBuiltin (JSDOCLang_Class* self, const gchar* name);
+gchar* jsdoc_langclass_whitespace (JSDOCLang_Class* self, const gchar* ch);
+gchar* jsdoc_langclass_newline (JSDOCLang_Class* self, const gchar* ch);
+GType jsdoc_token_name_get_type (void) G_GNUC_CONST;
+GQuark jsdoc_lang_error_quark (void);
+JSDOCTokenName jsdoc_langclass_keyword (JSDOCLang_Class* self, const gchar* word, GError** error);
+JSDOCTokenName* jsdoc_langclass_matching (JSDOCLang_Class* self, JSDOCTokenName name, GError** error);
+gboolean jsdoc_langclass_isKeyword (JSDOCLang_Class* self, const gchar* word);
+JSDOCTokenName jsdoc_langclass_puncFirstString (JSDOCLang_Class* self, gchar ch);
+JSDOCTokenName jsdoc_langclass_puncString (JSDOCLang_Class* self, const gchar* ch);
+gboolean jsdoc_langclass_isNumber (JSDOCLang_Class* self, const gchar* str);
+gboolean jsdoc_langclass_isHexDec (JSDOCLang_Class* self, const gchar* str);
+gboolean jsdoc_langclass_isWordString (JSDOCLang_Class* self, const gchar* str);
+gboolean jsdoc_langclass_isWordChar (JSDOCLang_Class* self, gchar c);
+gboolean jsdoc_langclass_isSpace (JSDOCLang_Class* self, const gchar* str);
+gboolean jsdoc_langclass_isSpaceC (JSDOCLang_Class* self, gchar str);
+gboolean jsdoc_langclass_isNewline (JSDOCLang_Class* self, const gchar* str);
+gboolean jsdoc_langclass_isNewlineC (JSDOCLang_Class* self, gchar str);
+gboolean jsdoc_langclass_isBoolean (JSDOCLang_Class* self, const gchar* str);
+extern JSDOCLang_Class* jsdoc_Lang;
+GType jsdoc_packer_run_get_type (void) G_GNUC_CONST;
+GType jsdoc_packer_result_type_get_type (void) G_GNUC_CONST;
+gchar* jsdoc_packer_result_type_to_string (JSDOCPackerResultType self);
+JSDOCPacker* jsdoc_packer_new (JSDOCPackerRun* config);
+JSDOCPacker* jsdoc_packer_construct (GType object_type, JSDOCPackerRun* config);
+void jsdoc_packer_logError (JSDOCPacker* self, JSDOCPackerResultType type, const gchar* filename, gint line, const gchar* message);
+gboolean jsdoc_packer_hasErrors (JSDOCPacker* self, const gchar* fn);
+void jsdoc_packer_dumpErrors (JSDOCPacker* self, JSDOCPackerResultType type);
+void jsdoc_packer_loadSourceIndexes (JSDOCPacker* self, GeeArrayList* indexes);
+void jsdoc_packer_loadFiles (JSDOCPacker* self, gchar** fs, int fs_length1);
+void jsdoc_packer_loadFile (JSDOCPacker* self, const gchar* f);
+GQuark jsdoc_packer_error_quark (void);
+gchar* jsdoc_packer_pack (JSDOCPacker* self, const gchar* target, const gchar* targetDebug, GError** error);
+void jsdoc_packer_loadSourceIndex (JSDOCPacker* self, const gchar* in_srcfile);
+gchar* jsdoc_packer_packFile (JSDOCPacker* self, const gchar* str, const gchar* fn, const gchar* minfile);
+gchar* jsdoc_packer_md5 (JSDOCPacker* self, const gchar* str);
+GType jsdoc_scope_parser_get_type (void) G_GNUC_CONST;
+JSDOCScopeParser* jsdoc_scope_parser_new (JSDOCTokenStream* ts, JSDOCPacker* packer, const gchar* filename);
+JSDOCScopeParser* jsdoc_scope_parser_construct (GType object_type, JSDOCTokenStream* ts, JSDOCPacker* packer, const gchar* filename);
+void jsdoc_scope_parser_buildSymbolTree (JSDOCScopeParser* self);
+void jsdoc_scope_parser_mungeSymboltree (JSDOCScopeParser* self);
+void jsdoc_scope_parser_printWarnings (JSDOCScopeParser* self);
+GType jsdoc_scope_parser_mode_get_type (void) G_GNUC_CONST;
+extern GeeArrayList* jsdoc_scope_builtin;
+extern GeeArrayList* jsdoc_scope_skips;
+extern gchar** jsdoc_scope_ones;
+extern gint jsdoc_scope_ones_length1;
+extern gchar** jsdoc_scope_twos;
+extern gint jsdoc_scope_twos_length1;
+JSDOCScope* jsdoc_scope_new (gint braceN, JSDOCScope* parent, gint startTokN, const gchar* lastIdent, JSDOCToken* token);
+JSDOCScope* jsdoc_scope_construct (GType object_type, gint braceN, JSDOCScope* parent, gint startTokN, const gchar* lastIdent, JSDOCToken* token);
+void jsdoc_scope_dump (JSDOCScope* self, const gchar* indent);
+JSDOCIdentifier* jsdoc_scope_declareIdentifier (JSDOCScope* self, const gchar* symbol, JSDOCToken* token);
+JSDOCIdentifier* jsdoc_scope_getIdentifier (JSDOCScope* self, const gchar* symbol, JSDOCToken* token);
+void jsdoc_scope_addHint (JSDOCScope* self, const gchar* varName, const gchar* varType);
+void jsdoc_scope_preventMunging (JSDOCScope* self);
+gchar** jsdoc_scope_getUsedSymbols (JSDOCScope* self, int* result_length1);
+void jsdoc_scope_addToParentScope (JSDOCScope* self, const gchar* ident);
+gboolean jsdoc_scope_isProtectedVar (JSDOCScope* self, const gchar* ident);
+void jsdoc_scope_munge (JSDOCScope* self);
+extern gint jsdoc_Scope_gid;
+GType jsdoc_text_stream_char_get_type (void) G_GNUC_CONST;
+JSDOCTextStreamChar* jsdoc_text_stream_char_new (gchar val, gboolean eof);
+JSDOCTextStreamChar* jsdoc_text_stream_char_construct (GType object_type, gchar val, gboolean eof);
+GType jsdoc_text_stream_get_type (void) G_GNUC_CONST;
+JSDOCTextStream* jsdoc_text_stream_new (const gchar* text);
+JSDOCTextStream* jsdoc_text_stream_construct (GType object_type, const gchar* text);
+gchar* jsdoc_text_stream_lookS (JSDOCTextStream* self, gint n);
+gchar jsdoc_text_stream_lookC (JSDOCTextStream* self, gint n);
+gboolean jsdoc_text_stream_lookEOF (JSDOCTextStream* self, gint n);
+gchar* jsdoc_text_stream_nextS (JSDOCTextStream* self, gint n);
+gchar jsdoc_text_stream_nextC (JSDOCTextStream* self);
+GType jsdoc_token_array_get_type (void) G_GNUC_CONST;
+GType jsdoc_token_reader_get_type (void) G_GNUC_CONST;
+JSDOCTokenArray* jsdoc_token_array_new (JSDOCPacker* packer, JSDOCTokenReader* reader);
+JSDOCTokenArray* jsdoc_token_array_construct (GType object_type, JSDOCPacker* packer, JSDOCTokenReader* reader);
+JSDOCToken* jsdoc_token_array_last (JSDOCTokenArray* self);
+JSDOCToken* jsdoc_token_array_lastSym (JSDOCTokenArray* self);
+void jsdoc_token_array_push (JSDOCTokenArray* self, JSDOCToken* t);
+JSDOCToken* jsdoc_token_array_pop (JSDOCTokenArray* self);
+JSDOCToken* jsdoc_token_array_get (JSDOCTokenArray* self, gint i);
+void jsdoc_token_array_dump (JSDOCTokenArray* self);
+gint jsdoc_token_array_get_length (JSDOCTokenArray* self);
+JSDOCTokenReader* jsdoc_token_reader_new (JSDOCPacker* packer);
+JSDOCTokenReader* jsdoc_token_reader_construct (GType object_type, JSDOCPacker* packer);
+JSDOCTokenArray* jsdoc_token_reader_tokenize (JSDOCTokenReader* self, JSDOCTextStream* stream);
+gint jsdoc_token_reader_findPuncToken (JSDOCTokenReader* self, JSDOCTokenArray* tokens, const gchar* data, gint n);
+JSDOCToken* jsdoc_token_reader_lastSym (JSDOCTokenReader* self, JSDOCTokenArray* tokens, gint n);
+gboolean jsdoc_token_reader_read_word (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_punc (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_space (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_newline (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_mlcomment (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_slcomment (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_dbquote (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_snquote (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_numb (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_hex (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+gboolean jsdoc_token_reader_read_regx (JSDOCTokenReader* self, JSDOCTextStream* stream, JSDOCTokenArray* tokens);
+GQuark jsdoc_tokenreader_error_quark (void);
+JSDOCTokenStream* jsdoc_token_stream_new (GeeArrayList* tokens);
+JSDOCTokenStream* jsdoc_token_stream_construct (GType object_type, GeeArrayList* tokens);
+GeeArrayList* jsdoc_token_stream_toArray (JSDOCTokenStream* self);
+void jsdoc_token_stream_rewind (JSDOCTokenStream* self);
+JSDOCToken* jsdoc_token_stream_look (JSDOCTokenStream* self, gint n, gboolean considerWhitespace);
+JSDOCToken* jsdoc_token_stream_lookAny (JSDOCTokenStream* self, gint n);
+gint jsdoc_token_stream_lookFor (JSDOCTokenStream* self, const gchar* data);
+JSDOCToken* jsdoc_token_stream_lookTok (JSDOCTokenStream* self, gint n);
+JSDOCToken* jsdoc_token_stream_next (JSDOCTokenStream* self);
+GQuark jsdoc_token_stream_error_quark (void);
+GeeArrayList* jsdoc_token_stream_nextM (JSDOCTokenStream* self, gint howMany, GError** error);
+JSDOCToken* jsdoc_token_stream_nextTok (JSDOCTokenStream* self);
+JSDOCToken* jsdoc_token_stream_nextNonSpace (JSDOCTokenStream* self);
+GeeArrayList* jsdoc_token_stream_balance (JSDOCTokenStream* self, JSDOCTokenName in_start, GError** error);
+JSDOCToken* jsdoc_token_stream_getMatchingTokenEnd (JSDOCTokenStream* self, JSDOCTokenName end);
+JSDOCToken* jsdoc_token_stream_getMatchingToken (JSDOCTokenStream* self, JSDOCTokenName start, gint depth);
+GeeArrayList* jsdoc_token_stream_remaining (JSDOCTokenStream* self);
+void jsdoc_token_stream_printRange (JSDOCTokenStream* self, gint start, gint end);
+void jsdoc_token_stream_dump (JSDOCTokenStream* self, gint start, gint end);
+void jsdoc_token_stream_dumpAll (JSDOCTokenStream* self, const gchar* indent);
+void jsdoc_token_stream_dumpAllFlat (JSDOCTokenStream* self);
+GType jsdoc_token_key_map_get_type (void) G_GNUC_CONST;
+JSDOCTokenKeyMap* jsdoc_token_key_map_new (void);
+JSDOCTokenKeyMap* jsdoc_token_key_map_construct (GType object_type);
+GType jsdoc_token_type_get_type (void) G_GNUC_CONST;
+JSDOCToken* jsdoc_token_new (const gchar* data, JSDOCTokenType type, JSDOCTokenName name, gint line);
+JSDOCToken* jsdoc_token_construct (GType object_type, const gchar* data, JSDOCTokenType type, JSDOCTokenName name, gint line);
+gchar* jsdoc_token_asString (JSDOCToken* self);
+void jsdoc_token_dump (JSDOCToken* self, const gchar* indent);
+gchar* jsdoc_token_toRaw (JSDOCToken* self, gint lvl);
+gboolean jsdoc_token_isName (JSDOCToken* self, JSDOCTokenName what);
+gboolean jsdoc_token_isType (JSDOCToken* self, JSDOCTokenType what);
+JSDOCPackerRun* jsdoc_packer_run_singleton (void);
+JSDOCPackerRun* jsdoc_packer_run_new (void);
+JSDOCPackerRun* jsdoc_packer_run_construct (GType object_type);
+void jsdoc_packer_run_parseArgs (JSDOCPackerRun* self, gchar** args, int args_length1);
+void jsdoc_packer_run_runPack (JSDOCPackerRun* self);
+GType jsdoc_walker_get_type (void) G_GNUC_CONST;
+JSDOCWalker* jsdoc_walker_new (JSDOCTokenStream* ts);
+JSDOCWalker* jsdoc_walker_construct (GType object_type, JSDOCTokenStream* ts);
+void jsdoc_walker_buildSymbolTree (JSDOCWalker* self);
+GType jsdoc_symbol_set_get_type (void) G_GNUC_CONST;
+JSDOCSymbolSet* jsdoc_symbol_set_new (void);
+JSDOCSymbolSet* jsdoc_symbol_set_construct (GType object_type);
+GeeArrayList* jsdoc_symbol_set_keys (JSDOCSymbolSet* self);
+GType jsdoc_symbol_get_type (void) G_GNUC_CONST;
+GeeArrayList* jsdoc_symbol_set_values (JSDOCSymbolSet* self);
+gboolean jsdoc_symbol_set_hasSymbol (JSDOCSymbolSet* self, const gchar* alias);
+void jsdoc_symbol_set_addSymbol (JSDOCSymbolSet* self, JSDOCSymbol* symbol);
+JSDOCSymbol* jsdoc_symbol_set_getSymbol (JSDOCSymbolSet* self, const gchar* alias);
+void jsdoc_symbol_set_deleteSymbol (JSDOCSymbolSet* self, const gchar* alias);
+gchar* jsdoc_symbol_set_renameSymbol (JSDOCSymbolSet* self, const gchar* oldName, const gchar* newName);
+void jsdoc_symbol_set_relate (JSDOCSymbolSet* self);
+gboolean jsdoc_symbol_set_isBuiltin (const gchar* name);
+GeeHashMap* jsdoc_symbol_set_get__index (JSDOCSymbolSet* self);
+GType jsdoc_doc_comment_get_type (void) G_GNUC_CONST;
+GType jsdoc_doc_tag_get_type (void) G_GNUC_CONST;
+extern gchar* jsdoc_doc_comment_shared;
+JSDOCDocComment* jsdoc_doc_comment_new (const gchar* comment);
+JSDOCDocComment* jsdoc_doc_comment_construct (GType object_type, const gchar* comment);
+gchar* jsdoc_doc_comment_unwrapComment (const gchar* comment);
+GType jsdoc_doc_tag_title_get_type (void) G_GNUC_CONST;
+GeeArrayList* jsdoc_doc_comment_getTag (JSDOCDocComment* self, JSDOCDocTagTitle tagTitle);
+gchar* jsdoc_doc_comment_getTagAsString (JSDOCDocComment* self, JSDOCDocTagTitle tagTitle);
+GType jsdoc_doc_parser_get_type (void) G_GNUC_CONST;
+extern gchar* jsdoc_doc_parser_currentSourceFile;
+JSDOCSymbolSet* jsdoc_doc_parser_symbols (void);
+void jsdoc_doc_parser_parse (JSDOCTokenStream* ts, const gchar* srcFile);
+void jsdoc_doc_parser_addSymbol (JSDOCSymbol* symbol);
+JSDOCSymbol* jsdoc_doc_parser_addBuiltin (const gchar* name);
+void jsdoc_doc_parser_finish (void);
+JSDOCDocParser* jsdoc_doc_parser_new (void);
+JSDOCDocParser* jsdoc_doc_parser_construct (GType object_type);
+gchar* jsdoc_doc_tag_asString (JSDOCDocTag* self);
+JSDOCDocTag* jsdoc_doc_tag_new (const gchar* in_src);
+JSDOCDocTag* jsdoc_doc_tag_construct (GType object_type, const gchar* in_src);
+JsonArray* jsdoc_doc_tag_optvalue_as_json_array (JSDOCDocTag* self);
+extern gboolean jsdoc_symbol_regex_init;
+extern gchar* jsdoc_symbol_srcFile;
+gchar* jsdoc_symbol_asString (JSDOCSymbol* self);
+void jsdoc_symbol_initArrays (JSDOCSymbol* self);
+JSDOCSymbol* jsdoc_symbol_new_new_builtin (const gchar* name);
+JSDOCSymbol* jsdoc_symbol_construct_new_builtin (GType object_type, const gchar* name);
+JSDOCSymbol* jsdoc_symbol_new_new_populate_with_args (const gchar* name, GeeArrayList* params, const gchar* isa, JSDOCDocComment* comment);
+JSDOCSymbol* jsdoc_symbol_construct_new_populate_with_args (GType object_type, const gchar* name, GeeArrayList* params, const gchar* isa, JSDOCDocComment* comment);
+gboolean jsdoc_symbol_is (JSDOCSymbol* self, const gchar* what);
+gboolean jsdoc_symbol_isaClass (JSDOCSymbol* self);
+gboolean jsdoc_symbol_isBuiltin (JSDOCSymbol* self);
+void jsdoc_symbol_inherit (JSDOCSymbol* self, JSDOCSymbol* symbol);
+void jsdoc_symbol_addMember (JSDOCSymbol* self, JSDOCSymbol* symbol);
+void jsdoc_symbol_addDocTag (JSDOCSymbol* self, JSDOCDocTag* docTag);
+void jsdoc_symbol_addConfig (JSDOCSymbol* self, JSDOCDocTag* docTag);
+GeeArrayList* jsdoc_symbol_configToArray (JSDOCSymbol* self);
+gchar* jsdoc_symbol_makeFuncSkel (JSDOCSymbol* self);
+gchar* jsdoc_symbol_makeMethodSkel (JSDOCSymbol* self);
+JsonArray* jsdoc_symbol_paramsToJson (JSDOCSymbol* self);
+JsonArray* jsdoc_symbol_returnsToJson (JSDOCSymbol* self);
+JSDOCSymbol* jsdoc_symbol_new (void);
+JSDOCSymbol* jsdoc_symbol_construct (GType object_type);
+void jsdoc_symbol_set_private_name (JSDOCSymbol* self, const gchar* value);
+const gchar* jsdoc_symbol_get_name (JSDOCSymbol* self);
+GeeArrayList* jsdoc_symbol_get_params (JSDOCSymbol* self);
+
+
+G_END_DECLS
+
+#endif
--- /dev/null
+/* .vapi generated by valac 0.36.6, do not modify. */
+
+namespace JSDOC {
+ [CCode (cheader_filename = ".h")]
+ public class Collapse : JSDOC.TokenStream {
+ public Collapse (Gee.ArrayList<JSDOC.Token> tokens, JSDOC.Packer pk, string filename);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class DocComment : GLib.Object {
+ public bool hasTags;
+ public bool isUserComment;
+ public static string shared;
+ public string src;
+ public Gee.ArrayList<JSDOC.DocTag> tags;
+ public DocComment (string comment = "");
+ public Gee.ArrayList<JSDOC.DocTag> getTag (JSDOC.DocTagTitle tagTitle);
+ public string getTagAsString (JSDOC.DocTagTitle tagTitle);
+ public static string unwrapComment (string comment);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class DocParser : GLib.Object {
+ public static string currentSourceFile;
+ public DocParser ();
+ public static JSDOC.Symbol addBuiltin (string name);
+ public static void addSymbol (JSDOC.Symbol symbol);
+ public static void finish ();
+ public static void parse (JSDOC.TokenStream ts, string srcFile);
+ public static JSDOC.SymbolSet symbols ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class DocTag : GLib.Object {
+ public string defaultValue;
+ public string desc;
+ public bool isOptional;
+ public string memberOf;
+ public string name;
+ public Gee.ArrayList<string> optvalues;
+ public JSDOC.DocTagTitle title;
+ public string type;
+ public DocTag (string in_src);
+ public string asString ();
+ public Json.Array optvalue_as_json_array ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Identifier : GLib.Object {
+ public string mungedValue;
+ public string name;
+ public int refcount;
+ public JSDOC.Scope scope;
+ public bool toMunge;
+ public Identifier (string name, JSDOC.Scope scope);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Lang_Class : GLib.Object {
+ public Lang_Class ();
+ public bool isBoolean (string str);
+ public bool isBuiltin (string name);
+ public bool isHexDec (string str);
+ public bool isKeyword (string word);
+ public bool isNewline (string str);
+ public bool isNewlineC (char str);
+ public bool isNumber (string str);
+ public bool isSpace (string str);
+ public bool isSpaceC (char str);
+ public bool isWordChar (char c);
+ public bool isWordString (string str);
+ public JSDOC.TokenName keyword (string word) throws JSDOC.LangError;
+ public JSDOC.TokenName? matching (JSDOC.TokenName name) throws JSDOC.LangError;
+ public string newline (string ch);
+ public JSDOC.TokenName puncFirstString (char ch);
+ public JSDOC.TokenName puncString (string ch);
+ public string whitespace (string ch);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Packer : GLib.Object {
+ public enum ResultType {
+ err,
+ warn;
+ public string to_string ();
+ }
+ public string activeFile;
+ public JSDOC.PackerRun config;
+ public Gee.ArrayList<string> files;
+ public string outstr;
+ public Gee.HashMap<string,Gee.HashMap<string,Gee.HashMap<int,Gee.ArrayList<string>>>> result;
+ public Gee.HashMap<string,int> result_count;
+ public Packer (JSDOC.PackerRun config);
+ public void dumpErrors (JSDOC.Packer.ResultType type);
+ public bool hasErrors (string fn);
+ public void loadFile (string f);
+ public void loadFiles (string[] fs);
+ public void loadSourceIndex (string in_srcfile);
+ public void loadSourceIndexes (Gee.ArrayList<string> indexes);
+ public void logError (JSDOC.Packer.ResultType type, string filename, int line, string message);
+ public string md5 (string str);
+ public string pack (string target, string targetDebug = "") throws JSDOC.PackerError;
+ public string packFile (string str, string fn, string minfile);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class PackerRun : GLib.Application {
+ public bool opt_clean_cache;
+ public bool opt_debug;
+ public string opt_debug_target;
+ public string opt_doc_ext;
+ public bool opt_doc_include_private;
+ public string opt_doc_target;
+ public string opt_doc_template_dir;
+ public bool opt_dump_tokens;
+ public bool opt_keep_whitespace;
+ public string opt_real_basedir;
+ public bool opt_skip_scope;
+ public string opt_target;
+ public PackerRun ();
+ public void parseArgs (string[] args);
+ public void runPack ();
+ public static JSDOC.PackerRun singleton ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Scope : GLib.Object {
+ public static Gee.ArrayList<string> builtin;
+ public string ident;
+ public static string[] ones;
+ public JSDOC.Scope parent;
+ public static Gee.ArrayList<string> skips;
+ public Gee.ArrayList<JSDOC.Scope> subScopes;
+ public static string[] twos;
+ public Scope (int braceN, JSDOC.Scope? parent, int startTokN, string lastIdent, JSDOC.Token? token);
+ public void addHint (string varName, string varType);
+ public void addToParentScope (string ident);
+ public JSDOC.Identifier declareIdentifier (string symbol, JSDOC.Token token);
+ public void dump (string indent = "");
+ public JSDOC.Identifier? getIdentifier (string symbol, JSDOC.Token token);
+ public string[] getUsedSymbols ();
+ public bool isProtectedVar (string ident);
+ public void munge ();
+ public void preventMunging ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class ScopeParser : GLib.Object {
+ public ScopeParser (JSDOC.TokenStream ts, JSDOC.Packer packer, string filename);
+ public void buildSymbolTree ();
+ public void mungeSymboltree ();
+ public void printWarnings ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Symbol : GLib.Object {
+ public string alias;
+ public Gee.ArrayList<string> augments;
+ public Gee.HashMap<string,JSDOC.DocTag> cfgs;
+ public Gee.ArrayList<string> childClasses;
+ public JSDOC.DocComment comment;
+ public string desc;
+ public Gee.ArrayList<string> inheritsFrom;
+ public bool isConstant;
+ public bool isEvent;
+ public bool isIgnored;
+ public bool isInner;
+ public bool isNamespace;
+ public bool isPrivate;
+ public bool isStatic;
+ public string isa;
+ public string memberOf;
+ public Gee.ArrayList<JSDOC.Symbol> methods;
+ public Gee.ArrayList<JSDOC.Symbol> properties;
+ public static bool regex_init;
+ public Gee.ArrayList<JSDOC.DocTag> returns;
+ public static string srcFile;
+ public Symbol ();
+ public void addConfig (JSDOC.DocTag docTag);
+ public void addDocTag (JSDOC.DocTag docTag);
+ public void addMember (JSDOC.Symbol symbol);
+ public string asString ();
+ public Gee.ArrayList<JSDOC.DocTag> configToArray ();
+ public void inherit (JSDOC.Symbol symbol);
+ public void initArrays ();
+ public bool @is (string what);
+ public bool isBuiltin ();
+ public bool isaClass ();
+ public string makeFuncSkel ();
+ public string makeMethodSkel ();
+ public Symbol.new_builtin (string name);
+ public Symbol.new_populate_with_args (string name, Gee.ArrayList<string> @params, string isa, JSDOC.DocComment comment);
+ public Json.Array paramsToJson ();
+ public Json.Array returnsToJson ();
+ public string name { get; }
+ public Gee.ArrayList<JSDOC.DocTag> @params { get; }
+ public string private_name { set; }
+ }
+ [CCode (cheader_filename = ".h")]
+ public class SymbolSet : GLib.Object {
+ public SymbolSet ();
+ public void addSymbol (JSDOC.Symbol symbol);
+ public void deleteSymbol (string alias);
+ public JSDOC.Symbol? getSymbol (string alias);
+ public bool hasSymbol (string alias);
+ public static bool isBuiltin (string name);
+ public Gee.ArrayList<string> keys ();
+ public void relate ();
+ public string renameSymbol (string oldName, string newName);
+ public Gee.ArrayList<JSDOC.Symbol> values ();
+ public Gee.HashMap<string,JSDOC.Symbol> _index { get; }
+ }
+ [CCode (cheader_filename = ".h")]
+ public class TextStream : GLib.Object {
+ public TextStream (string text = "");
+ public char lookC (int n = 0);
+ public bool lookEOF (int n = 0);
+ public string lookS (int n = 0);
+ public char nextC ();
+ public string nextS (int n = 1);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class TextStreamChar : GLib.Object {
+ public char c;
+ public bool eof;
+ public TextStreamChar (char val, bool eof = false);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Token : GLib.Object {
+ public string data;
+ public int id;
+ public JSDOC.Identifier identifier;
+ public Gee.ArrayList<Gee.ArrayList<JSDOC.Token>> items;
+ public Gee.ArrayList<string> keyseq;
+ public int line;
+ public JSDOC.TokenName name;
+ public string outData;
+ public string prefix;
+ public Gee.HashMap<string,JSDOC.TokenKeyMap> props;
+ public JSDOC.TokenType type;
+ public Token (string data, JSDOC.TokenType type, JSDOC.TokenName name, int line = -1);
+ public string asString ();
+ public void dump (string indent);
+ public bool isName (JSDOC.TokenName what);
+ public bool isType (JSDOC.TokenType what);
+ public string toRaw (int lvl = 0);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class TokenArray : GLib.Object {
+ public Gee.ArrayList<JSDOC.Token> tokens;
+ public TokenArray (JSDOC.Packer? packer, JSDOC.TokenReader reader);
+ public void dump ();
+ public new JSDOC.Token @get (int i);
+ public JSDOC.Token? last ();
+ public JSDOC.Token? lastSym ();
+ public JSDOC.Token? pop ();
+ public void push (JSDOC.Token t);
+ public int length { get; }
+ }
+ [CCode (cheader_filename = ".h")]
+ public class TokenKeyMap : GLib.Object {
+ public JSDOC.Token key;
+ public Gee.ArrayList<JSDOC.Token> vals;
+ public TokenKeyMap ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class TokenReader : GLib.Object {
+ public bool collapseWhite;
+ public string filename;
+ public bool ignoreBadGrammer;
+ public bool keepComments;
+ public bool keepDocs;
+ public bool keepWhite;
+ public bool sepIdents;
+ public TokenReader (JSDOC.Packer? packer);
+ public int findPuncToken (JSDOC.TokenArray tokens, string data, int n);
+ public JSDOC.Token? lastSym (JSDOC.TokenArray tokens, int n);
+ public bool read_dbquote (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_hex (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_mlcomment (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_newline (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_numb (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_punc (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_regx (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_slcomment (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_snquote (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_space (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public bool read_word (JSDOC.TextStream stream, JSDOC.TokenArray tokens);
+ public JSDOC.TokenArray tokenize (JSDOC.TextStream stream);
+ }
+ [CCode (cheader_filename = ".h")]
+ public class TokenStream : GLib.Object {
+ public int cursor;
+ protected Gee.ArrayList<JSDOC.Token> tokens;
+ public TokenStream (Gee.ArrayList<JSDOC.Token> tokens);
+ public Gee.ArrayList<JSDOC.Token> balance (JSDOC.TokenName in_start) throws JSDOC.TokenStreamError;
+ public void dump (int start, int end);
+ public void dumpAll (string indent);
+ public void dumpAllFlat ();
+ public JSDOC.Token? getMatchingToken (JSDOC.TokenName start, int depth = 0);
+ public JSDOC.Token? getMatchingTokenEnd (JSDOC.TokenName end);
+ public JSDOC.Token? look (int n, bool considerWhitespace);
+ public JSDOC.Token lookAny (int n);
+ public int lookFor (string data);
+ public JSDOC.Token lookTok (int n);
+ public JSDOC.Token? next ();
+ public Gee.ArrayList<JSDOC.Token>? nextM (int howMany) throws JSDOC.TokenStreamError;
+ public JSDOC.Token? nextNonSpace ();
+ public JSDOC.Token? nextTok ();
+ public void printRange (int start, int end);
+ public Gee.ArrayList<JSDOC.Token> remaining ();
+ public void rewind ();
+ public Gee.ArrayList<JSDOC.Token> toArray ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public class Walker : GLib.Object {
+ public Walker (JSDOC.TokenStream ts);
+ public void buildSymbolTree ();
+ }
+ [CCode (cheader_filename = ".h")]
+ public enum DocTagTitle {
+ NO_VALUE,
+ PARAM,
+ PROPERTY,
+ CFG,
+ EXAMPLE,
+ SINGLETON,
+ AUTHOR,
+ METHOD,
+ DESC,
+ OVERVIEW,
+ SINCE,
+ CONSTANT,
+ VERSION,
+ DEPRECATED,
+ SEE,
+ CLASS,
+ NAMESPACE,
+ CONSTRUCTOR,
+ STATIC,
+ INNER,
+ FIELD,
+ FUNCTION,
+ EVENT,
+ NAME,
+ RETURN,
+ THROWS,
+ REQUIRES,
+ TYPE,
+ PRIVATE,
+ IGNORE,
+ ARGUMENTS,
+ EXTENDS,
+ DEFAULT,
+ MEMBEROF,
+ PUBLIC,
+ SCOPE,
+ SCOPEALIAS
+ }
+ [CCode (cheader_filename = ".h")]
+ public enum ScopeParserMode {
+ BUILDING_SYMBOL_TREE,
+ PASS2_SYMBOL_TREE
+ }
+ [CCode (cheader_filename = ".h")]
+ public enum TokenName {
+ UNKNOWN_TOKEN,
+ BREAK,
+ CASE,
+ CATCH,
+ CONST,
+ CONTINUE,
+ DEFAULT,
+ DELETE,
+ DO,
+ ELSE,
+ FALSE,
+ FINALLY,
+ FOR,
+ FUNCTION,
+ IF,
+ IN,
+ INSTANCEOF,
+ NEW,
+ NULL,
+ RETURN,
+ SWITCH,
+ THIS,
+ THROW,
+ TRUE,
+ TRY,
+ TYPEOF,
+ VOID,
+ WHILE,
+ WITH,
+ VAR,
+ EVAL,
+ NAME,
+ MULTI_LINE_COMM,
+ JSDOC,
+ SINGLE_LINE_COMM,
+ SEMICOLON,
+ COMMA,
+ HOOK,
+ COLON,
+ OR,
+ AND,
+ BITWISE_OR,
+ BITWISE_XOR,
+ BITWISE_AND,
+ STRICT_EQ,
+ EQ,
+ ASSIGN,
+ STRICT_NE,
+ NE,
+ LSH,
+ LE,
+ LT,
+ URSH,
+ RSH,
+ GE,
+ GT,
+ INCREMENT,
+ DECREMENT,
+ PLUS,
+ MINUS,
+ MUL,
+ DIV,
+ MOD,
+ NOT,
+ BITWISE_NOT,
+ DOT,
+ LEFT_BRACE,
+ RIGHT_BRACE,
+ LEFT_CURLY,
+ RIGHT_CURLY,
+ LEFT_PAREN,
+ RIGHT_PAREN,
+ SPACE,
+ NEWLINE,
+ DOUBLE_QUOTE,
+ SINGLE_QUOTE,
+ OCTAL,
+ DECIMAL,
+ HEX_DEC,
+ REGX,
+ START_OF_STREAM,
+ END_OF_STREAM,
+ UNKNOWN
+ }
+ [CCode (cheader_filename = ".h")]
+ public enum TokenType {
+ TOKN,
+ KEYW,
+ NAME,
+ COMM,
+ PUNC,
+ WHIT,
+ STRN,
+ NUMB,
+ REGX,
+ VOID
+ }
+ [CCode (cheader_filename = ".h")]
+ public errordomain CompressWhiteError {
+ BRACE
+ }
+ [CCode (cheader_filename = ".h")]
+ public errordomain LangError {
+ ArgumentError
+ }
+ [CCode (cheader_filename = ".h")]
+ public errordomain PackerError {
+ ArgumentError
+ }
+ [CCode (cheader_filename = ".h")]
+ public errordomain TokenReader_Error {
+ ArgumentError,
+ SyntaxError
+ }
+ [CCode (cheader_filename = ".h")]
+ public errordomain TokenStreamError {
+ ArgumentError
+ }
+ [CCode (cheader_filename = ".h")]
+ public static JSDOC.Lang_Class Lang;
+ [CCode (cheader_filename = ".h")]
+ public static int Scope_gid;
+ [CCode (cheader_filename = ".h")]
+ public static string CompressWhite (JSDOC.TokenStream ts, JSDOC.Packer packer, bool keepWhite);
+}
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/alan/gitlive/roojspacker")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/alan/gitlive/roojspacker")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+# The set of files for implicit dependencies of each language:
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Utility rule file for roojspacker--vala-fast-vapis.
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/progress.make
+
+jsdoc/CMakeFiles/roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/fast-vapis.stamp
+
+
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Token.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi.stamp
+jsdoc/roojspacker--vala/fast-vapis.stamp: jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi.stamp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating fast VAPIs for roojspacker--vala"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/fast-vapis.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi.stamp: jsdoc/Collapse.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Collapse.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi.stamp: jsdoc/CompressWhite.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/CompressWhite.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi.stamp: jsdoc/Identifier.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Identifier.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi.stamp: jsdoc/Lang.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Lang.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi.stamp: jsdoc/Packer.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Packer.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi.stamp: jsdoc/ScopeParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/ScopeParser.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi.stamp: jsdoc/Scope.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Scope.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi.stamp: jsdoc/TextStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/TextStream.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi.stamp: jsdoc/TokenReader.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/TokenReader.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi.stamp: jsdoc/TokenStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/TokenStream.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Token.vapi.stamp: jsdoc/Token.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Token.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi.stamp: jsdoc/PackerRun.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/PackerRun.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi.stamp: jsdoc/Walker.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Walker.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi.stamp: jsdoc/SymbolSet.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/SymbolSet.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi.stamp: jsdoc/DocBuilder.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocBuilder.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi.stamp: jsdoc/DocComment.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocComment.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi.stamp: jsdoc/DocParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocParser.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi.stamp: jsdoc/DocTag.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocTag.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi.stamp: jsdoc/PrettyPrint.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/PrettyPrint.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi.stamp: jsdoc/Symbol.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Symbol.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi.stamp
+
+roojspacker--vala-fast-vapis: jsdoc/CMakeFiles/roojspacker--vala-fast-vapis
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/fast-vapis.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Token.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi.stamp
+roojspacker--vala-fast-vapis: jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/build.make
+
+.PHONY : roojspacker--vala-fast-vapis
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/build: roojspacker--vala-fast-vapis
+
+.PHONY : jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/build
+
+jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/roojspacker--vala-fast-vapis.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/clean
+
+jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/roojspacker--vala-fast-vapis.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/roojspacker--vala-fast-vapis"
+ "roojspacker--vala/fast-vapis.stamp"
+ "roojspacker--vala/build/jsdoc/Collapse.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/CompressWhite.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Identifier.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Lang.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Packer.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/ScopeParser.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Scope.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/TextStream.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/TokenReader.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/TokenStream.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Token.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/PackerRun.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Walker.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/SymbolSet.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/DocBuilder.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/DocComment.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/DocParser.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/DocTag.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/PrettyPrint.vapi.stamp"
+ "roojspacker--vala/build/jsdoc/Symbol.vapi.stamp"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang )
+ include(CMakeFiles/roojspacker--vala-fast-vapis.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+CMAKE_PROGRESS_1 = 46
+CMAKE_PROGRESS_2 = 47
+CMAKE_PROGRESS_3 = 48
+CMAKE_PROGRESS_4 = 49
+CMAKE_PROGRESS_5 = 50
+CMAKE_PROGRESS_6 = 51
+CMAKE_PROGRESS_7 = 52
+CMAKE_PROGRESS_8 = 53
+CMAKE_PROGRESS_9 = 54
+CMAKE_PROGRESS_10 = 55
+CMAKE_PROGRESS_11 = 56
+CMAKE_PROGRESS_12 = 57
+CMAKE_PROGRESS_13 = 58
+CMAKE_PROGRESS_14 = 59
+CMAKE_PROGRESS_15 = 60
+CMAKE_PROGRESS_16 = 61
+CMAKE_PROGRESS_17 = 62
+CMAKE_PROGRESS_18 = 63
+CMAKE_PROGRESS_19 = 64
+CMAKE_PROGRESS_20 = 65
+CMAKE_PROGRESS_21 = 66
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+# The set of files for implicit dependencies of each language:
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/alan/gitlive/roojspacker/jsdoc/.h" "/home/alan/gitlive/roojspacker/jsdoc/.vapi"
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Utility rule file for roojspacker--vala.
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/roojspacker--vala.dir/progress.make
+
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/.vapi
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/.h
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Collapse.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Identifier.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Lang.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Packer.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Scope.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/TextStream.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Token.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Walker.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocComment.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocParser.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocTag.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c.stamp
+jsdoc/CMakeFiles/roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Symbol.c.stamp
+
+
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Collapse.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Identifier.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Lang.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Packer.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Scope.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/TextStream.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Token.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Walker.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/DocComment.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/DocParser.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/DocTag.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c.stamp
+jsdoc/roojspacker--vala/stamp: jsdoc/roojspacker--vala/build/jsdoc/Symbol.c.stamp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating sources from Vala for roojspacker--vala"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/stamp
+
+jsdoc/.vapi:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating .vapi, .h"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -C --vapi /home/alan/gitlive/roojspacker/jsdoc/.vapi --header /home/alan/gitlive/roojspacker/jsdoc/.h --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+
+jsdoc/.h: jsdoc/.vapi
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/.h
+
+jsdoc/roojspacker--vala/build/jsdoc/Collapse.c.stamp: jsdoc/Collapse.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Collapse.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c.stamp: jsdoc/CompressWhite.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/CompressWhite.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Identifier.c.stamp: jsdoc/Identifier.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Identifier.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Lang.c.stamp: jsdoc/Lang.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Lang.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Packer.c.stamp: jsdoc/Packer.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Packer.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c.stamp: jsdoc/ScopeParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/ScopeParser.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Scope.c.stamp: jsdoc/Scope.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Scope.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/TextStream.c.stamp: jsdoc/TextStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/TextStream.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c.stamp: jsdoc/TokenReader.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/TokenReader.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c.stamp: jsdoc/TokenStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/TokenStream.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Token.c.stamp: jsdoc/Token.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Token.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c.stamp: jsdoc/PackerRun.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/PackerRun.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Walker.c.stamp: jsdoc/Walker.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Walker.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c.stamp: jsdoc/SymbolSet.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/SymbolSet.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c.stamp: jsdoc/DocBuilder.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocBuilder.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocComment.c.stamp: jsdoc/DocComment.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocComment.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocParser.c.stamp: jsdoc/DocParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocParser.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/DocTag.c.stamp: jsdoc/DocTag.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocTag.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c.stamp: jsdoc/PrettyPrint.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/PrettyPrint.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c.stamp
+
+jsdoc/roojspacker--vala/build/jsdoc/Symbol.c.stamp: jsdoc/Symbol.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_22) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Symbol.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c.stamp
+
+roojspacker--vala: jsdoc/CMakeFiles/roojspacker--vala
+roojspacker--vala: jsdoc/roojspacker--vala/stamp
+roojspacker--vala: jsdoc/.vapi
+roojspacker--vala: jsdoc/.h
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Collapse.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Identifier.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Lang.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Packer.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Scope.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/TextStream.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Token.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Walker.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocComment.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocParser.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/DocTag.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c.stamp
+roojspacker--vala: jsdoc/roojspacker--vala/build/jsdoc/Symbol.c.stamp
+roojspacker--vala: jsdoc/CMakeFiles/roojspacker--vala.dir/build.make
+
+.PHONY : roojspacker--vala
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/roojspacker--vala.dir/build: roojspacker--vala
+
+.PHONY : jsdoc/CMakeFiles/roojspacker--vala.dir/build
+
+jsdoc/CMakeFiles/roojspacker--vala.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/roojspacker--vala.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/roojspacker--vala.dir/clean
+
+jsdoc/CMakeFiles/roojspacker--vala.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker--vala.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/roojspacker--vala.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/roojspacker--vala"
+ "roojspacker--vala/stamp"
+ ".vapi"
+ ".h"
+ "roojspacker--vala/build/jsdoc/Collapse.c.stamp"
+ "roojspacker--vala/build/jsdoc/CompressWhite.c.stamp"
+ "roojspacker--vala/build/jsdoc/Identifier.c.stamp"
+ "roojspacker--vala/build/jsdoc/Lang.c.stamp"
+ "roojspacker--vala/build/jsdoc/Packer.c.stamp"
+ "roojspacker--vala/build/jsdoc/ScopeParser.c.stamp"
+ "roojspacker--vala/build/jsdoc/Scope.c.stamp"
+ "roojspacker--vala/build/jsdoc/TextStream.c.stamp"
+ "roojspacker--vala/build/jsdoc/TokenReader.c.stamp"
+ "roojspacker--vala/build/jsdoc/TokenStream.c.stamp"
+ "roojspacker--vala/build/jsdoc/Token.c.stamp"
+ "roojspacker--vala/build/jsdoc/PackerRun.c.stamp"
+ "roojspacker--vala/build/jsdoc/Walker.c.stamp"
+ "roojspacker--vala/build/jsdoc/SymbolSet.c.stamp"
+ "roojspacker--vala/build/jsdoc/DocBuilder.c.stamp"
+ "roojspacker--vala/build/jsdoc/DocComment.c.stamp"
+ "roojspacker--vala/build/jsdoc/DocParser.c.stamp"
+ "roojspacker--vala/build/jsdoc/DocTag.c.stamp"
+ "roojspacker--vala/build/jsdoc/PrettyPrint.c.stamp"
+ "roojspacker--vala/build/jsdoc/Symbol.c.stamp"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang )
+ include(CMakeFiles/roojspacker--vala.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+CMAKE_PROGRESS_1 = 24
+CMAKE_PROGRESS_2 = 25
+CMAKE_PROGRESS_3 = 26
+CMAKE_PROGRESS_4 = 27
+CMAKE_PROGRESS_5 = 28
+CMAKE_PROGRESS_6 = 29
+CMAKE_PROGRESS_7 = 30
+CMAKE_PROGRESS_8 = 31
+CMAKE_PROGRESS_9 = 32
+CMAKE_PROGRESS_10 = 33
+CMAKE_PROGRESS_11 = 34
+CMAKE_PROGRESS_12 = 35
+CMAKE_PROGRESS_13 = 36
+CMAKE_PROGRESS_14 = 37
+CMAKE_PROGRESS_15 = 38
+CMAKE_PROGRESS_16 = 39
+CMAKE_PROGRESS_17 = 40
+CMAKE_PROGRESS_18 = 41
+CMAKE_PROGRESS_19 = 42
+CMAKE_PROGRESS_20 = 43
+CMAKE_PROGRESS_21 = 44
+CMAKE_PROGRESS_22 = 45
+
--- /dev/null
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+json-glib/json-glib.h
+-
+gio/gio.h
+-
+glib/gstdio.h
+-
+sys/stat.h
+-
+sys/types.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+gio/gio.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+json-glib/json-glib.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+gio/gio.h
+-
+glib/gstdio.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c
+glib.h
+-
+glib-object.h
+-
+gio/gio.h
+-
+stdlib.h
+-
+string.h
+-
+stdio.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+json-glib/json-glib.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+stdio.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "C"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_C
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o"
+ )
+set(CMAKE_C_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_C_TARGET_INCLUDE_PATH
+ )
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so" "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so.1.2"
+ "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so.1.2.0" "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so.1.2"
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Include any dependencies generated for this target.
+include jsdoc/CMakeFiles/roojspacker-.dir/depend.make
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/roojspacker-.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o: jsdoc/roojspacker--vala/build/jsdoc/Collapse.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o: jsdoc/roojspacker--vala/build/jsdoc/Identifier.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o: jsdoc/roojspacker--vala/build/jsdoc/Lang.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o: jsdoc/roojspacker--vala/build/jsdoc/Packer.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o: jsdoc/roojspacker--vala/build/jsdoc/Scope.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o: jsdoc/roojspacker--vala/build/jsdoc/TextStream.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o: jsdoc/roojspacker--vala/build/jsdoc/Token.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o: jsdoc/roojspacker--vala/build/jsdoc/Walker.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocComment.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocParser.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocTag.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.s
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o: jsdoc/CMakeFiles/roojspacker-.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o: jsdoc/roojspacker--vala/build/jsdoc/Symbol.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Building C object jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c > CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.i
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c -o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.s
+
+# Object files for target roojspacker-
+roojspacker___OBJECTS = \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o" \
+"CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o"
+
+# External object files for target roojspacker-
+roojspacker___EXTERNAL_OBJECTS =
+
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/build.make
+jsdoc/libroojspacker-.so.1.2: /usr/lib/x86_64-linux-gnu/libgio-2.0.so
+jsdoc/libroojspacker-.so.1.2: /usr/lib/x86_64-linux-gnu/libgobject-2.0.so
+jsdoc/libroojspacker-.so.1.2: /usr/lib/x86_64-linux-gnu/libglib-2.0.so
+jsdoc/libroojspacker-.so.1.2: jsdoc/CMakeFiles/roojspacker-.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Linking C shared library libroojspacker-.so"
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/roojspacker-.dir/link.txt --verbose=$(VERBOSE)
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -E cmake_symlink_library libroojspacker-.so.1.2 libroojspacker-.so.1.2.0 libroojspacker-.so
+
+jsdoc/libroojspacker-.so.1.2.0: jsdoc/libroojspacker-.so.1.2
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/libroojspacker-.so.1.2.0
+
+jsdoc/libroojspacker-.so: jsdoc/libroojspacker-.so.1.2
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/libroojspacker-.so
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/roojspacker-.dir/build: jsdoc/libroojspacker-.so
+
+.PHONY : jsdoc/CMakeFiles/roojspacker-.dir/build
+
+jsdoc/CMakeFiles/roojspacker-.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/roojspacker-.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/roojspacker-.dir/clean
+
+jsdoc/CMakeFiles/roojspacker-.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/roojspacker-.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o"
+ "CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o"
+ "libroojspacker-.pdb"
+ "libroojspacker-.so.1.2"
+ "libroojspacker-.so"
+ "libroojspacker-.so.1.2.0"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang C)
+ include(CMakeFiles/roojspacker-.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Collapse.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocComment.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocParser.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/DocTag.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Identifier.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Lang.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Packer.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Scope.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Symbol.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TextStream.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Token.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker--vala/build/jsdoc/Walker.c
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o: jsdoc/roojspacker--vala/build/jsdoc/Collapse.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o: jsdoc/roojspacker--vala/build/jsdoc/CompressWhite.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocBuilder.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocComment.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocParser.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o: jsdoc/roojspacker--vala/build/jsdoc/DocTag.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o: jsdoc/roojspacker--vala/build/jsdoc/Identifier.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o: jsdoc/roojspacker--vala/build/jsdoc/Lang.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o: jsdoc/roojspacker--vala/build/jsdoc/Packer.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o: jsdoc/roojspacker--vala/build/jsdoc/PackerRun.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o: jsdoc/roojspacker--vala/build/jsdoc/PrettyPrint.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o: jsdoc/roojspacker--vala/build/jsdoc/Scope.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o: jsdoc/roojspacker--vala/build/jsdoc/ScopeParser.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o: jsdoc/roojspacker--vala/build/jsdoc/Symbol.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o: jsdoc/roojspacker--vala/build/jsdoc/SymbolSet.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o: jsdoc/roojspacker--vala/build/jsdoc/TextStream.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o: jsdoc/roojspacker--vala/build/jsdoc/Token.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o: jsdoc/roojspacker--vala/build/jsdoc/TokenReader.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o: jsdoc/roojspacker--vala/build/jsdoc/TokenStream.c
+
+jsdoc/CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o: jsdoc/roojspacker--vala/build/jsdoc/Walker.c
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# compile C with /usr/bin/cc
+C_FLAGS = -Wno-incompatible-pointer-types -g -fPIC -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/gee-0.8 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/json-glib-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread
+
+C_DEFINES = -Droojspacker__EXPORTS
+
+C_INCLUDES =
+
--- /dev/null
+/usr/bin/cc -fPIC -Wno-incompatible-pointer-types -g -shared -Wl,-soname,libroojspacker-.so.1.2.0 -o libroojspacker-.so.1.2 CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Collapse.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/CompressWhite.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Identifier.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Lang.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Packer.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/ScopeParser.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Scope.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TextStream.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenReader.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/TokenStream.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Token.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PackerRun.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Walker.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/SymbolSet.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocBuilder.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocComment.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocParser.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/DocTag.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/PrettyPrint.c.o CMakeFiles/roojspacker-.dir/roojspacker--vala/build/jsdoc/Symbol.c.o -lgee-0.8 -lgthread-2.0 -ljson-glib-1.0 /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libglib-2.0.so
--- /dev/null
+CMAKE_PROGRESS_1 = 3
+CMAKE_PROGRESS_2 = 4
+CMAKE_PROGRESS_3 = 5
+CMAKE_PROGRESS_4 = 6
+CMAKE_PROGRESS_5 = 7
+CMAKE_PROGRESS_6 = 8
+CMAKE_PROGRESS_7 = 9
+CMAKE_PROGRESS_8 = 10
+CMAKE_PROGRESS_9 = 11
+CMAKE_PROGRESS_10 = 12
+CMAKE_PROGRESS_11 = 13
+CMAKE_PROGRESS_12 = 14
+CMAKE_PROGRESS_13 = 15
+CMAKE_PROGRESS_14 = 16
+CMAKE_PROGRESS_15 = 17
+CMAKE_PROGRESS_16 = 18
+CMAKE_PROGRESS_17 = 19
+CMAKE_PROGRESS_18 = 20
+CMAKE_PROGRESS_19 = 21
+CMAKE_PROGRESS_20 = 22
+CMAKE_PROGRESS_21 = 23
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+# The set of files for implicit dependencies of each language:
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Utility rule file for roojspacker-1.2-vala-fast-vapis.
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/progress.make
+
+jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/fast-vapis.stamp
+
+
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi.stamp
+jsdoc/roojspacker-1.2-vala/fast-vapis.stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi.stamp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating fast VAPIs for roojspacker-1.2-vala"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/fast-vapis.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi.stamp: jsdoc/Collapse.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Collapse.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi.stamp: jsdoc/CompressWhite.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/CompressWhite.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi.stamp: jsdoc/Identifier.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Identifier.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi.stamp: jsdoc/Lang.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Lang.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi.stamp: jsdoc/Packer.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Packer.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi.stamp: jsdoc/ScopeParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/ScopeParser.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi.stamp: jsdoc/Scope.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Scope.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi.stamp: jsdoc/TextStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/TextStream.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi.stamp: jsdoc/TokenReader.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/TokenReader.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi.stamp: jsdoc/TokenStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/TokenStream.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi.stamp: jsdoc/Token.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Token.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi.stamp: jsdoc/PackerRun.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/PackerRun.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi.stamp: jsdoc/Walker.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Walker.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi.stamp: jsdoc/SymbolSet.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/SymbolSet.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi.stamp: jsdoc/DocBuilder.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocBuilder.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi.stamp: jsdoc/DocComment.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocComment.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi.stamp: jsdoc/DocParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocParser.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi.stamp: jsdoc/DocTag.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/DocTag.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi.stamp: jsdoc/PrettyPrint.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/PrettyPrint.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi.stamp: jsdoc/Symbol.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Generating fast VAPI /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac /home/alan/gitlive/roojspacker/jsdoc/Symbol.vala --fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi.stamp
+
+roojspacker-1.2-vala-fast-vapis: jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/fast-vapis.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi.stamp
+roojspacker-1.2-vala-fast-vapis: jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/build.make
+
+.PHONY : roojspacker-1.2-vala-fast-vapis
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/build: roojspacker-1.2-vala-fast-vapis
+
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/build
+
+jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/clean
+
+jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/roojspacker-1.2-vala-fast-vapis"
+ "roojspacker-1.2-vala/fast-vapis.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Collapse.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Identifier.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Lang.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Packer.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Scope.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/TextStream.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Token.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Walker.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocComment.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocParser.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocTag.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Symbol.vapi.stamp"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang )
+ include(CMakeFiles/roojspacker-1.2-vala-fast-vapis.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+CMAKE_PROGRESS_1 = 46
+CMAKE_PROGRESS_2 = 47
+CMAKE_PROGRESS_3 = 48
+CMAKE_PROGRESS_4 = 49
+CMAKE_PROGRESS_5 = 50
+CMAKE_PROGRESS_6 = 51
+CMAKE_PROGRESS_7 = 52
+CMAKE_PROGRESS_8 = 53
+CMAKE_PROGRESS_9 = 54
+CMAKE_PROGRESS_10 = 55
+CMAKE_PROGRESS_11 = 56
+CMAKE_PROGRESS_12 = 57
+CMAKE_PROGRESS_13 = 58
+CMAKE_PROGRESS_14 = 59
+CMAKE_PROGRESS_15 = 60
+CMAKE_PROGRESS_16 = 61
+CMAKE_PROGRESS_17 = 62
+CMAKE_PROGRESS_18 = 63
+CMAKE_PROGRESS_19 = 64
+CMAKE_PROGRESS_20 = 65
+CMAKE_PROGRESS_21 = 66
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+# The set of files for implicit dependencies of each language:
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/alan/gitlive/roojspacker/jsdoc/.h" "/home/alan/gitlive/roojspacker/jsdoc/.vapi"
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Utility rule file for roojspacker-1.2-vala.
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/progress.make
+
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/.vapi
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/.h
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.stamp
+jsdoc/CMakeFiles/roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c.stamp
+
+
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.stamp
+jsdoc/roojspacker-1.2-vala/stamp: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c.stamp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating sources from Vala for roojspacker-1.2-vala"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/stamp
+
+jsdoc/.vapi:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating .vapi, .h"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -C --vapi /home/alan/gitlive/roojspacker/jsdoc/.vapi --header /home/alan/gitlive/roojspacker/jsdoc/.h --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+
+jsdoc/.h: jsdoc/.vapi
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/.h
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c.stamp: jsdoc/Collapse.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Collapse.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.stamp: jsdoc/CompressWhite.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/CompressWhite.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c.stamp: jsdoc/Identifier.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Identifier.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c.stamp: jsdoc/Lang.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Lang.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c.stamp: jsdoc/Packer.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Packer.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.stamp: jsdoc/ScopeParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/ScopeParser.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c.stamp: jsdoc/Scope.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Scope.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c.stamp: jsdoc/TextStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/TextStream.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.stamp: jsdoc/TokenReader.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/TokenReader.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.stamp: jsdoc/TokenStream.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/TokenStream.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c.stamp: jsdoc/Token.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Token.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.stamp: jsdoc/PackerRun.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/PackerRun.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c.stamp: jsdoc/Walker.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Walker.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.stamp: jsdoc/SymbolSet.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/SymbolSet.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.stamp: jsdoc/DocBuilder.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocBuilder.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c.stamp: jsdoc/DocComment.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocComment.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c.stamp: jsdoc/DocParser.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocParser.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c.stamp: jsdoc/DocTag.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/DocTag.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.stamp: jsdoc/PrettyPrint.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/PrettyPrint.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.stamp
+
+jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c.stamp: jsdoc/Symbol.vala
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_22) "Generating /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -d /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc -C /home/alan/gitlive/roojspacker/jsdoc/Symbol.vala --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --pkg json-glib-1.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cmake -E touch /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c.stamp
+
+roojspacker-1.2-vala: jsdoc/CMakeFiles/roojspacker-1.2-vala
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/stamp
+roojspacker-1.2-vala: jsdoc/.vapi
+roojspacker-1.2-vala: jsdoc/.h
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.stamp
+roojspacker-1.2-vala: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c.stamp
+roojspacker-1.2-vala: jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/build.make
+
+.PHONY : roojspacker-1.2-vala
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/build: roojspacker-1.2-vala
+
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/build
+
+jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/roojspacker-1.2-vala.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/clean
+
+jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2-vala.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/roojspacker-1.2-vala"
+ "roojspacker-1.2-vala/stamp"
+ ".vapi"
+ ".h"
+ "roojspacker-1.2-vala/build/jsdoc/Collapse.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Identifier.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Lang.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Packer.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Scope.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/TextStream.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/TokenReader.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/TokenStream.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Token.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/PackerRun.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Walker.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocComment.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocParser.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/DocTag.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.stamp"
+ "roojspacker-1.2-vala/build/jsdoc/Symbol.c.stamp"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang )
+ include(CMakeFiles/roojspacker-1.2-vala.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+CMAKE_PROGRESS_1 = 24
+CMAKE_PROGRESS_2 = 25
+CMAKE_PROGRESS_3 = 26
+CMAKE_PROGRESS_4 = 27
+CMAKE_PROGRESS_5 = 28
+CMAKE_PROGRESS_6 = 29
+CMAKE_PROGRESS_7 = 30
+CMAKE_PROGRESS_8 = 31
+CMAKE_PROGRESS_9 = 32
+CMAKE_PROGRESS_10 = 33
+CMAKE_PROGRESS_11 = 34
+CMAKE_PROGRESS_12 = 35
+CMAKE_PROGRESS_13 = 36
+CMAKE_PROGRESS_14 = 37
+CMAKE_PROGRESS_15 = 38
+CMAKE_PROGRESS_16 = 39
+CMAKE_PROGRESS_17 = 40
+CMAKE_PROGRESS_18 = 41
+CMAKE_PROGRESS_19 = 42
+CMAKE_PROGRESS_20 = 43
+CMAKE_PROGRESS_21 = 44
+CMAKE_PROGRESS_22 = 45
+
--- /dev/null
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+json-glib/json-glib.h
+-
+gio/gio.h
+-
+glib/gstdio.h
+-
+sys/stat.h
+-
+sys/types.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+gio/gio.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+json-glib/json-glib.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+gio/gio.h
+-
+glib/gstdio.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c
+glib.h
+-
+glib-object.h
+-
+gio/gio.h
+-
+stdlib.h
+-
+string.h
+-
+stdio.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+gee.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+json-glib/json-glib.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c
+glib.h
+-
+glib-object.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+stdio.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
+/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c
+glib.h
+-
+glib-object.h
+-
+gee.h
+-
+stdlib.h
+-
+string.h
+-
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "C"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_C
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o"
+ "/home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c" "/home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o"
+ )
+set(CMAKE_C_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_C_TARGET_INCLUDE_PATH
+ )
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-1.2.so" "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-1.2.so.."
+ "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-1.2.so..." "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-1.2.so.."
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Include any dependencies generated for this target.
+include jsdoc/CMakeFiles/roojspacker-1.2.dir/depend.make
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/roojspacker-1.2.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.s
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o: jsdoc/CMakeFiles/roojspacker-1.2.dir/flags.make
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Building C object jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o -c /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.i"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c > CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.i
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.s"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c -o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.s
+
+# Object files for target roojspacker-1.2
+roojspacker__1_2_OBJECTS = \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o" \
+"CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o"
+
+# External object files for target roojspacker-1.2
+roojspacker__1_2_EXTERNAL_OBJECTS =
+
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/build.make
+jsdoc/libroojspacker-1.2.so..: /usr/lib/x86_64-linux-gnu/libgio-2.0.so
+jsdoc/libroojspacker-1.2.so..: /usr/lib/x86_64-linux-gnu/libgobject-2.0.so
+jsdoc/libroojspacker-1.2.so..: /usr/lib/x86_64-linux-gnu/libglib-2.0.so
+jsdoc/libroojspacker-1.2.so..: jsdoc/CMakeFiles/roojspacker-1.2.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Linking C shared library libroojspacker-1.2.so"
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/roojspacker-1.2.dir/link.txt --verbose=$(VERBOSE)
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -E cmake_symlink_library libroojspacker-1.2.so.. libroojspacker-1.2.so... libroojspacker-1.2.so
+
+jsdoc/libroojspacker-1.2.so...: jsdoc/libroojspacker-1.2.so..
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/libroojspacker-1.2.so...
+
+jsdoc/libroojspacker-1.2.so: jsdoc/libroojspacker-1.2.so..
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/libroojspacker-1.2.so
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/roojspacker-1.2.dir/build: jsdoc/libroojspacker-1.2.so
+
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2.dir/build
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/roojspacker-1.2.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2.dir/clean
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/roojspacker-1.2.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/roojspacker-1.2.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o"
+ "CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o"
+ "libroojspacker-1.2.pdb"
+ "libroojspacker-1.2.so.."
+ "libroojspacker-1.2.so"
+ "libroojspacker-1.2.so..."
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang C)
+ include(CMakeFiles/roojspacker-1.2.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o
+ /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.c
+
+jsdoc/CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o: jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.c
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# compile C with /usr/bin/cc
+C_FLAGS = -Wno-incompatible-pointer-types -g -fPIC -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/gee-0.8 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/json-glib-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread
+
+C_DEFINES = -Droojspacker_1_2_EXPORTS
+
+C_INCLUDES =
+
--- /dev/null
+/usr/bin/cc -fPIC -Wno-incompatible-pointer-types -g -shared -Wl,-soname,libroojspacker-1.2.so... -o libroojspacker-1.2.so.. CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Collapse.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/CompressWhite.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Identifier.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Lang.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Packer.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/ScopeParser.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Scope.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TextStream.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenReader.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/TokenStream.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Token.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PackerRun.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Walker.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/SymbolSet.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocBuilder.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocComment.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocParser.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/DocTag.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.c.o CMakeFiles/roojspacker-1.2.dir/roojspacker-1.2-vala/build/jsdoc/Symbol.c.o -lgee-0.8 -lgthread-2.0 -ljson-glib-1.0 /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libglib-2.0.so
--- /dev/null
+CMAKE_PROGRESS_1 = 3
+CMAKE_PROGRESS_2 = 4
+CMAKE_PROGRESS_3 = 5
+CMAKE_PROGRESS_4 = 6
+CMAKE_PROGRESS_5 = 7
+CMAKE_PROGRESS_6 = 8
+CMAKE_PROGRESS_7 = 9
+CMAKE_PROGRESS_8 = 10
+CMAKE_PROGRESS_9 = 11
+CMAKE_PROGRESS_10 = 12
+CMAKE_PROGRESS_11 = 13
+CMAKE_PROGRESS_12 = 14
+CMAKE_PROGRESS_13 = 15
+CMAKE_PROGRESS_14 = 16
+CMAKE_PROGRESS_15 = 17
+CMAKE_PROGRESS_16 = 18
+CMAKE_PROGRESS_17 = 19
+CMAKE_PROGRESS_18 = 20
+CMAKE_PROGRESS_19 = 21
+CMAKE_PROGRESS_20 = 22
+CMAKE_PROGRESS_21 = 23
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+# The set of files for implicit dependencies of each language:
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/alan/gitlive/roojspacker/jsdoc/.gir" "/home/alan/gitlive/roojspacker/jsdoc/.vapi"
+ "/home/alan/gitlive/roojspacker/jsdoc/.h" "/home/alan/gitlive/roojspacker/jsdoc/.vapi"
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/alan/gitlive/roojspacker
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/alan/gitlive/roojspacker
+
+# Utility rule file for typelib.
+
+# Include the progress variables for this target.
+include jsdoc/CMakeFiles/typelib.dir/progress.make
+
+jsdoc/CMakeFiles/typelib: jsdoc/.typelib
+
+
+jsdoc/.typelib: jsdoc/.gir
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating .typelib"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/g-ir-compiler -o /home/alan/gitlive/roojspacker/jsdoc/.typelib /home/alan/gitlive/roojspacker/jsdoc/.gir
+
+jsdoc/.vapi:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/alan/gitlive/roojspacker/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating .vapi, .gir, .h"
+ cd /home/alan/gitlive/roojspacker/jsdoc && /usr/bin/valac -C --vapi /home/alan/gitlive/roojspacker/jsdoc/.vapi --gir .gir --library roojspacker-1.2-vala --shared-library libroojspacker-1.2-vala.so --header /home/alan/gitlive/roojspacker/jsdoc/.h --pkg glib-2.0 --pkg gobject-2.0 --pkg gee-0.8 --pkg posix --pkg gio-2.0 --target-glib=2.38 -g --thread --vapidir=/home/alan/gitlive/roojspacker/vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Collapse.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/CompressWhite.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Identifier.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Lang.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Packer.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/ScopeParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Scope.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TextStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenReader.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/TokenStream.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Token.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PackerRun.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Walker.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/SymbolSet.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocBuilder.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocComment.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocParser.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/DocTag.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/PrettyPrint.vapi --use-fast-vapi /home/alan/gitlive/roojspacker/jsdoc/roojspacker-1.2-vala/build/jsdoc/Symbol.vapi
+
+jsdoc/.gir: jsdoc/.vapi
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/.gir
+
+jsdoc/.h: jsdoc/.vapi
+ @$(CMAKE_COMMAND) -E touch_nocreate jsdoc/.h
+
+typelib: jsdoc/CMakeFiles/typelib
+typelib: jsdoc/.typelib
+typelib: jsdoc/.vapi
+typelib: jsdoc/.gir
+typelib: jsdoc/.h
+typelib: jsdoc/CMakeFiles/typelib.dir/build.make
+
+.PHONY : typelib
+
+# Rule to build all files generated by this target.
+jsdoc/CMakeFiles/typelib.dir/build: typelib
+
+.PHONY : jsdoc/CMakeFiles/typelib.dir/build
+
+jsdoc/CMakeFiles/typelib.dir/clean:
+ cd /home/alan/gitlive/roojspacker/jsdoc && $(CMAKE_COMMAND) -P CMakeFiles/typelib.dir/cmake_clean.cmake
+.PHONY : jsdoc/CMakeFiles/typelib.dir/clean
+
+jsdoc/CMakeFiles/typelib.dir/depend:
+ cd /home/alan/gitlive/roojspacker && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker /home/alan/gitlive/roojspacker/jsdoc /home/alan/gitlive/roojspacker/jsdoc/CMakeFiles/typelib.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : jsdoc/CMakeFiles/typelib.dir/depend
+
--- /dev/null
+file(REMOVE_RECURSE
+ "CMakeFiles/typelib"
+ ".typelib"
+ ".vapi"
+ ".gir"
+ ".h"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang )
+ include(CMakeFiles/typelib.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.12
+
--- /dev/null
+CMAKE_PROGRESS_1 = 71
+CMAKE_PROGRESS_2 = 72
+
--- /dev/null
+#
+#
+# Library Target: linked against executable and tests.
+
+# Generate a config.vala file, which can be used for version
+# information and feature detection.
+#configure_file(
+# "${CMAKE_CURRENT_SOURCE_DIR}/config.vala.in"
+# "${CMAKE_CURRENT_BINARY_DIR}/config.vala"
+# @ONLY)
+
+# You can re-type these if you prefer; putting them in variables makes
+# it easier to reuse them, and helps explain what each command needs
+# to include.
+
+# The name of the C header, without the trailing ".h"
+set(ROOJSPACKER_HEADER ${PROJECT_NAME})
+
+# These are the Vala sources you want to build your library out of.
+set(ROOJSPACKER_VALA_SOURCES
+ Collapse.vala
+ CompressWhite.vala
+ Identifier.vala
+ Lang.vala
+ Packer.vala
+ ScopeParser.vala
+ Scope.vala
+ TextStream.vala
+ TokenReader.vala
+ TokenStream.vala
+ Token.vala
+ PackerRun.vala
+ Walker.vala
+ SymbolSet.vala
+ DocBuilder.vala
+ DocComment.vala
+ DocParser.vala
+ DocTag.vala
+ PrettyPrint.vala
+ Symbol.vala
+)
+
+# Any dependencies. Note that it isn't actually necessary to add
+# glib-2.0 or gobject-2.0 (it is done implicitly), but for this
+# template project we don't actually depend on anything else, so we
+# added it for illustrative purposes.
+set(ROOJSPACKER_VALA_PACKAGES
+ glib-2.0
+ gobject-2.0
+ gee-0.8
+ posix
+ gio-2.0
+ json-glib-1.0
+)
+
+# Compile Vala -> C
+vala_precompile_target(
+ "${ROOJSPACKER_LIBRARY_NAME}-vala"
+ ROOJSPACKER_C_SOURCES
+ PACKAGES ${ROOJSPACKER_VALA_PACKAGES}
+ VAPI "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.vapi"
+# GIR "${ROOJSPACKER_GIR_NAME}.gir"
+ HEADER "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.h"
+ ${ROOJSPACKER_VALA_SOURCES})
+
+# Compile the library.
+#
+# By default, we create and install a shared library. If you don't
+# want to do that, you can change "SHARED" in the below function call
+# to "STATIC".
+add_library(${ROOJSPACKER_LIBRARY_NAME}
+ SHARED
+ ${ROOJSPACKER_C_SOURCES})
+
+# Make sure the Vala sources are compiled to C before attempting to
+# build the library.
+add_dependencies("${ROOJSPACKER_LIBRARY_NAME}" "${ROOJSPACKER_LIBRARY_NAME}-vala")
+
+# Generate a .gitignore
+file(WRITE ".gitignore" "# Automatically generated by CMake, do not modify.\n")
+foreach(file
+ ".gitignore"
+ "${CMAKE_SHARED_LIBRARY_PREFIX}${ROOJSPACKER_LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}*"
+ "${CMAKE_STATIC_LIBRARY_PREFIX}${ROOJSPACKER_LIBRARY_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}"
+ "${CMAKE_SHARED_LIBRARY_PREFIX}${ROOJSPACKER_LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${ROOJSPACKER_VERSION_API}"
+ "${CMAKE_SHARED_LIBRARY_PREFIX}${ROOJSPACKER_LIBRARY_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${ROOJSPACKER_VERSION_API}.${ROOJSPACKER_VERSION_REVISION}"
+ "${ROOJSPACKER_PKG_NAME}.pc"
+ "config.vala")
+ file(APPEND ".gitignore" "/${file}\n")
+endforeach(file)
+foreach(file ${ROOJSPACKER_C_SOURCES})
+ string(REPLACE "${CMAKE_CURRENT_BINARY_DIR}/" "" file ${file})
+ file(APPEND ".gitignore" "/${file}\n")
+endforeach(file)
+
+# Define the gettext domain
+#set_property (TARGET ${ROOJSPACKER_LIBRARY_NAME}
+# APPEND PROPERTY COMPILE_DEFINITIONS GETTEXT_PACKAGE="${GETTEXT_PACKAGE}")
+
+# If you don't want to build and install a shared library, comment out
+# (or remove) everything below this point.
+
+# Set the library's version information
+set_target_properties (${ROOJSPACKER_LIBRARY_NAME} PROPERTIES
+ SOVERSION "${ROOJSPACKER_SOVERSION_CURRENT}.${ROOJSPACKER_SOVERSION_REVISION}.${ROOJSPACKER_SOVERSION_AGE}"
+ VERSION "${ROOJSPACKER_SOVERSION_CURRENT}.${ROOJSPACKER_SOVERSION_REVISION}")
+
+# GObject Introspection support
+#find_package(GObjectIntrospection REQUIRED)
+# Gir Repositories support
+#find_file(GIREPOSITORY_FILE GObject-2.0.gir /usr/share/gir-1.0 )
+#if(GIREPOSITORY_FILE)
+#else()
+# message(FATAL_ERROR "Package libgirepository-dev not found.")
+#endif()
+
+# We already had valac write a GIR, now we need to compile it to a
+# typelib.
+#gobject_introspection_compile(
+# "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_GIR_NAME}.typelib"
+# "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_GIR_NAME}.gir")
+
+# Telling CMake you want to install a file doesn't actually get it to
+# *build* that file. The workaround is to add a custom target which
+# is always built and depens on the file we want to install.
+#add_custom_target(typelib ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_GIR_NAME}.typelib")
+
+# Install our typelib
+#install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_GIR_NAME}.typelib"
+# DESTINATION "${GI_TYPELIB_DIR}")
+
+# Install our GIR
+#install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_GIR_NAME}.gir"
+# DESTINATION "${GI_REPOSITORY_DIR}")
+
+# Install our VAPI
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.vapi
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/vala/vapi)
+
+# Install the library
+install (TARGETS ${ROOJSPACKER_LIBRARY_NAME}
+ RUNTIME DESTINATION bin ${CMAKE_INSTALL_BINDIR} # On Windows, the DLL goes in the same place as the executables
+ LIBRARY DESTINATION lib ${CMAKE_INSTALL_LIBDIR} # This is where shared libraries (*.so on Linux, *.dynlib on OS X)
+ ARCHIVE DESTINATION lib ${CMAKE_INSTALL_LIBDIR}) # Finally, this is where static libraries (*.a) go
+
+# Install the C header
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.h
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/)
+
+# Install our VAPI
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.vapi
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/vala/vapi)
+
+# Generate and install a pkg-config file
+configure_file (
+ "${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.pc"
+ @ONLY)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${ROOJSPACKER_PKG_NAME}.pc
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+
+# Generate documentation
+find_package(Valadoc)
+if(${VALADOC_FOUND})
+ valadoc_generate(html
+ PACKAGE_NAME ${ROOJSPACKER_PKG_NAME}
+ PACKAGE_VERSION "${ROOJSPACKER_VERSION_MAJOR}.${ROOJSPACKER_VERSION_MINOR}.${ROOJSPACKER_VERSION_REVISION}"
+ SOURCES ${ROOJSPACKER_VALA_SOURCES}
+ PACKAGES ${ROOJSPACKER_VALA_PACKAGES})
+ valadoc_generate(devhelp
+ DOCLET devhelp
+ PACKAGE_NAME ${ROOJSPACKER_PKG_NAME}
+ PACKAGE_VERSION "${ROOJSPACKER_VERSION_MAJOR}.${ROOJSPACKER_VERSION_MINOR}.${ROOJSPACKER_VERSION_REVISION}"
+ SOURCES ${ROOJSPACKER_VALA_SOURCES}
+ PACKAGES ${ROOJSPACKER_VALA_PACKAGES})
+
+ install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/devhelp/${ROOJSPACKER_PKG_NAME}"
+ DESTINATION "${CMAKE_INSTALL_DATADIR}/devhelp/books")
+ add_custom_target(doc ALL
+ DEPENDS html devhelp)
+endif()
\ No newline at end of file
--- /dev/null
+
+/**
+ *
+ * base class for parsing segments of token array..
+ *
+ *
+ * We want to make parsing the whole thing easy..
+ *
+ * so we do various tricks:
+ *
+ *
+ * a) white space collased
+ * wsPrefix
+ * b) toks
+ * { } - collapse into first element.
+ ( ) - collapse into first element.
+ [ ] - collapse into first element.
+ * c) items = , seperation within the above..
+ *
+ * usage: x = new Collapse(token_array)
+ *
+ *
+ *
+ *
+ */
+
+namespace JSDOC {
+
+ public class Collapse : TokenStream {
+
+ Packer packer;
+ string filename;
+
+ public Collapse(Gee.ArrayList<Token> tokens, Packer pk, string filename)
+ {
+ base(tokens);
+
+ this.packer = pk;
+ this.filename = filename;
+
+
+
+ this.spaces();
+
+ var ar = this.collapse(this.tokens);
+
+ this.tokens = ar;
+
+ // console.dump(ar);
+
+ }
+
+ // put spaces into prefix of tokens..
+
+ void spaces ()
+ {
+ var ar = new Gee.ArrayList<Token>();
+ var pref = new Gee.ArrayList<Token>();
+
+
+
+ for (var i = 0; i < this.tokens.size; i ++) {
+ var tok = this.tokens[i];
+ if (tok.isType(TokenType.COMM) || tok.isType(TokenType.WHIT)) {
+ pref.add(tok);
+ continue;
+ }
+ tok.prefix = "";
+ if (pref.size > 0) {
+ foreach(var e in pref) {
+ tok.prefix += e.data;
+ }
+ pref = new Gee.ArrayList<Token>(); // reset pref..
+ }
+
+ ar.add(tok);
+
+
+
+ }
+ this.tokens = ar;
+
+ }
+
+
+
+ Gee.ArrayList<Token> collapse(Gee.ArrayList<Token> ar)
+ {
+
+ var st = new TokenStream(ar);
+ var ret = new Gee.ArrayList<Token>();
+ var last_is_object_def = false;
+
+ while (true) {
+ var tok = st.look(1,true);
+ if (tok == null) {
+ // Seed.print(TokenStream.toString(ret));
+ return ret;
+ }
+ // console.log(tok.data);
+
+ //print("COL: %s\n", tok.asString());
+
+ switch(tok.type) {
+ case TokenType.VOID:
+ return ret; //EOF
+
+
+ case TokenType.KEYW:
+ case TokenType.TOKN:
+ case TokenType.NAME:
+ case TokenType.STRN:
+ case TokenType.NUMB:
+ case TokenType.REGX:
+ if (last_is_object_def) {
+
+ this.packer.logError(Packer.ResultType.err, this.filename, tok.line,
+ "Syntax error - found non punctuation after object close brace");
+
+
+
+ //GLib.error("Syntax error - found non punctuation after object close brace\n%s", tok.asString());
+ }
+
+ var nn = st.next();
+ if (nn != null) {
+ ret.add(nn);
+ }
+ last_is_object_def = false;
+ continue;
+
+ case TokenType.PUNC:
+ switch (tok.data) {
+ case "[":
+ case "{":
+ case "(":
+ last_is_object_def = false;
+ var start = st.cursor;
+ //st.next(); << no need to shift, balance will start at first character..
+
+ var add = st.balance(tok.name);
+
+ // print("BALANCE returned %d items\n", add.size);
+
+
+ // if (!add) {
+ //console.dump(tok);
+ //console.dump(start + '...' + st.cursor);
+ //console.dump(st.tokens);
+
+ //}
+ if (add.size > 0) {
+ add.remove_at(0); // remove the first element... (as it's the
+ }
+ //Seed.print("ADD");
+ //Seed.print(JSON.stringify(add, null,4));
+
+
+
+ var toks = add.size > 0 ? this.collapse(add) : add;
+
+ tok.items = new Gee.ArrayList<Gee.ArrayList<Token>>(); //?? needed?
+ tok.props = new Gee.HashMap<string,TokenKeyMap>();
+
+
+ if (tok.data != "{") {
+ // paramters or array elements..
+ tok.items = this.toItems(toks, ",");
+ if (tok.data == "]") { // ) can be folowed with lots of things...
+ last_is_object_def = true;
+ }
+ } else {
+ // check for types.. it could be a list of statements.. or object
+ // format "{" "xXXX" ":" << looks for the ':'.. seems to work.. not sure if it's foolproof...
+
+ var ost = new TokenStream(toks);
+ //console.dump(ost.look(2,true) );
+ if (ost.look(2,true) != null && ost.look(2,true).data == ":") {
+ // object properties...
+ this.toProps(toks,tok);
+ last_is_object_def = true;
+ } else {
+ // list of statemetns..
+ tok.items = this.toItems(toks, ";{");;
+ }
+
+
+ }
+
+
+
+
+
+
+
+ //Seed.print(" ADD : " + add.length + " ITEMS: " + tok.items.length);
+
+ ret.add(tok);
+
+ continue;
+
+ default:
+ last_is_object_def = false;
+ ret.add(st.next());
+ continue;
+ }
+ print("OOPS");
+ continue;
+ default :
+ print("OOPS" + tok.type.to_string());
+ continue;
+ }
+ }
+
+
+
+
+
+
+
+
+
+
+ }
+ // array of arrays of tokens
+ Gee.ArrayList<Gee.ArrayList<Token>> toItems(Gee.ArrayList<Token> ar, string sep)
+ {
+ var ret = new Gee.ArrayList<Gee.ArrayList<Token>>() ;
+ var g = new Gee.ArrayList<Token>() ;
+
+ for (var i = 0; i < ar.size; i ++) {
+ if (sep.index_of(ar.get(i).data) < 0) {
+ g.add(ar.get(i));
+ continue;
+ }
+ // var a=..., b =...
+ if ((ar.get(i).data != ";") && g.size> 0 && (g[0].name == TokenName.VAR)) {;
+ g.add(ar.get(i));
+ continue;
+ }
+
+ g.add(ar.get(i));
+ ret.add(g);
+ g = new Gee.ArrayList<Token>() ;
+
+ }
+ // last..
+ if (g.size > 0) {
+ ret.add(g);
+ }
+ return ret;
+
+ }
+
+ Gee.HashMap<string,TokenKeyMap> toProps (Gee.ArrayList<Token> ar, Token tok)
+ {
+
+ var ret = new Gee.HashMap<string,TokenKeyMap>();
+
+ var keyseq = new Gee.ArrayList<string>();
+
+ var g = new TokenKeyMap();
+
+
+ var k = "";
+ var state = 0;
+ for (var i = 0; i < ar.size; i ++) {
+
+ switch(state) {
+ case 0:
+ k = ar.get(i).data;
+ g.key = ar.get(i);
+ keyseq.add(k);
+ state = 1;
+ continue;
+ case 1:
+ state =2; // should be ':'
+ continue;
+ case 2:
+ g.vals.add( ar.get(i));
+ if ( ar.get(i).data != ",") {
+ continue;
+ }
+ ret.set(k, g);
+ g = new TokenKeyMap();
+ state = 0;
+ continue;
+
+ }
+ }
+ // last.. - if g.val.length is 0 then it's a trailing ','...
+ // we should really throw a syntax error in that case..
+ if (k.length > 0 && g.vals.size > 0) {
+ ret.set(k, g);
+ }
+ tok.props = ret;
+ tok.keyseq = keyseq;
+ return ret;
+
+
+ }
+
+ }
+
+}
--- /dev/null
+
+/**
+ *
+ * pack a javascript file, and return a shorter version!
+ *
+ * a bit picky at present with ; and crlf reading...
+ * @arg ts {TokenStream}
+ @arg packer {Packer}
+ */
+namespace JSDOC
+{
+ public errordomain CompressWhiteError {
+ BRACE
+ }
+
+ public string CompressWhite (TokenStream ts, Packer packer, bool keepWhite) // throws CompressWhiteError,TokenStreamError
+ {
+ //keepWhite = keepWhite || false;
+ ts.rewind();
+ //ts.dumpAllFlat(); GLib.Process.exit(1);
+
+ //var str = File.read(fn);
+ var rep_var = 1;
+
+
+
+ while (true) {
+ var tok = ts.next();
+ if (tok == null) {
+ break;
+ }
+ if (tok.type == TokenType.WHIT) {
+
+ continue;
+ //if (tok._isDoc) {
+ // continue;
+ //}
+ // just spaces, not \n!
+ //if (tok.data.indexOf("\n") < 0) {
+ // continue;
+ // }
+
+
+ }
+ if (tok.data == "}") {
+
+ if (ts.lookTok(0).type == TokenType.NAME && ts.look(1,true).name == TokenName.NEWLINE) {
+ ts.look(0,true).outData = ts.look(0,true).data+"\n";
+ }
+ // restore..
+
+ continue;
+ }
+ // add semi-colon's where linebreaks are used... - not foolproof yet.!
+ if (tok.type == TokenType.NAME) {
+ //var tokident = ts.look(-1).data + tok.data + ts.look(1).data + ts.look(2).data;
+ // a = new function() {}
+ if (ts.lookTok(1).data == "=" && ts.lookTok(2).name == TokenName.NEW &&
+ ts.lookTok(3).name == TokenName.FUNCTION) {
+ // freeze time..
+ var cu = ts.cursor;
+
+ ts.balance(TokenName.LEFT_PAREN); //"(");
+
+
+ ts.balance(TokenName.LEFT_CURLY); //"{");
+ // if next is not ';' -> make it so...
+
+ if (ts.lookTok(1).data != ";" && ts.lookTok(1).data != "}" && ts.lookTok(1).name == TokenName.NEWLINE) {
+ ts.look(0,true).outData = ts.lookTok(0).data +";";
+ }
+ // restore..
+ ts.cursor = cu;
+ continue;
+ }
+ // a = function() { ... -- add a semi colon a tthe end if not one there..
+
+ if (ts.lookTok(1).data == "=" && ts.lookTok(2).name == TokenName.FUNCTION) {
+ // freeze time..
+ //println("got = function() ");
+ tok = ts.nextTok();
+ tok = ts.nextTok();
+
+ //tok = ts.next();
+ var cu = ts.cursor;
+ //print("NEXT = should be brac: %s\n", ts.lookTok(1).asString());
+
+ //print("cursor = %d", ts.cursor);
+
+ if (ts.lookTok(1).data != "(" || ts.balance(TokenName.LEFT_PAREN /*"("*/).size < 1 ){
+ print("balance ( issue on line %d\n", ts.toArray().get(cu).line);
+ ts.dump(cu-40, cu+2);
+ print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
+ ts.dump(cu+2, cu+40);
+
+ throw new CompressWhiteError.BRACE( "could not find end lbrace!!!" );
+ }
+ //print("cursor = %d", ts.cursor);
+ //print("CUR = should be ): %s\n", ts.lookTok(0).asString());
+
+ tok = ts.nextTok();
+ //print("CUR = should be {: %s\n", ts.lookTok(0).asString());
+ cu = ts.cursor; // set the cursor to here.. so the next bit of the code will check inside the method.
+
+ //print("cursor = %d", ts.cursor);
+ // print("AFTER BALANCE (");
+ //ts.dump(cu, ts.cursor);
+
+
+ ts.cursor--; // cursor at the (
+ if (tok.data != "{" || ts.balance(TokenName.LEFT_CURLY /*"("*/).size < 1 ){
+
+ ts.dump(cu-40, cu);
+ print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
+ ts.dump(cu, cu+40);
+
+ throw new CompressWhiteError.BRACE( "could not find end lbrace!!!");
+ }
+ //print('FN: '+ts.tokens[cu].toString());
+ //print('F1: '+ts.lookTok(1).toString());
+ //print('F2: '+ts.look(1,true).toString());
+
+ // if next is not ';' -> make it so...
+ // although this var a=function(){},v,c; causes
+ if (ts.lookTok(1).data != ";" && ts.lookTok(1).data != "}" && ts.look(1,true).name == TokenName.NEWLINE) {
+
+ ts.look(0,true).outData = ts.look(0,true).data+";";
+ // print("ADDING SEMI: " + ts.look(0).toString());
+ //ts.dump(cu, ts.cursor+2);
+ }
+
+ //ts.dump(cu, ts.cursor+2);
+ // restore..
+ ts.cursor = cu;
+ continue;
+ }
+ // next item is a name..
+ if ((ts.lookTok(1).type == TokenType.NAME || ts.lookTok(1).type == TokenType.KEYW )
+ && ts.look(1,true).name == TokenName.NEWLINE) {
+ // preserve linebraek
+ ts.look(0,true).outData = ts.look(0,true).data+"\n";
+ }
+ // method call followed by name..
+ if (ts.lookTok(1).data == "(") {
+ var cu = ts.cursor;
+
+ ts.balance(TokenName.LEFT_PAREN); //"(");
+ // although this var a=function(){},v,c; causes
+
+ if (ts.lookTok(1).type == TokenType.NAME && ts.look(1,true).name == TokenName.NEWLINE) {
+
+ ts.look(0,true).outData = ts.look(0,true).data+"\n";
+ }
+ // restore..
+ ts.cursor = cu;
+ continue;
+ }
+
+
+ // function a () { ... };
+ /*
+ if (ts.look(-1).isTypeN(Script.TOKfunction) && ts.look(1).isTypeN(Script.TOKlparen)) {
+ // freeze time..
+ //println("got = function() ");
+ var cu = ts.cursor;
+
+ ts.balance("lparen");
+ ts.balance("lbrace");
+ // if next is not ';' -> make it so...
+ // although this var a=function(){},v,c; causes
+ if (!ts.look(1).isData(';') && !ts.look(1).isData('}') && ts.look(1,true).isLineBreak()) {
+ ts.cur().outData = ts.cur().data+";";
+ }
+ // restore..
+ ts.cursor = cu;
+ continue;
+ }
+ */
+
+ // a = { ....
+
+ if (ts.lookTok(1).data == "=" && ts.lookTok(2).data == "{") {
+ // freeze time..
+ //println("----------*** 3 *** --------------");
+ var cu = ts.cursor;
+ ;
+ if (ts.balance(TokenName.LEFT_CURLY /*"{" */).size < 1 ){
+
+ ts.dump(cu-40, cu);
+ print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
+ ts.dump(cu, cu+40);
+
+ throw new CompressWhiteError.BRACE("could not find end lbrace!!!");
+ }
+ // if next is not ';' -> make it so...
+
+ if (ts.lookTok(1).data != ";" && ts.lookTok(1).data != "}" && ts.look(1,true).name==TokenName.NEWLINE) {
+ ts.look(0,true).outData = ts.look(0,true).data +";";
+ }
+ // restore..
+ ts.cursor = cu;
+ continue;
+ }
+
+ // any more??
+ // a = function(....) { }
+
+ }
+
+
+
+
+ //println("got Token: " + tok.type);
+
+
+
+ switch(tok.name) {
+ // things that need space appending
+ case TokenName.FUNCTION:
+ case TokenName.BREAK:
+ case TokenName.CONTINUE:
+ // if next item is a identifier..
+ if (ts.lookTok(1).type == TokenType.NAME || Regex.match_simple("^[a-z]+$", ts.lookTok(1).data, GLib.RegexCompileFlags.CASELESS) ) { // as include is a keyword for us!!
+ tok.outData = tok.data + " ";
+ }
+ continue;
+
+
+ case TokenName.RETURN: // if next item is not a semi; (or }
+ if (ts.lookTok(1).data == ";" || ts.lookTok(1).data == "}") {
+ continue;
+ }
+ tok.outData = tok.data + " ";
+
+ continue;
+
+
+ case TokenName.ELSE: // if next item is not a semi; (or }
+ if (ts.lookTok(1).name != TokenName.IF) {
+ continue;
+ }
+ // add a space if next element is 'IF'
+ tok.outData = tok.data + " ";
+ continue;
+
+ case TokenName.INCREMENT: //"++": // if previous was a plus or next is a + add a space..
+ case TokenName.DECREMENT: //"--": // if previous was a - or next is a - add a space..
+
+ var p = (tok.data == "--" ? "-" : "+");
+
+ if (ts.lookTok(1).data == p) {
+ tok.outData = tok.data + " ";
+ }
+ if (ts.lookTok(-1).data == p) {
+ tok.outData = " " + tok.data;
+
+ }
+ continue;
+
+ case TokenName.IN: // before and after??
+ case TokenName.INSTANCEOF:
+
+ tok.outData = " " + tok.data + " ";
+ continue;
+
+ case TokenName.VAR: // always after..
+ case TokenName.NEW:
+ case TokenName.DELETE:
+ case TokenName.THROW:
+ case TokenName.CASE:
+ case TokenName.CONST:
+ case TokenName.VOID:
+ tok.outData = tok.data + " ";
+
+ continue;
+
+ case TokenName.TYPEOF: // what about typeof(
+ if (ts.lookTok(1).data != "(") {
+ tok.outData = tok.data + " ";
+ }
+ continue;
+ case TokenName.SEMICOLON: //";":
+ //remove semicolon before brace --
+ //if(ts.look(1).isTypeN(Script.TOKrbrace)) {
+ // tok.outData = '';
+ // }
+ continue;
+
+ default:
+ continue;
+ }
+ }
+
+ ts.rewind();
+
+ // NOW OUTPUT THE THING.
+ //var f = new File(minfile, File.NEW);
+
+ var outstr = "";
+ var outoff = 0;
+ //try { out.length = ts.slen; } catch (e) {} // prealloc.
+
+
+ Token tok;
+ while (true) {
+
+ tok = keepWhite ? ts.next() : ts.nextTok();
+
+ if (tok == null) {
+ break;
+ }
+ if (tok.type == TokenType.COMM) {
+ tok.outData = "\n";
+ }
+
+ ///print(tok.type + ':' + tok.data);
+
+ if (tok.type == TokenType.NAME &&
+ tok.identifier != null &&
+ tok.identifier.mungedValue.length > 0) {
+ //f.write(tok.identifier.mungedValue);
+ //print("MUNGED: " + tok.identifier.mungedValue);
+ outstr += tok.identifier.mungedValue;
+ continue;
+ }
+
+ // at this point we can apply a text translation kit...
+ // NOT SUPPORTED..
+ //if ((tok.type == "STRN") && (tok.name== "DOUBLE_QUOTE")) {
+ // if (packer && packer.stringHandler) {
+ // outstr += packer.stringHandler(tok);
+ // continue;
+ // }
+ //}
+
+ outstr += tok.outData != "" ? tok.outData : tok.data;
+
+ if ((tok.name == TokenName.SEMICOLON || tok.name == TokenName.RIGHT_CURLY) && (outstr.length - outoff > 255)) {
+ outoff = outstr.length;
+ outstr += "\n";
+ }
+ }
+ //f.close();
+ /*
+ // remove the last ';' !!!
+ if (out.substring(out.length-1) == ';') {
+ return out.substring(0,out.length-1);
+ }
+ */
+ return outstr;
+
+ }
+
+}
\ No newline at end of file
--- /dev/null
+
+
+
+namespace JSDOC
+{
+
+ class DocBuilder : Object
+ {
+
+
+ // extractable via JSON?
+ public string VERSION = "1.0.0" ;
+
+ private SymbolSet symbolSet;
+
+ private Packer packer;
+
+ public DocBuilder (Packer p)
+ {
+
+
+ GLib.debug("Roo JsDoc Toolkit started at %s ", (new GLib.DateTime.now_local()).format("Y/m/d H:i:s"));
+
+ this.packer = p;
+
+ //if (PackerRun.singleton().opt_tmp_dir != null && !FileUtils.test(PackerRun.singleton().opt_tmp_dir, GLib.FileTest.IS_DIR)) {
+ // Posix.mkdir(PackerRun.singleton().opt_tmp_dir, 0700);
+ //}
+
+
+ this.parseSrcFiles();
+
+ this.symbolSet = DocParser.symbols();
+
+ // this currently uses the concept of publish.js...
+
+ this.publish();
+
+
+ }
+
+
+
+ /**
+ * Parse the source files.
+ *
+ */
+
+ private void parseSrcFiles()
+ {
+
+
+
+ //var useCache = PackerRun.opt_cache_dir == null ;
+ //var cacheFile = "";
+
+ for (var i = 0, l = this.packer.files.size; i < l; i++) {
+
+ var srcFile = this.packer.files.get(i);
+ GLib.debug("Parsing source File: %s", srcFile);
+ /*
+ if (useCache) {
+
+ cacheFile = PackerRun.opt_cache_dir + srcFile.replace("/", '_') + ".cache";
+
+ //print(cacheFile);
+ // disabled at present!@!!
+
+ if (GLib.FileUtils.test(cacheFile, GLib.FileTest.EXISTS)) {
+ // check filetime?
+ var cache_mt = File.new_for_path (cacheFile).queryInfo(FileAttribute.TIME_MODIFIED,
+ GLib.FileQueryInfoFlags.NONE, null).
+ get_modification_time();
+ var original_mt = File.new_for_path (sourceInfo).queryInfo(FileAttribute.TIME_MODIFIED,
+ GLib.FileQueryInfoFlags.NONE, null).
+ get_modification_time();
+ // this check does not appear to work according to the doc's - need to check it out.
+
+ if (cache_mt > original_mt) { // cached time > original time!
+ // use the cached mtimes..
+ GLib.debug("Read %s" , cacheFile);
+ var parser = new Json.Parser();
+ parser.load_from_file(cacheFile);
+ var ar = parser.get_root ().get_array();
+
+ for(var i = 0;i < ar.get_length();i++) {
+ var o = ar.get_object_element(i);
+ var sym = JSON.gobject_from_data(typeof(Symbol), o) as Symbol;
+ DocParser.symbols.add(sym);
+ }
+ continue;
+ }
+ }
+ }
+ */
+ var src = "";
+ try {
+ GLib.debug("reading : %s" , srcFile);
+ GLib.FileUtils.get_contents(srcFile, out src);
+ }
+ catch(GLib.FileError e) {
+ GLib.debug("Can't read source file '%s': %s", srcFile, e.message);
+ continue;
+ }
+
+
+
+ var tr = new TokenReader(this.packer);
+ tr.keepDocs = true;
+ tr.keepWhite = true;
+ tr.keepComments = true;
+ tr.sepIdents = false;
+ tr.collapseWhite = false;
+ tr.filename = src;
+
+
+ var toks = tr.tokenize( new TextStream(src) );
+ if (PackerRun.singleton().opt_dump_tokens) {
+ toks.dump();
+ return;
+ //GLib.Process.exit(0);
+ }
+
+
+ var ts = new TokenStream(toks.tokens);
+
+
+
+
+ DocParser.parse(ts, srcFile);
+ /*
+ if (useCache) {
+
+ var ar = DocParser.symbolsToObject(srcFile);
+
+ var builder = new Json.Builder ();
+ builder.begin_array ();
+ for (var i=0;i<ar.size;i++) {
+
+ builder.add_object_value (ar.get(i));
+ }
+ builder.end_array ();
+ Json.Generator generator = new Json.Generator ();
+ Json.Node root = builder.get_root ();
+ generator.set_root (root);
+ generator.pretty= true;
+ generator.ident = 2;
+ generator.to_file(cacheFile);
+
+
+
+ }
+ */
+ }
+
+
+
+ DocParser.finish();
+ }
+ /*
+
+ //var txs =
+
+ var tr = new TokenReader(this.packer);
+ tr.keepDocs = true;
+ tr.keepWhite = true;
+ tr.keepComments = true;
+ tr.sepIdents = false;
+ tr.collapseWhite = false;
+ tr.filename = src;
+
+
+ var toks = tr.tokenize( new TextStream(src));
+ if (PackerRun.opt_dump_tokens) {
+ toks.dump();
+ return "";
+ //GLib.Process.exit(0);
+ }
+
+
+ var ts = new TokenStream(toks);
+
+
+
+
+ DocParser.parse(ts, srcFile);
+
+ if (useCache) {
+
+ var ar = DocParser.symbolsToObject(srcFile);
+
+ var builder = new Json.Builder ();
+ builder.begin_array ();
+ for (var i=0;i<ar.size;i++) {
+
+ builder.add_object_value (ar.get(i));
+ }
+ builder.end_array ();
+ Json.Generator generator = new Json.Generator ();
+ Json.Node root = builder.get_root ();
+ generator.set_root (root);
+ generator.pretty= true;
+ generator.ident = 2;
+ generator.to_file(cacheFile);
+
+
+
+ // }
+ }
+
+
+
+ Parser.finish();
+ }
+
+ */
+ string tempdir;
+
+ void publish()
+ {
+ GLib.debug("Publishing");
+
+ // link!!!
+ this.tempdir = GLib.DirUtils.make_tmp("roopackerXXXXXX");
+
+ GLib.debug("Making directories");
+ if (!FileUtils.test (PackerRun.singleton().opt_doc_target,FileTest.IS_DIR )) {
+ Posix.mkdir(PackerRun.singleton().opt_doc_target,0755);
+ }
+ if (!FileUtils.test(PackerRun.singleton().opt_doc_target+"/symbols",FileTest.IS_DIR)) {
+ Posix.mkdir(PackerRun.singleton().opt_doc_target+"/symbols",0755);
+ }
+ if (!FileUtils.test(PackerRun.singleton().opt_doc_target+"/src",FileTest.IS_DIR)) {
+ Posix.mkdir(PackerRun.singleton().opt_doc_target+"/src",0755);
+ }
+ if (!FileUtils.test(PackerRun.singleton().opt_doc_target +"/json",FileTest.IS_DIR)) {
+ Posix.mkdir(PackerRun.singleton().opt_doc_target +"/json",0755);
+ }
+
+ GLib.debug("Copying files from static: %s " , PackerRun.singleton().opt_doc_template_dir);
+ // copy everything in 'static' into
+
+ if (PackerRun.singleton().opt_doc_template_dir != null) {
+
+ var iter = GLib.File.new_for_path(
+ PackerRun.singleton().opt_doc_template_dir + "/static"
+ ).enumerate_children (
+ "standard::*",
+ FileQueryInfoFlags.NOFOLLOW_SYMLINKS,
+ null);
+ FileInfo info;
+
+ while ( (info = iter.next_file (null)) != null) {
+ if (info.get_file_type () == FileType.DIRECTORY) {
+ continue;
+ }
+ var src = File.new_for_path(info.get_name());
+ GLib.debug("Copy %s to %s/%s" ,
+ info.get_name() ,
+ PackerRun.singleton().opt_doc_target , src.get_basename());
+
+ src.copy(
+ GLib.File.new_for_path(
+ PackerRun.singleton().opt_doc_target + "/" + src.get_basename()
+ ),
+ GLib.FileCopyFlags.OVERWRITE
+ );
+ }
+
+ }
+ GLib.debug("Setting up templates");
+
+
+
+ var symbols = this.symbolSet.values();
+
+ var files = this.packer.files;
+
+ for (var i = 0, l = files.size; i < l; i++) {
+ var file = files.get(i);
+ // var targetDir = PackerRun.singleton().opt_doc_target + "/symbols/src/";
+ this.makeSrcFile(file);
+ }
+ //print(JSON.stringify(symbols,null,4));
+ var classes = new Gee.ArrayList<Symbol>();
+
+ foreach(var symbol in symbols) {
+ if (symbol.isaClass()) {
+ classes.add(symbol);
+ }
+ }
+ classes.sort( (a,b) => {
+ return a.alias.collate(b.alias);
+ });
+
+ //GLib.debug("classTemplate Process : all classes");
+
+ // var classesIndex = classesTemplate.process(classes); // kept in memory
+
+ GLib.debug("iterate classes");
+
+ var jsonAll = new Json.Object();
+
+ for (var i = 0, l = classes.size; i < l; i++) {
+ var symbol = classes.get(i);
+ var output = "";
+
+ GLib.debug("classTemplate Process : %s" , symbol.alias);
+
+
+ var class_gen = new Json.Generator ();
+ var class_root = new Json.Node(Json.NodeType.OBJECT);
+ class_root.init_object(this.class_to_json(symbol));
+ class_gen.set_root (class_root);
+ class_gen.pretty= true;
+ class_gen.indent = 2;
+ GLib.warning("writing JSON: %s", PackerRun.singleton().opt_doc_target+"/symbols/" +symbol.alias+".json");
+ this.writeJson(class_gen, PackerRun.singleton().opt_doc_target+"/symbols/" +symbol.alias+".json");
+
+ jsonAll.set_object_member(symbol.alias, this.publishJSON(symbol));
+
+ }
+
+ // outptu class truee
+
+ var class_tree_gen = new Json.Generator ();
+ var class_tree_root = new Json.Node(Json.NodeType.ARRAY);
+ class_tree_root.init_array(this.class_tree(classes));
+ class_tree_gen.set_root (class_tree_root);
+ class_tree_gen.pretty= true;
+ class_tree_gen.indent = 2;
+ GLib.warning("writing JSON: %s", PackerRun.singleton().opt_doc_target+"/tree.json");
+ this.writeJson(class_tree_gen,PackerRun.singleton().opt_doc_target+"/tree.json");
+ size_t class_tree_l;
+ //GLib.debug("JSON: %s", class_tree_gen.to_data(out class_tree_l));
+
+
+
+ /*---- this is our 'builder' json file.. -- a full list of objects+functions */
+
+
+ var generator = new Json.Generator ();
+ var root = new Json.Node(Json.NodeType.OBJECT);
+ root.init_object(jsonAll);
+ generator.set_root (root);
+ generator.pretty= true;
+ generator.indent = 2;
+ GLib.warning("writing JSON: %s", PackerRun.singleton().opt_doc_target+"/json/roodata.json");
+
+
+ this.writeJson(generator,PackerRun.singleton().opt_doc_target+"/json/roodata.json");
+ size_t l;
+ //GLib.debug("JSON: %s", generator.to_data(out l));
+
+
+
+
+ GLib.debug("build index");
+
+
+
+ }
+
+ Json.Object class_to_json (Symbol cls)
+ {
+ var ret = new Json.Object();
+ ret.set_string_member("name", cls.alias);
+ var ag = new Json.Array();
+ ret.set_array_member("augments", ag);
+ for(var ii = 0, il = cls.augments.size; ii < il; ii++) {
+ var contributer = this.symbolSet.getSymbol(cls.augments[ii]);
+ if (contributer == null) {
+ continue;
+ }
+ ag.add_string_element(contributer.alias);
+ }
+ ret.set_string_member("name", cls.alias);
+ ret.set_string_member("desc", cls.desc);
+ ret.set_boolean_member("isSingleton", cls.comment.getTag(DocTagTitle.SINGLETON).size > 0);
+ ret.set_boolean_member("isStatic", cls.isa != "CONSTRUCTOR");
+ ret.set_boolean_member("isBuiltin", cls.isBuiltin());
+
+ // needded so that the class can fake a ctor..
+ ret.set_string_member("memberOf", cls.name);
+ ret.set_string_member("example", cls.comment.getTagAsString(DocTagTitle.EXAMPLE));
+ ret.set_string_member("deprecated", // as depricated is used as a flag...
+ cls.comment.getTag(DocTagTitle.DEPRECATED).size > 0 ?
+ "This has been deprecated: "+ cls.comment.getTagAsString(DocTagTitle.DEPRECATED) :
+ "");
+ ret.set_string_member("since", cls.comment.getTagAsString(DocTagTitle.SINCE));
+ ret.set_string_member("see", cls.comment.getTagAsString(DocTagTitle.SINCE));
+ // not supported or used yet?
+ //add.set_string_member("exceptions", m.comment.getTagAsString(DocTagTitle.EXCEPTIONS));
+ //add.set_string_member("requires", m.comment.getTagAsString(DocTagTitle.REQUIRES));
+ ret.set_array_member("params", cls.paramsToJson());
+ ret.set_array_member("returns", new Json.Array());
+
+ //ret.set_string_member("desc", cls.comment.getTagAsString(DocTagTitle.DESC));
+ /// fixme - @see ... any others..
+
+ var props = new Json.Array();
+ ret.set_array_member("config", props);
+ var cfgProperties = cls.configToArray();
+ for(var i =0; i < cfgProperties.size;i++) {
+ var p = cfgProperties.get(i);
+ var add = new Json.Object();
+ add.set_string_member("name",p.name);
+ add.set_string_member("type",p.type);
+ add.set_string_member("desc",p.desc);
+ add.set_string_member("memberOf", p.memberOf);
+ add.set_array_member("values",p.optvalues.size > 0 ? p.optvalue_as_json_array() : new Json.Array());
+ props.add_object_element(add );
+ }
+
+ // methods
+
+
+ var methods = new Json.Array();
+ ret.set_array_member("methods", methods);
+ foreach(var m in cls.methods) {
+ if (m.isEvent || m.isIgnored) {
+ continue;
+ }
+
+ var add = new Json.Object();
+ add.set_string_member("name",m.name);
+ //add.set_string_member("type","function");
+ add.set_string_member("desc",m.desc);
+ //add.set_string_member("sig", m.makeMethodSkel());
+ add.set_boolean_member("isStatic", m.isStatic);
+ add.set_boolean_member("isConstructor", m.isa == "CONSTRUCTOR");
+ add.set_boolean_member("isPrivate", m.isPrivate);
+ //add.set_string_member("instanceOf", m.comment.getTagAsString(DocTagTitle.INSTANCEOF));
+ add.set_string_member("memberOf", m.memberOf);
+ add.set_string_member("example", m.comment.getTagAsString(DocTagTitle.EXAMPLE));
+ add.set_string_member("deprecated", // as depricated is used as a flag...
+ m.comment.getTag(DocTagTitle.DEPRECATED).size > 0 ?
+ "This has been deprecated: "+ m.comment.getTagAsString(DocTagTitle.DEPRECATED) :
+ "");
+ add.set_string_member("since", m.comment.getTagAsString(DocTagTitle.SINCE));
+ add.set_string_member("see", m.comment.getTagAsString(DocTagTitle.SINCE));
+ // not supported or used yet?
+ //add.set_string_member("exceptions", m.comment.getTagAsString(DocTagTitle.EXCEPTIONS));
+ //add.set_string_member("requires", m.comment.getTagAsString(DocTagTitle.REQUIRES));
+ add.set_array_member("params", m.paramsToJson());
+ add.set_array_member("returns", m.returnsToJson());
+
+ /// fixme - @see ... any others..
+
+
+ methods.add_object_element(add);
+ }
+
+
+ var events = new Json.Array();
+ ret.set_array_member("events", events);
+ foreach(var m in cls.methods) {
+ if (!m.isEvent || m.isIgnored) {
+ continue;
+ }
+
+ var add = new Json.Object();
+ add.set_string_member("name",m.name.substring(1)); // all prefixed with '*'...
+ //add.set_string_member("type","function");
+ add.set_string_member("desc",m.desc);
+ //add.set_string_member("sig", m.makeMethodSkel());
+
+ add.set_string_member("memberOf", m.memberOf);
+ add.set_string_member("example", m.comment.getTagAsString(DocTagTitle.EXAMPLE));
+ add.set_string_member("deprecated", // as depricated is used as a flag...
+ m.comment.getTag(DocTagTitle.DEPRECATED).size > 0 ?
+ "This has been deprecated: "+ m.comment.getTagAsString(DocTagTitle.DEPRECATED) :
+ "");
+ add.set_string_member("since", m.comment.getTagAsString(DocTagTitle.SINCE));
+ add.set_string_member("see", m.comment.getTagAsString(DocTagTitle.SINCE));
+ // not supported or used yet?
+ //add.set_string_member("exceptions", m.comment.getTagAsString(DocTagTitle.EXCEPTIONS));
+ //add.set_string_member("requires", m.comment.getTagAsString(DocTagTitle.REQUIRES));
+
+ add.set_array_member("params", m.paramsToJson());
+ add.set_array_member("returns", m.returnsToJson());
+
+ /// fixme - @see ... any others..
+
+
+ events.add_object_element(add);
+ }
+
+
+
+
+ return ret;
+ }
+ /**
+ * needed as Json dumps .xXXX into same directory as it writes...
+ */
+ void writeJson(Json.Generator g, string fname)
+ {
+ var tmp = this.tempdir + GLib.Path.get_basename(fname);
+ g.to_file(tmp);
+
+ if (GLib.FileUtils.test(fname, GLib.FileTest.EXISTS)) {
+ string new_data, old_data;
+ FileUtils.get_contents(tmp, out new_data);
+ FileUtils.get_contents(fname, out old_data);
+ if (old_data == new_data) {
+ GLib.File.new_for_path(tmp).delete();
+ return;
+ }
+ }
+
+ GLib.File.new_for_path(tmp).move( File.new_for_path(fname), GLib.FileCopyFlags.OVERWRITE);
+
+ }
+
+ /**
+ * JSON files are lookup files for the documentation
+ * - can be used by IDE's or AJAX based doc tools
+ *
+ *
+ */
+ Json.Object publishJSON (Symbol data)
+ {
+ // what we need to output to be usefull...
+ // a) props..
+ var cfgProperties = new Gee.ArrayList<DocTag>();
+ if (data.comment.getTag(DocTagTitle.SINGLETON).size < 1) {
+ cfgProperties = data.configToArray();
+ cfgProperties.sort((a,b) =>{
+ return a.name.collate(b.name);
+ });
+
+ }
+
+ var props = new Json.Array();
+ //println(cfgProperties.toSource());
+
+ for(var i =0; i < cfgProperties.size;i++) {
+ var p = cfgProperties.get(i);
+ var add = new Json.Object();
+ add.set_string_member("name",p.name);
+ add.set_string_member("type",p.type);
+ add.set_string_member("desc",p.desc);
+ add.set_string_member("memberOf", p.memberOf == data.alias ? "" : p.memberOf);
+
+ if (p.optvalues.size > 0) {
+ add.set_array_member("desc",p.optvalue_as_json_array());
+ }
+
+ props.add_object_element(add );
+ }
+
+ ///// --- events
+ var ownEvents = new Gee.ArrayList<Symbol>();
+ for(var i =0; i < data.methods.size;i++) {
+ var e = data.methods.get(i);
+ if (e.isEvent && !e.isIgnored) {
+ ownEvents.add(e);
+ }
+ };
+ ownEvents.sort((a,b) => {
+ return a.name.collate(b.name);
+ });
+
+ var events = new Json.Array();
+
+ for(var i =0; i < ownEvents.size;i++) {
+ var m = ownEvents.get(i);
+ var add = new Json.Object();
+ add.set_string_member("name",m.name.substring(1,-1)); // remove'*' on events..
+ add.set_string_member("type","function");
+ add.set_string_member("desc",m.desc);
+ add.set_string_member("sig", m.makeFuncSkel());
+ add.set_string_member("memberOf", m.memberOf == data.alias ? "" : m.memberOf);
+ events.add_object_element(add);
+ }
+
+ // methods
+ var ownMethods = new Gee.ArrayList<Symbol>();
+ for(var i =0; i < data.methods.size;i++) {
+ var e = data.methods.get(i);
+ if (!e.isEvent && !e.isIgnored) {
+ ownMethods.add(e);
+ }
+ };
+ ownMethods.sort((a,b) => {
+ return a.name.collate(b.name);
+ });
+
+ var methods = new Json.Array();
+
+ for(var i =0; i < ownMethods.size;i++) {
+ var m = ownMethods.get(i);
+ var add = new Json.Object();
+ add.set_string_member("name",m.name);
+ add.set_string_member("type","function");
+ add.set_string_member("desc",m.desc);
+ add.set_string_member("sig", m.makeMethodSkel());
+ add.set_boolean_member("static", m.isStatic);
+ add.set_string_member("memberOf", m.memberOf == data.alias ? "" : m.memberOf);
+ methods.add_object_element(add);
+ }
+
+ //println(props.toSource());
+ // we need to output:
+ //classname => {
+ // propname =>
+ // type=>
+ // desc=>
+ // }
+ var ret = new Json.Object();
+ ret.set_array_member("props", props);
+ ret.set_array_member("events", events);
+ ret.set_array_member("methods", methods);
+
+ return ret;
+
+
+ // b) methods
+ // c) events
+
+
+ }
+ Gee.HashMap<string,Json.Object> class_tree_map;
+ Json.Array class_tree_top;
+
+ Json.Object? class_tree_new_obj(string name, bool is_class, out bool is_new)
+ {
+ if (this.class_tree_map.has_key(name)) {
+ var ret = this.class_tree_map.get(name);
+ if (!ret.get_boolean_member("is_class") && is_class) {
+ ret.set_boolean_member("is_class", is_class);
+ }
+ is_new = false;
+ return ret; // no need to do anything
+
+ }
+
+ GLib.debug("Class Tree: new object %s", name);
+ var add = new Json.Object();
+ add.set_string_member("name", name);
+ add.set_array_member("cn", new Json.Array());
+ add.set_boolean_member("is_class", is_class);
+ this.class_tree_map.set(name, add);
+ var bits = name.split(".");
+ if (bits.length == 1) {
+ // top level..
+ this.class_tree_top.add_object_element(add);
+
+ }
+ is_new = true;
+
+ return add;
+
+ }
+
+ void class_tree_make_parents( Json.Object add)
+ {
+ var name = add.get_string_member("name");
+ var bits = name.split(".");
+ if (bits.length < 2) {
+ return;
+ }
+ // got aaa.bb or aaa.bb.cc
+ // find the parent..
+ string[] nn = {};
+ for(var i=0; i < bits.length-1; i++) {
+ nn += bits[i];
+ }
+ var pname = string.joinv(".", nn);
+ GLib.debug("Class Tree: adding to parent %s => %s", name, pname);
+
+ // no parent found.. make one..
+ bool is_new;
+ var parent = this.class_tree_new_obj(pname, false, out is_new);
+ parent.get_array_member("cn").add_object_element(add);
+ if (is_new) {
+ this.class_tree_make_parents( parent);
+ }
+
+
+ }
+ Json.Array class_tree (Gee.ArrayList<Symbol> classes )
+ {
+
+
+ // produce a tree array that can be used to render the navigation.
+ /*
+ should produce:
+
+ [
+ {
+ name : Roo,
+ desc : ....
+ is_class : true,
+ cn : [
+ {
+ name : 'Roo.util',
+ basename : 'util',
+ is_class : false,
+ cn : [
+ {
+ ....
+
+ to do this, we will need to create the objects in a hashmap
+ Roo.util => Json.Object
+
+ */
+ this.class_tree_top = new Json.Array();
+ this.class_tree_map = new Gee.HashMap<string,Json.Object>();
+ foreach (var cls in classes) {
+ if(cls.alias.length < 1 || cls.alias == "this" || cls.alias == "_global_") {
+ continue;
+ }
+ bool is_new;
+ var add = this.class_tree_new_obj(cls.alias, cls.methods.size > 0 ? true : false,out is_new);
+ if (add != null) {
+ this.class_tree_make_parents( add);
+ }
+
+ }
+
+ return this.class_tree_top;
+
+ }
+
+
+ // in Link (js) ???
+ string srcFileRelName(string sourceFile)
+ {
+ var rp = Posix.realpath(sourceFile);
+ return rp.substring(PackerRun.singleton().opt_real_basedir.length);
+ }
+ string srcFileFlatName(string sourceFile)
+ {
+ var name = this.srcFileRelName(sourceFile);
+ name = /\.\.?[\/]/.replace(name, name.length, 0, "");
+ name = name.replace("/", "_").replace(":", "_") + ".html";
+ return name;
+ }
+
+
+ void makeSrcFile(string sourceFile)
+ {
+ // this stuff works...
+
+
+
+ // this check does not appear to work according to the doc's - need to check it out.
+
+
+ var name = this.srcFileFlatName(sourceFile);
+
+ GLib.debug("Write Source file : %s/src/%s",
+ PackerRun.singleton().opt_doc_target, name);
+ var str = "";
+ FileUtils.get_contents(sourceFile, out str);
+ var pretty = PrettyPrint.toPretty(str);
+ var fname = PackerRun.singleton().opt_doc_target+"/src/" + name;
+
+ var tmp = this.tempdir + GLib.Path.get_basename(fname);
+ FileUtils.set_contents(
+ tmp,
+ "<html><head>" +
+ "<title>" + this.srcFileRelName(sourceFile) + "</title>" +
+ "<link rel=\"stylesheet\" type=\"text/css\" href=\"../../css/highlight-js.css\"/>" +
+ "</head><body class=\"highlightpage\">" +
+ pretty +
+ "</body></html>");
+
+ // same content?
+ if (GLib.FileUtils.test(fname, GLib.FileTest.EXISTS)) {
+ string new_data, old_data;
+ FileUtils.get_contents(tmp, out new_data);
+ FileUtils.get_contents(fname, out old_data);
+ if (old_data == new_data) {
+ GLib.File.new_for_path(tmp).delete();
+ return;
+ }
+ }
+
+ GLib.File.new_for_path(tmp).move( File.new_for_path(fname), GLib.FileCopyFlags.OVERWRITE);
+
+
+
+
+ }
+ }
+
+}
+
+
+
+
+
+
+
+
+
+
+
--- /dev/null
+
+/**
+ * Create a new DocComment. This takes a raw documentation comment,
+ * and wraps it in useful accessors.
+ * @class Represents a documentation comment object.
+ *
+ */
+
+namespace JSDOC
+{
+ public class DocComment : Object
+ {
+
+ public bool isUserComment = true;
+ public bool hasTags = false;
+ public string src = "";
+ //string meta = "";
+ //Gee.ArrayList<string> tagTexts;
+ public Gee.ArrayList<DocTag> tags;
+
+ static GLib.Regex has_tag_regex;
+ static GLib.Regex tag_regex;
+ static GLib.Regex comment_line_start_regex;
+ static GLib.Regex comment_line_start_white_space_regex;
+ static GLib.Regex comment_needs_desc_regex;
+ /**
+ * Used to store the currently shared tag text.
+ * not sure where we use this yet..
+ * but i think it's related to merging multiple comments together...
+ */
+
+ public static string shared = "";
+
+ static bool done_init = false;
+
+ static void initRegex()
+ {
+ if (DocComment.done_init) {
+ return;
+ }
+ DocComment.has_tag_regex = new GLib.Regex("^\\s*@\\s*\\S+"); // multiline?
+
+ DocComment.tag_regex = new GLib.Regex("(^|[\\r\\n])\\s*@"); // empty line, then @ or starting with @?
+
+
+ DocComment.comment_line_start_regex = new GLib.Regex("(^\\/\\*\\*|\\*\\/$)");
+ DocComment.comment_line_start_white_space_regex = new GLib.Regex("\\s*\\* ?");
+ DocComment.comment_needs_desc_regex = new GLib.Regex("\\s*@(class|event|property)");
+
+ DocComment.done_init = true;
+ }
+
+ public DocComment (string comment = "")
+ {
+
+ DocComment.initRegex();
+
+ GLib.debug("parse comment : %s", comment);
+ this.tags = new Gee.ArrayList<DocTag>();
+
+
+
+ if (comment.strip() == "") {
+ comment = "/** @desc */";
+ this.isUserComment = false;
+ }
+
+ this.src = DocComment.unwrapComment(comment);
+
+ //println(this.src);
+
+ // looks like #+ support???
+ /*
+ this.meta = "";
+ if (this.src.indexOf("#") == 0) {
+ this.src.match(/#(.+[+-])([\s\S]*)$/);
+ if (RegExp.$1) this.meta = RegExp.$1;
+ if (RegExp.$2) this.src = RegExp.$2;
+ }
+ */
+ this.hasTags = /^\s*@\s*\S+/.match(this.src);
+
+ this.fixDesc();
+
+ //if (typeof JSDOC.PluginManager != "undefined") {
+ // JSDOC.PluginManager.run("onDocCommentSrc", this);
+ //}
+
+ this.src = DocComment.shared+"\n"+this.src;
+
+ //var tagTexts = new Gee.ArrayList<string>();
+
+
+ var bits = /(^|[\r\n])\s*@/.split(this.src);
+ for(int i=0; i<bits.length; i++) {
+ var sa = bits[i];
+ if (sa.strip().length >0) {
+ this.tags.add(new DocTag(sa));
+ // tagTexts.add(sa); // ?? strip again?
+ }
+ }
+
+
+
+ }
+
+
+
+ /**
+ * Remove slash-star comment wrapper from a raw comment string.
+ * @type String
+ */
+ public static string unwrapComment( string comment)
+ {
+ if (comment.length < 1) {
+ return "";
+ }
+
+ var ret = /^\/\*\*|\*\/$/.replace(
+ comment, comment.length, 0, "", 0 ); //GLib.RegexMatchFlags.NEWLINE_ANYCRLF );
+
+ ret = /(^|[\r\n])\s*\* ?/.replace(ret, ret.length, 0, "\n" ); //);
+
+ return ret.strip();
+ }
+ /**
+ If no @desc tag is provided, this function will add it.
+ */
+ void fixDesc()
+ {
+ //if (this.meta && this.meta != "@+") return;
+
+
+
+ // does not have any @ lines..
+ // -- skip comments without @!!
+ if (!this.hasTags) {
+ this.src = "@desc "+ this.src;
+ // TAGS that are not \n prefixed!! ...
+ // does not make sense....???
+ //this.src = this.src.replace(/@\s*type/g, '\n@type');
+
+ return;
+ }
+ // kdludge for stuff...
+ //this.src = this.src.replace(/@\s*type/g, '\n@type');
+
+ // only apply @desc fix to classes..
+ if (!DocComment.comment_needs_desc_regex.match(this.src,GLib.RegexMatchFlags.NEWLINE_ANYCRLF) ) {
+ return;
+ }
+ // if no desc - add it on the first line that is not a @
+ var lines = this.src.split("\n");
+ var nsrc = "";
+ var gotf = false;
+
+ for(var i =0; i < lines.length;i++) {
+ var line = lines[i];
+ if (gotf) {
+ nsrc += line + "\n";
+ continue;
+ }
+ if (DocComment.has_tag_regex.match(line)) { // line with @
+ nsrc += line + "\n";
+ continue;
+ }
+ gotf = true;
+ nsrc += "@desc " + line + "\n";
+
+ }
+
+ this.src = nsrc;
+
+
+
+ }
+
+
+ public Gee.ArrayList<DocTag> getTag ( DocTagTitle tagTitle) {
+ var ret = new Gee.ArrayList<DocTag>();
+ foreach(var tag in this.tags) {
+ if (tag.title == tagTitle) {
+ ret.add(tag);
+ }
+ }
+ return ret;
+ }
+ public string getTagAsString ( DocTagTitle tagTitle) {
+ string[] ret = {};
+ foreach(var tag in this.tags) {
+ if (tag.title == tagTitle) {
+ ret += tag.desc;
+ }
+ }
+ return string.joinv("\n", ret);
+ }
+ }
+}
+
--- /dev/null
+
+namespace JSDOC
+{
+
+ public class DocParser : Object
+ {
+ // options - should they bee in PackerRun?
+ static bool ignoreAnonymous = true;
+ static bool treatUnderscoredAsPrivate = true;
+ static bool explain= false;
+
+
+ static bool has_init = false;
+ static Walker walker ;
+ private static SymbolSet? _symbols = null;
+
+ public static SymbolSet symbols() {
+ if (DocParser._symbols == null) {
+ GLib.debug("init symbols?");
+ DocParser._symbols = new SymbolSet();
+ //DocParser._symbols.ref(); // not sure why, by symbols keeps getting blanked.?
+ }
+ return DocParser._symbols;
+ }
+ static Gee.HashMap<string,SymbolSet>? _filesSymbols = null;
+
+ static Gee.HashMap<string,SymbolSet> filesSymbols()
+ {
+ if (DocParser._filesSymbols == null) {
+ GLib.debug("init _filesSymbols?");
+ DocParser._filesSymbols = new Gee.HashMap<string,SymbolSet>();
+ }
+ return DocParser._filesSymbols;
+
+ }
+
+ public static string currentSourceFile;
+
+
+
+
+
+
+ public static void parse(TokenStream ts, string srcFile)
+ {
+
+ DocParser.currentSourceFile = srcFile;
+ // not a nice way to set stuff...
+
+ DocComment.shared = ""; // shared comments don't cross file boundaries
+
+ DocParser.filesSymbols().set(srcFile, new SymbolSet());
+
+ //Options.LOG.inform("Parser - run walker");
+ walker = new Walker(ts);
+ walker.buildSymbolTree();
+
+
+
+ //this.walker.walk(ts); // adds to our symbols
+ // throw "done sym tree";
+ //Options.LOG.inform("Parser - checking symbols");
+ // filter symbols by option
+ foreach (var p in DocParser.symbols().keys()) {
+ var symbol = DocParser.symbols().getSymbol(p);
+
+ // print(JSON.stringify(symbol, null,4));
+
+ if (symbol == null) continue;
+
+ if (symbol.isPrivate) {
+ DocParser.symbols().deleteSymbol(symbol.alias);
+ DocParser.filesSymbols().get(srcFile).deleteSymbol(symbol.alias);
+ continue;
+ }
+
+ if (symbol.is("FILE") || symbol.is("GLOBAL")) {
+ continue;
+ }
+
+
+ if (symbol.alias.substring(symbol.alias.length-1) == "#") { // we don't document prototypes - this should not happen..
+
+ print("Deleting Symbols (alias ends in #): " + symbol.alias);
+
+ DocParser.symbols().deleteSymbol(symbol.alias);
+ DocParser.filesSymbols().get(srcFile).deleteSymbol(symbol.alias);
+
+ }
+ }
+ //print(prettyDump(toQDump(this.filesSymbols[Symbol.srcFile]._index,'{','}')));
+ //print("AfterParse: " + this.symbols.keys().toSource().split(",").join(",\n "));
+ return; //this.symbols.toArray();
+ }
+
+
+ public static void addSymbol(Symbol symbol)
+ {
+ //print("PARSER addSYMBOL : " + symbol.alias);
+
+ // if a symbol alias is documented more than once the last one with the user docs wins
+ if (DocParser.symbols().hasSymbol(symbol.alias)) {
+ var oldSymbol = DocParser.symbols().getSymbol(symbol.alias);
+
+ if (oldSymbol.comment.isUserComment && !oldSymbol.comment.hasTags) {
+ if (symbol.comment.isUserComment) { // old and new are both documented
+ GLib.debug("The symbol '%s' is documented more than once.",symbol.alias);
+ // we use the new one???
+ } else { // old is documented but new isn't
+ return;
+ }
+ }
+ }
+
+ // we don't document anonymous things
+ if (DocParser.ignoreAnonymous && symbol.name.index_of("$anonymous\b") > -1) {
+ return;
+ }
+
+ // uderscored things may be treated as if they were marked private, this cascades
+ //if (DocParser.treatUnderscoredAsPrivate && symbol.name.match(/[.#-]_[^.#-]+$/)) {
+ // symbol.isPrivate = true;
+ //}
+
+ // -p flag is required to document private things
+ if ((symbol.isInner || symbol.isPrivate) && !PackerRun.singleton().opt_doc_include_private) {
+ return;
+ }
+
+ // ignored things are not documented, this doesn't cascade
+ if (symbol.isIgnored) {
+ return;
+ }
+ // add it to the file's list... (for dumping later..)
+ if (DocParser.currentSourceFile != null) {
+ DocParser.filesSymbols().get(DocParser.currentSourceFile).addSymbol(symbol);
+ }
+
+ DocParser.symbols().addSymbol(symbol);
+ }
+
+ public static Symbol addBuiltin(string name)
+ {
+ var builtin = new Symbol.new_builtin(name);
+ DocParser.addSymbol(builtin);
+ return builtin;
+ }
+
+
+ public static void finish() {
+
+
+ DocParser.symbols().relate();
+
+ // make a litle report about what was found
+ /*
+ if (this.conf.explain) {
+ var symbols = this.symbols.toArray();
+ var srcFile = "";
+ for (var i = 0, l = symbols.length; i < l; i++) {
+ var symbol = symbols[i];
+ if (srcFile != symbol.srcFile) {
+ srcFile = symbol.srcFile;
+ print("\n"+srcFile+"\n-------------------");
+ }
+ print(i+":\n alias => "+symbol.alias + "\n name => "+symbol.name+ "\n isa => "+symbol.isa + "\n memberOf => " + symbol.memberOf + "\n isStatic => " + symbol.isStatic + ", isInner => " + symbol.isInner);
+ }
+ print("-------------------\n");
+ }
+ */
+ }
+ /**
+ * return symbols so they can be serialized.
+ */
+ SymbolSet symbolsToObject(string srcFile)
+ {
+
+ return DocParser.filesSymbols().get(srcFile);
+
+ }
+
+ }
+}
\ No newline at end of file
--- /dev/null
+
+
+namespace JSDOC
+{
+ public enum DocTagTitle
+ {
+ NO_VALUE,
+ PARAM,
+ PROPERTY,
+ CFG,
+ EXAMPLE,
+ SINGLETON,
+ AUTHOR,
+ METHOD,
+ DESC,
+ OVERVIEW,
+ SINCE,
+ CONSTANT,
+ VERSION,
+ DEPRECATED,
+
+ SEE,
+ CLASS,
+ NAMESPACE,
+ CONSTRUCTOR,
+ STATIC,
+
+
+ INNER,
+ FIELD,
+ FUNCTION,
+ EVENT,
+ NAME,
+ RETURN,
+ THROWS,
+ REQUIRES,
+ TYPE,
+ PRIVATE,
+ IGNORE,
+ ARGUMENTS,
+ EXTENDS,
+ DEFAULT,
+ MEMBEROF,
+ PUBLIC,
+ SCOPE,
+ SCOPEALIAS
+
+ }
+
+ errordomain DocTagException {
+ NO_TITLE,
+ INVALID_TITLE,
+ INVALID_NAME,
+ INVALID_TYPE
+ }
+
+
+ public class DocTag : Object
+ {
+
+ public DocTagTitle title = DocTagTitle.NO_VALUE;
+ public string type = ""; // eg.. boolean / string etc..., may be xxxx|bbbb - eg. optional types
+ public string name = ""; // eg. "title" << a property name etc...
+ public bool isOptional = false;
+ public string defaultValue = "";
+ public string desc = "";
+ public Gee.ArrayList<string> optvalues;
+ public string memberOf = ""; // set by add addMember..
+
+ public string asString()
+ {
+ return "DocTag: title=%s name=%s type=%s desc=%s".printf(
+ this.title.to_string(),
+ this.name,
+ this.type,
+ this.desc
+ );
+ }
+
+
+
+
+
+ public DocTag (string in_src)
+ {
+
+ GLib.debug("Parsing Tag: %s", in_src);
+
+
+
+
+ this.optvalues = new Gee.ArrayList<string>();
+
+ var src = in_src;
+
+ try {
+ src = this.nibbleTitle(src);
+
+ src = this.nibbleType(src);
+
+
+ // only some tags are allowed to have names.
+ if (
+ this.title == DocTagTitle.PARAM ||
+ this.title == DocTagTitle.PROPERTY ||
+ this.title == DocTagTitle.CFG) { // @config is deprecated
+ src = this.nibbleName(src);
+ }
+ }
+ catch(DocTagException e) {
+ GLib.debug("Failed to parse tag: '%s' = error = %s", in_src, e.message);
+ // only throw if in 'strict'??
+ //throw e;
+ return;
+ }
+
+ // if type == @cfg, and matches (|....|...)
+
+ src = src.strip();
+
+ MatchInfo mi = null;
+
+ if (this.title == DocTagTitle.CFG && /^\([^)]+\)/.match_all(src, 0, out mi )) {
+ var ms = mi.fetch(0);
+ if (ms.contains("|")) {
+ var ar = ms.split("|");
+ for (var i =0 ; i < ar.length;i++) {
+ optvalues.add(ar[i].strip());
+ }
+ src = src.substring(ms.length, src.length - ms.length);
+
+ }
+
+ }
+
+
+ this.desc = src; // whatever is left
+
+ // example tags need to have whitespace preserved
+ if (this.title != DocTagTitle.EXAMPLE) {
+ this.desc = this.desc.strip();
+ }
+
+
+
+
+
+ }
+
+
+ /**
+ Find and shift off the title of a tag.
+ @param {string} src
+ @return src
+ */
+ private string nibbleTitle (string src) throws DocTagException
+ {
+ //GLib.debug("nibbleTitle: %s", src);
+ MatchInfo mi;
+
+ if(! /^\s*(\S+)\s*(?:\s([\s\S]*))?$/.match_full(src, src.length, 0, 0, out mi) ||
+ mi.get_match_count() < 2) {
+ throw new DocTagException.NO_TITLE("missing title");
+ return src;
+ }
+
+ //GLib.debug("nibbleTitle: regexmatches %d : %s",
+ // mi.get_match_count(),
+ // mi.fetch(1).up());
+
+ EnumClass enumc = (EnumClass) typeof (DocTagTitle).class_ref ();
+
+ unowned EnumValue? eval = enumc.get_value_by_name ( "JSDOC_DOC_TAG_TITLE_"+ mi.fetch(1).up());
+ if (eval == null) {
+ throw new DocTagException.INVALID_TITLE("title not supported ??");
+ return src;
+ }
+ this.title = (DocTagTitle) eval.value;
+ return mi.get_match_count() > 2 ? mi.fetch(2) : "";
+
+ }
+
+ /**
+ Find and shift off the type of a tag.
+ @requires frame/String.js
+ @param {string} src
+ @return src
+ */
+ private string nibbleType(string src)
+ {
+ MatchInfo mi;
+ if(! /^\s*\{/.match_all(src, 0, out mi)) {
+ return src;
+ }
+ int start;
+ int stop;
+
+ this.balance(src,'{', '}', out start, out stop);
+ //GLib.debug("nibble type: %s %d, %d", src, start,stop);
+ if (stop == -1) {
+ throw new DocTagException.INVALID_TYPE("Malformed comment tag ignored. Tag type requires an opening { and a closing }: ") ;
+ return src;
+ }
+ this.type = src.substring(start+1,stop-1).strip();
+ this.type = this.type.replace(",", "|"); // multiples can be separated by , or |
+ return src.substring(stop+1, -1);
+
+ }
+
+
+
+ /**
+ Find and shift off the name of a tag.
+ @requires frame/String.js
+ @param {string} src
+ @return src
+ */
+ private string nibbleName( string in_src) throws DocTagException
+ {
+
+
+ var src = in_src.strip();
+ //GLib.debug("nibbleName: %s", in_src);
+
+ // is optional?
+ if (src.get(0) == '[') {
+ int start, stop;
+ this.balance(src,'[', ']', out start, out stop);
+ if (stop == -1) {
+ throw new DocTagException.INVALID_NAME("Malformed comment tag ignored. Tag optional name requires an opening [ and a closing ]: ");
+ return src;
+ }
+ this.name = src.substring(start+1, stop).strip();
+ this.isOptional = true;
+
+ src = src.substring(stop+1);
+
+ // has default value?
+ var nameAndValue = this.name.split("=");
+ if (nameAndValue.length > 1) {
+ var oname = this.name;
+ this.name = nameAndValue[0].strip();
+
+ this.defaultValue = oname.substring( nameAndValue[0].length + 1 , nameAndValue[0].length + 1 - oname.length); /// what about
+ }
+ GLib.debug("got name %s", this.name);
+ return src.substring(stop+1, stop+1-src.length);
+ }
+ // not encased with [ ]
+
+ MatchInfo mi;
+
+ if (/^(\S+)(?:\s([\s\S]*))?$/.match_full(src, src.length, 0, 0, out mi)) {
+ this.name = mi.fetch(1);
+ GLib.debug("got name %s", this.name);
+ return mi.get_match_count() > 2 ? mi.fetch(2) : "";
+ }
+
+
+ return src;
+ }
+
+
+ private void balance(string str, char open, char close, out int start, out int stop) {
+ start = 0;
+ stop =-1;
+ while (str.get(start) != open) {
+ if (start == str.length) {
+ return;
+ }
+ start++;
+ }
+
+ stop = start +1;
+ var balance = 1;
+ while (stop < str.length) {
+ if (str.get(stop) == open) balance++;
+ if (str.get(stop) == close) balance--;
+ if (balance == 0) break;
+ stop++;
+ if (stop == str.length) {
+ stop = -1;
+ return;
+ }
+ }
+
+
+ }
+
+ public Json.Array optvalue_as_json_array()
+ {
+ var ret = new Json.Array();
+ foreach (var str in this.optvalues ) {
+ ret.add_string_element(str);
+ }
+ return ret;
+
+
+ }
+
+ }
+}
+
+
\ No newline at end of file
--- /dev/null
+
+
+/**
+ * @class Identifier
+ * holds details about identifiers and their replacement values
+ * used by the packer..
+ *
+ */
+
+namespace JSDOC
+{
+ public class Identifier : Object
+ {
+
+ public string name;
+ public int refcount = 1; // used?
+ public string mungedValue; // should be at least 1?!?!
+ public Scope scope ; // script of fn scope..
+ public bool toMunge = true;
+
+
+
+ public Identifier(string name, Scope scope) {
+ // print("NEW IDENT: " + name);
+ this.name = name;
+ this.scope = scope;
+ this.mungedValue = "";
+ // this.identifiers = {}; <<< used where?
+
+ }
+ }
+
+}
+
+
--- /dev/null
+//<script type="text/javscript">
+
+/**
+ @namespace
+*/
+// test
+// valac gitlive/app.Builder.js/JsRender/Lang.vala --pkg gee-1.0 -o /tmp/Lang ;/tmp/Lang
+
+/*
+void main () {
+ new JsRender.Lang_Class();
+ print(JsRender.Lang.keyword("delete") + "\n");
+}
+*/
+
+
+namespace JSDOC {
+
+ public errordomain LangError {
+ ArgumentError
+ }
+
+ public Lang_Class Lang = null;
+
+ public class Lang_Class : Object {
+
+ GLib.List<string> coreObjects;
+ Gee.HashMap<string,string> whitespaceNames;
+ Gee.HashMap<string,string> newlineNames;
+
+
+
+ public Lang_Class ()
+ {
+ if (Lang != null) {
+ //print("lang not null\n");
+ return;
+ }
+ //print("init\n");
+ this.init();
+ //print("init Lang");
+ Lang = this;
+ Lang.ref();
+
+ }
+
+
+ public bool isBuiltin(string name) {
+ return (this.coreObjects.index(name) > -1);
+ }
+
+ public string whitespace (string ch) {
+ return this.whitespaceNames.get(ch);
+ }
+ public string newline (string ch) {
+ return this.newlineNames.get(ch);
+ }
+ public TokenName keyword(string word) throws LangError {
+
+ switch(word) {
+ case "break": return TokenName.BREAK;
+ case "case": return TokenName.CASE;
+ case "catch": return TokenName.CATCH;
+ case "const": return TokenName.VAR;
+ case "continue": return TokenName.CONTINUE;
+ case "default": return TokenName.DEFAULT;
+ case "delete": return TokenName.DELETE;
+ case "do": return TokenName.DO;
+ case "else": return TokenName.ELSE;
+ case "eval": return TokenName.EVAL;
+ case "false": return TokenName.FALSE;
+ case "finally": return TokenName.FINALLY;
+ case "for": return TokenName.FOR;
+ case "function": return TokenName.FUNCTION;
+ case "if": return TokenName.IF;
+ case "in": return TokenName.IN;
+ case "instanceof": return TokenName.INSTANCEOF;
+ case "new": return TokenName.NEW;
+ case "null": return TokenName.NULL;
+ case "return": return TokenName.RETURN;
+ case "switch": return TokenName.SWITCH;
+ case "this": return TokenName.THIS;
+ case "throw": return TokenName.THROW;
+ case "true": return TokenName.TRUE;
+ case "try": return TokenName.TRY;
+ case "typeof": return TokenName.TYPEOF;
+ case "void": return TokenName.VOID;
+ case "while": return TokenName.WHILE;
+ case "with": return TokenName.WITH;
+ case "var": return TokenName.VAR;
+
+
+ default:
+ throw new LangError.ArgumentError("invalid keyword : %s", word);
+ }
+
+ }
+
+ public TokenName? matching(TokenName name) throws LangError
+ {
+
+
+ switch(name) {
+ case TokenName.LEFT_PAREN: return TokenName.RIGHT_PAREN;
+ case TokenName.RIGHT_PAREN: return TokenName.LEFT_PAREN;
+ case TokenName.LEFT_CURLY: return TokenName.RIGHT_CURLY;
+ case TokenName.RIGHT_CURLY: return TokenName.LEFT_CURLY;
+ case TokenName.LEFT_BRACE: return TokenName.RIGHT_BRACE;
+ case TokenName.RIGHT_BRACE: return TokenName.LEFT_BRACE;
+ default:
+ throw new LangError.ArgumentError("invalid matching character : %s", name.to_string());
+
+ return null;
+ };
+
+ //return this.matchingNames.get(name);
+ }
+
+ public bool isKeyword(string word) {
+ try {
+ var x = this.keyword(word);
+ return true;
+ } catch (LangError e) {
+ return false;
+ }
+ }
+ /*
+ public TokenName punc (string ch) throws LangError
+ {
+ var x = this.puncNull(ch);
+ if (x == null) {
+ throw new LangError.ArgumentError("invalid punctuation character : %s",ch);
+ }
+ return x;
+
+ }
+ public bool isPunc(string ch) {
+ return this.puncNull(ch) != null;
+ }
+ */
+ public TokenName puncFirstString (char ch)
+ {
+
+ switch(ch) {
+ case ';': return TokenName.SEMICOLON;
+ case ',': return TokenName.COMMA;
+ case '?': return TokenName.HOOK;
+ case ':': return TokenName.COLON;
+ case '|': return TokenName.BITWISE_OR;
+ case '^': return TokenName.BITWISE_XOR;
+ case '&': return TokenName.BITWISE_AND;
+ case '=': return TokenName.ASSIGN;
+ case '<': return TokenName.LT;
+ case '>': return TokenName.GT;
+ case '+': return TokenName.PLUS;
+ case '-': return TokenName.MINUS;
+ case '*': return TokenName.MUL;
+ case '/': return TokenName.DIV;
+ case '%': return TokenName.MOD;
+ case '!': return TokenName.NOT;
+ case '~': return TokenName.BITWISE_NOT;
+ case '0': return TokenName.DOT;
+ case '[': return TokenName.LEFT_BRACE;
+ case ']': return TokenName.RIGHT_BRACE;
+ case '{': return TokenName.LEFT_CURLY;
+ case '}': return TokenName.RIGHT_CURLY;
+ case '(': return TokenName.LEFT_PAREN;
+ case ')': return TokenName.RIGHT_PAREN;
+ }
+ return TokenName.UNKNOWN;
+ }
+ public TokenName puncString (string ch)
+ {
+
+ switch(ch) {
+
+ case "||": return TokenName.OR;
+ case "&&": return TokenName.AND;
+ case "==": return TokenName.EQ;
+ case "!=": return TokenName.NE;
+ case "<<": return TokenName.LSH;
+ case "<=": return TokenName.LE;
+ case ">>": return TokenName.RSH;
+ case ">=": return TokenName.GE;
+ case "++": return TokenName.INCREMENT;
+ case "--": return TokenName.DECREMENT;
+
+
+ case "===": return TokenName.STRICT_EQ;
+ case "!==": return TokenName.STRICT_NE;
+ case ">>>": return TokenName.URSH;
+
+
+ default:
+ return TokenName.UNKNOWN;
+
+
+ }
+
+ }
+
+
+
+ public bool isNumber (string str) {
+ return Regex.match_simple("^(\\.[0-9]|[0-9]+\\.|[0-9])[0-9]*([eE][+-]?[0-9]+)?$",str);
+ }
+
+ public bool isHexDec (string str) {
+ return Regex.match_simple("^0x[0-9A-Fa-f]+$",str);
+ }
+
+ public bool isWordString (string str) {
+ return Regex.match_simple("^[a-zA-Z0-9$_.]+$", str);
+ }
+ public bool isWordChar (char c) {
+ return
+ (c >= 'a' && c <= 'z')
+ ||
+ (c >= 'A' && c <= 'Z')
+ ||
+ (c >= '0' && c <= '9')
+ ||
+ c == '$' || c == '.' || c == '_' ;
+ }
+
+ public bool isSpace (string str) {
+ return this.whitespaceNames.get(str) != null;
+ }
+ public bool isSpaceC (char str) {
+ var s = str.to_string();
+ return this.whitespaceNames.get(s) != null;
+ }
+
+ public bool isNewline (string str) {
+ return this.newlineNames.get(str) != null;
+ }
+ public bool isNewlineC (char str) {
+ var s =str.to_string();
+ return this.newlineNames.get(s) != null;
+ }
+ public bool isBoolean (string str) {
+ var ss = str.down();
+ return ss == "false" || ss == "true";
+ }
+
+
+
+ void init() {
+
+ this.coreObjects = new GLib.List<string>();
+
+ this.whitespaceNames = new Gee.HashMap<string,string>();
+ this.newlineNames = new Gee.HashMap<string,string>();
+
+
+
+
+
+
+ string[] co = { "_global_", "Array", "Boolean", "Date", "Error",
+ "Function", "Math", "Number", "Object", "RegExp", "String" };
+ for(var i =0; i< co.length;i++ ) {
+ this.coreObjects.append(co[i]);
+ //this.match_strings.add(co[i]);
+ }
+ string[] ws = {
+ " :SPACE",
+ "\f:FORMFEED",
+ "\t:TAB" //,
+ // "\u0009:UNICODE_TAB",
+ // "\u000A:UNICODE_NBR",
+ // "\u0008:VERTICAL_TAB"
+ };
+ for(var i =0; i< ws.length;i++ ) {
+ var x = ws[i].split(":");
+ this.whitespaceNames.set(x[0],x[1]);
+ }
+
+ ws = {
+ "\n:NEWLINE",
+ "\r:RETURN" //,
+ // "\u000A:UNICODE_LF",
+ // "\u000D:UNICODE_CR",
+ // "\u2029:UNICODE_PS",
+ // "\u2028:UNICODE_LS"
+ };
+ for(var i =0; i< ws.length;i++ ) {
+ var x = ws[i].split(":");
+ this.newlineNames.set(x[0],x[1]);
+ }
+
+
+ // << was keywords here...
+ //this.match_strings.add(x[0].substring(1));
+
+
+
+
+
+
+
+
+
+ }
+
+
+ }
+}
\ No newline at end of file
--- /dev/null
+
+/**
+ * @namespace JSDOC
+ * @class Packer
+ * Create a new packer
+ *
+ * Use with pack.js
+ *
+ *
+ * Usage:
+ * <code>
+ *
+
+var x = new JSON.Packer(target, debugTarget);
+
+x.files = an array of files
+x.srcfiles = array of files (that list other files...) << not supported?
+x.target = "output.pathname.js"
+x.debugTarget = "output.pathname.debug.js"
+
+
+
+x.pack(); // writes files etc..
+
+ *</code>
+ *
+ * Notes for improving compacting:
+ * if you add a jsdoc comment
+ * <code>
+ * /**
+ * eval:var:avarname
+ * eval:var:bvarname
+ * ....
+ * </code>
+ * directly before an eval statement, it will compress all the code around the eval,
+ * and not rename the variables 'avarname'
+ *
+ * Dont try running this on a merged uncompressed large file - it's used to be horrifically slow. not sure about now..
+ * Best to use lot's of small classes, and use it to merge, as it will cache the compaction
+ *
+ *
+ *
+ * Notes for translation
+ * - translation relies on you using double quotes for strings if they need translating
+ * - single quoted strings are ignored.
+ *
+ * Generation of indexFiles
+ * - translateIndex = the indexfile
+ *
+ *
+ *
+ *
+
+ */
+namespace JSDOC
+{
+ public errordomain PackerError {
+ ArgumentError
+ }
+
+
+ public class Packer : Object
+ {
+ /**
+ * @cfg {String} target to write files to - must be full path.
+ */
+ string target = "";
+ GLib.FileOutputStream targetStream = null;
+ /**
+ * @cfg {String} debugTarget target to write files debug version to (uncompacted)- must be full path.
+ */
+ string targetDebug = "";
+
+
+ GLib.FileOutputStream targetDebugStream = null;
+ /**
+ * @cfg {String} tmpDir (optional) where to put the temporary files.
+ * if you set this, then files will not be cleaned up
+ *
+ * at present we need tmpfiles - as we compile multiple files into one.
+ * we could do this in memory now, as I suspect vala will not be as bad as javascript for leakage...
+ *
+ */
+ //public string tmpDir = "/tmp"; // FIXME??? in ctor?
+
+
+
+ // list of files to compile...
+ public Gee.ArrayList<string> files;
+
+ /**
+ * @cfg activeFile ??? used???
+ */
+
+ public string activeFile = "";
+
+ public string outstr = ""; // if no target is specified - then this will contain the result
+
+ public PackerRun config;
+
+ public Packer(PackerRun config)
+ {
+ this.config = config;
+#if HAVE_JSON_GLIB
+ this.result = new Json.Object();
+#else
+ this.result_count = new Gee.HashMap <string,int>();
+
+ this.result = new Gee.HashMap<
+ string /* errtype*/ , Gee.HashMap<string /*fn*/, Gee.HashMap<int /*line*/, Gee.ArrayList<string>>>
+ >();
+
+#endif
+ this.files = new Gee.ArrayList<string>();
+
+ new Lang_Class(); ///initilizaze lang..
+
+ //this.tmp = Glib.get_tmp_dir(); // do we have to delete this?
+
+
+ }
+
+
+ // this could be another class really..
+
+ public enum ResultType {
+ err ,
+ warn;
+ public string to_string() {
+ switch(this) {
+ case err: return "ERR";
+ case warn: return "WARN";
+ default: assert_not_reached();
+ }
+
+ }
+ }
+ /**
+ * result of complication - a JSON object containing warnings / errors etc..
+ * FORMAT:
+ * warn-TOTAL : X (number of warnings.
+ * err-TOTAL: X (number of errors) << this indicates failure...
+ * warn : {
+ * FILENAME : {
+ * line : [ Errors,Errors,.... ]
+ * err : {
+ * .. sane format..
+ *
+ */
+
+#if HAVE_JSON_GLIB
+
+ public Json.Object result; // output - what's the complication result
+
+ public void logError(ResultType type, string filename, int line, string message) {
+
+ if (!this.result.has_member(type.to_string()+"-TOTAL")) {
+ this.result.set_int_member(type.to_string()+"-TOTAL", 1);
+ } else {
+ this.result.set_int_member(type.to_string()+"-TOTAL",
+ this.result.get_int_member(type.to_string()+"-TOTAL") +1
+ );
+ }
+
+
+ if (!this.result.has_member(type.to_string())) {
+ this.result.set_object_member(type.to_string(), new Json.Object());
+ }
+ var t = this.result.get_object_member(type.to_string());
+ if (!t.has_member(filename)) {
+ t.set_object_member(filename, new Json.Object());
+ }
+ var tt = t.get_object_member(filename);
+ if (!tt.has_member(line.to_string())) {
+ tt.set_array_member(line.to_string(), new Json.Array());
+ }
+ var tl = tt.get_array_member(line.to_string());
+ tl.add_string_element(message);
+
+ }
+
+ public bool hasErrors(string fn)
+ {
+ if (!this.result.has_member(ResultType.err.to_string())) {
+ return false;
+ }
+
+ if (fn.length < 1) {
+ return true;
+ }
+ var t = this.result.get_object_member(ResultType.err.to_string());
+
+ if (t.has_member(fn)) {
+ return true;
+ }
+ return false;
+ }
+ public void dumpErrors(ResultType type)
+ {
+ if (!this.result.has_member(type.to_string())) {
+ return;
+ }
+ var t = this.result.get_object_member(type.to_string());
+ t.foreach_member((obj, filename, node) => {
+ var linelist = node.dup_object();
+ linelist.foreach_member((linelistobj, linestr, nodear) => {
+ var errors= nodear.dup_array();
+ errors.foreach_element((errorar, ignore, nodestr) => {
+ print("%s: %s:%s %s\n", type.to_string(), filename, linestr, nodestr.get_string());
+ });
+ });
+
+ });
+ }
+#else
+ public Gee.HashMap <string,int> result_count; // output - what's the complication result
+
+ public Gee.HashMap<
+ string /* errtype*/ , Gee.HashMap<string /*fn*/, Gee.HashMap<int /*line*/, Gee.ArrayList<string>>>
+ > result;
+
+ public void logError(ResultType type, string filename, int line, string message) {
+
+
+ if (!this.result_count.has_key(type.to_string()+"-TOTAL")) {
+ this.result_count.set(type.to_string()+"-TOTAL", 1);
+ } else {
+ this.result_count.set(type.to_string()+"-TOTAL",
+ this.result_count.get(type.to_string()+"-TOTAL") +1
+ );
+ }
+
+
+
+ if (!this.result.has_key(type.to_string())) {
+ this.result.set(type.to_string(),
+ new Gee.HashMap<string /*fn*/, Gee.HashMap<int /*line*/, Gee.ArrayList<string>>>()
+ );
+ }
+ var t = this.result.get(type.to_string());
+ if (!t.has_key(filename)) {
+ t.set(filename, new Gee.HashMap<int /*line*/, Gee.ArrayList<string>>());
+ }
+ var tt = t.get(filename);
+ if (!tt.has_key(line)) {
+ tt.set(line, new Gee.ArrayList<string>());
+ }
+ var tl = tt.get(line);
+ tl.add(message);
+
+ }
+
+ public bool hasErrors(string fn)
+ {
+ if (!this.result.has_key(ResultType.err.to_string())) {
+ return false;
+ }
+
+ if (fn.length < 1) {
+ return true;
+ }
+ var t = this.result.get(ResultType.err.to_string());
+
+ if (t.has_key(fn)) {
+ return true;
+ }
+ return false;
+ }
+ public void dumpErrors(ResultType type)
+ {
+ if (!this.result.has_key(type.to_string())) {
+ return;
+ }
+ var t = this.result.get(type.to_string());
+ foreach(string filename in t.keys) {
+ var node = t.get(filename);
+ foreach(int line in node.keys) {
+ var errors = node.get(line);
+ foreach(string errstr in errors) {
+ print("%s: %s:%d %s\n", type.to_string(), filename, line, errstr);
+ }
+ }
+
+ }
+ }
+
+
+#endif
+
+
+
+ public void loadSourceIndexes(Gee.ArrayList<string> indexes)
+ {
+ foreach(var f in indexes) {
+ this.loadSourceIndex(f);
+ }
+ }
+
+ public void loadFiles(string[] fs)
+ {
+ // fixme -- prefix baseDir?
+ foreach(var f in fs) {
+ GLib.debug("add File: %s", f);
+ this.files.add(f); //?? easier way?
+ }
+ }
+ public void loadFile(string f)
+ {
+ // fixme -- prefix baseDir?
+ GLib.debug("add File: %s", f);
+ this.files.add(f);
+ GLib.debug("FILE LEN: %d", this.files.size);
+ }
+
+
+ public string pack(string target, string targetDebug = "") throws PackerError
+ {
+ this.target = target;
+ this.targetDebug = targetDebug;
+
+ if (this.files.size < 1) {
+ throw new PackerError.ArgumentError("No Files loaded before pack() called");
+ }
+ if (this.target.length > 0 ) {
+ this.targetStream = File.new_for_path(this.target).replace(null, false,FileCreateFlags.NONE);
+ }
+ if (this.targetDebug.length > 0 ) {
+ this.targetDebugStream = File.new_for_path(this.targetDebug).replace(null, false,FileCreateFlags.NONE);
+ }
+ return this.packAll();
+ }
+
+
+
+
+
+ /**
+ * load a dependancy list -f option
+ * @param {String} srcfile sourcefile to parse
+ *
+ */
+
+ public void loadSourceIndex(string in_srcfile)
+ {
+
+ var srcfile = in_srcfile;
+ if (srcfile[0] != '/') {
+ srcfile = config.opt_real_basedir + in_srcfile;
+ }
+ string str;
+ FileUtils.get_contents(srcfile,out str);
+
+ var lines = str.split("\n");
+ for(var i =0; i < lines.length;i++) {
+
+ var f = lines[i].strip();
+ if (f.length < 1 ||
+ Regex.match_simple ("^/", f) ||
+ !Regex.match_simple ("[a-zA-Z]+", f)
+ ){
+ continue; // blank comment or not starting with a-z
+ }
+
+ if (Regex.match_simple ("\\.js$", f)) {
+ this.files.add( f);
+ // js file..
+ continue;
+ }
+
+ // this maps Roo.bootstrap.XXX to Roo/bootstrap/xxx.js
+ // should we prefix? =- or should this be done elsewhere?
+
+ var add = f.replace(".", "/") + ".js";
+
+ if (add[0] != '/') {
+ add = config.opt_real_basedir + add;
+ }
+
+ if (this.files.contains(add)) {
+ continue;
+ }
+
+
+
+ this.files.add( add );
+
+ }
+ }
+
+
+ private string packAll() // do the packing (run from constructor)
+ {
+
+ //this.transOrigFile= bpath + '/../lang.en.js'; // needs better naming...
+ //File.write(this.transfile, "");
+ if (this.target.length > 0) {
+ this.targetStream.write("".data);
+ }
+
+ if (this.targetDebugStream != null) {
+ this.targetDebugStream.write("".data);
+ }
+
+
+ var tmpDir = GLib.DirUtils.make_tmp("roojspacker_XXXXXX");
+
+ foreach(var file in this.files) {
+
+ print("reading %s\n",file );
+
+ if (!FileUtils.test (file, FileTest.EXISTS) || FileUtils.test (file, FileTest.IS_DIR)) {
+ print("SKIP (is not a file) %s\n ", file);
+ continue;
+ }
+
+ var loaded_string = false;
+ string file_contents = "";
+ // debug Target
+
+ if (this.targetDebugStream !=null) {
+
+ FileUtils.get_contents(file,out file_contents);
+ this.targetDebugStream.write(file_contents.data);
+ loaded_string = false;
+ }
+ // it's a good idea to check with 0 compression to see if the code can parse!!
+
+ // debug file..
+ //File.append(dout, str +"\n");
+
+
+
+ var minfile = tmpDir + "/" + file.replace("/", ".");
+
+
+ // let's see if we have a min file already?
+ // this might happen if tmpDir is set ..
+
+
+ if ( FileUtils.test (minfile, FileTest.EXISTS)) {
+
+ var otv = File.new_for_path(file).query_info (FileAttribute.TIME_MODIFIED, 0).get_modification_time();
+ var mtv = File.new_for_path(minfile).query_info (FileAttribute.TIME_MODIFIED, 0).get_modification_time();
+
+
+ // print("%s : compare : Cache file %s to Orignal Time %s\n", file, mtv.to_iso8601(), otv.to_iso8601());
+ if (mtv.tv_usec > otv.tv_usec) {
+ continue; // file is newer or the same time..
+
+ }
+
+ }
+
+ print("COMPRESSING to %s\n", minfile);
+ //var codeComp = pack(str, 10, 0, 0);
+ if (config.opt_clean_cache && FileUtils.test (minfile, FileTest.EXISTS)) {
+ FileUtils.remove(minfile);
+ }
+ if (!loaded_string) {
+ FileUtils.get_contents(file,out file_contents);
+ }
+
+ this.packFile(file_contents, file, minfile);
+
+
+ }
+
+ // at this point if we have errors, we should stop..
+
+
+ this.dumpErrors(ResultType.warn);
+ this.dumpErrors(ResultType.err); // since they are fatal - display them last...
+
+
+
+
+ if (config.opt_dump_tokens || this.hasErrors("")) {
+
+ GLib.Process.exit(0);
+ }
+ print("MERGING SOURCE\n");
+
+ for(var i=0; i < this.files.size; i++) {
+ var file = this.files[i];
+ var minfile = tmpDir + "/" + file.replace("/", ".");
+
+
+ if ( !FileUtils.test(minfile, FileTest.EXISTS)) {
+ print("skipping source %s - does not exist\n", minfile);
+ continue;
+ }
+ string str;
+ FileUtils.get_contents(minfile, out str);
+ print("using MIN FILE %s\n", minfile);
+ if (str.length > 0) {
+ if (this.targetStream != null) {
+ this.targetStream.write(("// " +
+ ( (file.length > config.opt_real_basedir.length) ? file.substring(config.opt_real_basedir.length) : file ) +
+ "\n").data);
+
+ this.targetStream.write((str + "\n").data);
+
+ } else {
+ this.outstr += "//" +
+ ( (file.length > config.opt_real_basedir.length) ? file.substring(config.opt_real_basedir.length) : file ) + "\n";
+ this.outstr += "//" + file +"\n";
+
+ this.outstr += str + "\n";
+ }
+
+ }
+ if (config.opt_clean_cache) {
+ FileUtils.remove(minfile);
+ }
+
+ }
+ if (config.opt_clean_cache) {
+ FileUtils.remove(tmpDir);
+ }
+
+ if (this.target.length > 0 ) {
+ print("Output file: " + this.target);
+ }
+ if (this.targetDebug.length > 0) {
+ print("Output debug file: %s\n" , this.targetDebug);
+ }
+
+
+
+ // OUTPUT should be handled by PackerRun (so that this can be used as a library...)
+ if (this.outstr.length > 0 ) {
+ return this.outstr;
+ // stdout.printf ("%s", this.outstr);
+ }
+ return "";
+
+
+ }
+ /**
+ * Core packing routine for a file
+ *
+ * @param str - str source text..
+ * @param fn - filename (for reference?)
+ * @param minfile - min file location...
+ *
+ */
+
+ public string packFile (string str,string fn, string minfile)
+ {
+
+ var tr = new TokenReader(this);
+ tr.keepDocs =true;
+ tr.keepWhite = true;
+ tr.keepComments = true;
+ tr.sepIdents = true;
+ tr.collapseWhite = false;
+ tr.filename = fn;
+
+ // we can load translation map here...
+
+ TokenArray toks = tr.tokenize(new TextStream(str)); // dont merge xxx + . + yyyy etc.
+
+ if (config.opt_dump_tokens) {
+ toks.dump();
+ return "";
+ //GLib.Process.exit(0);
+ }
+
+ this.activeFile = fn;
+
+ // and replace if we are generating a different language..
+
+
+ //var ts = new TokenStream(toks);
+ //print(JSON.stringify(toks, null,4 )); Seed.quit();
+ var ts = new Collapse(toks.tokens, this, fn);
+
+ //ts.dumpAll(""); print("Done collaps"); Process.exit(1);
+
+ // print(JSON.stringify(ts.tokens, null,4 )); Seed.quit();
+ //return;//
+ if (!config.opt_skip_scope) {
+ var sp = new ScopeParser(ts, this, fn);
+
+ //sp.packer = this;
+ sp.buildSymbolTree();
+ sp.mungeSymboltree();
+
+
+ sp.printWarnings();
+ }
+
+
+ //print(sp.warnings.join("\n"));
+ //(new TokenStream(toks.tokens)).dumpAll(""); GLib.Process.exit(1);
+ // compress works on the original array - in theory the replacements have already been done by now
+ var outf = CompressWhite(new TokenStream(toks.tokens), this, config.opt_keep_whitespace); // do not kill whitespace..
+
+
+ // debug("RESULT: \n %s\n", outf);
+
+
+
+ if (outf.length > 0 && minfile.length > 0 && !this.hasErrors(fn)) {
+ FileUtils.set_contents(minfile, outf);
+
+ }
+
+
+ return outf;
+
+
+
+ }
+
+
+ public string md5(string str)
+ {
+
+ return GLib.Checksum.compute_for_string(GLib.ChecksumType.MD5, str);
+
+ }
+
+ //stringHandler : function(tok) -- not used...
+ }
+
+}
--- /dev/null
+
+/**
+
+ THIS IS THE ENTRY POINT...
+
+ the application
+ -- in theory this code can be used as a library... but this is the standard command line version...
+
+
+ valac --vapidir=/usr/share/vala/vapi
+ --vapidir=/usr/share/vala/vapi
+ --vapidir=/usr/share/vala-0.30/vapi
+ --thread -g
+ JSDOC/Lang.vala JSDOC/TextStream.vala JSDOC/TokenReader.vala JSDOC/Token.vala JSDOC/TokenStream.vala JSDOC/Packer.vala
+ JSDOC/Collapse.vala JSDOC/ScopeParser.vala JSDOC/Scope.vala JSDOC/Identifier.vala JSDOC/CompressWhite.vala
+ JSDOC/PackerRun.vala --pkg glib-2.0 --pkg gee-1.0 --pkg gio-2.0 --pkg posix -o /tmp/jspack --target-glib=2.32 -X -lm
+
+
+*/
+
+JSDOC.PackerRun _PackerRun;
+
+namespace JSDOC
+{
+ // --------------- <<<<<<< <MAIN HERE....
+
+#if HAVE_OLD_GLIB
+ public class PackerRun : Object
+#else
+ public class PackerRun : Application
+#endif
+ {
+ public string opt_target = null;
+ public string opt_debug_target = null;
+// public string opt_tmpdir = null;
+ private string opt_basedir = null;
+
+ /**
+ * @cfg baseDir -- prefix the files listed in indexfiles with this.
+ */
+
+ public string opt_real_basedir = null; // USE this one it's calcuated based on current path..
+
+ public string opt_doc_target = null;
+ public string opt_doc_template_dir = null;
+ public bool opt_doc_include_private = false;
+
+ [CCode (array_length = false, array_null_terminated = true)]
+ private string[]? opt_files = null;
+ [CCode (array_length = false, array_null_terminated = true)]
+ private string[]? opt_files_from = null;
+
+
+ public bool opt_debug = false;
+
+ /**
+ * @cfg {Boolean} opt_skip_scope (optional) skip Scope parsing and replacement.
+ * usefull for debugging...
+ */
+ public bool opt_skip_scope = false;
+
+ /**
+ * @cfg {Boolean} opt_keep_whitespace (optional) do not remove white space in output.
+ * usefull for debugging compressed files.
+ */
+
+ public bool opt_keep_whitespace = false;
+
+ /**
+ * @cfg {Boolean} opt_dump_tokens (optional) read the first file and dump the tokens.
+ * usefull for debugging...
+ */
+
+ public bool opt_dump_tokens = false;
+
+
+ /**
+ * @cfg {Boolean} opt_clean_cache (optional) clean up temp files after done -
+ * Defaults to false if you set tmpDir, otherwise true.
+ */
+
+ public bool opt_clean_cache = true;
+
+ // not actually an option yet..
+
+ public string opt_doc_ext = "html";
+
+ public static PackerRun singleton()
+ {
+ if (_PackerRun == null) {
+ _PackerRun = new PackerRun();
+ }
+ return _PackerRun;
+ }
+
+ public PackerRun ()
+ {
+#if !HAVE_OLD_GLIB
+ Object(
+ application_id: "org.roojs.jsdoc.packerrun",
+ flags: ApplicationFlags.HANDLES_COMMAND_LINE
+ );
+#endif
+
+
+ }
+
+
+ public void parseArgs(string[] args)
+ {
+ GLib.OptionEntry[] options = {
+ OptionEntry() {
+ long_name = "jsfile",
+ short_name = 'f',
+ flags = 0,
+ arg = OptionArg.FILENAME_ARRAY,
+ arg_data = &opt_files,
+ description = "add a file to compile",
+ arg_description = null
+ },
+ OptionEntry() {
+ long_name = "target",
+ short_name = 't',
+ flags = 0,
+ arg = OptionArg.STRING,
+ arg_data = &opt_target,
+ description = "Target File to write (eg. roojs.js)",
+ arg_description = null
+ },
+ OptionEntry() {
+ long_name = "debug-target",
+ short_name = 'T',
+ flags = 0,
+ arg = OptionArg.STRING,
+ arg_data = &opt_debug_target,
+ description = "Target File to write debug code (eg. roojs-debug.js)",
+ arg_description = null
+ },
+ //{ "tmpdir", 'm', 0, OptionArg.STRING, ref opt_tmpdir, "Temporary Directory to use (defaults to /tmp)", null },
+ /*
+ OptionEntry() {
+ long_name = "tmpdir",
+ short_name = 'm',
+ flags = 0,
+ arg = OptionArg.STRING,
+ arg_data = &opt_tmpdir,
+ description = "Temporary Directory - used by documentation tool?",
+ arg_description = null
+ },
+ */
+
+ OptionEntry() {
+ long_name = "basedir",
+ short_name = 'b',
+ flags = 0,
+ arg = OptionArg.STRING,
+ arg_data = &opt_basedir,
+ description = "Base directory (where the files listed in index files are located.)",
+ arg_description = null
+ },
+
+ OptionEntry() {
+ long_name = "index-files",
+ short_name = 'i',
+ flags = 0,
+ arg = OptionArg.FILENAME_ARRAY,
+ arg_data = &opt_files_from,
+ description = "files that contain listing of files to compile",
+ arg_description = null
+ },
+
+ OptionEntry() {
+ long_name = "keep-whitespace",
+ short_name = 'w',
+ flags = 0,
+ arg = OptionArg.NONE,
+ arg_data = &opt_keep_whitespace,
+ description = "Keep whitespace",
+ arg_description = null
+ },
+
+ OptionEntry() {
+ long_name = "skip-scope",
+ short_name = 's',
+ flags = 0,
+ arg = OptionArg.NONE,
+ arg_data = &opt_skip_scope,
+ description = "Skip scope parsing and variable replacement",
+ arg_description = null
+ },
+ OptionEntry() {
+ long_name = "debug",
+ short_name = 'D',
+ flags = 0,
+ arg = OptionArg.NONE,
+ arg_data = &opt_debug,
+ description = "Show debug messages",
+ arg_description = null
+ },
+
+ OptionEntry() {
+ long_name = "dump-tokens",
+ short_name = 'k',
+ flags = 0,
+ arg = OptionArg.NONE,
+ arg_data = &opt_dump_tokens,
+ description = "Dump the tokens from a file",
+ arg_description = null
+ },
+
+ OptionEntry() {
+ long_name = "clean-cache",
+ short_name = 'c',
+ flags = 0,
+ arg = OptionArg.NONE,
+ arg_data = &opt_clean_cache,
+ description = "Clean up the cache after running (slower)",
+ arg_description = null
+ },
+
+
+ // fixme -- keepwhite.. cleanup
+
+ // documentation options
+ // usage: roojspacker --basedir roojs1 \
+ // --doc-target roojs1/docs \
+ // --index-files roojs1/buildSDK/dependancy_core.txt \
+ // --index-files roojs1/buildSDK/dependancy_ui.txt \
+ // --index-files roojs1/buildSDK/dependancy_bootstrap.txt \
+ // --doc-template-dir \
+
+ OptionEntry() {
+ long_name = "doc-target",
+ short_name = 'd',
+ flags = 0,
+ arg = OptionArg.STRING,
+ arg_data = &opt_doc_target,
+ description = "Target location for documetnation",
+ arg_description = null
+ },
+
+ OptionEntry() {
+ long_name = "doc-template-dir",
+ short_name = 'p',
+ flags = 0,
+ arg = OptionArg.STRING,
+ arg_data = &opt_doc_template_dir,
+ description = "Template directory for documentation",
+ arg_description = null
+ },
+
+
+ OptionEntry() {
+ long_name = "doc-private",
+ short_name = 'P',
+ flags = 0,
+ arg = OptionArg.NONE,
+ arg_data = &opt_doc_include_private,
+ description = "Document Private functions",
+ arg_description = null
+ }
+ };
+ var opt_context = new OptionContext ("JSDOC Packer");
+
+ try {
+ opt_context.set_help_enabled (true);
+ opt_context.add_main_entries (options, null);
+ if (!opt_context.parse ( ref args)) {
+ print("options parse error");
+ GLib.Process.exit(Posix.EXIT_FAILURE);
+ }
+
+
+
+
+ } catch (OptionError e) {
+ stdout.printf ("error: %s\n", e.message);
+ stdout.printf ("Run '%s --help' to see a full list of available command line options.\n %s",
+ args[0], opt_context.get_help(true,null));
+ GLib.Process.exit(Posix.EXIT_FAILURE);
+
+ }
+
+
+
+ }
+ public void runPack()
+ {
+ // what's required...
+ if (opt_debug) {
+ GLib.Log.set_handler(null,
+ GLib.LogLevelFlags.LEVEL_DEBUG | GLib.LogLevelFlags.LEVEL_WARNING,
+ (dom, lvl, msg) => {
+ print("%s: %s\n", dom, msg);
+ });
+ }
+
+
+
+
+ // set the base directory...
+ var curdir = Environment.get_current_dir() + Path.DIR_SEPARATOR_S;
+ if (opt_basedir == null) {
+
+ opt_real_basedir = curdir;
+ } else if (opt_basedir[0] == '/') {
+ opt_real_basedir = opt_basedir;
+ } else {
+ opt_real_basedir = curdir + opt_basedir;
+ }
+ // suffix a slash..
+ if (opt_real_basedir [opt_real_basedir .length-1].to_string() != Path.DIR_SEPARATOR_S) {
+ opt_real_basedir += Path.DIR_SEPARATOR_S;
+ }
+
+ GLib.debug("real_base_dir = '%s' : opt_basedir ='%s'\n", opt_real_basedir , opt_basedir);
+
+
+ if (opt_files == null && opt_files_from == null) {
+ GLib.error("You must list some files with -f or -i to compile - see --help for more details");
+ GLib.Process.exit(1);
+ }
+
+
+ // initialize the Packer (does not parse anything..)
+ var p = new Packer( this );
+
+
+ if (opt_files != null) {
+
+ foreach (var f in opt_files) {
+ GLib.debug("Adding File %s", f);
+ p.loadFile(f); // just adds to list of files to parse (no parsing yet..)
+ }
+ }
+ if (opt_files_from != null) {
+
+ foreach (var f in opt_files_from) {
+ GLib.debug("Adding File %s", f);
+ p.loadSourceIndex(f);
+ }
+ }
+
+ var run_pack = false;
+ if (opt_target != null || opt_debug_target != null || opt_dump_tokens) {
+ // do the actual packing...
+ p.pack( opt_target == null ? "" : opt_target ,
+ opt_debug_target == null ? "" : opt_debug_target );
+
+ if (p.outstr.length > 0 ) {
+ stdout.printf ("%s", p.outstr);
+ }
+ return;
+ }
+ if (opt_doc_target != null) {
+ // remove trailing /
+ opt_doc_target = opt_doc_target.has_suffix("/") ?
+ opt_doc_target.substring(0, opt_doc_target.length-1) : opt_doc_target;
+ var d = new JSDOC.DocBuilder(p);
+ return;
+ }
+ GLib.error("either select output target or doc output target");
+
+
+
+ }
+
+ }
+
+}
\ No newline at end of file
--- /dev/null
+
+namespace JSDOC {
+ class PrettyPrint : Object
+ {
+
+ // pretty simple...
+ static string escapeHTML(string str) {
+ return str.replace("&","&").
+ replace(">",">").
+ replace("<","<").
+ replace("\"",""");
+ }
+
+ public static string toPretty(string str)
+ {
+
+ var txs = new TextStream(str);
+ var tr = new TokenReader(null);
+ tr.keepComments = true;
+ tr.keepWhite = true;
+ var toks = tr.tokenize(txs);
+
+ //var sp = new ScopeParser(new Collapse(toks));
+ //sp.buildSymbolTree();
+
+
+ // sp.mungeSymboltree();
+ var r = "";
+ //r += sp.warnings.join("<BR>");
+ //r == "<BR>";
+
+
+
+
+ var cs = ""; // current style..
+
+ // loop through and print it...?
+
+
+ for (var i = 0;i < toks.length; i++) {
+ var ns = toStyle(toks.get(i),cs);
+ if (ns != cs) {
+ // change of style
+ if (cs.length > 0) { r += "</span>"; };
+ r +="<span class=\"jsdoc-"+ns+"\">";
+ cs = ns;
+ }
+ if (toks.get(i).identifier != null) {
+
+ r += "<span class=\"with-ident2\">" +
+ escapeHTML(toks.get(i).data) + "</span>";
+ continue;
+
+ }
+ r += escapeHTML(toks.get(i).data); //.replace(/\n/g, "<BR/>\n");
+ }
+ if (cs.length > 0) r += "</span>";
+
+ return "<code class=\"jsdoc-pretty\">"+r+"</code>";
+
+
+ }
+
+ static string toStyle(Token tok, string cs)
+ {
+
+ if (tok.isName(TokenName.SPACE) || tok.isName(TokenName.NEWLINE) ) {
+ return cs;
+ }
+ if (tok.isName(TokenName.MULTI_LINE_COMM) ||
+ tok.isName(TokenName.JSDOC) ||
+ tok.isName(TokenName.SINGLE_LINE_COMM) ) {
+ return "comment";
+
+ }
+ if (tok.isType(TokenType.STRN)) {
+ return "string";
+ }
+ // other 'vary things??
+ if (tok.isType(TokenType.NAME) || tok.data == "." || tok.isName(TokenName.THIS)) {
+ return "var";
+ }
+ var r = new Regex("^[a-zA-Z]+");
+
+ if (r.match(tok.data)) {
+ return "keyword";
+ }
+ return "syntax";
+ }
+ }
+}
\ No newline at end of file
--- /dev/null
+
+
+namespace JSDOC
+{
+ public int Scope_gid = 0;
+
+ public class Scope : Object
+ {
+
+ int id ;
+ int braceN ;
+ public Scope parent;
+ public Gee.ArrayList<Scope> subScopes;
+ public string ident = ""; // used by the walker...
+
+ Gee.HashMap<string,Identifier> identifier_map; // map of identifiers to {Identifier} objects
+ Gee.ArrayList<Identifier> identifier_list;
+
+ Gee.HashMap<string,string> hints;
+ bool mungeM = true;
+ //ident: '',
+
+ bool munged = false;
+ Gee.HashMap<string,bool> protectedVars ; // only used by to parent..
+ Token? token;
+ // lastIdent is only used on the documentation parser..
+ public Scope(int braceN, Scope? parent, int startTokN, string lastIdent, Token? token) // Identifier? lastIdent
+ {
+ if (lastIdent.length> 0 ) {
+ GLib.debug("NEW SCOPE: %s", lastIdent);
+ }
+ this.ident = "";
+ this.braceN = braceN;
+ this.parent = parent;
+ this.id = startTokN;
+ this.identifier_map = new Gee.HashMap<string,Identifier>();
+ this.identifier_list = new Gee.ArrayList<Identifier>();
+ this.subScopes = new Gee.ArrayList<Scope> ();
+ this.hints = new Gee.HashMap<string,string>();
+ this.protectedVars = new Gee.HashMap<string,bool>();
+ this.ident = lastIdent;
+ this.id = Scope_gid++;
+ this.token = token;
+ //print("ADD SCOPE(" + this.gid + ") TO "+ (parent ? this.parent.gid : 'TOP') + ' : ' +
+ // (token ? token.toString() : ''));
+
+ if (parent != null) {
+ this.parent.subScopes.add(this);
+ }
+ Scope.init();
+
+ }
+
+
+
+
+
+
+
+
+ /**
+ * dump the scope to StdOut...
+ *
+ */
+ public void dump (string indent = "")
+ {
+ //indent = indent || '';
+
+ var str = "";
+ var idents = this.identifier_list;
+ var iter = idents.list_iterator();
+ while (iter.next()) {
+ var identifier = iter.get();
+ str += (str.length > 0 ? ", " : "");
+ str += indent + " " + identifier.name + "=>" + identifier.mungedValue ;
+ }
+
+ print( "\n"+
+ indent + "Scope: %d\n" +
+ indent + "Started: %s\n" +
+ indent + "- idents..: %s\n",
+
+ this.id,
+ this.token != null ? this.token.asString() : "TOP",
+ str
+ // " + XObject.keys(this.identifiers).join(", ") + "
+ );
+ foreach(var s in this.subScopes) {
+ s.dump(indent + " ");
+ };
+
+
+ }
+
+
+ public Identifier declareIdentifier(string symbol, Token token)
+ {
+
+ //print("SCOPE : " + this.gid + " :SYM: " + symbol + " " + token.toString()+"");
+
+ if (!this.identifier_map.has_key(symbol)) {
+ var nid = new Identifier(symbol, this);
+ this.identifier_list.add(nid);
+ this.identifier_map.set(symbol, nid);
+
+ }
+
+ //if (typeof(token) != 'undefined') { // shoudl this happen?
+ token.identifier = this.identifier_map.get(symbol);
+
+ //}
+ if (this.braceN < 0) {
+ // then it's global...
+ this.identifier_map.get(symbol).toMunge = false;
+ }
+
+
+ this.addToParentScope(symbol);
+ return this.identifier_map.get(symbol);
+ }
+
+
+
+ public Identifier? getIdentifier(string symbol, Token token)
+ {
+ if (!this.identifier_map.has_key(symbol)) {
+ return null;
+ //if (['String', 'Date'].indexOf(symbol)> -1) {
+ // return false;
+ //}
+
+ //print("SCOPE : " + this.gid +" = SYMBOL NOT FOUND?" + token.toString());
+ //return n;
+ }
+ //print("SCOPE : " + this.gid +" = FOUND:" + token.toString());
+ return this.identifier_map.get(symbol);
+ }
+
+ public void addHint(string varName, string varType) {
+
+ this.hints.set(varName, varType);
+ }
+ public void preventMunging () {
+ this.mungeM = false;
+ }
+
+ //usedsymcache : false,
+
+ public string[] getUsedSymbols () {
+
+ string[] result = {};
+
+ // if (this.usedsymcache !== false) {
+ // return this.usedsymcache;
+ //}
+
+ var idents = this.identifier_list;
+ var iter = idents.list_iterator();
+ while (iter.next()) {
+ var identifier = iter.get();
+ //println('<b>'+i+'</b>='+typeof(idents[i]) +'<br/>');
+ //var identifier = this.identifier_map.get(i);
+ var mungedValue = identifier.mungedValue;
+
+ if (mungedValue.length < 1) {
+ //println(identifier.toSource());
+ mungedValue = identifier.name;
+ }
+ result += mungedValue;
+ }
+ //println("Symbols for ("+ this.id +"): <B>" + result.join(',') + "</B><BR/>");
+ //this.usedsymcache = result;
+ return result;
+ }
+
+ string[] getAllUsedSymbols()
+ {
+ var result = this.getUsedSymbols();
+ var scope = this.parent;
+ while (scope != null) {
+ var ps = scope.getUsedSymbols();
+ for (var i =0; i< ps.length; i++) {
+ result += ps[i];
+ }
+ scope = scope.parent;
+ }
+ //println("Done - addused");
+ return result;
+ }
+ /** - we need to register short vairalbes so they never get munged into.. */
+ public void addToParentScope(string ident)
+ {
+ if (ident.length > 2) {
+ return;
+ }
+ var scope = this.parent;
+ while (scope != null) {
+ //println("addused:"+scope.id);
+ if (scope.parent != null) {
+ scope.protectedVars.set(ident, true);
+ }
+ scope = scope.parent;
+ }
+
+ }
+ public bool isProtectedVar(string ident)
+ {
+ //if (ident == "_this") { // not sure why we need to protect _this. as it should be calculated as protected..
+ // return true;
+ //}
+
+ if (ident.length > 2) {
+ return false;
+ }
+ var scope = this.parent;
+ while (scope != null) {
+ //println("addused:"+scope.id);
+ if (scope.parent != null) {
+ if (scope.protectedVars.has_key(ident)) {
+ return true;
+ }
+ }
+ scope = scope.parent;
+ }
+ return false;
+ }
+
+
+
+
+ /**
+ * set's all the munged values on the identifiers.
+ *
+ *
+ */
+
+ public void munge()
+ {
+
+ if (!this.mungeM) {
+ // Stop right here if this scope was flagged as unsafe for munging.
+ // println("MUNGE: SKIP - Scope" + this.id+"</BR>");
+ return;
+ }
+ if (this.munged) {
+ return;
+ }
+
+
+
+
+ var pickFromSet = 1;
+
+ // Do not munge symbols in the global scope!
+ if (this.parent == null) {
+ // same code at bottom... ?? goto::
+ this.munged = true;
+ //println("Doing sub scopes");
+ for (var j = 0; j < this.subScopes.size; j++) {
+ this.subScopes.get(j).munge();
+
+ }
+
+ return;
+ }
+
+ string[] all = {};
+ var iter = this.identifier_list.list_iterator();
+ while (iter.next()) {
+ all += iter.get().name;
+ }
+ //print("MUNGE: %s\n", string.joinv(",", all));
+
+ //println("MUNGE: Building FreeSyms:" + this.id+"</BR>");
+
+ Gee.ArrayList<string> freeSymbols= new Gee.ArrayList<string>();
+
+ var sy = this.getAllUsedSymbols();
+
+ // we need to remove the used from the free.....
+
+
+
+
+
+
+ Scope.array_merge(freeSymbols,Scope.ones,sy);
+
+ var repsym = "";
+ //println(freeSymbols.toSource());
+
+ //println("MUNGE: Replacing " + this.id+"</BR>");
+ iter = this.identifier_list.list_iterator();
+ while (iter.next()) {
+ var i = iter.get().name;
+
+ // is the identifer in the global scope!?!!?
+
+
+ if (!this.identifier_map.get(i).toMunge) {
+ //print("SKIP toMunge==false : " + i)
+ continue;
+ }
+
+ if (this.isProtectedVar(i)) {
+ //print("SKIP PROTECTED: " + i)
+ continue; //
+ }
+
+
+
+ //if (this.identifiers[i].constructor != Identifier) {
+ // print("SKIP NOT IDENTIFIER : " + i)
+ // continue;
+ // }
+ // println("IDENT:" +i+'</BR>');
+
+ if (repsym.length < 1) {
+ if (freeSymbols.size < 1) {
+ Scope.array_merge(freeSymbols,Scope.twos,sy);
+ }
+ repsym = freeSymbols.remove_at(0); // pop off beginngin???
+ }
+
+ var identifier = this.identifier_map.get(i);
+ //println(typeof(identifier.name));
+ var mungedValue = identifier.name;
+
+ if (mungedValue.length < 3) { // don't bother replacing 1&2 character variables..
+ continue;
+ }
+
+ //println([ repsym,mungedValue ]);
+
+ if (this.mungeM && repsym.length < mungedValue.length) {
+ //print("REPLACE:"+ mungedValue +" with " + repsym );
+ mungedValue = repsym;
+ repsym = "";
+ }
+
+ identifier.mungedValue = mungedValue;
+ }
+ //println("MUNGE: Done " + this.id+"</BR>");
+
+ this.munged = true;
+ //println("Doing sub scopes");
+ for (var j = 0; j < this.subScopes.size; j++) {
+ this.subScopes.get(j).munge();
+ }
+ }
+
+
+
+ // ---------------------- static part... --------------------
+
+
+
+ static void array_merge(Gee.ArrayList<string> fs, string[] toadd, string[] ignore)
+ {
+ var got_it = false;
+ foreach(var i in toadd) {
+ got_it = false;
+ foreach(var ig in ignore) {
+ if (i == ig) {
+ got_it = true;
+ break;
+ }
+ }
+ if (got_it) {
+ continue;
+ }
+ fs.add(i);
+ }
+
+ }
+ static bool initialized = false;
+ public static Gee.ArrayList<string> builtin;
+ public static Gee.ArrayList<string> skips;
+
+ public static string[] ones;
+ public static string[] twos;
+ // static string[] threes : [],
+ static void init ()
+ {
+ if (Scope.initialized) {
+ return;
+ }
+ Scope.initialized = true;
+ Scope.builtin = new Gee.ArrayList<string>();
+ array_merge(Scope.builtin, "NaN,top".split(","), {});
+
+ Scope.skips = new Gee.ArrayList<string>();
+ array_merge(Scope.skips, "as,is,do,if,in,for,int,new,try,use,var,NaN,top".split(","), {});
+
+ Scope.ones = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z".split(",");
+ var n = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,0,1,2,3,4,5,6,7,8,9".split(",");
+
+ string[] twos = {};
+ for(var i = 0; i < Scope.ones.length; i++) {
+ for(var j = 0; j < n.length; j++) {
+ string tw = Scope.ones[i] + n[j];
+ if (Scope.skips.index_of(tw) < 0) {
+ twos += tw;
+ }
+
+ /*
+ for(var k = 0; k < n.length; k++) {
+ var thr = a[i] + n[j] + n[k];
+ //println("thr="+ thr + ":iOf="+this.skips.indexOf(thr) );
+ if (this.skips.indexOf(thr) < 0) {
+ //println("+"+thr);
+ this.threes.push(thr);
+ }
+
+ }
+ */
+ }
+ }
+ Scope.twos = twos;
+ //println("done creating var list");
+ //println("threes="+ this.threes.toSource());
+ //throw "DONE";
+
+
+ }
+
+ }
+}
+
+
+
--- /dev/null
+
+
+
+namespace JSDOC {
+
+ public enum ScopeParserMode {
+ BUILDING_SYMBOL_TREE,
+ PASS2_SYMBOL_TREE
+ }
+
+
+ public class ScopeParser : Object {
+
+ TokenStream ts;
+ Gee.ArrayList<string> warnings;
+
+
+ static Gee.ArrayList<string> idents;
+ static bool initialized = false;
+
+
+ Scope globalScope;
+ ScopeParserMode mode;
+ //braceNesting : 0,
+ Gee.HashMap<int,Scope> indexedScopes;
+ bool munge = true;
+
+ int expN = 0;
+ int braceNesting = 0;
+
+
+ static void init()
+ {
+ if (ScopeParser.initialized) {
+ return;
+ }
+ string[] identsar = {
+
+ "break",
+ "case",
+ "continue",
+ "default",
+ "delete",
+ "do",
+ "else",
+ "export",
+ "false",
+ "for",
+ "function",
+ "if",
+ "import",
+ "in",
+ "new",
+ "null",
+ "return",
+ "switch",
+ "this",
+ "true",
+ "typeof",
+ "var",
+ "void",
+ "while",
+ "with",
+
+ "catch",
+ "class",
+ "const",
+ "debugger",
+ "enum",
+ "extends",
+ "finally",
+ "super",
+ "throw",
+ "try",
+
+ "abstract",
+ "boolean",
+ "byte",
+ "char",
+ "double",
+ "final",
+ "float",
+ "goto",
+ "implements",
+ "instanceof",
+ "int",
+ "interface",
+ "long",
+ "native",
+ "package",
+ "private",
+ "protected",
+ "public",
+ "short",
+ "static",
+ "synchronized",
+ "throws",
+ "transient",
+ "include",
+ "undefined"
+ };
+ ScopeParser.idents = new Gee.ArrayList<string>();
+ for(var i = 0 ; i < identsar.length;i++) {
+ ScopeParser.idents.add(identsar[i]);
+ }
+ }
+
+ private Packer packer;
+ string filename;
+ public ScopeParser(TokenStream ts, Packer packer, string filename) {
+ this.ts = ts; // {TokenStream}
+ this.packer = packer;
+ this.filename = filename;
+ this.warnings = new Gee.ArrayList<string>();
+
+ this.globalScope = new Scope(-1, null, -1, "", null);
+ this.indexedScopes = new Gee.HashMap<int,Scope>();
+
+ //this.indexedg = {};
+ //this.timer = new Date() * 1;
+ }
+
+
+
+
+ /*void warn(string s)
+ {
+ //print('****************' + s);
+ this.warnings.add(s);
+ //println("WARNING:" + htmlescape(s) + "<BR>");
+ }
+ */
+
+ // defaults should not be initialized here =- otherwise they get duped on new, rather than initalized..
+
+
+
+
+
+
+ public void buildSymbolTree()
+ {
+ //println("<PRE>");
+
+ this.ts.rewind();
+ this.braceNesting = 0;
+
+ // print(JSON.stringify(this.ts.tokens, null,4));
+
+
+ this.globalScope =new Scope(-1, null, -1, "", null);
+ this.indexedScopes = new Gee.HashMap<int,Scope>();
+ this.indexedScopes.set(0, this.globalScope );
+
+ this.mode = ScopeParserMode.BUILDING_SYMBOL_TREE;
+
+ this.parseScope(this.globalScope);
+
+ // print("---------------END PASS 1 ---------------- \n");
+
+ }
+
+ public void mungeSymboltree()
+ {
+ if (!this.munge) {
+ return;
+ }
+
+ // One problem with obfuscation resides in the use of undeclared
+ // and un-namespaced global symbols that are 3 characters or less
+ // in length. Here is an example:
+ //
+ // var declaredGlobalVar;
+ //
+ // function declaredGlobalFn() {
+ // var localvar;
+ // localvar = abc; // abc is an undeclared global symbol
+ // }
+ //
+ // In the example above, there is a slim chance that localvar may be
+ // munged to 'abc', conflicting with the undeclared global symbol
+ // abc, creating a potential bug. The following code detects such
+ // global symbols. This must be done AFTER the entire file has been
+ // parsed, and BEFORE munging the symbol tree. Note that declaring
+ // extra symbols in the global scope won't hurt.
+ //
+ // Note: Since we go through all the tokens to do this, we also use
+ // the opportunity to count how many times each identifier is used.
+
+ this.ts.rewind();
+ this.braceNesting = 0;
+ this.mode = ScopeParserMode.PASS2_SYMBOL_TREE;
+
+ //println("MUNGING?");
+
+ this.parseScope(this.globalScope);
+
+
+
+ this.globalScope.munge();
+
+ // this.globalScope.dump();
+ }
+
+
+
+
+
+ void parseScope(Scope scope) // parse a token stream..
+ {
+ //this.timerPrint("parseScope EnterScope");
+ //this.log(">>> ENTER SCOPE" + this.scopes.length);
+
+ var isObjectLitAr = new Gee.ArrayList<bool>();
+ isObjectLitAr.add(false);
+
+
+
+ //var scopeIndent = '';
+ //this.scopes.forEach(function() {
+ // scopeIndent += ' ';
+ //});
+ //print(">> ENTER SCOPE");
+
+
+
+
+ var token = this.ts.lookTok(1);
+ while (token != null) {
+ // this.timerPrint("parseScope AFTER lookT: " + token.toString());
+ //this.dumpToken(token , this.scopes, this.braceNesting);
+ //print("SCOPE: %s\n" , token.asString());
+ //this.log(token.data);
+ //if (token.type == 'NAME') {
+ // print('*' + token.data);
+ //}
+ switch(token.type) {
+
+ case TokenType.KEYW:
+
+ switch(token.name) {
+ case TokenName.VAR:
+ case TokenName.CONST: // not really relivant as it's only mozzy that does this.
+ //print('SCOPE-VAR:' + token.toString());
+
+ //this.log("parseScope GOT VAR/CONST : " + token.toString());
+ while (true) {
+ token = this.ts.nextTok();
+ //!this.debug|| print( token.toString());
+ // print('SCOPE-VAR-VAL:' + JSON.stringify(token, null, 4));
+ if (token == null) { // can return false at EOF!
+ break;
+ }
+ if (token.name == TokenName.VAR || token.data == ",") { // kludge..
+ continue;
+ }
+ //this.logR("parseScope GOT VAR : <B>" + token.toString() + "</B>");
+ if (token.type != TokenType.NAME) {
+ this.ts.printRange( int.max(this.ts.cursor-10,0), this.ts.cursor);
+ this.packer.logError(
+ Packer.ResultType.err,
+ this.filename,
+ token.line,
+ "var without indent"
+ );
+ //print( "var without ident");
+ //GLib.Process.exit (0);
+ }
+
+
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ var identifier = scope.getIdentifier(token.data,token) ;
+
+ if (identifier == null) {
+ scope.declareIdentifier(token.data, token);
+ } else {
+ token.identifier = identifier;
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "The variable '" +token.data + "' has already been declared in the same scope"
+ );
+ }
+ }
+
+ token = this.ts.nextTok();
+ //!this.debug|| print(token.toString());
+ /*
+ assert token.getType() == Token.SEMI ||
+ token.getType() == Token.ASSIGN ||
+ token.getType() == Token.COMMA ||
+ token.getType() == Token.IN;
+ */
+ if (token.name == TokenName.IN) {
+ break;
+ } else {
+ //var bn = this.braceNesting;
+ var bn = this.braceNesting;
+ var nts = new Gee.ArrayList<Token>();
+ while (true) {
+ if (token == null || token.type == TokenType.VOID || token.data == ",") {
+ break;
+ }
+ nts.add(token);
+ token = this.ts.nextTok();
+ }
+ if (nts.size > 0) {
+ var TS = this.ts;
+ this.ts = new TokenStream(nts);
+ this.parseExpression(scope);
+ this.ts = TS;
+ }
+
+ this.braceNesting = bn;
+ //this.braceNesting = bn;
+ //this.logR("parseScope DONE : <B>ParseExpression</B> - tok is:" + this.ts.lookT(0).toString());
+
+ token = this.ts.lookTok(1);
+ //!this.debug||
+ // print("AFTER EXP: " + token.toString());
+ if (token.data == ";") {
+ break;
+ }
+ }
+ }
+
+ //print("VAR:")
+ //this.ts.dump(vstart , this.ts.cursor);
+
+ break;
+
+
+ case TokenName.FUNCTION:
+ //if (this.mode == 'BUILDING_SYMBOL_TREE')
+ // print('SCOPE-FUNC:' + JSON.stringify(token,null,4));
+ //println("<i>"+token.data+"</i>");
+ var bn = this.braceNesting;
+ this.parseFunctionDeclaration(scope);
+ this.braceNesting = bn;
+ break;
+
+ case TokenName.WITH:
+ //print('SCOPE-WITH:' + token.toString());
+ //println("<i>"+token.data+"</i>");
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ // Inside a 'with' block, it is impossible to figure out
+ // statically whether a symbol is a local variable or an
+ // object member. As a consequence, the only thing we can
+ // do is turn the obfuscation off for the highest scope
+ // containing the 'with' block.
+ this.protectScopeFromObfuscation(scope);
+
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "Using 'with' is not recommended as it reduces the level of compression"
+ );
+
+
+ }
+ break;
+
+ case TokenName.CATCH:
+ //print('SCOPE-CATCH:' + token.toString());
+ //println("<i>"+token.data+"</i>");
+ this.parseCatch(scope);
+ break;
+
+
+
+ default:
+ // print(" KEYW = %s\n", token.asString());
+
+
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+
+ if (token.name == TokenName.EVAL) {
+ //print("got token eval...prefix= %s\n", token.prefix);
+
+ //print(JSON.stringify(token, null,4));
+ // look back one and see if we can find a comment!!!
+ //var prevTok = this.ts.look(-1,true);
+ //print("prev to eval = %s\n", prevTok.asString());
+ //if (prevTok.type == TokenType.COMM) {
+ // print("previus to eval == comment\n%s\n" , prevTok.data);
+ if (token.prefix.length > 0 && Regex.match_simple ("eval",token.prefix)) {
+ // look for eval:var:noreplace\n
+ //print("MATCH!?");
+
+ var regex = new GLib.Regex ("eval:var:([a-z_]+)",GLib.RegexCompileFlags.CASELESS );
+
+ regex.replace_eval (token.prefix, token.prefix.length, 0, 0, (match_info, result) => {
+ var a = match_info.fetch(1);
+ //print("protect?: %s\n", a);
+ var hi = this.getIdentifier(a, scope, token);
+ // println("PROTECT "+a+" from munge" + (hi ? "FOUND" : "MISSING"));
+ if (hi != null) {
+ //print("PROTECT "+a+" from munge\n");
+ //print(JSON.stringify(hi,null,4));
+ hi.toMunge = false;
+ }
+ return false;
+
+ });
+
+
+ } else {
+
+
+ this.protectScopeFromObfuscation(scope);
+
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "Using 'eval' is not recommended. (use eval:var:noreplace in comments to optimize)"
+ );
+
+ }
+
+ }
+
+
+
+
+ }
+ break; //???
+ }
+ break; // end KEYW
+
+ case TokenType.PUNC:
+
+ switch(token.name) {
+
+
+ case TokenName.LEFT_CURLY: // {
+ case TokenName.LEFT_PAREN: // (
+ case TokenName.LEFT_BRACE: // [
+ //print("SCOPE-CURLY/PAREN %d / KS= %d / IT=%d \n", token.props.size ,token.keyseq.size, token.items.size);
+ //println("<i>"+token.data+"</i>");
+ var curTS = this.ts;
+ if (token.props.size > 0) {
+
+ // { a : ... , c : .... }
+
+ for (var i = 0;i < token.keyseq.size; i++ ){
+ //var iter = token.props.map_iterator();
+ var k = token.keyseq.get(i);
+
+ TokenKeyMap val = token.props.get(k);
+ //print("SCOPE-PROPS GET (%d/%d): %s\n", i, token.keyseq.size,k);
+
+ // print('SCOPE-PROPS:' + JSON.stringify(token.props[prop],null,4));
+ if (val == null || val.vals.size < 1) {
+ continue;
+ }
+ if (val.vals.get(0).data == "function") {
+ // parse a function..
+ this.ts = new TokenStream(val.vals);
+ this.ts.nextTok();
+ this.parseFunctionDeclaration(scope);
+
+ continue;
+ }
+ // key value..
+
+ this.ts = new TokenStream(val.vals);
+ this.parseExpression(scope);
+
+ }
+ this.ts = curTS;
+
+ // it's an object literal..
+ // the values could be replaced..
+ break;
+ }
+
+ // ( ... ) or { .... } not object literals..
+
+
+ for (var xx =0; xx < token.items.size; xx++) {
+ var expr = token.items.get(xx);
+ //token.items.forEach(function(expr) {
+ //print(expr.toString());
+ this.ts = new TokenStream(expr);
+ //if (curTS.data == '(') {
+ this.parseScope(scope);
+ //} else {
+ // _this.parseExpression(scope)
+ //}
+
+ }
+ this.ts = curTS;
+ //print("NOT PROPS"); Seed.quit();
+
+ //isObjectLitAr.push(false);
+ //this.braceNesting++;
+
+ //print(">>>>>> OBJLIT PUSH(false)" + this.braceNesting);
+ break;
+
+ case TokenName.RIGHT_CURLY: // }
+ //print("<< EXIT SCOPE");
+ return;
+
+ default:
+ break;
+ }
+ break;
+
+ case TokenType.STRN:
+
+ ///case "STRN.DOUBLE_QUOTE": // used for object lit detection.. case "STRN.SINGLE_QUOTE":
+ // print('SCOPE-STRING:' + token.toString());
+ //println("<i>"+token.data+"</i>");
+
+ if (this.ts.lookTok(-1).data == "{" && this.ts.lookTok(1).data == ":") {
+ // then we are in an object lit.. -> we need to flag the brace as such...
+ isObjectLitAr.remove_at(isObjectLitAr.size-1);
+ isObjectLitAr.add(true);
+ //print(">>>>>> OBJLIT REPUSH(true)");
+ }
+ var isInObjectLitAr = isObjectLitAr.get(isObjectLitAr.size-1);
+
+ if (isInObjectLitAr && this.ts.lookTok(1).data == ":" &&
+ ( this.ts.lookTok(-1).data == "{" || this.ts.lookTok(-1).data == ":" )) {
+ // see if we can replace..
+ // remove the quotes..
+ // should do a bit more checking!!!! (what about wierd char's in the string..
+ var str = token.data.substring(1,token.data.length-1);
+
+ if (Regex.match_simple ("^[a-z_]+$", str,GLib.RegexCompileFlags.CASELESS) && ScopeParser.idents.index_of(str) < 0) {
+ token.outData = str;
+ }
+
+
+
+ }
+
+ break;
+
+ case TokenType.NAME:
+ // print("SCOPE got NAME:%s\n" , token.asString());
+ //print("DEAL WITH NAME:");
+ // got identifier..
+ // look for { ** : <- indicates obj literal.. ** this could occur with numbers ..
+ // skip anyting with "." before it..!!
+ // print("prev0 = " + this.ts.lookTok(0).asString() +"\n");
+ // print("prev-1 = " + this.ts.lookTok(-1).asString() +"\n");
+ if (this.ts.lookTok(-1).name == TokenName.DOT) {
+ // skip, it's an object prop.
+ // print("prev is a .dot.\n");
+ //println("<i>"+token.data+"</i>");
+ break;
+ }
+ //print("SYMBOL: " + token.toString());
+
+ var symbol = token.data;
+ if (symbol == "this") {
+ // print("ignore 'this'\n");
+ break;
+ }
+
+ if (this.mode == ScopeParserMode.PASS2_SYMBOL_TREE) {
+
+ //println("GOT IDENT: -2 : " + this.ts.lookT(-2).toString() + " <BR> ..... -1 : " + this.ts.lookT(-1).toString() + " <BR> ");
+
+ //print ("MUNGE?" + symbol);
+
+ //println("GOT IDENT: <B>" + symbol + "</B><BR/>");
+
+ //println("GOT IDENT (2): <B>" + symbol + "</B><BR/>");
+ var identifier = this.getIdentifier(symbol, scope, token);
+
+
+ if (identifier == null) {
+ // BUG!find out where builtin is defined...
+ // print("new identifier\n");
+ if (symbol.length <= 3 && Scope.builtin.index_of(symbol) < 0) {
+ // Here, we found an undeclared and un-namespaced symbol that is
+ // 3 characters or less in length. Declare it in the global scope.
+ // We don't need to declare longer symbols since they won't cause
+ // any conflict with other munged symbols.
+ this.globalScope.declareIdentifier(symbol, token);
+
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "Found an undeclared symbol: " + symbol
+ );
+
+ }
+
+ //println("GOT IDENT IGNORE(3): <B>" + symbol + "</B><BR/>");
+ } else {
+ // print("existing identifier\n");
+ token.identifier = identifier;
+ identifier.refcount++;
+ }
+ }
+
+ break;
+ //println("<B>SID</B>");
+ default:
+
+ break;
+
+
+ } // end switch
+
+
+ //print("parseScope TOK : " + token.toString());
+ token = this.ts.nextTok();
+ //if (this.ts.nextT()) break;
+
+ }
+ //print("<<< EXIT SCOPE");
+ //print("<<<<<<<EXIT SCOPE ERR?" +this.scopes.length);
+ }
+
+
+
+ void parseExpression(Scope scope)
+ {
+
+ // Parse the expression until we encounter a comma or a semi-colon
+ // in the same brace nesting, bracket nesting and paren nesting.
+ // Parse functions if any...
+ //println("<i>EXP</i><BR/>");
+ //!this.debug || print("PARSE EXPR");
+ this.expN++;
+
+ // for printing stuff..
+
+
+
+
+ //var expressionBraceNesting = this.braceNesting + 0;
+ //var bracketNesting = 0;
+ //var parensNesting = 0;
+
+ var isObjectLitAr = new Gee.ArrayList<bool>();
+ isObjectLitAr.add( false);
+
+
+ Token token;
+
+ //print(scopeIndent + ">> ENTER EXPRESSION" + this.expN);
+ while (null != (token = this.ts.nextTok())) {
+
+
+
+ /*
+ // moved out of loop?
+ currentScope = this.scopes[this.scopes.length-1];
+
+ var scopeIndent = '';
+ this.scopes.forEach(function() {
+ scopeIndent += ' ';
+ });
+ */
+
+ //this.dumpToken(token, this.scopes, this.braceNesting );
+ //print("EXPR %s\n" , token.asString());
+
+
+ //println("<i>"+token.data+"</i>");
+ //this.log("EXP:" + token.data);
+ switch (token.type) {
+ case TokenType.PUNC:
+ //print("EXPR-PUNC:" + token.toString());
+
+ switch(token.data) {
+
+ case ";":
+ //print("<< EXIT EXPRESSION");
+ break;
+
+ case ",":
+
+ break;
+
+
+ case "(": //Token.LP:
+ case "{": //Token.LC:
+ case "[": //Token.LB:
+ //print('SCOPE-CURLY/PAREN/BRACE:' + token.toString());
+ // print('SCOPE-CURLY/PAREN/BRACE:' + JSON.stringify(token, null,4));
+ //println("<i>"+token.data+"</i>");
+ var curTS = this.ts;
+ if (token.keyseq.size > 0) {
+
+ for (var i = 0;i < token.keyseq.size; i++ ){
+ //var iter = token.props.map_iterator();
+ var k = token.keyseq.get(i);
+
+ TokenKeyMap val = token.props.get(k);
+
+ if (val == null) {
+ print("failed to get %s val from token %s\n", k, token.asString());
+ continue;
+ }
+
+ //if (val.vals.size < 1) {
+ //print(JSON.stringify(token.props, null,4));
+ //}
+
+
+ if (val.vals.size > 0 && val.vals.get(0).data == "function") {
+ // parse a function..
+ this.ts = new TokenStream(val.vals);
+ this.ts.nextTok();
+ this.parseFunctionDeclaration(scope);
+ continue;
+ }
+ // key value..
+
+ this.ts = new TokenStream(val.vals);
+ this.parseExpression(scope);
+
+ }
+ this.ts = curTS;
+
+ // it's an object literal..
+ // the values could be replaced..
+ break;
+ }
+
+
+
+ foreach(var expr in token.items) {
+
+ this.ts = new TokenStream(expr);
+ this.parseExpression(scope);
+ }
+ this.ts = curTS;
+
+
+
+ ///print(">>>>> EXP PUSH(false)"+this.braceNesting);
+ break;
+
+
+
+
+
+ case ")": //Token.RP:
+ case "]": //Token.RB:
+ case "}": //Token.RB:
+ //print("<< EXIT EXPRESSION");
+ return;
+
+
+
+ // parensNesting++;
+ // break;
+
+
+
+ }
+ break;
+
+ case TokenType.STRN: // used for object lit detection..
+ //if (this.mode == 'BUILDING_SYMBOL_TREE')
+ //print("EXPR-STR:" + JSON.stringify(token, null, 4));
+
+
+ break;
+
+
+
+ case TokenType.NAME:
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+
+ //print("EXPR-NAME:" + JSON.stringify(token, null, 4));
+ } else {
+ //print("EXPR-NAME:" + token.toString());
+ }
+ var symbol = token.data;
+ //print("expression got NAME = %s \n" , symbol);
+ //print("in NAME 0: " + this.ts.look(0).toString());
+ //print("in NAME 2: " + this.ts.lookTok(2).toString());
+
+ //print(this.ts.lookTok(-1).data);
+ // prefixed with '.'
+ if (this.ts.lookTok(-1).data == ".") {
+ //skip '.'
+ break;
+ }
+ if (symbol == "this") {
+ break;
+ }
+
+ if (this.mode == ScopeParserMode.PASS2_SYMBOL_TREE) {
+
+ var identifier = this.getIdentifier(symbol, scope, token);
+ //println("<B>??</B>");
+ if (identifier == null) {
+
+ if (symbol.length <= 3 && Scope.builtin.index_of(symbol) < 0) {
+ // Here, we found an undeclared and un-namespaced symbol that is
+ // 3 characters or less in length. Declare it in the global scope.
+ // We don't need to declare longer symbols since they won't cause
+ // any conflict with other munged symbols.
+ this.globalScope.declareIdentifier(symbol, token);
+
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "Found an undeclared symbol: " + symbol
+ );
+
+
+
+
+ //print("Found an undeclared symbol: " + symbol + ' (line:' + token.line + ')');
+ //throw "OOPS";
+ } else {
+ //print("undeclared:" + token.toString())
+ }
+
+
+ } else {
+ //println("<B>++</B>");
+ token.identifier = identifier;
+ identifier.refcount++;
+ }
+
+ }
+ break;
+
+
+
+
+ //println("<B>EID</B>");
+ case TokenType.KEYW:
+ //if (this.mode == 'BUILDING_SYMBOL_TREE')
+ // print("EXPR-KEYW:" + JSON.stringify(token, null, 4));
+
+ //print('EXPR-KEYW:' + token.toString());
+ if (token.name == TokenName.FUNCTION) {
+
+ this.parseFunctionDeclaration(scope);
+ break;
+ }
+
+
+ var symbol = token.data;
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+
+ if (token.name == TokenName.EVAL) {
+
+
+ //print(JSON.stringify(token,null,4));
+
+ if (token.prefix.length > 0 && Regex.match_simple ("eval:var:", token.prefix,GLib.RegexCompileFlags.CASELESS)) {
+ // look for eval:var:noreplace\n
+ // print("GOT MATCH?");
+
+
+ var regex = new GLib.Regex ("eval:var:([a-z_]+)",GLib.RegexCompileFlags.CASELESS );
+
+ regex.replace_eval (token.prefix, token.prefix.length, 0, 0, (match_info, result) => {
+ var a = match_info.fetch(0);
+ //print("PROTECT: " + a);
+
+
+ var hi = this.getIdentifier(a, scope, token);
+ //println("PROTECT "+a+" from munge" + (hi ? "FOUND" : "MISSING"));
+ if (hi != null) {
+ // println("PROTECT "+a+" from munge");
+ hi.toMunge = false;
+ }
+ return false;
+
+ });
+
+ } else {
+ this.protectScopeFromObfuscation(scope);
+
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "Using 'eval' is not recommended. use eval:var in comment before eval to enable compression " + symbol
+ );
+
+
+
+ }
+
+
+ }
+
+ }
+ break;
+ default:
+ //if (this.mode == 'BUILDING_SYMBOL_TREE')
+ // print("EXPR-SKIP:" + JSON.stringify(token, null, 4));
+ break;
+ }
+
+ }
+ //print("<< EXIT EXPRESSION");
+ this.expN--;
+ }
+
+
+ void parseCatch(Scope scope) {
+
+
+ //token = getToken(-1);
+ //assert token.getType() == Token.CATCH;
+ var token = this.ts.nextTok();
+ token = this.ts.nextTok();
+
+
+ //print(JSON.stringify(this.ts,null,4));
+ //assert token.getType() == Token.LP; (
+ //token = this.ts.nextTok();
+ //assert token.getType() == Token.NAME;
+
+ var symbol = token.items[0][0].data;
+
+
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ // We must declare the exception identifier in the containing function
+ // scope to avoid errors related to the obfuscation process. No need to
+ // display a warning if the symbol was already declared here...
+ scope.declareIdentifier(symbol, token.items[0][0]);
+ } else {
+ //?? why inc the refcount?? - that should be set when building the tree???
+ var identifier = this.getIdentifier(symbol, scope, token.items[0][0]);
+ identifier.refcount++;
+ }
+
+ //token = this.ts.nextTok();
+ //assert token.getType() == Token.RP; // )
+ }
+
+ void parseFunctionDeclaration (Scope scope)
+ {
+ //print("PARSE FUNCTION");
+
+
+ // var b4braceNesting = this.braceNesting + 0;
+
+ //this.logR("<B>PARSING FUNCTION</B>");
+
+
+ var token = this.ts.nextTok();
+ if (token.type == TokenType.NAME) {
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ // Get the name of the function and declare it in the current scope.
+ var symbol = token.data;
+ if (scope.getIdentifier(symbol,token) != null) {
+
+
+ this.packer.logError(
+ Packer.ResultType.warn,
+ this.filename,
+ token.line,
+ "The function " + symbol + " has already been declared in the same scope..."
+ );
+
+
+
+ }
+ scope.declareIdentifier(symbol,token);
+ }
+ token = this.ts.nextTok();
+ }
+
+
+ // return function() {....
+ while (token.data != "(") {
+ //print(token.toString());
+ token = this.ts.nextTok();
+
+ }
+
+ Scope fnScope;
+ //assert token.getType() == Token.LP;
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ fnScope = new Scope(1, scope, token.id, "", token);
+
+ //println("STORING SCOPE" + this.ts.cursor);
+
+ this.indexedScopes.set(token.id,fnScope);
+
+ } else {
+ //qln("FETCHING SCOPE" + this.ts.cursor);
+ fnScope = this.indexedScopes[token.id];
+ }
+ //if (this.mode == 'BUILDING_SYMBOL_TREE')
+ // print('FUNC-PARSE:' + JSON.stringify(token,null,4));
+ // Parse function arguments.
+ var args = token.items;
+ for (var argpos =0; argpos < args.size; argpos++) {
+
+ token = args.get(argpos).get(0);
+ //print ("FUNC ARGS: " + token.toString())
+ //assert token.getType() == Token.NAME ||
+ // token.getType() == Token.COMMA;
+ if (token.type == TokenType.NAME && this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ var symbol = token.data;
+ var identifier = fnScope.declareIdentifier(symbol,token);
+ if (symbol == "$super" && argpos == 0) {
+ // Exception for Prototype 1.6...
+ identifier.toMunge = false;
+ }
+ //argpos++;
+ }
+ }
+
+ token = this.ts.nextTok();
+ if (token == null) {
+ return;
+ }
+ //print('FUNC-BODY:' + JSON.stringify(token.items,null,4));
+ //Seed.quit();
+ //print(token.toString());
+ // assert token.getType() == Token.LC;
+ //this.braceNesting++;
+
+ //token = this.ts.nextTok();
+ //print(token.toString());
+ var outTS = this.ts;
+ foreach(var tar in token.items) {
+ this.ts = new TokenStream(tar);
+ this.parseScope(fnScope);
+
+ }
+
+ //print(JSON.stringify(this.ts,null,4));
+ //this.parseScope(fnScope);
+ this.ts = outTS;
+ // now pop it off the stack!!!
+
+ //this.braceNesting = b4braceNesting;
+ //print("ENDFN -1: " + this.ts.lookTok(-1).toString());
+ //print("ENDFN 0: " + this.ts.lookTok(0).toString());
+ //print("ENDFN 1: " + this.ts.lookTok(1).toString());
+ }
+
+ void protectScopeFromObfuscation (Scope scope) {
+ //assert scope != null;
+
+ if (scope == this.globalScope) {
+ // The global scope does not get obfuscated,
+ // so we don't need to worry about it...
+ return;
+ }
+
+ // Find the highest local scope containing the specified scope.
+ while (scope != null && scope.parent != this.globalScope) {
+ scope = scope.parent;
+ }
+
+ //assert scope.getParentScope() == globalScope;
+ scope.preventMunging();
+ }
+
+ Identifier? getIdentifier(string symbol, Scope in_scope, Token token)
+ {
+ Identifier identifier;
+ var scope = in_scope;
+ while (scope != null) {
+ identifier = scope.getIdentifier(symbol, token);
+ //println("ScopeParser.getIdentgetUsedSymbols("+symbol+")=" + scope.getUsedSymbols().join(','));
+ if (identifier != null) {
+ return identifier;
+ }
+ scope = scope.parent;
+ }
+ return null;
+ }
+ public void printWarnings()
+ {
+ foreach(var w in this.warnings) {
+ print("%s\n",w);
+ }
+ }
+
+ }
+}
+
--- /dev/null
+
+/**
+ Create a new Symbol.
+ @class Represents a symbol in the source code.
+ */
+
+
+namespace JSDOC {
+
+
+ public class Symbol : Object
+ {
+ // debugging?
+
+
+ public static bool regex_init = false;
+
+
+ private string private_string_name = "";
+ private string _assigned_name = "";
+ // called by symbolset...
+ public string private_name {
+ set {
+ this._assigned_name = name;
+ var n = /^_global_[.#-]/.replace(value, value.length, 0, "");
+ n = /\.prototype\.?/.replace(n,n.length, 0, "#");
+ while (true) {
+ if (!n.has_suffix("#")) {
+ break;
+ }
+ n = n.substring(0, n.length-1);
+ }
+
+ this.private_string_name = n;
+ }
+
+ }
+
+ public string name {
+ get { return this.private_string_name; }
+ }
+
+
+ string defaultValue = "";
+
+ private Gee.ArrayList<DocTag> private_doctag_params = null;
+
+ private Gee.ArrayList<DocTag> private_params{
+ set {
+ if (this.private_doctag_params == null) {
+ this.private_doctag_params = new Gee.ArrayList<DocTag>();
+ }
+ for (var i = 0; i < value.size; i++) {
+
+ this.private_doctag_params.add(value.get(i));
+ }
+ //this.params = this._params;
+ }
+ }
+
+ Gee.ArrayList<string> private_string_params{
+ set {
+ if (this.private_doctag_params == null) {
+ this.private_doctag_params = new Gee.ArrayList<DocTag>();
+ }
+ for (var i = 0; i < value.size; i++) {
+
+ //var ty = v[i].hasOwnProperty('type') ? v[i].type : '';
+ this.private_doctag_params.add( new DocTag(value.get(i)));
+
+ //"param"+((ty)?" {"+ty+"}":"")+" "+v.get(i).name);
+
+ }
+
+ }
+ }
+ public Gee.ArrayList<DocTag> params {
+ get {
+ if (this.private_doctag_params == null) {
+ this.private_doctag_params = new Gee.ArrayList<DocTag>();
+ }
+ return this.private_doctag_params;
+ }
+
+ }
+
+ public Gee.ArrayList<string> augments ;
+
+
+ private Gee.ArrayList<DocTag> exceptions ;
+
+ //public Gee.ArrayList<DocTag> inherits;
+ public Gee.ArrayList<Symbol> methods;
+
+ public Gee.ArrayList<Symbol> properties;
+ private Gee.ArrayList<string> requires;
+ public Gee.ArrayList<DocTag> returns;
+ private Gee.ArrayList<string> see ;
+
+ public Gee.ArrayList<string> childClasses;
+ public Gee.ArrayList<string> inheritsFrom;
+ public Gee.HashMap<string,DocTag>cfgs;
+
+
+ public DocComment comment;
+
+ //$args : [], // original arguments used when constructing.
+ string addOn = "";
+ public string alias = "";
+
+ string author = "";
+ string classDesc = "";
+
+ string deprecated = "";
+ public string desc = "";
+ //events : false,
+ string example = "";
+
+
+ public string isa = "OBJECT"; // OBJECT//FUNCTION
+
+ public bool isEvent = false;
+ public bool isConstant = false;
+ public bool isIgnored = false;
+ public bool isInner = false;
+ public bool isNamespace = false;
+ public bool isPrivate = false;
+ public bool isStatic = false;
+
+ public string memberOf = "";
+
+ public string asString()
+ {
+ return "NAME: %s:%s ASNAME: %s : %s%s%s%s".printf(
+ this.memberOf,
+ this.name,
+ this._assigned_name,
+ isStatic ? "static": "",
+ isEvent ? "EV": "",
+ isConstant ? "CO": "",
+ isNamespace ? "NS": ""
+ );
+
+
+ }
+
+
+ string since = "";
+
+ string type = "";
+ string version = "";
+
+ public static string srcFile = "";
+
+
+
+ public void initArrays()
+ {
+ // only initialize arrays / objects..
+
+
+ //this.params = [];
+ //this.$args = [];
+
+ //this.events = [];
+ this.exceptions = new Gee.ArrayList<DocTag>();
+ //this.inherits = new Gee.ArrayList<DocTag>();
+ //
+ this.isa = "OBJECT"; // OBJECT//FUNCTION
+ this.methods = new Gee.ArrayList<Symbol>();
+ //this.private_params = new Gee.ArrayList<DocTag>();
+ this.properties = new Gee.ArrayList<Symbol>();
+ this.requires = new Gee.ArrayList<string>();
+ this.returns = new Gee.ArrayList<DocTag>();
+ this.see = new Gee.ArrayList<string>();
+ this.augments = new Gee.ArrayList<string>();
+
+
+ this.cfgs = new Gee.HashMap<string,DocTag>();
+ // derived later?
+ this.inheritsFrom = new Gee.ArrayList<string>();
+
+ this.childClasses = new Gee.ArrayList<string>();
+
+ this.comment = new DocComment();
+ this.comment.isUserComment = false;
+
+
+ }
+
+ public Symbol.new_builtin(string name)
+ {
+
+ this.initArrays();
+ this.srcFile = JSDOC.DocParser.currentSourceFile;
+ this.private_name = name ;
+ this.alias = this.name;
+ this.isa = "CONSTRUCTOR";
+ this.comment = new DocComment("");
+ this.comment.isUserComment = false;
+ this.isNamespace = false;
+ this.srcFile = "";
+ this.isPrivate = false;
+ // init arrays....
+
+
+
+ }
+
+
+
+
+ public Symbol.new_populate_with_args(
+ string name,
+ Gee.ArrayList<string> params, // fixme???
+ string isa,
+ DocComment comment
+ ) {
+
+ this.initArrays();
+ // this.$args = arguments;
+ //println("Symbol created: " + isa + ":" + name);
+ this.private_name = name;
+ this.alias = this.name;
+ this.private_string_params = params;
+ this.isa = (isa == "VIRTUAL")? "OBJECT":isa;
+ this.comment = comment;
+
+ this.srcFile = DocParser.currentSourceFile;
+
+
+
+ if (this.is("FILE") && this.alias.length < 1) { // this will never hapen???
+ this.alias = this.srcFile;
+ }
+
+ this.tagsFromComment();
+
+ }
+
+ void tagsFromComment() {
+ // @author
+ var authors = this.comment.getTag(DocTagTitle.AUTHOR);
+ if (authors.size > 0) {
+ // turns author into a string....
+ this.author = "";
+ foreach(var a in authors) {
+ this.author += (this.author == "") ? "": ", ";
+ this.author += a.desc;
+ }
+ }
+
+ /*~t
+ assert("testing Symbol");
+
+ requires("../lib/JSDOC/DocComment.js");
+ requires("../frame/String.js");
+ requires("../lib/JSDOC/DocTag.js");
+
+ var sym = new Symbol("foo", [], "OBJECT", new DocComment("/**@author Joe Smith*"+"/"));
+ assertEqual(sym.author, "Joe Smith", "@author tag, author is found.");
+ */
+ // @desc
+ var mth = this.comment.getTag(DocTagTitle.METHOD);
+ if (mth.size > 0) {
+ this.isa = "FUNCTION";
+ }
+ // @desc
+ var descs = this.comment.getTag(DocTagTitle.DESC);
+ if (descs.size> 0) {
+ this.desc = "";
+ foreach(var d in descs) {
+ this.desc = this.desc == "" ? "": "\n";
+ this.desc += d.desc;
+ }
+
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "OBJECT", new DocComment("/**@desc This is a description.*"+"/"));
+ assertEqual(sym.desc, "This is a description.", "@desc tag, description is found.");
+ */
+
+ // @overview
+ if (this.is("FILE")) {
+ if (this.alias.length < 1) this.alias = this.srcFile;
+
+ var overviews = this.comment.getTag(DocTagTitle.OVERVIEW);
+ if (overviews.size > 0) {
+ foreach(var d in overviews) {
+ this.desc = this.desc == "" ? "": "\n";
+ this.desc += d.desc;
+ }
+ }
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@overview This is an overview.*"+"/"));
+ assertEqual(sym.desc, "\nThis is an overview.", "@overview tag, description is found.");
+ */
+
+ // @since
+ var sinces = this.comment.getTag(DocTagTitle.SINCE);
+ if (sinces.size > 0) {
+ this.since = "";
+ foreach(var d in sinces) {
+ this.since = this.since == "" ? "": "\n";
+ this.since += d.desc;
+ }
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@since 1.01*"+"/"));
+ assertEqual(sym.since, "1.01", "@since tag, description is found.");
+ */
+
+ // @constant
+ if (this.comment.getTag(DocTagTitle.CONSTANT).size > 0) {
+ this.isConstant = true;
+ this.isa = "OBJECT";
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@constant*"+"/"));
+ assertEqual(sym.isConstant, true, "@constant tag, isConstant set.");
+ */
+
+ // @version
+ var versions = this.comment.getTag(DocTagTitle.VERSION);
+ if (versions.size > 0 ) {
+ this.version = "";
+ foreach(var d in versions) {
+ this.version = this.version == "" ? "": "\n";
+ this.version += d.desc;
+ }
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@version 2.0x*"+"/"));
+ assertEqual(sym.version, "2.0x", "@version tag, version is found.");
+ */
+
+ // @deprecated
+ var deprecateds = this.comment.getTag(DocTagTitle.DEPRECATED);
+ if (deprecateds.size > 0) {
+ this.deprecated = "";
+ foreach(var d in deprecateds) {
+ this.deprecated = this.deprecated == "" ? "": "\n";
+ this.deprecated += d.desc;
+ }
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@deprecated Use other method.*"+"/"));
+ assertEqual(sym.deprecated, "Use other method.", "@deprecated tag, desc is found.");
+ */
+
+ // @example
+ var examples = this.comment.getTag(DocTagTitle.EXAMPLE);
+ if (examples.size > 0) {
+ this.example = examples.get(0).desc;
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@example This\n is an example.*"+"/"));
+ assertEqual(sym.example, "This\n is an example.", "@deprecated tag, desc is found.");
+ */
+
+ // @see
+ var sees = this.comment.getTag(DocTagTitle.SEE);
+ if (sees.size > 0) {
+
+ foreach(var s in sees) {
+ this.see.add(s.desc);
+ }
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "FILE", new DocComment("/**@see The other thing.*"+"/"));
+ assertEqual(sym.see, "The other thing.", "@see tag, desc is found.");
+ */
+
+ // @class
+ var classes = this.comment.getTag(DocTagTitle.CLASS);
+ if (classes.size > 0) {
+ //print(JSON.stringify(this,null,4));
+ this.isa = "CONSTRUCTOR";
+ this.classDesc = classes[0].desc; // desc can't apply to the constructor as there is none.
+ //if (!this.classDesc.leg) {
+ // this.classDesc = this.desc;
+ // }
+
+
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "OBJECT", new DocComment("/**@class This describes the class.*"+"/"));
+ assertEqual(sym.isa, "CONSTRUCTOR", "@class tag, makes symbol a constructor.");
+ assertEqual(sym.classDesc, "This describes the class.", "@class tag, class description is found.");
+ */
+
+ // @namespace
+ var namespaces = this.comment.getTag(DocTagTitle.NAMESPACE);
+ if (namespaces.size > 0) {
+ this.classDesc = namespaces[0].desc+"\n"+this.desc; // desc can't apply to the constructor as there is none.
+ this.isNamespace = true;
+ }
+
+ /*~t
+ var sym = new Symbol("foo", [], "OBJECT", new DocComment("/**@namespace This describes the namespace.*"+"/"));
+ assertEqual(sym.classDesc, "This describes the namespace.\n", "@namespace tag, class description is found.");
+ */
+
+ // @param
+ var params = this.comment.getTag(DocTagTitle.PARAM);
+ if (params.size > 0) {
+ // user-defined params overwrite those with same name defined by the parser
+ var thisParams = params;
+
+ if (thisParams.size == 0) { // none exist yet, so just bung all these user-defined params straight in
+ this.private_params = params;
+ }
+ else { // need to overlay these user-defined params on to existing parser-defined params
+ for (var i = 0, l = params.size; i < l; i++) {
+ if (thisParams.size <= i) {
+ var np = thisParams.get(i);
+
+ if (np.type.length > 0) np.type = params[i].type;
+ np.name = params[i].name;
+ np.desc = params[i].desc;
+ np.isOptional = params[i].isOptional;
+ np.defaultValue = params[i].defaultValue;
+ //thisParams.set(i, np); ///?? needed OO ?
+ }
+ else thisParams.set(i, params[i]);
+ }
+ this.private_params = thisParams;
+ }
+ }
+
+
+
+ // @constructor
+ if (this.comment.getTag(DocTagTitle.CONSTRUCTOR).size > 0) {
+ this.isa = "CONSTRUCTOR";
+ }
+
+
+
+ // @static
+ if (this.comment.getTag(DocTagTitle.STATIC).size > 0) {
+ this.isStatic = true;
+ if (this.isa == "CONSTRUCTOR") {
+ this.isNamespace = true;
+ }
+ }
+
+ // @static
+ if (this.comment.getTag(DocTagTitle.SINGLETON).size > 0) {
+ this.isStatic = true;
+ //print('------------- got singleton ---------------' + this.isa);
+ //if (this.isa == "CONSTRUCTOR") {
+ // this.isNamespace = true;
+ //}
+ }
+
+
+
+ // @inner
+ if (this.comment.getTag(DocTagTitle.INNER).size > 0) {
+ this.isInner = true;
+ this.isStatic = false;
+ }
+
+
+ // @field
+ if (this.comment.getTag(DocTagTitle.FIELD).size > 0) {
+ this.isa = "OBJECT";
+ }
+
+
+
+ // @function
+ if (this.comment.getTag(DocTagTitle.FUNCTION).size > 0) {
+ this.isa = "FUNCTION";
+ }
+
+ // @param
+ if (this.comment.getTag(DocTagTitle.PARAM).size > 0 && this.isa == "OBJECT" ) {
+ // change a property to a function..
+ this.isa = "FUNCTION";
+ }
+
+
+
+
+ // @event
+ var events = this.comment.getTag(DocTagTitle.EVENT);
+ if (events.size > 0) {
+ this.isa = "FUNCTION";
+ this.isEvent = true;
+ }
+
+
+
+ // @name
+ var names = this.comment.getTag(DocTagTitle.NAME);
+ if (names.size > 0) {
+ this.private_name = names.get(0).desc.strip();
+ }
+
+ /*~t
+ // todo
+ */
+
+ // @property
+ var properties = this.comment.getTag(DocTagTitle.PROPERTY);
+ if (properties.size > 0) {
+ //var thisProperties = this.properties;
+ for (var i = 0; i < properties.size; i++) {
+
+
+ // if the doc tag just says @property ... but no name etc..
+ // then name will not be filled in..
+ if (properties[i].name.length < 1 ) {
+ continue;
+ }
+
+ var property = new Symbol.new_populate_with_args(
+ this.alias+"#"+properties[i].name,
+ new Gee.ArrayList<string>(),
+ "OBJECT",
+ new DocComment(
+ "/**\n"+
+ properties[i].desc+
+ "\n@name "+ properties[i].name
+ +"\n@memberOf "+this.alias+"#*/"
+ ));
+ // TODO: shouldn't the following happen in the addProperty method of Symbol?
+ property.private_name = properties[i].name;
+ property.memberOf = this.alias;
+ if (properties[i].type.length > 0) property.type = properties[i].type;
+ if (properties[i].defaultValue.length > 0) property.defaultValue = properties[i].defaultValue;
+ this.addProperty(property);
+ JSDOC.DocParser.addSymbol(property);
+ }
+ }
+
+ // config..
+ var conf = this.comment.getTag(DocTagTitle.CFG);
+ if (conf.size > 0) {
+ for (var i = 0; i < conf.size; i++) {
+ this.addConfig(conf.get(i));
+ }
+ }
+
+
+
+ // @return
+ var returns = this.comment.getTag(DocTagTitle.RETURN);
+ if (returns.size > 0) { // there can be many return tags in a single doclet
+ this.returns = returns;
+
+ this.type = "";
+ foreach(var r in returns) {
+ this.type += this.type == "" ? "": ", ";
+ this.type += r.type;
+ }
+ }
+
+
+
+ // @exception
+ this.exceptions = this.comment.getTag(DocTagTitle.THROWS);
+
+
+ // @requires
+ var requires = this.comment.getTag(DocTagTitle.REQUIRES);
+ if (requires.size > 0) {
+ this.requires = new Gee.ArrayList<string>();
+ foreach(var r in requires) {
+ this.requires.add(r.desc);
+ }
+ }
+
+
+ // @type
+ var types = this.comment.getTag(DocTagTitle.TYPE);
+ if (types.size > 0) {
+ this.type = types.get(0).desc; //multiple type tags are ignored
+ }
+
+
+
+ // @private
+ if (this.comment.getTag(DocTagTitle.PRIVATE).size > 0 || this.isInner) {
+ this.isPrivate = true;
+ }
+
+ // @ignore
+ if (this.comment.getTag(DocTagTitle.IGNORE).size > 0) {
+ this.isIgnored = true;
+ }
+
+ /*~t
+ // todo
+ */
+
+ // @inherits ... as ... -- not used!!!
+ /*
+ var inherits = this.comment.getTag("inherits");
+ if (inherits.length) {
+ for (var i = 0; i < inherits.length; i++) {
+ if (/^\s*([a-z$0-9_.#-]+)(?:\s+as\s+([a-z$0-9_.#]+))?/i.test(inherits[i].desc)) {
+ var inAlias = RegExp.$1;
+ var inAs = RegExp.$2 || inAlias;
+
+ if (inAlias) inAlias = inAlias.replace(/\.prototype\.?/g, "#");
+
+ if (inAs) {
+ inAs = inAs.replace(/\.prototype\.?/g, "#");
+ inAs = inAs.replace(/^this\.?/, "#");
+ }
+
+ if (inAs.indexOf(inAlias) != 0) { //not a full namepath
+ var joiner = ".";
+ if (this.alias.charAt(this.alias.length-1) == "#" || inAs.charAt(0) == "#") {
+ joiner = "";
+ }
+ inAs = this.alias + joiner + inAs;
+ }
+ }
+ this.inherits.push({alias: inAlias, as: inAs});
+ }
+ }
+ */
+ /*~t
+ // todo
+ */
+
+ // @augments
+ foreach(var dt in this.comment.getTag(DocTagTitle.ARGUMENTS)) {
+ this.augments.add(dt.desc);
+ }
+ //@extends - Ext
+ foreach(var dt in this.comment.getTag(DocTagTitle.EXTENDS)) {
+ this.augments.add(dt.desc);
+ }
+
+
+
+ // @default
+ var defaults = this.comment.getTag(DocTagTitle.DEFAULT);
+ if (defaults.size > 0) {
+ if (this.is("OBJECT")) {
+ this.defaultValue = defaults.get(0).desc;
+ }
+ }
+
+ /*~t
+ // todo
+ */
+
+ // @memberOf
+ var memberOfs = this.comment.getTag(DocTagTitle.MEMBEROF);
+ if (memberOfs.size > 0) {
+ this.memberOf = memberOfs[0].desc;
+ var pr_reg = /\.prototype\.?/;
+
+ this.memberOf = pr_reg.replace(this.memberOf, this.memberOf.length, 0, "#");
+ var dname = this.name.split(".");
+ var name = dname[dname.length-1];
+
+ var hname = name.split("#");
+ name = hname[hname.length-1];
+ this.private_name = this.memberOf + "." + name; //?? "." ???
+ this.alias = this.name;
+ }
+
+ /*~t
+ // todo
+ */
+
+ // @public
+ if (this.comment.getTag(DocTagTitle.PUBLIC).size > 0) {
+ this.isPrivate = false;
+ }
+
+ /*~t
+ // todo
+ */
+ }
+
+ public bool is (string what) {
+ return this.isa == what;
+ }
+ public bool isaClass()
+ {
+
+ return (this.is("CONSTRUCTOR") || this.isNamespace ); //|| this.isClass);
+ }
+
+
+ public bool isBuiltin() {
+ return SymbolSet.isBuiltin(this.alias);
+ }
+
+ void setType(string comment,bool overwrite) {
+ if (!overwrite && this.type.length > 0) {
+ return;
+ }
+ var typeComment = DocComment.unwrapComment(comment);
+ this.type = typeComment;
+ }
+
+ public void inherit (Symbol symbol) {
+ if (!this.hasMember(symbol.name) && !symbol.isInner) {
+ if (symbol.is("FUNCTION"))
+ this.methods.add(symbol);
+ else if (symbol.is("OBJECT"))
+ this.properties.add(symbol);
+ }
+ }
+
+ bool hasMember (string name) {
+ return (this.hasMethod(name) || this.hasProperty(name));
+ }
+
+ public void addMember (Symbol symbol) {
+ //println("ADDMEMBER: " + this.name + " ++ " + symbol.name);
+
+ if (symbol.comment.getTag(DocTagTitle.CFG).size == 1) {
+ symbol.comment.getTag(DocTagTitle.CFG).get(0).memberOf = this.alias;
+ this.addConfig(symbol.comment.getTag(DocTagTitle.CFG).get(0));
+ return;
+ }
+
+ if (symbol.is("FUNCTION")) { this.addMethod(symbol); }
+ else if (symbol.is("OBJECT")) { this.addProperty(symbol); }
+ }
+
+ bool hasMethod (string name) {
+ var thisMethods = this.methods;
+ for (var i = 0, l = thisMethods.size; i < l; i++) {
+ if (thisMethods.get(i).name == name) return true;
+ if (thisMethods.get(i).alias == name) return true;
+ }
+ return false;
+ }
+
+ void addMethod (Symbol symbol) {
+ var methodAlias = symbol.alias;
+ var thisMethods = this.methods;
+ for (var i = 0, l = thisMethods.size; i < l; i++) {
+ if (thisMethods.get(i).alias == methodAlias) {
+ thisMethods.set(i, symbol); // overwriting previous method
+ return;
+ }
+ }
+ thisMethods.add(symbol); // new method with this alias
+ }
+
+ bool hasProperty(string name) {
+ var thisProperties = this.properties;
+ for (var i = 0, l = thisProperties.size; i < l; i++) {
+ if (thisProperties.get(i).name == name) return true;
+ if (thisProperties.get(i).alias == name) return true;
+ }
+ return false;
+ }
+
+ void addProperty(Symbol symbol) {
+ var propertyAlias = symbol.alias;
+ var thisProperties = this.properties;
+ for (var i = 0, l = thisProperties.size; i < l; i++) {
+ if (thisProperties.get(i).alias == propertyAlias) {
+ thisProperties.set(i, symbol); // overwriting previous property
+ return;
+ }
+ }
+
+ thisProperties.add(symbol); // new property with this alias
+ }
+
+ public void addDocTag(DocTag docTag)
+ {
+ this.comment.tags.add(docTag);
+ if (docTag.title == DocTagTitle.CFG) {
+ this.addConfig(docTag);
+ }
+
+ }
+
+ public void addConfig(DocTag docTag)
+ {
+ if (docTag.memberOf == "") {
+ // remove prototype data...
+ //var a = this.alias.split('#')[0];
+ //docTag.memberOf = a;
+ docTag.memberOf = this.alias;
+ }
+ if (!this.cfgs.has_key(docTag.name)) {
+ this.cfgs.set(docTag.name, docTag);
+ }
+
+ }
+
+ public Gee.ArrayList<DocTag> configToArray()
+ {
+ var r = new Gee.ArrayList<DocTag>();
+ foreach(var ci in this.cfgs.keys) {
+ // dont show hidden!!
+ if (this.cfgs.get(ci).desc.contains("@hide")) {
+ continue;
+ }
+ r.add(this.cfgs.get(ci));
+
+ }
+ return r;
+ }
+
+
+
+ public string makeFuncSkel() {
+ if (this.params.size < 1) return "function ()\n{\n\n}";
+ var ret = "function (";
+ var f = false;
+ foreach(var p in this.params) {
+ if (p.name.contains(".")) continue;
+ ret += f ? ", " : "";
+ f = true;
+ ret += p.name == "this" ? "_self" : p.name;
+ }
+ return ret + ")\n{\n\n}";
+ }
+ public string makeMethodSkel() {
+ if (this.params.size < 1) return "()\n{\n\n}";
+ var ret = "(";
+ var f = false;
+ foreach(var p in this.params) {
+ GLib.debug("got param: %s", p.asString());
+ if (p.name.contains(".")) continue;
+ ret += f ? ", " : "";
+ f = true;
+ switch(p.name) {
+ case "this" : ret += "this"; break;
+ case "function" : ret += "function() {\n\n}"; break;
+ default : ret += p.name; break;
+ }
+ }
+ return ret + ")";
+ }
+
+ public Json.Array paramsToJson()
+ {
+ var ret = new Json.Array();
+ foreach(var p in this.params) {
+ //GLib.debug("got param: %s", p.asString());
+ if (p.name.contains(".")) continue;// ?? why?
+ var add = new Json.Object();
+ add.set_string_member("name",p.name);
+ add.set_string_member("type",p.type);
+ add.set_string_member("desc",p.desc);
+ add.set_boolean_member("isOptional",p.isOptional);
+ ret.add_object_element(add) ;
+ }
+
+ return ret;
+
+ }
+ public Json.Array returnsToJson()
+ {
+ var ret = new Json.Array();
+ foreach(var p in this.returns) {
+ //GLib.debug("got param: %s", p.asString());
+ if (p.name.contains(".")) continue;// ?? why?
+ var add = new Json.Object();
+ add.set_string_member("name",p.name);
+ add.set_string_member("type",p.type);
+ add.set_string_member("desc",p.desc);
+
+ ret.add_object_element(add) ;
+ }
+
+ return ret;
+
+ }
+ }
+
+
+
+ //static string[] hide = { "$args" };
+ //static string srcFile = "";
+
+}
+
+
+/*
+Symbol.fromDump = function(t)
+{
+ var ns = new Symbol();
+ for (var i in t) {
+ if (typeof(ns[i]) == "undefined") {
+ println("ERR:no default for Symbol:"+ i);
+ }
+ ns[i] = t[i];
+ }
+ return ns;
+}
+*/
--- /dev/null
+
+namespace JSDOC {
+
+ public class SymbolSet : Object {
+
+ private Gee.HashMap<string,Symbol> __index = null;
+
+ public Gee.HashMap<string,Symbol> _index {
+ get {
+ if (this.__index == null) {
+ GLib.debug("Creating new Symbolset array");
+ this.__index = new Gee.HashMap<string,Symbol>();
+ }
+ return this.__index;
+ }
+ }
+
+ public SymbolSet ()
+ {
+
+ }
+
+
+ public Gee.ArrayList<string> keys()
+ {
+ var r= new Gee.ArrayList<string>();
+ foreach(var k in this._index.keys) {
+ r.add(k);
+ }
+ return r;
+
+ }
+ public Gee.ArrayList<Symbol> values()
+ {
+ var r= new Gee.ArrayList<Symbol>();
+ foreach(var k in this._index.values) {
+ r.add(k);
+ }
+ return r;
+
+ }
+
+ public bool hasSymbol(string alias)
+ {
+ return this._index.has_key(alias);
+ //return this.keys().indexOf(alias) > -1;
+ }
+
+ public void addSymbol (Symbol symbol) {
+ GLib.debug("ADDING SYMBOL: %s",symbol.alias);
+
+
+ if (this.hasSymbol(symbol.alias)) {
+ GLib.warning("Overwriting symbol documentation for: %s.",symbol.alias);
+ }
+ this._index.set(symbol.alias, symbol);
+ }
+
+ public Symbol? getSymbol (string alias) {
+
+ if (this.hasSymbol(alias)) return this._index.get(alias);
+ return null;
+ }
+/*/
+ toArray : function() {
+ var found = [];
+ for (var p in this._index) {
+ found.push(this._index[p]);
+ }
+ return found;
+ },
+ */
+ /**
+ * for serializing
+ *
+ toJSON : function() {
+ return {
+ '*object' : 'SymbolSet',
+ _index : this._index
+ };
+
+ },
+*/
+
+ public void deleteSymbol (string alias) {
+ if (!this.hasSymbol(alias)) return;
+ this._index.unset(alias);
+ }
+
+ public string renameSymbol (string oldName, string newName) {
+ // todo: should check if oldname or newname already exist
+ if (!this.hasSymbol(oldName)) {
+ GLib.error("Cant rename " + oldName + " to " + newName + " As it doesnt exist");
+ }
+ this._index.set(newName, this._index.get(oldName));
+ this.deleteSymbol(oldName);
+ this._index.get(newName).alias = newName;
+ return newName;
+ }
+
+ public void relate()
+ {
+ GLib.debug("RELATE called");
+ foreach(var s in this._index.keys) {
+ GLib.debug("%s", this._index.get(s).asString());
+ }
+ this.resolveBorrows();
+ this.resolveMemberOf();
+ this.resolveAugments();
+ GLib.debug("AFTER RELATE called");
+ foreach(var s in this._index.keys) {
+ GLib.debug("%s", this._index.get(s).asString());
+ }
+ }
+
+ void resolveBorrows()
+ {
+
+ return; // this code is not needed- we do not use @inherits
+ /*
+ foreach (var p in this._index.keys) {
+ var symbol = this._index.get(p);
+
+
+
+ if (symbol.is("FILE") || symbol.is("GLOBAL")) continue;
+
+ var borrows = symbol.inherits;
+ for (var i = 0; i < borrows.size; i++) {
+ var borrowed = this.getSymbol(borrows.get(i).alias);
+ if (!borrowed) {
+ imports.BuildDocs.Options.LOG.warn("Can't borrow undocumented "+borrows[i].alias+".");
+ continue;
+ }
+
+ var borrowAsName = borrows[i].as;
+ var borrowAsAlias = borrowAsName;
+ if (!borrowAsName) {
+ imports.BuildDocs.Options.LOG.warn("Malformed @borrow, 'as' is required.");
+ continue;
+ }
+
+ if (borrowAsName.length > symbol.alias.length && borrowAsName.indexOf(symbol.alias) == 0) {
+ borrowAsName = borrowAsName.replace(borrowed.alias, "");
+ }
+ else {
+ var joiner = "";
+ if (borrowAsName.charAt(0) != "#") joiner = ".";
+ borrowAsAlias = borrowed.alias + joiner + borrowAsName;
+ }
+
+ borrowAsName = borrowAsName.replace(/^[#.]/, "");
+
+ if (this.hasSymbol(borrowAsAlias)) continue;
+
+ var clone = borrowed.clone();
+ clone.name = borrowAsName;
+ clone.alias = borrowAsAlias;
+ this.addSymbol(clone);
+ }
+ }
+ */
+ }
+
+ void resolveMemberOf ()
+ {
+ if (this._index.keys.size < 1) {
+ return;
+ }
+ foreach (var p in this.keys()) {
+ var symbol = this.getSymbol(p);
+
+ if (symbol.is("FILE") || symbol.is("GLOBAL")) continue;
+
+ // the memberOf value was provided in the @memberOf tag
+ else if (symbol.memberOf.length > 0) {
+ var regex = new GLib.Regex("^("+symbol.memberOf+"[.#-])(.+)$");
+ GLib.MatchInfo minfo;
+ var parts = regex.match_full(symbol.alias, -1, 0, 0 , out minfo);
+
+ // like foo.bar is a memberOf foo
+ if (parts) {
+
+ symbol.memberOf = minfo.fetch(1);
+ symbol.private_name = minfo.fetch(2);
+ }
+ // like bar is a memberOf foo
+ else {
+ var joiner = symbol.memberOf.substring(symbol.memberOf.length-1);
+ if (!/[.#-]/.match(joiner)) symbol.memberOf += ".";
+
+ this.renameSymbol(p, symbol.memberOf + symbol.name);
+ }
+ }
+ // the memberOf must be calculated
+ else {
+ GLib.MatchInfo minfo;
+ var parts = /^(.*[.#-])([^.#-]+)$/.match_full(symbol.alias, -1, 0, 0 , out minfo);
+
+ if (parts) {
+ symbol.memberOf = minfo.fetch(1);
+ symbol.private_name = minfo.fetch(2);
+ }
+ }
+
+ // set isStatic, isInner
+ if (symbol.memberOf.length > 0) {
+ switch (symbol.memberOf[symbol.memberOf.length-1]) {
+ case '#' :
+ symbol.isStatic = false;
+ symbol.isInner = false;
+ break;
+
+ case '.' :
+ symbol.isStatic = true;
+ symbol.isInner = false;
+ break;
+
+ case '-' :
+ symbol.isStatic = false;
+ symbol.isInner = true;
+ break;
+
+ }
+ }
+
+ // unowned methods and fields belong to the global object
+ if (!symbol.is("CONSTRUCTOR") && !symbol.isNamespace && symbol.memberOf == "") {
+ symbol.memberOf = "_global_";
+ }
+
+ // clean up
+ if (/[.#-]$/.match(symbol.memberOf)) {
+ symbol.memberOf = symbol.memberOf.substring(0, symbol.memberOf.length-1);
+ }
+ //print("looking for memberOf: " + symbol.memberOf + " FOR " + symbol.alias);
+ // add to parent's methods or properties list
+ if (symbol.memberOf.length > 0) {
+ var container = this.getSymbol(symbol.memberOf);
+ if (container == null) {
+ if (SymbolSet.isBuiltin(symbol.memberOf)) {
+ container = DocParser.addBuiltin(symbol.memberOf);
+ }
+ else {
+ // print("symbol NOT a BUILT IN - createing a container");
+ // Eg. Ext.y.z (missing y)
+ // we need to add in the missing symbol...
+ container = new Symbol.new_populate_with_args(
+ symbol.memberOf, new Gee.ArrayList<string>(),
+ "OBJECT", new DocComment(""));
+ container.isNamespace = true;
+ this.addSymbol( container );
+ // print(container.toSource());
+ //container = this.getSymbol(symbol.memberOf);
+ // fake container ... so dont ad symbols to it..
+ continue;
+ container = null;
+ //LOG.warn("Can't document "+symbol.name +" as a member of undocumented symbol "+symbol.memberOf+".");
+ //LOG.warn("We only have the following symbols: \n" +
+ // this.keys.toSource());
+ }
+ }
+
+ if (container != null && !container.isNamespace) {
+ container.addMember(symbol);
+ }
+ }
+ }
+
+ }
+
+ void resolveAugments ()
+ {
+ // does this sort out multiple extends???
+
+ foreach (var p in this._index.keys) {
+ var symbol = this.getSymbol(p);
+ this.buildAugmentsList(symbol); /// build heirachy of inheritance...
+ if (symbol.alias == "_global_" || symbol.is("FILE")) continue;
+
+ var augments = symbol.augments;
+ for(var ii = 0, il = augments.size; ii < il; ii++) {
+ var contributer = this.getSymbol(augments[ii]);
+
+
+ if (contributer != null) {
+ contributer.childClasses.add(symbol.alias);
+ symbol.inheritsFrom.add(contributer.alias);
+ //if (!isUnique(symbol.inheritsFrom)) {
+ // imports.BuildDocs.Options.LOG.warn("Can't resolve augments: Circular reference: "+symbol.alias+" inherits from "+contributer.alias+" more than once.");
+ //}
+ //else {
+ var cmethods = contributer.methods;
+ var cproperties = contributer.properties;
+ var cfgs = contributer.cfgs;
+ for (var ci = 0, cl = cmethods.size; ci < cl; ci++) {
+ symbol.inherit(cmethods[ci]);
+ }
+ for (var ci = 0, cl = cproperties.size; ci < cl; ci++) {
+ symbol.inherit(cproperties[ci]);
+ }
+ foreach (var ci in cfgs.keys) {
+ symbol.addConfig(cfgs[ci]);
+ }
+
+
+ //}
+ }
+ else {
+ GLib.warning("Can't augment contributer: '%s', not found. FOR: %s",
+ augments[ii], symbol.alias
+ );
+ //LOG.warn("We only have the following symbols: \n" +
+ // this.keys().toSource().split(",").join(", \n"));
+ }
+
+ }
+ }
+
+ }
+
+
+ void addAugments (Symbol symbol, Gee.ArrayList<string> alist, bool forceit)
+ { // returns number added..
+ if (alist.size < 1) {
+ return;
+ }
+ //print("buildAugmentsList:addAugments" + alist.length);
+ //var rval = 0;
+ for(var ii = 0; ii < alist.size; ii++) {
+ //print("getAlias:" + alist[ii]);
+ if (alist[ii] == symbol.alias) {
+ continue;
+ }
+ var contributer = this.getSymbol(alist[ii]);
+ if (contributer == null) {
+ continue;
+ }
+
+ if (!forceit && symbol.augments.contains(alist[ii])) {
+ continue;
+ }
+ if (symbol.augments.index_of(alist[ii]) < 0) {
+ symbol.augments.add(alist[ii]);
+ }
+
+
+ this.addAugments(symbol, contributer.augments,false);
+
+ //rval++;
+ }
+ // print("buildAugmentsList: ADDED:" + rval);
+ // return rval;
+ }
+
+ void buildAugmentsList (Symbol symbol)
+ {
+
+ this.addAugments(symbol, symbol.augments, true);
+
+
+
+ }
+ public static bool isBuiltin(string name)
+ {
+ for (var i =0 ; i < SymbolSet.coreObjects.length; i++ ){
+ if (name == SymbolSet.coreObjects[i]) {
+ return true;
+ }
+ }
+ return false;
+ }
+ static string[] coreObjects = {
+ "_global_", "Array" , "Boolean", "Date", "Function",
+ "Math", "Number", "Object", "RegExp", "String"
+ };
+
+ }
+
+}
+
+
\ No newline at end of file
--- /dev/null
+//<script type="text/javscript">
+
+
+
+/**
+ @constructor
+*/
+namespace JSDOC {
+
+ public class TextStreamChar : Object {
+ public char c;
+ public bool eof;
+ public TextStreamChar(char val, bool eof=false) {
+ this.c = val;
+ this.eof = eof;
+ }
+ }
+
+ public class TextStream : Object {
+
+ string text;
+ int cursor;
+ int length;
+
+ public TextStream (string text = "")
+ {
+
+
+ this.text = text;
+ //stdout.printf ("%s", text);
+ this.length = text.length; // text.char_count(); //text.length;
+ this.cursor = 0;
+ }
+
+ public string lookS(int n = 0)
+ {
+
+ if (this.cursor+n < 0 || this.cursor+n >= this.length) {
+ return "";
+ }
+ return this.text.get_char(this.cursor+n).to_string(); // this.text[this.cursor+n]; //
+ }
+ public char lookC(int n = 0)
+ {
+
+ if (this.cursor+n < 0 || this.cursor+n >= this.length) {
+ return '\0';
+ }
+ return this.text[this.cursor+n];
+ }
+
+
+ public bool lookEOF(int n = 0)
+ {
+ if (this.cursor+n < 0 || this.cursor+n >= this.length) {
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * @param n - number of characters to return..
+ */
+ public string nextS(int n = 1)
+ {
+
+ if (n < 1) { //?? eof???
+ return "";
+ }
+
+ string pulled = "";
+ var i = 0;
+ while (i < n) {
+ if (this.cursor+i < this.length) {
+ var add = this.text.get_char(this.cursor+i).to_string();
+ pulled += add;
+ i += 1;// add.length;
+ } else {
+ return "";
+
+ }
+ }
+
+ this.cursor += pulled.length; // i?
+ return pulled;
+
+ }
+
+ public char nextC()
+ {
+
+ if (this.cursor+1 < this.length) {
+ return this.text[this.cursor++];;
+ }
+ return '\0';
+
+ }
+
+
+ }
+}
\ No newline at end of file
--- /dev/null
+/**
+ * @class Token
+ *
+ * @prop data {String} raw value of token
+ * @prop type {String} type of token
+ * TOKN (unknown) - name is UNKNOWN_TOKEN
+ *
+ * KEYW (keyword) - name is upper case version of keyword
+ * NAME (name/identifier) - name is NAME
+ * COMM (comment) - name is MULTI_LINE_COMM, JSDOC, SINGLE_LINE_COMM
+ * PUNC (puctuation) - name is String description of punctionan (eg LEFTPARAM)
+ * WHIT (white space) - name is SPACE,NEWLINE
+ * STRN (string) - name is DOBULE_QUOTE, SINGLE_QUOTE
+ * NUMB (number) - name is OCTAL,DECIMAL,HEC_DEC
+ * REGX (reg.expression) - name is REGX
+ * @prop name {String} see type details above
+ * @prop identifier {Identifier} identifier class if relivant
+ *
+ *
+ *
+ * old mappings:
+ *
+ * Script.TOKidentifier - type == 'NAME'
+ * Script.TOKassign = data == '='
+ * Script.TOKsemicolon data == '';
+ *
+ *
+ *
+*/
+namespace JSDOC
+{
+ int Token_id = 1;
+ public enum TokenType {
+ TOKN, // (unknown) - name is UNKNOWN_TOKEN
+ KEYW, // (keyword) - name is upper case version of keyword
+ NAME, // (name/identifier) - name is NAME
+ COMM, // (comment) - name is MULTI_LINE_COMM, JSDOC, SINGLE_LINE_COMM
+ PUNC, // (puctuation) - name is String description of punctionan (eg LEFTPARAM)
+ WHIT, // (white space) - name is SPACE,NEWLINE
+ STRN, // (string) - name is DOBULE_QUOTE, SINGLE_QUOTE
+ NUMB, // (number) - name is OCTAL,DECIMAL,HEC_DEC
+ REGX, // (reg.expression) - name is REGX
+
+ VOID // BAD eof
+ }
+
+
+ public enum TokenName {
+ UNKNOWN_TOKEN,
+
+ // keywords.
+ BREAK,
+ CASE,
+ CATCH,
+ CONST,
+ CONTINUE,
+ DEFAULT,
+ DELETE,
+ DO,
+ ELSE,
+ FALSE,
+ FINALLY,
+ FOR,
+ FUNCTION,
+ IF,
+ IN,
+ INSTANCEOF,
+ NEW,
+ NULL,
+ RETURN,
+ SWITCH,
+ THIS,
+ THROW,
+ TRUE,
+ TRY,
+ TYPEOF,
+ VOID,
+ WHILE,
+ WITH,
+ VAR,
+ EVAL,
+
+ NAME,
+
+
+ MULTI_LINE_COMM, JSDOC, SINGLE_LINE_COMM,
+ // punc
+ SEMICOLON,
+ COMMA,
+ HOOK,
+ COLON,
+ OR,
+ AND,
+ BITWISE_OR,
+ BITWISE_XOR,
+ BITWISE_AND,
+ STRICT_EQ,
+ EQ,
+ ASSIGN,
+ STRICT_NE,
+ NE,
+ LSH,
+ LE,
+ LT,
+ URSH,
+ RSH,
+ GE,
+ GT,
+ INCREMENT,
+ DECREMENT,
+ PLUS,
+ MINUS,
+ MUL,
+ DIV,
+ MOD,
+ NOT,
+ BITWISE_NOT,
+ DOT,
+ LEFT_BRACE,
+ RIGHT_BRACE,
+ LEFT_CURLY,
+ RIGHT_CURLY,
+ LEFT_PAREN, // (
+ RIGHT_PAREN, // )
+
+
+
+ SPACE,NEWLINE,
+ DOUBLE_QUOTE, SINGLE_QUOTE,
+ OCTAL,DECIMAL,HEX_DEC,
+ REGX,
+
+ START_OF_STREAM,
+ END_OF_STREAM,
+
+ UNKNOWN // we should change void/void to void/unknown.
+ }
+
+ public class TokenKeyMap : Object {
+ public Token key;
+ public Gee.ArrayList<Token> vals;
+
+ public TokenKeyMap()
+ {
+ this.key = new Token("",TokenType.VOID, TokenName.VOID);
+ this.vals = new Gee.ArrayList<Token>();
+ }
+
+
+ }
+
+
+ public class Token : Object {
+
+ public int id;
+
+ public string data;
+ public TokenType type;
+ public TokenName name;
+ public int line;
+ public string prefix; // white space prefix... (when outputing with WS)
+
+ public string outData;
+
+ public Identifier identifier;
+
+
+
+ // used to stuff tokens together when building a tree..
+ public Gee.ArrayList<Gee.ArrayList<Token>> items;
+ // for a object definition, key -> array of tokens..
+ public Gee.HashMap<string,TokenKeyMap> props;
+ public Gee.ArrayList<string> keyseq;
+ // props??? what's this???
+
+ public Token(string data, TokenType type, TokenName name, int line = -1)
+ {
+ this.data = data;
+ this.type = type;
+ this.name = name;
+ this.line = line;
+ this.prefix = "";
+ this.outData = ""; // used by packer/scopeparser
+ this.identifier = null; // used by scope
+ this.id = Token_id++;
+
+ // should we initialize when needed...?? to keep the usage down..
+ this.items = null;
+ this.props = null;
+ this.keyseq = null;
+ if (name == TokenName.LEFT_BRACE ||
+ name == TokenName.LEFT_CURLY ||
+ name == TokenName.LEFT_PAREN ) {
+
+ this.items = new Gee.ArrayList<Gee.ArrayList<Token>>();
+ this.props = new Gee.HashMap<string,TokenKeyMap>();
+ this.keyseq = new Gee.ArrayList<string>();
+ }
+
+ }
+
+ public string asString()
+ {
+ if (this.name == TokenName.LEFT_BRACE ||
+ this.name == TokenName.LEFT_CURLY ||
+ this.name == TokenName.LEFT_PAREN ) {
+
+ return "line: %s, %d, id %d, type %s, IS=%d,PS=%d,KS=%d, data : %s, name %s, , outData: %s".printf(
+ DocParser.currentSourceFile == null ? "??" : DocParser.currentSourceFile,
+ this.line,
+ this.id,
+ this.type.to_string(),
+ this.name == TokenName.LEFT_BRACE ? -1 : this.items.size,
+ this.name == TokenName.LEFT_BRACE ? -1 : this.props.size,
+ this.name == TokenName.LEFT_BRACE ? -1 : this.keyseq.size,
+ this.data,
+ this.name.to_string(),
+ this.outData == null ? "" : this.outData
+ );
+
+
+ }
+
+
+
+ return "line:%s:%d, id %d, type %s, data : %s, name %s, , outData: %s".printf(
+ DocParser.currentSourceFile == null ? "??" : DocParser.currentSourceFile,
+ this.line,
+ this.id,
+ this.type.to_string(),
+
+ this.data,
+ this.name.to_string(),
+ this.outData == null ? "" : this.outData
+ );
+
+ }
+
+
+ public void dump(string indent)
+ {
+ print("%s%s\n",indent, this.asString());
+ if (this.items != null && this.items.size > 0) {
+
+ for (var i = 0;i < this.items.size; i++) {
+ print("%s --ITEMS[%d] [ \n",indent,i);
+ for (var j = 0;j < this.items[i].size; j++) {
+ this.items[i][j].dump(indent + " ");
+ }
+ }
+ }
+ if (this.props != null && this.props.size > 0) {
+ var m = this.props.map_iterator();
+ while(m.next()) {
+ print("%s --KEY %s :: \n",indent,m.get_key());
+ var vals = m.get_value().vals;
+ for (var i = 0;i < vals.size; i++) {
+
+ vals[i].dump(indent + " ");
+ }
+ }
+
+
+ }
+
+ }
+
+
+ public string toRaw(int lvl = 0)
+ {
+
+
+ var ret = this.data ;
+
+ foreach(var ai in this.items ) {
+ // supposed to iterate properties???
+ string str = "";
+ //foreach( var it in ai) {
+ // str += it.toRaw(lvl+1);
+ // }
+ ret += str;
+ }
+
+ /* -- what is a prop..
+ if (this.props) {
+ for (var i in this.props) {
+ ret += this.props[i].key.toRaw(lvl+1) + ' : ';
+ this.props[i].val.forEach( function(e) {
+ ret+=e.toRaw(lvl+1);
+ })
+
+ }
+ }
+
+ */
+
+ return this.prefix + ret;
+
+ }
+ /*
+ toJS : function() {
+
+ try {
+ var _tmp = '';
+ eval( "_tmp = " + this.data);
+ return _tmp;
+ } catch( e) {
+ return "ERROR unparsable" + this.data;
+ }
+ },
+ */
+
+
+ public bool isName(TokenName what) {
+ return this.name == what;
+ }
+ public bool isType(TokenType what) {
+ return this.type == what;
+ }
+
+ }
+}
+
\ No newline at end of file
--- /dev/null
+//<script type="text/javascript">
+
+
+// test code
+
+//const Token = imports.Token.Token;
+//const Lang = imports.Lang.Lang;
+
+/**
+ @class Search a {@link JSDOC.TextStream} for language tokens.
+*/
+
+namespace JSDOC {
+
+
+
+ public class TokenArray: Object {
+
+ private Packer? packer;
+ private TokenReader reader;
+
+ public Gee.ArrayList<Token> tokens;
+ Token lastAdded = null;
+
+ public int length {
+ get { return this.tokens.size; }
+ }
+
+ public TokenArray(Packer? packer, TokenReader reader)
+ {
+ this.packer = packer;
+ this.reader = reader;
+ this.tokens = new Gee.ArrayList<Token>();
+ }
+
+ public Token? last() {
+ if (this.tokens.size > 0) {
+ return this.tokens.get(this.tokens.size-1);
+ }
+ return null;
+ }
+ public Token? lastSym () {
+ for (var i = this.tokens.size-1; i >= 0; i--) {
+ if (!(this.tokens.get(i).isType(TokenType.WHIT) || this.tokens.get(i).isType(TokenType.COMM))) {
+ return this.tokens.get(i);
+ }
+ }
+ return null;
+ }
+
+
+ public void push (Token t)
+ {
+ if (this.lastAdded != null) {
+
+ if (
+ (
+ this.lastAdded.isType(TokenType.NAME) ||
+ this.lastAdded.isType(TokenType.STRN) ||
+ this.lastAdded.isType(TokenType.NUMB) ||
+ (
+ this.lastAdded.isType(TokenType.KEYW) &&
+ (
+ this.lastAdded.isName(TokenName.TRUE) || this.lastAdded.isName(TokenName.FALSE)
+ )
+ )
+ )
+ &&
+ (
+ t.isType(TokenType.NAME) || // NAME -> ???
+ t.isType(TokenType.STRN) ||
+ t.isType(TokenType.NUMB) ||
+ (t.isType(TokenType.KEYW) &&
+ !(t.isName(TokenName.IN) || t.isName(TokenName.INSTANCEOF) || t.isName(TokenName.INSTANCEOF))
+ )
+ )
+ ) {
+ //print("%s\n%s\n", this.lastAdded.asString(), t.asString());
+ if (this.packer != null) {
+ this.packer.logError(
+ Packer.ResultType.err,
+ this.reader.filename,
+ t.line,
+ "'" + this.lastAdded.data+ "' token followed by " + t.name.to_string() + ":" + t.data
+ );
+ }
+
+
+ }
+ // other pattern that are not valid
+ // ] or ) followed by KEYW "STRING" or number ?
+ if (
+ (this.lastAdded.isName( TokenName.RIGHT_BRACE) || this.lastAdded.isName( TokenName.RIGHT_PAREN))
+ &&
+ (
+ (t.isType(TokenType.KEYW) &&
+ !(t.isName(TokenName.IN) || t.isName(TokenName.INSTANCEOF) || t.isName(TokenName.INSTANCEOF))
+ ) ||
+ t.isType(TokenType.NAME) || // NAME -> ???
+ t.isType(TokenType.STRN) ||
+ t.isType(TokenType.NUMB)
+ )
+ ) {
+ if (this.packer != null) {
+ //print("%s\n%s\n", this.lastAdded.asString(), t.asString());
+ this.packer.logError(
+ Packer.ResultType.err,
+ this.reader.filename,
+ t.line,
+ "'" + this.lastAdded.data+ "' token followed by " + t.name.to_string() + ":" + t.data
+ );
+ }
+ }
+ }
+
+
+
+ this.tokens.add(t);
+
+ if (t.isType(TokenType.WHIT) || t.isType(TokenType.COMM)){
+ // do not set last...
+ } else {
+ this.lastAdded = t;
+ }
+
+ }
+ public Token? pop ()
+ {
+ if (this.tokens.size > 0) {
+ return this.tokens.remove_at(this.tokens.size-1);
+ }
+ return null;
+ }
+
+ public new Token get(int i) {
+ return this.tokens.get(i);
+ }
+ public void dump()
+ {
+ var line = 0;
+ foreach(var token in this.tokens) {
+ if (token.line != line) {
+ print("%d: ", token.line);
+ line = token.line;
+ }
+ print("%s",token.data);
+ }
+ print("\n----\n");
+ foreach(var token in this.tokens) {
+ stdout.printf ("%s\n", token.asString());
+ }
+ }
+
+ }
+
+ public errordomain TokenReader_Error {
+ ArgumentError,
+ SyntaxError
+ }
+
+
+ public class TokenReader : Object
+ {
+
+
+
+ /*
+ *
+ * I wonder if this will accept the prop: value, prop2 :value construxtor if we do not define one...
+ */
+
+ /** @cfg {Boolean} collapseWhite merge multiple whitespace/comments into a single token **/
+ public bool collapseWhite = false; // only reduces white space...
+ /** @cfg {Boolean} keepDocs keep JSDOC comments **/
+ public bool keepDocs = true;
+ /** @cfg {Boolean} keepWhite keep White space **/
+ public bool keepWhite = false;
+ /** @cfg {Boolean} keepComments keep all comments **/
+ public bool keepComments = false;
+ /** @cfg {Boolean} sepIdents seperate identifiers (eg. a.b.c into ['a', '.', 'b', '.', 'c'] ) **/
+ public bool sepIdents = false;
+ /** @cfg {String} filename name of file being parsed. **/
+ public string filename = "";
+ /** @config {Boolean} ignoreBadGrammer do not throw errors if we find stuff that might break compression **/
+ public bool ignoreBadGrammer = false;
+
+
+ int line = 0;
+
+ private Packer? packer;
+
+ public TokenReader(Packer? packer)
+ {
+ this.packer = packer;
+ }
+
+ /**
+ * tokenize a stream
+ * @return {Array} of tokens
+ *
+ * ts = new TextStream(File.read(str));
+ * tr = TokenReader({ keepComments : true, keepWhite : true });
+ * tr.tokenize(ts)
+ *
+ */
+ public TokenArray tokenize(TextStream stream)
+ {
+ this.line =1;
+ var tokens = new TokenArray(this.packer, this);
+
+
+ while (!stream.lookEOF()) {
+
+
+ if (this.read_mlcomment(stream, tokens)) continue;
+ if (this.read_slcomment(stream, tokens)) continue;
+ if (this.read_dbquote(stream, tokens)) continue;
+ if (this.read_snquote(stream, tokens)) continue;
+ if (this.read_regx(stream, tokens)) continue;
+ if (this.read_numb(stream, tokens)) continue;
+ if (this.read_punc(stream, tokens)) continue;
+ if (this.read_newline(stream, tokens)) continue;
+ if (this.read_space(stream, tokens)) continue;
+ if (this.read_word(stream, tokens)) continue;
+
+ // if execution reaches here then an error has happened
+ tokens.push(
+ new Token(stream.nextS(), TokenType.TOKN, TokenName.UNKNOWN_TOKEN, this.line)
+ );
+ }
+
+
+
+ return tokens;
+ }
+
+ /**
+ * findPuncToken - find the id of a token (previous to current)
+ * need to back check syntax..
+ *
+ * @arg {Array} tokens the array of tokens.
+ * @arg {String} token data (eg. '(')
+ * @arg {Number} offset where to start reading from
+ * @return {Number} position of token
+ */
+ public int findPuncToken(TokenArray tokens, string data, int n)
+ {
+ n = n > 0 ? n : tokens.length -1;
+ var stack = 0;
+ while (n > -1) {
+
+ if (stack < 1 && tokens.get(n).data == data) {
+ return n;
+ }
+
+ if (tokens.get(n).data == ")" || tokens.get(n).data == "}") {
+ stack++;
+ n--;
+ continue;
+ }
+ if (stack > 0 && (tokens.get(n).data == "{" || tokens.get(n).data == "(")) {
+ stack--;
+ n--;
+ continue;
+ }
+
+
+ n--;
+ }
+ return -1;
+ }
+ /**
+ * lastSym - find the last token symbol
+ * need to back check syntax..
+ *
+ * @arg {Array} tokens the array of tokens.
+ * @arg {Number} offset where to start..
+ * @return {Token} the token
+ */
+ public Token? lastSym(TokenArray tokens, int n)
+ {
+ for (var i = n-1; i >= 0; i--) {
+ if (!(tokens.get(i).isType(TokenType.WHIT) || tokens.get(i).isType(TokenType.COMM))) {
+ return tokens.get(i);
+ }
+ }
+ return null;
+ }
+
+
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_word (TextStream stream, TokenArray tokens)
+ {
+ string found = "";
+ while (!stream.lookEOF() && Lang.isWordChar(stream.lookC() )) {
+ found += stream.nextC().to_string();
+ }
+
+ if (found == "") {
+ return false;
+ }
+ TokenName name;
+ try {
+ name = Lang.keyword(found);
+ tokens.push(new Token(found, TokenType.KEYW, name, this.line));
+ return true;
+ } catch (LangError e) {
+ // noop -- then it's a word / not a keyword...
+ }
+ /*
+ What did all this do...
+
+ //
+
+ // look for "()return" ?? why ???
+ var ls = tokens.lastSym();
+ if (found == "return" && ls != null && ls.data == ")") {
+ //Seed.print('@' + tokens.length);
+ var n = this.findPuncToken(tokens, ")", 0);
+ //Seed.print(')@' + n);
+ n = this.findPuncToken(tokens, "(", n-1);
+ //Seed.print('(@' + n);
+
+ //var lt = this.lastSym(tokens, n);
+ /*
+ //print(JSON.stringify(lt));
+ if (lt.type != "KEYW" || ["IF", 'WHILE'].indexOf(lt.name) < -1) {
+ if (!this.ignoreBadGrammer) {
+ throw new TokenReader_Error.ArgumentError(
+ this.filename + ":" + this.line + " Error - return found after )"
+ );
+ }
+ }
+
+ */
+ /*
+ }
+
+
+ tokens.push(new Token(found, TokenType.KEYW, name, this.line));
+ return true;
+ }
+ */
+ if (!this.sepIdents || found.index_of(".") < 0 ) {
+ tokens.push(new Token(found, TokenType.NAME, TokenName.NAME, this.line));
+ return true;
+ }
+ var n = found.split(".");
+ var p = false;
+ foreach (unowned string nm in n) {
+
+ if (p) {
+ tokens.push(new Token(".", TokenType.PUNC, TokenName.DOT, this.line));
+ }
+ p=true;
+ if (nm.length < 1 ) {
+ continue;
+ }
+ tokens.push(new Token(nm, TokenType.NAME, TokenName.NAME, this.line));
+ }
+ return true;
+
+
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_punc (TextStream stream, TokenArray tokens)
+ {
+ string found = "";
+ int pos = 0;
+ TokenName tokname = TokenName.UNKNOWN;
+ while (!stream.lookEOF()) {
+ var ns = stream.lookC();
+ if (pos == 0 ){
+ tokname = Lang.puncFirstString(ns);
+ if (TokenName.UNKNOWN == tokname) {
+ break;
+ }
+ pos++;
+ found += stream.nextS();
+ continue;
+ }
+ var nx = Lang.puncString(found + ns.to_string() );
+ if (TokenName.UNKNOWN == nx) {
+ break;
+ }
+
+ tokname = nx;
+ found += stream.nextS();
+ }
+
+
+ if (tokname == TokenName.UNKNOWN) {
+ return false;
+ }
+
+ var ls = tokens.lastSym();
+
+ if ((found == "}" || found == "]") && ls != null && ls.data == ",") {
+ //print("Error - comma found before " + found);
+ //print(JSON.stringify(tokens.lastSym(), null,4));
+ if (this.packer != null) {
+ this.packer.logError(
+ this.ignoreBadGrammer ? Packer.ResultType.warn : Packer.ResultType.err,
+ this.filename,
+ this.line,
+ "comma found before " + found
+ );
+ }
+
+ }
+
+ tokens.push(new Token(found, TokenType.PUNC, tokname, this.line));
+ return true;
+
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_space (TextStream stream, TokenArray tokens)
+ {
+ // not supported yet.. newlines can be unicode...
+ var found = "";
+
+ while (!stream.lookEOF() && Lang.isSpace( stream.lookS()) && !Lang.isNewline(stream.lookS())) {
+ found += stream.nextS();
+ }
+
+ if (found == "") {
+ return false;
+ }
+ //print("WHITE = " + JSON.stringify(found));
+
+
+ if (this.collapseWhite) {
+ found = " "; // this might work better if it was a '\n' ???
+ }
+ if (this.keepWhite) {
+ tokens.push(new Token(found, TokenType.WHIT, TokenName.SPACE, this.line));
+ }
+ return true;
+
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_newline (TextStream stream, TokenArray tokens)
+ {
+ // we do not support it yet, but newlines can be UNICODE..
+ var found = "";
+
+ var line = this.line;
+ // \r or \r\n
+ var lastc = "";
+ while (!stream.lookEOF() && Lang.isNewline(stream.lookS())) {
+ var cur = stream.lookS();;
+ if (lastc == "\r" && cur == "\n") {
+ // dont add new line..
+ } else {
+ this.line++;
+ }
+ lastc = cur;
+
+
+ found += stream.nextS();
+ }
+
+ if (found == "") {
+ return false;
+ }
+ //print("NEWLINE @%d changing this.line to %d\n", line, this.line);
+ // if we found a new line, then we could check if previous character was a ';' - if so we can drop it.
+ // otherwise generally keep it.. in which case it should reduce our issue with stripping new lines..
+
+
+ //this.line++;
+ if (this.collapseWhite) {
+ found = "\n"; // reduces multiple line breaks into a single one...
+ }
+
+ if (this.keepWhite) {
+ var last = tokens.last();
+ if (last != null && last.type != TokenType.WHIT) {
+ //tokens.push(last);
+ } else {
+ tokens.pop(); // remove the last token..
+ }
+ // replaces last new line...
+ tokens.push(new Token(found, TokenType.WHIT, TokenName.NEWLINE, line));
+ }
+ return true;
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_mlcomment (TextStream stream, TokenArray tokens)
+ {
+ if (stream.lookC() != '/') {
+ return false;
+ }
+ if (stream.lookC(1) != '*') {
+ return false;
+ }
+
+ var found = new StringBuilder();
+ found.append(stream.nextS(2));
+
+
+ string c = "";
+ var line = this.line;
+ while (!stream.lookEOF() && !(stream.lookC(-1) == '/' && stream.lookC(-2) == '*')) {
+ c = stream.nextS();
+ if (c == "\n") {
+ this.line++;
+ }
+ found.append(c);
+ }
+
+ // to start doclet we allow /** or /*** but not /**/ or /****
+ //if (found.length /^\/\*\*([^\/]|\*[^*])/.test(found) && this.keepDocs) {
+ if (this.keepDocs && found.len > 4 && found.str.index_of("/**") == 0 && found.str[3] != '/') {
+ tokens.push(new Token(found.str, TokenType.COMM, TokenName.JSDOC, this.line));
+ } else if (this.keepComments) {
+ tokens.push(new Token(found.str, TokenType.COMM, TokenName.MULTI_LINE_COMM, line));
+ }
+ return true;
+
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_slcomment (TextStream stream, TokenArray tokens)
+ {
+ var found = "";
+ if (
+ (stream.lookC() == '/' && stream.lookC(1) == '/' && (""!=(found=stream.nextS(2))))
+ ||
+ (stream.lookC() == '<' && stream.lookC(1) == '!' && stream.lookC(2) == '-' && stream.lookC(3) == '-' && (""!=(found=stream.nextS(4))))
+ ) {
+ var line = this.line;
+ while (!stream.lookEOF()) {
+ //print(stream.look().to_string());
+ if ( Lang.isNewline(stream.lookS().to_string())) {
+ break;
+ }
+ found += stream.nextS();
+ }
+ if (!stream.lookEOF()) { // lookinng for end of line... if we got it, then do not eat the character..
+ found += stream.nextS();
+ }
+ if (this.keepComments) {
+ tokens.push(new Token(found, TokenType.COMM, TokenName.SINGLE_LINE_COMM, line));
+ }
+ this.line++;
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_dbquote (TextStream stream, TokenArray tokens)
+ {
+ if (stream.lookC() != '"') {
+ return false;
+ }
+ // find terminator
+ var str = new StringBuilder();
+ str.append_unichar(stream.nextC());
+
+ while (!stream.lookEOF()) {
+ if (stream.lookC() == '\\') {
+ if (Lang.isNewline(stream.lookS(1).to_string())) {
+ do {
+ stream.nextC();
+ } while (!stream.lookEOF() && Lang.isNewline(stream.lookS().to_string()));
+ str.append( "\\\n");
+ }
+ else {
+ str.append(stream.nextS(2));
+ }
+ continue;
+ }
+ if (stream.lookC() == '"') {
+ str.append_unichar(stream.nextC());
+ tokens.push(new Token(str.str, TokenType.STRN, TokenName.DOUBLE_QUOTE, this.line));
+ return true;
+ }
+
+ str.append(stream.nextS());
+
+ }
+ return false;
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_snquote (TextStream stream, TokenArray tokens)
+ {
+ if (stream.lookC() != '\'') {
+ return false;
+ }
+ // find terminator
+ var str = new StringBuilder();
+ str.append_unichar(stream.nextC());
+
+ while (!stream.lookEOF()) {
+ if (stream.lookC() == '\\') { // escape sequence
+ str.append( stream.nextS(2));
+ continue;
+ }
+ if (stream.lookC() == '\'') {
+ str.append_unichar(stream.nextC());
+ tokens.push(new Token(str.str, TokenType.STRN, TokenName.SINGLE_QUOTE, this.line));
+ return true;
+ }
+ str.append(stream.nextS());
+
+ }
+ return false;
+ }
+
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_numb (TextStream stream, TokenArray tokens)
+ {
+ if (stream.lookC() == '0' && stream.lookC(1) == 'x') {
+ return this.read_hex(stream, tokens);
+ }
+
+ var found = "";
+
+ while (!stream.lookEOF() && !Lang.isNewline(stream.lookS()) && Lang.isNumber(found+stream.lookC().to_string())){
+ found += stream.nextS();
+ }
+
+ if (found == "") {
+ return false;
+ }
+ // if we hit an 'e'.... then we need to carry on parsing..
+ if (stream.lookC() == 'e' || stream.lookC() == 'E') {
+ found += stream.nextS();
+ var nc = stream.lookC();
+ if (nc == '+' || nc == '-' || (nc >= '0' && nc <= '9')) {
+ found += stream.nextS();
+ while (!stream.lookEOF() && !Lang.isNewline(stream.lookS()) && Lang.isNumber(found+stream.lookC().to_string())){
+ found += stream.nextS();
+ }
+ if (!Lang.isNumber(found)) {
+ if (this.packer != null) {
+ this.packer.logError(
+ Packer.ResultType.err,
+ this.filename,
+ this.line,
+ "Invalid Number " + found
+ );
+ }
+ return true; // eat the characters and continue...
+ }
+
+ } else {
+ if (this.packer != null) {
+ this.packer.logError(
+ Packer.ResultType.err,
+ this.filename,
+ this.line,
+ "could not find +/- or 0-9 after Number '" + found
+ );
+ return true;
+ }
+ }
+
+ }
+
+ if (GLib.Regex.match_simple("^0[0-7]", found)) {
+ tokens.push(new Token(found, TokenType.NUMB, TokenName.OCTAL, this.line));
+ return true;
+ }
+ //print("got number '%s'\n", found);
+
+ tokens.push(new Token(found, TokenType.NUMB, TokenName.DECIMAL, this.line));
+ return true;
+
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_hex (TextStream stream, TokenArray tokens)
+ {
+ var found = stream.nextS(2);
+
+ while (!stream.lookEOF()) {
+ if (Lang.isHexDec(found) && !Lang.isHexDec(found+stream.lookC().to_string())) { // done
+ tokens.push(new Token(found, TokenType.NUMB, TokenName.HEX_DEC, this.line));
+ return true;
+ }
+
+ found += stream.nextS();
+
+ }
+ return false;
+ }
+
+ /**
+ @returns {Boolean} Was the token found?
+ */
+ public bool read_regx (TextStream stream, TokenArray tokens)
+ {
+
+ if (stream.lookC() != '/') {
+ return false;
+ }
+ var last = tokens.lastSym();
+ if (
+ (last == null)
+ ||
+ (
+ !last.isType(TokenType.NUMB) // stuff that can not appear before a regex..
+ && !last.isType(TokenType.NAME)
+ && !last.isName(TokenName.RIGHT_PAREN)
+ && !last.isName(TokenName.RIGHT_BRACE)
+ )
+ ) {
+ var regex = stream.nextS();
+ var in_brace = false; // this is really hacky... we ignore [ .../ ] so aforward slash in a regex..
+ while (!stream.lookEOF()) {
+ if (stream.lookC() == '[') {
+ in_brace = true;
+ }
+ if (in_brace && stream.lookC() == ']') {
+ in_brace = false;
+ }
+
+ if (stream.lookC() == '\\') { // escape sequence
+ regex += stream.nextS(2);
+ continue;
+ }
+ if (!in_brace && stream.lookC() == '/') {
+ regex += stream.nextS();
+
+ while (GLib.Regex.match_simple("[gmi]", stream.lookS().to_string())) {
+ regex += stream.nextS();
+ }
+
+ tokens.push(new Token(regex, TokenType.REGX, TokenName.REGX, this.line));
+ return true;
+ }
+
+ regex += stream.nextS();
+
+ }
+ // error: unterminated regex
+ }
+ return false;
+ }
+ }
+}
--- /dev/null
+
+/**
+ * @class TokenStream
+ *
+ * BC notes:
+ *
+ * nextT => nextTok
+ * lookT => lookTok
+ *
+ */
+
+
+namespace JSDOC {
+
+ public errordomain TokenStreamError {
+ ArgumentError
+ }
+ public class TokenStream : Object
+ {
+
+ protected Gee.ArrayList<Token> tokens;
+ public int cursor; // where are we in the stream.
+
+
+ public TokenStream(Gee.ArrayList<Token> tokens) {
+
+ this.tokens = tokens;
+
+ this.rewind();
+ }
+ public Gee.ArrayList<Token> toArray()
+ {
+ return this.tokens;
+ }
+
+
+ public void rewind() {
+ this.cursor = -1;
+ }
+
+ /**
+ @type JSDOC.Token
+ */
+ public Token? look (int n, bool considerWhitespace) // depricated... causes all sorts of problems...
+ {
+
+
+ if (considerWhitespace == true) {
+
+ if (this.cursor+n < 0 || this.cursor+n > (this.tokens.size -1)) {
+ return new Token("", TokenType.VOID, TokenName.START_OF_STREAM);
+ }
+ return this.tokens.get(this.cursor+n);
+ }
+
+
+ var count = 0;
+ var i = this.cursor;
+
+ while (true) {
+ if (i < 0) {
+ return new Token("", TokenType.VOID, TokenName.START_OF_STREAM);
+ }
+ if (i >= this.tokens.size) {
+ return new Token("", TokenType.VOID, TokenName.END_OF_STREAM);
+ }
+
+ if (i != this.cursor && this.tokens.get(i).isType(TokenType.WHIT)) {
+ i += (n < 0) ? -1 : 1;
+ continue;
+ }
+
+ if (count == n) {
+ return this.tokens.get(i);
+ }
+ count++;
+ i += (n < 0) ? -1 : 1;
+ }
+
+ // return new Token("", "VOID", "STREAM_ERROR"); // because null isn't an object and caller always expects an object
+
+ }
+ // look through token stream, including white space...
+ public Token lookAny (int n)
+ {
+
+
+ if (this.cursor+n < 0 || this.cursor+n > (this.tokens.size -1)) {
+ return new Token("", TokenType.VOID, TokenName.START_OF_STREAM);
+ }
+ return this.tokens.get(this.cursor+n);
+
+
+
+ }
+
+
+
+ public int lookFor (string data)
+ {
+ // non tree version..
+ var i = this.cursor < 0 ? 0 : this.cursor ;
+
+ while (true) {
+ if (i >= this.tokens.size) {
+ return -1;
+ }
+ if (this.tokens.get(i).data == data) {
+ return i;
+ }
+ i++;
+
+ }
+ // should not get here!
+ // return -1;
+
+ }
+
+
+ /**
+ * look ahead (or back) x number of tokens (which are not comment or whitespace)
+ * ?? used by scope parser & compress white to look back?
+ */
+ public Token lookTok (int n) {
+
+
+ var step = (n < 0) ? -1 : 1;
+ var count = 0;
+
+ var i = this.cursor;
+
+ while (true) {
+ // print("lookTok:i=%d n= %d count=%d\n" , i, n, count);
+
+ if (i < 0 && n > -1) {
+ i = 0;
+ count += step;
+ continue;
+ }
+
+
+ // beyond beginnnig..
+ if (i < 0 && n < 0) {
+ return new Token("BEG", TokenType.VOID, TokenName.END_OF_STREAM);
+ }
+
+
+ // beyond end..
+ if (i >= this.tokens.size) {
+ return new Token("END", TokenType.VOID, TokenName.END_OF_STREAM);
+ }
+ // print("lookTok:i= %d n= %d : %s\n" , i, n, this.tokens.get(i).asString());
+ var tok = this.tokens.get(i);
+
+ if (i != this.cursor && (
+ tok.isType(TokenType.WHIT) || tok.isType(TokenType.COMM)
+ )) {
+ i += step;
+ continue;
+ }
+
+ if (count == n) {
+ return this.tokens.get(i);
+ }
+ count+=step;
+ i += step;
+ }
+ // should never get here..
+ // return new Token("", "VOID", "END_OF_STREAM");; // because null isn't an object and caller always expects an object;
+
+ }
+
+ /**
+ * @return {Token|null}
+ * next token (with white space)
+ */
+
+
+ public Token? next() {
+
+
+ //if (typeof howMany == "undefined") howMany = 1;
+ // if (howMany < 1) { return null; }
+
+ if (this.cursor+1 >= this.tokens.size) {
+ return null;
+ }
+ this.cursor++;
+ return this.tokens.get(this.cursor);
+
+ }
+
+ public Gee.ArrayList<Token>? nextM(int howMany) throws TokenStreamError {
+
+ //if (typeof howMany == "undefined") howMany = 1;
+ if (howMany < 2) {
+ throw new TokenStreamError.ArgumentError("nextM called with wrong number : %d", howMany);
+ }
+ var got = new Gee.ArrayList<Token>();
+
+ for (var i = 1; i <= howMany; i++) {
+ if (this.cursor+i >= this.tokens.size) {
+ return null;
+ }
+ got.add(this.tokens.get(this.cursor+i));
+ }
+ this.cursor += howMany;
+
+ return got;
+ }
+
+
+
+
+ // what about comments after 'function'...
+ // is this used ???
+ public Token? nextTok() {
+ return this.nextNonSpace();
+ }
+
+ public Token? nextNonSpace ()
+ {
+
+ while (true) {
+ var tok = this.next();
+ if (tok == null) {
+ return null;
+ }
+ if (tok.isType(TokenType.WHIT) || tok.isType(TokenType.COMM)) {
+ continue;
+ }
+ return tok;
+ }
+ }
+
+ /**
+ * balance
+ * -- returns all the tokens betweeen and including stop token eg.. from {... to }
+ * @param start {String} token name or data (eg. '{'
+ * @param stop {String} (Optional) token name or data (eg. '}'
+ */
+
+
+ //public Gee.ArrayList<Token> balanceStr (string start) throws TokenStreamError
+ //{
+ // return this.balance( Lang.punc(start));
+ //}
+
+
+ public Gee.ArrayList<Token> balance (TokenName in_start) throws TokenStreamError
+ {
+
+ // fixme -- validate start...
+
+ // accepts names or "{" etc..
+
+ var start = in_start;
+ var stop = Lang.matching(start); /// validates start..
+ if (stop == null) {
+ throw new TokenStreamError.ArgumentError("balance called with invalid start/stop : %s",start.to_string());
+ }
+
+ //print("START=%s, STOP=%s \n", start.to_string(),stop.to_string());
+ var depth = 0;
+ var got = new Gee.ArrayList<Token>();
+ var started = false;
+ //Seed.print("START:" + start);
+ //Seed.print("STOP:" + stop);
+ Token token;
+
+ while (null != (token = this.lookAny(1))) {
+ //print("BALANCE: %d d=%d, %s \n" , this.cursor, depth, token.asString());
+ if (token.isName(start)) {
+ // Seed.print("balance: START : " + depth + " " + token.data);
+ depth++;
+ started = true;
+ }
+
+ if (started) {
+ got.add(token);
+ }
+
+ if (token.isName(stop)) {
+ depth--;
+
+ //debug("balance (%d): STOP: %s" , depth , token.data);
+ if (depth < 1) {
+ this.next(); // shift cursor to eat closer...
+ //debug("returning got %d", got.size);
+ return got;
+ }
+
+ }
+ if (null == this.next()) {
+ break;
+ }
+ }
+ return new Gee.ArrayList<Token>();
+ }
+ // designed to get either end or start..
+
+
+ public Token? getMatchingTokenEnd(TokenName end)
+ {
+ return this.getMatchingToken(Lang.matching(end), 1);
+ }
+
+ public Token? getMatchingToken(TokenName start, int depth = 0)
+ {
+
+ var cursor = this.cursor;
+
+
+ var stop= Lang.matching(start);
+ Token token;
+
+ while (null != (token = this.tokens[cursor])) {
+ if (token.isName(start)) {
+ depth++;
+ }
+
+ if (token.isName(stop) && cursor != 0) {
+ depth--;
+ if (depth == 0) {
+ return this.tokens[cursor];
+ }
+ }
+ cursor++;
+ }
+ return null;
+ }
+ /*
+ public Gee.ArrayList<Token> insertAhead(Token token)
+ {
+ this.tokens.splice(this.cursor+1, 0, token); // fixme...
+ }
+ */
+
+ public Gee.ArrayList<Token> remaining() {
+ var ret = new Gee.ArrayList<Token>();
+ while (true) {
+ var tok = this.look(1,true);
+ if (tok.isType(TokenType.VOID)) {
+ return ret;
+ }
+ var nt = this.next();
+ if (nt != null) {
+ ret.add(nt);
+ }
+ }
+ }
+
+
+ public void printRange(int start, int end) {
+
+ for(var i = start; i < end +1; i++) {
+ print(this.tokens.get(i).asString());
+ }
+ }
+
+ /*
+ arrayToString : function(ar) {
+ console.log(typeof(ar));
+ var ret = [];
+ ar.forEach(function(e) {
+ ret.push(e.data);
+ })
+ return ret.join('');
+ },
+ */
+ public void dump(int start, int end)
+ {
+ start = int.max(start , 0);
+ end = int.min(end, this.tokens.size);
+ var outs = "";;
+ for (var i =start;i < end; i++) {
+
+ outs += (this.tokens[i].outData == "") ? this.tokens[i].data : this.tokens[i].outData;
+ }
+ print(outs);
+ }
+
+ public void dumpAll(string indent)
+ {
+ for (var i = 0;i < this.tokens.size; i++) {
+
+ this.tokens[i].dump("");
+ }
+
+ }
+ public void dumpAllFlat()
+ {
+ for (var i = 0;i < this.tokens.size; i++) {
+
+ print("%d: %s\n", i, this.tokens[i].asString());
+ }
+
+ }
+
+ }
+}
+
--- /dev/null
+// this walks through the code, and tries to find patterns that match documentable elements..
+
+
+namespace JSDOC {
+
+ enum WalkerMode {
+ BUILDING_SYMBOL_TREE,
+ XXX
+ }
+
+ public class Walker : Object
+ {
+ TokenStream ts;
+ Gee.ArrayList<string> warnings;
+ Gee.ArrayList<Scope> scopes;
+ Gee.HashMap<int,Scope> indexedScopes;
+ Gee.HashMap<string,Symbol> symbols;
+ Gee.HashMap<string,string> aliases;
+ Scope globalScope;
+
+ bool global = false;
+ WalkerMode mode = WalkerMode.XXX; //"BUILDING_SYMBOL_TREE",
+ int braceNesting = 0;
+
+ DocComment? currentDoc = null;
+
+ bool munge = true;
+
+ public Walker(TokenStream ts)
+ {
+ this.ts = ts;
+ this.warnings= new Gee.ArrayList<string>();
+ this.scopes = new Gee.ArrayList<Scope>();
+ this.indexedScopes = new Gee.HashMap<int,Scope>();
+ this.symbols = new Gee.HashMap<string,Symbol>();
+ this.aliases = new Gee.HashMap<string,string>();
+ this.braceNesting = 0;
+ }
+
+ //warn: function(s) {
+ //this.warnings.push(s);
+ // print("WARNING:" + htmlescape(s) + "<BR>");
+ //},
+ // defaults should not be initialized here =- otherwise they get duped on new, rather than initalized..
+
+
+
+
+
+
+ public void buildSymbolTree()
+ {
+ //print("<PRE>");
+
+ this.ts.rewind();
+ this.braceNesting = 0;
+ this.scopes = new Gee.ArrayList<Scope>();;
+ this.aliases = new Gee.HashMap<string,string>();
+
+ this.globalScope = new Scope(-1, null, -1, "$global$", null);
+ this.indexedScopes = new Gee.HashMap<int,Scope>();
+ this.indexedScopes.set( 0, this.globalScope );
+
+ this.mode = WalkerMode.BUILDING_SYMBOL_TREE;
+ this.parseScope(this.globalScope,this.emptyAlias());
+
+ }
+ Gee.HashMap<string,string> emptyAlias()
+ {
+ return new Gee.HashMap<string,string> ();
+ }
+
+
+
+ string fixAlias (Gee.HashMap<string,string>aliases, string str, bool nomore = false)
+ {
+ var ar = str.split(".");
+ var m = ar[0];
+
+ //print(str +"?=" +aliases.toSource());
+ if (!aliases.has_key(m)) {
+ return str;
+ }
+ ar[0] = aliases.get(m);
+
+ var ret = string.joinv(".", ar);
+ if (nomore != true) {
+ ret = this.fixAlias(aliases, ret, true);
+ }
+
+
+ return ret;
+ }
+
+
+
+ void parseScope (Scope in_scope, Gee.HashMap<string,string> ealiases) // parse a token stream..
+ {
+ //this.timerPrint("parseScope EnterScope");
+
+ var scope = in_scope;
+
+ var aliases = new Gee.HashMap<string,string>();
+
+ foreach(var i in ealiases.keys) {
+ aliases.set(i, ealiases.get(i));
+ }
+
+ //print("STARTING SCOPE WITH: " + ealiases.toSource());
+
+ var expressionBraceNesting = this.braceNesting;
+ var bracketNesting = 0;
+ var parensNesting = 0;
+
+
+ var l1 = "", l2 = "";
+ var scopeName = "";
+
+
+ var locBraceNest = 0;
+ // determines if we are in object literals...
+
+ var isObjectLitAr = new Gee.ArrayList<bool>();
+ isObjectLitAr.add(false);
+ //print("SCOPE: ------------------START ----------------");
+
+ this.scopesIn(scope);
+ var scopeLen = this.scopes.size;
+
+ if (this.ts.cursor < 1) {
+ // this.ts.cursor--; // hopeflly this kludge will work
+ }
+
+
+ //print(JSON.stringify(this.ts, null, 4)); Seed.quit();
+ Token token;
+ while (null != ( token = this.ts.next())) {
+ //GLib.debug("TOK %s", token.asString());
+ // this.timerPrint("parseScope AFTER lookT: " + token.toString());
+
+ if (token.isType(TokenType.COMM)) {
+
+
+ if (!token.isName(TokenName.JSDOC)) {
+ //print("Walker2 : spce is not JSDOC");
+ continue; //skip.
+ }
+ if (this.currentDoc != null) {
+ // add it to the current scope????
+
+ this.addSymbol("", true);
+ //print ( "Unconsumed Doc: " + token.toString())
+ //throw "Unconsumed Doc (TOKwhitespace): " + this.currentDoc.toSource();
+ }
+
+ // print ( "NEW COMMENT: " + token.toString())
+ var newDoc = new DocComment(token.data);
+
+ // it"s a scope changer..
+
+ if (newDoc.getTag(DocTagTitle.SCOPE).size > 0) {
+ //print("Walker2 : doctag changes scope");
+ //throw "done";
+ scope.ident = "$private$|" + newDoc.getTag(DocTagTitle.SCOPE).get(0).desc;
+ continue;
+ }
+
+ // it"s a scope changer..
+ if (newDoc.getTag(DocTagTitle.SCOPEALIAS).size > 0) {
+ //print(newDoc.getTag("scopeAlias").toSource());
+ // @scopeAlias a=b
+ //print("Walker2 : doctag changes scope (alias)");
+ var sal = newDoc.getTag(DocTagTitle.SCOPEALIAS).get(0).desc.split("=");
+ aliases[sal[0].strip()] = sal[1].strip();
+
+ continue;
+ }
+
+
+ /// got a doc comment..
+ //token.data might be this.??? (not sure though)
+ //print("Walker2 : setting currentDoc");
+ this.currentDoc = newDoc;
+ continue;
+ }
+
+ // catch the various issues .. - scoe changes or doc actions..
+
+
+
+ // things that stop comments carrying on...??
+
+ if (this.currentDoc != null && (
+ token.data == ";" ||
+ token.data == "}")) {
+ this.addSymbol("", true);
+ //throw "Unconsumed Doc ("+ token.toString() +"): " + this.currentDoc.toSource();
+ }
+
+
+ // the rest are scoping issues...
+
+ // var a = b;
+
+ if (token.isName(TokenName.VAR) &&
+
+ this.ts.lookTok(1).isType(TokenType.NAME) &&
+ this.ts.lookTok(2).data == "=" &&
+ this.ts.lookTok(3).isType(TokenType.NAME) &&
+ this.ts.lookTok(4).data == ";"
+
+
+ ) {
+ //print("SET ALIAS:" + this.ts.lookTok(1).data +"=" + this.ts.lookTok(3).data);
+
+ aliases.set(this.ts.lookTok(1).data, this.ts.lookTok(3).data);
+
+ }
+
+ if ((token.data == "eval") || /\.eval$/.match(token.data)) {
+ this.currentDoc = null;
+ continue;
+ }
+
+ // extends scoping *** not sure if the can be x = Roo.apply(....)
+ // xxx.extends(a,b, {
+ // $this$=b|b.prototype
+ // xxx.apply(a, {
+ // a << scope
+ // xxx.applyIf(a, {
+ // a << scope
+ if (token.isType(TokenType.NAME) ) {
+
+ //print("TOK(ident)"+ token.toString());
+
+ if (/\.extend$/.match(token.data) &&
+ this.ts.lookTok(1).data == "(" &&
+ this.ts.lookTok(2).isType(TokenType.NAME) &&
+ this.ts.lookTok(3).data == "," &&
+ this.ts.lookTok(4).isType(TokenType.NAME) &&
+ this.ts.lookTok(5).data == "," &&
+ this.ts.lookTok(6).data == "{"
+
+ ) {
+ // ignore test for ( a and ,
+ this.ts.nextTok(); /// (
+ token = this.ts.nextTok(); // a
+ scopeName = token.data;
+
+ if (this.currentDoc != null) {
+ this.addSymbol(scopeName,false,"OBJECT");
+
+ }
+ this.ts.nextTok(); // ,
+ this.ts.nextTok(); // b
+
+
+ this.ts.nextTok(); // ,
+ token = this.ts.nextTok(); // {
+
+ scopeName = this.fixAlias(aliases, scopeName);
+
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "$this$=" + scopeName + "|"+scopeName+".prototype", null
+ );
+
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ this.scopesIn(fnScope);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+ }
+
+ // a = Roo.extend(parentname, {
+
+ if (/\.extend$/.match(token.data) &&
+ this.ts.lookTok(-2).isType(TokenType.NAME) &&
+ this.ts.lookTok(-1).data == "=" &&
+ this.ts.lookTok(1).data == "(" &&
+ this.ts.lookTok(2).isType(TokenType.NAME) &&
+ this.ts.lookTok(3).data == "," &&
+ this.ts.lookTok(4).data == "{"
+ ) {
+ // ignore test for ( a and ,
+ token = this.ts.lookTok(-2);
+ scopeName = token.data;
+ if (this.currentDoc != null) {
+ this.addSymbol(scopeName,false,"OBJECT");
+
+ }
+ this.ts.nextTok(); /// (
+ this.ts.nextTok(); // parent
+
+ this.ts.nextTok(); // ,
+ token = this.ts.nextTok(); // {
+
+
+ scopeName = this.fixAlias(aliases,scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "$this$=" + scopeName + "|"+scopeName+".prototype",
+ null
+ );
+
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ this.scopesIn(fnScope);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+ }
+
+
+ // apply ( XXXX, {
+ /*
+ print(JSON.stringify([
+ token.data,
+ this.ts.lookTok(1).data ,
+ this.ts.lookTok(2).type ,
+ this.ts.lookTok(3).data ,
+ this.ts.lookTok(4).data
+ ], null, 4));
+ */
+
+ if (/\.(applyIf|apply)$/.match(token.data) &&
+ this.ts.lookTok(1).data == "(" &&
+ this.ts.lookTok(2).isType(TokenType.NAME) &&
+ this.ts.lookTok(3).data == "," &&
+ this.ts.lookTok(4).data == "{"
+
+ ) {
+ this.ts.nextTok(); /// (
+
+ //print("GOT : applyIF!");
+
+ token = this.ts.nextTok(); // b
+ scopeName = token.data;
+
+
+ if (this.currentDoc != null) {
+ this.addSymbol(scopeName,false,"OBJECT");
+ }
+
+
+
+ this.ts.nextTok(); /// ,
+ this.ts.nextTok(); // {
+ scopeName = this.fixAlias(aliases,scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ scopeName, null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ this.scopesIn(fnScope);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+ }
+
+
+ // xxx = new yyy ( {
+
+ // change scope to xxxx
+ /*
+ print(JSON.stringify([
+ this.ts.lookTok(1).data ,
+ this.ts.lookTok(2).name ,
+ this.ts.lookTok(3).type ,
+ this.ts.lookTok(4).data ,
+ this.ts.lookTok(5).data
+ ], null, 4));
+ */
+ if ( this.ts.lookTok(1).data == "=" &&
+ this.ts.lookTok(2).isName(TokenName.NEW) &&
+ this.ts.lookTok(3).isType(TokenType.NAME)&&
+ this.ts.lookTok(4).data == "(" &&
+ this.ts.lookTok(5).data == "{"
+ ) {
+ scopeName = token.data;
+ if (this.currentDoc != null) {
+ this.addSymbol(scopeName,false,"OBJECT");
+
+ }
+
+ this.ts.nextTok(); /// =
+ this.ts.nextTok(); /// new
+ this.ts.nextTok(); /// yyy
+ this.ts.nextTok(); /// (
+ this.ts.nextTok(); /// {
+
+ scopeName = this.fixAlias(aliases,scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ scopeName,null
+ );
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ this.scopesIn(fnScope);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+
+ continue; // no more processing..
+ }
+
+
+
+
+
+
+
+ // eval can be prefixed with a hint hider for the compresser..
+
+
+ if (this.currentDoc != null) {
+ //print(token.toString());
+
+ // ident : function ()
+ // ident = function ()
+ var atype = "OBJECT";
+
+ if (((this.ts.lookTok(1).data == ":" )|| (this.ts.lookTok(1).data == "=")) &&
+ (this.ts.lookTok(2).isName(TokenName.FUNCTION))
+ ) {
+ // this.ts.nextTok();
+ // this.ts.nextTok();
+ atype = "FUNCTION";
+ }
+
+ //print("ADD SYM:" + atype + ":" + token.toString() + this.ts.lookTok(1).toString() + this.ts.lookTok(2).toString());
+
+ this.addSymbol(
+ this.ts.lookTok(-1).data == "." ? token.data : this.fixAlias(aliases,token.data),
+ false,
+ atype);
+
+
+ this.currentDoc = null;
+
+
+
+
+
+
+ }
+
+
+ continue; // dont care about other idents..
+
+ }
+
+ //print ("NOT NAME");
+
+
+ if (token.isType(TokenType.STRN)) { // THIS WILL NOT HAPPEN HERE?!!?
+ if (this.currentDoc != null) {
+ this.addSymbol(token.data.substring(1,token.data.length-1),false,"OBJECT");
+ }
+ }
+
+ // really we only have to deal with object constructs and function calls that change the scope...
+
+
+ if (token.isName(TokenName.FUNCTION)) {
+ //print("GOT FUNCTION");
+ // see if we have an unconsumed doc...
+
+ if (this.currentDoc != null) {
+ GLib.error("Unhandled doc (TOKfunction) %s", token.asString());
+ }
+
+
+
+
+
+ /// foo = function() {} << really it set"s the "this" scope to foo.prototype
+ //$this$=foo.prototype|$private$|foo.prototype
+
+ if (
+ (this.ts.lookTok(-1).data == "=") &&
+ (this.ts.lookTok(-2).isType(TokenType.NAME))
+ ) {
+ scopeName = this.ts.lookTok(-2).data;
+ this.ts.balance(TokenName.LEFT_PAREN);
+ token = this.ts.nextTok(); // should be {
+ //print("FOO=FUNCITON() {}" + this.ts.context() + "\n" + token.toString());
+
+
+ scopeName = this.fixAlias(aliases, scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "$this$="+scopeName+".prototype|$private$|"+scopeName+".prototype",
+ null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ //scope = fnScope;
+ //this.scopesIn(fnScope);
+ this.parseScope(fnScope, aliases);
+
+
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+
+ }
+
+
+ // foo = new function() {}
+ // is this actually used much!?!?!
+ //$private$
+
+ if (
+ (this.ts.lookTok(-1).isName(TokenName.NEW)) &&
+ (this.ts.lookTok(-2).data == "=") &&
+ (this.ts.lookTok(-3).isName(TokenName.FUNCTION))
+ ) {
+ //scopeName = this.ts.look(-3).data;
+ this.ts.balance(TokenName.LEFT_PAREN);
+ token = this.ts.nextTok(); // should be {
+ scopeName = this.fixAlias(aliases, scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "$private$",null
+ );
+
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ //scope = fnScope;
+ //this.scopesIn(fnScope);
+ this.parseScope(fnScope, aliases);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+
+ }
+
+
+ ///==== check/set isObjectLitAr ??
+
+
+ // foo: function() {}
+ // no change to scoping..
+
+ //print("checking for : function() {");
+ //print( [this.ts.lookTok(-3).type , this.ts.lookTok(-2).type , this.ts.lookTok(-1).type ].join(":"));
+ if (
+ (this.ts.lookTok(-1).data == ":") &&
+ (this.ts.lookTok(-2).isType(TokenType.NAME)) &&
+ (this.ts.lookTok(-3).data == "(" || this.ts.lookTok(-3).data== ",")
+ ) {
+ //print("got for : function() {");
+
+ //scopeName = this.ts.look(-3).data;
+ this.ts.balance(TokenName.LEFT_PAREN);
+ //print(token.toString())
+ token = this.ts.nextTok(); // should be {
+ //print(token.toString())
+
+ scopeName = this.fixAlias(aliases, scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "", null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ //scope = fnScope;
+ //this.scopesIn(fnScope);
+ this.parseScope(fnScope, aliases);
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+ }
+ /// function foo() {} << really it set"s the "this" scope to foo.prototype
+ //$this$=foo|$private$
+ //$this$=foo
+
+ if (
+ (this.ts.lookTok(1).isType(TokenType.NAME))
+ ) {
+ //scopeName = this.ts.look(-3).data;
+ this.ts.balance(TokenName.LEFT_PAREN);
+ token = this.ts.nextTok(); // should be {
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "", null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ //scope = fnScope;
+ //this.scopesIn(fnScope);
+ this.parseScope(fnScope, aliases);
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+ }
+
+
+ // foo = new (function() { }
+ // (function() { }
+ // RETURN function(...) {
+
+ if (
+ // (this.ts.lookTok(-1).tokN == Script.TOKlparen) &&
+ (!this.ts.lookTok(1).isType(TokenType.NAME))
+
+ // (this.ts.lookTok(-2).tokN == Script.TOKnew) &&
+ // (this.ts.lookTok(-3).tokN == Script.TOKassign) &&
+ // (this.ts.lookTok(-4).tokN == Script.TOKidentifier)
+ ) {
+ //scopeName = this.ts.look(-3).data;
+ this.ts.balance(TokenName.LEFT_PAREN);
+ token = this.ts.nextTok(); // should be {
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "$private$",null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ //scope = ;
+ //this.scopesIn(fnScope);
+ this.parseScope(fnScope, aliases);
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+
+
+ }
+
+ GLib.error( "dont know how to handle function syntax??\n %s" +
+ token.asString());
+
+
+
+ continue;
+
+
+
+
+ } // end checking for TOKfunction
+
+ if (token.data == "{") {
+
+ // foo = { // !var!!!
+ //$this$=foo|Foo
+
+
+ if (
+ (this.ts.lookTok(-1).data == "=") &&
+ (this.ts.lookTok(-2).isType(TokenType.NAME)) &&
+ (!this.ts.lookTok(-3).isName(TokenName.VAR))
+ ) {
+
+ scopeName = this.ts.lookTok(-2).data;
+ //print(scopeName);
+ scopeName = this.fixAlias(aliases, scopeName);
+ GLib.debug("got %s = {", scopeName);
+
+ //print(this.scopes.length);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "$this$=" + scopeName +"|"+scopeName, null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ // push the same scope onto the stack..
+ this.scopesIn(fnScope);
+ //this.scopesIn(this.scopes[this.scopes.length-1]);
+
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+ }
+ // foo : {
+ // ?? add |foo| ????
+
+ //print("GOT LBRACE : check for :");
+ if (
+ (this.ts.lookTok(-1).data == ":") &&
+ (this.ts.lookTok(-2).isType(TokenType.NAME)) &&
+ (!this.ts.lookTok(-3).isName(TokenName.VAR))
+ ) {
+
+ scopeName = this.ts.lookTok(-2).data;
+ scopeName = this.fixAlias(aliases, scopeName);
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ scopeName, null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ this.scopesIn(fnScope);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue; // no more processing..
+ }
+ var fnScope = new Scope(this.braceNesting, scope, token.id, // was token.n?
+ "", null
+ );
+
+ this.indexedScopes.set(this.ts.cursor, fnScope);
+ scope = fnScope;
+ this.scopesIn(fnScope);
+
+ locBraceNest++;
+ //print(">>" +locBraceNest);
+ continue;
+
+ }
+ if (token.data == "}") {
+
+
+ if (this.currentDoc != null) {
+ this.addSymbol("", true);
+
+ //throw "Unconsumed Doc: (TOKrbrace)" + this.currentDoc.toSource();
+ }
+
+
+ locBraceNest--;
+
+ //assert braceNesting >= scope.getBraceNesting();
+ var closescope = this.scopeOut();
+
+ scope = this.scopes.get(this.scopes.size-1);
+
+ //print("<<:" + locBraceNest)
+ //print("<<<<<< " + locBraceNest );
+ if (locBraceNest < 0) {
+ // print("POPED OF END OF SCOPE!");
+ ///this.scopeOut();
+ //var ls = this.scopeOut();
+ //ls.getUsedSymbols();
+ return;
+ }
+ continue;
+ }
+
+
+ }
+
+
+ }
+
+
+ void addSymbol(string in_lastIdent, bool appendIt = false, string atype = "OBJECT")
+ {
+
+ GLib.debug("addSymbol %s", in_lastIdent);
+ var lastIdent = in_lastIdent;
+ if (this.currentDoc.getTag(DocTagTitle.PRIVATE).size > 0) {
+
+
+ //print(this.currentDoc.toSource());
+ this.currentDoc = null;
+ //print("SKIP ADD SYM: it"s private");
+ return;
+ }
+
+ var token = this.ts.lookTok(0);
+
+ // print(this.currentDoc.toSource(););
+ if (this.currentDoc.getTag(DocTagTitle.EVENT).size > 0) {
+ //?? why does it end up in desc - and not name/...
+ //print(this.currentDoc.getTag("event")[0]);
+ lastIdent = "*" + this.currentDoc.getTag(DocTagTitle.EVENT).get(0).desc;
+ //lastIdent = "*" + lastIdent ;
+ }
+ if (lastIdent.length < 1 && this.currentDoc.getTag(DocTagTitle.PROPERTY).size > 0) {
+ lastIdent = this.currentDoc.getTag(DocTagTitle.PROPERTY).get(0).name;
+ //lastIdent = "*" + lastIdent ;
+ }
+
+ var _s = lastIdent;
+ if (!/\./.match(_s)) {
+
+ //print("WALKER ADDsymbol: " + lastIdent);
+
+ string[] s = {};
+ GLib.debug("Checking Scopes %d", this.scopes.size);
+ for (var i = 0; i < this.scopes.size;i++) {
+ GLib.debug("Scope %s", this.scopes.get(i).ident);
+ var adds = this.scopes.get(i).ident;
+
+ s = s + adds;
+ }
+ s += lastIdent;
+
+ GLib.debug("FULLSCOPE: '%s'" , string.joinv("', '", s));
+
+
+ s = string.joinv("|", s).split("|");
+ //print("FULLSCOPE: " + s);
+ // print("Walker:ADDSymbol: " + s.join("|") );
+ var _t = "";
+ _s = "";
+
+ /// fixme - needs
+ for (var i = 0; i < s.length;i++) {
+
+ if (s[i].length < 1) {
+ continue;
+ }
+ if ((s[i] == "$private$") || (s[i] == "$global$")) {
+ _s = "";
+ continue;
+ }
+ if (s[i].length > 5 && s[i].substring(0,6) == "$this$") {
+ var ts = s[i].split("=");
+ _t = ts[1];
+ _s = ""; // ??? VERY QUESTIONABLE!!!
+ continue;
+ }
+ // when to use $this$ (probabl for events)
+ _s += _s.length > 0 ? "." : "";
+ _s += s[i];
+ }
+ GLib.debug("FULLSCOPE: _s=%s (append = %s)" , _s, appendIt? "YES": "no");
+
+ /// calc scope!!
+ //print("ADDING SYMBOL: "+ s.join("|") +"\n"+ _s + "\n" +Script.prettyDump(this.currentDoc.toSource()));
+ //print("Walker.addsymbol - add : " + _s);
+
+
+ if (appendIt && lastIdent.length < 1) {
+
+ // append, and no symbol???
+
+ // see if it"s a @class
+ if (this.currentDoc.getTag(DocTagTitle.CLASS).size > 0) {
+ _s = this.currentDoc.getTag(DocTagTitle.CLASS).get(0).desc;
+ var symbol = new Symbol.new_populate_with_args(_s, new Gee.ArrayList<string>(),
+ "CONSTRUCTOR", this.currentDoc);
+
+ DocParser.addSymbol(symbol);
+ this.symbols[_s] = symbol;
+ return;
+ }
+
+ // if (this.currentDoc.getTag("property").length) {
+ // print(Script.pretStringtyDump(this.currentDoc.toSource));
+ // throw "Add Prop?";
+ //}
+
+ _s = /\.prototype.*$/.replace(_s, _s.length,0, "");
+
+ if (!this.symbols.has_key(_s)) {
+ //print("Symbol:" + _s);
+ //print(this.currentDoc.src);
+
+ //throw {
+ // name: "ArgumentError",
+ // message: "Trying to append symbol "" + _s + "", but no doc available\n" +
+ // this.ts.lookTok(0).toString()
+ //};
+ this.currentDoc = null;
+ return;
+
+ }
+ GLib.debug("add to symbol _s=%s " , _s);
+ for (var i =0; i < this.currentDoc.tags.size;i++) {
+ this.symbols.get(_s).addDocTag(this.currentDoc.tags.get(i));
+ }
+ this.currentDoc = null;
+ return;
+ }
+ }
+ //print("Walker.addsymbol - chkdup: " + _s);
+ if (this.symbols.has_key(_s)) {
+
+ if (this.symbols.get(_s).comment.hasTags) {
+ // then existing comment doesnt has tags
+ //throw {
+ // name: "ArgumentError",
+ // message:"DUPLICATE Symbol " + _s + "\n" + token.toString()
+ //};
+ return;
+ }
+ // otherwise existing comment has tags - overwrite..
+
+
+ }
+ //print("Walker.addsymbol - ATYPE: " + _s);
+
+
+
+
+ //print("Walker.addsymbol - add : ");
+ var symbol = new Symbol.new_populate_with_args(
+ _s, new Gee.ArrayList<string>(), atype, this.currentDoc);
+
+ DocParser.addSymbol(symbol);
+ this.symbols[_s] = symbol;
+
+ this.currentDoc = null;
+
+ }
+
+
+
+
+ void scopesIn (Scope s)
+ {
+ this.scopes.add(s);
+ //print(">>>" + this.ts.context() + "\n>>>"+this.scopes.length+":" +this.scopeListToStr());
+
+ }
+ Scope scopeOut()
+ {
+
+ // print("<<<" + this.ts.context() + "\n<<<"+this.scopes.length+":" +this.scopeListToStr());
+ return this.scopes.remove_at(this.scopes.size -1 );
+
+ }
+
+ string scopeListToStr ()
+ {
+ string[] s = {};
+ for (var i = 0; i < this.scopes.size;i++) {
+ s +=(this.scopes[i].ident);
+ }
+ return string.joinv("\n\t",s);
+
+ }
+
+ }
+
+
+}
\ No newline at end of file
--- /dev/null
+# Install script for directory: /home/alan/gitlive/roojspacker/jsdoc
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ if(BUILD_TYPE)
+ string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ else()
+ set(CMAKE_INSTALL_CONFIG_NAME "Debug")
+ endif()
+ message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+ if(COMPONENT)
+ message(STATUS "Install component: \"${COMPONENT}\"")
+ set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ else()
+ set(CMAKE_INSTALL_COMPONENT)
+ endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+ set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES
+ "/vala/vapi/.vapi")
+ if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+ if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+file(INSTALL DESTINATION "/vala/vapi" TYPE FILE FILES "/home/alan/gitlive/roojspacker/jsdoc/.vapi")
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ foreach(file
+ "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so.1.2"
+ "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so.1.2.0"
+ )
+ if(EXISTS "${file}" AND
+ NOT IS_SYMLINK "${file}")
+ file(RPATH_CHECK
+ FILE "${file}"
+ RPATH "")
+ endif()
+ endforeach()
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES
+ "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so.1.2"
+ "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so.1.2.0"
+ )
+ foreach(file
+ "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so.1.2"
+ "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so.1.2.0"
+ )
+ if(EXISTS "${file}" AND
+ NOT IS_SYMLINK "${file}")
+ if(CMAKE_INSTALL_DO_STRIP)
+ execute_process(COMMAND "/usr/bin/strip" "${file}")
+ endif()
+ endif()
+ endforeach()
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so")
+ file(RPATH_CHECK
+ FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so"
+ RPATH "")
+ endif()
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES "/home/alan/gitlive/roojspacker/jsdoc/libroojspacker-.so")
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so")
+ if(CMAKE_INSTALL_DO_STRIP)
+ execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libroojspacker-.so")
+ endif()
+ endif()
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES
+ "//.h")
+ if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+ if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+file(INSTALL DESTINATION "/" TYPE FILE FILES "/home/alan/gitlive/roojspacker/jsdoc/.h")
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES
+ "/vala/vapi/.vapi")
+ if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+ if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+file(INSTALL DESTINATION "/vala/vapi" TYPE FILE FILES "/home/alan/gitlive/roojspacker/jsdoc/.vapi")
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES
+ "/pkgconfig/.pc")
+ if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+ if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION)
+ message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}")
+ endif()
+file(INSTALL DESTINATION "/pkgconfig" TYPE FILE FILES "/home/alan/gitlive/roojspacker/jsdoc/.pc")
+endif()
+
--- /dev/null
+libroojspacker-1.2.so...
\ No newline at end of file
--- /dev/null
+libroojspacker-1.2.so..
\ No newline at end of file
--- /dev/null
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+datarootdir=@datarootdir@
+datadir=@datadir@
+
+Name: roojspacker
+Description: Javascript packer
+Version: @VERSION@
+Requires: glib-2.0 gobject-2.0 gee-0.8 gio-2.0 gthread-2.0
+Libs: -L${libdir} -lroojspacker-1.2
+Cflags: -I${includedir}/roojspacker
+