From 41e681538c52b0312b9ec617118c13c9fe534c37 Mon Sep 17 00:00:00 2001 From: Timo Schilling Date: Mon, 20 Aug 2012 14:01:49 +0300 Subject: [PATCH 01/28] change travis buildstatus image and link in readme MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit change it from timoschilling/ArangoDB to triAGENS/ArangoDB --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1a1d961281..6ec34ad919 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # ArangoDB -[![Build Status](https://secure.travis-ci.org/timoschilling/ArangoDB.png?branch=master)](http://travis-ci.org/timoschilling/ArangoDB) +[![Build Status](https://secure.travis-ci.org/triAGENS/ArangoDB.png)](http://travis-ci.org/triAGENS/ArangoDB) We recently started a new open source project - a nosql database called AvocadoDB which became ArangoDB in May 2012. ArangoDB is From 8eb85b5c8fe0342500ac1cb4c4d207033f1fa456 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 21 Aug 2012 10:40:21 +0200 Subject: [PATCH 02/28] adjusted README --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 1a1d961281..cd80379f0c 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ # ArangoDB -[![Build Status](https://secure.travis-ci.org/timoschilling/ArangoDB.png?branch=master)](http://travis-ci.org/timoschilling/ArangoDB) +[![Build Status](https://secure.travis-ci.org/triAGENS/ArangoDB.png)](http://travis-ci.org/triAGENS/ArangoDB) We recently started a new open source project - a nosql database called AvocadoDB which became ArangoDB in May 2012. ArangoDB is -currently available as an alpha version. +currently available as a beta version. We want to have a stable version 1 ready soon. A multi server version is planned -for the third quarter of 2012. For details see the roadmap. +for the end of 2012. For details see the roadmap. Key features include: From 6f3159b95129666b1fed11fd0c683e40a854d366 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 21 Aug 2012 10:41:33 +0200 Subject: [PATCH 03/28] adjusted README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6ec34ad919..cd80379f0c 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@ We recently started a new open source project - a nosql database called AvocadoDB which became ArangoDB in May 2012. ArangoDB is -currently available as an alpha version. +currently available as a beta version. We want to have a stable version 1 ready soon. A multi server version is planned -for the third quarter of 2012. For details see the roadmap. +for the end of 2012. For details see the roadmap. Key features include: From ff973f399c2398eb616c093dbbf7ab62137af7a1 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 21 Aug 2012 13:04:39 +0200 Subject: [PATCH 04/28] issue #163 --- arangod/VocBase/vocbase.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arangod/VocBase/vocbase.c b/arangod/VocBase/vocbase.c index b4b4bfd114..c6e9c3cac4 100644 --- a/arangod/VocBase/vocbase.c +++ b/arangod/VocBase/vocbase.c @@ -1553,6 +1553,8 @@ int TRI_DropCollectionVocBase (TRI_vocbase_t* vocbase, TRI_vocbase_col_t* collec // ............................................................................. else if (collection->_status == TRI_VOC_COL_STATUS_UNLOADED) { + char* tmpFile; + res = TRI_LoadParameterInfoCollection(collection->_path, &info); if (res != TRI_ERROR_NO_ERROR) { @@ -1560,6 +1562,16 @@ int TRI_DropCollectionVocBase (TRI_vocbase_t* vocbase, TRI_vocbase_col_t* collec return TRI_set_errno(res); } + // remove dangling .json.tmp file if it exists + tmpFile = TRI_Concatenate4String(collection->_path, "/", TRI_COL_PARAMETER_FILE, ".tmp"); + if (tmpFile != NULL) { + if (TRI_ExistsFile(tmpFile)) { + TRI_UnlinkFile(tmpFile); + LOG_WARNING("removing dangling temporary file '%s'", tmpFile); + } + TRI_FreeString(TRI_CORE_MEM_ZONE, tmpFile); + } + if (! info._deleted) { info._deleted = true; From 1126c8fa0671cb523933a0cdcf856f65c68294bb Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 21 Aug 2012 14:19:45 +0200 Subject: [PATCH 05/28] issue #163 --- arangod/VocBase/vocbase.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arangod/VocBase/vocbase.c b/arangod/VocBase/vocbase.c index b4b4bfd114..c6e9c3cac4 100644 --- a/arangod/VocBase/vocbase.c +++ b/arangod/VocBase/vocbase.c @@ -1553,6 +1553,8 @@ int TRI_DropCollectionVocBase (TRI_vocbase_t* vocbase, TRI_vocbase_col_t* collec // ............................................................................. else if (collection->_status == TRI_VOC_COL_STATUS_UNLOADED) { + char* tmpFile; + res = TRI_LoadParameterInfoCollection(collection->_path, &info); if (res != TRI_ERROR_NO_ERROR) { @@ -1560,6 +1562,16 @@ int TRI_DropCollectionVocBase (TRI_vocbase_t* vocbase, TRI_vocbase_col_t* collec return TRI_set_errno(res); } + // remove dangling .json.tmp file if it exists + tmpFile = TRI_Concatenate4String(collection->_path, "/", TRI_COL_PARAMETER_FILE, ".tmp"); + if (tmpFile != NULL) { + if (TRI_ExistsFile(tmpFile)) { + TRI_UnlinkFile(tmpFile); + LOG_WARNING("removing dangling temporary file '%s'", tmpFile); + } + TRI_FreeString(TRI_CORE_MEM_ZONE, tmpFile); + } + if (! info._deleted) { info._deleted = true; From 7bca47e7fa2c0e1f496dae23b3b4e175fb2ccb14 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 21 Aug 2012 14:20:17 +0200 Subject: [PATCH 06/28] updated CHANGELOG --- CHANGELOG | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 4f3c57bf16..57f11af74e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,8 @@ v1.0.0 (2012-08-XX) ------------------- +* fix for issue #163: server cannot create collection because of abandoned files + * fix for issue #157: check for readline and ncurses headers, not only libraries From f94f04675fc43bb2ebcef1fc7b10bccddb98eb74 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Thu, 23 Aug 2012 14:19:52 +0200 Subject: [PATCH 07/28] fixed index documentation --- .../Examples.ArangoDB/api-index-create-geo-latitude-longitude | 2 +- Doxygen/Examples.ArangoDB/api-index-create-geo-location | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-hash-index | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-skiplist | 2 +- .../Examples.ArangoDB/api-index-create-new-unique-constraint | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude index fda16cf8a3..8856a9bac7 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/99886352 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=99886352 { "type" : "geo", "fields" : [ "e", "f" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-location b/Doxygen/Examples.ArangoDB/api-index-create-geo-location index 5b5506950e..961e554ea7 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-location +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-location @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/95560976 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=95560976 { "type" : "geo", "fields" : [ "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index index 3b066d9f9b..d1c8afa036 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/105981200 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=105981200 { "type" : "hash", "unique" : false, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist index aa2e5e8670..c7a125f118 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/109061392 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=109061392 { "type" : "skiplist", "unique" : false, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint index e052214a8f..cb7f3a5061 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/102901008 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=102901008 { "type" : "hash", "unique" : true, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist index 341eadc555..772f86c833 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/112141584 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=112141584 { "type" : "skiplist", "unique" : true, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created From 110b492f2d2fbd25b18107f43874a21324e4b8b6 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Thu, 23 Aug 2012 14:20:30 +0200 Subject: [PATCH 08/28] fixed index documentation --- .../Examples.ArangoDB/api-index-create-geo-latitude-longitude | 2 +- Doxygen/Examples.ArangoDB/api-index-create-geo-location | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-hash-index | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-skiplist | 2 +- .../Examples.ArangoDB/api-index-create-new-unique-constraint | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude index fda16cf8a3..8856a9bac7 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/99886352 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=99886352 { "type" : "geo", "fields" : [ "e", "f" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-location b/Doxygen/Examples.ArangoDB/api-index-create-geo-location index 5b5506950e..961e554ea7 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-location +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-location @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/95560976 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=95560976 { "type" : "geo", "fields" : [ "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index index 3b066d9f9b..d1c8afa036 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/105981200 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=105981200 { "type" : "hash", "unique" : false, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist index aa2e5e8670..c7a125f118 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/109061392 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=109061392 { "type" : "skiplist", "unique" : false, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint index e052214a8f..cb7f3a5061 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/102901008 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=102901008 { "type" : "hash", "unique" : true, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist index 341eadc555..772f86c833 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist @@ -1,4 +1,4 @@ -> curl --data @- -X POST --dump - http://localhost:8529/_api/index/112141584 +> curl --data @- -X POST --dump - http://localhost:8529/_api/index?collection=112141584 { "type" : "skiplist", "unique" : true, "fields" : [ "a", "b" ] } HTTP/1.1 201 Created From 832820e98ff6710b7d62edc701ac5c2e1e85115e Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Thu, 23 Aug 2012 14:44:29 +0200 Subject: [PATCH 09/28] fixed index documentation --- Doxygen/Examples.ArangoDB/api-index-all-indexes | 6 +++--- .../api-index-create-geo-latitude-longitude | 2 +- Doxygen/Examples.ArangoDB/api-index-create-geo-location | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-hash-index | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-skiplist | 2 +- .../api-index-create-new-unique-constraint | 2 +- .../Examples.ArangoDB/api-index-create-new-unique-skiplist | 2 +- Doxygen/Examples.ArangoDB/api-index-primary-index | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Doxygen/Examples.ArangoDB/api-index-all-indexes b/Doxygen/Examples.ArangoDB/api-index-all-indexes index efd0b070c8..325081def0 100644 --- a/Doxygen/Examples.ArangoDB/api-index-all-indexes +++ b/Doxygen/Examples.ArangoDB/api-index-all-indexes @@ -10,17 +10,17 @@ content-type: application/json "fields": [ "_id" ], - "id": "176836793/0", + "id": "115221776/0", "type": "primary" } ], "error": false, "identifiers": { - "176836793/0": { + "115221776/0": { "fields": [ "_id" ], - "id": "176836793/0", + "id": "115221776/0", "type": "primary" } } diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude index 8856a9bac7..eedf5d7c02 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude @@ -10,7 +10,7 @@ content-type: application/json "e", "f" ], - "id": "164647097/165564601", + "id": "99886352/165564601", "type": "geo2", "constraint" : false, "isNewlyCreated": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-location b/Doxygen/Examples.ArangoDB/api-index-create-geo-location index 961e554ea7..7dd2b01980 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-location +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-location @@ -10,7 +10,7 @@ content-type: application/json "fields": [ "b" ], - "id": "161370297/162222265", + "id": "95560976/162222265", "type": "geo1", "constraint" : false, "isNewlyCreated": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index index d1c8afa036..a91034207e 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "169693369/171069625", + "id": "105981200/171069625", "type": "hash", "isNewlyCreated": true, "unique": false, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist index c7a125f118..2a134c1108 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "172249273/173166777", + "id": "109061392/173166777", "type": "skiplist", "isNewlyCreated": true, "unique": false, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint index cb7f3a5061..f2bad5d1fb 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "167137465/168054969", + "id": "102901008/168054969", "type": "hash", "isNewlyCreated": true, "unique": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist index 772f86c833..dc0b27cc0f 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "174805177/175722681", + "id": "112141584/175722681", "type": "skiplist", "isNewlyCreated": true, "unique": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-primary-index b/Doxygen/Examples.ArangoDB/api-index-primary-index index 46b1116dd0..bc6603ce5b 100644 --- a/Doxygen/Examples.ArangoDB/api-index-primary-index +++ b/Doxygen/Examples.ArangoDB/api-index-primary-index @@ -8,7 +8,7 @@ content-type: application/json "fields": [ "_id" ], - "id": "178409657/0", + "id": "117843216/0", "type": "primary", "error": false } From d4e0cbe8af2e090fab3f180a9625d939e3a5eaae Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Thu, 23 Aug 2012 14:44:48 +0200 Subject: [PATCH 10/28] fixed index documentation --- Doxygen/Examples.ArangoDB/api-index-all-indexes | 6 +++--- .../api-index-create-geo-latitude-longitude | 2 +- Doxygen/Examples.ArangoDB/api-index-create-geo-location | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-hash-index | 2 +- Doxygen/Examples.ArangoDB/api-index-create-new-skiplist | 2 +- .../api-index-create-new-unique-constraint | 2 +- .../Examples.ArangoDB/api-index-create-new-unique-skiplist | 2 +- Doxygen/Examples.ArangoDB/api-index-primary-index | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Doxygen/Examples.ArangoDB/api-index-all-indexes b/Doxygen/Examples.ArangoDB/api-index-all-indexes index efd0b070c8..325081def0 100644 --- a/Doxygen/Examples.ArangoDB/api-index-all-indexes +++ b/Doxygen/Examples.ArangoDB/api-index-all-indexes @@ -10,17 +10,17 @@ content-type: application/json "fields": [ "_id" ], - "id": "176836793/0", + "id": "115221776/0", "type": "primary" } ], "error": false, "identifiers": { - "176836793/0": { + "115221776/0": { "fields": [ "_id" ], - "id": "176836793/0", + "id": "115221776/0", "type": "primary" } } diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude index 8856a9bac7..eedf5d7c02 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude @@ -10,7 +10,7 @@ content-type: application/json "e", "f" ], - "id": "164647097/165564601", + "id": "99886352/165564601", "type": "geo2", "constraint" : false, "isNewlyCreated": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-location b/Doxygen/Examples.ArangoDB/api-index-create-geo-location index 961e554ea7..7dd2b01980 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-geo-location +++ b/Doxygen/Examples.ArangoDB/api-index-create-geo-location @@ -10,7 +10,7 @@ content-type: application/json "fields": [ "b" ], - "id": "161370297/162222265", + "id": "95560976/162222265", "type": "geo1", "constraint" : false, "isNewlyCreated": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index index d1c8afa036..a91034207e 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "169693369/171069625", + "id": "105981200/171069625", "type": "hash", "isNewlyCreated": true, "unique": false, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist index c7a125f118..2a134c1108 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "172249273/173166777", + "id": "109061392/173166777", "type": "skiplist", "isNewlyCreated": true, "unique": false, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint index cb7f3a5061..f2bad5d1fb 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "167137465/168054969", + "id": "102901008/168054969", "type": "hash", "isNewlyCreated": true, "unique": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist index 772f86c833..dc0b27cc0f 100644 --- a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist +++ b/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist @@ -10,7 +10,7 @@ content-type: application/json "a", "b" ], - "id": "174805177/175722681", + "id": "112141584/175722681", "type": "skiplist", "isNewlyCreated": true, "unique": true, diff --git a/Doxygen/Examples.ArangoDB/api-index-primary-index b/Doxygen/Examples.ArangoDB/api-index-primary-index index 46b1116dd0..bc6603ce5b 100644 --- a/Doxygen/Examples.ArangoDB/api-index-primary-index +++ b/Doxygen/Examples.ArangoDB/api-index-primary-index @@ -8,7 +8,7 @@ content-type: application/json "fields": [ "_id" ], - "id": "178409657/0", + "id": "117843216/0", "type": "primary", "error": false } From c4153bdb90fb64c158b3a349955e189e42df6992 Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Fri, 24 Aug 2012 10:55:36 +0200 Subject: [PATCH 11/28] added D --- arangod/Documentation/home.dox | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arangod/Documentation/home.dox b/arangod/Documentation/home.dox index 8aab180702..6eba8e03f6 100644 --- a/arangod/Documentation/home.dox +++ b/arangod/Documentation/home.dox @@ -81,6 +81,11 @@ /// /// @subsection HomeCLINQ C\# / LINQ /// +/// @subsection HomeD D +/// +/// @@repeatedly has developed a driver for the programming language D: +/// https://github.com/repeatedly/reed +/// /// @subsection HomeNodeJS Node.JS /// /// There is a Node.JS client from Anders Elo available in a separate project: From 76b6af6d1d3b4ffe8e128e81cdbb7f295805fec2 Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Sun, 26 Aug 2012 12:03:29 +0200 Subject: [PATCH 12/28] replaces API section with link to web-site --- arangod/Documentation/home.dox | 39 +++------------------------------- 1 file changed, 3 insertions(+), 36 deletions(-) diff --git a/arangod/Documentation/home.dox b/arangod/Documentation/home.dox index 6eba8e03f6..83ffcbf00c 100644 --- a/arangod/Documentation/home.dox +++ b/arangod/Documentation/home.dox @@ -79,42 +79,9 @@ /// @section HomeApi API //////////////////////// /// -/// @subsection HomeCLINQ C\# / LINQ -/// -/// @subsection HomeD D -/// -/// @@repeatedly has developed a driver for the programming language D: -/// https://github.com/repeatedly/reed -/// -/// @subsection HomeNodeJS Node.JS -/// -/// There is a Node.JS client from Anders Elo available in a separate project: -/// https://github.com/kaerus/arango-client -/// -/// @subsection HomePerl Perl -/// -/// @@hide_o_55 is currently developing a Perl client. -/// -/// @subsection HomePHP PHP -/// -/// There is a PHP client available in a separate project: -/// https://github.com/triAGENS/ArangoDB-PHP -/// -/// See also Packagist: -/// http://packagist.org/packages/triagens/ArangoDb -/// -/// @subsection HomePython Python -/// -/// There is a Python client available in a separate project: -/// https://github.com/joymax/arango-python -/// -/// @subsection HomeRuby Ruby -/// -/// There is a Ruby client available in a separate project: -/// https://github.com/triAGENS/Ashikawa -/// -/// A discussion group can be found here: -/// https://groups.google.com/forum/#!forum/ashikawa +/// Though arangoDB is yet a young project, a couple of people started +/// to add APIs for different programming languages/frameworks. See +/// http://www.arangodb.org/api /// /// @section HomeStayInContact Stay in Contact ////////////////////////////////////////////// From 00ec11ff2343e46721587b19343cc09728058faf Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 27 Aug 2012 16:01:02 +0200 Subject: [PATCH 13/28] fixed Unicode unescaping issue for certain characters, added test case --- UnitTests/Philadelphia/string-utf8-test.cpp | 39 +++++++++++++++++++++ lib/BasicsC/strings.c | 5 ++- 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/UnitTests/Philadelphia/string-utf8-test.cpp b/UnitTests/Philadelphia/string-utf8-test.cpp index 6c71ff7b4d..53518aa399 100644 --- a/UnitTests/Philadelphia/string-utf8-test.cpp +++ b/UnitTests/Philadelphia/string-utf8-test.cpp @@ -208,6 +208,10 @@ BOOST_AUTO_TEST_CASE (tst_japanse) { result = TEST_STRING("ジャパン は、イギリスのニュー・ウェーヴバンド。デヴィッド・ ... を構築していった。 日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。デヴィッド・シルヴィアンとその弟スティーヴ・ジャンセン、デヴィッドの親友であったミック・カーンを中心に結成。ミック・カーンの兄の結婚式にバンドとして最初のお披露目をした。当初はミック・カーンをリードボーカルとして練習していたが、本番直前になって怖じ気づいたミックがデヴィッド・シルヴィアンに無理矢理頼み込んでボーカルを代わってもらい、以降デヴィッドがリードボーカルとなった。その後高校の同級であったリチャード・バルビエリを誘い、更にオーディションでロブ・ディーンを迎え入れ、デビュー当初のバンドの形態となった。デビュー当初はアイドルとして宣伝されたグループだったが、英国の音楽シーンではほとんど人気が無かった。初期のサウンドは主に黒人音楽やグラムロックをポスト・パンク的に再解釈したものであったが、作品を重ねるごとに耽美的な作風、退廃的な歌詞やシンセサイザーの利用など独自のスタイルを構築していった。日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。"); BOOST_CHECK_EQUAL("\\u30B8\\u30E3\\u30D1\\u30F3 \\u306F\\u3001\\u30A4\\u30AE\\u30EA\\u30B9\\u306E\\u30CB\\u30E5\\u30FC\\u30FB\\u30A6\\u30A7\\u30FC\\u30F4\\u30D0\\u30F3\\u30C9\\u3002\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u30FB ... \\u3092\\u69CB\\u7BC9\\u3057\\u3066\\u3044\\u3063\\u305F\\u3002 \\u65E5\\u672C\\u3067\\u306F\\u521D\\u6765\\u65E5\\u3067\\u3044\\u304D\\u306A\\u308A\\u6B66\\u9053\\u9928\\u3067\\u306E\\u516C\\u6F14\\u3092\\u884C\\u3046\\u306A\\u3069\\u3001\\u7206\\u767A\\u7684\\u306A\\u4EBA\\u6C17\\u3092\\u8A87\\u3063\\u305F\\u304C\\u3001\\u82F1\\u56FD\\u3067\\u306F\\u306A\\u304B\\u306A\\u304B\\u4EBA\\u6C17\\u304C\\u51FA\\u305A\\u3001\\u521D\\u671F\\u306F\\u5178\\u578B\\u7684\\u306A\\u300C\\u30D3\\u30C3\\u30B0\\u30FB\\u30A4\\u30F3\\u30FB\\u30B8\\u30E3\\u30D1\\u30F3\\u300D\\u72B6\\u614B\\u3067\\u3042\\u3063\\u305F\\u3002\\u65E5\\u672C\\u6700\\u5927\\u7D1A\\u306E\\u30DD\\u30FC\\u30BF\\u30EB\\u30B5\\u30A4\\u30C8\\u3002\\u691C\\u7D22\\u3001\\u30AA\\u30FC\\u30AF\\u30B7\\u30E7\\u30F3\\u3001\\u30CB\\u30E5\\u30FC\\u30B9\\u3001\\u30E1\\u30FC\\u30EB\\u3001\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3\\u3001\\u30B7\\u30E7\\u30C3\\u30D4\\u30F3\\u30B0\\u3001\\u306A\\u306980\\u4EE5\\u4E0A\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u5C55\\u958B\\u3002\\u3042\\u306A\\u305F\\u306E\\u751F\\u6D3B\\u3092\\u3088\\u308A\\u8C4A\\u304B\\u306B\\u3059\\u308B\\u300C\\u30E9\\u30A4\\u30D5\\u30FB\\u30A8\\u30F3\\u30B8\\u30F3\\u300D\\u3092\\u76EE\\u6307\\u3057\\u3066\\u3044\\u304D\\u307E\\u3059\\u3002\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u30FB\\u30B7\\u30EB\\u30F4\\u30A3\\u30A2\\u30F3\\u3068\\u305D\\u306E\\u5F1F\\u30B9\\u30C6\\u30A3\\u30FC\\u30F4\\u30FB\\u30B8\\u30E3\\u30F3\\u30BB\\u30F3\\u3001\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u306E\\u89AA\\u53CB\\u3067\\u3042\\u3063\\u305F\\u30DF\\u30C3\\u30AF\\u30FB\\u30AB\\u30FC\\u30F3\\u3092\\u4E2D\\u5FC3\\u306B\\u7D50\\u6210\\u3002\\u30DF\\u30C3\\u30AF\\u30FB\\u30AB\\u30FC\\u30F3\\u306E\\u5144\\u306E\\u7D50\\u5A5A\\u5F0F\\u306B\\u30D0\\u30F3\\u30C9\\u3068\\u3057\\u3066\\u6700\\u521D\\u306E\\u304A\\u62AB\\u9732\\u76EE\\u3092\\u3057\\u305F\\u3002\\u5F53\\u521D\\u306F\\u30DF\\u30C3\\u30AF\\u30FB\\u30AB\\u30FC\\u30F3\\u3092\\u30EA\\u30FC\\u30C9\\u30DC\\u30FC\\u30AB\\u30EB\\u3068\\u3057\\u3066\\u7DF4\\u7FD2\\u3057\\u3066\\u3044\\u305F\\u304C\\u3001\\u672C\\u756A\\u76F4\\u524D\\u306B\\u306A\\u3063\\u3066\\u6016\\u3058\\u6C17\\u3065\\u3044\\u305F\\u30DF\\u30C3\\u30AF\\u304C\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u30FB\\u30B7\\u30EB\\u30F4\\u30A3\\u30A2\\u30F3\\u306B\\u7121\\u7406\\u77E2\\u7406\\u983C\\u307F\\u8FBC\\u3093\\u3067\\u30DC\\u30FC\\u30AB\\u30EB\\u3092\\u4EE3\\u308F\\u3063\\u3066\\u3082\\u3089\\u3044\\u3001\\u4EE5\\u964D\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u304C\\u30EA\\u30FC\\u30C9\\u30DC\\u30FC\\u30AB\\u30EB\\u3068\\u306A\\u3063\\u305F\\u3002\\u305D\\u306E\\u5F8C\\u9AD8\\u6821\\u306E\\u540C\\u7D1A\\u3067\\u3042\\u3063\\u305F\\u30EA\\u30C1\\u30E3\\u30FC\\u30C9\\u30FB\\u30D0\\u30EB\\u30D3\\u30A8\\u30EA\\u3092\\u8A98\\u3044\\u3001\\u66F4\\u306B\\u30AA\\u30FC\\u30C7\\u30A3\\u30B7\\u30E7\\u30F3\\u3067\\u30ED\\u30D6\\u30FB\\u30C7\\u30A3\\u30FC\\u30F3\\u3092\\u8FCE\\u3048\\u5165\\u308C\\u3001\\u30C7\\u30D3\\u30E5\\u30FC\\u5F53\\u521D\\u306E\\u30D0\\u30F3\\u30C9\\u306E\\u5F62\\u614B\\u3068\\u306A\\u3063\\u305F\\u3002\\u30C7\\u30D3\\u30E5\\u30FC\\u5F53\\u521D\\u306F\\u30A2\\u30A4\\u30C9\\u30EB\\u3068\\u3057\\u3066\\u5BA3\\u4F1D\\u3055\\u308C\\u305F\\u30B0\\u30EB\\u30FC\\u30D7\\u3060\\u3063\\u305F\\u304C\\u3001\\u82F1\\u56FD\\u306E\\u97F3\\u697D\\u30B7\\u30FC\\u30F3\\u3067\\u306F\\u307B\\u3068\\u3093\\u3069\\u4EBA\\u6C17\\u304C\\u7121\\u304B\\u3063\\u305F\\u3002\\u521D\\u671F\\u306E\\u30B5\\u30A6\\u30F3\\u30C9\\u306F\\u4E3B\\u306B\\u9ED2\\u4EBA\\u97F3\\u697D\\u3084\\u30B0\\u30E9\\u30E0\\u30ED\\u30C3\\u30AF\\u3092\\u30DD\\u30B9\\u30C8\\u30FB\\u30D1\\u30F3\\u30AF\\u7684\\u306B\\u518D\\u89E3\\u91C8\\u3057\\u305F\\u3082\\u306E\\u3067\\u3042\\u3063\\u305F\\u304C\\u3001\\u4F5C\\u54C1\\u3092\\u91CD\\u306D\\u308B\\u3054\\u3068\\u306B\\u803D\\u7F8E\\u7684\\u306A\\u4F5C\\u98A8\\u3001\\u9000\\u5EC3\\u7684\\u306A\\u6B4C\\u8A5E\\u3084\\u30B7\\u30F3\\u30BB\\u30B5\\u30A4\\u30B6\\u30FC\\u306E\\u5229\\u7528\\u306A\\u3069\\u72EC\\u81EA\\u306E\\u30B9\\u30BF\\u30A4\\u30EB\\u3092\\u69CB\\u7BC9\\u3057\\u3066\\u3044\\u3063\\u305F\\u3002\\u65E5\\u672C\\u3067\\u306F\\u521D\\u6765\\u65E5\\u3067\\u3044\\u304D\\u306A\\u308A\\u6B66\\u9053\\u9928\\u3067\\u306E\\u516C\\u6F14\\u3092\\u884C\\u3046\\u306A\\u3069\\u3001\\u7206\\u767A\\u7684\\u306A\\u4EBA\\u6C17\\u3092\\u8A87\\u3063\\u305F\\u304C\\u3001\\u82F1\\u56FD\\u3067\\u306F\\u306A\\u304B\\u306A\\u304B\\u4EBA\\u6C17\\u304C\\u51FA\\u305A\\u3001\\u521D\\u671F\\u306F\\u5178\\u578B\\u7684\\u306A\\u300C\\u30D3\\u30C3\\u30B0\\u30FB\\u30A4\\u30F3\\u30FB\\u30B8\\u30E3\\u30D1\\u30F3\\u300D\\u72B6\\u614B\\u3067\\u3042\\u3063\\u305F\\u3002", result); BOOST_CHECK_EQUAL((size_t) 4137, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "ジャパン は、イギリスのニュー・ウェーヴバンド。デヴィッド・ ... を構築していった。 日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。デヴィッド・シルヴィアンとその弟スティーヴ・ジャンセン、デヴィッドの親友であったミック・カーンを中心に結成。ミック・カーンの兄の結婚式にバンドとして最初のお披露目をした。当初はミック・カーンをリードボーカルとして練習していたが、本番直前になって怖じ気づいたミックがデヴィッド・シルヴィアンに無理矢理頼み込んでボーカルを代わってもらい、以降デヴィッドがリードボーカルとなった。その後高校の同級であったリチャード・バルビエリを誘い、更にオーディションでロブ・ディーンを迎え入れ、デビュー当初のバンドの形態となった。デビュー当初はアイドルとして宣伝されたグループだったが、英国の音楽シーンではほとんど人気が無かった。初期のサウンドは主に黒人音楽やグラムロックをポスト・パンク的に再解釈したものであったが、作品を重ねるごとに耽美的な作風、退廃的な歌詞やシンセサイザーの利用など独自のスタイルを構築していった。日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -222,6 +226,9 @@ BOOST_AUTO_TEST_CASE (tst_korean) { result = TEST_STRING("코리아닷컴 메일알리미 서비스 중단안내 [안내] 개인정보취급방침 변경 안내 회사소개 | 광고안내 | 제휴안내 | 개인정보취급방침 | 청소년보호정책 | 스팸방지정책 | 사이버고객센터 | 약관안내 | 이메일 무단수집거부 | 서비스 전체보기"); BOOST_CHECK_EQUAL("\\uCF54\\uB9AC\\uC544\\uB2F7\\uCEF4 \\uBA54\\uC77C\\uC54C\\uB9AC\\uBBF8 \\uC11C\\uBE44\\uC2A4 \\uC911\\uB2E8\\uC548\\uB0B4 [\\uC548\\uB0B4] \\uAC1C\\uC778\\uC815\\uBCF4\\uCDE8\\uAE09\\uBC29\\uCE68 \\uBCC0\\uACBD \\uC548\\uB0B4 \\uD68C\\uC0AC\\uC18C\\uAC1C | \\uAD11\\uACE0\\uC548\\uB0B4 | \\uC81C\\uD734\\uC548\\uB0B4 | \\uAC1C\\uC778\\uC815\\uBCF4\\uCDE8\\uAE09\\uBC29\\uCE68 | \\uCCAD\\uC18C\\uB144\\uBCF4\\uD638\\uC815\\uCC45 | \\uC2A4\\uD338\\uBC29\\uC9C0\\uC815\\uCC45 | \\uC0AC\\uC774\\uBC84\\uACE0\\uAC1D\\uC13C\\uD130 | \\uC57D\\uAD00\\uC548\\uB0B4 | \\uC774\\uBA54\\uC77C \\uBB34\\uB2E8\\uC218\\uC9D1\\uAC70\\uBD80 | \\uC11C\\uBE44\\uC2A4 \\uC804\\uCCB4\\uBCF4\\uAE30", result); BOOST_CHECK_EQUAL((size_t) 585, outLength); + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "코리아닷컴 메일알리미 서비스 중단안내 [안내] 개인정보취급방침 변경 안내 회사소개 | 광고안내 | 제휴안내 | 개인정보취급방침 | 청소년보호정책 | 스팸방지정책 | 사이버고객센터 | 약관안내 | 이메일 무단수집거부 | 서비스 전체보기"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -236,6 +243,10 @@ BOOST_AUTO_TEST_CASE (tst_chinese) { result = TEST_STRING("中华网以中国的市场为核心,致力为当地用户提供流动增值服务、网上娱乐及互联网服务。本公司亦推出网上游戏,及透过其门户网站提供包罗万有的网上产品及服务。"); BOOST_CHECK_EQUAL("\\u4E2D\\u534E\\u7F51\\u4EE5\\u4E2D\\u56FD\\u7684\\u5E02\\u573A\\u4E3A\\u6838\\u5FC3\\uFF0C\\u81F4\\u529B\\u4E3A\\u5F53\\u5730\\u7528\\u6237\\u63D0\\u4F9B\\u6D41\\u52A8\\u589E\\u503C\\u670D\\u52A1\\u3001\\u7F51\\u4E0A\\u5A31\\u4E50\\u53CA\\u4E92\\u8054\\u7F51\\u670D\\u52A1\\u3002\\u672C\\u516C\\u53F8\\u4EA6\\u63A8\\u51FA\\u7F51\\u4E0A\\u6E38\\u620F\\uFF0C\\u53CA\\u900F\\u8FC7\\u5176\\u95E8\\u6237\\u7F51\\u7AD9\\u63D0\\u4F9B\\u5305\\u7F57\\u4E07\\u6709\\u7684\\u7F51\\u4E0A\\u4EA7\\u54C1\\u53CA\\u670D\\u52A1\\u3002", result); BOOST_CHECK_EQUAL((size_t) 444, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "中华网以中国的市场为核心,致力为当地用户提供流动增值服务、网上娱乐及互联网服务。本公司亦推出网上游戏,及透过其门户网站提供包罗万有的网上产品及服务。"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -250,6 +261,10 @@ BOOST_AUTO_TEST_CASE (tst_hebrew) { result = TEST_STRING("כפי שסופיה קופולה היטיבה לבטא בסרטה אבודים בטוקיו, בתי מלון יוקרתיים בערים גדולות אמנם מציעים אינספור פינוקים, אבל הם גם עלולים לגרום לנו להרגיש בודדים ואומללים מאי פעם. לעומת זאת, B&B, בתים פרטיים שבהם אפשר לישון ולאכול ארוחת בוקר, הם דרך נהדרת להכיר עיר אירופאית כמו מקומיים ולפגוש אנשים מרתקים מרחבי העולם. לטובת מי שנוסע לממלכה בחודשים הקרובים, הגרדיאן הבריטי קיבץ את עשרת ה-B&B המומלצים ביותר בלונדון. כל שנותר הוא לבחור, ולהזמין מראש"); BOOST_CHECK_EQUAL("\\u05DB\\u05E4\\u05D9 \\u05E9\\u05E1\\u05D5\\u05E4\\u05D9\\u05D4 \\u05E7\\u05D5\\u05E4\\u05D5\\u05DC\\u05D4 \\u05D4\\u05D9\\u05D8\\u05D9\\u05D1\\u05D4 \\u05DC\\u05D1\\u05D8\\u05D0 \\u05D1\\u05E1\\u05E8\\u05D8\\u05D4 \\u05D0\\u05D1\\u05D5\\u05D3\\u05D9\\u05DD \\u05D1\\u05D8\\u05D5\\u05E7\\u05D9\\u05D5, \\u05D1\\u05EA\\u05D9 \\u05DE\\u05DC\\u05D5\\u05DF \\u05D9\\u05D5\\u05E7\\u05E8\\u05EA\\u05D9\\u05D9\\u05DD \\u05D1\\u05E2\\u05E8\\u05D9\\u05DD \\u05D2\\u05D3\\u05D5\\u05DC\\u05D5\\u05EA \\u05D0\\u05DE\\u05E0\\u05DD \\u05DE\\u05E6\\u05D9\\u05E2\\u05D9\\u05DD \\u05D0\\u05D9\\u05E0\\u05E1\\u05E4\\u05D5\\u05E8 \\u05E4\\u05D9\\u05E0\\u05D5\\u05E7\\u05D9\\u05DD, \\u05D0\\u05D1\\u05DC \\u05D4\\u05DD \\u05D2\\u05DD \\u05E2\\u05DC\\u05D5\\u05DC\\u05D9\\u05DD \\u05DC\\u05D2\\u05E8\\u05D5\\u05DD \\u05DC\\u05E0\\u05D5 \\u05DC\\u05D4\\u05E8\\u05D2\\u05D9\\u05E9 \\u05D1\\u05D5\\u05D3\\u05D3\\u05D9\\u05DD \\u05D5\\u05D0\\u05D5\\u05DE\\u05DC\\u05DC\\u05D9\\u05DD \\u05DE\\u05D0\\u05D9 \\u05E4\\u05E2\\u05DD. \\u05DC\\u05E2\\u05D5\\u05DE\\u05EA \\u05D6\\u05D0\\u05EA, B&B, \\u05D1\\u05EA\\u05D9\\u05DD \\u05E4\\u05E8\\u05D8\\u05D9\\u05D9\\u05DD \\u05E9\\u05D1\\u05D4\\u05DD \\u05D0\\u05E4\\u05E9\\u05E8 \\u05DC\\u05D9\\u05E9\\u05D5\\u05DF \\u05D5\\u05DC\\u05D0\\u05DB\\u05D5\\u05DC \\u05D0\\u05E8\\u05D5\\u05D7\\u05EA \\u05D1\\u05D5\\u05E7\\u05E8, \\u05D4\\u05DD \\u05D3\\u05E8\\u05DA \\u05E0\\u05D4\\u05D3\\u05E8\\u05EA \\u05DC\\u05D4\\u05DB\\u05D9\\u05E8 \\u05E2\\u05D9\\u05E8 \\u05D0\\u05D9\\u05E8\\u05D5\\u05E4\\u05D0\\u05D9\\u05EA \\u05DB\\u05DE\\u05D5 \\u05DE\\u05E7\\u05D5\\u05DE\\u05D9\\u05D9\\u05DD \\u05D5\\u05DC\\u05E4\\u05D2\\u05D5\\u05E9 \\u05D0\\u05E0\\u05E9\\u05D9\\u05DD \\u05DE\\u05E8\\u05EA\\u05E7\\u05D9\\u05DD \\u05DE\\u05E8\\u05D7\\u05D1\\u05D9 \\u05D4\\u05E2\\u05D5\\u05DC\\u05DD. \\u05DC\\u05D8\\u05D5\\u05D1\\u05EA \\u05DE\\u05D9 \\u05E9\\u05E0\\u05D5\\u05E1\\u05E2 \\u05DC\\u05DE\\u05DE\\u05DC\\u05DB\\u05D4 \\u05D1\\u05D7\\u05D5\\u05D3\\u05E9\\u05D9\\u05DD \\u05D4\\u05E7\\u05E8\\u05D5\\u05D1\\u05D9\\u05DD, \\u05D4\\u05D2\\u05E8\\u05D3\\u05D9\\u05D0\\u05DF \\u05D4\\u05D1\\u05E8\\u05D9\\u05D8\\u05D9 \\u05E7\\u05D9\\u05D1\\u05E5 \\u05D0\\u05EA \\u05E2\\u05E9\\u05E8\\u05EA \\u05D4-B&B \\u05D4\\u05DE\\u05D5\\u05DE\\u05DC\\u05E6\\u05D9\\u05DD \\u05D1\\u05D9\\u05D5\\u05EA\\u05E8 \\u05D1\\u05DC\\u05D5\\u05E0\\u05D3\\u05D5\\u05DF. \\u05DB\\u05DC \\u05E9\\u05E0\\u05D5\\u05EA\\u05E8 \\u05D4\\u05D5\\u05D0 \\u05DC\\u05D1\\u05D7\\u05D5\\u05E8, \\u05D5\\u05DC\\u05D4\\u05D6\\u05DE\\u05D9\\u05DF \\u05DE\\u05E8\\u05D0\\u05E9", result); BOOST_CHECK_EQUAL((size_t) 2189, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "כפי שסופיה קופולה היטיבה לבטא בסרטה אבודים בטוקיו, בתי מלון יוקרתיים בערים גדולות אמנם מציעים אינספור פינוקים, אבל הם גם עלולים לגרום לנו להרגיש בודדים ואומללים מאי פעם. לעומת זאת, B&B, בתים פרטיים שבהם אפשר לישון ולאכול ארוחת בוקר, הם דרך נהדרת להכיר עיר אירופאית כמו מקומיים ולפגוש אנשים מרתקים מרחבי העולם. לטובת מי שנוסע לממלכה בחודשים הקרובים, הגרדיאן הבריטי קיבץ את עשרת ה-B&B המומלצים ביותר בלונדון. כל שנותר הוא לבחור, ולהזמין מראש"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -264,6 +279,10 @@ BOOST_AUTO_TEST_CASE (tst_arabian) { result = TEST_STRING("بان يأسف لمقتل لاجئين سوريين بتركيا المرزوقي يندد بعنف الأمن التونسي تنديد بقتل الجيش السوري مصورا تلفزيونيا 14 قتيلا وعشرات الجرحى بانفجار بالصومال"); BOOST_CHECK_EQUAL("\\u0628\\u0627\\u0646 \\u064A\\u0623\\u0633\\u0641 \\u0644\\u0645\\u0642\\u062A\\u0644 \\u0644\\u0627\\u062C\\u0626\\u064A\\u0646 \\u0633\\u0648\\u0631\\u064A\\u064A\\u0646 \\u0628\\u062A\\u0631\\u0643\\u064A\\u0627 \\u0627\\u0644\\u0645\\u0631\\u0632\\u0648\\u0642\\u064A \\u064A\\u0646\\u062F\\u062F \\u0628\\u0639\\u0646\\u0641 \\u0627\\u0644\\u0623\\u0645\\u0646 \\u0627\\u0644\\u062A\\u0648\\u0646\\u0633\\u064A \\u062A\\u0646\\u062F\\u064A\\u062F \\u0628\\u0642\\u062A\\u0644 \\u0627\\u0644\\u062C\\u064A\\u0634 \\u0627\\u0644\\u0633\\u0648\\u0631\\u064A \\u0645\\u0635\\u0648\\u0631\\u0627 \\u062A\\u0644\\u0641\\u0632\\u064A\\u0648\\u0646\\u064A\\u0627 14 \\u0642\\u062A\\u064A\\u0644\\u0627 \\u0648\\u0639\\u0634\\u0631\\u0627\\u062A \\u0627\\u0644\\u062C\\u0631\\u062D\\u0649 \\u0628\\u0627\\u0646\\u0641\\u062C\\u0627\\u0631 \\u0628\\u0627\\u0644\\u0635\\u0648\\u0645\\u0627\\u0644", result); BOOST_CHECK_EQUAL((size_t) 768, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "بان يأسف لمقتل لاجئين سوريين بتركيا المرزوقي يندد بعنف الأمن التونسي تنديد بقتل الجيش السوري مصورا تلفزيونيا 14 قتيلا وعشرات الجرحى بانفجار بالصومال"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -278,6 +297,10 @@ BOOST_AUTO_TEST_CASE (tst_russian) { result = TEST_STRING("Голкипер мадридского «Реала» Икер Касильяс призвал своих партнеров сосредоточить все мысли на предстоящем дерби с «Атлетико»"); BOOST_CHECK_EQUAL("\\u0413\\u043E\\u043B\\u043A\\u0438\\u043F\\u0435\\u0440 \\u043C\\u0430\\u0434\\u0440\\u0438\\u0434\\u0441\\u043A\\u043E\\u0433\\u043E \\u00AB\\u0420\\u0435\\u0430\\u043B\\u0430\\u00BB \\u0418\\u043A\\u0435\\u0440 \\u041A\\u0430\\u0441\\u0438\\u043B\\u044C\\u044F\\u0441 \\u043F\\u0440\\u0438\\u0437\\u0432\\u0430\\u043B \\u0441\\u0432\\u043E\\u0438\\u0445 \\u043F\\u0430\\u0440\\u0442\\u043D\\u0435\\u0440\\u043E\\u0432 \\u0441\\u043E\\u0441\\u0440\\u0435\\u0434\\u043E\\u0442\\u043E\\u0447\\u0438\\u0442\\u044C \\u0432\\u0441\\u0435 \\u043C\\u044B\\u0441\\u043B\\u0438 \\u043D\\u0430 \\u043F\\u0440\\u0435\\u0434\\u0441\\u0442\\u043E\\u044F\\u0449\\u0435\\u043C \\u0434\\u0435\\u0440\\u0431\\u0438 \\u0441 \\u00AB\\u0410\\u0442\\u043B\\u0435\\u0442\\u0438\\u043A\\u043E\\u00BB", result); BOOST_CHECK_EQUAL((size_t) 669, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "Голкипер мадридского «Реала» Икер Касильяс призвал своих партнеров сосредоточить все мысли на предстоящем дерби с «Атлетико»"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -292,6 +315,10 @@ BOOST_AUTO_TEST_CASE (tst_klingon) { result = TEST_STRING("   "); BOOST_CHECK_EQUAL("\\uF8D8\\uF8D7\\uF8D9 \\uF8DA\\uF8DD\\uF8D6 \\uF8D5\\uF8D0\\uF8D8\\uF8D8\\uF8D0\\uF8D8 \\uF8D8\\uF8D0\\uF8D5\\uF8D6\\uF8DD\\uF8DA\\uF8D9\\uF8D7\\uF8D8", result); BOOST_CHECK_EQUAL((size_t) 129, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "   "); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -306,6 +333,10 @@ BOOST_AUTO_TEST_CASE (tst_devanagari) { result = TEST_STRING("अ आ इ ई उ ऊ ऋ ॠ ऌ ॡ ए ऐ ओ औ क ख ग घ ङ च छ ज झ ञ ट ठ ड ढ ण त थ द ध न प फ ब भ म य र ल व श ष स ह"); BOOST_CHECK_EQUAL("\\u0905 \\u0906 \\u0907 \\u0908 \\u0909 \\u090A \\u090B \\u0960 \\u090C \\u0961 \\u090F \\u0910 \\u0913 \\u0914 \\u0915 \\u0916 \\u0917 \\u0918 \\u0919 \\u091A \\u091B \\u091C \\u091D \\u091E \\u091F \\u0920 \\u0921 \\u0922 \\u0923 \\u0924 \\u0925 \\u0926 \\u0927 \\u0928 \\u092A \\u092B \\u092C \\u092D \\u092E \\u092F \\u0930 \\u0932 \\u0935 \\u0936 \\u0937 \\u0938 \\u0939", result); BOOST_CHECK_EQUAL((size_t) 328, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "अ आ इ ई उ ऊ ऋ ॠ ऌ ॡ ए ऐ ओ औ क ख ग घ ङ च छ ज झ ञ ट ठ ड ढ ण त थ द ध न प फ ब भ म य र ल व श ष स ह"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -320,6 +351,10 @@ BOOST_AUTO_TEST_CASE (tst_vietnamese) { result = TEST_STRING("tɜt kɐː mɔj ŋɨɜj siŋ za ɗew ɗɨɜk tɨɰ zɔ vɐː ɓiŋ ɗɐŋ vej ɲɜn fɜm vɐː kɨɜn. mɔj kɔn ŋɨɜj ɗeu ɗɨɜk tɐːw huɜ ɓɐːn cɔ li ci vɐː lɨɜŋ tɜm vɐː kɜn fɐːj ɗoj sɨ vɜj ɲɐw cɔŋ tiŋ ɓɐŋ hɨw."); BOOST_CHECK_EQUAL("t\\u025Ct k\\u0250\\u02D0 m\\u0254j \\u014B\\u0268\\u025Cj si\\u014B za \\u0257ew \\u0257\\u0268\\u025Ck t\\u0268\\u0270 z\\u0254 v\\u0250\\u02D0 \\u0253i\\u014B \\u0257\\u0250\\u014B vej \\u0272\\u025Cn f\\u025Cm v\\u0250\\u02D0 k\\u0268\\u025Cn. m\\u0254j k\\u0254n \\u014B\\u0268\\u025Cj \\u0257eu \\u0257\\u0268\\u025Ck t\\u0250\\u02D0w hu\\u025C \\u0253\\u0250\\u02D0n c\\u0254 li ci v\\u0250\\u02D0 l\\u0268\\u025C\\u014B t\\u025Cm v\\u0250\\u02D0 k\\u025Cn f\\u0250\\u02D0j \\u0257oj s\\u0268 v\\u025Cj \\u0272\\u0250w c\\u0254\\u014B ti\\u014B \\u0253\\u0250\\u014B h\\u0268w.", result); BOOST_CHECK_EQUAL((size_t) 516, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "tɜt kɐː mɔj ŋɨɜj siŋ za ɗew ɗɨɜk tɨɰ zɔ vɐː ɓiŋ ɗɐŋ vej ɲɜn fɜm vɐː kɨɜn. mɔj kɔn ŋɨɜj ɗeu ɗɨɜk tɐːw huɜ ɓɐːn cɔ li ci vɐː lɨɜŋ tɜm vɐː kɜn fɐːj ɗoj sɨ vɜj ɲɐw cɔŋ tiŋ ɓɐŋ hɨw."); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -334,6 +369,10 @@ BOOST_AUTO_TEST_CASE (tst_western_european) { result = TEST_STRING("äöüßÄÖÜ€µ"); BOOST_CHECK_EQUAL("\\u00E4\\u00F6\\u00FC\\u00DF\\u00C4\\u00D6\\u00DC\\u20AC\\u00B5", result); BOOST_CHECK_EQUAL((size_t) 54, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "äöüßÄÖÜ€µ"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } diff --git a/lib/BasicsC/strings.c b/lib/BasicsC/strings.c index a314fce307..432cf244ad 100644 --- a/lib/BasicsC/strings.c +++ b/lib/BasicsC/strings.c @@ -250,6 +250,7 @@ static void DecodeUnicodeEscape (char** dst, char const* src) { else if (n <= 0x7FF) { *(*dst)++ = 0xC0 + (n >> 6); *(*dst) = 0x80 + (n & 0x3F); + } else { *(*dst)++ = 0xE0 + (n >> 12); @@ -1229,6 +1230,8 @@ char* TRI_UnescapeUtf8StringZ (TRI_memory_zone_t* zone, char const* in, size_t i *qtr = *ptr; break; } + + continue; } *qtr = *ptr; @@ -1237,7 +1240,7 @@ char* TRI_UnescapeUtf8StringZ (TRI_memory_zone_t* zone, char const* in, size_t i *qtr = '\0'; *outLength = qtr - buffer; - + // we might have wasted some space if the unescaped string is shorter than the // escaped one. this is the case if the string contained escaped characters if (*outLength < (ptr - in)) { From 434f4cf611319c1fce16d1f7b70cd64aba2c2afe Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 27 Aug 2012 16:01:49 +0200 Subject: [PATCH 14/28] fixed Unicode unescaping for certain characters, added test case --- UnitTests/Philadelphia/string-utf8-test.cpp | 39 +++++++++++++++++++++ lib/BasicsC/strings.c | 5 ++- 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/UnitTests/Philadelphia/string-utf8-test.cpp b/UnitTests/Philadelphia/string-utf8-test.cpp index 6c71ff7b4d..53518aa399 100644 --- a/UnitTests/Philadelphia/string-utf8-test.cpp +++ b/UnitTests/Philadelphia/string-utf8-test.cpp @@ -208,6 +208,10 @@ BOOST_AUTO_TEST_CASE (tst_japanse) { result = TEST_STRING("ジャパン は、イギリスのニュー・ウェーヴバンド。デヴィッド・ ... を構築していった。 日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。デヴィッド・シルヴィアンとその弟スティーヴ・ジャンセン、デヴィッドの親友であったミック・カーンを中心に結成。ミック・カーンの兄の結婚式にバンドとして最初のお披露目をした。当初はミック・カーンをリードボーカルとして練習していたが、本番直前になって怖じ気づいたミックがデヴィッド・シルヴィアンに無理矢理頼み込んでボーカルを代わってもらい、以降デヴィッドがリードボーカルとなった。その後高校の同級であったリチャード・バルビエリを誘い、更にオーディションでロブ・ディーンを迎え入れ、デビュー当初のバンドの形態となった。デビュー当初はアイドルとして宣伝されたグループだったが、英国の音楽シーンではほとんど人気が無かった。初期のサウンドは主に黒人音楽やグラムロックをポスト・パンク的に再解釈したものであったが、作品を重ねるごとに耽美的な作風、退廃的な歌詞やシンセサイザーの利用など独自のスタイルを構築していった。日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。"); BOOST_CHECK_EQUAL("\\u30B8\\u30E3\\u30D1\\u30F3 \\u306F\\u3001\\u30A4\\u30AE\\u30EA\\u30B9\\u306E\\u30CB\\u30E5\\u30FC\\u30FB\\u30A6\\u30A7\\u30FC\\u30F4\\u30D0\\u30F3\\u30C9\\u3002\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u30FB ... \\u3092\\u69CB\\u7BC9\\u3057\\u3066\\u3044\\u3063\\u305F\\u3002 \\u65E5\\u672C\\u3067\\u306F\\u521D\\u6765\\u65E5\\u3067\\u3044\\u304D\\u306A\\u308A\\u6B66\\u9053\\u9928\\u3067\\u306E\\u516C\\u6F14\\u3092\\u884C\\u3046\\u306A\\u3069\\u3001\\u7206\\u767A\\u7684\\u306A\\u4EBA\\u6C17\\u3092\\u8A87\\u3063\\u305F\\u304C\\u3001\\u82F1\\u56FD\\u3067\\u306F\\u306A\\u304B\\u306A\\u304B\\u4EBA\\u6C17\\u304C\\u51FA\\u305A\\u3001\\u521D\\u671F\\u306F\\u5178\\u578B\\u7684\\u306A\\u300C\\u30D3\\u30C3\\u30B0\\u30FB\\u30A4\\u30F3\\u30FB\\u30B8\\u30E3\\u30D1\\u30F3\\u300D\\u72B6\\u614B\\u3067\\u3042\\u3063\\u305F\\u3002\\u65E5\\u672C\\u6700\\u5927\\u7D1A\\u306E\\u30DD\\u30FC\\u30BF\\u30EB\\u30B5\\u30A4\\u30C8\\u3002\\u691C\\u7D22\\u3001\\u30AA\\u30FC\\u30AF\\u30B7\\u30E7\\u30F3\\u3001\\u30CB\\u30E5\\u30FC\\u30B9\\u3001\\u30E1\\u30FC\\u30EB\\u3001\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3\\u3001\\u30B7\\u30E7\\u30C3\\u30D4\\u30F3\\u30B0\\u3001\\u306A\\u306980\\u4EE5\\u4E0A\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u5C55\\u958B\\u3002\\u3042\\u306A\\u305F\\u306E\\u751F\\u6D3B\\u3092\\u3088\\u308A\\u8C4A\\u304B\\u306B\\u3059\\u308B\\u300C\\u30E9\\u30A4\\u30D5\\u30FB\\u30A8\\u30F3\\u30B8\\u30F3\\u300D\\u3092\\u76EE\\u6307\\u3057\\u3066\\u3044\\u304D\\u307E\\u3059\\u3002\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u30FB\\u30B7\\u30EB\\u30F4\\u30A3\\u30A2\\u30F3\\u3068\\u305D\\u306E\\u5F1F\\u30B9\\u30C6\\u30A3\\u30FC\\u30F4\\u30FB\\u30B8\\u30E3\\u30F3\\u30BB\\u30F3\\u3001\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u306E\\u89AA\\u53CB\\u3067\\u3042\\u3063\\u305F\\u30DF\\u30C3\\u30AF\\u30FB\\u30AB\\u30FC\\u30F3\\u3092\\u4E2D\\u5FC3\\u306B\\u7D50\\u6210\\u3002\\u30DF\\u30C3\\u30AF\\u30FB\\u30AB\\u30FC\\u30F3\\u306E\\u5144\\u306E\\u7D50\\u5A5A\\u5F0F\\u306B\\u30D0\\u30F3\\u30C9\\u3068\\u3057\\u3066\\u6700\\u521D\\u306E\\u304A\\u62AB\\u9732\\u76EE\\u3092\\u3057\\u305F\\u3002\\u5F53\\u521D\\u306F\\u30DF\\u30C3\\u30AF\\u30FB\\u30AB\\u30FC\\u30F3\\u3092\\u30EA\\u30FC\\u30C9\\u30DC\\u30FC\\u30AB\\u30EB\\u3068\\u3057\\u3066\\u7DF4\\u7FD2\\u3057\\u3066\\u3044\\u305F\\u304C\\u3001\\u672C\\u756A\\u76F4\\u524D\\u306B\\u306A\\u3063\\u3066\\u6016\\u3058\\u6C17\\u3065\\u3044\\u305F\\u30DF\\u30C3\\u30AF\\u304C\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u30FB\\u30B7\\u30EB\\u30F4\\u30A3\\u30A2\\u30F3\\u306B\\u7121\\u7406\\u77E2\\u7406\\u983C\\u307F\\u8FBC\\u3093\\u3067\\u30DC\\u30FC\\u30AB\\u30EB\\u3092\\u4EE3\\u308F\\u3063\\u3066\\u3082\\u3089\\u3044\\u3001\\u4EE5\\u964D\\u30C7\\u30F4\\u30A3\\u30C3\\u30C9\\u304C\\u30EA\\u30FC\\u30C9\\u30DC\\u30FC\\u30AB\\u30EB\\u3068\\u306A\\u3063\\u305F\\u3002\\u305D\\u306E\\u5F8C\\u9AD8\\u6821\\u306E\\u540C\\u7D1A\\u3067\\u3042\\u3063\\u305F\\u30EA\\u30C1\\u30E3\\u30FC\\u30C9\\u30FB\\u30D0\\u30EB\\u30D3\\u30A8\\u30EA\\u3092\\u8A98\\u3044\\u3001\\u66F4\\u306B\\u30AA\\u30FC\\u30C7\\u30A3\\u30B7\\u30E7\\u30F3\\u3067\\u30ED\\u30D6\\u30FB\\u30C7\\u30A3\\u30FC\\u30F3\\u3092\\u8FCE\\u3048\\u5165\\u308C\\u3001\\u30C7\\u30D3\\u30E5\\u30FC\\u5F53\\u521D\\u306E\\u30D0\\u30F3\\u30C9\\u306E\\u5F62\\u614B\\u3068\\u306A\\u3063\\u305F\\u3002\\u30C7\\u30D3\\u30E5\\u30FC\\u5F53\\u521D\\u306F\\u30A2\\u30A4\\u30C9\\u30EB\\u3068\\u3057\\u3066\\u5BA3\\u4F1D\\u3055\\u308C\\u305F\\u30B0\\u30EB\\u30FC\\u30D7\\u3060\\u3063\\u305F\\u304C\\u3001\\u82F1\\u56FD\\u306E\\u97F3\\u697D\\u30B7\\u30FC\\u30F3\\u3067\\u306F\\u307B\\u3068\\u3093\\u3069\\u4EBA\\u6C17\\u304C\\u7121\\u304B\\u3063\\u305F\\u3002\\u521D\\u671F\\u306E\\u30B5\\u30A6\\u30F3\\u30C9\\u306F\\u4E3B\\u306B\\u9ED2\\u4EBA\\u97F3\\u697D\\u3084\\u30B0\\u30E9\\u30E0\\u30ED\\u30C3\\u30AF\\u3092\\u30DD\\u30B9\\u30C8\\u30FB\\u30D1\\u30F3\\u30AF\\u7684\\u306B\\u518D\\u89E3\\u91C8\\u3057\\u305F\\u3082\\u306E\\u3067\\u3042\\u3063\\u305F\\u304C\\u3001\\u4F5C\\u54C1\\u3092\\u91CD\\u306D\\u308B\\u3054\\u3068\\u306B\\u803D\\u7F8E\\u7684\\u306A\\u4F5C\\u98A8\\u3001\\u9000\\u5EC3\\u7684\\u306A\\u6B4C\\u8A5E\\u3084\\u30B7\\u30F3\\u30BB\\u30B5\\u30A4\\u30B6\\u30FC\\u306E\\u5229\\u7528\\u306A\\u3069\\u72EC\\u81EA\\u306E\\u30B9\\u30BF\\u30A4\\u30EB\\u3092\\u69CB\\u7BC9\\u3057\\u3066\\u3044\\u3063\\u305F\\u3002\\u65E5\\u672C\\u3067\\u306F\\u521D\\u6765\\u65E5\\u3067\\u3044\\u304D\\u306A\\u308A\\u6B66\\u9053\\u9928\\u3067\\u306E\\u516C\\u6F14\\u3092\\u884C\\u3046\\u306A\\u3069\\u3001\\u7206\\u767A\\u7684\\u306A\\u4EBA\\u6C17\\u3092\\u8A87\\u3063\\u305F\\u304C\\u3001\\u82F1\\u56FD\\u3067\\u306F\\u306A\\u304B\\u306A\\u304B\\u4EBA\\u6C17\\u304C\\u51FA\\u305A\\u3001\\u521D\\u671F\\u306F\\u5178\\u578B\\u7684\\u306A\\u300C\\u30D3\\u30C3\\u30B0\\u30FB\\u30A4\\u30F3\\u30FB\\u30B8\\u30E3\\u30D1\\u30F3\\u300D\\u72B6\\u614B\\u3067\\u3042\\u3063\\u305F\\u3002", result); BOOST_CHECK_EQUAL((size_t) 4137, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "ジャパン は、イギリスのニュー・ウェーヴバンド。デヴィッド・ ... を構築していった。 日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。デヴィッド・シルヴィアンとその弟スティーヴ・ジャンセン、デヴィッドの親友であったミック・カーンを中心に結成。ミック・カーンの兄の結婚式にバンドとして最初のお披露目をした。当初はミック・カーンをリードボーカルとして練習していたが、本番直前になって怖じ気づいたミックがデヴィッド・シルヴィアンに無理矢理頼み込んでボーカルを代わってもらい、以降デヴィッドがリードボーカルとなった。その後高校の同級であったリチャード・バルビエリを誘い、更にオーディションでロブ・ディーンを迎え入れ、デビュー当初のバンドの形態となった。デビュー当初はアイドルとして宣伝されたグループだったが、英国の音楽シーンではほとんど人気が無かった。初期のサウンドは主に黒人音楽やグラムロックをポスト・パンク的に再解釈したものであったが、作品を重ねるごとに耽美的な作風、退廃的な歌詞やシンセサイザーの利用など独自のスタイルを構築していった。日本では初来日でいきなり武道館での公演を行うなど、爆発的な人気を誇ったが、英国ではなかなか人気が出ず、初期は典型的な「ビッグ・イン・ジャパン」状態であった。"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -222,6 +226,9 @@ BOOST_AUTO_TEST_CASE (tst_korean) { result = TEST_STRING("코리아닷컴 메일알리미 서비스 중단안내 [안내] 개인정보취급방침 변경 안내 회사소개 | 광고안내 | 제휴안내 | 개인정보취급방침 | 청소년보호정책 | 스팸방지정책 | 사이버고객센터 | 약관안내 | 이메일 무단수집거부 | 서비스 전체보기"); BOOST_CHECK_EQUAL("\\uCF54\\uB9AC\\uC544\\uB2F7\\uCEF4 \\uBA54\\uC77C\\uC54C\\uB9AC\\uBBF8 \\uC11C\\uBE44\\uC2A4 \\uC911\\uB2E8\\uC548\\uB0B4 [\\uC548\\uB0B4] \\uAC1C\\uC778\\uC815\\uBCF4\\uCDE8\\uAE09\\uBC29\\uCE68 \\uBCC0\\uACBD \\uC548\\uB0B4 \\uD68C\\uC0AC\\uC18C\\uAC1C | \\uAD11\\uACE0\\uC548\\uB0B4 | \\uC81C\\uD734\\uC548\\uB0B4 | \\uAC1C\\uC778\\uC815\\uBCF4\\uCDE8\\uAE09\\uBC29\\uCE68 | \\uCCAD\\uC18C\\uB144\\uBCF4\\uD638\\uC815\\uCC45 | \\uC2A4\\uD338\\uBC29\\uC9C0\\uC815\\uCC45 | \\uC0AC\\uC774\\uBC84\\uACE0\\uAC1D\\uC13C\\uD130 | \\uC57D\\uAD00\\uC548\\uB0B4 | \\uC774\\uBA54\\uC77C \\uBB34\\uB2E8\\uC218\\uC9D1\\uAC70\\uBD80 | \\uC11C\\uBE44\\uC2A4 \\uC804\\uCCB4\\uBCF4\\uAE30", result); BOOST_CHECK_EQUAL((size_t) 585, outLength); + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "코리아닷컴 메일알리미 서비스 중단안내 [안내] 개인정보취급방침 변경 안내 회사소개 | 광고안내 | 제휴안내 | 개인정보취급방침 | 청소년보호정책 | 스팸방지정책 | 사이버고객센터 | 약관안내 | 이메일 무단수집거부 | 서비스 전체보기"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -236,6 +243,10 @@ BOOST_AUTO_TEST_CASE (tst_chinese) { result = TEST_STRING("中华网以中国的市场为核心,致力为当地用户提供流动增值服务、网上娱乐及互联网服务。本公司亦推出网上游戏,及透过其门户网站提供包罗万有的网上产品及服务。"); BOOST_CHECK_EQUAL("\\u4E2D\\u534E\\u7F51\\u4EE5\\u4E2D\\u56FD\\u7684\\u5E02\\u573A\\u4E3A\\u6838\\u5FC3\\uFF0C\\u81F4\\u529B\\u4E3A\\u5F53\\u5730\\u7528\\u6237\\u63D0\\u4F9B\\u6D41\\u52A8\\u589E\\u503C\\u670D\\u52A1\\u3001\\u7F51\\u4E0A\\u5A31\\u4E50\\u53CA\\u4E92\\u8054\\u7F51\\u670D\\u52A1\\u3002\\u672C\\u516C\\u53F8\\u4EA6\\u63A8\\u51FA\\u7F51\\u4E0A\\u6E38\\u620F\\uFF0C\\u53CA\\u900F\\u8FC7\\u5176\\u95E8\\u6237\\u7F51\\u7AD9\\u63D0\\u4F9B\\u5305\\u7F57\\u4E07\\u6709\\u7684\\u7F51\\u4E0A\\u4EA7\\u54C1\\u53CA\\u670D\\u52A1\\u3002", result); BOOST_CHECK_EQUAL((size_t) 444, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "中华网以中国的市场为核心,致力为当地用户提供流动增值服务、网上娱乐及互联网服务。本公司亦推出网上游戏,及透过其门户网站提供包罗万有的网上产品及服务。"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -250,6 +261,10 @@ BOOST_AUTO_TEST_CASE (tst_hebrew) { result = TEST_STRING("כפי שסופיה קופולה היטיבה לבטא בסרטה אבודים בטוקיו, בתי מלון יוקרתיים בערים גדולות אמנם מציעים אינספור פינוקים, אבל הם גם עלולים לגרום לנו להרגיש בודדים ואומללים מאי פעם. לעומת זאת, B&B, בתים פרטיים שבהם אפשר לישון ולאכול ארוחת בוקר, הם דרך נהדרת להכיר עיר אירופאית כמו מקומיים ולפגוש אנשים מרתקים מרחבי העולם. לטובת מי שנוסע לממלכה בחודשים הקרובים, הגרדיאן הבריטי קיבץ את עשרת ה-B&B המומלצים ביותר בלונדון. כל שנותר הוא לבחור, ולהזמין מראש"); BOOST_CHECK_EQUAL("\\u05DB\\u05E4\\u05D9 \\u05E9\\u05E1\\u05D5\\u05E4\\u05D9\\u05D4 \\u05E7\\u05D5\\u05E4\\u05D5\\u05DC\\u05D4 \\u05D4\\u05D9\\u05D8\\u05D9\\u05D1\\u05D4 \\u05DC\\u05D1\\u05D8\\u05D0 \\u05D1\\u05E1\\u05E8\\u05D8\\u05D4 \\u05D0\\u05D1\\u05D5\\u05D3\\u05D9\\u05DD \\u05D1\\u05D8\\u05D5\\u05E7\\u05D9\\u05D5, \\u05D1\\u05EA\\u05D9 \\u05DE\\u05DC\\u05D5\\u05DF \\u05D9\\u05D5\\u05E7\\u05E8\\u05EA\\u05D9\\u05D9\\u05DD \\u05D1\\u05E2\\u05E8\\u05D9\\u05DD \\u05D2\\u05D3\\u05D5\\u05DC\\u05D5\\u05EA \\u05D0\\u05DE\\u05E0\\u05DD \\u05DE\\u05E6\\u05D9\\u05E2\\u05D9\\u05DD \\u05D0\\u05D9\\u05E0\\u05E1\\u05E4\\u05D5\\u05E8 \\u05E4\\u05D9\\u05E0\\u05D5\\u05E7\\u05D9\\u05DD, \\u05D0\\u05D1\\u05DC \\u05D4\\u05DD \\u05D2\\u05DD \\u05E2\\u05DC\\u05D5\\u05DC\\u05D9\\u05DD \\u05DC\\u05D2\\u05E8\\u05D5\\u05DD \\u05DC\\u05E0\\u05D5 \\u05DC\\u05D4\\u05E8\\u05D2\\u05D9\\u05E9 \\u05D1\\u05D5\\u05D3\\u05D3\\u05D9\\u05DD \\u05D5\\u05D0\\u05D5\\u05DE\\u05DC\\u05DC\\u05D9\\u05DD \\u05DE\\u05D0\\u05D9 \\u05E4\\u05E2\\u05DD. \\u05DC\\u05E2\\u05D5\\u05DE\\u05EA \\u05D6\\u05D0\\u05EA, B&B, \\u05D1\\u05EA\\u05D9\\u05DD \\u05E4\\u05E8\\u05D8\\u05D9\\u05D9\\u05DD \\u05E9\\u05D1\\u05D4\\u05DD \\u05D0\\u05E4\\u05E9\\u05E8 \\u05DC\\u05D9\\u05E9\\u05D5\\u05DF \\u05D5\\u05DC\\u05D0\\u05DB\\u05D5\\u05DC \\u05D0\\u05E8\\u05D5\\u05D7\\u05EA \\u05D1\\u05D5\\u05E7\\u05E8, \\u05D4\\u05DD \\u05D3\\u05E8\\u05DA \\u05E0\\u05D4\\u05D3\\u05E8\\u05EA \\u05DC\\u05D4\\u05DB\\u05D9\\u05E8 \\u05E2\\u05D9\\u05E8 \\u05D0\\u05D9\\u05E8\\u05D5\\u05E4\\u05D0\\u05D9\\u05EA \\u05DB\\u05DE\\u05D5 \\u05DE\\u05E7\\u05D5\\u05DE\\u05D9\\u05D9\\u05DD \\u05D5\\u05DC\\u05E4\\u05D2\\u05D5\\u05E9 \\u05D0\\u05E0\\u05E9\\u05D9\\u05DD \\u05DE\\u05E8\\u05EA\\u05E7\\u05D9\\u05DD \\u05DE\\u05E8\\u05D7\\u05D1\\u05D9 \\u05D4\\u05E2\\u05D5\\u05DC\\u05DD. \\u05DC\\u05D8\\u05D5\\u05D1\\u05EA \\u05DE\\u05D9 \\u05E9\\u05E0\\u05D5\\u05E1\\u05E2 \\u05DC\\u05DE\\u05DE\\u05DC\\u05DB\\u05D4 \\u05D1\\u05D7\\u05D5\\u05D3\\u05E9\\u05D9\\u05DD \\u05D4\\u05E7\\u05E8\\u05D5\\u05D1\\u05D9\\u05DD, \\u05D4\\u05D2\\u05E8\\u05D3\\u05D9\\u05D0\\u05DF \\u05D4\\u05D1\\u05E8\\u05D9\\u05D8\\u05D9 \\u05E7\\u05D9\\u05D1\\u05E5 \\u05D0\\u05EA \\u05E2\\u05E9\\u05E8\\u05EA \\u05D4-B&B \\u05D4\\u05DE\\u05D5\\u05DE\\u05DC\\u05E6\\u05D9\\u05DD \\u05D1\\u05D9\\u05D5\\u05EA\\u05E8 \\u05D1\\u05DC\\u05D5\\u05E0\\u05D3\\u05D5\\u05DF. \\u05DB\\u05DC \\u05E9\\u05E0\\u05D5\\u05EA\\u05E8 \\u05D4\\u05D5\\u05D0 \\u05DC\\u05D1\\u05D7\\u05D5\\u05E8, \\u05D5\\u05DC\\u05D4\\u05D6\\u05DE\\u05D9\\u05DF \\u05DE\\u05E8\\u05D0\\u05E9", result); BOOST_CHECK_EQUAL((size_t) 2189, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "כפי שסופיה קופולה היטיבה לבטא בסרטה אבודים בטוקיו, בתי מלון יוקרתיים בערים גדולות אמנם מציעים אינספור פינוקים, אבל הם גם עלולים לגרום לנו להרגיש בודדים ואומללים מאי פעם. לעומת זאת, B&B, בתים פרטיים שבהם אפשר לישון ולאכול ארוחת בוקר, הם דרך נהדרת להכיר עיר אירופאית כמו מקומיים ולפגוש אנשים מרתקים מרחבי העולם. לטובת מי שנוסע לממלכה בחודשים הקרובים, הגרדיאן הבריטי קיבץ את עשרת ה-B&B המומלצים ביותר בלונדון. כל שנותר הוא לבחור, ולהזמין מראש"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -264,6 +279,10 @@ BOOST_AUTO_TEST_CASE (tst_arabian) { result = TEST_STRING("بان يأسف لمقتل لاجئين سوريين بتركيا المرزوقي يندد بعنف الأمن التونسي تنديد بقتل الجيش السوري مصورا تلفزيونيا 14 قتيلا وعشرات الجرحى بانفجار بالصومال"); BOOST_CHECK_EQUAL("\\u0628\\u0627\\u0646 \\u064A\\u0623\\u0633\\u0641 \\u0644\\u0645\\u0642\\u062A\\u0644 \\u0644\\u0627\\u062C\\u0626\\u064A\\u0646 \\u0633\\u0648\\u0631\\u064A\\u064A\\u0646 \\u0628\\u062A\\u0631\\u0643\\u064A\\u0627 \\u0627\\u0644\\u0645\\u0631\\u0632\\u0648\\u0642\\u064A \\u064A\\u0646\\u062F\\u062F \\u0628\\u0639\\u0646\\u0641 \\u0627\\u0644\\u0623\\u0645\\u0646 \\u0627\\u0644\\u062A\\u0648\\u0646\\u0633\\u064A \\u062A\\u0646\\u062F\\u064A\\u062F \\u0628\\u0642\\u062A\\u0644 \\u0627\\u0644\\u062C\\u064A\\u0634 \\u0627\\u0644\\u0633\\u0648\\u0631\\u064A \\u0645\\u0635\\u0648\\u0631\\u0627 \\u062A\\u0644\\u0641\\u0632\\u064A\\u0648\\u0646\\u064A\\u0627 14 \\u0642\\u062A\\u064A\\u0644\\u0627 \\u0648\\u0639\\u0634\\u0631\\u0627\\u062A \\u0627\\u0644\\u062C\\u0631\\u062D\\u0649 \\u0628\\u0627\\u0646\\u0641\\u062C\\u0627\\u0631 \\u0628\\u0627\\u0644\\u0635\\u0648\\u0645\\u0627\\u0644", result); BOOST_CHECK_EQUAL((size_t) 768, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "بان يأسف لمقتل لاجئين سوريين بتركيا المرزوقي يندد بعنف الأمن التونسي تنديد بقتل الجيش السوري مصورا تلفزيونيا 14 قتيلا وعشرات الجرحى بانفجار بالصومال"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -278,6 +297,10 @@ BOOST_AUTO_TEST_CASE (tst_russian) { result = TEST_STRING("Голкипер мадридского «Реала» Икер Касильяс призвал своих партнеров сосредоточить все мысли на предстоящем дерби с «Атлетико»"); BOOST_CHECK_EQUAL("\\u0413\\u043E\\u043B\\u043A\\u0438\\u043F\\u0435\\u0440 \\u043C\\u0430\\u0434\\u0440\\u0438\\u0434\\u0441\\u043A\\u043E\\u0433\\u043E \\u00AB\\u0420\\u0435\\u0430\\u043B\\u0430\\u00BB \\u0418\\u043A\\u0435\\u0440 \\u041A\\u0430\\u0441\\u0438\\u043B\\u044C\\u044F\\u0441 \\u043F\\u0440\\u0438\\u0437\\u0432\\u0430\\u043B \\u0441\\u0432\\u043E\\u0438\\u0445 \\u043F\\u0430\\u0440\\u0442\\u043D\\u0435\\u0440\\u043E\\u0432 \\u0441\\u043E\\u0441\\u0440\\u0435\\u0434\\u043E\\u0442\\u043E\\u0447\\u0438\\u0442\\u044C \\u0432\\u0441\\u0435 \\u043C\\u044B\\u0441\\u043B\\u0438 \\u043D\\u0430 \\u043F\\u0440\\u0435\\u0434\\u0441\\u0442\\u043E\\u044F\\u0449\\u0435\\u043C \\u0434\\u0435\\u0440\\u0431\\u0438 \\u0441 \\u00AB\\u0410\\u0442\\u043B\\u0435\\u0442\\u0438\\u043A\\u043E\\u00BB", result); BOOST_CHECK_EQUAL((size_t) 669, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "Голкипер мадридского «Реала» Икер Касильяс призвал своих партнеров сосредоточить все мысли на предстоящем дерби с «Атлетико»"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -292,6 +315,10 @@ BOOST_AUTO_TEST_CASE (tst_klingon) { result = TEST_STRING("   "); BOOST_CHECK_EQUAL("\\uF8D8\\uF8D7\\uF8D9 \\uF8DA\\uF8DD\\uF8D6 \\uF8D5\\uF8D0\\uF8D8\\uF8D8\\uF8D0\\uF8D8 \\uF8D8\\uF8D0\\uF8D5\\uF8D6\\uF8DD\\uF8DA\\uF8D9\\uF8D7\\uF8D8", result); BOOST_CHECK_EQUAL((size_t) 129, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "   "); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -306,6 +333,10 @@ BOOST_AUTO_TEST_CASE (tst_devanagari) { result = TEST_STRING("अ आ इ ई उ ऊ ऋ ॠ ऌ ॡ ए ऐ ओ औ क ख ग घ ङ च छ ज झ ञ ट ठ ड ढ ण त थ द ध न प फ ब भ म य र ल व श ष स ह"); BOOST_CHECK_EQUAL("\\u0905 \\u0906 \\u0907 \\u0908 \\u0909 \\u090A \\u090B \\u0960 \\u090C \\u0961 \\u090F \\u0910 \\u0913 \\u0914 \\u0915 \\u0916 \\u0917 \\u0918 \\u0919 \\u091A \\u091B \\u091C \\u091D \\u091E \\u091F \\u0920 \\u0921 \\u0922 \\u0923 \\u0924 \\u0925 \\u0926 \\u0927 \\u0928 \\u092A \\u092B \\u092C \\u092D \\u092E \\u092F \\u0930 \\u0932 \\u0935 \\u0936 \\u0937 \\u0938 \\u0939", result); BOOST_CHECK_EQUAL((size_t) 328, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "अ आ इ ई उ ऊ ऋ ॠ ऌ ॡ ए ऐ ओ औ क ख ग घ ङ च छ ज झ ञ ट ठ ड ढ ण त थ द ध न प फ ब भ म य र ल व श ष स ह"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -320,6 +351,10 @@ BOOST_AUTO_TEST_CASE (tst_vietnamese) { result = TEST_STRING("tɜt kɐː mɔj ŋɨɜj siŋ za ɗew ɗɨɜk tɨɰ zɔ vɐː ɓiŋ ɗɐŋ vej ɲɜn fɜm vɐː kɨɜn. mɔj kɔn ŋɨɜj ɗeu ɗɨɜk tɐːw huɜ ɓɐːn cɔ li ci vɐː lɨɜŋ tɜm vɐː kɜn fɐːj ɗoj sɨ vɜj ɲɐw cɔŋ tiŋ ɓɐŋ hɨw."); BOOST_CHECK_EQUAL("t\\u025Ct k\\u0250\\u02D0 m\\u0254j \\u014B\\u0268\\u025Cj si\\u014B za \\u0257ew \\u0257\\u0268\\u025Ck t\\u0268\\u0270 z\\u0254 v\\u0250\\u02D0 \\u0253i\\u014B \\u0257\\u0250\\u014B vej \\u0272\\u025Cn f\\u025Cm v\\u0250\\u02D0 k\\u0268\\u025Cn. m\\u0254j k\\u0254n \\u014B\\u0268\\u025Cj \\u0257eu \\u0257\\u0268\\u025Ck t\\u0250\\u02D0w hu\\u025C \\u0253\\u0250\\u02D0n c\\u0254 li ci v\\u0250\\u02D0 l\\u0268\\u025C\\u014B t\\u025Cm v\\u0250\\u02D0 k\\u025Cn f\\u0250\\u02D0j \\u0257oj s\\u0268 v\\u025Cj \\u0272\\u0250w c\\u0254\\u014B ti\\u014B \\u0253\\u0250\\u014B h\\u0268w.", result); BOOST_CHECK_EQUAL((size_t) 516, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "tɜt kɐː mɔj ŋɨɜj siŋ za ɗew ɗɨɜk tɨɰ zɔ vɐː ɓiŋ ɗɐŋ vej ɲɜn fɜm vɐː kɨɜn. mɔj kɔn ŋɨɜj ɗeu ɗɨɜk tɐːw huɜ ɓɐːn cɔ li ci vɐː lɨɜŋ tɜm vɐː kɜn fɐːj ɗoj sɨ vɜj ɲɐw cɔŋ tiŋ ɓɐŋ hɨw."); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } @@ -334,6 +369,10 @@ BOOST_AUTO_TEST_CASE (tst_western_european) { result = TEST_STRING("äöüßÄÖÜ€µ"); BOOST_CHECK_EQUAL("\\u00E4\\u00F6\\u00FC\\u00DF\\u00C4\\u00D6\\u00DC\\u20AC\\u00B5", result); BOOST_CHECK_EQUAL((size_t) 54, outLength); + + char* unescaped = TRI_UnescapeUtf8String(result, strlen(result), &outLength); + BOOST_CHECK_EQUAL(unescaped, "äöüßÄÖÜ€µ"); + TRI_FreeString(TRI_CORE_MEM_ZONE, unescaped); TRI_FreeString(TRI_CORE_MEM_ZONE, result); } diff --git a/lib/BasicsC/strings.c b/lib/BasicsC/strings.c index a314fce307..432cf244ad 100644 --- a/lib/BasicsC/strings.c +++ b/lib/BasicsC/strings.c @@ -250,6 +250,7 @@ static void DecodeUnicodeEscape (char** dst, char const* src) { else if (n <= 0x7FF) { *(*dst)++ = 0xC0 + (n >> 6); *(*dst) = 0x80 + (n & 0x3F); + } else { *(*dst)++ = 0xE0 + (n >> 12); @@ -1229,6 +1230,8 @@ char* TRI_UnescapeUtf8StringZ (TRI_memory_zone_t* zone, char const* in, size_t i *qtr = *ptr; break; } + + continue; } *qtr = *ptr; @@ -1237,7 +1240,7 @@ char* TRI_UnescapeUtf8StringZ (TRI_memory_zone_t* zone, char const* in, size_t i *qtr = '\0'; *outLength = qtr - buffer; - + // we might have wasted some space if the unescaped string is shorter than the // escaped one. this is the case if the string contained escaped characters if (*outLength < (ptr - in)) { From 25f096ae770facd6c4ae79deb6e3bd1f50868f9f Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Mon, 27 Aug 2012 16:09:29 +0200 Subject: [PATCH 15/28] fixed CHANGELOG --- CHANGELOG | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index 6df4cc29c0..f2dbbab4ba 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,8 +1,11 @@ -v1.0.0 (2012-08-17) +v1.0.1 (2012-XX-XX) ------------------- * fix for issue #163: server cannot create collection because of abandoned files +v1.0.0 (2012-08-17) +------------------- + * fix for issue #157: check for readline and ncurses headers, not only libraries From aeca8a6545cacba31fe3ae4d27504f0af309e089 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 28 Aug 2012 11:18:41 +0200 Subject: [PATCH 16/28] issue #166: missing PDF --- Makefile.local | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.local b/Makefile.local index 549a15208f..c283de37ca 100644 --- a/Makefile.local +++ b/Makefile.local @@ -32,6 +32,7 @@ publish-pdf: $(OUTPUT_FOLDER) scp Doxygen/latex/install-manual.pdf $(OUTPUT_FOLDER) scp Doxygen/latex/user-manual.pdf $(OUTPUT_FOLDER) scp Doxygen/latex/ref-manual.pdf $(OUTPUT_FOLDER) + scp Doxygen/latex/imp-manual.pdf $(OUTPUT_FOLDER) scp arangod/Documentation/arangodb_1.0_shell_reference_card.pdf $(OUTPUT_FOLDER) $(OUTPUT_FOLDER): From 5bbe0cffcfb38edbff7abd747236b7662eaebf39 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 28 Aug 2012 11:20:24 +0200 Subject: [PATCH 17/28] issue #166: missing PDF --- Makefile.local | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.local b/Makefile.local index 549a15208f..c283de37ca 100644 --- a/Makefile.local +++ b/Makefile.local @@ -32,6 +32,7 @@ publish-pdf: $(OUTPUT_FOLDER) scp Doxygen/latex/install-manual.pdf $(OUTPUT_FOLDER) scp Doxygen/latex/user-manual.pdf $(OUTPUT_FOLDER) scp Doxygen/latex/ref-manual.pdf $(OUTPUT_FOLDER) + scp Doxygen/latex/imp-manual.pdf $(OUTPUT_FOLDER) scp arangod/Documentation/arangodb_1.0_shell_reference_card.pdf $(OUTPUT_FOLDER) $(OUTPUT_FOLDER): From f8bc6c449db20c3823bc91fcd0819a8d3c8c26e8 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 28 Aug 2012 14:07:04 +0200 Subject: [PATCH 18/28] issue #170: changed help text --- js/client/client.js | 2 +- js/client/js-client.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/js/client/client.js b/js/client/client.js index edc9ed6c71..3e01e79fc2 100644 --- a/js/client/client.js +++ b/js/client/client.js @@ -2644,7 +2644,7 @@ ArangoEdges.prototype = new ArangoDatabase(); ' edges: ArangoEdges ' + "\n" + 'Example: ' + "\n" + ' > db._collections(); list all collections ' + "\n" + - ' > db..all(); list all documents ' + "\n" + + ' > db..all().toArray(); list all documents ' + "\n" + ' > id = db..save({ ... }); save a document ' + "\n" + ' > db..remove(<_id>); delete a document ' + "\n" + ' > db..document(<_id>); get a document ' + "\n" + diff --git a/js/client/js-client.h b/js/client/js-client.h index be8fb6bfcf..908f11b7d8 100644 --- a/js/client/js-client.h +++ b/js/client/js-client.h @@ -2645,7 +2645,7 @@ static string JS_client_client = " ' edges: ArangoEdges ' + \"\\n\" +\n" " 'Example: ' + \"\\n\" +\n" " ' > db._collections(); list all collections ' + \"\\n\" +\n" - " ' > db..all(); list all documents ' + \"\\n\" +\n" + " ' > db..all().toArray(); list all documents ' + \"\\n\" +\n" " ' > id = db..save({ ... }); save a document ' + \"\\n\" +\n" " ' > db..remove(<_id>); delete a document ' + \"\\n\" +\n" " ' > db..document(<_id>); get a document ' + \"\\n\" +\n" From 80db80d7e4cbdbf64beb8cfa3cc688d14c8c42b4 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 28 Aug 2012 14:08:00 +0200 Subject: [PATCH 19/28] issue #170: changed help text --- js/client/client.js | 2 +- js/client/js-client.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/js/client/client.js b/js/client/client.js index edc9ed6c71..3e01e79fc2 100644 --- a/js/client/client.js +++ b/js/client/client.js @@ -2644,7 +2644,7 @@ ArangoEdges.prototype = new ArangoDatabase(); ' edges: ArangoEdges ' + "\n" + 'Example: ' + "\n" + ' > db._collections(); list all collections ' + "\n" + - ' > db..all(); list all documents ' + "\n" + + ' > db..all().toArray(); list all documents ' + "\n" + ' > id = db..save({ ... }); save a document ' + "\n" + ' > db..remove(<_id>); delete a document ' + "\n" + ' > db..document(<_id>); get a document ' + "\n" + diff --git a/js/client/js-client.h b/js/client/js-client.h index be8fb6bfcf..908f11b7d8 100644 --- a/js/client/js-client.h +++ b/js/client/js-client.h @@ -2645,7 +2645,7 @@ static string JS_client_client = " ' edges: ArangoEdges ' + \"\\n\" +\n" " 'Example: ' + \"\\n\" +\n" " ' > db._collections(); list all collections ' + \"\\n\" +\n" - " ' > db..all(); list all documents ' + \"\\n\" +\n" + " ' > db..all().toArray(); list all documents ' + \"\\n\" +\n" " ' > id = db..save({ ... }); save a document ' + \"\\n\" +\n" " ' > db..remove(<_id>); delete a document ' + \"\\n\" +\n" " ' > db..document(<_id>); get a document ' + \"\\n\" +\n" From 7a6ae34b18528c34fbd746198a3669d4b63dbf0e Mon Sep 17 00:00:00 2001 From: a-brandt Date: Thu, 30 Aug 2012 13:33:03 +0200 Subject: [PATCH 20/28] bugfix wrong variable name --- js/actions/system/api-blueprint.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/actions/system/api-blueprint.js b/js/actions/system/api-blueprint.js index 9e83fe3941..d4d6da04f4 100644 --- a/js/actions/system/api-blueprint.js +++ b/js/actions/system/api-blueprint.js @@ -222,7 +222,7 @@ function postVertex(req, res) { id = json["$id"]; } - var v = g.addVertex(id, body); + var v = g.addVertex(id, json); if (v == undefined || v._properties == undefined) { throw "could not create vertex"; From 363c5e1944dc426c6721e4d7767178c244b8b54c Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Tue, 21 Aug 2012 14:20:17 +0200 Subject: [PATCH 21/28] updated CHANGELOG --- CHANGELOG | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index ab6aa338d7..ceb70beec8 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -31,6 +31,8 @@ not released yet v1.0.0 (2012-08-17) ------------------- +* fix for issue #163: server cannot create collection because of abandoned files + * fix for issue #157: check for readline and ncurses headers, not only libraries From 65008d57bcb7b974ab0ed45a689b2415180dfc21 Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Fri, 24 Aug 2012 10:55:36 +0200 Subject: [PATCH 22/28] added D --- arangod/Documentation/home.dox | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arangod/Documentation/home.dox b/arangod/Documentation/home.dox index 8aab180702..6eba8e03f6 100644 --- a/arangod/Documentation/home.dox +++ b/arangod/Documentation/home.dox @@ -81,6 +81,11 @@ /// /// @subsection HomeCLINQ C\# / LINQ /// +/// @subsection HomeD D +/// +/// @@repeatedly has developed a driver for the programming language D: +/// https://github.com/repeatedly/reed +/// /// @subsection HomeNodeJS Node.JS /// /// There is a Node.JS client from Anders Elo available in a separate project: From f825cd97acf21ee50278d4f3639aac304b951bd7 Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Sun, 26 Aug 2012 12:03:29 +0200 Subject: [PATCH 23/28] replaces API section with link to web-site --- arangod/Documentation/home.dox | 39 +++------------------------------- 1 file changed, 3 insertions(+), 36 deletions(-) diff --git a/arangod/Documentation/home.dox b/arangod/Documentation/home.dox index 6eba8e03f6..83ffcbf00c 100644 --- a/arangod/Documentation/home.dox +++ b/arangod/Documentation/home.dox @@ -79,42 +79,9 @@ /// @section HomeApi API //////////////////////// /// -/// @subsection HomeCLINQ C\# / LINQ -/// -/// @subsection HomeD D -/// -/// @@repeatedly has developed a driver for the programming language D: -/// https://github.com/repeatedly/reed -/// -/// @subsection HomeNodeJS Node.JS -/// -/// There is a Node.JS client from Anders Elo available in a separate project: -/// https://github.com/kaerus/arango-client -/// -/// @subsection HomePerl Perl -/// -/// @@hide_o_55 is currently developing a Perl client. -/// -/// @subsection HomePHP PHP -/// -/// There is a PHP client available in a separate project: -/// https://github.com/triAGENS/ArangoDB-PHP -/// -/// See also Packagist: -/// http://packagist.org/packages/triagens/ArangoDb -/// -/// @subsection HomePython Python -/// -/// There is a Python client available in a separate project: -/// https://github.com/joymax/arango-python -/// -/// @subsection HomeRuby Ruby -/// -/// There is a Ruby client available in a separate project: -/// https://github.com/triAGENS/Ashikawa -/// -/// A discussion group can be found here: -/// https://groups.google.com/forum/#!forum/ashikawa +/// Though arangoDB is yet a young project, a couple of people started +/// to add APIs for different programming languages/frameworks. See +/// http://www.arangodb.org/api /// /// @section HomeStayInContact Stay in Contact ////////////////////////////////////////////// From 4cf0323e6e9068e4de73fae6be3d9e3137b48a8f Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Mon, 27 Aug 2012 16:09:29 +0200 Subject: [PATCH 24/28] fixed CHANGELOG --- CHANGELOG | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index ceb70beec8..70fd0f0b40 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -28,11 +28,14 @@ not released yet as before. The Javascript API in the shell also offers a new update() method in extension to the previously existing replace() method. -v1.0.0 (2012-08-17) +v1.0.1 (2012-XX-XX) ------------------- * fix for issue #163: server cannot create collection because of abandoned files +v1.0.0 (2012-08-17) +------------------- + * fix for issue #157: check for readline and ncurses headers, not only libraries From 39f4a8f833128a0a37a0987f98a2ce490667fee7 Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Wed, 29 Aug 2012 17:40:16 +0200 Subject: [PATCH 25/28] cleanup directory structure and init file handling moved common functions to ArangoClient --- .gitignore | 27 +- {m4 => 3rdParty}/Makefile.all-in-one-libev | 30 +- {m4 => 3rdParty}/Makefile.all-in-one-mruby | 8 +- {m4 => 3rdParty}/Makefile.all-in-one-protobuf | 8 +- {m4 => 3rdParty}/Makefile.all-in-one-v8 | 8 +- {m4 => 3rdParty}/Makefile.all-in-one-zeromq | 8 +- .../Examples.Ahuacatl/aqlarithmetic | 0 .../Examples.Ahuacatl/aqlattributenamesvalid | 0 .../Examples.Ahuacatl/aqlbind | 0 .../Examples.Ahuacatl/aqlbindcollection | 0 .../Examples.Ahuacatl/aqlcollect | 0 .../Examples.Ahuacatl/aqlcollect2 | 0 .../Examples.Ahuacatl/aqlcollectsyntax | 0 .../Examples.Ahuacatl/aqlcomments | 0 .../Examples.Ahuacatl/aqlcompareexamples1 | 0 .../Examples.Ahuacatl/aqlcompareexamples2 | 0 .../Examples.Ahuacatl/aqlcompareexamples3 | 0 .../Examples.Ahuacatl/aqlcomparison | 0 .../Examples.Ahuacatl/aqldocumentaccess | 0 .../Examples.Ahuacatl/aqldocumentempty | 0 .../Examples.Ahuacatl/aqlexample-collection | 0 .../Examples.Ahuacatl/aqlexample-grouping | 0 .../Examples.Ahuacatl/aqlexample-join | 0 .../Examples.Ahuacatl/aqlexample-simple | 0 .../Examples.Ahuacatl/aqlexpansion | 0 .../Examples.Ahuacatl/aqlfilter | 0 .../Examples.Ahuacatl/aqlfiltermultiple | 0 .../Examples.Ahuacatl/aqlfiltersyntax | 0 .../Examples.Ahuacatl/aqlfor | 0 .../Examples.Ahuacatl/aqlfornested | 0 .../Examples.Ahuacatl/aqlforstatic | 0 .../Examples.Ahuacatl/aqlforsyntax | 0 .../Examples.Ahuacatl/aqlfunctions | 0 .../Examples.Ahuacatl/aqlfunctionsyntax | 0 .../Examples.Ahuacatl/aqllet | 0 .../Examples.Ahuacatl/aqllet2 | 0 .../Examples.Ahuacatl/aqlletsyntax | 0 .../Examples.Ahuacatl/aqllimit | 0 .../Examples.Ahuacatl/aqllimitsyntax | 0 .../Examples.Ahuacatl/aqllistaccess | 0 .../Examples.Ahuacatl/aqllistempty | 0 .../Examples.Ahuacatl/aqllistvalues | 0 .../Examples.Ahuacatl/aqllogical | 0 .../Examples.Ahuacatl/aqlnamebackticks | 0 .../Examples.Ahuacatl/aqlnamedattributes | 0 .../Examples.Ahuacatl/aqlnull | 0 .../Examples.Ahuacatl/aqlnull2 | 0 .../Examples.Ahuacatl/aqlnumbers | 0 .../Examples.Ahuacatl/aqlpaths | 0 .../Examples.Ahuacatl/aqlqueryintro | 0 .../Examples.Ahuacatl/aqlqueryresultempty | 0 .../aqlqueryresulthomogenuous | 0 .../aqlqueryresultinhomogenuous | 0 .../Examples.Ahuacatl/aqlqueryresultscalar | 0 .../Examples.Ahuacatl/aqlreturn | 0 .../Examples.Ahuacatl/aqlreturnsyntax | 0 .../Examples.Ahuacatl/aqlsort | 0 .../Examples.Ahuacatl/aqlsortsyntax | 0 .../Examples.Ahuacatl/aqlstrings | 0 .../Examples.Ahuacatl/aqlsubquery | 0 .../Examples.Ahuacatl/aqlternary | 0 .../Examples.Ahuacatl/aqltypeorder | 0 .../Examples.Ahuacatl/aqlvariablenames | 0 .../api-collection-all-collections | 0 .../api-collection-bad-handle | 0 .../api-collection-create-collection | 0 ...pi-collection-delete-collection-identifier | 0 .../api-collection-delete-collection-name | 0 .../api-collection-get-collection-count | 0 .../api-collection-get-collection-figures | 0 .../api-collection-get-collection-identifier | 0 .../api-collection-get-collection-name | 0 .../api-collection-identifier-load | 0 .../api-collection-identifier-properties-sync | 0 .../api-collection-identifier-rename | 0 .../api-collection-identifier-truncate | 0 .../api-collection-identifier-unload | 0 .../api-cursor-create-for-limit-return | 0 .../api-cursor-create-for-limit-return-cont | 0 .../api-cursor-create-for-limit-return-cont2 | 0 .../api-cursor-create-for-limit-return-cont3 | 0 .../api-cursor-create-for-limit-return-single | 0 .../Examples.ArangoDB/api-cursor-delete | 0 .../api-cursor-invalid-cursor-identifier | 0 .../Examples.ArangoDB/api-cursor-missing-body | 0 .../api-cursor-missing-cursor-identifier | 0 .../api-cursor-unknown-collection | 0 .../Examples.ArangoDB/api-explain-invalid | 0 .../Examples.ArangoDB/api-explain-valid | 0 .../Examples.ArangoDB/api-import-documents | 0 .../Examples.ArangoDB/api-import-headers | 0 .../Examples.ArangoDB/api-index-all-indexes | 0 .../api-index-create-geo-latitude-longitude | 0 .../api-index-create-geo-location | 0 .../api-index-create-new-cap-constraint | 0 .../api-index-create-new-hash-index | 0 .../api-index-create-new-skiplist | 0 .../api-index-create-new-unique-constraint | 0 .../api-index-create-new-unique-skiplist | 0 .../api-index-delete-unique-skiplist | 0 .../Examples.ArangoDB/api-index-primary-index | 0 .../Examples.ArangoDB/api-query-invalid | 0 .../Examples.ArangoDB/api-query-valid | 0 .../api-simple-all-skip-limit | 0 .../Examples.ArangoDB/api-simple-by-example1 | 0 .../Examples.ArangoDB/api-simple-by-example2 | 0 .../Examples.ArangoDB/api-simple-by-example3 | 0 .../api-simple-first-example | 0 .../api-simple-first-example-not-found | 0 .../Examples.ArangoDB/api-simple-near | 0 .../api-simple-near-distance | 0 .../Examples.ArangoDB/api-simple-range | 0 .../Examples.ArangoDB/api-simple-within | 0 .../api-simple-within-distance | 0 .../Examples.ArangoDB/api_database1 | 0 .../Examples.ArangoDB/api_database2 | 0 .../Examples.ArangoDB/api_database3 | 0 .../Examples.ArangoDB/api_database4 | 0 .../Examples.ArangoDB/api_database5 | 0 .../Examples.ArangoDB/arangosh-options | 0 .../Examples.ArangoDB/arangosh-start | 0 .../Examples.ArangoDB/arangosh-start-full | 0 .../Examples.ArangoDB/connection-statistics | 0 .../connection-statistics-current | 0 .../Examples.ArangoDB/document1 | 0 .../key-value_delete-key-bad | 0 .../Examples.ArangoDB/key-value_delete-key-ok | 0 .../key-value_delete-key-request | 0 .../Examples.ArangoDB/key-value_get-key-bad | 0 .../Examples.ArangoDB/key-value_get-key-ok | 0 .../key-value_get-key-request | 0 .../Examples.ArangoDB/key-value_get-keys-bad | 0 .../Examples.ArangoDB/key-value_get-keys-ok | 0 .../key-value_get-keys-request | 0 .../Examples.ArangoDB/key-value_post-key-bad | 0 .../Examples.ArangoDB/key-value_post-key-ok | 0 .../key-value_post-key-request | 0 .../Examples.ArangoDB/key-value_put-key-bad | 0 .../Examples.ArangoDB/key-value_put-key-ok | 0 .../key-value_put-key-request | 0 .../Examples.ArangoDB/openssl-ciphers | 0 .../Examples.ArangoDB/openssl-options | 0 .../option-database-directory | 0 .../Examples.ArangoDB/option-server-endpoint | 0 .../Examples.ArangoDB/querypost | 0 .../Examples.ArangoDB/querypostfail | 0 .../Examples.ArangoDB/request-statistics | 0 .../request-statistics-current | 0 .../Examples.ArangoDB/rest-create-document | 0 .../rest-create-document-accept | 0 .../rest-create-document-bad-json | 0 .../rest-create-document-create-collection | 0 .../rest-create-document-named-collection | 0 .../rest-create-document-new-named-collection | 0 .../rest-create-document-unknown-cid | 0 .../Examples.ArangoDB/rest-delete-document | 0 .../rest-delete-document-if-match-other | 0 .../rest-delete-document-unknown-handle | 0 .../Examples.ArangoDB/rest-edge-create-edge | 0 .../Examples.ArangoDB/rest-edge-read-edge | 0 .../rest-edge-read-edges-any | 0 .../Examples.ArangoDB/rest-edge-read-edges-in | 0 .../rest-edge-read-edges-out | 0 .../Examples.ArangoDB/rest-patch-document | 0 .../Examples.ArangoDB/rest-read-document | 0 .../Examples.ArangoDB/rest-read-document-all | 0 .../Examples.ArangoDB/rest-read-document-head | 0 .../rest-read-document-if-none-match | 0 .../rest-read-document-unknown-handle | 0 .../Examples.ArangoDB/rest-update-document | 0 .../rest-update-document-if-match-other | 0 ...-update-document-if-match-other-last-write | 0 .../rest-update-document-rev-other | 0 .../rest-update-document-unknown-handle | 0 .../Examples.ArangoDB/server-keyfile | 0 .../Examples.ArangoDB/server-keyfile-openssl | 0 .../Examples.ArangoDB/start-emergency-console | 0 .../Examples.ArangoDB/startup1 | 0 .../Examples.ArangoDB/supervisor | 0 .../Examples.ArangoDB/supervisor-ps1 | 0 .../Examples.ArangoDB/supervisor-ps2 | 0 .../Examples.ArangoDB/user-document | 0 .../Examples.Durham/action1 | 0 .../Examples.Durham/action2 | 0 .../Examples.Durham/action3 | 0 .../Examples.Durham/action4 | 0 .../Examples.Durham/arangoimp-data-csv | 0 .../Examples.Durham/arangoimp-data-json | 0 .../Examples.Durham/arangosh-all-documents | 0 .../arangosh-create-collection | 0 .../Examples.Durham/arangosh-db | 0 .../Examples.Durham/arangosh-save-documents | 0 .../arangosh-unload-collection | 0 .../Examples.Durham/demo1 | 0 .../Examples.Durham/ensure-cap-constraint | 0 .../Examples.Durham/ensure-geo-index-array | 0 .../Examples.Durham/ensure-geo-index-list | 0 .../Examples.Durham/five1 | 0 .../Examples.Durham/fluent14 | 0 .../Examples.Durham/fluent36 | 0 .../Examples.Durham/fluent37 | 0 .../Examples.Durham/fluent38 | 0 .../Examples.Durham/fluent39 | 0 .../Examples.Durham/fluent40 | 0 .../Examples.Durham/fluent47 | 0 .../Examples.Durham/fluent48 | 0 .../Examples.Durham/fluent49 | 0 .../Examples.Durham/fluent50 | 0 .../Examples.Durham/geojs1 | 0 .../Examples.Durham/graph-constructor | 0 .../Examples.Durham/graph-edge-get-id | 0 .../Examples.Durham/graph-edge-get-in-vertex | 0 .../Examples.Durham/graph-edge-get-label | 0 .../Examples.Durham/graph-edge-get-out-vertex | 0 .../Examples.Durham/graph-edge-get-property | 0 .../graph-edge-get-property-keys | 0 .../Examples.Durham/graph-edge-properties | 0 .../Examples.Durham/graph-edge-set-property | 0 .../Examples.Durham/graph-graph-add-edge | 0 .../Examples.Durham/graph-graph-add-edge2 | 0 .../Examples.Durham/graph-graph-add-vertex | 0 .../Examples.Durham/graph-graph-add-vertex2 | 0 .../Examples.Durham/graph-graph-get-edges | 0 .../Examples.Durham/graph-graph-get-vertex | 0 .../Examples.Durham/graph-graph-get-vertices | 0 .../Examples.Durham/graph-graph-remove-edge | 0 .../Examples.Durham/graph-graph-remove-vertex | 0 .../Examples.Durham/graph-setup | 0 .../Examples.Durham/graph-vertex-add-in-edge | 0 .../Examples.Durham/graph-vertex-add-in-edge2 | 0 .../Examples.Durham/graph-vertex-add-out-edge | 0 .../graph-vertex-add-out-edge2 | 0 .../graph-vertex-add-out-edge3 | 0 .../Examples.Durham/graph-vertex-edges | 0 .../Examples.Durham/graph-vertex-get-id | 0 .../Examples.Durham/graph-vertex-get-in-edges | 0 .../graph-vertex-get-out-edges | 0 .../Examples.Durham/graph-vertex-get-property | 0 .../graph-vertex-get-property-keys | 0 .../Examples.Durham/graph-vertex-inbound | 0 .../Examples.Durham/graph-vertex-outbound | 0 .../Examples.Durham/graph-vertex-properties | 0 .../Examples.Durham/graph-vertex-set-property | 0 .../Examples.Durham/graph25 | 0 .../Examples.Durham/graph26 | 0 .../Examples.Durham/jsunity1 | 0 .../Examples.Durham/jsunity2 | 0 .../Examples.Durham/modules-require-1 | 0 .../Examples.Durham/modules-require-2 | 0 .../Examples.Durham/shell-collection-count | 0 .../Examples.Durham/shell-edge-edges | 0 .../Examples.Durham/shell-edge-in-edges | 0 .../Examples.Durham/shell-edge-out-edges | 0 .../shell-index-create-hash-index | 0 .../shell-index-create-unique-constraint | 0 .../Examples.Durham/shell-read-document | 0 .../shell-read-document-bad-handle | 0 .../shell-read-document-not-found | 0 .../shell-simple-query-first-example | 0 .../Examples.Durham/shell_collection-drop | 0 .../Examples.Durham/shell_collection-drop-db | 0 .../shell_collection-drop-name-db | 0 .../Examples.Durham/shell_collection-figures | 0 .../Examples.Durham/shell_collection-load | 0 .../shell_collection-properties | 0 .../shell_collection-properties-change | 0 .../Examples.Durham/shell_collection-rename | 0 .../Examples.Durham/shell_collection-truncate | 0 .../shell_collection-truncate-db | 0 .../shell_collection-truncate-name-db | 0 .../Examples.Durham/shell_collection-unload | 0 .../Examples.Durham/shell_create-collection | 0 .../shell_create-collection-properties | 0 .../Examples.Durham/shell_create-document | 0 .../Examples.Durham/shell_create-edge | 0 .../Examples.Durham/shell_index-drop-index | 0 .../Examples.Durham/shell_index-drop-index-db | 0 .../Examples.Durham/shell_index-read | 0 .../Examples.Durham/shell_index-read-all | 0 .../Examples.Durham/shell_index-read-db | 0 .../Examples.Durham/shell_read-collection-all | 0 .../Examples.Durham/shell_read-collection-id | 0 .../shell_read-collection-name | 0 .../shell_read-collection-short-cut | 0 .../shell_read-collection-unknown | 0 .../Examples.Durham/shell_read-document-db | 0 .../Examples.Durham/shell_remove-document | 0 .../shell_remove-document-conflict | 0 .../shell_remove-document-conflict-db | 0 .../Examples.Durham/shell_remove-document-db | 0 .../Examples.Durham/shell_replace-document | 0 .../Examples.Durham/shell_replace-document-db | 0 .../shell_replace-document-handle | 0 .../Examples.Durham/shell_update-document | 0 .../shell_update-document-array | 0 .../Examples.Durham/shell_update-document-db | 0 .../shell_update-document-handle | 0 .../shell_update-document-keep-null | 0 .../simple-query-closed-range-to-array | 0 .../Examples.Durham/simple-query-geo | 0 .../Examples.Durham/simple-query-near | 0 .../Examples.Durham/simple-query-near2 | 0 .../simple-query-range-to-array | 0 .../Examples.Durham/simple-query-within | 0 .../Examples.Durham/simple10 | 0 .../Examples.Durham/simple18 | 0 .../Examples.Durham/simple19 | 0 .../Examples.Durham/simple2 | 0 .../Examples.Durham/simple3 | 0 .../Examples.Durham/simple4 | 0 .../Examples.Durham/simple5 | 0 .../Examples.Durham/simple7 | 0 .../Examples.Durham/simple8 | 0 .../Examples.Durham/simple9 | 0 .../Examples.Durham/system1 | 0 {Doxygen => Documentation}/Examples.Fyn/conf1 | 0 {Doxygen => Documentation}/Examples.Fyn/conf2 | 0 {Doxygen => Documentation}/Examples.Fyn/conf3 | 0 {Doxygen => Documentation}/Examples.Fyn/conf4 | 0 {Doxygen => Documentation}/Examples.Fyn/conf5 | 0 Documentation/Makefile.doxygen | 127 + .../Scripts/arangodb.css | 0 .../Scripts/arangodb_footer.html | 0 .../Scripts/arangodb_header.html | 0 .../Scripts/findverb.sh | 0 {Doxygen => Documentation}/Scripts/fixmd.sh | 0 .../Scripts/html2html.sh | 0 {Doxygen => Documentation}/Scripts/js2doxy.py | 0 {Doxygen => Documentation}/Scripts/tex2tex.py | 0 {Doxygen => Documentation}/Scripts/xml2md.py | 0 {Doxygen => Documentation}/arango-html.doxy | 0 {Doxygen => Documentation}/arango-latex.doxy | 0 {Doxygen => Documentation}/arango-xml.doxy | 0 {Doxygen => Documentation}/arango.template.in | 0 .../latex/dba-manual.tex | 0 {Doxygen => Documentation}/latex/header.tex | 0 .../latex/images/fe1.png | Bin .../latex/imp-manual.tex | 0 .../latex/implementor-manual.tex | 0 .../latex/install-manual.tex | 0 .../latex/ref-manual.tex | 0 .../latex/user-manual.tex | 0 {Doxygen => Documentation}/web/images/fe1.png | Bin .../web/images/logo_arangodb.png | Bin Doxygen/Makefile.doxygen | 127 - .../Contribute}/Makefile.ubuntu | 0 Installation/{ => Linux}/rc.arangodb.Centos | 0 Installation/{ => Linux}/rc.arangodb.Debian | 0 Installation/{ => Linux}/rc.arangodb.OpenSuSE | 0 Installation/{ => Linux}/rc.arangodb.Ubuntu | 0 Installation/{ => MacOSX}/org.arangodb.plist | 0 Makefile.local => Installation/Makefile.local | 0 Installation/arangod-local.conf | 24 - build.sh => Installation/build.sh | 0 coverage.sh => Installation/coverage.sh | 0 Installation/{ => epm}/arangodb.list | 2 +- packetize.sh => Installation/packetize.sh | 10 +- release.sh => Installation/release.sh | 1 - unittests.sh => Installation/unittests.sh | 0 Makefile.am | 137 +- Makefile.in | 618 ++-- README.md | 34 +- UnitTests/Makefile.files | 140 +- aclocal.m4 | 359 +- arangod/Documentation/install-manual.dox | 111 +- arangod/MRServer/ApplicationMR.cpp | 56 +- arangod/RestServer/ArangoServer.cpp | 100 +- arangod/RestServer/ArangoServer.h | 2 +- arangod/V8Server/ApplicationV8.cpp | 79 +- arangod/V8Server/ApplicationV8.h | 6 + arangoirb/MRClient/arangoirb.cpp | 285 +- arangosh/ArangoShell/ArangoClient.cpp | 674 ++++ arangosh/ArangoShell/ArangoClient.h | 554 +++ arangosh/Makefile.files | 2 + arangosh/V8Client/arangoimp.cpp | 250 +- arangosh/V8Client/arangosh.cpp | 586 +-- build.c | 5 - config/compile | 227 +- config/config.guess | 375 +- config/config.sub | 204 +- config/depcomp | 189 +- config/install-sh | 35 +- config/missing | 148 +- configure | 3280 +++++++++-------- configure.ac | 196 +- etc/relative/arangod.conf | 26 + etc/relative/arangosh.conf | 2 + {m4 => js}/Makefile.javascript | 0 js/client/client.js | 21 +- js/client/js-client.h | 21 +- js/common/bootstrap/js-modules.h | 23 +- js/common/bootstrap/js-print.h | 6 +- js/common/bootstrap/modules.js | 23 +- js/common/bootstrap/print.js | 6 +- lib/Admin/ApplicationAdminServer.cpp | 35 +- lib/Admin/ApplicationAdminServer.h | 6 + lib/ApplicationServer/ApplicationServer.cpp | 10 +- lib/BasicsC/local-configuration.h.in | 12 - lib/BasicsC/operating-system.h | 3 + {m4 => lib}/Makefile.bison | 20 +- {m4 => lib}/Makefile.flex | 20 +- {m4 => lib}/Makefile.protobuf | 22 +- m4/all-in-one.boost | 28 +- m4/all-in-one.libev | 43 +- m4/all-in-one.mruby | 35 +- m4/all-in-one.protobuf | 36 +- m4/all-in-one.v8 | 30 +- m4/configure.32bit | 46 - m4/configure.basics | 79 +- m4/configure.bison | 75 +- m4/configure.dot | 27 +- m4/configure.flex | 75 +- m4/external.boost | 52 +- m4/external.libev | 96 +- m4/external.math | 24 +- m4/external.ncurses | 122 +- m4/external.openssl | 11 +- m4/external.protobuf | 127 + m4/external.readline | 63 +- m4/external.v8 | 56 +- {m4 => mr}/Makefile.mruby | 0 {bin => utils}/arango-dfdb.in | 0 {bin => utils}/arango-password.in | 0 423 files changed, 5490 insertions(+), 4823 deletions(-) rename {m4 => 3rdParty}/Makefile.all-in-one-libev (54%) rename {m4 => 3rdParty}/Makefile.all-in-one-mruby (77%) rename {m4 => 3rdParty}/Makefile.all-in-one-protobuf (81%) rename {m4 => 3rdParty}/Makefile.all-in-one-v8 (77%) rename {m4 => 3rdParty}/Makefile.all-in-one-zeromq (87%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlarithmetic (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlattributenamesvalid (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlbind (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlbindcollection (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcollect (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcollect2 (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcollectsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcomments (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcompareexamples1 (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcompareexamples2 (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcompareexamples3 (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlcomparison (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqldocumentaccess (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqldocumentempty (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlexample-collection (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlexample-grouping (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlexample-join (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlexample-simple (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlexpansion (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfilter (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfiltermultiple (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfiltersyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfor (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfornested (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlforstatic (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlforsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfunctions (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlfunctionsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllet (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllet2 (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlletsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllimit (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllimitsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllistaccess (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllistempty (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllistvalues (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqllogical (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlnamebackticks (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlnamedattributes (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlnull (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlnull2 (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlnumbers (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlpaths (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlqueryintro (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlqueryresultempty (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlqueryresulthomogenuous (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlqueryresultinhomogenuous (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlqueryresultscalar (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlreturn (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlreturnsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlsort (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlsortsyntax (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlstrings (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlsubquery (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlternary (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqltypeorder (100%) rename {Doxygen => Documentation}/Examples.Ahuacatl/aqlvariablenames (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-all-collections (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-bad-handle (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-create-collection (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-delete-collection-identifier (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-delete-collection-name (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-get-collection-count (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-get-collection-figures (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-get-collection-identifier (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-get-collection-name (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-identifier-load (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-identifier-properties-sync (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-identifier-rename (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-identifier-truncate (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-collection-identifier-unload (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-create-for-limit-return (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-create-for-limit-return-cont (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-create-for-limit-return-cont2 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-create-for-limit-return-cont3 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-create-for-limit-return-single (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-delete (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-invalid-cursor-identifier (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-missing-body (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-missing-cursor-identifier (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-cursor-unknown-collection (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-explain-invalid (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-explain-valid (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-import-documents (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-import-headers (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-all-indexes (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-geo-latitude-longitude (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-geo-location (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-new-cap-constraint (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-new-hash-index (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-new-skiplist (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-new-unique-constraint (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-create-new-unique-skiplist (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-delete-unique-skiplist (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-index-primary-index (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-query-invalid (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-query-valid (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-all-skip-limit (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-by-example1 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-by-example2 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-by-example3 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-first-example (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-first-example-not-found (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-near (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-near-distance (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-range (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-within (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api-simple-within-distance (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api_database1 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api_database2 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api_database3 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api_database4 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/api_database5 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/arangosh-options (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/arangosh-start (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/arangosh-start-full (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/connection-statistics (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/connection-statistics-current (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/document1 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_delete-key-bad (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_delete-key-ok (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_delete-key-request (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_get-key-bad (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_get-key-ok (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_get-key-request (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_get-keys-bad (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_get-keys-ok (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_get-keys-request (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_post-key-bad (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_post-key-ok (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_post-key-request (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_put-key-bad (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_put-key-ok (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/key-value_put-key-request (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/openssl-ciphers (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/openssl-options (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/option-database-directory (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/option-server-endpoint (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/querypost (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/querypostfail (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/request-statistics (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/request-statistics-current (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document-accept (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document-bad-json (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document-create-collection (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document-named-collection (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document-new-named-collection (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-create-document-unknown-cid (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-delete-document (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-delete-document-if-match-other (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-delete-document-unknown-handle (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-edge-create-edge (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-edge-read-edge (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-edge-read-edges-any (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-edge-read-edges-in (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-edge-read-edges-out (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-patch-document (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-read-document (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-read-document-all (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-read-document-head (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-read-document-if-none-match (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-read-document-unknown-handle (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-update-document (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-update-document-if-match-other (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-update-document-if-match-other-last-write (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-update-document-rev-other (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/rest-update-document-unknown-handle (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/server-keyfile (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/server-keyfile-openssl (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/start-emergency-console (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/startup1 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/supervisor (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/supervisor-ps1 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/supervisor-ps2 (100%) rename {Doxygen => Documentation}/Examples.ArangoDB/user-document (100%) rename {Doxygen => Documentation}/Examples.Durham/action1 (100%) rename {Doxygen => Documentation}/Examples.Durham/action2 (100%) rename {Doxygen => Documentation}/Examples.Durham/action3 (100%) rename {Doxygen => Documentation}/Examples.Durham/action4 (100%) rename {Doxygen => Documentation}/Examples.Durham/arangoimp-data-csv (100%) rename {Doxygen => Documentation}/Examples.Durham/arangoimp-data-json (100%) rename {Doxygen => Documentation}/Examples.Durham/arangosh-all-documents (100%) rename {Doxygen => Documentation}/Examples.Durham/arangosh-create-collection (100%) rename {Doxygen => Documentation}/Examples.Durham/arangosh-db (100%) rename {Doxygen => Documentation}/Examples.Durham/arangosh-save-documents (100%) rename {Doxygen => Documentation}/Examples.Durham/arangosh-unload-collection (100%) rename {Doxygen => Documentation}/Examples.Durham/demo1 (100%) rename {Doxygen => Documentation}/Examples.Durham/ensure-cap-constraint (100%) rename {Doxygen => Documentation}/Examples.Durham/ensure-geo-index-array (100%) rename {Doxygen => Documentation}/Examples.Durham/ensure-geo-index-list (100%) rename {Doxygen => Documentation}/Examples.Durham/five1 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent14 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent36 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent37 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent38 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent39 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent40 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent47 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent48 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent49 (100%) rename {Doxygen => Documentation}/Examples.Durham/fluent50 (100%) rename {Doxygen => Documentation}/Examples.Durham/geojs1 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-constructor (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-get-id (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-get-in-vertex (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-get-label (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-get-out-vertex (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-get-property (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-get-property-keys (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-properties (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-edge-set-property (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-add-edge (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-add-edge2 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-add-vertex (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-add-vertex2 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-get-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-get-vertex (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-get-vertices (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-remove-edge (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-graph-remove-vertex (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-setup (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-add-in-edge (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-add-in-edge2 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-add-out-edge (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-add-out-edge2 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-add-out-edge3 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-get-id (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-get-in-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-get-out-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-get-property (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-get-property-keys (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-inbound (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-outbound (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-properties (100%) rename {Doxygen => Documentation}/Examples.Durham/graph-vertex-set-property (100%) rename {Doxygen => Documentation}/Examples.Durham/graph25 (100%) rename {Doxygen => Documentation}/Examples.Durham/graph26 (100%) rename {Doxygen => Documentation}/Examples.Durham/jsunity1 (100%) rename {Doxygen => Documentation}/Examples.Durham/jsunity2 (100%) rename {Doxygen => Documentation}/Examples.Durham/modules-require-1 (100%) rename {Doxygen => Documentation}/Examples.Durham/modules-require-2 (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-collection-count (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-edge-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-edge-in-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-edge-out-edges (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-index-create-hash-index (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-index-create-unique-constraint (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-read-document (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-read-document-bad-handle (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-read-document-not-found (100%) rename {Doxygen => Documentation}/Examples.Durham/shell-simple-query-first-example (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-drop (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-drop-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-drop-name-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-figures (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-load (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-properties (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-properties-change (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-rename (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-truncate (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-truncate-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-truncate-name-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_collection-unload (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_create-collection (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_create-collection-properties (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_create-document (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_create-edge (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_index-drop-index (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_index-drop-index-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_index-read (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_index-read-all (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_index-read-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_read-collection-all (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_read-collection-id (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_read-collection-name (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_read-collection-short-cut (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_read-collection-unknown (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_read-document-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_remove-document (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_remove-document-conflict (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_remove-document-conflict-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_remove-document-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_replace-document (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_replace-document-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_replace-document-handle (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_update-document (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_update-document-array (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_update-document-db (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_update-document-handle (100%) rename {Doxygen => Documentation}/Examples.Durham/shell_update-document-keep-null (100%) rename {Doxygen => Documentation}/Examples.Durham/simple-query-closed-range-to-array (100%) rename {Doxygen => Documentation}/Examples.Durham/simple-query-geo (100%) rename {Doxygen => Documentation}/Examples.Durham/simple-query-near (100%) rename {Doxygen => Documentation}/Examples.Durham/simple-query-near2 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple-query-range-to-array (100%) rename {Doxygen => Documentation}/Examples.Durham/simple-query-within (100%) rename {Doxygen => Documentation}/Examples.Durham/simple10 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple18 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple19 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple2 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple3 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple4 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple5 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple7 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple8 (100%) rename {Doxygen => Documentation}/Examples.Durham/simple9 (100%) rename {Doxygen => Documentation}/Examples.Durham/system1 (100%) rename {Doxygen => Documentation}/Examples.Fyn/conf1 (100%) rename {Doxygen => Documentation}/Examples.Fyn/conf2 (100%) rename {Doxygen => Documentation}/Examples.Fyn/conf3 (100%) rename {Doxygen => Documentation}/Examples.Fyn/conf4 (100%) rename {Doxygen => Documentation}/Examples.Fyn/conf5 (100%) create mode 100644 Documentation/Makefile.doxygen rename {Doxygen => Documentation}/Scripts/arangodb.css (100%) rename {Doxygen => Documentation}/Scripts/arangodb_footer.html (100%) rename {Doxygen => Documentation}/Scripts/arangodb_header.html (100%) rename {Doxygen => Documentation}/Scripts/findverb.sh (100%) rename {Doxygen => Documentation}/Scripts/fixmd.sh (100%) rename {Doxygen => Documentation}/Scripts/html2html.sh (100%) rename {Doxygen => Documentation}/Scripts/js2doxy.py (100%) rename {Doxygen => Documentation}/Scripts/tex2tex.py (100%) rename {Doxygen => Documentation}/Scripts/xml2md.py (100%) rename {Doxygen => Documentation}/arango-html.doxy (100%) rename {Doxygen => Documentation}/arango-latex.doxy (100%) rename {Doxygen => Documentation}/arango-xml.doxy (100%) rename {Doxygen => Documentation}/arango.template.in (100%) rename {Doxygen => Documentation}/latex/dba-manual.tex (100%) rename {Doxygen => Documentation}/latex/header.tex (100%) rename {Doxygen => Documentation}/latex/images/fe1.png (100%) rename {Doxygen => Documentation}/latex/imp-manual.tex (100%) rename {Doxygen => Documentation}/latex/implementor-manual.tex (100%) rename {Doxygen => Documentation}/latex/install-manual.tex (100%) rename {Doxygen => Documentation}/latex/ref-manual.tex (100%) rename {Doxygen => Documentation}/latex/user-manual.tex (100%) rename {Doxygen => Documentation}/web/images/fe1.png (100%) rename {Doxygen => Documentation}/web/images/logo_arangodb.png (100%) delete mode 100644 Doxygen/Makefile.doxygen rename {Contribute => Installation/Contribute}/Makefile.ubuntu (100%) rename Installation/{ => Linux}/rc.arangodb.Centos (100%) rename Installation/{ => Linux}/rc.arangodb.Debian (100%) rename Installation/{ => Linux}/rc.arangodb.OpenSuSE (100%) rename Installation/{ => Linux}/rc.arangodb.Ubuntu (100%) rename Installation/{ => MacOSX}/org.arangodb.plist (100%) rename Makefile.local => Installation/Makefile.local (100%) delete mode 100644 Installation/arangod-local.conf rename build.sh => Installation/build.sh (100%) rename coverage.sh => Installation/coverage.sh (100%) mode change 100644 => 100755 rename Installation/{ => epm}/arangodb.list (98%) rename packetize.sh => Installation/packetize.sh (98%) rename release.sh => Installation/release.sh (99%) rename unittests.sh => Installation/unittests.sh (100%) create mode 100644 arangosh/ArangoShell/ArangoClient.cpp create mode 100644 arangosh/ArangoShell/ArangoClient.h delete mode 100644 build.c create mode 100644 etc/relative/arangod.conf create mode 100644 etc/relative/arangosh.conf rename {m4 => js}/Makefile.javascript (100%) rename {m4 => lib}/Makefile.bison (79%) rename {m4 => lib}/Makefile.flex (79%) rename {m4 => lib}/Makefile.protobuf (71%) delete mode 100644 m4/configure.32bit create mode 100644 m4/external.protobuf rename {m4 => mr}/Makefile.mruby (100%) rename {bin => utils}/arango-dfdb.in (100%) rename {bin => utils}/arango-password.in (100%) mode change 100755 => 100644 diff --git a/.gitignore b/.gitignore index 26aaac25a1..b4aad3efb1 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,7 @@ 3rdParty/czmq-1.1.0/src/czmq_selftest 3rdParty/czmq-1.1.0/src/libczmq.pc 3rdParty/czmq-1.1.0/src/platform.h -3rdParty/libev/ARCH.x64 +3rdParty/libev/BUILD 3rdParty/libev/libtool 3rdParty/mruby/bin/mrbc 3rdParty/mruby/bin/mruby @@ -88,18 +88,19 @@ config.status configure config/version.sh COVERAGE -.czmq-build-64 +.czmq-build-* .deps .dirstamp -Doxygen/arango.doxy -Doxygen/html/ -Doxygen/js -Doxygen/latex/ -Doxygen/manuals -Doxygen/.setup-directories -Doxygen/web/*.html -Doxygen/wiki/ -Doxygen/xml/ +Documentation/arango.template +Documentation/arango.doxy +Documentation/html/ +Documentation/js +Documentation/latex/ +Documentation/manuals +Documentation/.setup-directories +Documentation/web/*.html +Documentation/wiki/ +Documentation/xml/ .DS_Store *.gcda *.gcno @@ -140,7 +141,7 @@ Makefile.local *.old out *.Po -.protobuf-build-64 +.protobuf-build-* *.pyc .setup-js-directories .setup-mr-directories @@ -162,4 +163,4 @@ UnitTests/Philadelphia/Makefile.py UnitTests/Philadelphia/Runner.cpp .v8-build-* VC++ -.zeromq-build-64 +.zeromq-build-* diff --git a/m4/Makefile.all-in-one-libev b/3rdParty/Makefile.all-in-one-libev similarity index 54% rename from m4/Makefile.all-in-one-libev rename to 3rdParty/Makefile.all-in-one-libev index 7daeb173d5..3e894ee27a 100644 --- a/m4/Makefile.all-in-one-libev +++ b/3rdParty/Makefile.all-in-one-libev @@ -1,29 +1,13 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief libev ################################################################################ -if ENABLE_64BIT -LIBEV_BUILD_VERSION=ARCH.x64 -endif - -if ENABLE_32BIT -LIBEV_BUILD_VERSION=ARCH.ia32 -endif - -if ENABLE_FORCE_32BIT -LIBEV_BUILD_CFLAGS_X=-m32 -O2 -g -LIBEV_BUILD_LDFLAGS_X=-m32 -else -LIBEV_BUILD_CFLAGS_X=-O2 -g -LIBEV_BUILD_LDFLAGS_X= -endif - BUILT_SOURCES += @LIBEV_LIBS@ @LIBEV_LIBS@: .libev-build-@TRI_BITS@ @@ -35,9 +19,9 @@ BUILT_SOURCES += @LIBEV_LIBS@ @echo "--------------------------------------------------------------------------------" @echo - mkdir @top_srcdir@/3rdParty/libev/$(LIBEV_BUILD_VERSION) || true - cd @top_srcdir@/3rdParty/libev/$(LIBEV_BUILD_VERSION) && CFLAGS="$(LIBEV_BUILD_CFLAGS_X)" orig_CFLAGS="$(LIBEV_BUILD_CFLAGS_X)" LDFLAGS="$(LIBEV_BUILD_LDFLAGS_X)" ../configure --disable-shared - cd @top_srcdir@/3rdParty/libev/$(LIBEV_BUILD_VERSION) && $(MAKE) + mkdir @top_srcdir@/3rdParty/libev/BUILD || true + cd @top_srcdir@/3rdParty/libev/BUILD && ../configure --disable-shared + cd @top_srcdir@/3rdParty/libev/BUILD && $(MAKE) touch .libev-build-@TRI_BITS@ @@ -47,9 +31,9 @@ BUILT_SOURCES += @LIBEV_LIBS@ @echo "--------------------------------------------------------------------------------" @echo -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/m4/Makefile.all-in-one-mruby b/3rdParty/Makefile.all-in-one-mruby similarity index 77% rename from m4/Makefile.all-in-one-mruby rename to 3rdParty/Makefile.all-in-one-mruby index 4adb0431ae..76e2ebd266 100644 --- a/m4/Makefile.all-in-one-mruby +++ b/3rdParty/Makefile.all-in-one-mruby @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief mruby @@ -29,9 +29,9 @@ BUILT_SOURCES += @MRUBY_LIBS@ @echo "--------------------------------------------------------------------------------" @echo -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/m4/Makefile.all-in-one-protobuf b/3rdParty/Makefile.all-in-one-protobuf similarity index 81% rename from m4/Makefile.all-in-one-protobuf rename to 3rdParty/Makefile.all-in-one-protobuf index 492ceb3558..cbe0cd55ec 100644 --- a/m4/Makefile.all-in-one-protobuf +++ b/3rdParty/Makefile.all-in-one-protobuf @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief Protobuf @@ -36,9 +36,9 @@ PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD @echo "--------------------------------------------------------------------------------" @echo -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/m4/Makefile.all-in-one-v8 b/3rdParty/Makefile.all-in-one-v8 similarity index 77% rename from m4/Makefile.all-in-one-v8 rename to 3rdParty/Makefile.all-in-one-v8 index 8b3eb0de1c..6f1a4a5fb4 100644 --- a/m4/Makefile.all-in-one-v8 +++ b/3rdParty/Makefile.all-in-one-v8 @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief V8 @@ -29,9 +29,9 @@ BUILT_SOURCES += @V8_LIBS@ @echo "--------------------------------------------------------------------------------" @echo -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/m4/Makefile.all-in-one-zeromq b/3rdParty/Makefile.all-in-one-zeromq similarity index 87% rename from m4/Makefile.all-in-one-zeromq rename to 3rdParty/Makefile.all-in-one-zeromq index 47e5ff221e..4822ad7c85 100644 --- a/m4/Makefile.all-in-one-zeromq +++ b/3rdParty/Makefile.all-in-one-zeromq @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief ZeroMQ @@ -62,9 +62,9 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD @echo "--------------------------------------------------------------------------------" @echo -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/Doxygen/Examples.Ahuacatl/aqlarithmetic b/Documentation/Examples.Ahuacatl/aqlarithmetic similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlarithmetic rename to Documentation/Examples.Ahuacatl/aqlarithmetic diff --git a/Doxygen/Examples.Ahuacatl/aqlattributenamesvalid b/Documentation/Examples.Ahuacatl/aqlattributenamesvalid similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlattributenamesvalid rename to Documentation/Examples.Ahuacatl/aqlattributenamesvalid diff --git a/Doxygen/Examples.Ahuacatl/aqlbind b/Documentation/Examples.Ahuacatl/aqlbind similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlbind rename to Documentation/Examples.Ahuacatl/aqlbind diff --git a/Doxygen/Examples.Ahuacatl/aqlbindcollection b/Documentation/Examples.Ahuacatl/aqlbindcollection similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlbindcollection rename to Documentation/Examples.Ahuacatl/aqlbindcollection diff --git a/Doxygen/Examples.Ahuacatl/aqlcollect b/Documentation/Examples.Ahuacatl/aqlcollect similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcollect rename to Documentation/Examples.Ahuacatl/aqlcollect diff --git a/Doxygen/Examples.Ahuacatl/aqlcollect2 b/Documentation/Examples.Ahuacatl/aqlcollect2 similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcollect2 rename to Documentation/Examples.Ahuacatl/aqlcollect2 diff --git a/Doxygen/Examples.Ahuacatl/aqlcollectsyntax b/Documentation/Examples.Ahuacatl/aqlcollectsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcollectsyntax rename to Documentation/Examples.Ahuacatl/aqlcollectsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqlcomments b/Documentation/Examples.Ahuacatl/aqlcomments similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcomments rename to Documentation/Examples.Ahuacatl/aqlcomments diff --git a/Doxygen/Examples.Ahuacatl/aqlcompareexamples1 b/Documentation/Examples.Ahuacatl/aqlcompareexamples1 similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcompareexamples1 rename to Documentation/Examples.Ahuacatl/aqlcompareexamples1 diff --git a/Doxygen/Examples.Ahuacatl/aqlcompareexamples2 b/Documentation/Examples.Ahuacatl/aqlcompareexamples2 similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcompareexamples2 rename to Documentation/Examples.Ahuacatl/aqlcompareexamples2 diff --git a/Doxygen/Examples.Ahuacatl/aqlcompareexamples3 b/Documentation/Examples.Ahuacatl/aqlcompareexamples3 similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcompareexamples3 rename to Documentation/Examples.Ahuacatl/aqlcompareexamples3 diff --git a/Doxygen/Examples.Ahuacatl/aqlcomparison b/Documentation/Examples.Ahuacatl/aqlcomparison similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlcomparison rename to Documentation/Examples.Ahuacatl/aqlcomparison diff --git a/Doxygen/Examples.Ahuacatl/aqldocumentaccess b/Documentation/Examples.Ahuacatl/aqldocumentaccess similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqldocumentaccess rename to Documentation/Examples.Ahuacatl/aqldocumentaccess diff --git a/Doxygen/Examples.Ahuacatl/aqldocumentempty b/Documentation/Examples.Ahuacatl/aqldocumentempty similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqldocumentempty rename to Documentation/Examples.Ahuacatl/aqldocumentempty diff --git a/Doxygen/Examples.Ahuacatl/aqlexample-collection b/Documentation/Examples.Ahuacatl/aqlexample-collection similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlexample-collection rename to Documentation/Examples.Ahuacatl/aqlexample-collection diff --git a/Doxygen/Examples.Ahuacatl/aqlexample-grouping b/Documentation/Examples.Ahuacatl/aqlexample-grouping similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlexample-grouping rename to Documentation/Examples.Ahuacatl/aqlexample-grouping diff --git a/Doxygen/Examples.Ahuacatl/aqlexample-join b/Documentation/Examples.Ahuacatl/aqlexample-join similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlexample-join rename to Documentation/Examples.Ahuacatl/aqlexample-join diff --git a/Doxygen/Examples.Ahuacatl/aqlexample-simple b/Documentation/Examples.Ahuacatl/aqlexample-simple similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlexample-simple rename to Documentation/Examples.Ahuacatl/aqlexample-simple diff --git a/Doxygen/Examples.Ahuacatl/aqlexpansion b/Documentation/Examples.Ahuacatl/aqlexpansion similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlexpansion rename to Documentation/Examples.Ahuacatl/aqlexpansion diff --git a/Doxygen/Examples.Ahuacatl/aqlfilter b/Documentation/Examples.Ahuacatl/aqlfilter similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfilter rename to Documentation/Examples.Ahuacatl/aqlfilter diff --git a/Doxygen/Examples.Ahuacatl/aqlfiltermultiple b/Documentation/Examples.Ahuacatl/aqlfiltermultiple similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfiltermultiple rename to Documentation/Examples.Ahuacatl/aqlfiltermultiple diff --git a/Doxygen/Examples.Ahuacatl/aqlfiltersyntax b/Documentation/Examples.Ahuacatl/aqlfiltersyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfiltersyntax rename to Documentation/Examples.Ahuacatl/aqlfiltersyntax diff --git a/Doxygen/Examples.Ahuacatl/aqlfor b/Documentation/Examples.Ahuacatl/aqlfor similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfor rename to Documentation/Examples.Ahuacatl/aqlfor diff --git a/Doxygen/Examples.Ahuacatl/aqlfornested b/Documentation/Examples.Ahuacatl/aqlfornested similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfornested rename to Documentation/Examples.Ahuacatl/aqlfornested diff --git a/Doxygen/Examples.Ahuacatl/aqlforstatic b/Documentation/Examples.Ahuacatl/aqlforstatic similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlforstatic rename to Documentation/Examples.Ahuacatl/aqlforstatic diff --git a/Doxygen/Examples.Ahuacatl/aqlforsyntax b/Documentation/Examples.Ahuacatl/aqlforsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlforsyntax rename to Documentation/Examples.Ahuacatl/aqlforsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqlfunctions b/Documentation/Examples.Ahuacatl/aqlfunctions similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfunctions rename to Documentation/Examples.Ahuacatl/aqlfunctions diff --git a/Doxygen/Examples.Ahuacatl/aqlfunctionsyntax b/Documentation/Examples.Ahuacatl/aqlfunctionsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlfunctionsyntax rename to Documentation/Examples.Ahuacatl/aqlfunctionsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqllet b/Documentation/Examples.Ahuacatl/aqllet similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllet rename to Documentation/Examples.Ahuacatl/aqllet diff --git a/Doxygen/Examples.Ahuacatl/aqllet2 b/Documentation/Examples.Ahuacatl/aqllet2 similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllet2 rename to Documentation/Examples.Ahuacatl/aqllet2 diff --git a/Doxygen/Examples.Ahuacatl/aqlletsyntax b/Documentation/Examples.Ahuacatl/aqlletsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlletsyntax rename to Documentation/Examples.Ahuacatl/aqlletsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqllimit b/Documentation/Examples.Ahuacatl/aqllimit similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllimit rename to Documentation/Examples.Ahuacatl/aqllimit diff --git a/Doxygen/Examples.Ahuacatl/aqllimitsyntax b/Documentation/Examples.Ahuacatl/aqllimitsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllimitsyntax rename to Documentation/Examples.Ahuacatl/aqllimitsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqllistaccess b/Documentation/Examples.Ahuacatl/aqllistaccess similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllistaccess rename to Documentation/Examples.Ahuacatl/aqllistaccess diff --git a/Doxygen/Examples.Ahuacatl/aqllistempty b/Documentation/Examples.Ahuacatl/aqllistempty similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllistempty rename to Documentation/Examples.Ahuacatl/aqllistempty diff --git a/Doxygen/Examples.Ahuacatl/aqllistvalues b/Documentation/Examples.Ahuacatl/aqllistvalues similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllistvalues rename to Documentation/Examples.Ahuacatl/aqllistvalues diff --git a/Doxygen/Examples.Ahuacatl/aqllogical b/Documentation/Examples.Ahuacatl/aqllogical similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqllogical rename to Documentation/Examples.Ahuacatl/aqllogical diff --git a/Doxygen/Examples.Ahuacatl/aqlnamebackticks b/Documentation/Examples.Ahuacatl/aqlnamebackticks similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlnamebackticks rename to Documentation/Examples.Ahuacatl/aqlnamebackticks diff --git a/Doxygen/Examples.Ahuacatl/aqlnamedattributes b/Documentation/Examples.Ahuacatl/aqlnamedattributes similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlnamedattributes rename to Documentation/Examples.Ahuacatl/aqlnamedattributes diff --git a/Doxygen/Examples.Ahuacatl/aqlnull b/Documentation/Examples.Ahuacatl/aqlnull similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlnull rename to Documentation/Examples.Ahuacatl/aqlnull diff --git a/Doxygen/Examples.Ahuacatl/aqlnull2 b/Documentation/Examples.Ahuacatl/aqlnull2 similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlnull2 rename to Documentation/Examples.Ahuacatl/aqlnull2 diff --git a/Doxygen/Examples.Ahuacatl/aqlnumbers b/Documentation/Examples.Ahuacatl/aqlnumbers similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlnumbers rename to Documentation/Examples.Ahuacatl/aqlnumbers diff --git a/Doxygen/Examples.Ahuacatl/aqlpaths b/Documentation/Examples.Ahuacatl/aqlpaths similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlpaths rename to Documentation/Examples.Ahuacatl/aqlpaths diff --git a/Doxygen/Examples.Ahuacatl/aqlqueryintro b/Documentation/Examples.Ahuacatl/aqlqueryintro similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlqueryintro rename to Documentation/Examples.Ahuacatl/aqlqueryintro diff --git a/Doxygen/Examples.Ahuacatl/aqlqueryresultempty b/Documentation/Examples.Ahuacatl/aqlqueryresultempty similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlqueryresultempty rename to Documentation/Examples.Ahuacatl/aqlqueryresultempty diff --git a/Doxygen/Examples.Ahuacatl/aqlqueryresulthomogenuous b/Documentation/Examples.Ahuacatl/aqlqueryresulthomogenuous similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlqueryresulthomogenuous rename to Documentation/Examples.Ahuacatl/aqlqueryresulthomogenuous diff --git a/Doxygen/Examples.Ahuacatl/aqlqueryresultinhomogenuous b/Documentation/Examples.Ahuacatl/aqlqueryresultinhomogenuous similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlqueryresultinhomogenuous rename to Documentation/Examples.Ahuacatl/aqlqueryresultinhomogenuous diff --git a/Doxygen/Examples.Ahuacatl/aqlqueryresultscalar b/Documentation/Examples.Ahuacatl/aqlqueryresultscalar similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlqueryresultscalar rename to Documentation/Examples.Ahuacatl/aqlqueryresultscalar diff --git a/Doxygen/Examples.Ahuacatl/aqlreturn b/Documentation/Examples.Ahuacatl/aqlreturn similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlreturn rename to Documentation/Examples.Ahuacatl/aqlreturn diff --git a/Doxygen/Examples.Ahuacatl/aqlreturnsyntax b/Documentation/Examples.Ahuacatl/aqlreturnsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlreturnsyntax rename to Documentation/Examples.Ahuacatl/aqlreturnsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqlsort b/Documentation/Examples.Ahuacatl/aqlsort similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlsort rename to Documentation/Examples.Ahuacatl/aqlsort diff --git a/Doxygen/Examples.Ahuacatl/aqlsortsyntax b/Documentation/Examples.Ahuacatl/aqlsortsyntax similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlsortsyntax rename to Documentation/Examples.Ahuacatl/aqlsortsyntax diff --git a/Doxygen/Examples.Ahuacatl/aqlstrings b/Documentation/Examples.Ahuacatl/aqlstrings similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlstrings rename to Documentation/Examples.Ahuacatl/aqlstrings diff --git a/Doxygen/Examples.Ahuacatl/aqlsubquery b/Documentation/Examples.Ahuacatl/aqlsubquery similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlsubquery rename to Documentation/Examples.Ahuacatl/aqlsubquery diff --git a/Doxygen/Examples.Ahuacatl/aqlternary b/Documentation/Examples.Ahuacatl/aqlternary similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlternary rename to Documentation/Examples.Ahuacatl/aqlternary diff --git a/Doxygen/Examples.Ahuacatl/aqltypeorder b/Documentation/Examples.Ahuacatl/aqltypeorder similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqltypeorder rename to Documentation/Examples.Ahuacatl/aqltypeorder diff --git a/Doxygen/Examples.Ahuacatl/aqlvariablenames b/Documentation/Examples.Ahuacatl/aqlvariablenames similarity index 100% rename from Doxygen/Examples.Ahuacatl/aqlvariablenames rename to Documentation/Examples.Ahuacatl/aqlvariablenames diff --git a/Doxygen/Examples.ArangoDB/api-collection-all-collections b/Documentation/Examples.ArangoDB/api-collection-all-collections similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-all-collections rename to Documentation/Examples.ArangoDB/api-collection-all-collections diff --git a/Doxygen/Examples.ArangoDB/api-collection-bad-handle b/Documentation/Examples.ArangoDB/api-collection-bad-handle similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-bad-handle rename to Documentation/Examples.ArangoDB/api-collection-bad-handle diff --git a/Doxygen/Examples.ArangoDB/api-collection-create-collection b/Documentation/Examples.ArangoDB/api-collection-create-collection similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-create-collection rename to Documentation/Examples.ArangoDB/api-collection-create-collection diff --git a/Doxygen/Examples.ArangoDB/api-collection-delete-collection-identifier b/Documentation/Examples.ArangoDB/api-collection-delete-collection-identifier similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-delete-collection-identifier rename to Documentation/Examples.ArangoDB/api-collection-delete-collection-identifier diff --git a/Doxygen/Examples.ArangoDB/api-collection-delete-collection-name b/Documentation/Examples.ArangoDB/api-collection-delete-collection-name similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-delete-collection-name rename to Documentation/Examples.ArangoDB/api-collection-delete-collection-name diff --git a/Doxygen/Examples.ArangoDB/api-collection-get-collection-count b/Documentation/Examples.ArangoDB/api-collection-get-collection-count similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-get-collection-count rename to Documentation/Examples.ArangoDB/api-collection-get-collection-count diff --git a/Doxygen/Examples.ArangoDB/api-collection-get-collection-figures b/Documentation/Examples.ArangoDB/api-collection-get-collection-figures similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-get-collection-figures rename to Documentation/Examples.ArangoDB/api-collection-get-collection-figures diff --git a/Doxygen/Examples.ArangoDB/api-collection-get-collection-identifier b/Documentation/Examples.ArangoDB/api-collection-get-collection-identifier similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-get-collection-identifier rename to Documentation/Examples.ArangoDB/api-collection-get-collection-identifier diff --git a/Doxygen/Examples.ArangoDB/api-collection-get-collection-name b/Documentation/Examples.ArangoDB/api-collection-get-collection-name similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-get-collection-name rename to Documentation/Examples.ArangoDB/api-collection-get-collection-name diff --git a/Doxygen/Examples.ArangoDB/api-collection-identifier-load b/Documentation/Examples.ArangoDB/api-collection-identifier-load similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-identifier-load rename to Documentation/Examples.ArangoDB/api-collection-identifier-load diff --git a/Doxygen/Examples.ArangoDB/api-collection-identifier-properties-sync b/Documentation/Examples.ArangoDB/api-collection-identifier-properties-sync similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-identifier-properties-sync rename to Documentation/Examples.ArangoDB/api-collection-identifier-properties-sync diff --git a/Doxygen/Examples.ArangoDB/api-collection-identifier-rename b/Documentation/Examples.ArangoDB/api-collection-identifier-rename similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-identifier-rename rename to Documentation/Examples.ArangoDB/api-collection-identifier-rename diff --git a/Doxygen/Examples.ArangoDB/api-collection-identifier-truncate b/Documentation/Examples.ArangoDB/api-collection-identifier-truncate similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-identifier-truncate rename to Documentation/Examples.ArangoDB/api-collection-identifier-truncate diff --git a/Doxygen/Examples.ArangoDB/api-collection-identifier-unload b/Documentation/Examples.ArangoDB/api-collection-identifier-unload similarity index 100% rename from Doxygen/Examples.ArangoDB/api-collection-identifier-unload rename to Documentation/Examples.ArangoDB/api-collection-identifier-unload diff --git a/Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return b/Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return rename to Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return diff --git a/Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-cont b/Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-cont similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-cont rename to Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-cont diff --git a/Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-cont2 b/Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-cont2 similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-cont2 rename to Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-cont2 diff --git a/Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-cont3 b/Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-cont3 similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-cont3 rename to Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-cont3 diff --git a/Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-single b/Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-single similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-create-for-limit-return-single rename to Documentation/Examples.ArangoDB/api-cursor-create-for-limit-return-single diff --git a/Doxygen/Examples.ArangoDB/api-cursor-delete b/Documentation/Examples.ArangoDB/api-cursor-delete similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-delete rename to Documentation/Examples.ArangoDB/api-cursor-delete diff --git a/Doxygen/Examples.ArangoDB/api-cursor-invalid-cursor-identifier b/Documentation/Examples.ArangoDB/api-cursor-invalid-cursor-identifier similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-invalid-cursor-identifier rename to Documentation/Examples.ArangoDB/api-cursor-invalid-cursor-identifier diff --git a/Doxygen/Examples.ArangoDB/api-cursor-missing-body b/Documentation/Examples.ArangoDB/api-cursor-missing-body similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-missing-body rename to Documentation/Examples.ArangoDB/api-cursor-missing-body diff --git a/Doxygen/Examples.ArangoDB/api-cursor-missing-cursor-identifier b/Documentation/Examples.ArangoDB/api-cursor-missing-cursor-identifier similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-missing-cursor-identifier rename to Documentation/Examples.ArangoDB/api-cursor-missing-cursor-identifier diff --git a/Doxygen/Examples.ArangoDB/api-cursor-unknown-collection b/Documentation/Examples.ArangoDB/api-cursor-unknown-collection similarity index 100% rename from Doxygen/Examples.ArangoDB/api-cursor-unknown-collection rename to Documentation/Examples.ArangoDB/api-cursor-unknown-collection diff --git a/Doxygen/Examples.ArangoDB/api-explain-invalid b/Documentation/Examples.ArangoDB/api-explain-invalid similarity index 100% rename from Doxygen/Examples.ArangoDB/api-explain-invalid rename to Documentation/Examples.ArangoDB/api-explain-invalid diff --git a/Doxygen/Examples.ArangoDB/api-explain-valid b/Documentation/Examples.ArangoDB/api-explain-valid similarity index 100% rename from Doxygen/Examples.ArangoDB/api-explain-valid rename to Documentation/Examples.ArangoDB/api-explain-valid diff --git a/Doxygen/Examples.ArangoDB/api-import-documents b/Documentation/Examples.ArangoDB/api-import-documents similarity index 100% rename from Doxygen/Examples.ArangoDB/api-import-documents rename to Documentation/Examples.ArangoDB/api-import-documents diff --git a/Doxygen/Examples.ArangoDB/api-import-headers b/Documentation/Examples.ArangoDB/api-import-headers similarity index 100% rename from Doxygen/Examples.ArangoDB/api-import-headers rename to Documentation/Examples.ArangoDB/api-import-headers diff --git a/Doxygen/Examples.ArangoDB/api-index-all-indexes b/Documentation/Examples.ArangoDB/api-index-all-indexes similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-all-indexes rename to Documentation/Examples.ArangoDB/api-index-all-indexes diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude b/Documentation/Examples.ArangoDB/api-index-create-geo-latitude-longitude similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-geo-latitude-longitude rename to Documentation/Examples.ArangoDB/api-index-create-geo-latitude-longitude diff --git a/Doxygen/Examples.ArangoDB/api-index-create-geo-location b/Documentation/Examples.ArangoDB/api-index-create-geo-location similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-geo-location rename to Documentation/Examples.ArangoDB/api-index-create-geo-location diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-cap-constraint b/Documentation/Examples.ArangoDB/api-index-create-new-cap-constraint similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-new-cap-constraint rename to Documentation/Examples.ArangoDB/api-index-create-new-cap-constraint diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-hash-index b/Documentation/Examples.ArangoDB/api-index-create-new-hash-index similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-new-hash-index rename to Documentation/Examples.ArangoDB/api-index-create-new-hash-index diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-skiplist b/Documentation/Examples.ArangoDB/api-index-create-new-skiplist similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-new-skiplist rename to Documentation/Examples.ArangoDB/api-index-create-new-skiplist diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint b/Documentation/Examples.ArangoDB/api-index-create-new-unique-constraint similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-new-unique-constraint rename to Documentation/Examples.ArangoDB/api-index-create-new-unique-constraint diff --git a/Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist b/Documentation/Examples.ArangoDB/api-index-create-new-unique-skiplist similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-create-new-unique-skiplist rename to Documentation/Examples.ArangoDB/api-index-create-new-unique-skiplist diff --git a/Doxygen/Examples.ArangoDB/api-index-delete-unique-skiplist b/Documentation/Examples.ArangoDB/api-index-delete-unique-skiplist similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-delete-unique-skiplist rename to Documentation/Examples.ArangoDB/api-index-delete-unique-skiplist diff --git a/Doxygen/Examples.ArangoDB/api-index-primary-index b/Documentation/Examples.ArangoDB/api-index-primary-index similarity index 100% rename from Doxygen/Examples.ArangoDB/api-index-primary-index rename to Documentation/Examples.ArangoDB/api-index-primary-index diff --git a/Doxygen/Examples.ArangoDB/api-query-invalid b/Documentation/Examples.ArangoDB/api-query-invalid similarity index 100% rename from Doxygen/Examples.ArangoDB/api-query-invalid rename to Documentation/Examples.ArangoDB/api-query-invalid diff --git a/Doxygen/Examples.ArangoDB/api-query-valid b/Documentation/Examples.ArangoDB/api-query-valid similarity index 100% rename from Doxygen/Examples.ArangoDB/api-query-valid rename to Documentation/Examples.ArangoDB/api-query-valid diff --git a/Doxygen/Examples.ArangoDB/api-simple-all-skip-limit b/Documentation/Examples.ArangoDB/api-simple-all-skip-limit similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-all-skip-limit rename to Documentation/Examples.ArangoDB/api-simple-all-skip-limit diff --git a/Doxygen/Examples.ArangoDB/api-simple-by-example1 b/Documentation/Examples.ArangoDB/api-simple-by-example1 similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-by-example1 rename to Documentation/Examples.ArangoDB/api-simple-by-example1 diff --git a/Doxygen/Examples.ArangoDB/api-simple-by-example2 b/Documentation/Examples.ArangoDB/api-simple-by-example2 similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-by-example2 rename to Documentation/Examples.ArangoDB/api-simple-by-example2 diff --git a/Doxygen/Examples.ArangoDB/api-simple-by-example3 b/Documentation/Examples.ArangoDB/api-simple-by-example3 similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-by-example3 rename to Documentation/Examples.ArangoDB/api-simple-by-example3 diff --git a/Doxygen/Examples.ArangoDB/api-simple-first-example b/Documentation/Examples.ArangoDB/api-simple-first-example similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-first-example rename to Documentation/Examples.ArangoDB/api-simple-first-example diff --git a/Doxygen/Examples.ArangoDB/api-simple-first-example-not-found b/Documentation/Examples.ArangoDB/api-simple-first-example-not-found similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-first-example-not-found rename to Documentation/Examples.ArangoDB/api-simple-first-example-not-found diff --git a/Doxygen/Examples.ArangoDB/api-simple-near b/Documentation/Examples.ArangoDB/api-simple-near similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-near rename to Documentation/Examples.ArangoDB/api-simple-near diff --git a/Doxygen/Examples.ArangoDB/api-simple-near-distance b/Documentation/Examples.ArangoDB/api-simple-near-distance similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-near-distance rename to Documentation/Examples.ArangoDB/api-simple-near-distance diff --git a/Doxygen/Examples.ArangoDB/api-simple-range b/Documentation/Examples.ArangoDB/api-simple-range similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-range rename to Documentation/Examples.ArangoDB/api-simple-range diff --git a/Doxygen/Examples.ArangoDB/api-simple-within b/Documentation/Examples.ArangoDB/api-simple-within similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-within rename to Documentation/Examples.ArangoDB/api-simple-within diff --git a/Doxygen/Examples.ArangoDB/api-simple-within-distance b/Documentation/Examples.ArangoDB/api-simple-within-distance similarity index 100% rename from Doxygen/Examples.ArangoDB/api-simple-within-distance rename to Documentation/Examples.ArangoDB/api-simple-within-distance diff --git a/Doxygen/Examples.ArangoDB/api_database1 b/Documentation/Examples.ArangoDB/api_database1 similarity index 100% rename from Doxygen/Examples.ArangoDB/api_database1 rename to Documentation/Examples.ArangoDB/api_database1 diff --git a/Doxygen/Examples.ArangoDB/api_database2 b/Documentation/Examples.ArangoDB/api_database2 similarity index 100% rename from Doxygen/Examples.ArangoDB/api_database2 rename to Documentation/Examples.ArangoDB/api_database2 diff --git a/Doxygen/Examples.ArangoDB/api_database3 b/Documentation/Examples.ArangoDB/api_database3 similarity index 100% rename from Doxygen/Examples.ArangoDB/api_database3 rename to Documentation/Examples.ArangoDB/api_database3 diff --git a/Doxygen/Examples.ArangoDB/api_database4 b/Documentation/Examples.ArangoDB/api_database4 similarity index 100% rename from Doxygen/Examples.ArangoDB/api_database4 rename to Documentation/Examples.ArangoDB/api_database4 diff --git a/Doxygen/Examples.ArangoDB/api_database5 b/Documentation/Examples.ArangoDB/api_database5 similarity index 100% rename from Doxygen/Examples.ArangoDB/api_database5 rename to Documentation/Examples.ArangoDB/api_database5 diff --git a/Doxygen/Examples.ArangoDB/arangosh-options b/Documentation/Examples.ArangoDB/arangosh-options similarity index 100% rename from Doxygen/Examples.ArangoDB/arangosh-options rename to Documentation/Examples.ArangoDB/arangosh-options diff --git a/Doxygen/Examples.ArangoDB/arangosh-start b/Documentation/Examples.ArangoDB/arangosh-start similarity index 100% rename from Doxygen/Examples.ArangoDB/arangosh-start rename to Documentation/Examples.ArangoDB/arangosh-start diff --git a/Doxygen/Examples.ArangoDB/arangosh-start-full b/Documentation/Examples.ArangoDB/arangosh-start-full similarity index 100% rename from Doxygen/Examples.ArangoDB/arangosh-start-full rename to Documentation/Examples.ArangoDB/arangosh-start-full diff --git a/Doxygen/Examples.ArangoDB/connection-statistics b/Documentation/Examples.ArangoDB/connection-statistics similarity index 100% rename from Doxygen/Examples.ArangoDB/connection-statistics rename to Documentation/Examples.ArangoDB/connection-statistics diff --git a/Doxygen/Examples.ArangoDB/connection-statistics-current b/Documentation/Examples.ArangoDB/connection-statistics-current similarity index 100% rename from Doxygen/Examples.ArangoDB/connection-statistics-current rename to Documentation/Examples.ArangoDB/connection-statistics-current diff --git a/Doxygen/Examples.ArangoDB/document1 b/Documentation/Examples.ArangoDB/document1 similarity index 100% rename from Doxygen/Examples.ArangoDB/document1 rename to Documentation/Examples.ArangoDB/document1 diff --git a/Doxygen/Examples.ArangoDB/key-value_delete-key-bad b/Documentation/Examples.ArangoDB/key-value_delete-key-bad similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_delete-key-bad rename to Documentation/Examples.ArangoDB/key-value_delete-key-bad diff --git a/Doxygen/Examples.ArangoDB/key-value_delete-key-ok b/Documentation/Examples.ArangoDB/key-value_delete-key-ok similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_delete-key-ok rename to Documentation/Examples.ArangoDB/key-value_delete-key-ok diff --git a/Doxygen/Examples.ArangoDB/key-value_delete-key-request b/Documentation/Examples.ArangoDB/key-value_delete-key-request similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_delete-key-request rename to Documentation/Examples.ArangoDB/key-value_delete-key-request diff --git a/Doxygen/Examples.ArangoDB/key-value_get-key-bad b/Documentation/Examples.ArangoDB/key-value_get-key-bad similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_get-key-bad rename to Documentation/Examples.ArangoDB/key-value_get-key-bad diff --git a/Doxygen/Examples.ArangoDB/key-value_get-key-ok b/Documentation/Examples.ArangoDB/key-value_get-key-ok similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_get-key-ok rename to Documentation/Examples.ArangoDB/key-value_get-key-ok diff --git a/Doxygen/Examples.ArangoDB/key-value_get-key-request b/Documentation/Examples.ArangoDB/key-value_get-key-request similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_get-key-request rename to Documentation/Examples.ArangoDB/key-value_get-key-request diff --git a/Doxygen/Examples.ArangoDB/key-value_get-keys-bad b/Documentation/Examples.ArangoDB/key-value_get-keys-bad similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_get-keys-bad rename to Documentation/Examples.ArangoDB/key-value_get-keys-bad diff --git a/Doxygen/Examples.ArangoDB/key-value_get-keys-ok b/Documentation/Examples.ArangoDB/key-value_get-keys-ok similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_get-keys-ok rename to Documentation/Examples.ArangoDB/key-value_get-keys-ok diff --git a/Doxygen/Examples.ArangoDB/key-value_get-keys-request b/Documentation/Examples.ArangoDB/key-value_get-keys-request similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_get-keys-request rename to Documentation/Examples.ArangoDB/key-value_get-keys-request diff --git a/Doxygen/Examples.ArangoDB/key-value_post-key-bad b/Documentation/Examples.ArangoDB/key-value_post-key-bad similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_post-key-bad rename to Documentation/Examples.ArangoDB/key-value_post-key-bad diff --git a/Doxygen/Examples.ArangoDB/key-value_post-key-ok b/Documentation/Examples.ArangoDB/key-value_post-key-ok similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_post-key-ok rename to Documentation/Examples.ArangoDB/key-value_post-key-ok diff --git a/Doxygen/Examples.ArangoDB/key-value_post-key-request b/Documentation/Examples.ArangoDB/key-value_post-key-request similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_post-key-request rename to Documentation/Examples.ArangoDB/key-value_post-key-request diff --git a/Doxygen/Examples.ArangoDB/key-value_put-key-bad b/Documentation/Examples.ArangoDB/key-value_put-key-bad similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_put-key-bad rename to Documentation/Examples.ArangoDB/key-value_put-key-bad diff --git a/Doxygen/Examples.ArangoDB/key-value_put-key-ok b/Documentation/Examples.ArangoDB/key-value_put-key-ok similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_put-key-ok rename to Documentation/Examples.ArangoDB/key-value_put-key-ok diff --git a/Doxygen/Examples.ArangoDB/key-value_put-key-request b/Documentation/Examples.ArangoDB/key-value_put-key-request similarity index 100% rename from Doxygen/Examples.ArangoDB/key-value_put-key-request rename to Documentation/Examples.ArangoDB/key-value_put-key-request diff --git a/Doxygen/Examples.ArangoDB/openssl-ciphers b/Documentation/Examples.ArangoDB/openssl-ciphers similarity index 100% rename from Doxygen/Examples.ArangoDB/openssl-ciphers rename to Documentation/Examples.ArangoDB/openssl-ciphers diff --git a/Doxygen/Examples.ArangoDB/openssl-options b/Documentation/Examples.ArangoDB/openssl-options similarity index 100% rename from Doxygen/Examples.ArangoDB/openssl-options rename to Documentation/Examples.ArangoDB/openssl-options diff --git a/Doxygen/Examples.ArangoDB/option-database-directory b/Documentation/Examples.ArangoDB/option-database-directory similarity index 100% rename from Doxygen/Examples.ArangoDB/option-database-directory rename to Documentation/Examples.ArangoDB/option-database-directory diff --git a/Doxygen/Examples.ArangoDB/option-server-endpoint b/Documentation/Examples.ArangoDB/option-server-endpoint similarity index 100% rename from Doxygen/Examples.ArangoDB/option-server-endpoint rename to Documentation/Examples.ArangoDB/option-server-endpoint diff --git a/Doxygen/Examples.ArangoDB/querypost b/Documentation/Examples.ArangoDB/querypost similarity index 100% rename from Doxygen/Examples.ArangoDB/querypost rename to Documentation/Examples.ArangoDB/querypost diff --git a/Doxygen/Examples.ArangoDB/querypostfail b/Documentation/Examples.ArangoDB/querypostfail similarity index 100% rename from Doxygen/Examples.ArangoDB/querypostfail rename to Documentation/Examples.ArangoDB/querypostfail diff --git a/Doxygen/Examples.ArangoDB/request-statistics b/Documentation/Examples.ArangoDB/request-statistics similarity index 100% rename from Doxygen/Examples.ArangoDB/request-statistics rename to Documentation/Examples.ArangoDB/request-statistics diff --git a/Doxygen/Examples.ArangoDB/request-statistics-current b/Documentation/Examples.ArangoDB/request-statistics-current similarity index 100% rename from Doxygen/Examples.ArangoDB/request-statistics-current rename to Documentation/Examples.ArangoDB/request-statistics-current diff --git a/Doxygen/Examples.ArangoDB/rest-create-document b/Documentation/Examples.ArangoDB/rest-create-document similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document rename to Documentation/Examples.ArangoDB/rest-create-document diff --git a/Doxygen/Examples.ArangoDB/rest-create-document-accept b/Documentation/Examples.ArangoDB/rest-create-document-accept similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document-accept rename to Documentation/Examples.ArangoDB/rest-create-document-accept diff --git a/Doxygen/Examples.ArangoDB/rest-create-document-bad-json b/Documentation/Examples.ArangoDB/rest-create-document-bad-json similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document-bad-json rename to Documentation/Examples.ArangoDB/rest-create-document-bad-json diff --git a/Doxygen/Examples.ArangoDB/rest-create-document-create-collection b/Documentation/Examples.ArangoDB/rest-create-document-create-collection similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document-create-collection rename to Documentation/Examples.ArangoDB/rest-create-document-create-collection diff --git a/Doxygen/Examples.ArangoDB/rest-create-document-named-collection b/Documentation/Examples.ArangoDB/rest-create-document-named-collection similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document-named-collection rename to Documentation/Examples.ArangoDB/rest-create-document-named-collection diff --git a/Doxygen/Examples.ArangoDB/rest-create-document-new-named-collection b/Documentation/Examples.ArangoDB/rest-create-document-new-named-collection similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document-new-named-collection rename to Documentation/Examples.ArangoDB/rest-create-document-new-named-collection diff --git a/Doxygen/Examples.ArangoDB/rest-create-document-unknown-cid b/Documentation/Examples.ArangoDB/rest-create-document-unknown-cid similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-create-document-unknown-cid rename to Documentation/Examples.ArangoDB/rest-create-document-unknown-cid diff --git a/Doxygen/Examples.ArangoDB/rest-delete-document b/Documentation/Examples.ArangoDB/rest-delete-document similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-delete-document rename to Documentation/Examples.ArangoDB/rest-delete-document diff --git a/Doxygen/Examples.ArangoDB/rest-delete-document-if-match-other b/Documentation/Examples.ArangoDB/rest-delete-document-if-match-other similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-delete-document-if-match-other rename to Documentation/Examples.ArangoDB/rest-delete-document-if-match-other diff --git a/Doxygen/Examples.ArangoDB/rest-delete-document-unknown-handle b/Documentation/Examples.ArangoDB/rest-delete-document-unknown-handle similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-delete-document-unknown-handle rename to Documentation/Examples.ArangoDB/rest-delete-document-unknown-handle diff --git a/Doxygen/Examples.ArangoDB/rest-edge-create-edge b/Documentation/Examples.ArangoDB/rest-edge-create-edge similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-edge-create-edge rename to Documentation/Examples.ArangoDB/rest-edge-create-edge diff --git a/Doxygen/Examples.ArangoDB/rest-edge-read-edge b/Documentation/Examples.ArangoDB/rest-edge-read-edge similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-edge-read-edge rename to Documentation/Examples.ArangoDB/rest-edge-read-edge diff --git a/Doxygen/Examples.ArangoDB/rest-edge-read-edges-any b/Documentation/Examples.ArangoDB/rest-edge-read-edges-any similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-edge-read-edges-any rename to Documentation/Examples.ArangoDB/rest-edge-read-edges-any diff --git a/Doxygen/Examples.ArangoDB/rest-edge-read-edges-in b/Documentation/Examples.ArangoDB/rest-edge-read-edges-in similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-edge-read-edges-in rename to Documentation/Examples.ArangoDB/rest-edge-read-edges-in diff --git a/Doxygen/Examples.ArangoDB/rest-edge-read-edges-out b/Documentation/Examples.ArangoDB/rest-edge-read-edges-out similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-edge-read-edges-out rename to Documentation/Examples.ArangoDB/rest-edge-read-edges-out diff --git a/Doxygen/Examples.ArangoDB/rest-patch-document b/Documentation/Examples.ArangoDB/rest-patch-document similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-patch-document rename to Documentation/Examples.ArangoDB/rest-patch-document diff --git a/Doxygen/Examples.ArangoDB/rest-read-document b/Documentation/Examples.ArangoDB/rest-read-document similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-read-document rename to Documentation/Examples.ArangoDB/rest-read-document diff --git a/Doxygen/Examples.ArangoDB/rest-read-document-all b/Documentation/Examples.ArangoDB/rest-read-document-all similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-read-document-all rename to Documentation/Examples.ArangoDB/rest-read-document-all diff --git a/Doxygen/Examples.ArangoDB/rest-read-document-head b/Documentation/Examples.ArangoDB/rest-read-document-head similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-read-document-head rename to Documentation/Examples.ArangoDB/rest-read-document-head diff --git a/Doxygen/Examples.ArangoDB/rest-read-document-if-none-match b/Documentation/Examples.ArangoDB/rest-read-document-if-none-match similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-read-document-if-none-match rename to Documentation/Examples.ArangoDB/rest-read-document-if-none-match diff --git a/Doxygen/Examples.ArangoDB/rest-read-document-unknown-handle b/Documentation/Examples.ArangoDB/rest-read-document-unknown-handle similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-read-document-unknown-handle rename to Documentation/Examples.ArangoDB/rest-read-document-unknown-handle diff --git a/Doxygen/Examples.ArangoDB/rest-update-document b/Documentation/Examples.ArangoDB/rest-update-document similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-update-document rename to Documentation/Examples.ArangoDB/rest-update-document diff --git a/Doxygen/Examples.ArangoDB/rest-update-document-if-match-other b/Documentation/Examples.ArangoDB/rest-update-document-if-match-other similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-update-document-if-match-other rename to Documentation/Examples.ArangoDB/rest-update-document-if-match-other diff --git a/Doxygen/Examples.ArangoDB/rest-update-document-if-match-other-last-write b/Documentation/Examples.ArangoDB/rest-update-document-if-match-other-last-write similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-update-document-if-match-other-last-write rename to Documentation/Examples.ArangoDB/rest-update-document-if-match-other-last-write diff --git a/Doxygen/Examples.ArangoDB/rest-update-document-rev-other b/Documentation/Examples.ArangoDB/rest-update-document-rev-other similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-update-document-rev-other rename to Documentation/Examples.ArangoDB/rest-update-document-rev-other diff --git a/Doxygen/Examples.ArangoDB/rest-update-document-unknown-handle b/Documentation/Examples.ArangoDB/rest-update-document-unknown-handle similarity index 100% rename from Doxygen/Examples.ArangoDB/rest-update-document-unknown-handle rename to Documentation/Examples.ArangoDB/rest-update-document-unknown-handle diff --git a/Doxygen/Examples.ArangoDB/server-keyfile b/Documentation/Examples.ArangoDB/server-keyfile similarity index 100% rename from Doxygen/Examples.ArangoDB/server-keyfile rename to Documentation/Examples.ArangoDB/server-keyfile diff --git a/Doxygen/Examples.ArangoDB/server-keyfile-openssl b/Documentation/Examples.ArangoDB/server-keyfile-openssl similarity index 100% rename from Doxygen/Examples.ArangoDB/server-keyfile-openssl rename to Documentation/Examples.ArangoDB/server-keyfile-openssl diff --git a/Doxygen/Examples.ArangoDB/start-emergency-console b/Documentation/Examples.ArangoDB/start-emergency-console similarity index 100% rename from Doxygen/Examples.ArangoDB/start-emergency-console rename to Documentation/Examples.ArangoDB/start-emergency-console diff --git a/Doxygen/Examples.ArangoDB/startup1 b/Documentation/Examples.ArangoDB/startup1 similarity index 100% rename from Doxygen/Examples.ArangoDB/startup1 rename to Documentation/Examples.ArangoDB/startup1 diff --git a/Doxygen/Examples.ArangoDB/supervisor b/Documentation/Examples.ArangoDB/supervisor similarity index 100% rename from Doxygen/Examples.ArangoDB/supervisor rename to Documentation/Examples.ArangoDB/supervisor diff --git a/Doxygen/Examples.ArangoDB/supervisor-ps1 b/Documentation/Examples.ArangoDB/supervisor-ps1 similarity index 100% rename from Doxygen/Examples.ArangoDB/supervisor-ps1 rename to Documentation/Examples.ArangoDB/supervisor-ps1 diff --git a/Doxygen/Examples.ArangoDB/supervisor-ps2 b/Documentation/Examples.ArangoDB/supervisor-ps2 similarity index 100% rename from Doxygen/Examples.ArangoDB/supervisor-ps2 rename to Documentation/Examples.ArangoDB/supervisor-ps2 diff --git a/Doxygen/Examples.ArangoDB/user-document b/Documentation/Examples.ArangoDB/user-document similarity index 100% rename from Doxygen/Examples.ArangoDB/user-document rename to Documentation/Examples.ArangoDB/user-document diff --git a/Doxygen/Examples.Durham/action1 b/Documentation/Examples.Durham/action1 similarity index 100% rename from Doxygen/Examples.Durham/action1 rename to Documentation/Examples.Durham/action1 diff --git a/Doxygen/Examples.Durham/action2 b/Documentation/Examples.Durham/action2 similarity index 100% rename from Doxygen/Examples.Durham/action2 rename to Documentation/Examples.Durham/action2 diff --git a/Doxygen/Examples.Durham/action3 b/Documentation/Examples.Durham/action3 similarity index 100% rename from Doxygen/Examples.Durham/action3 rename to Documentation/Examples.Durham/action3 diff --git a/Doxygen/Examples.Durham/action4 b/Documentation/Examples.Durham/action4 similarity index 100% rename from Doxygen/Examples.Durham/action4 rename to Documentation/Examples.Durham/action4 diff --git a/Doxygen/Examples.Durham/arangoimp-data-csv b/Documentation/Examples.Durham/arangoimp-data-csv similarity index 100% rename from Doxygen/Examples.Durham/arangoimp-data-csv rename to Documentation/Examples.Durham/arangoimp-data-csv diff --git a/Doxygen/Examples.Durham/arangoimp-data-json b/Documentation/Examples.Durham/arangoimp-data-json similarity index 100% rename from Doxygen/Examples.Durham/arangoimp-data-json rename to Documentation/Examples.Durham/arangoimp-data-json diff --git a/Doxygen/Examples.Durham/arangosh-all-documents b/Documentation/Examples.Durham/arangosh-all-documents similarity index 100% rename from Doxygen/Examples.Durham/arangosh-all-documents rename to Documentation/Examples.Durham/arangosh-all-documents diff --git a/Doxygen/Examples.Durham/arangosh-create-collection b/Documentation/Examples.Durham/arangosh-create-collection similarity index 100% rename from Doxygen/Examples.Durham/arangosh-create-collection rename to Documentation/Examples.Durham/arangosh-create-collection diff --git a/Doxygen/Examples.Durham/arangosh-db b/Documentation/Examples.Durham/arangosh-db similarity index 100% rename from Doxygen/Examples.Durham/arangosh-db rename to Documentation/Examples.Durham/arangosh-db diff --git a/Doxygen/Examples.Durham/arangosh-save-documents b/Documentation/Examples.Durham/arangosh-save-documents similarity index 100% rename from Doxygen/Examples.Durham/arangosh-save-documents rename to Documentation/Examples.Durham/arangosh-save-documents diff --git a/Doxygen/Examples.Durham/arangosh-unload-collection b/Documentation/Examples.Durham/arangosh-unload-collection similarity index 100% rename from Doxygen/Examples.Durham/arangosh-unload-collection rename to Documentation/Examples.Durham/arangosh-unload-collection diff --git a/Doxygen/Examples.Durham/demo1 b/Documentation/Examples.Durham/demo1 similarity index 100% rename from Doxygen/Examples.Durham/demo1 rename to Documentation/Examples.Durham/demo1 diff --git a/Doxygen/Examples.Durham/ensure-cap-constraint b/Documentation/Examples.Durham/ensure-cap-constraint similarity index 100% rename from Doxygen/Examples.Durham/ensure-cap-constraint rename to Documentation/Examples.Durham/ensure-cap-constraint diff --git a/Doxygen/Examples.Durham/ensure-geo-index-array b/Documentation/Examples.Durham/ensure-geo-index-array similarity index 100% rename from Doxygen/Examples.Durham/ensure-geo-index-array rename to Documentation/Examples.Durham/ensure-geo-index-array diff --git a/Doxygen/Examples.Durham/ensure-geo-index-list b/Documentation/Examples.Durham/ensure-geo-index-list similarity index 100% rename from Doxygen/Examples.Durham/ensure-geo-index-list rename to Documentation/Examples.Durham/ensure-geo-index-list diff --git a/Doxygen/Examples.Durham/five1 b/Documentation/Examples.Durham/five1 similarity index 100% rename from Doxygen/Examples.Durham/five1 rename to Documentation/Examples.Durham/five1 diff --git a/Doxygen/Examples.Durham/fluent14 b/Documentation/Examples.Durham/fluent14 similarity index 100% rename from Doxygen/Examples.Durham/fluent14 rename to Documentation/Examples.Durham/fluent14 diff --git a/Doxygen/Examples.Durham/fluent36 b/Documentation/Examples.Durham/fluent36 similarity index 100% rename from Doxygen/Examples.Durham/fluent36 rename to Documentation/Examples.Durham/fluent36 diff --git a/Doxygen/Examples.Durham/fluent37 b/Documentation/Examples.Durham/fluent37 similarity index 100% rename from Doxygen/Examples.Durham/fluent37 rename to Documentation/Examples.Durham/fluent37 diff --git a/Doxygen/Examples.Durham/fluent38 b/Documentation/Examples.Durham/fluent38 similarity index 100% rename from Doxygen/Examples.Durham/fluent38 rename to Documentation/Examples.Durham/fluent38 diff --git a/Doxygen/Examples.Durham/fluent39 b/Documentation/Examples.Durham/fluent39 similarity index 100% rename from Doxygen/Examples.Durham/fluent39 rename to Documentation/Examples.Durham/fluent39 diff --git a/Doxygen/Examples.Durham/fluent40 b/Documentation/Examples.Durham/fluent40 similarity index 100% rename from Doxygen/Examples.Durham/fluent40 rename to Documentation/Examples.Durham/fluent40 diff --git a/Doxygen/Examples.Durham/fluent47 b/Documentation/Examples.Durham/fluent47 similarity index 100% rename from Doxygen/Examples.Durham/fluent47 rename to Documentation/Examples.Durham/fluent47 diff --git a/Doxygen/Examples.Durham/fluent48 b/Documentation/Examples.Durham/fluent48 similarity index 100% rename from Doxygen/Examples.Durham/fluent48 rename to Documentation/Examples.Durham/fluent48 diff --git a/Doxygen/Examples.Durham/fluent49 b/Documentation/Examples.Durham/fluent49 similarity index 100% rename from Doxygen/Examples.Durham/fluent49 rename to Documentation/Examples.Durham/fluent49 diff --git a/Doxygen/Examples.Durham/fluent50 b/Documentation/Examples.Durham/fluent50 similarity index 100% rename from Doxygen/Examples.Durham/fluent50 rename to Documentation/Examples.Durham/fluent50 diff --git a/Doxygen/Examples.Durham/geojs1 b/Documentation/Examples.Durham/geojs1 similarity index 100% rename from Doxygen/Examples.Durham/geojs1 rename to Documentation/Examples.Durham/geojs1 diff --git a/Doxygen/Examples.Durham/graph-constructor b/Documentation/Examples.Durham/graph-constructor similarity index 100% rename from Doxygen/Examples.Durham/graph-constructor rename to Documentation/Examples.Durham/graph-constructor diff --git a/Doxygen/Examples.Durham/graph-edge-get-id b/Documentation/Examples.Durham/graph-edge-get-id similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-get-id rename to Documentation/Examples.Durham/graph-edge-get-id diff --git a/Doxygen/Examples.Durham/graph-edge-get-in-vertex b/Documentation/Examples.Durham/graph-edge-get-in-vertex similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-get-in-vertex rename to Documentation/Examples.Durham/graph-edge-get-in-vertex diff --git a/Doxygen/Examples.Durham/graph-edge-get-label b/Documentation/Examples.Durham/graph-edge-get-label similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-get-label rename to Documentation/Examples.Durham/graph-edge-get-label diff --git a/Doxygen/Examples.Durham/graph-edge-get-out-vertex b/Documentation/Examples.Durham/graph-edge-get-out-vertex similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-get-out-vertex rename to Documentation/Examples.Durham/graph-edge-get-out-vertex diff --git a/Doxygen/Examples.Durham/graph-edge-get-property b/Documentation/Examples.Durham/graph-edge-get-property similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-get-property rename to Documentation/Examples.Durham/graph-edge-get-property diff --git a/Doxygen/Examples.Durham/graph-edge-get-property-keys b/Documentation/Examples.Durham/graph-edge-get-property-keys similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-get-property-keys rename to Documentation/Examples.Durham/graph-edge-get-property-keys diff --git a/Doxygen/Examples.Durham/graph-edge-properties b/Documentation/Examples.Durham/graph-edge-properties similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-properties rename to Documentation/Examples.Durham/graph-edge-properties diff --git a/Doxygen/Examples.Durham/graph-edge-set-property b/Documentation/Examples.Durham/graph-edge-set-property similarity index 100% rename from Doxygen/Examples.Durham/graph-edge-set-property rename to Documentation/Examples.Durham/graph-edge-set-property diff --git a/Doxygen/Examples.Durham/graph-graph-add-edge b/Documentation/Examples.Durham/graph-graph-add-edge similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-add-edge rename to Documentation/Examples.Durham/graph-graph-add-edge diff --git a/Doxygen/Examples.Durham/graph-graph-add-edge2 b/Documentation/Examples.Durham/graph-graph-add-edge2 similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-add-edge2 rename to Documentation/Examples.Durham/graph-graph-add-edge2 diff --git a/Doxygen/Examples.Durham/graph-graph-add-vertex b/Documentation/Examples.Durham/graph-graph-add-vertex similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-add-vertex rename to Documentation/Examples.Durham/graph-graph-add-vertex diff --git a/Doxygen/Examples.Durham/graph-graph-add-vertex2 b/Documentation/Examples.Durham/graph-graph-add-vertex2 similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-add-vertex2 rename to Documentation/Examples.Durham/graph-graph-add-vertex2 diff --git a/Doxygen/Examples.Durham/graph-graph-get-edges b/Documentation/Examples.Durham/graph-graph-get-edges similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-get-edges rename to Documentation/Examples.Durham/graph-graph-get-edges diff --git a/Doxygen/Examples.Durham/graph-graph-get-vertex b/Documentation/Examples.Durham/graph-graph-get-vertex similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-get-vertex rename to Documentation/Examples.Durham/graph-graph-get-vertex diff --git a/Doxygen/Examples.Durham/graph-graph-get-vertices b/Documentation/Examples.Durham/graph-graph-get-vertices similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-get-vertices rename to Documentation/Examples.Durham/graph-graph-get-vertices diff --git a/Doxygen/Examples.Durham/graph-graph-remove-edge b/Documentation/Examples.Durham/graph-graph-remove-edge similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-remove-edge rename to Documentation/Examples.Durham/graph-graph-remove-edge diff --git a/Doxygen/Examples.Durham/graph-graph-remove-vertex b/Documentation/Examples.Durham/graph-graph-remove-vertex similarity index 100% rename from Doxygen/Examples.Durham/graph-graph-remove-vertex rename to Documentation/Examples.Durham/graph-graph-remove-vertex diff --git a/Doxygen/Examples.Durham/graph-setup b/Documentation/Examples.Durham/graph-setup similarity index 100% rename from Doxygen/Examples.Durham/graph-setup rename to Documentation/Examples.Durham/graph-setup diff --git a/Doxygen/Examples.Durham/graph-vertex-add-in-edge b/Documentation/Examples.Durham/graph-vertex-add-in-edge similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-add-in-edge rename to Documentation/Examples.Durham/graph-vertex-add-in-edge diff --git a/Doxygen/Examples.Durham/graph-vertex-add-in-edge2 b/Documentation/Examples.Durham/graph-vertex-add-in-edge2 similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-add-in-edge2 rename to Documentation/Examples.Durham/graph-vertex-add-in-edge2 diff --git a/Doxygen/Examples.Durham/graph-vertex-add-out-edge b/Documentation/Examples.Durham/graph-vertex-add-out-edge similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-add-out-edge rename to Documentation/Examples.Durham/graph-vertex-add-out-edge diff --git a/Doxygen/Examples.Durham/graph-vertex-add-out-edge2 b/Documentation/Examples.Durham/graph-vertex-add-out-edge2 similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-add-out-edge2 rename to Documentation/Examples.Durham/graph-vertex-add-out-edge2 diff --git a/Doxygen/Examples.Durham/graph-vertex-add-out-edge3 b/Documentation/Examples.Durham/graph-vertex-add-out-edge3 similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-add-out-edge3 rename to Documentation/Examples.Durham/graph-vertex-add-out-edge3 diff --git a/Doxygen/Examples.Durham/graph-vertex-edges b/Documentation/Examples.Durham/graph-vertex-edges similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-edges rename to Documentation/Examples.Durham/graph-vertex-edges diff --git a/Doxygen/Examples.Durham/graph-vertex-get-id b/Documentation/Examples.Durham/graph-vertex-get-id similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-get-id rename to Documentation/Examples.Durham/graph-vertex-get-id diff --git a/Doxygen/Examples.Durham/graph-vertex-get-in-edges b/Documentation/Examples.Durham/graph-vertex-get-in-edges similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-get-in-edges rename to Documentation/Examples.Durham/graph-vertex-get-in-edges diff --git a/Doxygen/Examples.Durham/graph-vertex-get-out-edges b/Documentation/Examples.Durham/graph-vertex-get-out-edges similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-get-out-edges rename to Documentation/Examples.Durham/graph-vertex-get-out-edges diff --git a/Doxygen/Examples.Durham/graph-vertex-get-property b/Documentation/Examples.Durham/graph-vertex-get-property similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-get-property rename to Documentation/Examples.Durham/graph-vertex-get-property diff --git a/Doxygen/Examples.Durham/graph-vertex-get-property-keys b/Documentation/Examples.Durham/graph-vertex-get-property-keys similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-get-property-keys rename to Documentation/Examples.Durham/graph-vertex-get-property-keys diff --git a/Doxygen/Examples.Durham/graph-vertex-inbound b/Documentation/Examples.Durham/graph-vertex-inbound similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-inbound rename to Documentation/Examples.Durham/graph-vertex-inbound diff --git a/Doxygen/Examples.Durham/graph-vertex-outbound b/Documentation/Examples.Durham/graph-vertex-outbound similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-outbound rename to Documentation/Examples.Durham/graph-vertex-outbound diff --git a/Doxygen/Examples.Durham/graph-vertex-properties b/Documentation/Examples.Durham/graph-vertex-properties similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-properties rename to Documentation/Examples.Durham/graph-vertex-properties diff --git a/Doxygen/Examples.Durham/graph-vertex-set-property b/Documentation/Examples.Durham/graph-vertex-set-property similarity index 100% rename from Doxygen/Examples.Durham/graph-vertex-set-property rename to Documentation/Examples.Durham/graph-vertex-set-property diff --git a/Doxygen/Examples.Durham/graph25 b/Documentation/Examples.Durham/graph25 similarity index 100% rename from Doxygen/Examples.Durham/graph25 rename to Documentation/Examples.Durham/graph25 diff --git a/Doxygen/Examples.Durham/graph26 b/Documentation/Examples.Durham/graph26 similarity index 100% rename from Doxygen/Examples.Durham/graph26 rename to Documentation/Examples.Durham/graph26 diff --git a/Doxygen/Examples.Durham/jsunity1 b/Documentation/Examples.Durham/jsunity1 similarity index 100% rename from Doxygen/Examples.Durham/jsunity1 rename to Documentation/Examples.Durham/jsunity1 diff --git a/Doxygen/Examples.Durham/jsunity2 b/Documentation/Examples.Durham/jsunity2 similarity index 100% rename from Doxygen/Examples.Durham/jsunity2 rename to Documentation/Examples.Durham/jsunity2 diff --git a/Doxygen/Examples.Durham/modules-require-1 b/Documentation/Examples.Durham/modules-require-1 similarity index 100% rename from Doxygen/Examples.Durham/modules-require-1 rename to Documentation/Examples.Durham/modules-require-1 diff --git a/Doxygen/Examples.Durham/modules-require-2 b/Documentation/Examples.Durham/modules-require-2 similarity index 100% rename from Doxygen/Examples.Durham/modules-require-2 rename to Documentation/Examples.Durham/modules-require-2 diff --git a/Doxygen/Examples.Durham/shell-collection-count b/Documentation/Examples.Durham/shell-collection-count similarity index 100% rename from Doxygen/Examples.Durham/shell-collection-count rename to Documentation/Examples.Durham/shell-collection-count diff --git a/Doxygen/Examples.Durham/shell-edge-edges b/Documentation/Examples.Durham/shell-edge-edges similarity index 100% rename from Doxygen/Examples.Durham/shell-edge-edges rename to Documentation/Examples.Durham/shell-edge-edges diff --git a/Doxygen/Examples.Durham/shell-edge-in-edges b/Documentation/Examples.Durham/shell-edge-in-edges similarity index 100% rename from Doxygen/Examples.Durham/shell-edge-in-edges rename to Documentation/Examples.Durham/shell-edge-in-edges diff --git a/Doxygen/Examples.Durham/shell-edge-out-edges b/Documentation/Examples.Durham/shell-edge-out-edges similarity index 100% rename from Doxygen/Examples.Durham/shell-edge-out-edges rename to Documentation/Examples.Durham/shell-edge-out-edges diff --git a/Doxygen/Examples.Durham/shell-index-create-hash-index b/Documentation/Examples.Durham/shell-index-create-hash-index similarity index 100% rename from Doxygen/Examples.Durham/shell-index-create-hash-index rename to Documentation/Examples.Durham/shell-index-create-hash-index diff --git a/Doxygen/Examples.Durham/shell-index-create-unique-constraint b/Documentation/Examples.Durham/shell-index-create-unique-constraint similarity index 100% rename from Doxygen/Examples.Durham/shell-index-create-unique-constraint rename to Documentation/Examples.Durham/shell-index-create-unique-constraint diff --git a/Doxygen/Examples.Durham/shell-read-document b/Documentation/Examples.Durham/shell-read-document similarity index 100% rename from Doxygen/Examples.Durham/shell-read-document rename to Documentation/Examples.Durham/shell-read-document diff --git a/Doxygen/Examples.Durham/shell-read-document-bad-handle b/Documentation/Examples.Durham/shell-read-document-bad-handle similarity index 100% rename from Doxygen/Examples.Durham/shell-read-document-bad-handle rename to Documentation/Examples.Durham/shell-read-document-bad-handle diff --git a/Doxygen/Examples.Durham/shell-read-document-not-found b/Documentation/Examples.Durham/shell-read-document-not-found similarity index 100% rename from Doxygen/Examples.Durham/shell-read-document-not-found rename to Documentation/Examples.Durham/shell-read-document-not-found diff --git a/Doxygen/Examples.Durham/shell-simple-query-first-example b/Documentation/Examples.Durham/shell-simple-query-first-example similarity index 100% rename from Doxygen/Examples.Durham/shell-simple-query-first-example rename to Documentation/Examples.Durham/shell-simple-query-first-example diff --git a/Doxygen/Examples.Durham/shell_collection-drop b/Documentation/Examples.Durham/shell_collection-drop similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-drop rename to Documentation/Examples.Durham/shell_collection-drop diff --git a/Doxygen/Examples.Durham/shell_collection-drop-db b/Documentation/Examples.Durham/shell_collection-drop-db similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-drop-db rename to Documentation/Examples.Durham/shell_collection-drop-db diff --git a/Doxygen/Examples.Durham/shell_collection-drop-name-db b/Documentation/Examples.Durham/shell_collection-drop-name-db similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-drop-name-db rename to Documentation/Examples.Durham/shell_collection-drop-name-db diff --git a/Doxygen/Examples.Durham/shell_collection-figures b/Documentation/Examples.Durham/shell_collection-figures similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-figures rename to Documentation/Examples.Durham/shell_collection-figures diff --git a/Doxygen/Examples.Durham/shell_collection-load b/Documentation/Examples.Durham/shell_collection-load similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-load rename to Documentation/Examples.Durham/shell_collection-load diff --git a/Doxygen/Examples.Durham/shell_collection-properties b/Documentation/Examples.Durham/shell_collection-properties similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-properties rename to Documentation/Examples.Durham/shell_collection-properties diff --git a/Doxygen/Examples.Durham/shell_collection-properties-change b/Documentation/Examples.Durham/shell_collection-properties-change similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-properties-change rename to Documentation/Examples.Durham/shell_collection-properties-change diff --git a/Doxygen/Examples.Durham/shell_collection-rename b/Documentation/Examples.Durham/shell_collection-rename similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-rename rename to Documentation/Examples.Durham/shell_collection-rename diff --git a/Doxygen/Examples.Durham/shell_collection-truncate b/Documentation/Examples.Durham/shell_collection-truncate similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-truncate rename to Documentation/Examples.Durham/shell_collection-truncate diff --git a/Doxygen/Examples.Durham/shell_collection-truncate-db b/Documentation/Examples.Durham/shell_collection-truncate-db similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-truncate-db rename to Documentation/Examples.Durham/shell_collection-truncate-db diff --git a/Doxygen/Examples.Durham/shell_collection-truncate-name-db b/Documentation/Examples.Durham/shell_collection-truncate-name-db similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-truncate-name-db rename to Documentation/Examples.Durham/shell_collection-truncate-name-db diff --git a/Doxygen/Examples.Durham/shell_collection-unload b/Documentation/Examples.Durham/shell_collection-unload similarity index 100% rename from Doxygen/Examples.Durham/shell_collection-unload rename to Documentation/Examples.Durham/shell_collection-unload diff --git a/Doxygen/Examples.Durham/shell_create-collection b/Documentation/Examples.Durham/shell_create-collection similarity index 100% rename from Doxygen/Examples.Durham/shell_create-collection rename to Documentation/Examples.Durham/shell_create-collection diff --git a/Doxygen/Examples.Durham/shell_create-collection-properties b/Documentation/Examples.Durham/shell_create-collection-properties similarity index 100% rename from Doxygen/Examples.Durham/shell_create-collection-properties rename to Documentation/Examples.Durham/shell_create-collection-properties diff --git a/Doxygen/Examples.Durham/shell_create-document b/Documentation/Examples.Durham/shell_create-document similarity index 100% rename from Doxygen/Examples.Durham/shell_create-document rename to Documentation/Examples.Durham/shell_create-document diff --git a/Doxygen/Examples.Durham/shell_create-edge b/Documentation/Examples.Durham/shell_create-edge similarity index 100% rename from Doxygen/Examples.Durham/shell_create-edge rename to Documentation/Examples.Durham/shell_create-edge diff --git a/Doxygen/Examples.Durham/shell_index-drop-index b/Documentation/Examples.Durham/shell_index-drop-index similarity index 100% rename from Doxygen/Examples.Durham/shell_index-drop-index rename to Documentation/Examples.Durham/shell_index-drop-index diff --git a/Doxygen/Examples.Durham/shell_index-drop-index-db b/Documentation/Examples.Durham/shell_index-drop-index-db similarity index 100% rename from Doxygen/Examples.Durham/shell_index-drop-index-db rename to Documentation/Examples.Durham/shell_index-drop-index-db diff --git a/Doxygen/Examples.Durham/shell_index-read b/Documentation/Examples.Durham/shell_index-read similarity index 100% rename from Doxygen/Examples.Durham/shell_index-read rename to Documentation/Examples.Durham/shell_index-read diff --git a/Doxygen/Examples.Durham/shell_index-read-all b/Documentation/Examples.Durham/shell_index-read-all similarity index 100% rename from Doxygen/Examples.Durham/shell_index-read-all rename to Documentation/Examples.Durham/shell_index-read-all diff --git a/Doxygen/Examples.Durham/shell_index-read-db b/Documentation/Examples.Durham/shell_index-read-db similarity index 100% rename from Doxygen/Examples.Durham/shell_index-read-db rename to Documentation/Examples.Durham/shell_index-read-db diff --git a/Doxygen/Examples.Durham/shell_read-collection-all b/Documentation/Examples.Durham/shell_read-collection-all similarity index 100% rename from Doxygen/Examples.Durham/shell_read-collection-all rename to Documentation/Examples.Durham/shell_read-collection-all diff --git a/Doxygen/Examples.Durham/shell_read-collection-id b/Documentation/Examples.Durham/shell_read-collection-id similarity index 100% rename from Doxygen/Examples.Durham/shell_read-collection-id rename to Documentation/Examples.Durham/shell_read-collection-id diff --git a/Doxygen/Examples.Durham/shell_read-collection-name b/Documentation/Examples.Durham/shell_read-collection-name similarity index 100% rename from Doxygen/Examples.Durham/shell_read-collection-name rename to Documentation/Examples.Durham/shell_read-collection-name diff --git a/Doxygen/Examples.Durham/shell_read-collection-short-cut b/Documentation/Examples.Durham/shell_read-collection-short-cut similarity index 100% rename from Doxygen/Examples.Durham/shell_read-collection-short-cut rename to Documentation/Examples.Durham/shell_read-collection-short-cut diff --git a/Doxygen/Examples.Durham/shell_read-collection-unknown b/Documentation/Examples.Durham/shell_read-collection-unknown similarity index 100% rename from Doxygen/Examples.Durham/shell_read-collection-unknown rename to Documentation/Examples.Durham/shell_read-collection-unknown diff --git a/Doxygen/Examples.Durham/shell_read-document-db b/Documentation/Examples.Durham/shell_read-document-db similarity index 100% rename from Doxygen/Examples.Durham/shell_read-document-db rename to Documentation/Examples.Durham/shell_read-document-db diff --git a/Doxygen/Examples.Durham/shell_remove-document b/Documentation/Examples.Durham/shell_remove-document similarity index 100% rename from Doxygen/Examples.Durham/shell_remove-document rename to Documentation/Examples.Durham/shell_remove-document diff --git a/Doxygen/Examples.Durham/shell_remove-document-conflict b/Documentation/Examples.Durham/shell_remove-document-conflict similarity index 100% rename from Doxygen/Examples.Durham/shell_remove-document-conflict rename to Documentation/Examples.Durham/shell_remove-document-conflict diff --git a/Doxygen/Examples.Durham/shell_remove-document-conflict-db b/Documentation/Examples.Durham/shell_remove-document-conflict-db similarity index 100% rename from Doxygen/Examples.Durham/shell_remove-document-conflict-db rename to Documentation/Examples.Durham/shell_remove-document-conflict-db diff --git a/Doxygen/Examples.Durham/shell_remove-document-db b/Documentation/Examples.Durham/shell_remove-document-db similarity index 100% rename from Doxygen/Examples.Durham/shell_remove-document-db rename to Documentation/Examples.Durham/shell_remove-document-db diff --git a/Doxygen/Examples.Durham/shell_replace-document b/Documentation/Examples.Durham/shell_replace-document similarity index 100% rename from Doxygen/Examples.Durham/shell_replace-document rename to Documentation/Examples.Durham/shell_replace-document diff --git a/Doxygen/Examples.Durham/shell_replace-document-db b/Documentation/Examples.Durham/shell_replace-document-db similarity index 100% rename from Doxygen/Examples.Durham/shell_replace-document-db rename to Documentation/Examples.Durham/shell_replace-document-db diff --git a/Doxygen/Examples.Durham/shell_replace-document-handle b/Documentation/Examples.Durham/shell_replace-document-handle similarity index 100% rename from Doxygen/Examples.Durham/shell_replace-document-handle rename to Documentation/Examples.Durham/shell_replace-document-handle diff --git a/Doxygen/Examples.Durham/shell_update-document b/Documentation/Examples.Durham/shell_update-document similarity index 100% rename from Doxygen/Examples.Durham/shell_update-document rename to Documentation/Examples.Durham/shell_update-document diff --git a/Doxygen/Examples.Durham/shell_update-document-array b/Documentation/Examples.Durham/shell_update-document-array similarity index 100% rename from Doxygen/Examples.Durham/shell_update-document-array rename to Documentation/Examples.Durham/shell_update-document-array diff --git a/Doxygen/Examples.Durham/shell_update-document-db b/Documentation/Examples.Durham/shell_update-document-db similarity index 100% rename from Doxygen/Examples.Durham/shell_update-document-db rename to Documentation/Examples.Durham/shell_update-document-db diff --git a/Doxygen/Examples.Durham/shell_update-document-handle b/Documentation/Examples.Durham/shell_update-document-handle similarity index 100% rename from Doxygen/Examples.Durham/shell_update-document-handle rename to Documentation/Examples.Durham/shell_update-document-handle diff --git a/Doxygen/Examples.Durham/shell_update-document-keep-null b/Documentation/Examples.Durham/shell_update-document-keep-null similarity index 100% rename from Doxygen/Examples.Durham/shell_update-document-keep-null rename to Documentation/Examples.Durham/shell_update-document-keep-null diff --git a/Doxygen/Examples.Durham/simple-query-closed-range-to-array b/Documentation/Examples.Durham/simple-query-closed-range-to-array similarity index 100% rename from Doxygen/Examples.Durham/simple-query-closed-range-to-array rename to Documentation/Examples.Durham/simple-query-closed-range-to-array diff --git a/Doxygen/Examples.Durham/simple-query-geo b/Documentation/Examples.Durham/simple-query-geo similarity index 100% rename from Doxygen/Examples.Durham/simple-query-geo rename to Documentation/Examples.Durham/simple-query-geo diff --git a/Doxygen/Examples.Durham/simple-query-near b/Documentation/Examples.Durham/simple-query-near similarity index 100% rename from Doxygen/Examples.Durham/simple-query-near rename to Documentation/Examples.Durham/simple-query-near diff --git a/Doxygen/Examples.Durham/simple-query-near2 b/Documentation/Examples.Durham/simple-query-near2 similarity index 100% rename from Doxygen/Examples.Durham/simple-query-near2 rename to Documentation/Examples.Durham/simple-query-near2 diff --git a/Doxygen/Examples.Durham/simple-query-range-to-array b/Documentation/Examples.Durham/simple-query-range-to-array similarity index 100% rename from Doxygen/Examples.Durham/simple-query-range-to-array rename to Documentation/Examples.Durham/simple-query-range-to-array diff --git a/Doxygen/Examples.Durham/simple-query-within b/Documentation/Examples.Durham/simple-query-within similarity index 100% rename from Doxygen/Examples.Durham/simple-query-within rename to Documentation/Examples.Durham/simple-query-within diff --git a/Doxygen/Examples.Durham/simple10 b/Documentation/Examples.Durham/simple10 similarity index 100% rename from Doxygen/Examples.Durham/simple10 rename to Documentation/Examples.Durham/simple10 diff --git a/Doxygen/Examples.Durham/simple18 b/Documentation/Examples.Durham/simple18 similarity index 100% rename from Doxygen/Examples.Durham/simple18 rename to Documentation/Examples.Durham/simple18 diff --git a/Doxygen/Examples.Durham/simple19 b/Documentation/Examples.Durham/simple19 similarity index 100% rename from Doxygen/Examples.Durham/simple19 rename to Documentation/Examples.Durham/simple19 diff --git a/Doxygen/Examples.Durham/simple2 b/Documentation/Examples.Durham/simple2 similarity index 100% rename from Doxygen/Examples.Durham/simple2 rename to Documentation/Examples.Durham/simple2 diff --git a/Doxygen/Examples.Durham/simple3 b/Documentation/Examples.Durham/simple3 similarity index 100% rename from Doxygen/Examples.Durham/simple3 rename to Documentation/Examples.Durham/simple3 diff --git a/Doxygen/Examples.Durham/simple4 b/Documentation/Examples.Durham/simple4 similarity index 100% rename from Doxygen/Examples.Durham/simple4 rename to Documentation/Examples.Durham/simple4 diff --git a/Doxygen/Examples.Durham/simple5 b/Documentation/Examples.Durham/simple5 similarity index 100% rename from Doxygen/Examples.Durham/simple5 rename to Documentation/Examples.Durham/simple5 diff --git a/Doxygen/Examples.Durham/simple7 b/Documentation/Examples.Durham/simple7 similarity index 100% rename from Doxygen/Examples.Durham/simple7 rename to Documentation/Examples.Durham/simple7 diff --git a/Doxygen/Examples.Durham/simple8 b/Documentation/Examples.Durham/simple8 similarity index 100% rename from Doxygen/Examples.Durham/simple8 rename to Documentation/Examples.Durham/simple8 diff --git a/Doxygen/Examples.Durham/simple9 b/Documentation/Examples.Durham/simple9 similarity index 100% rename from Doxygen/Examples.Durham/simple9 rename to Documentation/Examples.Durham/simple9 diff --git a/Doxygen/Examples.Durham/system1 b/Documentation/Examples.Durham/system1 similarity index 100% rename from Doxygen/Examples.Durham/system1 rename to Documentation/Examples.Durham/system1 diff --git a/Doxygen/Examples.Fyn/conf1 b/Documentation/Examples.Fyn/conf1 similarity index 100% rename from Doxygen/Examples.Fyn/conf1 rename to Documentation/Examples.Fyn/conf1 diff --git a/Doxygen/Examples.Fyn/conf2 b/Documentation/Examples.Fyn/conf2 similarity index 100% rename from Doxygen/Examples.Fyn/conf2 rename to Documentation/Examples.Fyn/conf2 diff --git a/Doxygen/Examples.Fyn/conf3 b/Documentation/Examples.Fyn/conf3 similarity index 100% rename from Doxygen/Examples.Fyn/conf3 rename to Documentation/Examples.Fyn/conf3 diff --git a/Doxygen/Examples.Fyn/conf4 b/Documentation/Examples.Fyn/conf4 similarity index 100% rename from Doxygen/Examples.Fyn/conf4 rename to Documentation/Examples.Fyn/conf4 diff --git a/Doxygen/Examples.Fyn/conf5 b/Documentation/Examples.Fyn/conf5 similarity index 100% rename from Doxygen/Examples.Fyn/conf5 rename to Documentation/Examples.Fyn/conf5 diff --git a/Documentation/Makefile.doxygen b/Documentation/Makefile.doxygen new file mode 100644 index 0000000000..8a5149df99 --- /dev/null +++ b/Documentation/Makefile.doxygen @@ -0,0 +1,127 @@ +# -*- mode: Makefile; -*- + +################################################################################ +## --SECTION-- DOXYGEN +################################################################################ + +################################################################################ +### @brief directory setup +################################################################################ + +.PHONY: Documentation/js Documentation/js/system Documentation/js/modules + +BUILT_SOURCES += Documentation/.setup-directories + +Documentation/.setup-directories: + @test -d Documentation/js || mkdir Documentation/js + @test -d Documentation/js/actions || mkdir Documentation/js/actions + @test -d Documentation/js/actions/system || mkdir Documentation/js/actions/system + @test -d Documentation/js/common || mkdir Documentation/js/common + @test -d Documentation/js/common/bootstrap || mkdir Documentation/js/common/bootstrap + @test -d Documentation/js/common/modules || mkdir Documentation/js/common/modules + @test -d Documentation/js/server || mkdir Documentation/js/server + @test -d Documentation/js/server/modules || mkdir Documentation/js/server/modules + @test -d Documentation/js/client || mkdir Documentation/js/client + @test -d Documentation/web || mkdir Documentation/web + @touch $@ + +Documentation/js/actions/system/%.c: @srcdir@/js/actions/system/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ + +Documentation/js/common/bootstrap/%.c: @srcdir@/js/common/bootstrap/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ + +Documentation/js/common/modules/%.c: @srcdir@/js/common/modules/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ + +Documentation/js/server/%.c: @srcdir@/js/server/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ + +Documentation/js/server/modules/%.c: @srcdir@/js/server/modules/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ + +Documentation/xml/%.md: Documentation/xml/%.xml + @python @top_srcdir@/Documentation/Scripts/xml2md.py $< > $@ + +################################################################################ +### @brief doxygen +################################################################################ + +.PHONY: doxygen + +Documentation/arango-html.doxy: Documentation/arango.template + sed -e 's:GENERATE_HTML *= *NO:GENERATE_HTML = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = HTML:' < $< > $@ + $(MAKE) lib/BasicsC/voc-errors.h + +doxygen: Documentation/arango-html.doxy $(DOXYGEN) + doxygen Documentation/arango-html.doxy > /dev/null + @for w in $(WIKI); do @top_srcdir@/Documentation/Scripts/html2html.sh Documentation/html/$$w.html Documentation/web/$$w.html; done + +################################################################################ +### @brief wiki +################################################################################ + +.PHONY: wiki wiki2 + +Documentation/arango-xml.doxy: Documentation/arango.template + sed -e 's:GENERATE_XML *= *NO:GENERATE_XML = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = XML:' < $< > $@ + $(MAKE) lib/BasicsC/voc-errors.h + +wiki: wiki2 + @test -d Documentation/wiki || mkdir Documentation/wiki + @for w in $(WIKI); do python @top_srcdir@/Documentation/Scripts/xml2md.py Documentation/xml/$$w.xml > Documentation/xml/$$w.md; done + @for w in $(WIKI); do @top_srcdir@/Documentation/Scripts/fixmd.sh Documentation/xml/$$w.md; done + +wiki2: Documentation/arango-xml.doxy $(DOXYGEN) + doxygen Documentation/arango-xml.doxy > /dev/null + +################################################################################ +### @brief latex +################################################################################ + +.PHONY: latex + +Documentation/arango-latex.doxy: Documentation/arango.template + sed -e 's:GENERATE_LATEX *= *NO:GENERATE_LATEX = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = LATEX:' < $< > $@ + $(MAKE) lib/BasicsC/voc-errors.h + +latex: Documentation/arango-latex.doxy $(DOXYGEN) + doxygen Documentation/arango-latex.doxy > /dev/null + + echo "\def\arangodbversion{@PACKAGE_VERSION@}" > Documentation/latex/version.tex + + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/InstallManual.tex > Documentation/latex/InstallManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode install-manual.tex || true + + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/UserManual.tex > Documentation/latex/UserManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode user-manual.tex || true + + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/ImplementorManual.tex > Documentation/latex/ImplementorManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode implementor-manual.tex || true + + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/RefManual.tex > Documentation/latex/RefManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode ref-manual.tex || true + + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/DbaManual.tex > Documentation/latex/DbaManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode dba-manual.tex || true + + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/ImpManual.tex > Documentation/latex/ImpManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode imp-manual.tex || true + +################################################################################ +### @brief cleanup +################################################################################ + +CLEANUP += \ + $(DOXYGEN) \ + $(addsuffix .md,$(addprefix Documentation/xml/,$(WIKI))) \ + $(addsuffix .md,$(addprefix Documentation/wiki/,$(WIKI))) + +################################################################################ +## --SECTION-- END-OF-FILE +################################################################################ + +## Local Variables: +## mode: outline-minor +## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" +## End: diff --git a/Doxygen/Scripts/arangodb.css b/Documentation/Scripts/arangodb.css similarity index 100% rename from Doxygen/Scripts/arangodb.css rename to Documentation/Scripts/arangodb.css diff --git a/Doxygen/Scripts/arangodb_footer.html b/Documentation/Scripts/arangodb_footer.html similarity index 100% rename from Doxygen/Scripts/arangodb_footer.html rename to Documentation/Scripts/arangodb_footer.html diff --git a/Doxygen/Scripts/arangodb_header.html b/Documentation/Scripts/arangodb_header.html similarity index 100% rename from Doxygen/Scripts/arangodb_header.html rename to Documentation/Scripts/arangodb_header.html diff --git a/Doxygen/Scripts/findverb.sh b/Documentation/Scripts/findverb.sh similarity index 100% rename from Doxygen/Scripts/findverb.sh rename to Documentation/Scripts/findverb.sh diff --git a/Doxygen/Scripts/fixmd.sh b/Documentation/Scripts/fixmd.sh similarity index 100% rename from Doxygen/Scripts/fixmd.sh rename to Documentation/Scripts/fixmd.sh diff --git a/Doxygen/Scripts/html2html.sh b/Documentation/Scripts/html2html.sh similarity index 100% rename from Doxygen/Scripts/html2html.sh rename to Documentation/Scripts/html2html.sh diff --git a/Doxygen/Scripts/js2doxy.py b/Documentation/Scripts/js2doxy.py similarity index 100% rename from Doxygen/Scripts/js2doxy.py rename to Documentation/Scripts/js2doxy.py diff --git a/Doxygen/Scripts/tex2tex.py b/Documentation/Scripts/tex2tex.py similarity index 100% rename from Doxygen/Scripts/tex2tex.py rename to Documentation/Scripts/tex2tex.py diff --git a/Doxygen/Scripts/xml2md.py b/Documentation/Scripts/xml2md.py similarity index 100% rename from Doxygen/Scripts/xml2md.py rename to Documentation/Scripts/xml2md.py diff --git a/Doxygen/arango-html.doxy b/Documentation/arango-html.doxy similarity index 100% rename from Doxygen/arango-html.doxy rename to Documentation/arango-html.doxy diff --git a/Doxygen/arango-latex.doxy b/Documentation/arango-latex.doxy similarity index 100% rename from Doxygen/arango-latex.doxy rename to Documentation/arango-latex.doxy diff --git a/Doxygen/arango-xml.doxy b/Documentation/arango-xml.doxy similarity index 100% rename from Doxygen/arango-xml.doxy rename to Documentation/arango-xml.doxy diff --git a/Doxygen/arango.template.in b/Documentation/arango.template.in similarity index 100% rename from Doxygen/arango.template.in rename to Documentation/arango.template.in diff --git a/Doxygen/latex/dba-manual.tex b/Documentation/latex/dba-manual.tex similarity index 100% rename from Doxygen/latex/dba-manual.tex rename to Documentation/latex/dba-manual.tex diff --git a/Doxygen/latex/header.tex b/Documentation/latex/header.tex similarity index 100% rename from Doxygen/latex/header.tex rename to Documentation/latex/header.tex diff --git a/Doxygen/latex/images/fe1.png b/Documentation/latex/images/fe1.png similarity index 100% rename from Doxygen/latex/images/fe1.png rename to Documentation/latex/images/fe1.png diff --git a/Doxygen/latex/imp-manual.tex b/Documentation/latex/imp-manual.tex similarity index 100% rename from Doxygen/latex/imp-manual.tex rename to Documentation/latex/imp-manual.tex diff --git a/Doxygen/latex/implementor-manual.tex b/Documentation/latex/implementor-manual.tex similarity index 100% rename from Doxygen/latex/implementor-manual.tex rename to Documentation/latex/implementor-manual.tex diff --git a/Doxygen/latex/install-manual.tex b/Documentation/latex/install-manual.tex similarity index 100% rename from Doxygen/latex/install-manual.tex rename to Documentation/latex/install-manual.tex diff --git a/Doxygen/latex/ref-manual.tex b/Documentation/latex/ref-manual.tex similarity index 100% rename from Doxygen/latex/ref-manual.tex rename to Documentation/latex/ref-manual.tex diff --git a/Doxygen/latex/user-manual.tex b/Documentation/latex/user-manual.tex similarity index 100% rename from Doxygen/latex/user-manual.tex rename to Documentation/latex/user-manual.tex diff --git a/Doxygen/web/images/fe1.png b/Documentation/web/images/fe1.png similarity index 100% rename from Doxygen/web/images/fe1.png rename to Documentation/web/images/fe1.png diff --git a/Doxygen/web/images/logo_arangodb.png b/Documentation/web/images/logo_arangodb.png similarity index 100% rename from Doxygen/web/images/logo_arangodb.png rename to Documentation/web/images/logo_arangodb.png diff --git a/Doxygen/Makefile.doxygen b/Doxygen/Makefile.doxygen deleted file mode 100644 index 196d86e25f..0000000000 --- a/Doxygen/Makefile.doxygen +++ /dev/null @@ -1,127 +0,0 @@ -# -*- mode: Makefile; -*- - -################################################################################ -## --SECTION-- DOXYGEN -################################################################################ - -################################################################################ -### @brief directory setup -################################################################################ - -.PHONY: Doxygen/js Doxygen/js/system Doxygen/js/modules - -BUILT_SOURCES += Doxygen/.setup-directories - -Doxygen/.setup-directories: - @test -d Doxygen/js || mkdir Doxygen/js - @test -d Doxygen/js/actions || mkdir Doxygen/js/actions - @test -d Doxygen/js/actions/system || mkdir Doxygen/js/actions/system - @test -d Doxygen/js/common || mkdir Doxygen/js/common - @test -d Doxygen/js/common/bootstrap || mkdir Doxygen/js/common/bootstrap - @test -d Doxygen/js/common/modules || mkdir Doxygen/js/common/modules - @test -d Doxygen/js/server || mkdir Doxygen/js/server - @test -d Doxygen/js/server/modules || mkdir Doxygen/js/server/modules - @test -d Doxygen/js/client || mkdir Doxygen/js/client - @test -d Doxygen/web || mkdir Doxygen/web - @touch $@ - -Doxygen/js/actions/system/%.c: @srcdir@/js/actions/system/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ - -Doxygen/js/common/bootstrap/%.c: @srcdir@/js/common/bootstrap/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ - -Doxygen/js/common/modules/%.c: @srcdir@/js/common/modules/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ - -Doxygen/js/server/%.c: @srcdir@/js/server/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ - -Doxygen/js/server/modules/%.c: @srcdir@/js/server/modules/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ - -Doxygen/xml/%.md: Doxygen/xml/%.xml - @python @top_srcdir@/Doxygen/Scripts/xml2md.py $< > $@ - -################################################################################ -### @brief doxygen -################################################################################ - -.PHONY: doxygen - -Doxygen/arango-html.doxy: Doxygen/arango.template - sed -e 's:GENERATE_HTML *= *NO:GENERATE_HTML = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = HTML:' < $< > $@ - $(MAKE) lib/BasicsC/voc-errors.h - -doxygen: Doxygen/arango-html.doxy $(DOXYGEN) - doxygen Doxygen/arango-html.doxy > /dev/null - @for w in $(WIKI); do @top_srcdir@/Doxygen/Scripts/html2html.sh Doxygen/html/$$w.html Doxygen/web/$$w.html; done - -################################################################################ -### @brief wiki -################################################################################ - -.PHONY: wiki wiki2 - -Doxygen/arango-xml.doxy: Doxygen/arango.template - sed -e 's:GENERATE_XML *= *NO:GENERATE_XML = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = XML:' < $< > $@ - $(MAKE) lib/BasicsC/voc-errors.h - -wiki: wiki2 - @test -d Doxygen/wiki || mkdir Doxygen/wiki - @for w in $(WIKI); do python @top_srcdir@/Doxygen/Scripts/xml2md.py Doxygen/xml/$$w.xml > Doxygen/xml/$$w.md; done - @for w in $(WIKI); do @top_srcdir@/Doxygen/Scripts/fixmd.sh Doxygen/xml/$$w.md; done - -wiki2: Doxygen/arango-xml.doxy $(DOXYGEN) - doxygen Doxygen/arango-xml.doxy > /dev/null - -################################################################################ -### @brief latex -################################################################################ - -.PHONY: latex - -Doxygen/arango-latex.doxy: Doxygen/arango.template - sed -e 's:GENERATE_LATEX *= *NO:GENERATE_LATEX = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = LATEX:' < $< > $@ - $(MAKE) lib/BasicsC/voc-errors.h - -latex: Doxygen/arango-latex.doxy $(DOXYGEN) - doxygen Doxygen/arango-latex.doxy > /dev/null - - echo "\def\arangodbversion{@PACKAGE_VERSION@}" > Doxygen/latex/version.tex - - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/InstallManual.tex > Doxygen/latex/InstallManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode install-manual.tex || true - - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/UserManual.tex > Doxygen/latex/UserManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode user-manual.tex || true - - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/ImplementorManual.tex > Doxygen/latex/ImplementorManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode implementor-manual.tex || true - - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/RefManual.tex > Doxygen/latex/RefManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode ref-manual.tex || true - - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/DbaManual.tex > Doxygen/latex/DbaManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode dba-manual.tex || true - - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/ImpManual.tex > Doxygen/latex/ImpManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode imp-manual.tex || true - -################################################################################ -### @brief cleanup -################################################################################ - -CLEANUP += \ - $(DOXYGEN) \ - $(addsuffix .md,$(addprefix Doxygen/xml/,$(WIKI))) \ - $(addsuffix .md,$(addprefix Doxygen/wiki/,$(WIKI))) - -################################################################################ -## --SECTION-- END-OF-FILE -################################################################################ - -## Local Variables: -## mode: outline-minor -## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" -## End: diff --git a/Contribute/Makefile.ubuntu b/Installation/Contribute/Makefile.ubuntu similarity index 100% rename from Contribute/Makefile.ubuntu rename to Installation/Contribute/Makefile.ubuntu diff --git a/Installation/rc.arangodb.Centos b/Installation/Linux/rc.arangodb.Centos similarity index 100% rename from Installation/rc.arangodb.Centos rename to Installation/Linux/rc.arangodb.Centos diff --git a/Installation/rc.arangodb.Debian b/Installation/Linux/rc.arangodb.Debian similarity index 100% rename from Installation/rc.arangodb.Debian rename to Installation/Linux/rc.arangodb.Debian diff --git a/Installation/rc.arangodb.OpenSuSE b/Installation/Linux/rc.arangodb.OpenSuSE similarity index 100% rename from Installation/rc.arangodb.OpenSuSE rename to Installation/Linux/rc.arangodb.OpenSuSE diff --git a/Installation/rc.arangodb.Ubuntu b/Installation/Linux/rc.arangodb.Ubuntu similarity index 100% rename from Installation/rc.arangodb.Ubuntu rename to Installation/Linux/rc.arangodb.Ubuntu diff --git a/Installation/org.arangodb.plist b/Installation/MacOSX/org.arangodb.plist similarity index 100% rename from Installation/org.arangodb.plist rename to Installation/MacOSX/org.arangodb.plist diff --git a/Makefile.local b/Installation/Makefile.local similarity index 100% rename from Makefile.local rename to Installation/Makefile.local diff --git a/Installation/arangod-local.conf b/Installation/arangod-local.conf deleted file mode 100644 index e2b9b69cd8..0000000000 --- a/Installation/arangod-local.conf +++ /dev/null @@ -1,24 +0,0 @@ -[database] -directory= /tmp/ARANGO/var/arangodb -# maximal-journal-size=33554432 -# remove-on-drop=true - -[server] -http-port = localhost:8529 -http-auth = no -disable-admin-interface = no -# admin-port = localhost:8530 -admin-directory= ./html/admin -threads = 5 - -[scheduler] -threads = 3 - -[javascript] -action-directory= ./js/actions/system -modules-path = ./js/server/modules;./js/common/modules - -[log] -level = info -severity = human -# file = /tmp/arangod.log diff --git a/build.sh b/Installation/build.sh similarity index 100% rename from build.sh rename to Installation/build.sh diff --git a/coverage.sh b/Installation/coverage.sh old mode 100644 new mode 100755 similarity index 100% rename from coverage.sh rename to Installation/coverage.sh diff --git a/Installation/arangodb.list b/Installation/epm/arangodb.list similarity index 98% rename from Installation/arangodb.list rename to Installation/epm/arangodb.list index 0f1356a0eb..63210e10f5 100644 --- a/Installation/arangodb.list +++ b/Installation/epm/arangodb.list @@ -61,7 +61,7 @@ d 0755 ${susr} ${sgrp} /var/log/arangodb - %ifdef macosx d 0755 ${rusr} ${rgrp} /Library/LaunchDaemons/ - -f 0755 ${rusr} ${rgrp} /Library/LaunchDaemons/org.arangodb.plist.template ${project_dir}/Installation/org.arangodb.plist +f 0755 ${rusr} ${rgrp} /Library/LaunchDaemons/org.arangodb.plist.template ${project_dir}/Installation/MacOSX/org.arangodb.plist %postinstall < /Library/LaunchDaemons/org.arangodb.plist launchctl unload /Library/LaunchDaemons/org.arangodb.plist diff --git a/packetize.sh b/Installation/packetize.sh similarity index 98% rename from packetize.sh rename to Installation/packetize.sh index 731abc46ce..64058bef42 100755 --- a/packetize.sh +++ b/Installation/packetize.sh @@ -19,9 +19,9 @@ runlevels="035" curl_version="curl -s -o - http://localhost:8529/_api/version" # name of the epm configuration file -LIST="Installation/${project_name}.list" +LIST="Installation/epm/${project_name}.list" # name of a created epm include file -SUBLIST="Installation/${project_name}.sublist" +SUBLIST="Installation/epm/${project_name}.sublist" START_SCRIPT=""; @@ -39,8 +39,8 @@ initdir=/etc/init.d bindir=${exec_prefix}/bin data_dir=/var static_dir=${prefix}/share -vers_dir=arango-${arangodb_version} -docdir=${prefix}/share/doc/voc/${vers_dir} +vers_dir=arangodb-${arangodb_version} +docdir=${prefix}/share/doc/${vers_dir} echo echo "########################################################" @@ -60,7 +60,7 @@ case $TRI_OS_LONG in package_type="rpm" START_SCRIPT="rc.arangodb.OpenSuSE" runlevels="035" - docdir=${prefix}/share/doc/packages/voc/${vers_dir} + docdir=${prefix}/share/doc/packages/${vers_dir} # exports for the epm configuration file export insserv="true" diff --git a/release.sh b/Installation/release.sh similarity index 99% rename from release.sh rename to Installation/release.sh index 60ee0bea7e..84e5fab4aa 100755 --- a/release.sh +++ b/Installation/release.sh @@ -50,4 +50,3 @@ if [ "$TAG" == "1" ]; then git tag "v$VERSION" git push --tags fi - diff --git a/unittests.sh b/Installation/unittests.sh similarity index 100% rename from unittests.sh rename to Installation/unittests.sh diff --git a/Makefile.am b/Makefile.am index 84f9ac22ad..53b67e03b6 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,15 +1,9 @@ # -*- mode: Makefile; -*- ## ----------------------------------------------------------------------------- -## --SECTION-- FLAGS & VARIABLES +## --SECTION-- FILES ## ----------------------------------------------------------------------------- -################################################################################ -### @brief m4 directory -################################################################################ - -ACLOCAL_AMFLAGS = -I m4 - ################################################################################ ### @brief source to build before compile ################################################################################ @@ -52,6 +46,16 @@ BISONXX_FILES = PROTOBUF_FILES = +## ----------------------------------------------------------------------------- +## --SECTION-- FLAGS +## ----------------------------------------------------------------------------- + +################################################################################ +### @brief m4 directory +################################################################################ + +ACLOCAL_AMFLAGS = -I m4 + ################################################################################ ### @brief preprocessor flags ################################################################################ @@ -68,6 +72,7 @@ AM_CPPFLAGS = \ @PROTOBUF_CPPFLAGS@ \ @V8_CPPFLAGS@ + if ENABLE_ZEROMQ AM_CPPFLAGS += \ @@ -76,40 +81,18 @@ AM_CPPFLAGS += \ endif - -if ENABLE_RELATIVE_SYSTEM - -TRI_LOG_DIR=$(prefix)/var/log/$(PACKAGE_TARNAME) -TRI_PKGDATA_DIR=$(prefix)/share/$(PACKAGE_TARNAME) -TRI_SBIN_DIR=${prefix}/sbin -TRI_SYSCONF_DIR=${prefix}/etc/$(PACKAGE_TARNAME) - -else -if ENABLE_RELATIVE_DEVEL - -TRI_DATABASE_DIR=$(localstatedir)/$(PACKAGE_TARNAME) -TRI_LOG_DIR=/tmp -TRI_PKGDATA_DIR=. -TRI_SBIN_DIR=bin +if ENABLE_RELATIVE AM_CPPFLAGS += \ - -D_DATABASEDIR_='"${TRI_DATABASE_DIR}"' + -D_SYSCONFDIR_='"etc/relative"' + else -TRI_DATABASE_DIR=$(localstatedir)/$(PACKAGE_TARNAME) -TRI_LOG_DIR=$(localstatedir)/log/$(PACKAGE_TARNAME) -TRI_PKGDATA_DIR=${pkgdatadir} -TRI_SBIN_DIR=${sbindir} -TRI_SYSCONF_DIR=$(sysconfdir)/$(PACKAGE_TARNAME) - AM_CPPFLAGS += \ - -D_DATABASEDIR_='"${TRI_DATABASE_DIR}"' \ - -D_PKGDATADIR_='"${TRI_PKGDATA_DIR}"' \ - -D_SYSCONFDIR_='"${TRI_SYSCONF_DIR}"' + -D_SYSCONFDIR_='"${sysconfdir}/${PACKAGE_TARNAME}"' endif -endif ################################################################################ ### @brief linker flags @@ -280,7 +263,7 @@ build.h: configure.ac ### @brief local modifications ################################################################################ --include Makefile.local +-include Installation/Makefile.local ################################################################################ ### @brief source files @@ -342,22 +325,13 @@ built-sources: build.h errorfiles $(JAVASCRIPT_HEADER) # exclude arango skripts from sources list bin_arango_password_SOURCES = -bin/arango-password: bin/arango-password.in -if ENABLE_RELATIVE_DEVEL - sed \ - -e 's%@SBINDIR@%bin%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ -else +bin/arango-password: utils/arango-password.in sed \ -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ $< > $@ chmod 755 $@ -endif CLEANUP += bin/arango-password @@ -394,22 +368,13 @@ CLEANUP += bin/arango-upgrade # exclude arango skrips from sources list bin_arango_dfdb_SOURCES = -bin/arango-dfdb: bin/arango-dfdb.in -if ENABLE_RELATIVE_DEVEL - sed \ - -e 's%@SBINDIR@%bin%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ -else +bin/arango-dfdb: utils/arango-dfdb.in sed \ -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ $< > $@ chmod 755 $@ -endif CLEANUP += bin/arango-dfdb @@ -417,60 +382,78 @@ CLEANUP += bin/arango-dfdb ## --SECTION-- DEPENDENCIES ## ----------------------------------------------------------------------------- -################################################################################ -### @brief mruby -################################################################################ - -if ENABLE_MRUBY -include m4/Makefile.mruby -endif - ################################################################################ ### @brief documentation ################################################################################ -include Doxygen/Makefile.doxygen +include Documentation/Makefile.doxygen ################################################################################ ### @brief javascript ################################################################################ -include m4/Makefile.javascript +include js/Makefile.javascript ################################################################################ -### @brief flex +### @brief mruby +################################################################################ + +if ENABLE_MRUBY +include mr/Makefile.mruby +endif + +## ----------------------------------------------------------------------------- +## --SECTION-- GENERATED FILES +## ----------------------------------------------------------------------------- + +################################################################################ +### @brief generate all flex files ################################################################################ if ENABLE_FLEX -include m4/Makefile.flex +include lib/Makefile.flex endif ################################################################################ -### @brief bison +### @brief generate all bison files ################################################################################ if ENABLE_BISON -include m4/Makefile.bison +include lib/Makefile.bison endif ################################################################################ -### @brief protocol buffers +### @brief generate all protocol buffers ################################################################################ -include m4/Makefile.all-in-one-protobuf -include m4/Makefile.protobuf +include lib/Makefile.protobuf ## ----------------------------------------------------------------------------- ## --SECTION-- EXTERNAL LIBRARIES ## ----------------------------------------------------------------------------- ################################################################################ -### @brief libev and V8 +### @brief libev ################################################################################ -if ENABLE_ALL_IN_ONE -include m4/Makefile.all-in-one-libev -include m4/Makefile.all-in-one-v8 +if ENABLE_ALL_IN_ONE_LIBEV +include 3rdParty/Makefile.all-in-one-libev +endif + +################################################################################ +### @brief protcol buffers +################################################################################ + +if ENABLE_ALL_IN_ONE_PROTOBUF +include 3rdParty/Makefile.all-in-one-protobuf +endif + +################################################################################ +### @brief V8 +################################################################################ + +if ENABLE_ALL_IN_ONE_V8 +include 3rdParty/Makefile.all-in-one-v8 endif ################################################################################ @@ -478,7 +461,7 @@ endif ################################################################################ if ENABLE_MRUBY -include m4/Makefile.all-in-one-mruby +include 3rdParty/Makefile.all-in-one-mruby endif ################################################################################ @@ -486,7 +469,7 @@ endif ################################################################################ if ENABLE_ZEROMQ -include m4/Makefile.all-in-one-zeromq +include 3rdParty/Makefile.all-in-one-zeromq endif ## ----------------------------------------------------------------------------- diff --git a/Makefile.in b/Makefile.in index d8c58b42da..24d6e1803b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -18,7 +18,7 @@ # -*- mode: Makefile; -*- ################################################################################ -### @brief m4 directory +### @brief source to build before compile ################################################################################ # -*- mode: Makefile; -*- @@ -82,15 +82,6 @@ ################################################################################ ################################################################################ -################################################################################ -### @brief sets up the directories -################################################################################ - -# -*- mode: Makefile; -*- - -################################################################################ -################################################################################ - ################################################################################ ### @brief directory setup ################################################################################ @@ -110,32 +101,17 @@ ################################################################################ ################################################################################ -### @brief built sources +### @brief sets up the directories ################################################################################ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief built sources ################################################################################ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - -################################################################################ -### @brief Protobuf -################################################################################ - -# -*- mode: Makefile; -*- - -################################################################################ -################################################################################ - ################################################################################ ### @brief built sources ################################################################################ @@ -143,8 +119,11 @@ # -*- mode: Makefile; -*- ################################################################################ +### @brief built sources ################################################################################ +# -*- mode: Makefile; -*- + ################################################################################ ### @brief libev ################################################################################ @@ -152,26 +131,23 @@ # -*- mode: Makefile; -*- ################################################################################ +### @brief Protobuf ################################################################################ +# -*- mode: Makefile; -*- + ################################################################################ ### @brief V8 ################################################################################ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief mruby ################################################################################ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief ZeroMQ ################################################################################ @@ -201,13 +177,11 @@ target_triplet = @target@ @ENABLE_ZEROMQ_TRUE@am__append_1 = \ @ENABLE_ZEROMQ_TRUE@ @ZEROMQ_CPPFLAGS@ -@ENABLE_RELATIVE_DEVEL_TRUE@@ENABLE_RELATIVE_SYSTEM_FALSE@am__append_2 = \ -@ENABLE_RELATIVE_DEVEL_TRUE@@ENABLE_RELATIVE_SYSTEM_FALSE@ -D_DATABASEDIR_='"${TRI_DATABASE_DIR}"' +@ENABLE_RELATIVE_TRUE@am__append_2 = \ +@ENABLE_RELATIVE_TRUE@ -D_SYSCONFDIR_='"etc/relative"' -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@am__append_3 = \ -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@ -D_DATABASEDIR_='"${TRI_DATABASE_DIR}"' \ -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@ -D_PKGDATADIR_='"${TRI_PKGDATA_DIR}"' \ -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@ -D_SYSCONFDIR_='"${TRI_SYSCONF_DIR}"' +@ENABLE_RELATIVE_FALSE@am__append_3 = \ +@ENABLE_RELATIVE_FALSE@ -D_SYSCONFDIR_='"${sysconfdir}/${PACKAGE_TARNAME}"' @ENABLE_ZEROMQ_TRUE@am__append_4 = \ @ENABLE_ZEROMQ_TRUE@ @ZEROMQ_LDFLAGS@ @@ -236,9 +210,15 @@ noinst_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3) @ENABLE_MRUBY_TRUE@am__append_10 = \ @ENABLE_MRUBY_TRUE@ $(shell find @srcdir@/mr/actions/system -name "*.rb" -print) -DIST_COMMON = $(am__configure_deps) $(srcdir)/Doxygen/Makefile.doxygen \ - $(srcdir)/Makefile.am $(srcdir)/Makefile.files \ - $(srcdir)/Makefile.in $(srcdir)/PerfTests/Makefile.files \ +DIST_COMMON = $(am__configure_deps) \ + $(srcdir)/3rdParty/Makefile.all-in-one-libev \ + $(srcdir)/3rdParty/Makefile.all-in-one-mruby \ + $(srcdir)/3rdParty/Makefile.all-in-one-protobuf \ + $(srcdir)/3rdParty/Makefile.all-in-one-v8 \ + $(srcdir)/3rdParty/Makefile.all-in-one-zeromq \ + $(srcdir)/Documentation/Makefile.doxygen $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.files $(srcdir)/Makefile.in \ + $(srcdir)/PerfTests/Makefile.files \ $(srcdir)/UnitTests/Makefile.files \ $(srcdir)/arangod/Makefile.files \ $(srcdir)/arangoirb/Makefile.files \ @@ -298,9 +278,11 @@ DIST_COMMON = $(am__configure_deps) $(srcdir)/Doxygen/Makefile.doxygen \ ### @brief CLEANUP ################################################################################ @ENABLE_BISON_TRUE@am__append_22 = $(BISON_FILES) $(BISONXX_FILES) -@ENABLE_ALL_IN_ONE_TRUE@am__append_23 = @LIBEV_LIBS@ @V8_LIBS@ -@ENABLE_MRUBY_TRUE@am__append_24 = @MRUBY_LIBS@ -@ENABLE_ZEROMQ_TRUE@am__append_25 = @ZEROMQ_LIBS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@am__append_23 = @LIBEV_LIBS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@am__append_24 = @PROTOBUF_LIBS@ +@ENABLE_ALL_IN_ONE_V8_TRUE@am__append_25 = @V8_LIBS@ +@ENABLE_MRUBY_TRUE@am__append_26 = @MRUBY_LIBS@ +@ENABLE_ZEROMQ_TRUE@am__append_27 = @ZEROMQ_LIBS@ subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acx_pthread.m4 \ @@ -308,7 +290,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/acx_pthread.m4 \ $(top_srcdir)/m4/ax_cxx_check_lib.m4 \ $(top_srcdir)/m4/configure.basics \ $(top_srcdir)/m4/configure.static \ - $(top_srcdir)/m4/configure.32bit \ $(top_srcdir)/m4/configure.memory \ $(top_srcdir)/m4/configure.logging \ $(top_srcdir)/m4/configure.largefile \ @@ -321,13 +302,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/acx_pthread.m4 \ $(top_srcdir)/m4/external.ncurses \ $(top_srcdir)/m4/external.readline \ $(top_srcdir)/m4/external.openssl \ - $(top_srcdir)/m4/all-in-one.libev \ - $(top_srcdir)/m4/external.libev $(top_srcdir)/m4/all-in-one.v8 \ - $(top_srcdir)/m4/external.v8 $(top_srcdir)/m4/all-in-one.mruby \ - $(top_srcdir)/m4/all-in-one.protobuf \ - $(top_srcdir)/m4/all-in-one.zeromq \ $(top_srcdir)/m4/all-in-one.boost \ $(top_srcdir)/m4/external.boost \ + $(top_srcdir)/m4/all-in-one.libev \ + $(top_srcdir)/m4/external.libev \ + $(top_srcdir)/m4/all-in-one.mruby \ + $(top_srcdir)/m4/all-in-one.protobuf \ + $(top_srcdir)/m4/external.protobuf \ + $(top_srcdir)/m4/all-in-one.v8 $(top_srcdir)/m4/external.v8 \ + $(top_srcdir)/m4/all-in-one.zeromq \ $(top_srcdir)/m4/configure.information \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ @@ -337,7 +320,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config/config.h \ $(top_builddir)/lib/BasicsC/local-configuration.h -CONFIG_CLEAN_FILES = Doxygen/arango.template +CONFIG_CLEAN_FILES = Documentation/arango.template CONFIG_CLEAN_VPATH_FILES = LIBRARIES = $(noinst_LIBRARIES) AR = ar @@ -755,6 +738,7 @@ bin_arangod_DEPENDENCIES = lib/libarango_fe.a lib/libarango_v8.a \ lib/libarango.a $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ $(am__DEPENDENCIES_1) am_bin_arangoimp_OBJECTS = \ + arangosh/ArangoShell/bin_arangoimp-ArangoClient.$(OBJEXT) \ arangosh/V8Client/bin_arangoimp-ImportHelper.$(OBJEXT) \ arangosh/V8Client/bin_arangoimp-V8ClientConnection.$(OBJEXT) \ arangosh/V8Client/bin_arangoimp-arangoimp.$(OBJEXT) @@ -771,6 +755,7 @@ bin_arangoirb_OBJECTS = $(am_bin_arangoirb_OBJECTS) @ENABLE_MRUBY_TRUE@ lib/libarango_client.a lib/libarango.a \ @ENABLE_MRUBY_TRUE@ $(am__DEPENDENCIES_2) am_bin_arangosh_OBJECTS = \ + arangosh/ArangoShell/bin_arangosh-ArangoClient.$(OBJEXT) \ arangosh/V8Client/bin_arangosh-ImportHelper.$(OBJEXT) \ arangosh/V8Client/bin_arangosh-V8ClientConnection.$(OBJEXT) \ arangosh/V8Client/bin_arangosh-arangosh.$(OBJEXT) @@ -956,6 +941,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PROTOBUF_CPPFLAGS = @PROTOBUF_CPPFLAGS@ PROTOBUF_LDFLAGS = @PROTOBUF_LDFLAGS@ PROTOBUF_LIBS = @PROTOBUF_LIBS@ +PROTOBUF_PROTOC = @PROTOBUF_PROTOC@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ @@ -1031,17 +1017,12 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -ACLOCAL_AMFLAGS = -I m4 - -################################################################################ -### @brief source to build before compile -################################################################################ BUILT_SOURCES = build.h Installation/arangod.conf $(JAVASCRIPT_HEADER) \ $(JAVASCRIPT_BROWSER) $(MRUBY_HEADER) $(am__append_16) \ - $(am__append_17) Doxygen/.setup-directories \ - .setup-js-directories $(am__append_19) $(am__append_21) \ - @PROTOBUF_LIBS@ $(PROTOBUF_FILES) $(am__append_23) \ - $(am__append_24) $(am__append_25) + Documentation/.setup-directories .setup-js-directories \ + $(am__append_17) $(am__append_19) $(am__append_21) \ + $(PROTOBUF_FILES) $(am__append_23) $(am__append_24) \ + $(am__append_25) $(am__append_26) $(am__append_27) ################################################################################ ### @brief files to cleanup @@ -1121,6 +1102,11 @@ BISONXX_FILES = lib/JsonParserX/JsonParserX.cpp ################################################################################ PROTOBUF_FILES = lib/ProtocolBuffers/arangodb.pb.cpp +################################################################################ +### @brief m4 directory +################################################################################ +ACLOCAL_AMFLAGS = -I m4 + ################################################################################ ### @brief preprocessor flags ################################################################################ @@ -1129,19 +1115,6 @@ AM_CPPFLAGS = -I@top_srcdir@/lib -I@top_builddir@/lib @BOOST_CPPFLAGS@ \ @OPENSSL_CPPFLAGS@ @READLINE_CPPFLAGS@ @PROTOBUF_CPPFLAGS@ \ @V8_CPPFLAGS@ $(am__append_1) $(am__append_2) $(am__append_3) \ $(am__append_5) -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_LOG_DIR = $(localstatedir)/log/$(PACKAGE_TARNAME) -@ENABLE_RELATIVE_DEVEL_TRUE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_LOG_DIR = /tmp -@ENABLE_RELATIVE_SYSTEM_TRUE@TRI_LOG_DIR = $(prefix)/var/log/$(PACKAGE_TARNAME) -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_PKGDATA_DIR = ${pkgdatadir} -@ENABLE_RELATIVE_DEVEL_TRUE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_PKGDATA_DIR = . -@ENABLE_RELATIVE_SYSTEM_TRUE@TRI_PKGDATA_DIR = $(prefix)/share/$(PACKAGE_TARNAME) -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_SBIN_DIR = ${sbindir} -@ENABLE_RELATIVE_DEVEL_TRUE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_SBIN_DIR = bin -@ENABLE_RELATIVE_SYSTEM_TRUE@TRI_SBIN_DIR = ${prefix}/sbin -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_SYSCONF_DIR = $(sysconfdir)/$(PACKAGE_TARNAME) -@ENABLE_RELATIVE_SYSTEM_TRUE@TRI_SYSCONF_DIR = ${prefix}/etc/$(PACKAGE_TARNAME) -@ENABLE_RELATIVE_DEVEL_FALSE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_DATABASE_DIR = $(localstatedir)/$(PACKAGE_TARNAME) -@ENABLE_RELATIVE_DEVEL_TRUE@@ENABLE_RELATIVE_SYSTEM_FALSE@TRI_DATABASE_DIR = $(localstatedir)/$(PACKAGE_TARNAME) ################################################################################ ### @brief linker flags @@ -1502,6 +1475,7 @@ bin_arangosh_LDADD = \ @V8_LIBS@ bin_arangosh_SOURCES = \ + arangosh/ArangoShell/ArangoClient.cpp \ arangosh/V8Client/ImportHelper.cpp \ arangosh/V8Client/V8ClientConnection.cpp \ arangosh/V8Client/arangosh.cpp @@ -1522,6 +1496,7 @@ bin_arangoimp_LDADD = \ @V8_LIBS@ bin_arangoimp_SOURCES = \ + arangosh/ArangoShell/ArangoClient.cpp \ arangosh/V8Client/ImportHelper.cpp \ arangosh/V8Client/V8ClientConnection.cpp \ arangosh/V8Client/arangoimp.cpp @@ -1583,13 +1558,31 @@ PIDFILE := /tmp/arango.$(PID).pid VOCDIR := /tmp/vocdir.$(PID) VOCPORT := $(shell printf "3%04d" `expr $(PID) % 10000`) VOCHOST := 127.0.0.1 -SERVER_START := -SERVER_OPT := --configuration none --javascript.startup-directory @top_srcdir@/js --javascript.modules-path @top_srcdir@/js/server/modules:@top_srcdir@/js/common/modules --javascript.action-directory @top_srcdir@/js/actions/system --database.maximal-journal-size 1048576 --javascript.gc-interval 1 --server.threads 4 $(SERVER_START) -CLIENT_OPT := --javascript.startup-directory @top_srcdir@/js --javascript.modules-path @top_srcdir@/js/client/modules:@top_srcdir@/js/common/modules --no-colors --quiet STARTFILE := $(VOCDIR)/startup CURL := curl CURL_OPT := --basic --user "$(USERNAME):$(PASSWORD)" -CERT_FILE := @srcdir@/UnitTests/server.pem +CERT_FILE := @top_srcdir@/UnitTests/server.pem +SERVER_START := +SERVER_OPT := \ + --configuration none \ + --database.maximal-journal-size 1048576 \ + --javascript.action-directory @top_srcdir@/js/actions/system \ + --javascript.gc-interval 1 \ + --javascript.modules-path @top_srcdir@/js/server/modules:@top_srcdir@/js/common/modules \ + --javascript.startup-directory @top_srcdir@/js \ + --ruby.action-directory @top_srcdir@/mr/actions/system \ + --ruby.modules-path @top_srcdir@/mr/server/modules:@top_srcdir@/mr/common/modules \ + --server.threads 4 \ + --server.admin-directory ./html/admin \ + $(SERVER_START) + +CLIENT_OPT := \ + --configuration none \ + --javascript.startup-directory @top_srcdir@/js \ + --javascript.modules-path @top_srcdir@/js/client/modules:@top_srcdir@/js/common/modules \ + --no-colors \ + --quiet + @ENABLE_BOOST_TEST_TRUE@UnitTests_basics_suite_LDADD = -L@top_builddir@/lib -larango -lboost_unit_test_framework @ENABLE_BOOST_TEST_TRUE@UnitTests_basics_suite_DEPENDENCIES = @top_builddir@/lib/libarango.a @ENABLE_BOOST_TEST_TRUE@UnitTests_basics_suite_SOURCES = \ @@ -1618,75 +1611,75 @@ CERT_FILE := @srcdir@/UnitTests/server.pem ################################################################################ ################################################################################ -SHELL_COMMON = @srcdir@/js/common/tests/shell-document.js \ - @srcdir@/js/common/tests/shell-edge.js \ - @srcdir@/js/common/tests/shell-compactor.js \ - @srcdir@/js/common/tests/shell-collection.js \ - @srcdir@/js/common/tests/shell-simple-query.js \ - @srcdir@/js/common/tests/shell-index.js \ - @srcdir@/js/common/tests/shell-index-geo.js \ - @srcdir@/js/common/tests/shell-cap-constraint.js \ - @srcdir@/js/common/tests/shell-unique-constraint.js \ - @srcdir@/js/common/tests/shell-hash-index.js +SHELL_COMMON = @top_srcdir@/js/common/tests/shell-document.js \ + @top_srcdir@/js/common/tests/shell-edge.js \ + @top_srcdir@/js/common/tests/shell-compactor.js \ + @top_srcdir@/js/common/tests/shell-collection.js \ + @top_srcdir@/js/common/tests/shell-simple-query.js \ + @top_srcdir@/js/common/tests/shell-index.js \ + @top_srcdir@/js/common/tests/shell-index-geo.js \ + @top_srcdir@/js/common/tests/shell-cap-constraint.js \ + @top_srcdir@/js/common/tests/shell-unique-constraint.js \ + @top_srcdir@/js/common/tests/shell-hash-index.js SHELL_SERVER = $(SHELL_COMMON) UNITTESTS_SERVER = $(addprefix --javascript.unit-tests ,$(SHELL_SERVER)) ################################################################################ ################################################################################ -SHELL_SERVER_AHUACATL = @srcdir@/js/server/tests/ahuacatl-ranges.js \ - @srcdir@/js/server/tests/ahuacatl-queries-optimiser.js \ - @srcdir@/js/server/tests/ahuacatl-escaping.js \ - @srcdir@/js/server/tests/ahuacatl-functions.js \ - @srcdir@/js/server/tests/ahuacatl-variables.js \ - @srcdir@/js/server/tests/ahuacatl-bind.js \ - @srcdir@/js/server/tests/ahuacatl-complex.js \ - @srcdir@/js/server/tests/ahuacatl-logical.js \ - @srcdir@/js/server/tests/ahuacatl-arithmetic.js \ - @srcdir@/js/server/tests/ahuacatl-relational.js \ - @srcdir@/js/server/tests/ahuacatl-ternary.js \ - @srcdir@/js/server/tests/ahuacatl-parse.js \ - @srcdir@/js/server/tests/ahuacatl-hash.js \ - @srcdir@/js/server/tests/ahuacatl-skiplist.js \ - @srcdir@/js/server/tests/ahuacatl-refaccess-variable.js \ - @srcdir@/js/server/tests/ahuacatl-refaccess-attribute.js \ - @srcdir@/js/server/tests/ahuacatl-skiplist.js \ - @srcdir@/js/server/tests/ahuacatl-queries-simple.js \ - @srcdir@/js/server/tests/ahuacatl-queries-variables.js \ - @srcdir@/js/server/tests/ahuacatl-queries-geo.js \ - @srcdir@/js/server/tests/ahuacatl-queries-collection.js \ - @srcdir@/js/server/tests/ahuacatl-queries-noncollection.js \ - @srcdir@/js/server/tests/ahuacatl-operators.js +SHELL_SERVER_AHUACATL = @top_srcdir@/js/server/tests/ahuacatl-ranges.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-optimiser.js \ + @top_srcdir@/js/server/tests/ahuacatl-escaping.js \ + @top_srcdir@/js/server/tests/ahuacatl-functions.js \ + @top_srcdir@/js/server/tests/ahuacatl-variables.js \ + @top_srcdir@/js/server/tests/ahuacatl-bind.js \ + @top_srcdir@/js/server/tests/ahuacatl-complex.js \ + @top_srcdir@/js/server/tests/ahuacatl-logical.js \ + @top_srcdir@/js/server/tests/ahuacatl-arithmetic.js \ + @top_srcdir@/js/server/tests/ahuacatl-relational.js \ + @top_srcdir@/js/server/tests/ahuacatl-ternary.js \ + @top_srcdir@/js/server/tests/ahuacatl-parse.js \ + @top_srcdir@/js/server/tests/ahuacatl-hash.js \ + @top_srcdir@/js/server/tests/ahuacatl-skiplist.js \ + @top_srcdir@/js/server/tests/ahuacatl-refaccess-variable.js \ + @top_srcdir@/js/server/tests/ahuacatl-refaccess-attribute.js \ + @top_srcdir@/js/server/tests/ahuacatl-skiplist.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-simple.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-variables.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-geo.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-collection.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-noncollection.js \ + @top_srcdir@/js/server/tests/ahuacatl-operators.js SHELL_SERVER_AHUACATL_EXTENDED = \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-1.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-2.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-3.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-4.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-5.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-6.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-7.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-8.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-9.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-10.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-11.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-12.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-13.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-14.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-15.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-16.js + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-1.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-2.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-3.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-4.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-5.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-6.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-7.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-8.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-9.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-10.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-11.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-12.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-13.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-14.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-15.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-16.js UNITTESTS_SERVER_AHUACATL = $(addprefix --javascript.unit-tests ,$(SHELL_SERVER_AHUACATL)) UNITTESTS_SERVER_AHUACATL_EXTENDED = $(addprefix --javascript.unit-tests ,$(SHELL_SERVER_AHUACATL_EXTENDED)) ################################################################################ ################################################################################ -SHELL_CLIENT = $(SHELL_COMMON) js/client/tests/client.js +SHELL_CLIENT = $(SHELL_COMMON) @top_srcdir@/js/client/tests/client.js UNITTESTS_CLIENT = $(addprefix --javascript.unit-tests ,$(SHELL_CLIENT)) ################################################################################ ################################################################################ -BITARRAY_COMMON = @srcdir@/js/common/tests/shell-bitarray-index.js +BITARRAY_COMMON = @top_srcdir@/js/common/tests/shell-bitarray-index.js UNITTESTS_SERVER_BITARRAY = $(addprefix --javascript.unit-tests ,$(BITARRAY_COMMON)) ################################################################################ @@ -1709,13 +1702,7 @@ bin_arango_upgrade_SOURCES = # exclude arango skrips from sources list bin_arango_dfdb_SOURCES = -PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD -@ENABLE_32BIT_TRUE@@ENABLE_ALL_IN_ONE_TRUE@LIBEV_BUILD_VERSION = ARCH.ia32 -@ENABLE_64BIT_TRUE@@ENABLE_ALL_IN_ONE_TRUE@LIBEV_BUILD_VERSION = ARCH.x64 -@ENABLE_ALL_IN_ONE_TRUE@@ENABLE_FORCE_32BIT_FALSE@LIBEV_BUILD_CFLAGS_X = -O2 -g -@ENABLE_ALL_IN_ONE_TRUE@@ENABLE_FORCE_32BIT_TRUE@LIBEV_BUILD_CFLAGS_X = -m32 -O2 -g -@ENABLE_ALL_IN_ONE_TRUE@@ENABLE_FORCE_32BIT_FALSE@LIBEV_BUILD_LDFLAGS_X = -@ENABLE_ALL_IN_ONE_TRUE@@ENABLE_FORCE_32BIT_TRUE@LIBEV_BUILD_LDFLAGS_X = -m32 +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD @ENABLE_ZEROMQ_TRUE@ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-am @@ -1724,7 +1711,7 @@ all: $(BUILT_SOURCES) .SUFFIXES: .c .cpp .o .obj am--refresh: @: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.files $(srcdir)/lib/Makefile.files $(srcdir)/arangod/Makefile.files $(srcdir)/arangosh/Makefile.files $(srcdir)/arangoirb/Makefile.files $(srcdir)/PerfTests/Makefile.files $(srcdir)/UnitTests/Makefile.files $(srcdir)/m4/Makefile.mruby $(srcdir)/Doxygen/Makefile.doxygen $(srcdir)/m4/Makefile.javascript $(srcdir)/m4/Makefile.flex $(srcdir)/m4/Makefile.bison $(srcdir)/m4/Makefile.all-in-one-protobuf $(srcdir)/m4/Makefile.protobuf $(srcdir)/m4/Makefile.all-in-one-libev $(srcdir)/m4/Makefile.all-in-one-v8 $(srcdir)/m4/Makefile.all-in-one-mruby $(srcdir)/m4/Makefile.all-in-one-zeromq $(am__configure_deps) +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.files $(srcdir)/lib/Makefile.files $(srcdir)/arangod/Makefile.files $(srcdir)/arangosh/Makefile.files $(srcdir)/arangoirb/Makefile.files $(srcdir)/PerfTests/Makefile.files $(srcdir)/UnitTests/Makefile.files $(srcdir)/Documentation/Makefile.doxygen $(srcdir)/js/Makefile.javascript $(srcdir)/mr/Makefile.mruby $(srcdir)/lib/Makefile.flex $(srcdir)/lib/Makefile.bison $(srcdir)/lib/Makefile.protobuf $(srcdir)/3rdParty/Makefile.all-in-one-libev $(srcdir)/3rdParty/Makefile.all-in-one-protobuf $(srcdir)/3rdParty/Makefile.all-in-one-v8 $(srcdir)/3rdParty/Makefile.all-in-one-mruby $(srcdir)/3rdParty/Makefile.all-in-one-zeromq $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -1783,7 +1770,7 @@ lib/BasicsC/stamp-h2: $(top_srcdir)/lib/BasicsC/local-configuration.h.in $(top_b distclean-hdr: -rm -f config/config.h config/stamp-h1 lib/BasicsC/local-configuration.h lib/BasicsC/stamp-h2 -Doxygen/arango.template: $(top_builddir)/config.status $(top_srcdir)/Doxygen/arango.template.in +Documentation/arango.template: $(top_builddir)/config.status $(top_srcdir)/Documentation/arango.template.in cd $(top_builddir) && $(SHELL) ./config.status $@ clean-noinstLIBRARIES: @@ -2762,6 +2749,15 @@ arangod/MRServer/bin_arangod-mr-actions.$(OBJEXT): \ bin/arangod$(EXEEXT): $(bin_arangod_OBJECTS) $(bin_arangod_DEPENDENCIES) bin/$(am__dirstamp) @rm -f bin/arangod$(EXEEXT) $(AM_V_CXXLD)$(CXXLINK) $(bin_arangod_OBJECTS) $(bin_arangod_LDADD) $(LIBS) +arangosh/ArangoShell/$(am__dirstamp): + @$(MKDIR_P) arangosh/ArangoShell + @: > arangosh/ArangoShell/$(am__dirstamp) +arangosh/ArangoShell/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) arangosh/ArangoShell/$(DEPDIR) + @: > arangosh/ArangoShell/$(DEPDIR)/$(am__dirstamp) +arangosh/ArangoShell/bin_arangoimp-ArangoClient.$(OBJEXT): \ + arangosh/ArangoShell/$(am__dirstamp) \ + arangosh/ArangoShell/$(DEPDIR)/$(am__dirstamp) arangosh/V8Client/$(am__dirstamp): @$(MKDIR_P) arangosh/V8Client @: > arangosh/V8Client/$(am__dirstamp) @@ -2795,6 +2791,9 @@ arangoirb/MRClient/bin_arangoirb-arangoirb.$(OBJEXT): \ bin/arangoirb$(EXEEXT): $(bin_arangoirb_OBJECTS) $(bin_arangoirb_DEPENDENCIES) bin/$(am__dirstamp) @rm -f bin/arangoirb$(EXEEXT) $(AM_V_CXXLD)$(CXXLINK) $(bin_arangoirb_OBJECTS) $(bin_arangoirb_LDADD) $(LIBS) +arangosh/ArangoShell/bin_arangosh-ArangoClient.$(OBJEXT): \ + arangosh/ArangoShell/$(am__dirstamp) \ + arangosh/ArangoShell/$(DEPDIR)/$(am__dirstamp) arangosh/V8Client/bin_arangosh-ImportHelper.$(OBJEXT): \ arangosh/V8Client/$(am__dirstamp) \ arangosh/V8Client/$(DEPDIR)/$(am__dirstamp) @@ -2918,6 +2917,8 @@ mostlyclean-compile: -rm -f arangod/VocBase/bin_arangod-vocbase.$(OBJEXT) -rm -f arangoirb/MRClient/bin_arangoirb-MRubyClientConnection.$(OBJEXT) -rm -f arangoirb/MRClient/bin_arangoirb-arangoirb.$(OBJEXT) + -rm -f arangosh/ArangoShell/bin_arangoimp-ArangoClient.$(OBJEXT) + -rm -f arangosh/ArangoShell/bin_arangosh-ArangoClient.$(OBJEXT) -rm -f arangosh/V8Client/bin_arangoimp-ImportHelper.$(OBJEXT) -rm -f arangosh/V8Client/bin_arangoimp-V8ClientConnection.$(OBJEXT) -rm -f arangosh/V8Client/bin_arangoimp-arangoimp.$(OBJEXT) @@ -3180,6 +3181,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@arangod/VocBase/$(DEPDIR)/bin_arangod-vocbase.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-MRubyClientConnection.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@arangosh/V8Client/$(DEPDIR)/bin_arangoimp-V8ClientConnection.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@arangosh/V8Client/$(DEPDIR)/bin_arangoimp-arangoimp.Po@am__quote@ @@ -4537,9 +4540,6 @@ arangod/MRServer/bin_arangod-mr-actions.obj: arangod/MRServer/mr-actions.cpp @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangod/MRServer/mr-actions.cpp' object='arangod/MRServer/bin_arangod-mr-actions.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangod_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangod/MRServer/bin_arangod-mr-actions.obj `if test -f 'arangod/MRServer/mr-actions.cpp'; then $(CYGPATH_W) 'arangod/MRServer/mr-actions.cpp'; else $(CYGPATH_W) '$(srcdir)/arangod/MRServer/mr-actions.cpp'; fi` - -arangosh/V8Client/bin_arangoimp-ImportHelper.o: arangosh/V8Client/ImportHelper.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/V8Client/bin_arangoimp-ImportHelper.o -MD -MP -MF arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Tpo -c -o arangosh/V8Client/bin_arangoimp-ImportHelper.o `test -f 'arangosh/V8Client/ImportHelper.cpp' || echo '$(srcdir)/'`arangosh/V8Client/ImportHelper.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Tpo arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Po @am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/V8Client/ImportHelper.cpp' object='arangosh/V8Client/bin_arangoimp-ImportHelper.o' libtool=no @AMDEPBACKSLASH@ @@ -4615,8 +4615,6 @@ arangoirb/MRClient/bin_arangoirb-arangoirb.obj: arangoirb/MRClient/arangoirb.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Tpo arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Po @am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangoirb/MRClient/arangoirb.cpp' object='arangoirb/MRClient/bin_arangoirb-arangoirb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoirb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangoirb/MRClient/bin_arangoirb-arangoirb.obj `if test -f 'arangoirb/MRClient/arangoirb.cpp'; then $(CYGPATH_W) 'arangoirb/MRClient/arangoirb.cpp'; else $(CYGPATH_W) '$(srcdir)/arangoirb/MRClient/arangoirb.cpp'; fi` arangosh/V8Client/bin_arangosh-ImportHelper.o: arangosh/V8Client/ImportHelper.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/V8Client/bin_arangosh-ImportHelper.o -MD -MP -MF arangosh/V8Client/$(DEPDIR)/bin_arangosh-ImportHelper.Tpo -c -o arangosh/V8Client/bin_arangosh-ImportHelper.o `test -f 'arangosh/V8Client/ImportHelper.cpp' || echo '$(srcdir)/'`arangosh/V8Client/ImportHelper.cpp @@ -5026,6 +5024,8 @@ distclean-generic: -rm -f arangod/VocBase/$(am__dirstamp) -rm -f arangoirb/MRClient/$(DEPDIR)/$(am__dirstamp) -rm -f arangoirb/MRClient/$(am__dirstamp) + -rm -f arangosh/ArangoShell/$(DEPDIR)/$(am__dirstamp) + -rm -f arangosh/ArangoShell/$(am__dirstamp) -rm -f arangosh/V8Client/$(DEPDIR)/$(am__dirstamp) -rm -f arangosh/V8Client/$(am__dirstamp) -rm -f bin/$(am__dirstamp) @@ -5090,7 +5090,7 @@ clean-am: clean-binPROGRAMS clean-generic clean-local \ distclean: distclean-am -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf PerfTests/$(DEPDIR) UnitTests/$(DEPDIR) UnitTests/Cambridge/$(DEPDIR) UnitTests/Jutland/$(DEPDIR) UnitTests/Philadelphia/$(DEPDIR) arangod/Actions/$(DEPDIR) arangod/Ahuacatl/$(DEPDIR) arangod/BitIndexes/$(DEPDIR) arangod/GeoIndex/$(DEPDIR) arangod/HashIndex/$(DEPDIR) arangod/IndexIterators/$(DEPDIR) arangod/IndexOperators/$(DEPDIR) arangod/MRServer/$(DEPDIR) arangod/PriorityQueue/$(DEPDIR) arangod/RestHandler/$(DEPDIR) arangod/RestServer/$(DEPDIR) arangod/SkipLists/$(DEPDIR) arangod/V8Server/$(DEPDIR) arangod/VocBase/$(DEPDIR) arangoirb/MRClient/$(DEPDIR) arangosh/V8Client/$(DEPDIR) lib/Admin/$(DEPDIR) lib/ApplicationServer/$(DEPDIR) lib/Basics/$(DEPDIR) lib/BasicsC/$(DEPDIR) lib/Dispatcher/$(DEPDIR) lib/HttpServer/$(DEPDIR) lib/JsonParser/$(DEPDIR) lib/JsonParserX/$(DEPDIR) lib/Logger/$(DEPDIR) lib/MRuby/$(DEPDIR) lib/ProgramOptions/$(DEPDIR) lib/ProtocolBuffers/$(DEPDIR) lib/Rest/$(DEPDIR) lib/ResultGenerator/$(DEPDIR) lib/Scheduler/$(DEPDIR) lib/ShapedJson/$(DEPDIR) lib/SimpleHttpClient/$(DEPDIR) lib/Statistics/$(DEPDIR) lib/UserManager/$(DEPDIR) lib/Utilities/$(DEPDIR) lib/V8/$(DEPDIR) lib/Variant/$(DEPDIR) lib/ZeroMQ/$(DEPDIR) + -rm -rf PerfTests/$(DEPDIR) UnitTests/$(DEPDIR) UnitTests/Cambridge/$(DEPDIR) UnitTests/Jutland/$(DEPDIR) UnitTests/Philadelphia/$(DEPDIR) arangod/Actions/$(DEPDIR) arangod/Ahuacatl/$(DEPDIR) arangod/BitIndexes/$(DEPDIR) arangod/GeoIndex/$(DEPDIR) arangod/HashIndex/$(DEPDIR) arangod/IndexIterators/$(DEPDIR) arangod/IndexOperators/$(DEPDIR) arangod/MRServer/$(DEPDIR) arangod/PriorityQueue/$(DEPDIR) arangod/RestHandler/$(DEPDIR) arangod/RestServer/$(DEPDIR) arangod/SkipLists/$(DEPDIR) arangod/V8Server/$(DEPDIR) arangod/VocBase/$(DEPDIR) arangoirb/MRClient/$(DEPDIR) arangosh/ArangoShell/$(DEPDIR) arangosh/V8Client/$(DEPDIR) lib/Admin/$(DEPDIR) lib/ApplicationServer/$(DEPDIR) lib/Basics/$(DEPDIR) lib/BasicsC/$(DEPDIR) lib/Dispatcher/$(DEPDIR) lib/HttpServer/$(DEPDIR) lib/JsonParser/$(DEPDIR) lib/JsonParserX/$(DEPDIR) lib/Logger/$(DEPDIR) lib/MRuby/$(DEPDIR) lib/ProgramOptions/$(DEPDIR) lib/ProtocolBuffers/$(DEPDIR) lib/Rest/$(DEPDIR) lib/ResultGenerator/$(DEPDIR) lib/Scheduler/$(DEPDIR) lib/ShapedJson/$(DEPDIR) lib/SimpleHttpClient/$(DEPDIR) lib/Statistics/$(DEPDIR) lib/UserManager/$(DEPDIR) lib/Utilities/$(DEPDIR) lib/V8/$(DEPDIR) lib/Variant/$(DEPDIR) lib/ZeroMQ/$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-hdr distclean-tags @@ -5139,7 +5139,7 @@ installcheck-am: maintainer-clean: maintainer-clean-am -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache - -rm -rf PerfTests/$(DEPDIR) UnitTests/$(DEPDIR) UnitTests/Cambridge/$(DEPDIR) UnitTests/Jutland/$(DEPDIR) UnitTests/Philadelphia/$(DEPDIR) arangod/Actions/$(DEPDIR) arangod/Ahuacatl/$(DEPDIR) arangod/BitIndexes/$(DEPDIR) arangod/GeoIndex/$(DEPDIR) arangod/HashIndex/$(DEPDIR) arangod/IndexIterators/$(DEPDIR) arangod/IndexOperators/$(DEPDIR) arangod/MRServer/$(DEPDIR) arangod/PriorityQueue/$(DEPDIR) arangod/RestHandler/$(DEPDIR) arangod/RestServer/$(DEPDIR) arangod/SkipLists/$(DEPDIR) arangod/V8Server/$(DEPDIR) arangod/VocBase/$(DEPDIR) arangoirb/MRClient/$(DEPDIR) arangosh/V8Client/$(DEPDIR) lib/Admin/$(DEPDIR) lib/ApplicationServer/$(DEPDIR) lib/Basics/$(DEPDIR) lib/BasicsC/$(DEPDIR) lib/Dispatcher/$(DEPDIR) lib/HttpServer/$(DEPDIR) lib/JsonParser/$(DEPDIR) lib/JsonParserX/$(DEPDIR) lib/Logger/$(DEPDIR) lib/MRuby/$(DEPDIR) lib/ProgramOptions/$(DEPDIR) lib/ProtocolBuffers/$(DEPDIR) lib/Rest/$(DEPDIR) lib/ResultGenerator/$(DEPDIR) lib/Scheduler/$(DEPDIR) lib/ShapedJson/$(DEPDIR) lib/SimpleHttpClient/$(DEPDIR) lib/Statistics/$(DEPDIR) lib/UserManager/$(DEPDIR) lib/Utilities/$(DEPDIR) lib/V8/$(DEPDIR) lib/Variant/$(DEPDIR) lib/ZeroMQ/$(DEPDIR) + -rm -rf PerfTests/$(DEPDIR) UnitTests/$(DEPDIR) UnitTests/Cambridge/$(DEPDIR) UnitTests/Jutland/$(DEPDIR) UnitTests/Philadelphia/$(DEPDIR) arangod/Actions/$(DEPDIR) arangod/Ahuacatl/$(DEPDIR) arangod/BitIndexes/$(DEPDIR) arangod/GeoIndex/$(DEPDIR) arangod/HashIndex/$(DEPDIR) arangod/IndexIterators/$(DEPDIR) arangod/IndexOperators/$(DEPDIR) arangod/MRServer/$(DEPDIR) arangod/PriorityQueue/$(DEPDIR) arangod/RestHandler/$(DEPDIR) arangod/RestServer/$(DEPDIR) arangod/SkipLists/$(DEPDIR) arangod/V8Server/$(DEPDIR) arangod/VocBase/$(DEPDIR) arangoirb/MRClient/$(DEPDIR) arangosh/ArangoShell/$(DEPDIR) arangosh/V8Client/$(DEPDIR) lib/Admin/$(DEPDIR) lib/ApplicationServer/$(DEPDIR) lib/Basics/$(DEPDIR) lib/BasicsC/$(DEPDIR) lib/Dispatcher/$(DEPDIR) lib/HttpServer/$(DEPDIR) lib/JsonParser/$(DEPDIR) lib/JsonParserX/$(DEPDIR) lib/Logger/$(DEPDIR) lib/MRuby/$(DEPDIR) lib/ProgramOptions/$(DEPDIR) lib/ProtocolBuffers/$(DEPDIR) lib/Rest/$(DEPDIR) lib/ResultGenerator/$(DEPDIR) lib/Scheduler/$(DEPDIR) lib/ShapedJson/$(DEPDIR) lib/SimpleHttpClient/$(DEPDIR) lib/Statistics/$(DEPDIR) lib/UserManager/$(DEPDIR) lib/Utilities/$(DEPDIR) lib/V8/$(DEPDIR) lib/Variant/$(DEPDIR) lib/ZeroMQ/$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -5207,7 +5207,7 @@ build.h: configure.ac ### @brief local modifications ################################################################################ --include Makefile.local +-include Installation/Makefile.local ################################################################################ ################################################################################ @@ -5395,7 +5395,7 @@ unittests-http-server: @echo "================================================================================" @echo - cd @srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=0 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" + cd @top_srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=0 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" kill `cat $(PIDFILE)` @@ -5419,7 +5419,7 @@ unittests-ssl-server: @echo "================================================================================" @echo - cd @srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=1 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" + cd @top_srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=1 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" kill `cat $(PIDFILE)` @@ -5479,94 +5479,38 @@ clean-local: built-sources: build.h errorfiles $(JAVASCRIPT_HEADER) -bin/arango-password: bin/arango-password.in -@ENABLE_RELATIVE_DEVEL_TRUE@ sed \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@SBINDIR@%bin%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ $< > $@ -@ENABLE_RELATIVE_DEVEL_TRUE@ chmod 755 $@ -@ENABLE_RELATIVE_DEVEL_FALSE@ sed \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ $< > $@ -@ENABLE_RELATIVE_DEVEL_FALSE@ chmod 755 $@ +.PHONY: Documentation/js Documentation/js/system Documentation/js/modules -bin/arango-upgrade: bin/arango-upgrade.in -@ENABLE_RELATIVE_DEVEL_TRUE@ sed \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@SBINDIR@%bin%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ $< > $@ -@ENABLE_RELATIVE_DEVEL_TRUE@ chmod 755 $@ -@ENABLE_RELATIVE_DEVEL_FALSE@ sed \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ $< > $@ -@ENABLE_RELATIVE_DEVEL_FALSE@ chmod 755 $@ - -bin/arango-dfdb: bin/arango-dfdb.in -@ENABLE_RELATIVE_DEVEL_TRUE@ sed \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@SBINDIR@%bin%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_TRUE@ $< > $@ -@ENABLE_RELATIVE_DEVEL_TRUE@ chmod 755 $@ -@ENABLE_RELATIVE_DEVEL_FALSE@ sed \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ -@ENABLE_RELATIVE_DEVEL_FALSE@ $< > $@ -@ENABLE_RELATIVE_DEVEL_FALSE@ chmod 755 $@ - -@ENABLE_MRUBY_TRUE@.setup-mr-directories: -@ENABLE_MRUBY_TRUE@ @test -d mr || mkdir mr -@ENABLE_MRUBY_TRUE@ @test -d mr/common/bootstrap || mkdir mr/common/bootstrap -@ENABLE_MRUBY_TRUE@ @touch $@ - -@ENABLE_MRUBY_TRUE@mr/common/bootstrap/mr-%.h: @srcdir@/mr/common/bootstrap/%.rb .setup-mr-directories -@ENABLE_MRUBY_TRUE@ @top_srcdir@/config/mr2c.sh $< > $@ - -@ENABLE_MRUBY_TRUE@mr/server/mr-%.h: @srcdir@/mr/server/%.rb .setup-mr-directories -@ENABLE_MRUBY_TRUE@ @top_srcdir@/config/mr2c.sh $< > $@ - -################################################################################ -################################################################################ - -.PHONY: Doxygen/js Doxygen/js/system Doxygen/js/modules - -Doxygen/.setup-directories: - @test -d Doxygen/js || mkdir Doxygen/js - @test -d Doxygen/js/actions || mkdir Doxygen/js/actions - @test -d Doxygen/js/actions/system || mkdir Doxygen/js/actions/system - @test -d Doxygen/js/common || mkdir Doxygen/js/common - @test -d Doxygen/js/common/bootstrap || mkdir Doxygen/js/common/bootstrap - @test -d Doxygen/js/common/modules || mkdir Doxygen/js/common/modules - @test -d Doxygen/js/server || mkdir Doxygen/js/server - @test -d Doxygen/js/server/modules || mkdir Doxygen/js/server/modules - @test -d Doxygen/js/client || mkdir Doxygen/js/client - @test -d Doxygen/web || mkdir Doxygen/web +Documentation/.setup-directories: + @test -d Documentation/js || mkdir Documentation/js + @test -d Documentation/js/actions || mkdir Documentation/js/actions + @test -d Documentation/js/actions/system || mkdir Documentation/js/actions/system + @test -d Documentation/js/common || mkdir Documentation/js/common + @test -d Documentation/js/common/bootstrap || mkdir Documentation/js/common/bootstrap + @test -d Documentation/js/common/modules || mkdir Documentation/js/common/modules + @test -d Documentation/js/server || mkdir Documentation/js/server + @test -d Documentation/js/server/modules || mkdir Documentation/js/server/modules + @test -d Documentation/js/client || mkdir Documentation/js/client + @test -d Documentation/web || mkdir Documentation/web @touch $@ -Doxygen/js/actions/system/%.c: @srcdir@/js/actions/system/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ +Documentation/js/actions/system/%.c: @srcdir@/js/actions/system/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ -Doxygen/js/common/bootstrap/%.c: @srcdir@/js/common/bootstrap/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ +Documentation/js/common/bootstrap/%.c: @srcdir@/js/common/bootstrap/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ -Doxygen/js/common/modules/%.c: @srcdir@/js/common/modules/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ +Documentation/js/common/modules/%.c: @srcdir@/js/common/modules/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ -Doxygen/js/server/%.c: @srcdir@/js/server/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ +Documentation/js/server/%.c: @srcdir@/js/server/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ -Doxygen/js/server/modules/%.c: @srcdir@/js/server/modules/%.js Doxygen/.setup-directories - @python @top_srcdir@/Doxygen/Scripts/js2doxy.py $< > $@ +Documentation/js/server/modules/%.c: @srcdir@/js/server/modules/%.js Documentation/.setup-directories + @python @top_srcdir@/Documentation/Scripts/js2doxy.py $< > $@ -Doxygen/xml/%.md: Doxygen/xml/%.xml - @python @top_srcdir@/Doxygen/Scripts/xml2md.py $< > $@ +Documentation/xml/%.md: Documentation/xml/%.xml + @python @top_srcdir@/Documentation/Scripts/xml2md.py $< > $@ ################################################################################ ### @brief doxygen @@ -5574,13 +5518,13 @@ Doxygen/xml/%.md: Doxygen/xml/%.xml .PHONY: doxygen -Doxygen/arango-html.doxy: Doxygen/arango.template +Documentation/arango-html.doxy: Documentation/arango.template sed -e 's:GENERATE_HTML *= *NO:GENERATE_HTML = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = HTML:' < $< > $@ $(MAKE) lib/BasicsC/voc-errors.h -doxygen: Doxygen/arango-html.doxy $(DOXYGEN) - doxygen Doxygen/arango-html.doxy > /dev/null - @for w in $(WIKI); do @top_srcdir@/Doxygen/Scripts/html2html.sh Doxygen/html/$$w.html Doxygen/web/$$w.html; done +doxygen: Documentation/arango-html.doxy $(DOXYGEN) + doxygen Documentation/arango-html.doxy > /dev/null + @for w in $(WIKI); do @top_srcdir@/Documentation/Scripts/html2html.sh Documentation/html/$$w.html Documentation/web/$$w.html; done ################################################################################ ### @brief wiki @@ -5588,17 +5532,17 @@ doxygen: Doxygen/arango-html.doxy $(DOXYGEN) .PHONY: wiki wiki2 -Doxygen/arango-xml.doxy: Doxygen/arango.template +Documentation/arango-xml.doxy: Documentation/arango.template sed -e 's:GENERATE_XML *= *NO:GENERATE_XML = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = XML:' < $< > $@ $(MAKE) lib/BasicsC/voc-errors.h wiki: wiki2 - @test -d Doxygen/wiki || mkdir Doxygen/wiki - @for w in $(WIKI); do python @top_srcdir@/Doxygen/Scripts/xml2md.py Doxygen/xml/$$w.xml > Doxygen/xml/$$w.md; done - @for w in $(WIKI); do @top_srcdir@/Doxygen/Scripts/fixmd.sh Doxygen/xml/$$w.md; done + @test -d Documentation/wiki || mkdir Documentation/wiki + @for w in $(WIKI); do python @top_srcdir@/Documentation/Scripts/xml2md.py Documentation/xml/$$w.xml > Documentation/xml/$$w.md; done + @for w in $(WIKI); do @top_srcdir@/Documentation/Scripts/fixmd.sh Documentation/xml/$$w.md; done -wiki2: Doxygen/arango-xml.doxy $(DOXYGEN) - doxygen Doxygen/arango-xml.doxy > /dev/null +wiki2: Documentation/arango-xml.doxy $(DOXYGEN) + doxygen Documentation/arango-xml.doxy > /dev/null ################################################################################ ### @brief latex @@ -5606,32 +5550,32 @@ wiki2: Doxygen/arango-xml.doxy $(DOXYGEN) .PHONY: latex -Doxygen/arango-latex.doxy: Doxygen/arango.template +Documentation/arango-latex.doxy: Documentation/arango.template sed -e 's:GENERATE_LATEX *= *NO:GENERATE_LATEX = YES:' -e 's:ENABLED_SECTIONS *=:ENABLED_SECTIONS = LATEX:' < $< > $@ $(MAKE) lib/BasicsC/voc-errors.h -latex: Doxygen/arango-latex.doxy $(DOXYGEN) - doxygen Doxygen/arango-latex.doxy > /dev/null +latex: Documentation/arango-latex.doxy $(DOXYGEN) + doxygen Documentation/arango-latex.doxy > /dev/null - echo "\def\arangodbversion{@PACKAGE_VERSION@}" > Doxygen/latex/version.tex + echo "\def\arangodbversion{@PACKAGE_VERSION@}" > Documentation/latex/version.tex - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/InstallManual.tex > Doxygen/latex/InstallManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode install-manual.tex || true + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/InstallManual.tex > Documentation/latex/InstallManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode install-manual.tex || true - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/UserManual.tex > Doxygen/latex/UserManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode user-manual.tex || true + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/UserManual.tex > Documentation/latex/UserManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode user-manual.tex || true - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/ImplementorManual.tex > Doxygen/latex/ImplementorManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode implementor-manual.tex || true + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/ImplementorManual.tex > Documentation/latex/ImplementorManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode implementor-manual.tex || true - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/RefManual.tex > Doxygen/latex/RefManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode ref-manual.tex || true + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/RefManual.tex > Documentation/latex/RefManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode ref-manual.tex || true - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/DbaManual.tex > Doxygen/latex/DbaManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode dba-manual.tex || true + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/DbaManual.tex > Documentation/latex/DbaManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode dba-manual.tex || true - python @top_srcdir@/Doxygen/Scripts/tex2tex.py Doxygen/latex/ImpManual.tex > Doxygen/latex/ImpManual.inc.tex - cd Doxygen/latex && pdflatex -interaction batchmode imp-manual.tex || true + python @top_srcdir@/Documentation/Scripts/tex2tex.py Documentation/latex/ImpManual.tex > Documentation/latex/ImpManual.inc.tex + cd Documentation/latex && pdflatex -interaction batchmode imp-manual.tex || true ################################################################################ ################################################################################ @@ -5669,6 +5613,20 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories ################################################################################ ################################################################################ +@ENABLE_MRUBY_TRUE@.setup-mr-directories: +@ENABLE_MRUBY_TRUE@ @test -d mr || mkdir mr +@ENABLE_MRUBY_TRUE@ @test -d mr/common/bootstrap || mkdir mr/common/bootstrap +@ENABLE_MRUBY_TRUE@ @touch $@ + +@ENABLE_MRUBY_TRUE@mr/common/bootstrap/mr-%.h: @srcdir@/mr/common/bootstrap/%.rb .setup-mr-directories +@ENABLE_MRUBY_TRUE@ @top_srcdir@/config/mr2c.sh $< > $@ + +@ENABLE_MRUBY_TRUE@mr/server/mr-%.h: @srcdir@/mr/server/%.rb .setup-mr-directories +@ENABLE_MRUBY_TRUE@ @top_srcdir@/config/mr2c.sh $< > $@ + +################################################################################ +################################################################################ + ################################################################################ ### @brief flex ################################################################################ @@ -5683,9 +5641,6 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_FLEX_TRUE@%.cpp: %.ll @ENABLE_FLEX_TRUE@ @top_srcdir@/config/flex-c++.sh $(LEX) $@ $< -################################################################################ -################################################################################ - ################################################################################ ### @brief BISON ################################################################################ @@ -5700,93 +5655,78 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_BISON_TRUE@%.cpp: %.yy @ENABLE_BISON_TRUE@ @top_srcdir@/config/bison-c++.sh $(BISON) $@ $< -################################################################################ -################################################################################ - -@PROTOBUF_LIBS@: .protobuf-build-@TRI_BITS@ - -.protobuf-build-@TRI_BITS@: - @echo - @echo "--------------------------------------------------------------------------------" - @echo "BUILDING Protocol Buffers" - @echo "--------------------------------------------------------------------------------" - @echo - - cd @top_srcdir@/3rdParty/protobuf-2.4.1 \ - && ./configure \ - --disable-dependency-tracking \ - --disable-shared \ - --prefix=$(PROTOBUFDIR) \ - --libdir=$(PROTOBUFDIR)/lib@TRI_BITS@ - cd @top_srcdir@/3rdParty/protobuf-2.4.1 && $(MAKE) install - - touch .protobuf-build-@TRI_BITS@ - - @echo - @echo "--------------------------------------------------------------------------------" - @echo "BUILD Protocol Buffers FINISHED" - @echo "--------------------------------------------------------------------------------" - @echo - -################################################################################ -################################################################################ - ################################################################################ ### @brief protocol buffers ################################################################################ %.pb.cpp: %.proto - @top_srcdir@/3rdParty/protobuf-2.4.1/BUILD/bin/protoc --cpp_out . $< + @PROTOBUF_PROTOC@ --cpp_out . $< mv $(addsuffix .cc,$(basename $@)) $@ -################################################################################ -################################################################################ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@LIBEV_LIBS@: .libev-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_TRUE@@LIBEV_LIBS@: .libev-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@.libev-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "BUILDING LIBEV" +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@.libev-build-@TRI_BITS@: -@ENABLE_ALL_IN_ONE_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "BUILDING LIBEV" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ mkdir @top_srcdir@/3rdParty/libev/BUILD || true +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ cd @top_srcdir@/3rdParty/libev/BUILD && ../configure --disable-shared +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ cd @top_srcdir@/3rdParty/libev/BUILD && $(MAKE) -@ENABLE_ALL_IN_ONE_TRUE@ mkdir @top_srcdir@/3rdParty/libev/$(LIBEV_BUILD_VERSION) || true -@ENABLE_ALL_IN_ONE_TRUE@ cd @top_srcdir@/3rdParty/libev/$(LIBEV_BUILD_VERSION) && CFLAGS="$(LIBEV_BUILD_CFLAGS_X)" orig_CFLAGS="$(LIBEV_BUILD_CFLAGS_X)" LDFLAGS="$(LIBEV_BUILD_LDFLAGS_X)" ../configure --disable-shared -@ENABLE_ALL_IN_ONE_TRUE@ cd @top_srcdir@/3rdParty/libev/$(LIBEV_BUILD_VERSION) && $(MAKE) +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ touch .libev-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_TRUE@ touch .libev-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "BUILD LIBEV FINISHED" +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "BUILD LIBEV FINISHED" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@PROTOBUF_LIBS@: .protobuf-build-@TRI_BITS@ -################################################################################ -################################################################################ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@.protobuf-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "BUILDING Protocol Buffers" +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@@V8_LIBS@: .v8-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ cd @top_srcdir@/3rdParty/protobuf-2.4.1 \ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ && ./configure \ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ --disable-dependency-tracking \ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ --disable-shared \ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ --prefix=$(PROTOBUFDIR) \ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ --libdir=$(PROTOBUFDIR)/lib@TRI_BITS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ cd @top_srcdir@/3rdParty/protobuf-2.4.1 && $(MAKE) install -@ENABLE_ALL_IN_ONE_TRUE@.v8-build-@TRI_BITS@: -@ENABLE_ALL_IN_ONE_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "BUILDING V8" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ touch .protobuf-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_TRUE@ cd @top_srcdir@/3rdParty/V8 && $(MAKE) library=static snapshot=off @V8_TARGET@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "BUILD Protocol Buffers FINISHED" +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@ touch .v8-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_V8_TRUE@@V8_LIBS@: .v8-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_TRUE@ @echo -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "BUILD V8 FINISHED" -@ENABLE_ALL_IN_ONE_TRUE@ @echo "--------------------------------------------------------------------------------" -@ENABLE_ALL_IN_ONE_TRUE@ @echo +@ENABLE_ALL_IN_ONE_V8_TRUE@.v8-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "BUILDING V8" +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo -################################################################################ -################################################################################ +@ENABLE_ALL_IN_ONE_V8_TRUE@ cd @top_srcdir@/3rdParty/V8 && $(MAKE) library=static snapshot=off @V8_TARGET@ + +@ENABLE_ALL_IN_ONE_V8_TRUE@ touch .v8-build-@TRI_BITS@ + +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "BUILD V8 FINISHED" +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" +@ENABLE_ALL_IN_ONE_V8_TRUE@ @echo @ENABLE_MRUBY_TRUE@@MRUBY_LIBS@: .mruby-build-@TRI_BITS@ @@ -5807,9 +5747,6 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_MRUBY_TRUE@ @echo -################################################################################ -################################################################################ - @ENABLE_ZEROMQ_TRUE@@ZEROMQ_LIBS@: .zeromq-build-@TRI_BITS@ .czmq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@.zeromq-build-@TRI_BITS@: @@ -5861,13 +5798,6 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo -################################################################################ -################################################################################ - -################################################################################ -### @brief mruby -################################################################################ - ################################################################################ ### @brief documentation ################################################################################ @@ -5877,19 +5807,31 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories ################################################################################ ################################################################################ -### @brief flex +### @brief mruby ################################################################################ ################################################################################ -### @brief bison +### @brief generate all flex files ################################################################################ ################################################################################ -### @brief protocol buffers +### @brief generate all bison files ################################################################################ ################################################################################ -### @brief libev and V8 +### @brief generate all protocol buffers +################################################################################ + +################################################################################ +### @brief libev +################################################################################ + +################################################################################ +### @brief protcol buffers +################################################################################ + +################################################################################ +### @brief V8 ################################################################################ ################################################################################ diff --git a/README.md b/README.md index 190b454c5f..f5daadb51d 100644 --- a/README.md +++ b/README.md @@ -2,23 +2,22 @@ [![Build Status](https://secure.travis-ci.org/triAGENS/ArangoDB.png)](http://travis-ci.org/triAGENS/ArangoDB) We recently started a new open source project - a nosql database -called AvocadoDB which became ArangoDB in May 2012. ArangoDB is -currently available as a beta version. -We want to have a stable version 1 ready soon. A multi server version is planned +called AvocadoDB which became ArangoDB in May 2012. The current +stable version of ArangoDB is 1.0. A multi server version is planned for the end of 2012. For details see the roadmap. Key features include: -* Schema-free schemata let you combine the space efficiency of MySQL with the performance power of NoSQL -* Use ArangoDB as an application server and fuse your application and database together for maximal throughput -* JavaScript for all: no language zoo, you can use one language from your browser to your back-end -* ArangoDB is multi-threaded - exploit the power of all your cores -* Flexible data modeling: model your data as combination of key-value pairs, documents or graphs - perfect for social relations -* Free index choice: use the correct index for your problem, be it a skip list or a n-gram search -* Configurable durability: let the application decide if it needs more durability or more performance -* No-nonsense storage: ArangoDB uses all of the power of modern storage hardware, like SSD and large caches -* Powerful query language (AQL) to retrieve data -* It is open source (Apache Licence 2.0) +* **Schema-free schemata** let you combine the space efficiency of MySQL with the performance power of NoSQL +* Use ArangoDB as an **application server** and fuse your application and database together for maximal throughput +* JavaScript for all: **no language zoo**, you can use one language from your browser to your back-end +* ArangoDB is **multi-threaded** - exploit the power of all your cores +* **Flexible data modeling**: model your data as combination of key-value pairs, documents or graphs - perfect for social relations +* Free **index choice**: use the correct index for your problem, be it a skip list or a n-gram search +* Configurable **durability**: let the application decide if it needs more durability or more performance +* No-nonsense storage: ArangoDB uses all of the power of **modern storage hardware**, like SSD and large caches +* **Powerful query language** (AQL) to retrieve data +* It is **open source** (Apache Licence 2.0) For more in-depth information @@ -28,8 +27,9 @@ For more in-depth information ## Compilation -Please check the wiki -for installation and compilation instructions: +Please check the +[Installation Manual](http://www.arangodb.org/manuals/1.0.0/InstallManual.html) +for installation and compilation instructions. ### Mac OS X Hints @@ -82,7 +82,7 @@ Start the shell in another windows: ## Caveat Please note that this is a very early version of ArangoDB. There will be -bugs and we'd really appreciate it if you -report them: +bugs and we'd really appreciate it if you [report](https://github.com/triAGENS/ArangoDB/issues") +them: https://github.com/triAGENS/ArangoDB/issues diff --git a/UnitTests/Makefile.files b/UnitTests/Makefile.files index ae4a9f04cb..e9269f062b 100755 --- a/UnitTests/Makefile.files +++ b/UnitTests/Makefile.files @@ -1,5 +1,9 @@ # -*- mode: Makefile; -*- +## ----------------------------------------------------------------------------- +## --SECTION-- CONFIGURATION +## ----------------------------------------------------------------------------- + FORCE = 0 SKIP_BOOST = 0 SKIP_GEO = 0 @@ -10,6 +14,9 @@ USERNAME = root PASSWORD = PROTO = http +## ----------------------------------------------------------------------------- +## --SECTION-- UNITTESTS +## ----------------------------------------------------------------------------- ################################################################################ ## unittests target @@ -28,7 +35,6 @@ unittests-brief: \ unittests-ssl-server \ unittests-shell-client - unittests-verbose: @echo "################################################################################" @echo "## ##" @@ -56,14 +62,32 @@ PIDFILE := /tmp/arango.$(PID).pid VOCDIR := /tmp/vocdir.$(PID) VOCPORT := $(shell printf "3%04d" `expr $(PID) % 10000`) VOCHOST := 127.0.0.1 -SERVER_START := -SERVER_OPT := --configuration none --javascript.startup-directory @top_srcdir@/js --javascript.modules-path @top_srcdir@/js/server/modules:@top_srcdir@/js/common/modules --javascript.action-directory @top_srcdir@/js/actions/system --database.maximal-journal-size 1048576 --javascript.gc-interval 1 --server.threads 4 $(SERVER_START) -CLIENT_OPT := --javascript.startup-directory @top_srcdir@/js --javascript.modules-path @top_srcdir@/js/client/modules:@top_srcdir@/js/common/modules --no-colors --quiet STARTFILE := $(VOCDIR)/startup CURL := curl CURL_OPT := --basic --user "$(USERNAME):$(PASSWORD)" -CERT_FILE := @srcdir@/UnitTests/server.pem +CERT_FILE := @top_srcdir@/UnitTests/server.pem +SERVER_START := + +SERVER_OPT := \ + --configuration none \ + --database.maximal-journal-size 1048576 \ + --javascript.action-directory @top_srcdir@/js/actions/system \ + --javascript.gc-interval 1 \ + --javascript.modules-path @top_srcdir@/js/server/modules:@top_srcdir@/js/common/modules \ + --javascript.startup-directory @top_srcdir@/js \ + --ruby.action-directory @top_srcdir@/mr/actions/system \ + --ruby.modules-path @top_srcdir@/mr/server/modules:@top_srcdir@/mr/common/modules \ + --server.threads 4 \ + --server.admin-directory ./html/admin \ + $(SERVER_START) + +CLIENT_OPT := \ + --configuration none \ + --javascript.startup-directory @top_srcdir@/js \ + --javascript.modules-path @top_srcdir@/js/client/modules:@top_srcdir@/js/common/modules \ + --no-colors \ + --quiet .PHONY: start-server @@ -169,16 +193,16 @@ endif ## SHELL SERVER TESTS (BASICS) ################################################################################ -SHELL_COMMON = @srcdir@/js/common/tests/shell-document.js \ - @srcdir@/js/common/tests/shell-edge.js \ - @srcdir@/js/common/tests/shell-compactor.js \ - @srcdir@/js/common/tests/shell-collection.js \ - @srcdir@/js/common/tests/shell-simple-query.js \ - @srcdir@/js/common/tests/shell-index.js \ - @srcdir@/js/common/tests/shell-index-geo.js \ - @srcdir@/js/common/tests/shell-cap-constraint.js \ - @srcdir@/js/common/tests/shell-unique-constraint.js \ - @srcdir@/js/common/tests/shell-hash-index.js +SHELL_COMMON = @top_srcdir@/js/common/tests/shell-document.js \ + @top_srcdir@/js/common/tests/shell-edge.js \ + @top_srcdir@/js/common/tests/shell-compactor.js \ + @top_srcdir@/js/common/tests/shell-collection.js \ + @top_srcdir@/js/common/tests/shell-simple-query.js \ + @top_srcdir@/js/common/tests/shell-index.js \ + @top_srcdir@/js/common/tests/shell-index-geo.js \ + @top_srcdir@/js/common/tests/shell-cap-constraint.js \ + @top_srcdir@/js/common/tests/shell-unique-constraint.js \ + @top_srcdir@/js/common/tests/shell-hash-index.js SHELL_SERVER = $(SHELL_COMMON) @@ -206,47 +230,47 @@ unittests-shell-server: ## SHELL SERVER TESTS (AHUACATL) ################################################################################ -SHELL_SERVER_AHUACATL = @srcdir@/js/server/tests/ahuacatl-ranges.js \ - @srcdir@/js/server/tests/ahuacatl-queries-optimiser.js \ - @srcdir@/js/server/tests/ahuacatl-escaping.js \ - @srcdir@/js/server/tests/ahuacatl-functions.js \ - @srcdir@/js/server/tests/ahuacatl-variables.js \ - @srcdir@/js/server/tests/ahuacatl-bind.js \ - @srcdir@/js/server/tests/ahuacatl-complex.js \ - @srcdir@/js/server/tests/ahuacatl-logical.js \ - @srcdir@/js/server/tests/ahuacatl-arithmetic.js \ - @srcdir@/js/server/tests/ahuacatl-relational.js \ - @srcdir@/js/server/tests/ahuacatl-ternary.js \ - @srcdir@/js/server/tests/ahuacatl-parse.js \ - @srcdir@/js/server/tests/ahuacatl-hash.js \ - @srcdir@/js/server/tests/ahuacatl-skiplist.js \ - @srcdir@/js/server/tests/ahuacatl-refaccess-variable.js \ - @srcdir@/js/server/tests/ahuacatl-refaccess-attribute.js \ - @srcdir@/js/server/tests/ahuacatl-skiplist.js \ - @srcdir@/js/server/tests/ahuacatl-queries-simple.js \ - @srcdir@/js/server/tests/ahuacatl-queries-variables.js \ - @srcdir@/js/server/tests/ahuacatl-queries-geo.js \ - @srcdir@/js/server/tests/ahuacatl-queries-collection.js \ - @srcdir@/js/server/tests/ahuacatl-queries-noncollection.js \ - @srcdir@/js/server/tests/ahuacatl-operators.js +SHELL_SERVER_AHUACATL = @top_srcdir@/js/server/tests/ahuacatl-ranges.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-optimiser.js \ + @top_srcdir@/js/server/tests/ahuacatl-escaping.js \ + @top_srcdir@/js/server/tests/ahuacatl-functions.js \ + @top_srcdir@/js/server/tests/ahuacatl-variables.js \ + @top_srcdir@/js/server/tests/ahuacatl-bind.js \ + @top_srcdir@/js/server/tests/ahuacatl-complex.js \ + @top_srcdir@/js/server/tests/ahuacatl-logical.js \ + @top_srcdir@/js/server/tests/ahuacatl-arithmetic.js \ + @top_srcdir@/js/server/tests/ahuacatl-relational.js \ + @top_srcdir@/js/server/tests/ahuacatl-ternary.js \ + @top_srcdir@/js/server/tests/ahuacatl-parse.js \ + @top_srcdir@/js/server/tests/ahuacatl-hash.js \ + @top_srcdir@/js/server/tests/ahuacatl-skiplist.js \ + @top_srcdir@/js/server/tests/ahuacatl-refaccess-variable.js \ + @top_srcdir@/js/server/tests/ahuacatl-refaccess-attribute.js \ + @top_srcdir@/js/server/tests/ahuacatl-skiplist.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-simple.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-variables.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-geo.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-collection.js \ + @top_srcdir@/js/server/tests/ahuacatl-queries-noncollection.js \ + @top_srcdir@/js/server/tests/ahuacatl-operators.js SHELL_SERVER_AHUACATL_EXTENDED = \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-1.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-2.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-3.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-4.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-5.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-6.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-7.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-8.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-9.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-10.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-11.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-12.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-13.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-14.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-15.js \ - @srcdir@/js/server/tests/ahuacatl-ranges-combined-16.js + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-1.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-2.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-3.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-4.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-5.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-6.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-7.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-8.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-9.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-10.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-11.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-12.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-13.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-14.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-15.js \ + @top_srcdir@/js/server/tests/ahuacatl-ranges-combined-16.js .PHONY: unittests-shell-server-ahuacatl @@ -273,7 +297,7 @@ unittests-shell-server-ahuacatl: ## SHELL CLIENT TESTS ################################################################################ -SHELL_CLIENT = $(SHELL_COMMON) js/client/tests/client.js +SHELL_CLIENT = $(SHELL_COMMON) @top_srcdir@/js/client/tests/client.js .PHONY: unittests-shell-client @@ -313,7 +337,7 @@ unittests-http-server: @echo "================================================================================" @echo - cd @srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=0 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" + cd @top_srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=0 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" kill `cat $(PIDFILE)` @@ -339,7 +363,7 @@ unittests-ssl-server: @echo "================================================================================" @echo - cd @srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=1 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" + cd @top_srcdir@/UnitTests/HttpInterface && ARANGO_SERVER="$(VOCHOST):$(VOCPORT)" ARANGO_SSL=1 ARANGO_USER="$(USERNAME)" ARANGO_PASSWORD="$(PASSWORD)" ./run-tests || test "x$(FORCE)" == "x1" kill `cat $(PIDFILE)` @@ -354,7 +378,7 @@ unittests-ssl-server: ## BITARRAY INDEXES TESTS ################################################################################ -BITARRAY_COMMON = @srcdir@/js/common/tests/shell-bitarray-index.js +BITARRAY_COMMON = @top_srcdir@/js/common/tests/shell-bitarray-index.js .PHONY: unittests-bitarray-index diff --git a/aclocal.m4 b/aclocal.m4 index b8e7ed70b9..b52b848197 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,8 +1,7 @@ -# generated automatically by aclocal 1.12 -*- Autoconf -*- +# generated automatically by aclocal 1.11.1 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, -# Inc. +# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -14,30 +13,28 @@ m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, -[m4_warning([this file was generated for autoconf 2.69. +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],, +[m4_warning([this file was generated for autoconf 2.68. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. -To do so, use the procedure documented by the package, typically 'autoreconf'.])]) +To do so, use the procedure documented by the package, typically `autoreconf'.])]) -# Copyright (C) 2002-2012 Free Software Foundation, Inc. +# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.12' +[am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.12], [], +m4_if([$1], [1.11.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -53,24 +50,22 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.12])dnl +[AM_AUTOMAKE_VERSION([1.11.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2012 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets -# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to -# '$srcdir', '$srcdir/..', or '$srcdir/../..'. +# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to +# `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and @@ -89,7 +84,7 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually -# harmless because $srcdir is '.', but things will broke when you +# harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, @@ -115,21 +110,22 @@ am_aux_dir=`cd $ac_aux_dir && pwd` # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2012 Free Software Foundation, Inc. +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 10 +# serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], -[AC_PREREQ([2.52])dnl - m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +[AC_PREREQ(2.52)dnl + ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl @@ -148,15 +144,16 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2012 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 16 +# serial 10 -# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing @@ -179,12 +176,12 @@ AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl -m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], - [$1], [CXX], [depcc="$CXX" am_compiler_list=], - [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], - [$1], [UPC], [depcc="$UPC" am_compiler_list=], - [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], - [depcc="$$1" am_compiler_list=]) +ifelse([$1], CC, [depcc="$CC" am_compiler_list=], + [$1], CXX, [depcc="$CXX" am_compiler_list=], + [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], UPC, [depcc="$UPC" am_compiler_list=], + [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], @@ -192,9 +189,8 @@ AC_CACHE_CHECK([dependency style of $depcc], # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -233,16 +229,16 @@ AC_CACHE_CHECK([dependency style of $depcc], : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in @@ -251,16 +247,16 @@ AC_CACHE_CHECK([dependency style of $depcc], test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} @@ -308,7 +304,7 @@ AM_CONDITIONAL([am__fastdep$1], [ # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES. +# This macro is AC_REQUIREd in _AM_DEPENDENCIES AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl @@ -318,34 +314,28 @@ AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], -[AC_ARG_ENABLE([dependency-tracking], [dnl -AS_HELP_STRING( - [--enable-dependency-tracking], - [do not reject slow dependency extractors]) -AS_HELP_STRING( - [--disable-dependency-tracking], - [speeds up one-time build])]) +[AC_ARG_ENABLE(dependency-tracking, +[ --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' - am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl -AC_SUBST([am__nodep])dnl -_AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2012 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 +#serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ @@ -364,7 +354,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but + # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. @@ -376,19 +366,21 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], continue fi # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. + # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` @@ -406,7 +398,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking -# is enabled. FIXME. This creates each '.P' file that we will +# is enabled. FIXME. This creates each `.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], @@ -416,13 +408,14 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 18 +# serial 16 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. @@ -473,25 +466,23 @@ m4_ifval([$2], AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. -m4_if( - m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), - [ok:ok],, +m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) - AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl +[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) + AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl -AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) -AM_MISSING_PROG([AUTOCONF], [autoconf]) -AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) -AM_MISSING_PROG([AUTOHEADER], [autoheader]) -AM_MISSING_PROG([MAKEINFO], [makeinfo]) +AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) +AM_MISSING_PROG(AUTOCONF, autoconf) +AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) +AM_MISSING_PROG(AUTOHEADER, autoheader) +AM_MISSING_PROG(MAKEINFO, makeinfo) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AM_PROG_MKDIR_P])dnl @@ -505,28 +496,28 @@ _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], - [_AM_DEPENDENCIES([CC])], + [_AM_DEPENDENCIES(CC)], [define([AC_PROG_CC], - defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl + defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], - [_AM_DEPENDENCIES([CXX])], + [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], - defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], - [_AM_DEPENDENCIES([OBJC])], + [_AM_DEPENDENCIES(OBJC)], [define([AC_PROG_OBJC], - defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl + defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl -dnl The 'parallel-tests' driver may need to know about EXEEXT, so add the -dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro +dnl The `parallel-tests' driver may need to know about EXEEXT, so add the +dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl ]) -dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not +dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], @@ -554,14 +545,12 @@ for _am_header in $config_headers :; do done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2012 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. @@ -575,9 +564,9 @@ if test x"${install_sh}" != xset; then install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi -AC_SUBST([install_sh])]) +AC_SUBST(install_sh)]) -# Copyright (C) 2003-2012 Free Software Foundation, Inc. +# Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -600,13 +589,13 @@ AC_SUBST([am__leading_dot])]) # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2012 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 5 +# serial 4 # AM_MAKE_INCLUDE() # ----------------- @@ -625,7 +614,7 @@ am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. +# Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include @@ -650,7 +639,8 @@ AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) -# Copyright (C) 1999-2012 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -686,13 +676,14 @@ m4_define([AC_PROG_CC], # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2012 Free Software Foundation, Inc. +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 7 +# serial 6 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -722,21 +713,19 @@ if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= - AC_MSG_WARN(['missing' script is too old or missing]) + AC_MSG_WARN([`missing' script is too old or missing]) fi ]) -# Copyright (C) 2003-2012 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # AM_PROG_MKDIR_P # --------------- -# Check for 'mkdir -p'. +# Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl @@ -756,13 +745,13 @@ esac # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2012 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 +# serial 4 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -770,13 +759,13 @@ AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) -# -------------------- +# ------------------------------ # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], -[m4_define(_AM_MANGLE_OPTION([$1]), [1])]) +[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) -# ------------------------ +# ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) @@ -789,18 +778,22 @@ AC_DEFUN([_AM_IF_OPTION], # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 +# Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 9 +# serial 5 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' @@ -811,40 +804,32 @@ case `pwd` in esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) - AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; + AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; esac -# Do 'set' in a subshell so we don't clobber the current shell's +# Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$[*]" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$[*]" != "X $srcdir/configure conftest.file" \ - && test "$[*]" != "X conftest.file $srcdir/configure"; then + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$[*]" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + rm -f conftest.file + if test "$[*]" != "X $srcdir/configure conftest.file" \ + && test "$[*]" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken +alias in your environment]) + fi - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken - alias in your environment]) - fi - if test "$[2]" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done test "$[2]" = conftest.file ) then @@ -854,123 +839,70 @@ else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi -AC_MSG_RESULT([yes]) -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi -AC_CONFIG_COMMANDS_PRE( - [AC_MSG_CHECKING([that generated files are newer than configure]) - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - AC_MSG_RESULT([done])]) -rm -f conftest.file -]) +AC_MSG_RESULT(yes)]) -# Copyright (C) 2009-2012 Free Software Foundation, Inc. +# Copyright (C) 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 1 # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT -# ("yes" being less verbose, "no" or empty being verbose). +# (`yes' being less verbose, `no' or empty being verbose). AC_DEFUN([AM_SILENT_RULES], -[AC_ARG_ENABLE([silent-rules], [dnl -AS_HELP_STRING( - [--enable-silent-rules], - [less verbose build output (undo: "make V=1")]) -AS_HELP_STRING( - [--disable-silent-rules], - [verbose build output (undo: "make V=0")])dnl -]) -case $enable_silent_rules in @%:@ ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; +[AC_ARG_ENABLE([silent-rules], +[ --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0')]) +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac -dnl -dnl A few 'make' implementations (e.g., NonStop OS and NextStep) -dnl do not support nested variable expansions. -dnl See automake bug#9928 and bug#10237. -am_make=${MAKE-make} -AC_CACHE_CHECK([whether $am_make supports nested variables], - [am_cv_make_support_nested_variables], - [if AS_ECHO([['TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi]) -if test $am_cv_make_support_nested_variables = yes; then - dnl Using '$V' instead of '$(V)' breaks IRIX make. - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AC_SUBST([AM_V])dnl -AM_SUBST_NOTMAKE([AM_V])dnl -AC_SUBST([AM_DEFAULT_V])dnl -AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2012 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # AM_PROG_INSTALL_STRIP # --------------------- -# One issue with vendor 'install' (even GNU) is that you can't +# One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we -# always use install-sh in "make install-strip", and initialize +# always use install-sh in `make install-strip', and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. +# will honor the `STRIP' environment variable to overrule this program. +dnl Don't test for $cross_compiling = yes, because it might be `maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2012 Free Software Foundation, Inc. +# Copyright (C) 2006, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 2 # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- @@ -979,24 +911,24 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])]) AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) -# -------------------------- +# --------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2012 Free Software Foundation, Inc. +# Copyright (C) 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. -# FORMAT should be one of 'v7', 'ustar', or 'pax'. +# FORMAT should be one of `v7', `ustar', or `pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory @@ -1007,11 +939,10 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], -[# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AC_SUBST([AMTAR], ['$${TAR-tar}']) +[# Always define AMTAR for backward compatibility. +AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], - [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], + [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) @@ -1019,7 +950,7 @@ AC_MSG_CHECKING([how to create a $1 tar archive]) _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and -# Solaris sh will not grok spaces in the rhs of '-'. +# Solaris sh will not grok spaces in the rhs of `-'. for _am_tool in $_am_tools do case $_am_tool in diff --git a/arangod/Documentation/install-manual.dox b/arangod/Documentation/install-manual.dox index 5b4ae2a4dc..c2f3dd5091 100644 --- a/arangod/Documentation/install-manual.dox +++ b/arangod/Documentation/install-manual.dox @@ -43,6 +43,10 @@ /// @endif //////////////////////////////////////////////////////////////////////////////// +// ----------------------------------------------------------------------------- +// --SECTION-- INSTALLING +// ----------------------------------------------------------------------------- + //////////////////////////////////////////////////////////////////////////////// /// @page InstallingTOC /// @@ -80,7 +84,6 @@ /// /// @LIT{http://www.arangodb.org/repositories/} /// -/// /// @subsection InstallingLinuxPackageManager Using a Package Manager to install ArangoDB ///////////////////////////////////////////////////////////////////////////////////////// /// @@ -95,6 +98,7 @@ /// @endcode /// /// Add a repository file @LIT{/etc/yum.repos.d/arangodb.repo} +/// /// @code /// [ArangoDB] /// name=ArangoDB Repository for CentOS @@ -105,7 +109,7 @@ /// gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-www.arangodb.org /// @endcode /// -/// Update repository data: +/// Update the repository data: /// /// @code /// yum clean metadata @@ -181,7 +185,7 @@ /// zypper addrepo -f -t YUM http://www.arangodb.org/repositories/openSUSE-12.1 ArangoDB /// @endcode /// -/// Update repository data: +/// Update the repository data: /// /// @code /// zypper refresh @@ -236,7 +240,8 @@ ///
    ///
  • @ref Compiling ///
      -///
    • @ref CompilingAmazonMicroInstance
    • +///
    • @ref CompilingAmazonMicroInstance +///
    • ///
    • @ref CompilingAIO ///
        ///
      • @ref CompilingAIOPrerequisites @@ -300,7 +305,7 @@ /// @section CompilingAmazonMicroInstance Amazon Micro Instance /////////////////////////////////////////////////////////////// /// -/// \@sohgoh has reported that it is very easy to install ArangoDB on a +/// @@sohgoh has reported that it is very easy to install ArangoDB on a /// Amazon Micro Instance: /// /// @code @@ -310,6 +315,8 @@ /// > make install /// @endcode /// +/// For detailed instructions the following section. +/// /// @section CompilingAIO All-In-One Version //////////////////////////////////////////// /// @@ -343,11 +350,15 @@ /// /// Switch into the ArangoDB directory /// -/// @LIT{cd ArangoDB} +/// @code +/// cd ArangoDB +/// @endcode /// /// In order to configure the build environment execute /// -/// @LIT{./configure} +/// @code +/// ./configure +/// @endcode /// /// to setup the makefiles. This will check the various system characteristics /// and installed libraries. @@ -357,18 +368,24 @@ /// /// Compile the program by executing /// -/// @LIT{make} +/// @code +/// make +/// @endcode /// /// This will compile the ArangoDB and create a binary of the server in /// -/// @LIT{./bin/arangod} +/// @code +/// ./bin/arangod +/// @endcode /// /// @subsection CompilingAIOTest Test ///////////////////////////////////// /// /// Check the binary by starting it using the command line. /// -/// @LIT{./arangod --server.endpoint tcp://127.0.0.1:12345 /tmp/vocbase} +/// @code +/// ./arangod --server.endpoint tcp://127.0.0.1:12345 /tmp/vocbase +/// @endcode /// /// This will start up the ArangoDB and listen for HTTP requests on port 12345 /// bound to IP address 127.0.0.1. You should see the startup messages @@ -377,11 +394,15 @@ /// /// Use your favorite browser to access the URL /// -/// @LIT{http://127.0.0.1:12345/version} +/// @code +/// http://127.0.0.1:12345/version +/// @endcode /// /// This should produce a JSON object like /// -/// @LIT{\{"server":"arango"\,"version":"1.x.y"\}} +/// @code +/// {"server" : "arango", "version" : "1.x.y"} +/// @endcode /// /// as result. /// @@ -394,26 +415,36 @@ /// /// Install everything by executing /// -/// @LIT{make install} +/// @code +/// make install +/// @endcode /// /// You must be root to do this or at least have write permission to the /// corresponding directories. /// /// The server will by default be installed in /// -/// @LIT{/usr/sbin/arangod} +/// @code +/// /usr/sbin/arangod +/// @endcode /// /// The configuration file will be installed in /// -/// @LIT{/etc/arangodb/arangod.conf} +/// @code +/// /etc/arangodb/arangod.conf +/// @endcode /// /// The database will be installed in /// -/// @LIT{/var/arangodb} +/// @code +/// /var/arangodb +/// @endcode /// /// The arango shell will be installed in /// -/// @LIT{/usr/bin/arangosh} +/// @code +/// /usr/bin/arangosh +/// @endcode /// /// @section CompilingDevel Devel Version ///////////////////////////////////////// @@ -459,20 +490,26 @@ /// /// Download the latest source using GIT: /// -/// @LIT{git clone git://github.com/triAGENS/ArangoDB.git} +/// @code +/// git clone git://github.com/triAGENS/ArangoDB.git +/// @endcode /// /// @subsection CompilingDevelSetup Setup ///////////////////////////////////////// /// /// Switch into the ArangoDB directory /// -/// @LIT{cd ArangoDB} +/// @code +/// cd ArangoDB +/// @endcode /// /// The source tarball contains a pre-generated "configure" script. You can /// regenerate this script by using the GNU auto tools. In order to do so, /// execute /// -/// @LIT{make setup} +/// @code +/// make setup +/// @endcode /// /// This will call aclocal, autoheader, automake, and autoconf in the correct /// order. @@ -482,18 +519,42 @@ /// /// In order to configure the build environment execute /// -/// @LIT{./configure --disable-all-in-one --enable-bison --enable-flex} +/// @code +/// ./configure --disable-all-in-one-v8 --disable-all-in-one-libev --enable-bison --enable-flex +/// @endcode /// /// to setup the makefiles. This will check for the various system /// characteristics and installed libraries. If the configure scripts fail to /// find the boost library, check that C++ is installed and working and that the /// boost-devel package was successfully installed. /// -/// Specifying @LIT{disable-all-in-one} will tell the build system -/// to use the installed system versions of boost, V8, and libev -/// instead of compiling these libaries in the make run. -/// /// Now continue with @ref CompilingAIOCompile. +/// +/// The following configuration options exists: +/// +/// @LIT{--disable-all-in-one-boost} tells the build system to use the +/// installed system version of BOOST instead of the supplied files in +/// the 3rdParty directory. +/// +/// @LIT{--disable-all-in-one-libev} tells the build system to use the +/// installed system version of LIBEV instead of compiling the +/// supplied version from the 3rdParty disable in the make run. +/// +/// @LIT{--disable-all-in-one-protobuf} tells the build system to use the +/// installed system version of protocol buffers instead of compiling the +/// supplied version from the 3rdParty disable in the make run. +/// +/// @LIT{--disable-all-in-one-v8} tells the build system to use the +/// installed system version of V8 instead of compiling the +/// supplied version from the 3rdParty disable in the make run. +/// +/// @LIT{--enable-bison} tells the build system to use the BISON to regenerate +/// the parser files. If disabled, the supplied files be used and you cannot +/// make changes to the parser files. You need at least BISON 2.4.1. +/// +/// @LIT{--enable-flex} tells the build system to use the FLEX to regenerate +/// the scanner files. If disabled, the supplied files be used and you cannot +/// make changes to the scanner files. You need at least FLEX 2.5.35. //////////////////////////////////////////////////////////////////////////////// // ----------------------------------------------------------------------------- diff --git a/arangod/MRServer/ApplicationMR.cpp b/arangod/MRServer/ApplicationMR.cpp index fd6d1ca4e9..52a9362c1d 100644 --- a/arangod/MRServer/ApplicationMR.cpp +++ b/arangod/MRServer/ApplicationMR.cpp @@ -96,7 +96,7 @@ namespace { ApplicationMR::ApplicationMR (string const& binaryPath) : ApplicationFeature("MRuby"), _startupPath(), - _startupModules("mr/modules"), + _startupModules(), _actionPath(), _gcInterval(1000), _startupLoader(), @@ -108,44 +108,6 @@ ApplicationMR::ApplicationMR (string const& binaryPath) _freeContexts(), _dirtyContexts(), _stopping(0) { - - // ............................................................................. - // use relative system paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_SYSTEM - - _actionPath = binaryPath + "/../share/arango/mr/actions/system"; - _startupModules = binaryPath + "/../share/arango/mr/server/modules" - + ";" + binaryPath + "/../share/arango/mr/common/modules"; - -#else - - // ............................................................................. - // use relative development paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_DEVEL - - _actionPath = binaryPath + "/../mr/actions/system"; - _startupModules = binaryPath + "/../mr/server/modules" - + ";" + binaryPath + "/../mr/common/modules"; - - // ............................................................................. - // use absolute paths - // ............................................................................. - -#else - -#ifdef _PKGDATADIR_ - _actionPath = string(_PKGDATADIR_) + "/mr/actions/system"; - _startupModules = string(_PKGDATADIR_) + "/mr/server/modules" - + ";" + string(_PKGDATADIR_) + "/mr/common/modules"; - -#endif - -#endif -#endif } //////////////////////////////////////////////////////////////////////////////// @@ -307,7 +269,15 @@ void ApplicationMR::setupOptions (map //////////////////////////////////////////////////////////////////////////////// bool ApplicationMR::prepare () { - LOGGER_INFO << "using Ruby modules path '" << _startupModules << "'"; + + // check the startup modules + if (_startupModules.empty()) { + LOGGER_FATAL << "no 'ruby.modules-path' has been supplied, giving up"; + exit(EXIT_FAILURE); + } + else { + LOGGER_INFO << "using Ruby modules path '" << _startupModules << "'"; + } // set up the startup loader if (_startupPath.empty()) { @@ -323,7 +293,11 @@ bool ApplicationMR::prepare () { } // set up action loader - if (! _actionPath.empty()) { + if (_actionPath.empty()) { + LOGGER_FATAL << "no 'ruby.modules-path' has been supplied, giving up"; + exit(EXIT_FAILURE); + } + else { LOGGER_INFO << "using Ruby action files at '" << _actionPath << "'"; _actionLoader.setDirectory(_actionPath); diff --git a/arangod/RestServer/ArangoServer.cpp b/arangod/RestServer/ArangoServer.cpp index 01e9139b27..13e113b4a1 100644 --- a/arangod/RestServer/ArangoServer.cpp +++ b/arangod/RestServer/ArangoServer.cpp @@ -201,7 +201,7 @@ ArangoServer::ArangoServer (int argc, char** argv) _applicationAdminServer(0), _applicationUserManager(0), _dispatcherThreads(8), - _databasePath("/var/lib/arangodb"), + _databasePath(), _removeOnDrop(true), _removeOnCompacted(true), _defaultMaximalSize(TRI_JOURNAL_DEFAULT_MAXIMAL_SIZE), @@ -223,15 +223,6 @@ ArangoServer::ArangoServer (int argc, char** argv) // set working directory and database directory _workingDirectory = "/var/tmp"; - -#ifdef TRI_ENABLE_RELATIVE_SYSTEM - _workingDirectory = _binaryPath + "/../tmp"; - _databasePath = _binaryPath + "/../var/arangodb"; -#endif - -#ifdef _DATABASEDIR_ - _databasePath = _DATABASEDIR_; -#endif } //////////////////////////////////////////////////////////////////////////////// @@ -252,7 +243,10 @@ ArangoServer::ArangoServer (int argc, char** argv) //////////////////////////////////////////////////////////////////////////////// void ArangoServer::buildApplicationServer () { + map additional; + _applicationServer = new ApplicationServer("arangod", "[] ", TRIAGENS_VERSION); + _applicationServer->setSystemConfigFile("arangod.conf"); _applicationServer->setUserConfigFile(".arango/arangod.conf"); // ............................................................................. @@ -282,6 +276,17 @@ void ArangoServer::buildApplicationServer () { _applicationMR = new ApplicationMR(_binaryPath); _applicationServer->addFeature(_applicationMR); +#else + + string ignoreOpt; + + additional[ApplicationServer::OPTIONS_HIDDEN] + ("ruby.gc-interval", &ignoreOpt, "Ruby garbage collection interval (each x requests)") + ("ruby.action-directory", &ignoreOpt, "path to the Ruby action directory") + ("ruby.modules-path", &ignoreOpt, "one or more directories separated by (semi-) colons") + ("ruby.startup-directory", &ignoreOpt, "path to the directory containing alternate Ruby startup scripts") + ; + #endif // ............................................................................. @@ -304,6 +309,7 @@ void ArangoServer::buildApplicationServer () { _applicationAdminServer->allowLogViewer(); _applicationAdminServer->allowVersion("arango", TRIAGENS_VERSION); + _applicationAdminServer->allowAdminDirectory(); // might be changed later // ............................................................................. // build the application user manager @@ -311,7 +317,7 @@ void ArangoServer::buildApplicationServer () { _applicationUserManager = new ApplicationUserManager(); _applicationServer->addFeature(_applicationUserManager); - + // create manager role vector rightsManager; rightsManager.push_back(RIGHT_TO_MANAGE_USER); @@ -341,41 +347,6 @@ void ArangoServer::buildApplicationServer () { _applicationUserManager->setAnonymousRights(rightsAnonymous); - // ............................................................................. - // use relative system paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_SYSTEM - - _applicationServer->setSystemConfigFile("arangod.conf", _binaryPath + "/../etc/arangodb"); - _applicationAdminServer->allowAdminDirectory(_binaryPath + "/../share/arango/html/admin"); - -#else - - // ............................................................................. - // use relative development paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_DEVEL - -#ifdef TRI_HTML_ADMIN_PATH - _applicationAdminServer->allowAdminDirectory(TRI_HTML_ADMIN_PATH); -#else - _applicationAdminServer->allowAdminDirectory(_binaryPath + "/../html/admin"); -#endif - -#else - - // ............................................................................. - // use absolute paths - // ............................................................................. - - _applicationServer->setSystemConfigFile("arangod.conf"); - _applicationAdminServer->allowAdminDirectory(string(_PKGDATADIR_) + "/html/admin"); - -#endif -#endif - // ............................................................................. // define server options // ............................................................................. @@ -384,8 +355,6 @@ void ArangoServer::buildApplicationServer () { // daemon and supervisor mode // ............................................................................. - map additional; - additional[ApplicationServer::OPTIONS_CMDLINE] ("console", "do not start as server, start a JavaScript emergency console instead") ; @@ -499,6 +468,7 @@ void ArangoServer::buildApplicationServer () { if (1 < arguments.size()) { LOGGER_FATAL << "expected at most one database directory, got " << arguments.size(); + ApplicationUserManager::unloadUsers(); ApplicationUserManager::unloadRoles(); exit(EXIT_FAILURE); @@ -507,22 +477,37 @@ void ArangoServer::buildApplicationServer () { _databasePath = arguments[0]; } + if (_databasePath.empty()) { + LOGGER_FATAL << "no database path has been supplied, giving up"; + LOGGER_INFO << "please use the '--database.directory' option"; + + ApplicationUserManager::unloadUsers(); + ApplicationUserManager::unloadRoles(); + exit(EXIT_FAILURE); + } + OperationMode::server_operation_mode_e mode = OperationMode::determineMode(_applicationServer->programOptions()); + if (mode == OperationMode::MODE_CONSOLE || mode == OperationMode::MODE_UNITTESTS || mode == OperationMode::MODE_JSLINT || mode == OperationMode::MODE_SCRIPT) { int res = executeConsole(mode); + + ApplicationUserManager::unloadUsers(); + ApplicationUserManager::unloadRoles(); exit(res); } #ifdef TRI_ENABLE_MRUBY else if (mode == OperationMode::MODE_RUBY_CONSOLE) { int res = executeRubyConsole(); + + ApplicationUserManager::unloadUsers(); + ApplicationUserManager::unloadRoles(); exit(res); } #endif - // ............................................................................. // sanity checks // ............................................................................. @@ -535,25 +520,18 @@ void ArangoServer::buildApplicationServer () { _supervisorMode = true; } - if (_daemonMode) { + if (_daemonMode || _supervisorMode) { if (_pidFile.empty()) { - LOGGER_FATAL << "no pid-file defined, but daemon mode requested"; - cerr << "no pid-file defined, but daemon mode requested\n"; + cerr << "no pid-file defined, but daemon or supervisor mode requested, giving up\n"; + + LOGGER_FATAL << "no pid-file defined, but daemon or supervisor mode was requested"; LOGGER_INFO << "please use the '--pid-file' option"; + ApplicationUserManager::unloadUsers(); ApplicationUserManager::unloadRoles(); exit(EXIT_FAILURE); } } - - if (_databasePath.empty()) { - LOGGER_FATAL << "no database path has been supplied, giving up"; - cerr << "no database path has been supplied, giving up\n"; - LOGGER_INFO << "please use the '--database.directory' option"; - ApplicationUserManager::unloadUsers(); - ApplicationUserManager::unloadRoles(); - exit(EXIT_FAILURE); - } } //////////////////////////////////////////////////////////////////////////////// diff --git a/arangod/RestServer/ArangoServer.h b/arangod/RestServer/ArangoServer.h index 06d09babf9..b9f5457097 100644 --- a/arangod/RestServer/ArangoServer.h +++ b/arangod/RestServer/ArangoServer.h @@ -94,7 +94,7 @@ namespace triagens { public: //////////////////////////////////////////////////////////////////////////////// -/// @brief UnviversalVoc constructor +/// @brief constructor //////////////////////////////////////////////////////////////////////////////// ArangoServer (int argc, char** argv); diff --git a/arangod/V8Server/ApplicationV8.cpp b/arangod/V8Server/ApplicationV8.cpp index 89d4e705be..e1b246daf5 100644 --- a/arangod/V8Server/ApplicationV8.cpp +++ b/arangod/V8Server/ApplicationV8.cpp @@ -103,8 +103,9 @@ namespace { ApplicationV8::ApplicationV8 (string const& binaryPath) : ApplicationFeature("V8"), _startupPath(), - _startupModules("js/modules"), + _startupModules(), _actionPath(), + _useActions(true), _gcInterval(1000), _startupLoader(), _actionLoader(), @@ -115,54 +116,6 @@ ApplicationV8::ApplicationV8 (string const& binaryPath) _freeContexts(), _dirtyContexts(), _stopping(0) { - - // ............................................................................. - // use relative system paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_SYSTEM - - _actionPath = binaryPath + "/../share/arango/js/actions/system"; - _startupModules = binaryPath + "/../share/arango/js/server/modules" - + ";" + binaryPath + "/../share/arango/js/common/modules"; - -#else - - // ............................................................................. - // use relative development paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_DEVEL - -#ifdef TRI_SYSTEM_ACTION_PATH - _actionPath = TRI_SYSTEM_ACTION_PATH; -#else - _actionPath = binaryPath + "/../js/actions/system"; -#endif - -#ifdef TRI_STARTUP_MODULES_PATH - _startupModules = TRI_STARTUP_MODULES_PATH; -#else - _startupModules = binaryPath + "/../js/server/modules" - + ";" + binaryPath + "/../js/common/modules"; -#endif - - // ............................................................................. - // use absolute paths - // ............................................................................. - -#else - -#ifdef _PKGDATADIR_ - - _actionPath = string(_PKGDATADIR_) + "/js/actions/system"; - _startupModules = string(_PKGDATADIR_) + "/js/server/modules" - + ";" + string(_PKGDATADIR_) + "/js/common/modules"; - -#endif - -#endif -#endif } //////////////////////////////////////////////////////////////////////////////// @@ -304,7 +257,7 @@ void ApplicationV8::collectGarbage () { //////////////////////////////////////////////////////////////////////////////// void ApplicationV8::disableActions () { - _actionPath.clear(); + _useActions = false; } //////////////////////////////////////////////////////////////////////////////// @@ -341,7 +294,15 @@ void ApplicationV8::setupOptions (map //////////////////////////////////////////////////////////////////////////////// bool ApplicationV8::prepare () { - LOGGER_INFO << "using JavaScript modules path '" << _startupModules << "'"; + + // check the startup modules + if (_startupModules.empty()) { + LOGGER_FATAL << "no 'javascript.modules-path' has been supplied, giving up"; + exit(EXIT_FAILURE); + } + else { + LOGGER_INFO << "using JavaScript modules path '" << _startupModules << "'"; + } // set up the startup loader if (_startupPath.empty()) { @@ -360,10 +321,16 @@ bool ApplicationV8::prepare () { } // set up action loader - if (! _actionPath.empty()) { - LOGGER_INFO << "using JavaScript action files at '" << _actionPath << "'"; + if (_useActions) { + if (_actionPath.empty()) { + LOGGER_FATAL << "no 'javascript.action-directory' has been supplied, giving up"; + exit(EXIT_FAILURE); + } + else { + LOGGER_INFO << "using JavaScript action files at '" << _actionPath << "'"; - _actionLoader.setDirectory(_actionPath); + _actionLoader.setDirectory(_actionPath); + } } // setup instances @@ -466,7 +433,7 @@ bool ApplicationV8::prepareV8Instance (size_t i) { TRI_InitV8VocBridge(context->_context, _vocbase); TRI_InitV8Queries(context->_context); - if (! _actionPath.empty()) { + if (_useActions) { TRI_InitV8Actions(context->_context, this); } @@ -490,7 +457,7 @@ bool ApplicationV8::prepareV8Instance (size_t i) { } // load all actions - if (! _actionPath.empty()) { + if (_useActions) { bool ok = _actionLoader.executeAllScripts(context->_context); if (! ok) { diff --git a/arangod/V8Server/ApplicationV8.h b/arangod/V8Server/ApplicationV8.h index a74c3a94ac..a4fa6bd067 100644 --- a/arangod/V8Server/ApplicationV8.h +++ b/arangod/V8Server/ApplicationV8.h @@ -288,6 +288,12 @@ namespace triagens { string _actionPath; +//////////////////////////////////////////////////////////////////////////////// +/// @brief use actions +//////////////////////////////////////////////////////////////////////////////// + + bool _useActions; + //////////////////////////////////////////////////////////////////////////////// /// @brief JavaScript garbage collection interval (each x requests) /// diff --git a/arangoirb/MRClient/arangoirb.cpp b/arangoirb/MRClient/arangoirb.cpp index ad6ed468d3..28fe7237b4 100644 --- a/arangoirb/MRClient/arangoirb.cpp +++ b/arangoirb/MRClient/arangoirb.cpp @@ -25,39 +25,37 @@ /// @author Copyright 2011-2012, triAGENS GmbH, Cologne, Germany //////////////////////////////////////////////////////////////////////////////// -#include +#include +#include +#include +#include +#include #include #include #include "build.h" -#include "BasicsC/csv.h" - +#include "Basics/FileUtils.h" #include "Basics/ProgramOptions.h" #include "Basics/ProgramOptionsDescription.h" #include "Basics/StringUtils.h" +#include "BasicsC/csv.h" #include "BasicsC/files.h" #include "BasicsC/init.h" #include "BasicsC/logging.h" #include "BasicsC/strings.h" #include "BasicsC/terminal-utils.h" #include "Logger/Logger.h" -#include "Rest/Initialise.h" -#include "Rest/Endpoint.h" #include "MRClient/MRubyClientConnection.h" #include "MRuby/MRLineEditor.h" #include "MRuby/MRLoader.h" #include "MRuby/mr-utils.h" +#include "Rest/Endpoint.h" +#include "Rest/Initialise.h" #include "SimpleHttpClient/SimpleHttpClient.h" #include "SimpleHttpClient/SimpleHttpResult.h" -#include "mruby.h" -#include "mruby/proc.h" -#include "mruby/data.h" -#include "mruby/variable.h" -#include "mruby/compile.h" - using namespace std; using namespace triagens::basics; using namespace triagens::rest; @@ -116,29 +114,35 @@ static char const DEF_RESET[5] = "\x1b[0m"; /// @{ //////////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////////// +/// @brief configuration file +//////////////////////////////////////////////////////////////////////////////// + +static string ConfigFile = ""; + //////////////////////////////////////////////////////////////////////////////// /// @brief whether or not a password was specified on the command line //////////////////////////////////////////////////////////////////////////////// -static bool _hasPassword = false; +static bool HasPassword = false; //////////////////////////////////////////////////////////////////////////////// /// @brief endpoint //////////////////////////////////////////////////////////////////////////////// -static Endpoint* _endpoint = 0; +static Endpoint* EndpointServer = 0; //////////////////////////////////////////////////////////////////////////////// /// @brief the initial default connection //////////////////////////////////////////////////////////////////////////////// -MRubyClientConnection* _clientConnection = 0; +MRubyClientConnection* ClientConnection = 0; //////////////////////////////////////////////////////////////////////////////// /// @brief connect timeout (in s) //////////////////////////////////////////////////////////////////////////////// -static int64_t _connectTimeout = DEFAULT_CONNECTION_TIMEOUT; +static int64_t ConnectTimeout = DEFAULT_CONNECTION_TIMEOUT; //////////////////////////////////////////////////////////////////////////////// /// @brief disable auto completion @@ -158,12 +162,6 @@ static bool NoColors = false; static string OutputPager = "less -X -R -F -L"; -//////////////////////////////////////////////////////////////////////////////// -/// @brief the pager FILE -//////////////////////////////////////////////////////////////////////////////// - -// static FILE* PAGER = stdout; - //////////////////////////////////////////////////////////////////////////////// /// @brief use pretty print //////////////////////////////////////////////////////////////////////////////// @@ -180,25 +178,25 @@ static bool Quiet = false; /// @brief request timeout (in s) //////////////////////////////////////////////////////////////////////////////// -static int64_t _requestTimeout = DEFAULT_REQUEST_TIMEOUT; +static int64_t RequestTimeout = DEFAULT_REQUEST_TIMEOUT; //////////////////////////////////////////////////////////////////////////////// /// @brief endpoint to connect to //////////////////////////////////////////////////////////////////////////////// -static string _endpointString; +static string EndpointServerString; //////////////////////////////////////////////////////////////////////////////// /// @brief user to send to endpoint //////////////////////////////////////////////////////////////////////////////// -static string _username = "root"; +static string Username = "root"; //////////////////////////////////////////////////////////////////////////////// /// @brief password to send to endpoint //////////////////////////////////////////////////////////////////////////////// -static string _password = ""; +static string Password = ""; //////////////////////////////////////////////////////////////////////////////// /// @brief startup MR files @@ -270,21 +268,6 @@ static mrb_value ClientConnection_httpGet (mrb_state* mrb, mrb_value self) { return connection->getData(url, headerFields); } -//////////////////////////////////////////////////////////////////////////////// -/// @brief print to pager -//////////////////////////////////////////////////////////////////////////////// - -#if 0 -static void InternalPrint (const char *format, const char *str = 0) { - if (str) { - fprintf(PAGER, format, str); - } - else { - fprintf(PAGER, "%s", format); - } -} -#endif - //////////////////////////////////////////////////////////////////////////////// /// @} //////////////////////////////////////////////////////////////////////////////// @@ -298,50 +281,17 @@ static void InternalPrint (const char *format, const char *str = 0) { /// @{ //////////////////////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////////////////////// -/// @brief starts pager -//////////////////////////////////////////////////////////////////////////////// - -#if 0 -static void StartPager () { - if (! UsePager || OutputPager == "" || OutputPager == "stdout") { - PAGER = stdout; - return; - } - - PAGER = popen(OutputPager.c_str(), "w"); - - if (PAGER == 0) { - printf("popen() failed! defaulting PAGER to stdout!\n"); - PAGER = stdout; - UsePager = false; - } -} -#endif - -//////////////////////////////////////////////////////////////////////////////// -/// @brief stops pager -//////////////////////////////////////////////////////////////////////////////// - -#if 0 -static void StopPager () { - if (PAGER != stdout) { - pclose(PAGER); - } -} -#endif - //////////////////////////////////////////////////////////////////////////////// /// @brief return a new client connection instance //////////////////////////////////////////////////////////////////////////////// static MRubyClientConnection* createConnection (MR_state_t* mrs) { return new MRubyClientConnection(mrs, - _endpoint, - _username, - _password, - (double) _requestTimeout, - (double) _connectTimeout, + EndpointServer, + Username, + Password, + (double) RequestTimeout, + (double) ConnectTimeout, DEFAULT_RETRIES, false); } @@ -354,32 +304,34 @@ static void ParseProgramOptions (int argc, char* argv[]) { string level = "info"; ProgramOptionsDescription description("STANDARD options"); - + ProgramOptionsDescription ruby("RUBY options"); + ProgramOptionsDescription client("CLIENT options"); + ProgramOptionsDescription logging("LOGGING options"); ProgramOptionsDescription hidden("HIDDEN options"); hidden + ("auto-complete", "enable auto completion, use no-auto-complete to disable") ("colors", "activate color support") ("no-pretty-print", "disable pretty printting") - ("auto-complete", "enable auto completion, use no-auto-complete to disable") + ; + + ruby + ("ruby.directory", &StartupPath, "startup paths containing the Ruby files; multiple directories can be separated by cola") + ("ruby.modules-path", &StartupModules, "one or more directories separated by cola") ; description + ("configuration,c", &ConfigFile, "read configuration file") ("help,h", "help message") - ("quiet,s", "no banner") - ("log.level,l", &level, "log level") - ("startup.directory", &StartupPath, "startup paths containing the Ruby files; multiple directories can be separated by cola") - ("startup.modules-path", &StartupModules, "one or more directories separated by cola") - ("pager", &OutputPager, "output pager") - ("server.endpoint", &_endpointString, "endpoint to connect to, use 'none' to start without a server") - ("server.username", &_username, "username to use when connecting") - ("server.password", &_password, "password to use when connecting (leave empty for prompt)") - ("server.connect-timeout", &_connectTimeout, "connect timeout in seconds") - ("server.request-timeout", &_requestTimeout, "request timeout in seconds") - ("use-pager", "use pager") - ("pretty-print", "pretty print values") - ("no-colors", "deactivate color support") ("no-auto-complete", "disable auto completion") - // ("unit-tests", &UnitTests, "do not start as shell, run unit tests instead") + ("no-colors", "deactivate color support") + ("pager", &OutputPager, "output pager") + ("pretty-print", "pretty print values") + ("quiet,s", "no banner") + ("use-pager", "use pager") + (client, false) + (javascript, false) + (logging, false) (hidden, true) ; @@ -402,7 +354,52 @@ static void ParseProgramOptions (int argc, char* argv[]) { TRI_SetLogLevelLogging(level.c_str()); TRI_CreateLogAppenderFile("-"); - _hasPassword = options.has("server.password"); + // parse config file + string configFile = ""; + +#ifdef _SYSCONFDIR_ + + string sysDir = string(_SYSCONFDIR_); + string systemConfigFile = "arangosh.conf"; + + if (! sysDir.empty()) { + if (sysDir[sysDir.size() - 1] != '/') { + sysDir += "/" + systemConfigFile; + } + else { + sysDir += systemConfigFile; + } + + if (FileUtils::exists(sysDir)) { + configFile = sysDir; + } + else { + LOGGER_DEBUG << "no system init file '" << sysDir << "'"; + } + } + +#endif + + if (! ConfigFile.empty()) { + if (StringUtils::tolower(ConfigFile) == string("none")) { + LOGGER_INFO << "using no init file at all"; + } + else { + configFile = ConfigFile; + } + } + + if (! configFile.empty()) { + LOGGER_DEBUG << "using init file '" << configFile << "'"; + + if (! options.parse(description, configFile)) { + cout << "cannot parse config file '" << configFile << "': " << options.lastError() << endl; + exit(EXIT_FAILURE); + } + } + + // check if have a password + HasPassword = options.has("server.password"); // set colors if (options.has("colors")) { @@ -413,6 +410,7 @@ static void ParseProgramOptions (int argc, char* argv[]) { NoColors = true; } + // set auto-completion if (options.has("auto-complete")) { NoAutoComplete = false; } @@ -421,6 +419,7 @@ static void ParseProgramOptions (int argc, char* argv[]) { NoAutoComplete = true; } + // set pretty print if (options.has("pretty-print")) { PrettyPrint = true; } @@ -429,13 +428,21 @@ static void ParseProgramOptions (int argc, char* argv[]) { PrettyPrint = false; } + // set pager if (options.has("use-pager")) { UsePager = true; } + // set quiet if (options.has("quiet")) { Quiet = true; } + + // check module path + if (StartupModules.empty()) { + LOGGER_FATAL << "module path not known, please use '--javascript.modules-path'"; + exit(EXIT_FAILURE); + } } //////////////////////////////////////////////////////////////////////////////// @@ -550,88 +557,42 @@ int main (int argc, char* argv[]) { TRI_InitialiseLogging(false); int ret = EXIT_SUCCESS; - // ............................................................................. - // use relative system paths - // ............................................................................. - - { - char* binaryPath = TRI_LocateBinaryPath(argv[0]); - -#ifdef TRI_ENABLE_RELATIVE_SYSTEM - - StartupModules = string(binaryPath) + "/../share/arango/rb/client/modules" - + ";" + string(binaryPath) + "/../share/arango/rb/common/modules"; - -#else - - // ............................................................................. - // use relative development paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_DEVEL - -#ifdef TRI_STARTUP_MODULES_PATH - StartupModules = TRI_STARTUP_MODULES_PATH; -#else - StartupModules = string(binaryPath) + "/rb/client/modules" - + ";" + string(binaryPath) + "/rb/common/modules"; -#endif - -#else - - // ............................................................................. - // use absolute paths - // ............................................................................. - -#ifdef _PKGDATADIR_ - - StartupModules = string(_PKGDATADIR_) + "/rb/client/modules" - + ";" + string(_PKGDATADIR_) + "/rb/common/modules"; - -#endif - -#endif -#endif - - TRI_FreeString(TRI_CORE_MEM_ZONE, binaryPath); - } + EndpointServerString = Endpoint::getDefaultEndpoint(); // ............................................................................. // parse the program options // ............................................................................. - _endpointString = Endpoint::getDefaultEndpoint(); - ParseProgramOptions(argc, argv); // check connection args - if (_connectTimeout <= 0) { + if (ConnectTimeout <= 0) { cerr << "invalid value for --server.connect-timeout" << endl; exit(EXIT_FAILURE); } - if (_requestTimeout <= 0) { + if (RequestTimeout <= 0) { cerr << "invalid value for --server.request-timeout" << endl; exit(EXIT_FAILURE); } - if (_username.size() == 0) { + if (Username.size() == 0) { // must specify a user name cerr << "no value specified for --server.username" << endl; exit(EXIT_FAILURE); } - if (! _hasPassword) { + if (! HasPassword) { // no password given on command-line cout << "Please specify a password:" << endl; // now prompt for it #ifdef TRI_HAVE_TERMIOS_H TRI_SetStdinVisibility(false); - getline(cin, _password); + getline(cin, Password); TRI_SetStdinVisibility(true); #else - getline(cin, _password); + getline(cin, Password); #endif } @@ -650,20 +611,20 @@ int main (int argc, char* argv[]) { // ............................................................................. // check if we want to connect to a server - bool useServer = (_endpointString != "none"); + bool useServer = (EndpointServerString != "none"); if (useServer) { - _endpoint = Endpoint::clientFactory(_endpointString); + EndpointServer = Endpoint::clientFactory(EndpointServerString); - if (_endpoint == 0) { - cerr << "invalid value for --server.endpoint ('" << _endpointString.c_str() << "')" << endl; + if (EndpointServer == 0) { + cerr << "invalid value for --server.endpoint ('" << EndpointServerString.c_str() << "')" << endl; exit(EXIT_FAILURE); } - assert(_endpoint); + assert(EndpointServer); - _clientConnection = createConnection(mrs); - InitMRClientConnection(&mrs->_mrb, _clientConnection); + ClientConnection = createConnection(mrs); + InitMRClientConnection(&mrs->_mrb, ClientConnection); } // ............................................................................. @@ -710,14 +671,14 @@ int main (int argc, char* argv[]) { } if (useServer) { - if (_clientConnection->isConnected()) { + if (ClientConnection->isConnected()) { if (! Quiet) { - cout << "Connected to ArangoDB '" << _endpoint->getSpecification() << "' Version " << _clientConnection->getVersion() << endl; + cout << "Connected to ArangoDB '" << EndpointServer->getSpecification() << "' Version " << ClientConnection->getVersion() << endl; } } else { - cerr << "Could not connect to endpoint '" << _endpointString << "'" << endl; - cerr << "Error message '" << _clientConnection->getErrorMessage() << "'" << endl; + cerr << "Could not connect to endpoint '" << EndpointServerString << "'" << endl; + cerr << "Error message '" << ClientConnection->getErrorMessage() << "'" << endl; } } } @@ -731,7 +692,7 @@ int main (int argc, char* argv[]) { StartupLoader.defineScript("common/bootstrap/error.rb", MR_common_bootstrap_error); } else { - LOGGER_DEBUG << "using JavaScript startup files at '" << StartupPath << "'"; + LOGGER_DEBUG << "using Ruby startup files at '" << StartupPath << "'"; StartupLoader.setDirectory(StartupPath); } @@ -767,6 +728,10 @@ int main (int argc, char* argv[]) { /// @} //////////////////////////////////////////////////////////////////////////////// +// ----------------------------------------------------------------------------- +// --SECTION-- END-OF-FILE +// ----------------------------------------------------------------------------- + // Local Variables: // mode: outline-minor // outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @\\}\\)" diff --git a/arangosh/ArangoShell/ArangoClient.cpp b/arangosh/ArangoShell/ArangoClient.cpp new file mode 100644 index 0000000000..a848bf0f9b --- /dev/null +++ b/arangosh/ArangoShell/ArangoClient.cpp @@ -0,0 +1,674 @@ +//////////////////////////////////////////////////////////////////////////////// +/// @brief arango shell client base +/// +/// @file +/// +/// DISCLAIMER +/// +/// Copyright 2004-2012 triAGENS GmbH, Cologne, Germany +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// +/// Copyright holder is triAGENS GmbH, Cologne, Germany +/// +/// @author Dr. Frank Celler +/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany +//////////////////////////////////////////////////////////////////////////////// + +#include "ArangoClient.h" + +#include "BasicsC/logging.h" +#include "BasicsC/terminal-utils.h" +#include "Basics/FileUtils.h" +#include "Basics/ProgramOptionsDescription.h" +#include "Basics/ProgramOptions.h" +#include "Logger/Logger.h" + +using namespace std; +using namespace triagens::basics; +using namespace triagens::rest; +using namespace triagens::arango; + +// ----------------------------------------------------------------------------- +// --SECTION-- class ArangoClient +// ----------------------------------------------------------------------------- + +// ----------------------------------------------------------------------------- +// --SECTION-- public constants +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color red +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_RED = "\x1b[31m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color blod red +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BOLD_RED = "\x1b[1;31m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color green +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_GREEN = "\x1b[32m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold green +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BOLD_GREEN = "\x1b[1;32m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color blue +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BLUE = "\x1b[34m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold blue +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BOLD_BLUE = "\x1b[1;34m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color yellow +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_YELLOW = "\x1b[33m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color yellow +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BOLD_YELLOW = "\x1b[1;33m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color white +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_WHITE = "\x1b[37m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold white +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BOLD_WHITE = "\x1b[1;37m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color black +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BLACK = "\x1b[30m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold black +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BOLD_BLACK = "\x1b[1;39m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color blink +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BLINK = "\x1b[5m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bright +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_BRIGHT = "\x1b[1m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color reset +//////////////////////////////////////////////////////////////////////////////// + +char const * ArangoClient::COLOR_RESET = "\x1b[0m"; + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- constructors and destructors +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////// +/// @brief constructor +//////////////////////////////////////////////////////////////////////////////// + +ArangoClient::ArangoClient () + : _configFile(), + _logLevel("info"), + _quiet(false), + + _colorOptions(false), + _noColors(false), + + _autoCompleteOptions(false), + _noAutoComplete(false), + + _prettyPrintOptions(false), + _prettyPrint(false), + + _pagerOptions(false), + _outputPager("less -X -R -F -L"), + _pager(stdout), + _usePager(false), + + _serverOptions(false), + _endpointString(), + _endpointServer(0), + _username("root"), + _password(""), + _hasPassword(false), + _connectTimeout(DEFAULT_CONNECTION_TIMEOUT), + _requestTimeout(DEFAULT_REQUEST_TIMEOUT) { +} + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- public methods +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the general and logging options +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setupGeneral (ProgramOptionsDescription& description) { + ProgramOptionsDescription loggingOptions("LOGGING options"); + + loggingOptions + ("log.level,l", &_logLevel, "log level") + ; + + description + ("configuration,c", &_configFile, "read configuration file") + ("help,h", "help message") + ("quiet,s", "no banner") + (loggingOptions, false) + ; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the color options +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setupColors (ProgramOptionsDescription& description) { + ProgramOptionsDescription hiddenOptions("HIDDEN options"); + + hiddenOptions + ("colors", "activate color support") + ; + + description + ("no-colors", "deactivate color support") + (hiddenOptions, true) + ; + + _colorOptions = true; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the auto-complete options +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setupAutoComplete (ProgramOptionsDescription& description) { + ProgramOptionsDescription hiddenOptions("HIDDEN options"); + + hiddenOptions + ("auto-complete", "enable auto completion, use no-auto-complete to disable") + ; + + description + ("no-auto-complete", "disable auto completion") + (hiddenOptions, true) + ; + + _autoCompleteOptions = true; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the pretty-printing options +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setupPrettyPrint (ProgramOptionsDescription& description) { + ProgramOptionsDescription hiddenOptions("HIDDEN options"); + + hiddenOptions + ("no-pretty-print", "disable pretty printting") + ; + + description + ("pretty-print", "pretty print values") + (hiddenOptions, true) + ; + + _prettyPrintOptions = true; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the pager options +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setupPager (ProgramOptionsDescription& description) { + description + ("pager", &_outputPager, "output pager") + ("use-pager", "use pager") + ; + + _pagerOptions = true; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the server options +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setupServer (ProgramOptionsDescription& description) { + ProgramOptionsDescription clientOptions("CLIENT options"); + + clientOptions + ("server.endpoint", &_endpointString, "endpoint to connect to, use 'none' to start without a server") + ("server.username", &_username, "username to use when connecting") + ("server.password", &_password, "password to use when connecting (leave empty for prompt)") + ("server.connect-timeout", &_connectTimeout, "connect timeout in seconds") + ("server.request-timeout", &_requestTimeout, "request timeout in seconds") + ; + + description(clientOptions, false); + + _serverOptions = true; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief parses command line and config file and prepares logging +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::parse (ProgramOptions& options, ProgramOptionsDescription& description, int argc, char* argv[]) { + if (! options.parse(description, argc, argv)) { + cerr << options.lastError() << "\n"; + exit(EXIT_FAILURE); + } + + // check for help + set help = options.needHelp("help"); + + if (! help.empty()) { + cout << description.usage(help) << endl; + exit(EXIT_SUCCESS); + } + + // setup the logging + TRI_SetLogLevelLogging(_logLevel.c_str()); + TRI_CreateLogAppenderFile("-"); + TRI_SetLineNumberLogging(false); + + // parse config file + string configFile = ""; + + if (! _configFile.empty()) { + if (StringUtils::tolower(_configFile) == string("none")) { + LOGGER_INFO << "using no init file at all"; + } + else { + configFile = _configFile; + } + } + +#ifdef _SYSCONFDIR_ + + else { + string sysDir = string(_SYSCONFDIR_); + string systemConfigFile = "arangosh.conf"; + + if (! sysDir.empty()) { + if (sysDir[sysDir.size() - 1] != '/') { + sysDir += "/" + systemConfigFile; + } + else { + sysDir += systemConfigFile; + } + + if (FileUtils::exists(sysDir)) { + configFile = sysDir; + } + else { + LOGGER_DEBUG << "no system init file '" << sysDir << "'"; + } + } + } + +#endif + + if (! configFile.empty()) { + LOGGER_DEBUG << "using init file '" << configFile << "'"; + + if (! options.parse(description, configFile)) { + cout << "cannot parse config file '" << configFile << "': " << options.lastError() << endl; + exit(EXIT_FAILURE); + } + } + + // check if have a password + _hasPassword = options.has("server.password"); + + // set colors + if (options.has("colors")) { + _noColors = false; + } + + if (options.has("no-colors")) { + _noColors = true; + } + + // set auto-completion + if (options.has("auto-complete")) { + _noAutoComplete = false; + } + + if (options.has("no-auto-complete")) { + _noAutoComplete = true; + } + + // set pretty print + if (options.has("pretty-print")) { + _prettyPrint = true; + } + + if (options.has("no-pretty-print")) { + _prettyPrint = false; + } + + // set pager + if (options.has("use-pager")) { + _usePager = true; + } + + // set quiet + if (options.has("quiet")) { + _quiet = true; + } + + // ............................................................................. + // server options + // ............................................................................. + + if (_serverOptions) { + + // check connection args + if (_connectTimeout <= 0) { + cerr << "invalid value for --server.connect-timeout, must be positive" << endl; + exit(EXIT_FAILURE); + } + + if (_requestTimeout <= 0) { + cerr << "invalid value for --server.request-timeout, must be positive" << endl; + exit(EXIT_FAILURE); + } + + // must specify a user name + if (_username.size() == 0) { + cerr << "no value specified for --server.username" << endl; + exit(EXIT_FAILURE); + } + + // no password given on command-line + if (! _hasPassword) { + cout << "Please specify a password: " << flush; + + // now prompt for it +#ifdef TRI_HAVE_TERMIOS_H + TRI_SetStdinVisibility(false); + getline(cin, _password); + + TRI_SetStdinVisibility(true); +#else + getline(cin, _password); +#endif + } + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief starts pager +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::startPager () { + if (! _usePager || _outputPager == "" || _outputPager == "stdout" || _outputPager == "-") { + _pager = stdout; + return; + } + + _pager = popen(_outputPager.c_str(), "w"); + + if (_pager == 0) { + printf("popen() failed! Using stdout instead!\n"); + _pager = stdout; + _usePager = false; + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief stops pager +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::stopPager () { + if (_pager != stdout) { + pclose(_pager); + _pager = stdout; + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief print to pager +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::internalPrint (const char* format, const char* str) { + if (str) { + fprintf(_pager, format, str); + } + else { + fprintf(_pager, "%s", format); + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief print info message +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::printWelcomeInfo () { + if (_usePager) { + cout << "Using pager '" << _outputPager << "' for output buffering." << endl; + } + + if (_prettyPrint) { + cout << "Pretty print values." << endl; + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief print bye-bye +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::printByeBye () { + if (! _quiet) { + cout << endl << "Bye Bye! Auf Wiedersehen! さようなら" << endl; + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief creates an new endpoint +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::createEndpoint () { + createEndpoint(_endpointString); +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief creates an new endpoint +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::createEndpoint (string const& definition) { + + // close previous endpoint + if (_endpointServer != 0) { + delete _endpointServer; + } + + _endpointServer = Endpoint::clientFactory(definition); +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief quiet start +//////////////////////////////////////////////////////////////////////////////// + +bool ArangoClient::quiet () const { + return _quiet; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief deactivate colors +//////////////////////////////////////////////////////////////////////////////// + +bool ArangoClient::colors () const { + return ! _noColors; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets the auto completion flag +//////////////////////////////////////////////////////////////////////////////// + +bool ArangoClient::autoComplete () const { + return ! _noAutoComplete; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use pretty print +//////////////////////////////////////////////////////////////////////////////// + +bool ArangoClient::prettyPrint () const { + return _prettyPrint; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets the output pager +//////////////////////////////////////////////////////////////////////////////// + +string const& ArangoClient::outputPager () const { + return _outputPager; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets use pager +//////////////////////////////////////////////////////////////////////////////// + +bool ArangoClient::usePager () const { + return _usePager; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets use pager +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setUsePager (bool value) { + _usePager = value; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets endpoint to connect to as string +//////////////////////////////////////////////////////////////////////////////// + +string const& ArangoClient::endpointString () const { + return _endpointString; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets endpoint to connect to as string +//////////////////////////////////////////////////////////////////////////////// + +void ArangoClient::setEndpointString (string const& value) { + _endpointString = value; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief endpoint +//////////////////////////////////////////////////////////////////////////////// + +Endpoint* ArangoClient::endpointServer() const { + return _endpointServer; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief user to send to endpoint +//////////////////////////////////////////////////////////////////////////////// + +string const& ArangoClient::username () const { + return _username; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief password to send to endpoint +//////////////////////////////////////////////////////////////////////////////// + +string const& ArangoClient::password () const { + return _password; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief connect timeout (in seconds) +//////////////////////////////////////////////////////////////////////////////// + +double ArangoClient::connectTimeout () const { + return _connectTimeout; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief request timeout (in seconds) +//////////////////////////////////////////////////////////////////////////////// + +double ArangoClient::requestTimeout () const { + return _requestTimeout; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- END-OF-FILE +// ----------------------------------------------------------------------------- + +// Local Variables: +// mode: outline-minor +// outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}\\)" +// End: diff --git a/arangosh/ArangoShell/ArangoClient.h b/arangosh/ArangoShell/ArangoClient.h new file mode 100644 index 0000000000..5dd9802746 --- /dev/null +++ b/arangosh/ArangoShell/ArangoClient.h @@ -0,0 +1,554 @@ +//////////////////////////////////////////////////////////////////////////////// +/// @brief arango shell client base +/// +/// @file +/// +/// DISCLAIMER +/// +/// Copyright 2004-2012 triAGENS GmbH, Cologne, Germany +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// +/// Copyright holder is triAGENS GmbH, Cologne, Germany +/// +/// @author Dr. Frank Celler +/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany +//////////////////////////////////////////////////////////////////////////////// + +#ifndef TRIAGENS_ARANGO_SHELL_ARANGO_CLIENT_H +#define TRIAGENS_ARANGO_SHELL_ARANGO_CLIENT_H 1 + +#include "Basics/Common.h" + +#include "Rest/Endpoint.h" + +// ----------------------------------------------------------------------------- +// --SECTION-- forward declarations +// ----------------------------------------------------------------------------- + +namespace triagens { + namespace basics { + class ProgramOptionsDescription; + class ProgramOptions; + } + + namespace rest { + class Endpoint; + } + +// ----------------------------------------------------------------------------- +// --SECTION-- class ArangoClient +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + + namespace arango { + +//////////////////////////////////////////////////////////////////////////////// +/// @brief arango shell client base +//////////////////////////////////////////////////////////////////////////////// + + class ArangoClient { + private: + ArangoClient (const ArangoClient&); + ArangoClient operator= (const ArangoClient&); + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- public constants +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + + public: + +//////////////////////////////////////////////////////////////////////////////// +/// @brief default request timeout +//////////////////////////////////////////////////////////////////////////////// + + static double const DEFAULT_REQUEST_TIMEOUT = 300.0; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief default number of retries +//////////////////////////////////////////////////////////////////////////////// + + static size_t const DEFAULT_RETRIES = 2; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief default connection timeout +//////////////////////////////////////////////////////////////////////////////// + + static double const DEFAULT_CONNECTION_TIMEOUT = 3.0; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color red +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_RED; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color blod red +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BOLD_RED; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color green +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_GREEN; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold green +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BOLD_GREEN; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color blue +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BLUE; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold blue +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BOLD_BLUE; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color yellow +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_YELLOW; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color yellow +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BOLD_YELLOW; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color white +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_WHITE; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold white +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BOLD_WHITE; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color black +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BLACK; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bold black +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BOLD_BLACK; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color blink +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BLINK; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color bright +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_BRIGHT; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief color reset +//////////////////////////////////////////////////////////////////////////////// + + static char const * COLOR_RESET; + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- constructors and destructors +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + + public: + +//////////////////////////////////////////////////////////////////////////////// +/// @brief constructor +//////////////////////////////////////////////////////////////////////////////// + + ArangoClient (); + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- public methods +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + + public: + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the general and logging options +//////////////////////////////////////////////////////////////////////////////// + + void setupGeneral (triagens::basics::ProgramOptionsDescription& description); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the color options +//////////////////////////////////////////////////////////////////////////////// + + void setupColors (triagens::basics::ProgramOptionsDescription& description); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the auto-complete options +//////////////////////////////////////////////////////////////////////////////// + + void setupAutoComplete (triagens::basics::ProgramOptionsDescription& description); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the pretty-printing options +//////////////////////////////////////////////////////////////////////////////// + + void setupPrettyPrint (triagens::basics::ProgramOptionsDescription& description); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the pager options +//////////////////////////////////////////////////////////////////////////////// + + void setupPager (triagens::basics::ProgramOptionsDescription& description); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets up the server options +//////////////////////////////////////////////////////////////////////////////// + + void setupServer (triagens::basics::ProgramOptionsDescription& description); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief parses command line and config file and prepares logging +//////////////////////////////////////////////////////////////////////////////// + + void parse (triagens::basics::ProgramOptions&, + triagens::basics::ProgramOptionsDescription& description, + int argc, + char* argv[]); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief starts pager +//////////////////////////////////////////////////////////////////////////////// + + void startPager (); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief stops pager +//////////////////////////////////////////////////////////////////////////////// + + void stopPager (); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief print to pager +//////////////////////////////////////////////////////////////////////////////// + + void internalPrint (const char* format, const char* str = 0); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief print info message +//////////////////////////////////////////////////////////////////////////////// + + void printWelcomeInfo (); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief print bye-bye +//////////////////////////////////////////////////////////////////////////////// + + void printByeBye (); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief creates an new endpoint +//////////////////////////////////////////////////////////////////////////////// + + void createEndpoint (); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief creates an new endpoint +//////////////////////////////////////////////////////////////////////////////// + + void createEndpoint (string const& definition); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief quiet start +//////////////////////////////////////////////////////////////////////////////// + + bool quiet () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief deactivate colors +//////////////////////////////////////////////////////////////////////////////// + + bool colors () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets the auto completion flag +//////////////////////////////////////////////////////////////////////////////// + + bool autoComplete () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use pretty print +//////////////////////////////////////////////////////////////////////////////// + + bool prettyPrint () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets the output pager +//////////////////////////////////////////////////////////////////////////////// + + string const& outputPager () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets use pager +//////////////////////////////////////////////////////////////////////////////// + + bool usePager () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets use pager +//////////////////////////////////////////////////////////////////////////////// + + void setUsePager (bool); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief gets endpoint to connect to as string +//////////////////////////////////////////////////////////////////////////////// + + string const& endpointString () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief sets endpoint to connect to as string +//////////////////////////////////////////////////////////////////////////////// + + void setEndpointString (string const&); + +//////////////////////////////////////////////////////////////////////////////// +/// @brief endpoint +//////////////////////////////////////////////////////////////////////////////// + + triagens::rest::Endpoint* endpointServer() const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief user to send to endpoint +//////////////////////////////////////////////////////////////////////////////// + + string const& username () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief password to send to endpoint +//////////////////////////////////////////////////////////////////////////////// + + string const& password () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief connect timeout (in seconds) +//////////////////////////////////////////////////////////////////////////////// + + double connectTimeout () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief request timeout (in seconds) +//////////////////////////////////////////////////////////////////////////////// + + double requestTimeout () const; + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +// ----------------------------------------------------------------------------- +// --SECTION-- private variables +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @addtogroup ArangoShell +/// @{ +//////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////// +/// @brief configuration file +//////////////////////////////////////////////////////////////////////////////// + + string _configFile; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief log level +//////////////////////////////////////////////////////////////////////////////// + + string _logLevel; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief quiet start +//////////////////////////////////////////////////////////////////////////////// + + bool _quiet; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use color options +//////////////////////////////////////////////////////////////////////////////// + + bool _colorOptions; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief deactivate colors +//////////////////////////////////////////////////////////////////////////////// + + bool _noColors; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use auto-complete options +//////////////////////////////////////////////////////////////////////////////// + + bool _autoCompleteOptions; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief disable auto completion +//////////////////////////////////////////////////////////////////////////////// + + bool _noAutoComplete; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use pretty-print options +//////////////////////////////////////////////////////////////////////////////// + + bool _prettyPrintOptions; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use pretty print +//////////////////////////////////////////////////////////////////////////////// + + bool _prettyPrint; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use pager options +//////////////////////////////////////////////////////////////////////////////// + + bool _pagerOptions; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief the output pager +//////////////////////////////////////////////////////////////////////////////// + + string _outputPager; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief the pager FILE +//////////////////////////////////////////////////////////////////////////////// + + FILE* _pager; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use pager +//////////////////////////////////////////////////////////////////////////////// + + bool _usePager; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief use server options +//////////////////////////////////////////////////////////////////////////////// + + bool _serverOptions; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief endpoint to connect to as string +//////////////////////////////////////////////////////////////////////////////// + + string _endpointString; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief endpoint +//////////////////////////////////////////////////////////////////////////////// + + triagens::rest::Endpoint* _endpointServer; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief user to send to endpoint +//////////////////////////////////////////////////////////////////////////////// + + string _username; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief password to send to endpoint +//////////////////////////////////////////////////////////////////////////////// + + string _password; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief whether or not a password was specified on the command line +//////////////////////////////////////////////////////////////////////////////// + + bool _hasPassword; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief connect timeout (in seconds) +//////////////////////////////////////////////////////////////////////////////// + + double _connectTimeout; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief request timeout (in seconds) +//////////////////////////////////////////////////////////////////////////////// + + double _requestTimeout; + }; + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @} +//////////////////////////////////////////////////////////////////////////////// + +#endif + +// ----------------------------------------------------------------------------- +// --SECTION-- END-OF-FILE +// ----------------------------------------------------------------------------- + +// Local Variables: +// mode: outline-minor +// outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}\\)" +// End: diff --git a/arangosh/Makefile.files b/arangosh/Makefile.files index 57efa6466d..92ce16b1cc 100644 --- a/arangosh/Makefile.files +++ b/arangosh/Makefile.files @@ -20,6 +20,7 @@ bin_arangosh_LDADD = \ @V8_LIBS@ bin_arangosh_SOURCES = \ + arangosh/ArangoShell/ArangoClient.cpp \ arangosh/V8Client/ImportHelper.cpp \ arangosh/V8Client/V8ClientConnection.cpp \ arangosh/V8Client/arangosh.cpp @@ -40,6 +41,7 @@ bin_arangoimp_LDADD = \ @V8_LIBS@ bin_arangoimp_SOURCES = \ + arangosh/ArangoShell/ArangoClient.cpp \ arangosh/V8Client/ImportHelper.cpp \ arangosh/V8Client/V8ClientConnection.cpp \ arangosh/V8Client/arangoimp.cpp diff --git a/arangosh/V8Client/arangoimp.cpp b/arangosh/V8Client/arangoimp.cpp index cb7da7ba3b..c71df9944f 100644 --- a/arangosh/V8Client/arangoimp.cpp +++ b/arangosh/V8Client/arangoimp.cpp @@ -30,10 +30,11 @@ #include "build.h" +#include "ArangoShell/ArangoClient.h" +#include "Basics/FileUtils.h" #include "Basics/ProgramOptions.h" #include "Basics/ProgramOptionsDescription.h" #include "Basics/StringUtils.h" -#include "Basics/FileUtils.h" #include "BasicsC/files.h" #include "BasicsC/init.h" #include "BasicsC/logging.h" @@ -45,13 +46,14 @@ #include "Rest/Initialise.h" #include "SimpleHttpClient/SimpleHttpClient.h" #include "SimpleHttpClient/SimpleHttpResult.h" -#include "V8ClientConnection.h" +#include "V8Client/V8ClientConnection.h" using namespace std; using namespace triagens::basics; using namespace triagens::httpclient; using namespace triagens::rest; using namespace triagens::v8client; +using namespace triagens::arango; // ----------------------------------------------------------------------------- // --SECTION-- private variables @@ -63,73 +65,63 @@ using namespace triagens::v8client; //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// -/// @brief connection default values +/// @brief base class for clients //////////////////////////////////////////////////////////////////////////////// -static int64_t DEFAULT_REQUEST_TIMEOUT = 300; -static size_t DEFAULT_RETRIES = 2; -static int64_t DEFAULT_CONNECTION_TIMEOUT = 3; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief whether or not a password was specified -//////////////////////////////////////////////////////////////////////////////// - -static bool _hasPassword = false; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief endpoint to connect to -//////////////////////////////////////////////////////////////////////////////// - -static Endpoint* _endpoint = 0; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief connect timeout (in s) -//////////////////////////////////////////////////////////////////////////////// - -static int64_t _connectTimeout = DEFAULT_CONNECTION_TIMEOUT; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief request timeout (in s) -//////////////////////////////////////////////////////////////////////////////// - -static int64_t _requestTimeout = DEFAULT_REQUEST_TIMEOUT; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief endpoint to connect to -//////////////////////////////////////////////////////////////////////////////// - -static string _endpointString; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief user to send to endpoint -//////////////////////////////////////////////////////////////////////////////// - -static string _username = "root"; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief password to send to endpoint -//////////////////////////////////////////////////////////////////////////////// - -static string _password = ""; +ArangoClient BaseClient; //////////////////////////////////////////////////////////////////////////////// /// @brief the initial default connection //////////////////////////////////////////////////////////////////////////////// -V8ClientConnection* clientConnection = 0; +V8ClientConnection* ClientConnection = 0; //////////////////////////////////////////////////////////////////////////////// /// @brief max size body size (used for imports) //////////////////////////////////////////////////////////////////////////////// -static uint64_t _maxUploadSize = 500000; +static uint64_t MaxUploadSize = 500000; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief quote character +//////////////////////////////////////////////////////////////////////////////// static string QuoteChar = "\""; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief separator character +//////////////////////////////////////////////////////////////////////////////// + static string SeparatorChar = ","; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief file-name +//////////////////////////////////////////////////////////////////////////////// + static string FileName = ""; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief collection-name +//////////////////////////////////////////////////////////////////////////////// + static string CollectionName = ""; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief import type +//////////////////////////////////////////////////////////////////////////////// + static string TypeImport = "json"; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief create collection if necessary +//////////////////////////////////////////////////////////////////////////////// + static bool CreateCollection = false; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief also import identifiers +//////////////////////////////////////////////////////////////////////////////// + static bool UseIds = false; //////////////////////////////////////////////////////////////////////////////// @@ -150,55 +142,31 @@ static bool UseIds = false; //////////////////////////////////////////////////////////////////////////////// static void ParseProgramOptions (int argc, char* argv[]) { - string level = "info"; - ProgramOptionsDescription description("STANDARD options"); description - ("help,h", "help message") - ("log.level,l", &level, "log level") ("file", &FileName, "file name (\"-\" for STDIN)") ("collection", &CollectionName, "collection name") ("create-collection", &CreateCollection, "create collection if it does not yet exist") ("use-ids", &UseIds, "re-use _id and _rev values found in document data") - ("max-upload-size", &_maxUploadSize, "maximum size of import chunks (in bytes)") + ("max-upload-size", &MaxUploadSize, "maximum size of import chunks (in bytes)") ("type", &TypeImport, "type of file (\"csv\" or \"json\")") ("quote", &QuoteChar, "quote character") ("separator", &SeparatorChar, "separator character") - ("server.endpoint", &_endpointString, "endpoint to connect to") - ("server.username", &_username, "username to use when connecting") - ("server.password", &_password, "password to use when connecting (leave empty for prompt)") - ("server.connect-timeout", &_connectTimeout, "connect timeout in seconds") - ("server.request-timeout", &_requestTimeout, "request timeout in seconds") ; - vector myargs; - description.arguments(&myargs); + BaseClient.setupGeneral(description); + BaseClient.setupServer(description); + + vector arguments; + description.arguments(&arguments); ProgramOptions options; - - if (! options.parse(description, argc, argv)) { - cerr << options.lastError() << "\n"; - exit(EXIT_FAILURE); - } + BaseClient.parse(options, description, argc, argv); - _hasPassword = options.has("server.password"); - - if (FileName == "" && myargs.size() > 0) { - FileName = myargs[0]; + if (FileName == "" && arguments.size() > 0) { + FileName = arguments[0]; } - - // check for help - set help = options.needHelp("help"); - - if (! help.empty()) { - cout << description.usage(help) << endl; - exit(EXIT_SUCCESS); - } - - // set the logging - TRI_SetLogLevelLogging(level.c_str()); - TRI_CreateLogAppenderFile("-"); } //////////////////////////////////////////////////////////////////////////////// @@ -224,92 +192,69 @@ int main (int argc, char* argv[]) { TRI_InitialiseLogging(false); - _endpointString = Endpoint::getDefaultEndpoint(); + BaseClient.setEndpointString(Endpoint::getDefaultEndpoint()); + // ............................................................................. // parse the program options + // ............................................................................. + ParseProgramOptions(argc, argv); - // check connection args - if (_connectTimeout <= 0) { - cerr << "invalid value for --server.connect-timeout" << endl; - return EXIT_FAILURE; - } + // ............................................................................. + // set-up client connection + // ............................................................................. - if (_requestTimeout <= 0) { - cerr << "invalid value for --server.request-timeout" << endl; - return EXIT_FAILURE; - } - - if (_username.size() == 0) { - // must specify a user name - cerr << "no value specified for --server.username" << endl; + BaseClient.createEndpoint(); + + if (BaseClient.endpointServer() == 0) { + cerr << "invalid value for --server.endpoint ('" << BaseClient.endpointString() << "')" << endl; exit(EXIT_FAILURE); } - - if (! _hasPassword) { - // no password given on command-line - cout << "Please specify a password:" << endl; - // now prompt for it -#ifdef TRI_HAVE_TERMIOS_H - TRI_SetStdinVisibility(false); - getline(cin, _password); - TRI_SetStdinVisibility(true); -#else - getline(cin, _password); -#endif - } - - - _endpoint = Endpoint::clientFactory(_endpointString); - if (_endpoint == 0) { - cerr << "invalid --server.endpoint specification." << endl; - return EXIT_FAILURE; - } - - assert(_endpoint); - - clientConnection = new V8ClientConnection(_endpoint, - _username, - _password, - (double) _requestTimeout, - (double) _connectTimeout, - DEFAULT_RETRIES, + ClientConnection = new V8ClientConnection(BaseClient.endpointServer(), + BaseClient.username(), + BaseClient.password(), + BaseClient.requestTimeout(), + BaseClient.connectTimeout(), + ArangoClient::DEFAULT_RETRIES, false); - if (!clientConnection->isConnected()) { - cerr << "Could not connect to endpoint " << _endpoint->getSpecification() << endl; - cerr << "Error message: '" << clientConnection->getErrorMessage() << "'" << endl; + if (!ClientConnection->isConnected()) { + cerr << "Could not connect to endpoint " << BaseClient.endpointServer()->getSpecification() << endl; + cerr << "Error message: '" << ClientConnection->getErrorMessage() << "'" << endl; return EXIT_FAILURE; } // successfully connected - - cout << "Connected to ArangoDB '" << _endpoint->getSpecification() << "' Version " << clientConnection->getVersion() << endl; + cout << "Connected to ArangoDB '" << BaseClient.endpointServer()->getSpecification() + << "' Version " << ClientConnection->getVersion() << endl; cout << "----------------------------------------" << endl; - cout << "collection : " << CollectionName << endl; - cout << "create : " << (CreateCollection ? "yes" : "no") << endl; - cout << "reusing ids : " << (UseIds ? "yes" : "no") << endl; - cout << "file : " << FileName << endl; - cout << "type : " << TypeImport << endl; - cout << "quote : " << QuoteChar << endl; - cout << "separator : " << SeparatorChar << endl; - cout << "connect timeout : " << _connectTimeout << endl; - cout << "request timeout : " << _requestTimeout << endl; + cout << "collection: " << CollectionName << endl; + cout << "create: " << (CreateCollection ? "yes" : "no") << endl; + cout << "reusing ids: " << (UseIds ? "yes" : "no") << endl; + cout << "file: " << FileName << endl; + cout << "type: " << TypeImport << endl; + cout << "quote: " << QuoteChar << endl; + cout << "separator: " << SeparatorChar << endl; + cout << "connect timeout: " << BaseClient.connectTimeout() << endl; + cout << "request timeout: " << BaseClient.requestTimeout() << endl; cout << "----------------------------------------" << endl; - ImportHelper ih(clientConnection->getHttpClient(), _maxUploadSize); + ImportHelper ih(ClientConnection->getHttpClient(), MaxUploadSize); + // create colletion if (CreateCollection) { ih.setCreateCollection(true); } + // use given identifiers if (UseIds) { ih.setUseIds(true); } + // quote if (QuoteChar.length() == 1) { ih.setQuote(QuoteChar[0]); } @@ -318,6 +263,7 @@ int main (int argc, char* argv[]) { return EXIT_FAILURE; } + // separator if (SeparatorChar.length() == 1) { ih.setSeparator(SeparatorChar[0]); } @@ -326,11 +272,13 @@ int main (int argc, char* argv[]) { return EXIT_FAILURE; } + // collection name if (CollectionName == "") { cerr << "collection name is missing." << endl; return EXIT_FAILURE; } + // filename if (FileName == "") { cerr << "file name is missing." << endl; return EXIT_FAILURE; @@ -341,7 +289,9 @@ int main (int argc, char* argv[]) { return EXIT_FAILURE; } + // import type bool ok; + if (TypeImport == "csv") { cout << "Starting CSV import..." << endl; ok = ih.importCsv(CollectionName, FileName); @@ -353,21 +303,25 @@ int main (int argc, char* argv[]) { } else { - cerr << "Wrong type." << endl; + cerr << "Wrong type '" << TypeImport << "'." << endl; return EXIT_FAILURE; } cout << endl; + // give information about import if (ok) { - cout << "created : " << ih.getImportedLines() << endl; - cout << "errors : " << ih.getErrorLines() << endl; - cout << "total : " << ih.getReadLines() << endl; + cout << "created: " << ih.getImportedLines() << endl; + cout << "errors: " << ih.getErrorLines() << endl; + cout << "total: " << ih.getReadLines() << endl; } else { - cerr << "error message : " << ih.getErrorMessage() << endl; + cerr << "error message: " << ih.getErrorMessage() << endl; } + // calling dispose in V8 3.10.x causes a segfault. the v8 docs says its not necessary to call it upon program termination + // v8::V8::Dispose(); + TRIAGENS_REST_SHUTDOWN; return EXIT_SUCCESS; @@ -377,6 +331,10 @@ int main (int argc, char* argv[]) { /// @} //////////////////////////////////////////////////////////////////////////////// +// ----------------------------------------------------------------------------- +// --SECTION-- END-OF-FILE +// ----------------------------------------------------------------------------- + // Local Variables: // mode: outline-minor // outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @\\}\\)" diff --git a/arangosh/V8Client/arangosh.cpp b/arangosh/V8Client/arangosh.cpp index 33693a2ba8..34e17b57b5 100644 --- a/arangosh/V8Client/arangosh.cpp +++ b/arangosh/V8Client/arangosh.cpp @@ -34,19 +34,16 @@ #include "3rdParty/valgrind/valgrind.h" -#include "BasicsC/csv.h" - +#include "ArangoShell/ArangoClient.h" #include "Basics/ProgramOptions.h" #include "Basics/ProgramOptionsDescription.h" #include "Basics/StringUtils.h" +#include "BasicsC/csv.h" #include "BasicsC/files.h" #include "BasicsC/init.h" -#include "BasicsC/logging.h" #include "BasicsC/strings.h" -#include "BasicsC/terminal-utils.h" -#include "Logger/Logger.h" -#include "Rest/Initialise.h" #include "Rest/Endpoint.h" +#include "Rest/Initialise.h" #include "SimpleHttpClient/SimpleHttpClient.h" #include "SimpleHttpClient/SimpleHttpResult.h" #include "V8/JSLoader.h" @@ -54,13 +51,8 @@ #include "V8/v8-conv.h" #include "V8/v8-shell.h" #include "V8/v8-utils.h" +#include "V8Client/ImportHelper.h" #include "V8Client/V8ClientConnection.h" -#include "Variant/VariantArray.h" -#include "Variant/VariantBoolean.h" -#include "Variant/VariantInt64.h" -#include "Variant/VariantString.h" - -#include "ImportHelper.h" using namespace std; using namespace triagens::basics; @@ -74,46 +66,6 @@ using namespace triagens::arango; #include "js/common/bootstrap/js-errors.h" #include "js/client/js-client.h" -// ----------------------------------------------------------------------------- -// --SECTION-- private constants -// ----------------------------------------------------------------------------- - -//////////////////////////////////////////////////////////////////////////////// -/// @addtogroup V8Shell -/// @{ -//////////////////////////////////////////////////////////////////////////////// - -//////////////////////////////////////////////////////////////////////////////// -/// @brief connection default values -//////////////////////////////////////////////////////////////////////////////// - -static int64_t const DEFAULT_REQUEST_TIMEOUT = 300; -static size_t const DEFAULT_RETRIES = 2; -static int64_t const DEFAULT_CONNECTION_TIMEOUT = 3; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief colors for output -//////////////////////////////////////////////////////////////////////////////// - -static char const DEF_RED[6] = "\x1b[31m"; -static char const DEF_BOLD_RED[8] = "\x1b[1;31m"; -static char const DEF_GREEN[6] = "\x1b[32m"; -static char const DEF_BOLD_GREEN[8] = "\x1b[1;32m"; -static char const DEF_BLUE[6] = "\x1b[34m"; -static char const DEF_BOLD_BLUE[8] = "\x1b[1;34m"; -static char const DEF_YELLOW[8] = "\x1b[1;33m"; -static char const DEF_WHITE[6] = "\x1b[37m"; -static char const DEF_BOLD_WHITE[8] = "\x1b[1;37m"; -static char const DEF_BLACK[6] = "\x1b[30m"; -static char const DEF_BOLD_BLACK[8] = "\x1b[1;39m"; -static char const DEF_BLINK[5] = "\x1b[5m"; -static char const DEF_BRIGHT[5] = "\x1b[1m"; -static char const DEF_RESET[5] = "\x1b[0m"; - -//////////////////////////////////////////////////////////////////////////////// -/// @} -//////////////////////////////////////////////////////////////////////////////// - // ----------------------------------------------------------------------------- // --SECTION-- private variables // ----------------------------------------------------------------------------- @@ -124,22 +76,16 @@ static char const DEF_RESET[5] = "\x1b[0m"; //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// -/// @brief whether or not a password was specified on the command line +/// @brief base class for clients //////////////////////////////////////////////////////////////////////////////// -static bool _hasPassword = false; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief endpoint -//////////////////////////////////////////////////////////////////////////////// - -static Endpoint* _endpoint = 0; +ArangoClient BaseClient; //////////////////////////////////////////////////////////////////////////////// /// @brief the initial default connection //////////////////////////////////////////////////////////////////////////////// -V8ClientConnection* _clientConnection = 0; +V8ClientConnection* ClientConnection = 0; //////////////////////////////////////////////////////////////////////////////// /// @brief object template for the initial connection @@ -147,77 +93,11 @@ V8ClientConnection* _clientConnection = 0; v8::Persistent ConnectionTempl; -//////////////////////////////////////////////////////////////////////////////// -/// @brief connect timeout (in s) -//////////////////////////////////////////////////////////////////////////////// - -static int64_t _connectTimeout = DEFAULT_CONNECTION_TIMEOUT; - //////////////////////////////////////////////////////////////////////////////// /// @brief max size body size (used for imports) //////////////////////////////////////////////////////////////////////////////// -static uint64_t _maxUploadSize = 500000; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief disable auto completion -//////////////////////////////////////////////////////////////////////////////// - -static bool NoAutoComplete = false; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief deactivate colors -//////////////////////////////////////////////////////////////////////////////// - -static bool NoColors = false; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief the output pager -//////////////////////////////////////////////////////////////////////////////// - -static string OutputPager = "less -X -R -F -L"; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief the pager FILE -//////////////////////////////////////////////////////////////////////////////// - -static FILE *PAGER = stdout; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief use pretty print -//////////////////////////////////////////////////////////////////////////////// - -static bool PrettyPrint = false; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief quiet start -//////////////////////////////////////////////////////////////////////////////// - -static bool Quiet = false; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief request timeout (in s) -//////////////////////////////////////////////////////////////////////////////// - -static int64_t _requestTimeout = DEFAULT_REQUEST_TIMEOUT; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief endpoint to connect to -//////////////////////////////////////////////////////////////////////////////// - -static string _endpointString; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief user to send to endpoint -//////////////////////////////////////////////////////////////////////////////// - -static string _username = "root"; - -//////////////////////////////////////////////////////////////////////////////// -/// @brief password to send to endpoint -//////////////////////////////////////////////////////////////////////////////// - -static string _password = ""; +static uint64_t MaxUploadSize = 500000; //////////////////////////////////////////////////////////////////////////////// /// @brief startup JavaScript files @@ -249,12 +129,6 @@ static vector UnitTests; static vector JsLint; -//////////////////////////////////////////////////////////////////////////////// -/// @brief use pager -//////////////////////////////////////////////////////////////////////////////// - -static bool UsePager = false; - //////////////////////////////////////////////////////////////////////////////// /// @} //////////////////////////////////////////////////////////////////////////////// @@ -268,20 +142,6 @@ static bool UsePager = false; /// @{ //////////////////////////////////////////////////////////////////////////////// - -//////////////////////////////////////////////////////////////////////////////// -/// @brief print to pager -//////////////////////////////////////////////////////////////////////////////// - -static void internalPrint (const char *format, const char *str = 0) { - if (str) { - fprintf(PAGER, format, str); - } - else { - fprintf(PAGER, "%s", format); - } -} - //////////////////////////////////////////////////////////////////////////////// /// @brief outputs the arguments /// @@ -301,7 +161,7 @@ static v8::Handle JS_PagerOutput (v8::Arguments const& argv) { string str = TRI_ObjectToString(val); - internalPrint(str.c_str()); + BaseClient.internalPrint(str.c_str()); } return v8::Undefined(); @@ -312,13 +172,14 @@ static v8::Handle JS_PagerOutput (v8::Arguments const& argv) { //////////////////////////////////////////////////////////////////////////////// static v8::Handle JS_StartOutputPager (v8::Arguments const& ) { - if (UsePager) { - internalPrint("Using pager already.\n"); + if (BaseClient.usePager()) { + BaseClient.internalPrint("Using pager already.\n"); } else { - UsePager = true; - internalPrint("Using pager '%s' for output buffering.\n", OutputPager.c_str()); + BaseClient.setUsePager(true); + BaseClient.internalPrint("Using pager '%s' for output buffering.\n", BaseClient.outputPager().c_str()); } + return v8::Undefined(); } @@ -327,13 +188,15 @@ static v8::Handle JS_StartOutputPager (v8::Arguments const& ) { //////////////////////////////////////////////////////////////////////////////// static v8::Handle JS_StopOutputPager (v8::Arguments const& ) { - if (UsePager) { - internalPrint("Stopping pager.\n"); + if (BaseClient.usePager()) { + BaseClient.internalPrint("Stopping pager.\n"); } else { - internalPrint("Pager not running.\n"); + BaseClient.internalPrint("Pager not running.\n"); } - UsePager = false; + + BaseClient.setUsePager(false); + return v8::Undefined(); } @@ -342,7 +205,7 @@ static v8::Handle JS_StopOutputPager (v8::Arguments const& ) { //////////////////////////////////////////////////////////////////////////////// // ----------------------------------------------------------------------------- -// --SECTION-- function for CSV import +// --SECTION-- import function // ----------------------------------------------------------------------------- //////////////////////////////////////////////////////////////////////////////// @@ -414,7 +277,7 @@ static v8::Handle JS_ImportCsvFile (v8::Arguments const& argv) { } } - ImportHelper ih(_clientConnection->getHttpClient(), _maxUploadSize); + ImportHelper ih(ClientConnection->getHttpClient(), MaxUploadSize); ih.setQuote(quote); ih.setSeparator(separator); @@ -433,19 +296,6 @@ static v8::Handle JS_ImportCsvFile (v8::Arguments const& argv) { return scope.Close(v8::ThrowException(v8::String::New(ih.getErrorMessage().c_str()))); } -//////////////////////////////////////////////////////////////////////////////// -/// @} -//////////////////////////////////////////////////////////////////////////////// - -// ----------------------------------------------------------------------------- -// --SECTION-- JSON import function -// ----------------------------------------------------------------------------- - -//////////////////////////////////////////////////////////////////////////////// -/// @addtogroup V8Shell -/// @{ -//////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////// /// @brief imports a JSON file /// @@ -476,7 +326,7 @@ static v8::Handle JS_ImportJsonFile (v8::Arguments const& argv) { } - ImportHelper ih(_clientConnection->getHttpClient(), _maxUploadSize); + ImportHelper ih(ClientConnection->getHttpClient(), MaxUploadSize); string fileName = TRI_ObjectToString(argv[0]); string collectionName = TRI_ObjectToString(argv[1]); @@ -505,45 +355,17 @@ static v8::Handle JS_ImportJsonFile (v8::Arguments const& argv) { /// @{ //////////////////////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////////////////////// -/// @brief starts pager -//////////////////////////////////////////////////////////////////////////////// - -static void StartPager () { - if (!UsePager || OutputPager == "" || OutputPager == "stdout") { - PAGER= stdout; - return; - } - - if (!(PAGER = popen(OutputPager.c_str(), "w"))) { - printf("popen() failed! defaulting PAGER to stdout!\n"); - PAGER= stdout; - UsePager = false; - } -} - -//////////////////////////////////////////////////////////////////////////////// -/// @brief stops pager -//////////////////////////////////////////////////////////////////////////////// - -static void StopPager () -{ - if (PAGER != stdout) { - pclose(PAGER); - } -} - //////////////////////////////////////////////////////////////////////////////// /// @brief return a new client connection instance //////////////////////////////////////////////////////////////////////////////// -static V8ClientConnection* createConnection () { - return new V8ClientConnection(_endpoint, - _username, - _password, - (double) _requestTimeout, - (double) _connectTimeout, - DEFAULT_RETRIES, +static V8ClientConnection* CreateConnection () { + return new V8ClientConnection(BaseClient.endpointServer(), + BaseClient.username(), + BaseClient.password(), + BaseClient.requestTimeout(), + BaseClient.connectTimeout(), + ArangoClient::DEFAULT_RETRIES, false); } @@ -552,96 +374,41 @@ static V8ClientConnection* createConnection () { //////////////////////////////////////////////////////////////////////////////// static void ParseProgramOptions (int argc, char* argv[]) { - string level = "info"; - ProgramOptionsDescription description("STANDARD options"); + ProgramOptionsDescription javascript("JAVASCRIPT options"); - ProgramOptionsDescription hidden("HIDDEN options"); - - hidden - ("colors", "activate color support") - ("no-pretty-print", "disable pretty printting") - ("auto-complete", "enable auto completion, use no-auto-complete to disable") + javascript + ("javascript.modules-path", &StartupModules, "one or more directories separated by cola") + ("javascript.startup-directory", &StartupPath, "startup paths containing the JavaScript files; multiple directories can be separated by cola") + ("javascript.unit-tests", &UnitTests, "do not start as shell, run unit tests instead") + ("jslint", &JsLint, "do not start as shell, run jslint instead") ; description - ("help,h", "help message") - ("javascript.modules-path", &StartupModules, "one or more directories separated by cola") - ("javascript.startup-directory", &StartupPath, "startup paths containing the JavaScript files; multiple directories can be separated by cola") - ("jslint", &JsLint, "do not start as shell, run jslint instead") - ("log.level,l", &level, "log level") - ("max-upload-size", &_maxUploadSize, "maximum size of import chunks (in bytes)") - ("no-auto-complete", "disable auto completion") - ("no-colors", "deactivate color support") - ("pager", &OutputPager, "output pager") - ("pretty-print", "pretty print values") - ("quiet,s", "no banner") - ("javascript.unit-tests", &UnitTests, "do not start as shell, run unit tests instead") - ("server.endpoint", &_endpointString, "endpoint to connect to, use 'none' to start without a server") - ("server.username", &_username, "username to use when connecting") - ("server.password", &_password, "password to use when connecting (leave empty for prompt)") - ("server.connect-timeout", &_connectTimeout, "connect timeout in seconds") - ("server.request-timeout", &_requestTimeout, "request timeout in seconds") - ("use-pager", "use pager") - (hidden, true) + ("max-upload-size", &MaxUploadSize, "maximum size of import chunks (in bytes)") + (javascript, false) ; + // fill in used options + BaseClient.setupGeneral(description); + BaseClient.setupColors(description); + BaseClient.setupAutoComplete(description); + BaseClient.setupPrettyPrint(description); + BaseClient.setupPager(description); + BaseClient.setupServer(description); + + // and parse the command line and config file ProgramOptions options; - - if (! options.parse(description, argc, argv)) { - cerr << options.lastError() << "\n"; - exit(EXIT_FAILURE); - } - - // check for help - set help = options.needHelp("help"); - - if (! help.empty()) { - cout << description.usage(help) << endl; - exit(EXIT_SUCCESS); - } - - // set the logging - TRI_SetLogLevelLogging(level.c_str()); - TRI_CreateLogAppenderFile("-"); - - _hasPassword = options.has("server.password"); - - // set colors - if (options.has("colors")) { - NoColors = false; - } - - if (options.has("no-colors")) { - NoColors = true; - } - - if (options.has("auto-complete")) { - NoAutoComplete = false; - } - - if (options.has("no-auto-complete")) { - NoAutoComplete = true; - } - - if (options.has("pretty-print")) { - PrettyPrint = true; - } - - if (options.has("no-pretty-print")) { - PrettyPrint = false; - } - - if (options.has("use-pager")) { - UsePager = true; - } - - if (options.has("quiet")) { - Quiet = true; - } + BaseClient.parse(options, description, argc, argv); // set V8 options v8::V8::SetFlagsFromCommandLine(&argc, argv, true); + + // check module path + if (StartupModules.empty()) { + LOGGER_FATAL << "module path not known, please use '--javascript.modules-path'"; + exit(EXIT_FAILURE); + } } //////////////////////////////////////////////////////////////////////////////// @@ -698,28 +465,23 @@ static v8::Handle ClientConnection_ConstructorCallback (v8::Arguments if (argv.Length() > 0 && argv[0]->IsString()) { string definition = TRI_ObjectToString(argv[0]); - if (_endpoint != 0) { - // close previous endpoint - delete _endpoint; - } + BaseClient.createEndpoint(definition); - _endpoint = Endpoint::clientFactory(definition); - if (_endpoint == 0) { + if (BaseClient.endpointServer() == 0) { string errorMessage = "error in '" + definition + "'"; return scope.Close(v8::ThrowException(v8::String::New(errorMessage.c_str()))); } } - if (_endpoint == 0) { + if (BaseClient.endpointServer() == 0) { return v8::Undefined(); } - assert(_endpoint); - - V8ClientConnection* connection = createConnection(); + V8ClientConnection* connection = CreateConnection(); if (connection->isConnected()) { - cout << "Connected to ArangoDB '" << _endpoint->getSpecification() << "' Version " << connection->getVersion() << endl; + cout << "Connected to ArangoDB '" << BaseClient.endpointServer()->getSpecification() + << "' Version " << connection->getVersion() << endl; } else { string errorMessage = "Could not connect. Error message: " + connection->getErrorMessage(); @@ -967,7 +729,7 @@ static v8::Handle ClientConnection_toString (v8::Arguments const& arg return scope.Close(v8::ThrowException(v8::String::New("usage: toString()"))); } - string result = "[object ArangoConnection:" + _endpoint->getSpecification(); + string result = "[object ArangoConnection:" + BaseClient.endpointServer()->getSpecification(); if (connection->isConnected()) { result += "," @@ -982,7 +744,7 @@ static v8::Handle ClientConnection_toString (v8::Arguments const& arg } //////////////////////////////////////////////////////////////////////////////// -/// @brief ClientConnection method "isConnected" +/// @brief ClientConnection method "getVersion" //////////////////////////////////////////////////////////////////////////////// static v8::Handle ClientConnection_getVersion (v8::Arguments const& argv) { @@ -1002,11 +764,6 @@ static v8::Handle ClientConnection_getVersion (v8::Arguments const& a return scope.Close(v8::String::New(connection->getVersion().c_str())); } -//////////////////////////////////////////////////////////////////////////////// -/// @addtogroup V8Shell -/// @{ -//////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////// /// @brief executes the shell //////////////////////////////////////////////////////////////////////////////// @@ -1017,7 +774,7 @@ static void RunShell (v8::Handle context) { V8LineEditor* console = new V8LineEditor(context, ".arangosh"); - console->open(!NoAutoComplete); + console->open(BaseClient.autoComplete()); while (true) { while (! v8::V8::IdleNotification()) { @@ -1050,7 +807,7 @@ static void RunShell (v8::Handle context) { v8::HandleScope scope; v8::TryCatch tryCatch; - StartPager(); + BaseClient.startPager(); TRI_ExecuteJavaScriptString(context, v8::String::New(input), name, true); TRI_FreeString(TRI_CORE_MEM_ZONE, input); @@ -1059,7 +816,7 @@ static void RunShell (v8::Handle context) { cout << TRI_StringifyV8Exception(&tryCatch); } - StopPager(); + BaseClient.stopPager(); } console->close(); @@ -1067,9 +824,8 @@ static void RunShell (v8::Handle context) { delete console; cout << endl; - if (! Quiet) { - cout << endl << "Bye Bye! Auf Wiedersehen! さようなら" << endl; - } + + BaseClient.printByeBye(); } //////////////////////////////////////////////////////////////////////////////// @@ -1146,38 +902,68 @@ static bool RunJsLint (v8::Handle context) { /// @brief adding colors for output //////////////////////////////////////////////////////////////////////////////// -static void addColors (v8::Handle context) { - context->Global()->Set(v8::String::New("COLOR_RED"), v8::String::New(DEF_RED, 5), +static void AddColors (v8::Handle context) { + context->Global()->Set(v8::String::New("COLOR_RED"), + v8::String::New(ArangoClient::COLOR_RED), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BOLD_RED"), v8::String::New(DEF_BOLD_RED, 8), + + context->Global()->Set(v8::String::New("COLOR_BOLD_RED"), + v8::String::New(ArangoClient::COLOR_BOLD_RED), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_GREEN"), v8::String::New(DEF_GREEN, 5), + + context->Global()->Set(v8::String::New("COLOR_GREEN"), + v8::String::New(ArangoClient::COLOR_GREEN), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BOLD_GREEN"), v8::String::New(DEF_BOLD_GREEN, 8), + + context->Global()->Set(v8::String::New("COLOR_BOLD_GREEN"), + v8::String::New(ArangoClient::COLOR_BOLD_GREEN), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BLUE"), v8::String::New(DEF_BLUE, 5), + + context->Global()->Set(v8::String::New("COLOR_BLUE"), + v8::String::New(ArangoClient::COLOR_BLUE), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BOLD_BLUE"), v8::String::New(DEF_BOLD_BLUE, 8), + + context->Global()->Set(v8::String::New("COLOR_BOLD_BLUE"), + v8::String::New(ArangoClient::COLOR_BOLD_BLUE), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_WHITE"), v8::String::New(DEF_WHITE, 5), + + context->Global()->Set(v8::String::New("COLOR_YELLOW"), + v8::String::New(ArangoClient::COLOR_YELLOW), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_YELLOW"), v8::String::New(DEF_YELLOW, 5), + + context->Global()->Set(v8::String::New("COLOR_BOLD_YELLOW"), + v8::String::New(ArangoClient::COLOR_BOLD_YELLOW), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BOLD_WHITE"), v8::String::New(DEF_BOLD_WHITE, 7), + + context->Global()->Set(v8::String::New("COLOR_WHITE"), + v8::String::New(ArangoClient::COLOR_WHITE), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BLACK"), v8::String::New(DEF_BLACK, 5), + + context->Global()->Set(v8::String::New("COLOR_BOLD_WHITE"), + v8::String::New(ArangoClient::COLOR_BOLD_WHITE), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BOLD_BLACK"), v8::String::New(DEF_BOLD_BLACK, 8), + + context->Global()->Set(v8::String::New("COLOR_BLACK"), + v8::String::New(ArangoClient::COLOR_BLACK), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BLINK"), v8::String::New(DEF_BLINK, 4), + + context->Global()->Set(v8::String::New("COLOR_BOLD_BLACK"), + v8::String::New(ArangoClient::COLOR_BOLD_BLACK), v8::ReadOnly); - context->Global()->Set(v8::String::New("COLOR_BRIGHT"), v8::String::New(DEF_BRIGHT, 4), + + context->Global()->Set(v8::String::New("COLOR_BLINK"), + v8::String::New(ArangoClient::COLOR_BLINK), v8::ReadOnly); - if (!NoColors) { - context->Global()->Set(v8::String::New("COLOR_OUTPUT"), v8::String::New(DEF_BRIGHT, 4)); - } - context->Global()->Set(v8::String::New("COLOR_OUTPUT_RESET"), v8::String::New(DEF_RESET, 4), + + context->Global()->Set(v8::String::New("COLOR_BRIGHT"), + v8::String::New(ArangoClient::COLOR_BRIGHT), + v8::ReadOnly); + + context->Global()->Set(v8::String::New("COLOR_OUTPUT_RESET"), + v8::String::New(ArangoClient::COLOR_RESET), v8::ReadOnly); + + context->Global()->Set(v8::String::New("COLOR_OUTPUT"), v8::Boolean::New(BaseClient.colors())); } //////////////////////////////////////////////////////////////////////////////// @@ -1204,53 +990,7 @@ int main (int argc, char* argv[]) { TRI_InitialiseLogging(false); int ret = EXIT_SUCCESS; - // ............................................................................. - // use relative system paths - // ............................................................................. - - { - char* binaryPath = TRI_LocateBinaryPath(argv[0]); - -#ifdef TRI_ENABLE_RELATIVE_SYSTEM - - StartupModules = string(binaryPath) + "/../share/arango/js/client/modules" - + ";" + string(binaryPath) + "/../share/arango/js/common/modules"; - -#else - - // ............................................................................. - // use relative development paths - // ............................................................................. - -#ifdef TRI_ENABLE_RELATIVE_DEVEL - -#ifdef TRI_STARTUP_MODULES_PATH - StartupModules = TRI_STARTUP_MODULES_PATH; -#else - StartupModules = string(binaryPath) + "/../js/client/modules" - + ";" + string(binaryPath) + "/../js/common/modules"; -#endif - -#else - - // ............................................................................. - // use absolute paths - // ............................................................................. - -#ifdef _PKGDATADIR_ - - StartupModules = string(_PKGDATADIR_) + "/js/client/modules" - + ";" + string(_PKGDATADIR_) + "/js/common/modules"; - -#endif - -#endif -#endif - - TRI_FreeString(TRI_CORE_MEM_ZONE, binaryPath); - } - - _endpointString = Endpoint::getDefaultEndpoint(); + BaseClient.setEndpointString(Endpoint::getDefaultEndpoint()); // ............................................................................. // parse the program options @@ -1258,60 +998,27 @@ int main (int argc, char* argv[]) { ParseProgramOptions(argc, argv); - // check connection args - if (_connectTimeout <= 0) { - cerr << "invalid value for --server.connect-timeout" << endl; - exit(EXIT_FAILURE); - } - - if (_requestTimeout <= 0) { - cerr << "invalid value for --server.request-timeout" << endl; - exit(EXIT_FAILURE); - } - - if (_username.size() == 0) { - // must specify a user name - cerr << "no value specified for --server.username" << endl; - exit(EXIT_FAILURE); - } - - if (! _hasPassword) { - // no password given on command-line - cout << "Please specify a password:" << endl; - // now prompt for it -#ifdef TRI_HAVE_TERMIOS_H - TRI_SetStdinVisibility(false); - getline(cin, _password); - - TRI_SetStdinVisibility(true); -#else - getline(cin, _password); -#endif - } - // ............................................................................. // set-up client connection // ............................................................................. // check if we want to connect to a server - bool useServer = (_endpointString != "none"); + bool useServer = (BaseClient.endpointString() != "none"); + // if we are in jslint mode, we will not need the server at all if (!JsLint.empty()) { - // if we are in jslint mode, we will not need the server at all useServer = false; } if (useServer) { - _endpoint = Endpoint::clientFactory(_endpointString); + BaseClient.createEndpoint(); - if (_endpoint == 0) { - cerr << "invalid value for --server.endpoint ('" << _endpointString.c_str() << "')" << endl; + if (BaseClient.endpointServer() == 0) { + cerr << "invalid value for --server.endpoint ('" << BaseClient.endpointString() << "')" << endl; exit(EXIT_FAILURE); } - assert(_endpoint); - - _clientConnection = createConnection(); + ClientConnection = CreateConnection(); } // ............................................................................. @@ -1338,17 +1045,15 @@ int main (int argc, char* argv[]) { v8::FunctionTemplate::New(JS_PagerOutput)->GetFunction(), v8::ReadOnly); - TRI_InitV8Utils(context, StartupModules); TRI_InitV8Shell(context); // set pretty print default: (used in print.js) - context->Global()->Set(v8::String::New("PRETTY_PRINT"), v8::Boolean::New(PrettyPrint)); + context->Global()->Set(v8::String::New("PRETTY_PRINT"), v8::Boolean::New(BaseClient.prettyPrint())); - // add colors for print.js - addColors(context); + AddColors(context); // ............................................................................. // define ArangoConnection class @@ -1380,7 +1085,7 @@ int main (int argc, char* argv[]) { // add the client connection to the context: context->Global()->Set(v8::String::New("arango"), - wrapV8ClientConnection(_clientConnection), + wrapV8ClientConnection(ClientConnection), v8::ReadOnly); } @@ -1397,19 +1102,18 @@ int main (int argc, char* argv[]) { context->Global()->Set(v8::String::New("importJsonFile"), v8::FunctionTemplate::New(JS_ImportJsonFile)->GetFunction(), v8::ReadOnly); - - + // ............................................................................. // banner // ............................................................................. // http://www.network-science.de/ascii/ Font: ogre - if (! Quiet) { - char const* g = DEF_GREEN; - char const* r = DEF_RED; - char const* z = DEF_RESET; + if (! BaseClient.quiet()) { + char const* g = ArangoClient::COLOR_GREEN; + char const* r = ArangoClient::COLOR_RED; + char const* z = ArangoClient::COLOR_RESET; - if (NoColors) { + if (! BaseClient.colors()) { g = ""; r = ""; z = ""; @@ -1436,24 +1140,18 @@ int main (int argc, char* argv[]) { cout << endl; - // set up output - if (UsePager) { - cout << "Using pager '" << OutputPager << "' for output buffering." << endl; - } - - if (PrettyPrint) { - cout << "Pretty print values." << endl; - } + BaseClient.printWelcomeInfo(); if (useServer) { - if (_clientConnection->isConnected()) { - if (! Quiet) { - cout << "Connected to ArangoDB '" << _endpoint->getSpecification() << "' Version " << _clientConnection->getVersion() << endl; + if (ClientConnection->isConnected()) { + if (! BaseClient.quiet()) { + cout << "Connected to ArangoDB '" << BaseClient.endpointServer()->getSpecification() + << "' Version " << ClientConnection->getVersion() << endl; } } else { - cerr << "Could not connect to endpoint '" << _endpointString << "'" << endl; - cerr << "Error message '" << _clientConnection->getErrorMessage() << "'" << endl; + cerr << "Could not connect to endpoint '" << BaseClient.endpointString() << "'" << endl; + cerr << "Error message '" << ClientConnection->getErrorMessage() << "'" << endl; } } } @@ -1474,8 +1172,8 @@ int main (int argc, char* argv[]) { StartupLoader.setDirectory(StartupPath); } - context->Global()->Set(v8::String::New("ARANGO_QUIET"), Quiet ? v8::True() : v8::False(), v8::ReadOnly); - context->Global()->Set(v8::String::New("VALGRIND"), ((RUNNING_ON_VALGRIND) > 0) ? v8::True() : v8::False()); + context->Global()->Set(v8::String::New("ARANGO_QUIET"), v8::Boolean::New(BaseClient.quiet()), v8::ReadOnly); + context->Global()->Set(v8::String::New("VALGRIND"), v8::Boolean::New((RUNNING_ON_VALGRIND) > 0)); // load all init files char const* files[] = { @@ -1547,6 +1245,10 @@ int main (int argc, char* argv[]) { /// @} //////////////////////////////////////////////////////////////////////////////// +// ----------------------------------------------------------------------------- +// --SECTION-- END-OF-FILE +// ----------------------------------------------------------------------------- + // Local Variables: // mode: outline-minor // outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @\\}\\)" diff --git a/build.c b/build.c deleted file mode 100644 index 044a1a51aa..0000000000 --- a/build.c +++ /dev/null @@ -1,5 +0,0 @@ -volatile char * BUILD_INFO = - "$Revision$" - "$Source$" - "$Date$" -; diff --git a/config/compile b/config/compile index 7b4a9a7e1e..c0096a7b56 100755 --- a/config/compile +++ b/config/compile @@ -1,9 +1,10 @@ #! /bin/sh -# Wrapper for compilers which do not understand '-c -o'. +# Wrapper for compilers which do not understand `-c -o'. -scriptversion=2012-03-05.13; # UTC +scriptversion=2009-10-06.20; # UTC -# Copyright (C) 1999-2012 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software +# Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify @@ -28,219 +29,21 @@ scriptversion=2012-03-05.13; # UTC # bugs to or send patches to # . -nl=' -' - -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent tools from complaining about whitespace usage. -IFS=" "" $nl" - -file_conv= - -# func_file_conv build_file lazy -# Convert a $build file to $host form and store it in $file -# Currently only supports Windows hosts. If the determined conversion -# type is listed in (the comma separated) LAZY, no conversion will -# take place. -func_file_conv () -{ - file=$1 - case $file in - / | /[!/]*) # absolute file, and not a UNC file - if test -z "$file_conv"; then - # lazily determine how to convert abs files - case `uname -s` in - MINGW*) - file_conv=mingw - ;; - CYGWIN*) - file_conv=cygwin - ;; - *) - file_conv=wine - ;; - esac - fi - case $file_conv/,$2, in - *,$file_conv,*) - ;; - mingw/*) - file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` - ;; - cygwin/*) - file=`cygpath -m "$file" || echo "$file"` - ;; - wine/*) - file=`winepath -w "$file" || echo "$file"` - ;; - esac - ;; - esac -} - -# func_cl_dashL linkdir -# Make cl look for libraries in LINKDIR -func_cl_dashL () -{ - func_file_conv "$1" - if test -z "$lib_path"; then - lib_path=$file - else - lib_path="$lib_path;$file" - fi - linker_opts="$linker_opts -LIBPATH:$file" -} - -# func_cl_dashl library -# Do a library search-path lookup for cl -func_cl_dashl () -{ - lib=$1 - found=no - save_IFS=$IFS - IFS=';' - for dir in $lib_path $LIB - do - IFS=$save_IFS - if $shared && test -f "$dir/$lib.dll.lib"; then - found=yes - lib=$dir/$lib.dll.lib - break - fi - if test -f "$dir/$lib.lib"; then - found=yes - lib=$dir/$lib.lib - break - fi - done - IFS=$save_IFS - - if test "$found" != yes; then - lib=$lib.lib - fi -} - -# func_cl_wrapper cl arg... -# Adjust compile command to suit cl -func_cl_wrapper () -{ - # Assume a capable shell - lib_path= - shared=: - linker_opts= - for arg - do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - eat=1 - case $2 in - *.o | *.[oO][bB][jJ]) - func_file_conv "$2" - set x "$@" -Fo"$file" - shift - ;; - *) - func_file_conv "$2" - set x "$@" -Fe"$file" - shift - ;; - esac - ;; - -I) - eat=1 - func_file_conv "$2" mingw - set x "$@" -I"$file" - shift - ;; - -I*) - func_file_conv "${1#-I}" mingw - set x "$@" -I"$file" - shift - ;; - -l) - eat=1 - func_cl_dashl "$2" - set x "$@" "$lib" - shift - ;; - -l*) - func_cl_dashl "${1#-l}" - set x "$@" "$lib" - shift - ;; - -L) - eat=1 - func_cl_dashL "$2" - ;; - -L*) - func_cl_dashL "${1#-L}" - ;; - -static) - shared=false - ;; - -Wl,*) - arg=${1#-Wl,} - save_ifs="$IFS"; IFS=',' - for flag in $arg; do - IFS="$save_ifs" - linker_opts="$linker_opts $flag" - done - IFS="$save_ifs" - ;; - -Xlinker) - eat=1 - linker_opts="$linker_opts $2" - ;; - -*) - set x "$@" "$1" - shift - ;; - *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) - func_file_conv "$1" - set x "$@" -Tp"$file" - shift - ;; - *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) - func_file_conv "$1" mingw - set x "$@" "$file" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift - done - if test -n "$linker_opts"; then - linker_opts="-link$linker_opts" - fi - exec "$@" $linker_opts - exit 1 -} - -eat= - case $1 in '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 + echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] -Wrapper for compilers which do not understand '-c -o'. -Remove '-o dest.o' from ARGS, run PROGRAM with the remaining +Wrapper for compilers which do not understand `-c -o'. +Remove `-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the -right script to run: please start by reading the file 'INSTALL'. +right script to run: please start by reading the file `INSTALL'. Report bugs to . EOF @@ -250,13 +53,11 @@ EOF echo "compile $scriptversion" exit $? ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) - func_cl_wrapper "$@" # Doesn't return... - ;; esac ofile= cfile= +eat= for arg do @@ -265,8 +66,8 @@ do else case $1 in -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - # So we strip '-o arg' only if arg is an object. + # configure might choose to run compile as `compile cc -o foo foo.c'. + # So we strip `-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) @@ -293,10 +94,10 @@ do done if test -z "$ofile" || test -z "$cfile"; then - # If no '-o' option was seen then we might have been invoked from a + # If no `-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no - # '.c' file was seen then we are probably linking. That is also + # `.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi @@ -305,7 +106,7 @@ fi cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. -# Note: use '[/\\:.-]' here to ensure that we don't use the same name +# Note: use `[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d diff --git a/config/config.guess b/config/config.guess index d622a44e55..666c5ad925 100755 --- a/config/config.guess +++ b/config/config.guess @@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -# 2011, 2012 Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# Free Software Foundation, Inc. -timestamp='2012-02-10' +timestamp='2009-11-20' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -17,7 +17,9 @@ timestamp='2012-02-10' # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, see . +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -54,9 +56,8 @@ version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -138,12 +139,22 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown +case "${UNAME_MACHINE}" in + i?86) + test -z "$VENDOR" && VENDOR=pc + ;; + *) + test -z "$VENDOR" && VENDOR=unknown + ;; +esac +test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse + # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward @@ -179,7 +190,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in fi ;; *) - os=netbsd + os=netbsd ;; esac # The OS release @@ -202,19 +213,19 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + echo ${UNAME_MACHINE_ARCH}-${VENDOR}-openbsd${UNAME_RELEASE} exit ;; *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + echo ${UNAME_MACHINE}-${VENDOR}-ekkobsd${UNAME_RELEASE} exit ;; *:SolidBSD:*:*) - echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + echo ${UNAME_MACHINE}-${VENDOR}-solidbsd${UNAME_RELEASE} exit ;; macppc:MirBSD:*:*) - echo powerpc-unknown-mirbsd${UNAME_RELEASE} + echo powerpc-${VENDOR}-mirbsd${UNAME_RELEASE} exit ;; *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + echo ${UNAME_MACHINE}-${VENDOR}-mirbsd${UNAME_RELEASE} exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in @@ -222,7 +233,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on @@ -268,10 +279,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - # Reset EXIT trap before exiting to avoid spurious non-zero exit code. - exitcode=$? - trap '' 0 - exit $exitcode ;; + exit ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead @@ -282,13 +290,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in echo alpha-dec-winnt3.5 exit ;; Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 + echo m68k-${VENDOR}-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos + echo ${UNAME_MACHINE}-${VENDOR}-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos + echo ${UNAME_MACHINE}-${VENDOR}-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition @@ -297,13 +305,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in echo s390-ibm-zvmoe exit ;; *:OS400:*:*) - echo powerpc-ibm-os400 + echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; arm:riscos:*:*|arm:RISCOS:*:*) - echo arm-unknown-riscos + echo arm-${VENDOR}-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp @@ -396,23 +404,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint${UNAME_RELEASE} exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} - exit ;; + exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint${UNAME_RELEASE} exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; + echo m68k-milan-mint${UNAME_RELEASE} + exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; + echo m68k-hades-mint${UNAME_RELEASE} + exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; + echo m68k-${VENDOR}-mint${UNAME_RELEASE} + exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit ;; @@ -482,8 +490,8 @@ EOF echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ @@ -496,7 +504,7 @@ EOF else echo i586-dg-dgux${UNAME_RELEASE} fi - exit ;; + exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; @@ -553,7 +561,7 @@ EOF echo rs6000-ibm-aix3.2 fi exit ;; - *:AIX:*:[4567]) + *:AIX:*:[456]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 @@ -596,52 +604,52 @@ EOF 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac + esac ;; + esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + sed 's/^ //' << EOF >$dummy.c - #define _HPUX_SOURCE - #include - #include + #define _HPUX_SOURCE + #include + #include - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa @@ -722,9 +730,9 @@ EOF exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk + echo ${UNAME_MACHINE}-${VENDOR}-osf1mk else - echo ${UNAME_MACHINE}-unknown-osf1 + echo ${UNAME_MACHINE}-${VENDOR}-osf1 fi exit ;; parisc*:Lites*:*:*) @@ -732,22 +740,22 @@ EOF exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd - exit ;; + exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi - exit ;; + exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd - exit ;; + exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd - exit ;; + exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd - exit ;; + exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; @@ -771,31 +779,32 @@ EOF exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit ;; sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} + echo sparc-${VENDOR}-bsdi${UNAME_RELEASE} exit ;; *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + echo ${UNAME_MACHINE}-${VENDOR}-bsdi${UNAME_RELEASE} exit ;; *:FreeBSD:*:*) - UNAME_PROCESSOR=`/usr/bin/uname -p` - case ${UNAME_PROCESSOR} in + case ${UNAME_MACHINE} in + pc98) + echo i386-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; amd64) - echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + echo x86_64-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) - echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + echo ${UNAME_MACHINE}-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; esac exit ;; i*:CYGWIN*:*) @@ -804,26 +813,23 @@ EOF *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; - i*:MSYS*:*) - echo ${UNAME_MACHINE}-pc-msys - exit ;; i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; *:Interix*:*) - case ${UNAME_MACHINE} in + case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; authenticamd | genuineintel | EM64T) - echo x86_64-unknown-interix${UNAME_RELEASE} + echo x86_64-${VENDOR}-interix${UNAME_RELEASE} exit ;; IA64) - echo ia64-unknown-interix${UNAME_RELEASE} + echo ia64-${VENDOR}-interix${UNAME_RELEASE} exit ;; esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) @@ -842,32 +848,25 @@ EOF echo ${UNAME_MACHINE}-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin + echo x86_64-${VENDOR}-cygwin exit ;; p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin + echo powerpcle-${VENDOR}-cygwin exit ;; prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + echo powerpcle-${VENDOR}-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; *:GNU:*:*) # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-${VENDOR}-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu + echo ${UNAME_MACHINE}-${VENDOR}-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; - aarch64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - aarch64_be:Linux:*:*) - UNAME_MACHINE=aarch64_be - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; @@ -877,41 +876,32 @@ EOF EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; - esac + esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu${LIBC} exit ;; arm*:Linux:*:*) eval $set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu else - if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_PCS_VFP - then - echo ${UNAME_MACHINE}-unknown-linux-gnueabi - else - echo ${UNAME_MACHINE}-unknown-linux-gnueabihf - fi + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabi fi exit ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; cris:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-gnu + echo cris-axis-linux-gnu exit ;; crisv32:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-gnu + echo crisv32-axis-linux-gnu exit ;; frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo frv-${VENDOR}-linux-gnu exit ;; i*86:Linux:*:*) LIBC=gnu @@ -922,16 +912,16 @@ EOF #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` - echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}" exit ;; ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build @@ -950,54 +940,51 @@ EOF #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; } ;; or32:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo or32-${VENDOR}-linux-gnu exit ;; padre:Linux:*:*) - echo sparc-unknown-linux-gnu + echo sparc-${VENDOR}-linux-gnu exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu + echo hppa64-${VENDOR}-linux-gnu exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; + PA7*) echo hppa1.1-${VENDOR}-linux-gnu ;; + PA8*) echo hppa2.0-${VENDOR}-linux-gnu ;; + *) echo hppa-${VENDOR}-linux-gnu ;; esac exit ;; ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu + echo powerpc64-${VENDOR}-linux-gnu exit ;; ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu + echo powerpc-${VENDOR}-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - tile*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo x86_64-${VENDOR}-linux-gnu exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. @@ -1006,11 +993,11 @@ EOF echo i386-sequent-sysv4 exit ;; i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. + # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit ;; i*86:OS/2:*:*) @@ -1019,16 +1006,16 @@ EOF echo ${UNAME_MACHINE}-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop + echo ${UNAME_MACHINE}-${VENDOR}-stop exit ;; i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos + echo ${UNAME_MACHINE}-${VENDOR}-atheos exit ;; i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} + echo i386-${VENDOR}-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp @@ -1042,13 +1029,13 @@ EOF fi exit ;; i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. + # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + echo ${UNAME_MACHINE}-${VENDOR}-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then @@ -1070,13 +1057,13 @@ EOF exit ;; pc:*:*:*) # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i586. + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configury will decide that # this is a cross-build. echo i586-pc-msdosdjgpp - exit ;; + exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; @@ -1087,7 +1074,7 @@ EOF if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + echo i860-${VENDOR}-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) @@ -1111,8 +1098,8 @@ EOF /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ @@ -1124,19 +1111,19 @@ EOF /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} + echo m68k-${VENDOR}-lynxos${UNAME_RELEASE} exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} + echo sparc-${VENDOR}-lynxos${UNAME_RELEASE} exit ;; rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} + echo rs6000-${VENDOR}-lynxos${UNAME_RELEASE} exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} + echo powerpc-${VENDOR}-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} @@ -1155,10 +1142,10 @@ EOF echo ns32k-sni-sysv fi exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm @@ -1184,11 +1171,11 @@ EOF exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} + echo mips-nec-sysv${UNAME_RELEASE} else - echo mips-unknown-sysv${UNAME_RELEASE} + echo mips-${VENDOR}-sysv${UNAME_RELEASE} fi - exit ;; + exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; @@ -1253,9 +1240,6 @@ EOF *:QNX:*:4*) echo i386-pc-qnx exit ;; - NEO-?:NONSTOP_KERNEL:*:*) - echo neo-tandem-nsk${UNAME_RELEASE} - exit ;; NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; @@ -1280,13 +1264,13 @@ EOF else UNAME_MACHINE="$cputype" fi - echo ${UNAME_MACHINE}-unknown-plan9 + echo ${UNAME_MACHINE}-${VENDOR}-plan9 exit ;; *:TOPS-10:*:*) - echo pdp10-unknown-tops10 + echo pdp10-${VENDOR}-tops10 exit ;; *:TENEX:*:*) - echo pdp10-unknown-tenex + echo pdp10-${VENDOR}-tenex exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 @@ -1295,19 +1279,19 @@ EOF echo pdp10-xkl-tops20 exit ;; *:TOPS-20:*:*) - echo pdp10-unknown-tops20 + echo pdp10-${VENDOR}-tops20 exit ;; *:ITS:*:*) - echo pdp10-unknown-its + echo pdp10-${VENDOR}-its exit ;; SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} + echo mips-sei-seiux${UNAME_RELEASE} exit ;; *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + echo ${UNAME_MACHINE}-${VENDOR}-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit ;; *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` + UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; @@ -1325,9 +1309,6 @@ EOF i*86:AROS:*:*) echo ${UNAME_MACHINE}-pc-aros exit ;; - x86_64:VMkernel:*:*) - echo ${UNAME_MACHINE}-unknown-esx - exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 @@ -1350,11 +1331,11 @@ main () #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 - "4" + "4" #else - "" + "" #endif - ); exit (0); + ); exit (0); #endif #endif diff --git a/config/config.sub b/config/config.sub index c894da4550..2a55a50751 100755 --- a/config/config.sub +++ b/config/config.sub @@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -# 2011, 2012 Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# Free Software Foundation, Inc. -timestamp='2012-02-10' +timestamp='2009-11-20' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -21,7 +21,9 @@ timestamp='2012-02-10' # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, see . +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -73,9 +75,8 @@ Report bugs and patches to ." version="\ GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -122,18 +123,13 @@ esac # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | \ + nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ + uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; - android-linux) - os=-linux-android - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown - ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] @@ -160,8 +156,8 @@ case $os in os= basic_machine=$1 ;; - -bluegene*) - os=-cnk + -bluegene*) + os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= @@ -177,10 +173,10 @@ case $os in os=-chorusos basic_machine=$1 ;; - -chorusrdb) - os=-chorusrdb + -chorusrdb) + os=-chorusrdb basic_machine=$1 - ;; + ;; -hiux*) os=-hiuxwe2 ;; @@ -249,22 +245,17 @@ case $basic_machine in # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ - | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ - | be32 | be64 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ - | epiphany \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ - | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | mcore | mep | metag \ @@ -290,39 +281,29 @@ case $basic_machine in | moxie \ | mt \ | msp430 \ - | nds32 | nds32le | nds32be \ | nios | nios2 \ | ns16k | ns32k \ - | open8 \ | or32 \ | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle \ + | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ - | rl78 | rx \ + | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu \ - | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ + | spu | strongarm \ + | tahoe | thumb | tic4x | tic80 | tron \ | ubicom32 \ - | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | v850 | v850e \ | we32k \ - | x86 | xc16x | xstormy16 | xtensa \ + | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; - c54x) - basic_machine=tic54x-unknown - ;; - c55x) - basic_machine=tic55x-unknown - ;; - c6x) - basic_machine=tic6x-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) + m6811 | m68hc11 | m6812 | m68hc12 | picochip) + # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none ;; @@ -332,21 +313,6 @@ case $basic_machine in basic_machine=mt-unknown ;; - strongarm | thumb | xscale) - basic_machine=arm-unknown - ;; - xgate) - basic_machine=$basic_machine-unknown - os=-none - ;; - xscaleeb) - basic_machine=armeb-unknown - ;; - - xscaleel) - basic_machine=armel-unknown - ;; - # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. @@ -361,25 +327,21 @@ case $basic_machine in # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ - | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ - | be32-* | be64-* \ | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ - | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ @@ -405,29 +367,25 @@ case $basic_machine in | mmix-* \ | mt-* \ | msp430-* \ - | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ - | open8-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ - | rl78-* | romp-* | rs6000-* | rx-* \ + | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ - | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile*-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ + | tahoe-* | thumb-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tron-* \ | ubicom32-* \ - | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ - | vax-* \ + | v850-* | v850e-* | vax-* \ | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) @@ -452,7 +410,7 @@ case $basic_machine in basic_machine=a29k-amd os=-udi ;; - abacus) + abacus) basic_machine=abacus-unknown ;; adobe68k) @@ -522,20 +480,11 @@ case $basic_machine in basic_machine=powerpc-ibm os=-cnk ;; - c54x-*) - basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c55x-*) - basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c6x-*) - basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; c90) basic_machine=c90-cray os=-unicos ;; - cegcc) + cegcc) basic_machine=arm-unknown os=-cegcc ;; @@ -567,7 +516,7 @@ case $basic_machine in basic_machine=craynv-cray os=-unicosmp ;; - cr16 | cr16-*) + cr16) basic_machine=cr16-unknown os=-elf ;; @@ -725,6 +674,7 @@ case $basic_machine in i370-ibm* | ibm*) basic_machine=i370-ibm ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 @@ -782,7 +732,7 @@ case $basic_machine in basic_machine=ns32k-utek os=-sysv ;; - microblaze) + microblaze) basic_machine=microblaze-xilinx ;; mingw32) @@ -821,18 +771,10 @@ case $basic_machine in ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; - msys) - basic_machine=i386-pc - os=-msys - ;; mvs) basic_machine=i370-ibm os=-mvs ;; - nacl) - basic_machine=le32-unknown - os=-nacl - ;; ncr3000) basic_machine=i486-ncr os=-sysv4 @@ -897,12 +839,6 @@ case $basic_machine in np1) basic_machine=np1-gould ;; - neo-tandem) - basic_machine=neo-tandem - ;; - nse-tandem) - basic_machine=nse-tandem - ;; nsr-tandem) basic_machine=nsr-tandem ;; @@ -985,10 +921,9 @@ case $basic_machine in ;; power) basic_machine=power-ibm ;; - ppc | ppcbe) basic_machine=powerpc-unknown + ppc) basic_machine=powerpc-unknown ;; - ppc-* | ppcbe-*) - basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown @@ -1082,9 +1017,6 @@ case $basic_machine in basic_machine=i860-stratus os=-sysv4 ;; - strongarm-* | thumb-*) - basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; sun2) basic_machine=m68000-sun ;; @@ -1141,8 +1073,20 @@ case $basic_machine in basic_machine=t90-cray os=-unicos ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tic55x | c55x*) + basic_machine=tic55x-unknown + os=-coff + ;; + tic6x | c6x*) + basic_machine=tic6x-unknown + os=-coff + ;; tile*) - basic_machine=$basic_machine-unknown + basic_machine=tile-unknown os=-linux-gnu ;; tx39) @@ -1212,9 +1156,6 @@ case $basic_machine in xps | xps100) basic_machine=xps100-honeywell ;; - xscale-* | xscalee[bl]-*) - basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` - ;; ymp) basic_machine=ymp-cray os=-unicos @@ -1312,11 +1253,11 @@ esac if [ x"$os" != x"" ] then case $os in - # First match some system type aliases - # that might get confused with valid system types. + # First match some system type aliases + # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. - -auroraux) - os=-auroraux + -auroraux) + os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` @@ -1352,9 +1293,8 @@ case $os in | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ - | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-uclibc* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ @@ -1401,7 +1341,7 @@ case $os in -opened*) os=-openedition ;; - -os400*) + -os400*) os=-os400 ;; -wince*) @@ -1450,7 +1390,7 @@ case $os in -sinix*) os=-sysv4 ;; - -tpf*) + -tpf*) os=-tpf ;; -triton*) @@ -1495,8 +1435,6 @@ case $os in -dicos*) os=-dicos ;; - -nacl*) - ;; -none) ;; *) @@ -1519,10 +1457,10 @@ else # system, and we'll never get to this point. case $basic_machine in - score-*) + score-*) os=-elf ;; - spu-*) + spu-*) os=-elf ;; *-acorn) @@ -1534,17 +1472,8 @@ case $basic_machine in arm*-semi) os=-aout ;; - c4x-* | tic4x-*) - os=-coff - ;; - tic54x-*) - os=-coff - ;; - tic55x-*) - os=-coff - ;; - tic6x-*) - os=-coff + c4x-* | tic4x-*) + os=-coff ;; # This must come before the *-dec entry. pdp10-*) @@ -1564,11 +1493,14 @@ case $basic_machine in ;; m68000-sun) os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 ;; m68*-cisco) os=-aout ;; - mep-*) + mep-*) os=-elf ;; mips*-cisco) @@ -1595,7 +1527,7 @@ case $basic_machine in *-ibm) os=-aix ;; - *-knuth) + *-knuth) os=-mmixware ;; *-wec) diff --git a/config/depcomp b/config/depcomp index debb6ffa3e..df8eea7e4c 100755 --- a/config/depcomp +++ b/config/depcomp @@ -1,9 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2012-03-27.16; # UTC +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1999-2012 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free +# Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -27,7 +28,7 @@ scriptversion=2012-03-27.16; # UTC case $1 in '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 + echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) @@ -39,11 +40,11 @@ as side-effects. Environment variables: depmode Dependency tracking mode. - source Source file read by 'PROGRAMS ARGS'. - object Object file output by 'PROGRAMS ARGS'. + source Source file read by `PROGRAMS ARGS'. + object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. - tmpdepfile Temporary file to use when outputting dependencies. + tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . @@ -56,12 +57,6 @@ EOF ;; esac -# A tabulation character. -tab=' ' -# A newline character. -nl=' -' - if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 @@ -95,24 +90,10 @@ if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' + cygpath_u="sed s,\\\\\\\\,/,g" depmode=msvisualcpp fi -if test "$depmode" = msvc7msys; then - # This is just like msvc7 but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvc7 -fi - -if test "$depmode" = xlc; then - # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations. - gccflag=-qmakedep=gcc,-MF - depmode=gcc -fi - case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -167,21 +148,20 @@ gcc) ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the "deleted header file" problem. +## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. - tr ' ' "$nl" < "$tmpdepfile" | -## Some versions of gcc put a space before the ':'. On the theory + tr ' ' ' +' < "$tmpdepfile" | +## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as -## well. hp depmode also adds that space, but also prefixes the VPATH -## to the object. Take care to not repeat it in the output. +## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; @@ -213,15 +193,18 @@ sgi) # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like '#:fec' to the end of the + # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. - tr ' ' "$nl" < "$tmpdepfile" \ + tr ' ' ' +' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr "$nl" ' ' >> "$depfile" + tr ' +' ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. - tr ' ' "$nl" < "$tmpdepfile" \ + tr ' ' ' +' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else @@ -233,17 +216,10 @@ sgi) rm -f "$tmpdepfile" ;; -xlc) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts '$object:' at the + # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` @@ -273,11 +249,12 @@ aix) test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then - # Each line is of the form 'foo.o: dependent.h'. + # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to - # '$object: dependent.h' and one to simply 'dependent.h:'. + # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + # That's a tab and a space in the []. + sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -288,26 +265,23 @@ aix) ;; icc) - # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'. - # However on - # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c + # Intel's C compiler understands `-MD -MF file'. However on + # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h - # which is wrong. We want + # which is wrong. We want: # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using '\': + # and will wrap long lines using \ : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... - # tcc 0.9.26 (FIXME still under development at the moment of writing) - # will emit a similar output, but also prepend the continuation lines - # with horizontal tabulation characters. + "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : @@ -316,21 +290,15 @@ icc) exit $stat fi rm -f "$depfile" - # Each line is of the form 'foo.o: dependent.h', - # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'. + # Each line is of the form `foo.o: dependent.h', + # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to - # '$object: dependent.h' and one to simply 'dependent.h:'. - sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \ - < "$tmpdepfile" > "$depfile" - sed ' - s/[ '"$tab"'][ '"$tab"']*/ /g - s/^ *// - s/ *\\*$// - s/^[^:]*: *// - /^$/d - /:$/d - s/$/ :/ - ' < "$tmpdepfile" >> "$depfile" + # `$object: dependent.h' and one to simply `dependent.h:'. + sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" + # Some versions of the HPUX 10.20 sed can't process this invocation + # correctly. Breaking it into two sed invocations is a workaround. + sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | + sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; @@ -366,7 +334,7 @@ hp2) done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" - # Add 'dependent.h:' lines. + # Add `dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// @@ -381,9 +349,9 @@ hp2) tru64) # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. + # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in 'foo.d' instead, so we check for that too. + # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= @@ -429,59 +397,14 @@ tru64) done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + # That's a tab and a space in the []. + sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; -msvc7) - if test "$libtool" = yes; then - showIncludes=-Wc,-showIncludes - else - showIncludes=-showIncludes - fi - "$@" $showIncludes > "$tmpdepfile" - stat=$? - grep -v '^Note: including file: ' "$tmpdepfile" - if test "$stat" = 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - # The first sed program below extracts the file names and escapes - # backslashes for cygpath. The second sed program outputs the file - # name when reading, but also accumulates all include files in the - # hold buffer in order to output them again at the end. This only - # works with sed implementations that can handle large buffers. - sed < "$tmpdepfile" -n ' -/^Note: including file: *\(.*\)/ { - s//\1/ - s/\\/\\\\/g - p -}' | $cygpath_u | sort -u | sed -n ' -s/ /\\ /g -s/\(.*\)/'"$tab"'\1 \\/p -s/.\(.*\) \\/\1:/ -H -$ { - s/.*/'"$tab"'/ - G - p -}' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvc7msys) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. @@ -499,7 +422,7 @@ dashmstdout) shift fi - # Remove '-o $object'. + # Remove `-o $object'. IFS=" " for arg do @@ -519,14 +442,15 @@ dashmstdout) done test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for ':' + # Require at least two characters before searching for `:' # in the target name. This is to cope with DOS-style filenames: - # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. + # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. "$@" $dashmflag | - sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile" + sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" - tr ' ' "$nl" < "$tmpdepfile" | \ + tr ' ' ' +' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" @@ -579,10 +503,9 @@ makedepend) touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" - # makedepend may prepend the VPATH from the source file name to the object. - # No need to regex-escape $object, excess matching of '.' is harmless. - sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \ + cat < "$tmpdepfile" > "$depfile" + sed '1,2d' "$tmpdepfile" | tr ' ' ' +' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" @@ -602,7 +525,7 @@ cpp) shift fi - # Remove '-o $object'. + # Remove `-o $object'. IFS=" " for arg do @@ -671,8 +594,8 @@ msvisualcpp) sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" - echo "$tab" >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" + echo " " >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; diff --git a/config/install-sh b/config/install-sh index 377bb8687f..6781b987bd 100755 --- a/config/install-sh +++ b/config/install-sh @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-11-20.07; # UTC +scriptversion=2009-04-28.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -35,7 +35,7 @@ scriptversion=2011-11-20.07; # UTC # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent -# 'make' implicit rules from creating a file called install from it +# `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written @@ -156,10 +156,6 @@ while test $# -ne 0; do -s) stripcmd=$stripprog;; -t) dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac shift;; -T) no_target_directory=true;; @@ -190,10 +186,6 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then fi shift # arg dst_arg=$arg - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac done fi @@ -202,17 +194,13 @@ if test $# -eq 0; then echo "$0: no input file specified." >&2 exit 1 fi - # It's OK to call 'install-sh -d' without argument. + # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi if test -z "$dir_arg"; then - do_exit='(exit $ret); exit $ret' - trap "ret=129; $do_exit" 1 - trap "ret=130; $do_exit" 2 - trap "ret=141; $do_exit" 13 - trap "ret=143; $do_exit" 15 + trap '(exit $?); exit' 1 2 13 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. @@ -240,9 +228,9 @@ fi for src do - # Protect names problematic for 'test' and other utilities. + # Protect names starting with `-'. case $src in - -* | [=\(\)!]) src=./$src;; + -*) src=./$src;; esac if test -n "$dir_arg"; then @@ -264,7 +252,12 @@ do echo "$0: no destination specified." >&2 exit 1 fi + dst=$dst_arg + # Protect names starting with `-'. + case $dst in + -*) dst=./$dst;; + esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. @@ -354,7 +347,7 @@ do if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. + # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in @@ -392,7 +385,7 @@ do case $dstdir in /*) prefix='/';; - [-=\(\)!]*) prefix='./';; + -*) prefix='./';; *) prefix='';; esac @@ -410,7 +403,7 @@ do for d do - test X"$d" = X && continue + test -z "$d" && continue prefix=$prefix$d if test -d "$prefix"; then diff --git a/config/missing b/config/missing index 9a5564823d..28055d2ae6 100755 --- a/config/missing +++ b/config/missing @@ -1,9 +1,10 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2012-01-06.18; # UTC +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, +# 2008, 2009 Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -25,7 +26,7 @@ scriptversion=2012-01-06.18; # UTC # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then - echo 1>&2 "Try '$0 --help' for more information" + echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi @@ -33,7 +34,7 @@ run=: sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' sed_minuso='s/.* -o \([^ ]*\).*/\1/p' -# In the cases where this matters, 'missing' is being run in the +# In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac @@ -64,7 +65,7 @@ case $1 in echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... -Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an +Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: @@ -73,20 +74,21 @@ Options: --run try to run the given command, and emulate it if it fails Supported PROGRAM values: - aclocal touch file 'aclocal.m4' - autoconf touch file 'configure' - autoheader touch file 'config.h.in' + aclocal touch file \`aclocal.m4' + autoconf touch file \`configure' + autoheader touch file \`config.h.in' autom4te touch the output file, or create a stub one - automake touch all 'Makefile.in' files - bison create 'y.tab.[ch]', if possible, from existing .[ch] - flex create 'lex.yy.c', if possible, from existing .c + automake touch all \`Makefile.in' files + bison create \`y.tab.[ch]', if possible, from existing .[ch] + flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file - lex create 'lex.yy.c', if possible, from existing .c + lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file - yacc create 'y.tab.[ch]', if possible, from existing .[ch] + tar try tar, gnutar, gtar, then tar without non-portable flags + yacc create \`y.tab.[ch]', if possible, from existing .[ch] -Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and -'g' are ignored when checking the name. +Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and +\`g' are ignored when checking the name. Send bug reports to ." exit $? @@ -98,8 +100,8 @@ Send bug reports to ." ;; -*) - echo 1>&2 "$0: Unknown '$1' option" - echo 1>&2 "Try '$0 --help' for more information" + echo 1>&2 "$0: Unknown \`$1' option" + echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; @@ -120,13 +122,22 @@ case $1 in # Not GNU programs, they don't have --version. ;; + tar*) + if test -n "$run"; then + echo 1>&2 "ERROR: \`tar' requires --run" + exit 1 + elif test "x$2" = "x--version" || test "x$2" = "x--help"; then + exit 1 + fi + ;; + *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone - # running '$TOOL --version' or '$TOOL --help' to check whether + # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi @@ -138,27 +149,27 @@ esac case $program in aclocal*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified 'acinclude.m4' or '${configure_ac}'. You might want - to install the Automake and Perl packages. Grab them from +WARNING: \`$1' is $msg. You should only need it if + you modified \`acinclude.m4' or \`${configure_ac}'. You might want + to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified '${configure_ac}'. You might want to install the - Autoconf and GNU m4 packages. Grab them from any GNU +WARNING: \`$1' is $msg. You should only need it if + you modified \`${configure_ac}'. You might want to install the + \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified 'acconfig.h' or '${configure_ac}'. You might want - to install the Autoconf and GNU m4 packages. Grab them +WARNING: \`$1' is $msg. You should only need it if + you modified \`acconfig.h' or \`${configure_ac}'. You might want + to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" @@ -175,9 +186,9 @@ WARNING: '$1' is $msg. You should only need it if automake*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'. - You might want to install the Automake and Perl packages. +WARNING: \`$1' is $msg. You should only need it if + you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. + You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | @@ -186,10 +197,10 @@ WARNING: '$1' is $msg. You should only need it if autom4te*) echo 1>&2 "\ -WARNING: '$1' is needed, but is $msg. +WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. - You can get '$1' as part of Autoconf from any GNU + You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` @@ -209,13 +220,13 @@ WARNING: '$1' is needed, but is $msg. bison*|yacc*) echo 1>&2 "\ -WARNING: '$1' $msg. You should only need it if - you modified a '.y' file. You may need the Bison package +WARNING: \`$1' $msg. You should only need it if + you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get - Bison from any GNU archive site." + \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if test $# -ne 1; then - eval LASTARG=\${$#} + eval LASTARG="\${$#}" case $LASTARG in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` @@ -239,13 +250,13 @@ WARNING: '$1' $msg. You should only need it if lex*|flex*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified a '.l' file. You may need the Flex package +WARNING: \`$1' is $msg. You should only need it if + you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get - Flex from any GNU archive site." + \`Flex' from any GNU archive site." rm -f lex.yy.c if test $# -ne 1; then - eval LASTARG=\${$#} + eval LASTARG="\${$#}" case $LASTARG in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` @@ -262,10 +273,10 @@ WARNING: '$1' is $msg. You should only need it if help2man*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if +WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the - Help2man package in order for those modifications to take - effect. You can get Help2man from any GNU archive site." + \`Help2man' package in order for those modifications to take + effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` @@ -280,12 +291,12 @@ WARNING: '$1' is $msg. You should only need it if makeinfo*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified a '.texi' or '.texinfo' file, or any other file +WARNING: \`$1' is $msg. You should only need it if + you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy 'make' (AIX, - DU, IRIX). You might want to install the Texinfo package or - the GNU make package. Grab either from any GNU archive site." + call might also be the consequence of using a buggy \`make' (AIX, + DU, IRIX). You might want to install the \`Texinfo' package or + the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` @@ -307,14 +318,49 @@ WARNING: '$1' is $msg. You should only need it if touch $file ;; + tar*) + shift + + # We have already tried tar in the generic part. + # Look for gnutar/gtar before invocation to avoid ugly error + # messages. + if (gnutar --version > /dev/null 2>&1); then + gnutar "$@" && exit 0 + fi + if (gtar --version > /dev/null 2>&1); then + gtar "$@" && exit 0 + fi + firstarg="$1" + if shift; then + case $firstarg in + *o*) + firstarg=`echo "$firstarg" | sed s/o//` + tar "$firstarg" "$@" && exit 0 + ;; + esac + case $firstarg in + *h*) + firstarg=`echo "$firstarg" | sed s/h//` + tar "$firstarg" "$@" && exit 0 + ;; + esac + fi + + echo 1>&2 "\ +WARNING: I can't seem to be able to run \`tar' with the given arguments. + You may want to install GNU tar or Free paxutils, or check the + command line arguments." + exit 1 + ;; + *) echo 1>&2 "\ -WARNING: '$1' is needed, and is $msg. +WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the - proper tools for further handling them. Check the 'README' file, + proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case - some other package would contain this missing '$1' program." + some other package would contain this missing \`$1' program." exit 1 ;; esac diff --git a/configure b/configure index df9be8bce1..ef2242a965 100755 --- a/configure +++ b/configure @@ -1,11 +1,13 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for triAGENS ArangoDB 1.0.0. +# Generated by GNU Autoconf 2.68 for triAGENS ArangoDB 1.0.0. # # Report bugs to . # # -# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software +# Foundation, Inc. # # # This configure script is free software; the Free Software Foundation @@ -134,31 +136,6 @@ export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH -# Use a proper internal environment variable to ensure we don't fall - # into an infinite loop, continuously re-executing ourselves. - if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then - _as_can_reexec=no; export _as_can_reexec; - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -as_fn_exit 255 - fi - # We don't want this to propagate to other subprocesses. - { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh @@ -192,8 +169,7 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi -test x\$exitcode = x0 || exit 1 -test -x / || exit 1" +test x\$exitcode = x0 || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && @@ -238,25 +214,21 @@ IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : - export CONFIG_SHELL - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + # Preserve -v and -x to the replacement shell. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV + export CONFIG_SHELL + case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; + esac + exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} fi if test x$as_have_required = xno; then : @@ -359,14 +331,6 @@ $as_echo X"$as_dir" | } # as_fn_mkdir_p - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take @@ -488,10 +452,6 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - # If we had to re-execute with $CONFIG_SHELL, we're ensured to have - # already done that, so ensure we don't try to do so again and fall - # in an infinite loop. This has already happened in practice. - _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). @@ -526,16 +486,16 @@ if (echo >conf$$.file) 2>/dev/null; then # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. + # In both cases, we have to default to `cp -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' + as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else - as_ln_s='cp -pR' + as_ln_s='cp -p' fi else - as_ln_s='cp -pR' + as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null @@ -547,8 +507,28 @@ else as_mkdir_p=false fi -as_test_x='test -x' -as_executable_p=as_fn_executable_p +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in #( + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -626,14 +606,16 @@ am__EXEEXT_TRUE LTLIBOBJS LIBOBJS BUILD_H -BOOST_LIBS -BOOST_LDFLAGS -BOOST_CPPFLAGS ZEROMQ_LIBS ZEROMQ_LDFLAGS ZEROMQ_CPPFLAGS ENABLE_ZEROMQ_FALSE ENABLE_ZEROMQ_TRUE +V8_TARGET +V8_LIBS +V8_LDFLAGS +V8_CPPFLAGS +PROTOBUF_PROTOC PROTOBUF_LIBS PROTOBUF_LDFLAGS PROTOBUF_CPPFLAGS @@ -642,15 +624,12 @@ MRUBY_LDFLAGS MRUBY_CPPFLAGS ENABLE_MRUBY_FALSE ENABLE_MRUBY_TRUE -V8_TARGET -V8_LIBS -V8_LDFLAGS -V8_CPPFLAGS LIBEV_LIBS LIBEV_LDFLAGS LIBEV_CPPFLAGS -ENABLE_LIBEV_FALSE -ENABLE_LIBEV_TRUE +BOOST_LIBS +BOOST_LDFLAGS +BOOST_CPPFLAGS OPENSSL_LIBS OPENSSL_LDFLAGS OPENSSL_CPPFLAGS @@ -664,8 +643,6 @@ ENABLE_READLINE_TRUE NCURSES_LIBS NCURSES_LDFLAGS NCURSES_CPPFLAGS -ENABLE_NCURSES_FALSE -ENABLE_NCURSES_TRUE EGREP GREP NCURSES_CONFIG @@ -673,9 +650,13 @@ MATH_LIBS MATH_LDFLAGS MATH_CPPFLAGS BISON +ENABLE_BISON_FALSE +ENABLE_BISON_TRUE LEXLIB LEX_OUTPUT_ROOT LEX +ENABLE_FLEX_FALSE +ENABLE_FLEX_TRUE GCOV_LIBS GCOV_LDFLAGS GCOV_CFLAGS @@ -700,13 +681,6 @@ ENABLE_ZONE_DEBUG_FALSE ENABLE_ZONE_DEBUG_TRUE ENABLE_MEMFAIL_FALSE ENABLE_MEMFAIL_TRUE -TRI_BITS -ENABLE_FORCE_32BIT_FALSE -ENABLE_FORCE_32BIT_TRUE -ENABLE_32BIT_FALSE -ENABLE_32BIT_TRUE -ENABLE_64BIT_FALSE -ENABLE_64BIT_TRUE RANLIB LN_S CPP @@ -720,7 +694,6 @@ CXXCPP am__fastdepCXX_FALSE am__fastdepCXX_TRUE CXXDEPMODE -am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE @@ -736,8 +709,6 @@ CXXFLAGS CXX AM_BACKSLASH AM_DEFAULT_VERBOSITY -AM_DEFAULT_V -AM_V am__untar am__tar AMTAR @@ -761,6 +732,7 @@ am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM +TRI_BITS ENABLE_DARWIN_FALSE ENABLE_DARWIN_TRUE target_os @@ -775,24 +747,20 @@ build_os build_vendor build_cpu build -ENABLE_RELATIVE_DEVEL_FALSE -ENABLE_RELATIVE_DEVEL_TRUE -ENABLE_RELATIVE_SYSTEM_FALSE -ENABLE_RELATIVE_SYSTEM_TRUE +ENABLE_RELATIVE_FALSE +ENABLE_RELATIVE_TRUE ENABLE_INSTALL_DBDIR_FALSE ENABLE_INSTALL_DBDIR_TRUE +ENABLE_ALL_IN_ONE_V8_FALSE +ENABLE_ALL_IN_ONE_V8_TRUE +ENABLE_ALL_IN_ONE_PROTOBUF_FALSE +ENABLE_ALL_IN_ONE_PROTOBUF_TRUE +ENABLE_ALL_IN_ONE_LIBEV_FALSE +ENABLE_ALL_IN_ONE_LIBEV_TRUE ENABLE_BOOST_TEST_FALSE ENABLE_BOOST_TEST_TRUE -ENABLE_3RD_PARTY_BOOST_FALSE -ENABLE_3RD_PARTY_BOOST_TRUE -ENABLE_ALL_IN_ONE_FALSE -ENABLE_ALL_IN_ONE_TRUE ENABLE_ERRORS_DEPENDENCY_FALSE ENABLE_ERRORS_DEPENDENCY_TRUE -ENABLE_FLEX_FALSE -ENABLE_FLEX_TRUE -ENABLE_BISON_FALSE -ENABLE_BISON_TRUE target_alias host_alias build_alias @@ -834,12 +802,12 @@ SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking -enable_bison -enable_flex enable_errors_dependency -enable_all_in_one -enable_3rd_party_boost with_boost_test +enable_all_in_one_boost +enable_all_in_one_libev +enable_all_in_one_protobuf +enable_all_in_one_v8 enable_install_dbdir enable_relative enable_silent_rules @@ -848,7 +816,6 @@ enable_error_on_warning enable_eff_cpp enable_isystem enable_static_programs -enable_32bit enable_memfail enable_zone_debug enable_logger @@ -857,7 +824,8 @@ enable_figures enable_largefile with_dot enable_gcov -enable_ncurses +enable_flex +enable_bison enable_static_ncurses enable_readline with_readline @@ -867,17 +835,19 @@ enable_ssl with_openssl_inc with_openssl_lib enable_static_ssl -enable_libev +with_boost +with_boost_libdir with_libev with_libev_lib enable_static_libev +enable_mruby +with_protobuf +with_protobuf_lib +enable_static_protobuf with_v8 with_v8_lib enable_static_v8 -enable_mruby enable_zeromq -with_boost -with_boost_libdir ' ac_precious_vars='build_alias host_alias @@ -1347,6 +1317,8 @@ target=$target_alias if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe + $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used" >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi @@ -1511,22 +1483,21 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-bison enable BISON - --enable-flex enable FLEX --enable-errors-dependency generate dependencies for error files - --enable-all-in-one use supplied V8 and LIBEV from 3rdParty directory - --enable-3rd-party-boost + --enable-all-in-one-boost use supplied BOOST from 3rdParty directory + --enable-all-in-one-libev + use supplied LIBEV from 3rdParty directory + --enable-all-in-one-protobuf + use supplied PROTOBUF from 3rdParty directory + --enable-all-in-one-v8 use supplied V8 from 3rdParty directory --enable-install-dbdir install an empty database directory - --enable-relative all path are relative to the binary (yes/no/devel - [default]) - --enable-silent-rules less verbose build output (undo: "make V=1") - --disable-silent-rules verbose build output (undo: "make V=0") - --enable-dependency-tracking - do not reject slow dependency extractors - --disable-dependency-tracking - speeds up one-time build + --enable-relative all path are relative to the binary (default: no) + --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0') + --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors --enable-error-on-warning treat warnings as errors (default: no) --enable-eff-cpp use -Weffc++ (default: no) @@ -1534,7 +1505,6 @@ Optional Features: headers (default: no) --enable-static-programs do not use shared libraries (default: no) - --enable-32bit force 32bit compilation (default: no) --enable-memfail enables random memory allocation failures (default: no) --enable-zone-debug enables memory zone debugging (default: no) @@ -1544,18 +1514,19 @@ Optional Features: yes) --disable-largefile omit support for large files --enable-gcov enables gnu coverage (default: no) - --enable-curses enable ncurses support (default: - $tr_NCURSES_DEFAULT) + --enable-flex enable FLEX support (default: no) + --enable-bison enable BISON support (default: no) --enable-static-ncurses using static library 'ncurses' (default: no) --enable-readline enable readline support (default: yes) --enable-static-readline using static library 'readline' (default: no) --enable-ssl enable ssl support (default: yes) --enable-static-ssl using static library 'ssl' (default: no) - --enable-libev enable libev support (default: yes) --enable-static-libev using static library 'libev' (default: no) - --enable-static-v8 using static library 'v8' (default: no) --enable-mruby enable MRUBY + --enable-static-protobuf + using static library 'protobuf' (default: no) + --enable-static-v8 using static library 'v8' (default: no) --enable-zeromq enable ZeroMQ Optional Packages: @@ -1567,10 +1538,6 @@ Optional Packages: --with-readline-lib=DIR where the readline library is located --with-openssl-inc=DIR where the OpenSSL header files are located --with-openssl-lib=DIR where the OpenSSL library files are located - --with-libev=DIR where the libev library and includes are located - --with-libev-lib=DIR where the libev library is located - --with-v8=DIR where the v8 library and includes are located - --with-v8-lib=DIR where the v8 library is located --with-boost[=DIR] use boost (default is yes) - it is possible to specify the root directory for boost (optional) --with-boost-lib=LIB_DIR @@ -1579,6 +1546,12 @@ Optional Packages: this parameter only if default library detection fails and you know exactly where your boost libraries are located. + --with-libev=DIR where the libev library and includes are located + --with-libev-lib=DIR where the libev library is located + --with-protobuf=DIR where the protobuf library and includes are located + --with-protobuf-lib=DIR where the protobuf library is located + --with-v8=DIR where the v8 library and includes are located + --with-v8-lib=DIR where the v8 library is located Some influential environment variables: CXX C++ compiler command @@ -1661,9 +1634,9 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF triAGENS ArangoDB configure 1.0.0 -generated by GNU Autoconf 2.69 +generated by GNU Autoconf 2.68 -Copyright (C) 2012 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -1851,7 +1824,7 @@ $as_echo "$ac_try_echo"; } >&5 test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || - test -x conftest$ac_exeext + $as_test_x conftest$ac_exeext }; then : ac_retval=0 else @@ -1939,7 +1912,7 @@ $as_echo "$ac_try_echo"; } >&5 test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || - test -x conftest$ac_exeext + $as_test_x conftest$ac_exeext }; then : ac_retval=0 else @@ -2121,12 +2094,103 @@ $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile + +# ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES +# --------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_cxx_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## ------------------------------- ## +## Report this to info@triagens.de ## +## ------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_cxx_check_header_mongrel cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by triAGENS ArangoDB $as_me 1.0.0, which was -generated by GNU Autoconf 2.69. Invocation command line was +generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -2507,45 +2571,6 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. - -# Check whether --enable-bison was given. -if test "${enable_bison+set}" = set; then : - enableval=$enable_bison; tr_BISON="${enableval:-yes}" -else - tr_BISON=no - -fi - - - if test "x$tr_BISON" = xyes; then - ENABLE_BISON_TRUE= - ENABLE_BISON_FALSE='#' -else - ENABLE_BISON_TRUE='#' - ENABLE_BISON_FALSE= -fi - - - -# Check whether --enable-flex was given. -if test "${enable_flex+set}" = set; then : - enableval=$enable_flex; tr_FLEX="${enableval:-yes}" -else - tr_FLEX=no - -fi - - - if test "x$tr_FLEX" = xyes; then - ENABLE_FLEX_TRUE= - ENABLE_FLEX_FALSE='#' -else - ENABLE_FLEX_TRUE='#' - ENABLE_FLEX_FALSE= -fi - - - # Check whether --enable-errors-dependency was given. if test "${enable_errors_dependency+set}" = set; then : enableval=$enable_errors_dependency; tr_ERRORS_DEPENDENCY="${enableval:-yes}" @@ -2566,44 +2591,6 @@ fi -# Check whether --enable-all-in-one was given. -if test "${enable_all_in_one+set}" = set; then : - enableval=$enable_all_in_one; ALL_IN_ONE_ENABLE="${enableval:-yes}" -else - ALL_IN_ONE_ENABLE=yes - -fi - - - if test "x$ALL_IN_ONE_ENABLE" = xyes; then - ENABLE_ALL_IN_ONE_TRUE= - ENABLE_ALL_IN_ONE_FALSE='#' -else - ENABLE_ALL_IN_ONE_TRUE='#' - ENABLE_ALL_IN_ONE_FALSE= -fi - - - -# Check whether --enable-3rd-party-boost was given. -if test "${enable_3rd_party_boost+set}" = set; then : - enableval=$enable_3rd_party_boost; tr_3RD_PARTY_BOOST="${enableval:-yes}" -else - tr_3RD_PARTY_BOOST=yes - -fi - - - if test "x$tr_3RD_PARTY_BOOST" = xyes; then - ENABLE_3RD_PARTY_BOOST_TRUE= - ENABLE_3RD_PARTY_BOOST_FALSE='#' -else - ENABLE_3RD_PARTY_BOOST_TRUE='#' - ENABLE_3RD_PARTY_BOOST_FALSE= -fi - - - # Check whether --with-boost-test was given. if test "${with_boost_test+set}" = set; then : @@ -2623,6 +2610,73 @@ fi +# Check whether --enable-all-in-one-boost was given. +if test "${enable_all_in_one_boost+set}" = set; then : + enableval=$enable_all_in_one_boost; tr_ALL_IN_ONE_BOOST="${enableval:-yes}" +else + tr_ALL_IN_ONE_BOOST=yes + +fi + + + +# Check whether --enable-all-in-one-libev was given. +if test "${enable_all_in_one_libev+set}" = set; then : + enableval=$enable_all_in_one_libev; tr_ALL_IN_ONE_LIBEV="${enableval:-yes}" +else + tr_ALL_IN_ONE_LIBEV=yes + +fi + + + if test "x$tr_ALL_IN_ONE_LIBEV" = xyes; then + ENABLE_ALL_IN_ONE_LIBEV_TRUE= + ENABLE_ALL_IN_ONE_LIBEV_FALSE='#' +else + ENABLE_ALL_IN_ONE_LIBEV_TRUE='#' + ENABLE_ALL_IN_ONE_LIBEV_FALSE= +fi + + + +# Check whether --enable-all-in-one-protobuf was given. +if test "${enable_all_in_one_protobuf+set}" = set; then : + enableval=$enable_all_in_one_protobuf; tr_ALL_IN_ONE_PROTOBUF="${enableval:-yes}" +else + tr_ALL_IN_ONE_PROTOBUF=yes + +fi + + + if test "x$tr_ALL_IN_ONE_PROTOBUF" = xyes; then + ENABLE_ALL_IN_ONE_PROTOBUF_TRUE= + ENABLE_ALL_IN_ONE_PROTOBUF_FALSE='#' +else + ENABLE_ALL_IN_ONE_PROTOBUF_TRUE='#' + ENABLE_ALL_IN_ONE_PROTOBUF_FALSE= +fi + + + +# Check whether --enable-all-in-one-v8 was given. +if test "${enable_all_in_one_v8+set}" = set; then : + enableval=$enable_all_in_one_v8; tr_ALL_IN_ONE_V8="${enableval:-yes}" +else + tr_ALL_IN_ONE_V8=yes + +fi + + + if test "x$tr_ALL_IN_ONE_V8" = xyes; then + ENABLE_ALL_IN_ONE_V8_TRUE= + ENABLE_ALL_IN_ONE_V8_FALSE='#' +else + ENABLE_ALL_IN_ONE_V8_TRUE='#' + ENABLE_ALL_IN_ONE_V8_FALSE= +fi + + + # Check whether --enable-install-dbdir was given. if test "${enable_install_dbdir+set}" = set; then : @@ -2645,47 +2699,27 @@ fi # Check whether --enable-relative was given. if test "${enable_relative+set}" = set; then : - enableval=$enable_relative; tr_RELATIVE="${enableval:-devel}" + enableval=$enable_relative; tr_RELATIVE="${enableval:-yes}" else tr_RELATIVE=no fi -if test "x$tr_RELATIVE" = xyes; then - -cat >>confdefs.h <<_ACEOF -#define TRI_ENABLE_RELATIVE_SYSTEM 1 -_ACEOF - -else -if test "x$tr_RELATIVE" = xdevel; then - -cat >>confdefs.h <<_ACEOF -#define TRI_ENABLE_RELATIVE_DEVEL 1 -_ACEOF - -else - tr_RELATIVE=no -fi -fi - if test "x$tr_RELATIVE" = xyes; then - ENABLE_RELATIVE_SYSTEM_TRUE= - ENABLE_RELATIVE_SYSTEM_FALSE='#' + ENABLE_RELATIVE_TRUE= + ENABLE_RELATIVE_FALSE='#' else - ENABLE_RELATIVE_SYSTEM_TRUE='#' - ENABLE_RELATIVE_SYSTEM_FALSE= + ENABLE_RELATIVE_TRUE='#' + ENABLE_RELATIVE_FALSE= fi - if test "x$tr_RELATIVE" = xdevel; then - ENABLE_RELATIVE_DEVEL_TRUE= - ENABLE_RELATIVE_DEVEL_FALSE='#' -else - ENABLE_RELATIVE_DEVEL_TRUE='#' - ENABLE_RELATIVE_DEVEL_FALSE= -fi +if test "x$tr_RELATIVE" != xno; then + BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: enabled" +else + BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: disabled" +fi @@ -2808,6 +2842,7 @@ test -n "$target_alias" && NONENONEs,x,x, && program_prefix=${target_alias}- + tr_DARWIN="no" case $target in @@ -2826,7 +2861,19 @@ fi -am__api_version='1.12' +tr_BITS=32 + +case $target_cpu in + x86_64*) + tr_BITS=64 + ;; +esac + +TRI_BITS="$tr_BITS" + + + +am__api_version='1.11' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -2865,7 +2912,7 @@ case $as_dir/ in #(( # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. @@ -2923,6 +2970,9 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } +# Just in case +sleep 1 +echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' @@ -2933,40 +2983,32 @@ case `pwd` in esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; + as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; esac -# Do 'set' in a subshell so we don't clobber the current shell's +# Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$*" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$*" != "X $srcdir/configure conftest.file" \ - && test "$*" != "X conftest.file $srcdir/configure"; then + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + rm -f conftest.file + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken +alias in your environment" "$LINENO" 5 + fi - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - as_fn_error $? "ls -t appears to fail. Make sure there is not a broken - alias in your environment" "$LINENO" 5 - fi - if test "$2" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done test "$2" = conftest.file ) then @@ -2978,16 +3020,6 @@ Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi - -rm -f conftest.file - test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. @@ -3014,8 +3046,8 @@ if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 -$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if test x"${install_sh}" != xset; then @@ -3027,10 +3059,10 @@ if test x"${install_sh}" != xset; then esac fi -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. +# will honor the `STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. @@ -3049,7 +3081,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3089,7 +3121,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3140,7 +3172,7 @@ do test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do - as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue + { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ @@ -3193,7 +3225,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3309,11 +3341,11 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # We need awk for the "check" target. The system "awk" is bad on # some platforms. -# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AMTAR='$${TAR-tar}' +# Always define AMTAR for backward compatibility. -am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' +AMTAR=${AMTAR-"${am_missing_run}tar"} + +am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' @@ -3324,38 +3356,11 @@ if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=0;; +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=0;; esac -am_make=${MAKE-make} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -$as_echo_n "checking whether $am_make supports nested variables... " >&6; } -if ${am_cv_make_support_nested_variables+:} false; then : - $as_echo_n "(cached) " >&6 -else - if $as_echo 'TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -$as_echo "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi AM_BACKSLASH='\' @@ -3410,7 +3415,7 @@ am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. +# Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include @@ -3443,7 +3448,6 @@ fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' - am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= @@ -3482,7 +3486,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3526,7 +3530,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3972,9 +3976,8 @@ else # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -4008,16 +4011,16 @@ else : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in @@ -4026,16 +4029,16 @@ else test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} @@ -4246,7 +4249,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4290,7 +4293,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4484,7 +4487,8 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include -struct stat; +#include +#include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); @@ -4580,9 +4584,8 @@ else # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -4616,16 +4619,16 @@ else : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in @@ -4634,16 +4637,16 @@ else test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} @@ -4725,7 +4728,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4769,7 +4772,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4965,9 +4968,8 @@ else # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -5001,16 +5003,16 @@ else : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - # We check with '-c' and '-o' for the sake of the "dashmstdout" + # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in @@ -5019,16 +5021,16 @@ else test "$am__universal" = false || continue ;; nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} @@ -5389,9 +5391,7 @@ $as_echo "no" >&6; } fi -CPPFLAGS="${CPPFLAGS}" -CFLAGS="${CFLAGS}" -CXXFLAGS="${CXXFLAGS}" +LDFLAGS=-g # Check whether --enable-error-on-warning was given. if test "${enable_error_on_warning+set}" = set; then : @@ -5507,64 +5507,6 @@ fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing sincos" >&5 -$as_echo_n "checking for library containing sincos... " >&6; } -if ${ac_cv_search_sincos+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char sincos (); -int -main () -{ -return sincos (); - ; - return 0; -} -_ACEOF -for ac_lib in '' m; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_sincos=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_sincos+:} false; then : - break -fi -done -if ${ac_cv_search_sincos+:} false; then : - -else - ac_cv_search_sincos=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_sincos" >&5 -$as_echo "$ac_cv_search_sincos" >&6; } -ac_res=$ac_cv_search_sincos -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -fi - - - # Check whether --enable-isystem was given. if test "${enable_isystem+set}" = set; then : enableval=$enable_isystem; tr_ISYSTEM="${enableval:-yes}" @@ -5636,7 +5578,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5676,7 +5618,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5740,67 +5682,6 @@ fi -tr_BITS=32 -tr_BITS_32=no - -case $target_cpu in - x86_64*) - tr_BITS=64 - ;; -esac - -if test "x$tr_BITS" == "x64"; then - # Check whether --enable-32bit was given. -if test "${enable_32bit+set}" = set; then : - enableval=$enable_32bit; if test "x$enableval" = xyes; then - CXXFLAGS="$CXXFLAGS -m32" - CFLAGS="$CFLAGS -m32" - LDFLAGS="$LDFLAGS -m32" - - tr_BITS=32 - tr_BITS_32=yes - fi -fi - -fi - - if test "x$tr_BITS" == x64; then - ENABLE_64BIT_TRUE= - ENABLE_64BIT_FALSE='#' -else - ENABLE_64BIT_TRUE='#' - ENABLE_64BIT_FALSE= -fi - - if test "x$tr_BITS" == x32; then - ENABLE_32BIT_TRUE= - ENABLE_32BIT_FALSE='#' -else - ENABLE_32BIT_TRUE='#' - ENABLE_32BIT_FALSE= -fi - - if test "x$tr_BITS_32" = xyes; then - ENABLE_FORCE_32BIT_TRUE= - ENABLE_FORCE_32BIT_FALSE='#' -else - ENABLE_FORCE_32BIT_TRUE='#' - ENABLE_FORCE_32BIT_FALSE= -fi - - -TRI_BITS="$tr_BITS" - - - -if test "x$tr_32BIT" = xyes; then - BASIC_INFO="$BASIC_INFO|32bit: enabled" -else - BASIC_INFO="$BASIC_INFO|64bit: enabled" -fi - - - # Check whether --enable-memfail was given. if test "${enable_memfail+set}" = set; then : enableval=$enable_memfail; tr_MEMFAIL="${enableval:-yes}" @@ -6001,6 +5882,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu + # Check whether --enable-largefile was given. if test "${enable_largefile+set}" = set; then : enableval=$enable_largefile; @@ -6197,8 +6079,6 @@ _ACEOF esac rm -rf conftest* fi - - fi @@ -6362,7 +6242,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_acx_pthread_config="yes" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -6518,7 +6398,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_PTHREAD_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -6657,6 +6537,7 @@ else fi + # Extract the first word of "dot", so it can be a program name with args. set dummy dot; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 @@ -6675,7 +6556,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_DOT_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -6710,13 +6591,15 @@ fi if test "x$HAVE_DOT" = xyes; then - TOOL_INFO="$TOOL_INFO|DOT support: enabled ($DOT_PATH)" + BASIC_INFO="$BASIC_INFO|DOT support: enabled ($DOT_PATH)" else - TOOL_INFO="$TOOL_INFO|DOT support: disabled" + BASIC_INFO="$BASIC_INFO|DOT support: disabled" fi + + # Check whether --enable-gcov was given. if test "${enable_gcov+set}" = set; then : enableval=$enable_gcov; tr_COVERAGE="${enableval:-yes}" @@ -6764,17 +6647,35 @@ if test "x$tr_COVERAGE" = xyes; then fi + +# Check whether --enable-flex was given. +if test "${enable_flex+set}" = set; then : + enableval=$enable_flex; tr_FLEX="${enableval:-yes}" +else + tr_FLEX="no" + +fi + + + if test "x$tr_FLEX" = xyes; then + ENABLE_FLEX_TRUE= + ENABLE_FLEX_FALSE='#' +else + ENABLE_FLEX_TRUE='#' + ENABLE_FLEX_FALSE= +fi + + + if test "x$tr_FLEX" = xyes; then - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 $as_echo "$as_me: ................................................................................" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FLEX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FLEX" >&5 $as_echo "$as_me: CHECKING FLEX" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 $as_echo "$as_me: ................................................................................" >&6;} -for ac_prog in flex lex + for ac_prog in flex lex do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 @@ -6792,7 +6693,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_LEX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -6824,8 +6725,7 @@ a { ECHO; } b { REJECT; } c { yymore (); } d { yyless (1); } -e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */ - yyless ((input () != 0)); } +e { yyless (input () != 0); } f { unput (yytext[0]); } . { BEGIN INITIAL; } %% @@ -6934,33 +6834,33 @@ rm -f conftest.l $LEX_OUTPUT_ROOT.c fi -tr_flex_usable=no + tr_flex_usable=no -if test "x$LEX" != x -a "x$LEX" != "x:"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if flex supports required features" >&5 + if test "x$LEX" != x -a "x$LEX" != "x:"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if flex supports required features" >&5 $as_echo_n "checking if flex supports required features... " >&6; } - tr_flex_version=`$LEX --version | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'` + tr_flex_version=`$LEX --version | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'` - if test "$tr_flex_version" -ge 20535; then - tr_flex_usable=yes + if test "$tr_flex_version" -ge 20535; then + tr_flex_usable=yes + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_flex_usable" >&5 +$as_echo "$tr_flex_usable" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_flex_usable" >&5 -$as_echo "$tr_flex_usable" >&6; } -fi + if test "x$tr_flex_usable" != "xyes"; then + as_fn_error $? "Please install flex version 2.5.35 or higher from http://ftp.gnu.org/gnu/flex/" "$LINENO" 5 + fi -if test "x$tr_flex_usable" != "xyes"; then - as_fn_error $? "Please install flex version 2.5.35 or higher from http://ftp.gnu.org/gnu/flex/" "$LINENO" 5 -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking FLEX version" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking FLEX version" >&5 $as_echo_n "checking FLEX version... " >&6; } -TRI_FLEX_VERSION=`$LEX --version` -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_FLEX_VERSION" >&5 + TRI_FLEX_VERSION=`$LEX --version` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_FLEX_VERSION" >&5 $as_echo "$TRI_FLEX_VERSION" >&6; } - if test "x$tr_flex_usable" = xyes; then + if test "x$tr_flex_usable" = xyes; then ENABLE_FLEX_TRUE= ENABLE_FLEX_FALSE='#' else @@ -6969,25 +6869,43 @@ else fi - -LIB_INFO="$LIB_INFO|FLEX VERSION: ${TRI_FLEX_VERSION}" - - BASIC_INFO="$BASIC_INFO|FLEX: enabled" + BASIC_INFO="$BASIC_INFO|FLEX: ${TRI_FLEX_VERSION}" else BASIC_INFO="$BASIC_INFO|FLEX: disabled" fi + + + + +# Check whether --enable-bison was given. +if test "${enable_bison+set}" = set; then : + enableval=$enable_bison; tr_BISON="${enableval:-yes}" +else + tr_BISON=no + +fi + + + if test "x$tr_BISON" = xyes; then + ENABLE_BISON_TRUE= + ENABLE_BISON_FALSE='#' +else + ENABLE_BISON_TRUE='#' + ENABLE_BISON_FALSE= +fi + + + if test "x$tr_BISON" = xyes; then - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 $as_echo "$as_me: ................................................................................" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING BISON" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING BISON" >&5 $as_echo "$as_me: CHECKING BISON" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: ................................................................................" >&5 $as_echo "$as_me: ................................................................................" >&6;} -# Extract the first word of "bison", so it can be a program name with args. + # Extract the first word of "bison", so it can be a program name with args. set dummy bison; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } @@ -7003,7 +6921,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_BISON="bison" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -7025,33 +6943,33 @@ fi -tr_bison_usable=no + tr_bison_usable=no -if test "x$BISON" != x -a "x$BISON" != "x:"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if bison supports required features" >&5 + if test "x$BISON" != x -a "x$BISON" != "x:"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if bison supports required features" >&5 $as_echo_n "checking if bison supports required features... " >&6; } - tr_bison_version=`$BISON --version | head -1 | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'` + tr_bison_version=`$BISON --version | head -1 | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'` - if test "$tr_bison_version" -ge 20401; then - tr_bison_usable=yes + if test "$tr_bison_version" -ge 20401; then + tr_bison_usable=yes + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_bison_usable" >&5 +$as_echo "$tr_bison_usable" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_bison_usable" >&5 -$as_echo "$tr_bison_usable" >&6; } -fi + if test "x$tr_bison_usable" != "xyes"; then + as_fn_error $? "Please install bison version 2.4.1 or higher from http://ftp.gnu.org/gnu/bison/" "$LINENO" 5 + fi -if test "x$tr_bison_usable" != "xyes"; then - as_fn_error $? "Please install bison version 2.4.1 or higher from http://ftp.gnu.org/gnu/bison/" "$LINENO" 5 -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking BISON version" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking BISON version" >&5 $as_echo_n "checking BISON version... " >&6; } -TRI_BISON_VERSION=`$BISON --version | head -1` -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_BISON_VERSION" >&5 + TRI_BISON_VERSION=`$BISON --version | head -1` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_BISON_VERSION" >&5 $as_echo "$TRI_BISON_VERSION" >&6; } - if test "x$tr_bison_usable" = xyes; then + if test "x$tr_bison_usable" = xyes; then ENABLE_BISON_TRUE= ENABLE_BISON_FALSE='#' else @@ -7060,21 +6978,13 @@ else fi - -LIB_INFO="$LIB_INFO|BISON VERSION: ${TRI_BISON_VERSION}" - - BASIC_INFO="$BASIC_INFO|BISON: enabled" + BASIC_INFO="$BASIC_INFO|BISON: ${TRI_BISON_VERSION}" else BASIC_INFO="$BASIC_INFO|BISON: disabled" fi -if test "x$tr_RELATIVE" != xno; then - BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: $tr_RELATIVE" -else - BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: disabled" -fi -FLAG_INFO="$FLAG_INFO|." + @@ -7153,16 +7063,13 @@ fi -tr_NCURSES_DEFAULT="yes" - -# Check whether --enable-ncurses was given. -if test "${enable_ncurses+set}" = set; then : - enableval=$enable_ncurses; tr_NCURSES="$enableval" -else - tr_NCURSES="$tr_NCURSES_DEFAULT" - -fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR NCURSES" >&5 +$as_echo "$as_me: CHECKING FOR NCURSES" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then @@ -7180,13 +7087,6 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 -$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR NCURSES" >&5 -$as_echo "$as_me: CHECKING FOR NCURSES" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 -$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} - ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -7194,8 +7094,9 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test "x$tr_NCURSES" = xyes; then - # Extract the first word of "ncurses5-config", so it can be a program name with args. +tr_NCURSES="yes" + +# Extract the first word of "ncurses5-config", so it can be a program name with args. set dummy ncurses5-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } @@ -7214,7 +7115,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_NCURSES_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -7237,8 +7138,8 @@ fi - if test -z "$NCURSES_CONFIG"; then - # Extract the first word of "ncurses6-config", so it can be a program name with args. +if test -z "$NCURSES_CONFIG"; then + # Extract the first word of "ncurses6-config", so it can be a program name with args. set dummy ncurses6-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } @@ -7257,7 +7158,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_NCURSES_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -7279,13 +7180,13 @@ $as_echo "no" >&6; } fi - fi +fi - if test -n "$NCURSES_CONFIG"; then - NCURSES_LIBS="`$NCURSES_CONFIG --libs`" - NCURSES_CPPFLAGS="`$NCURSES_CONFIG --cflags`" +if test -n "$NCURSES_CONFIG"; then + NCURSES_LIBS="`$NCURSES_CONFIG --libs`" + NCURSES_CPPFLAGS="`$NCURSES_CONFIG --cflags`" - if test "x$tr_static_ncurses" = xyes -a "x$ABS_STATIC_LIBS" = xyes; then + if test "x$tr_static_ncurses" = xyes -a "x$ABS_STATIC_LIBS" = xyes; then tr_libraries_found=no tr_missing="" tr_result="" @@ -7369,12 +7270,94 @@ $as_echo "" >&6; } fi - if test "x$tr_libraries_found" != xyes; then - as_fn_error $? "Please install the ncurses library" "$LINENO" 5 - fi + if test "x$tr_libraries_found" != xyes; then + tr_NCURSES="no" + fi - TRI_NCURSES_VERSION="`$NCURSES_CONFIG --version`" + TRI_NCURSES_VERSION="`$NCURSES_CONFIG --version`" +else + + if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_ncurses" = xyes; then + tr_library_found=no + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking ncurses" >&5 +$as_echo_n "checking ncurses... " >&6; } + + tr_library="" + + for tr_path in $LDFLAGS; do + case $tr_path in + -L*) + path=`echo $tr_path | sed -e 's:^-L::'` + if test -f "$path/libncurses.a"; then + tr_library="$path/libncurses.a" + fi + ;; + esac + done + + + if test "x$tr_library" != x; then + NCURSES_LIBS="$tr_library $NCURSES_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_library" >&5 +$as_echo "$tr_library" >&6; } + tr_library_found=yes + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi else + tr_library_found=yes + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setupterm in -lncurses" >&5 +$as_echo_n "checking for setupterm in -lncurses... " >&6; } +if ${ac_cv_lib_ncurses_setupterm+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lncurses $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char setupterm (); +int +main () +{ +return setupterm (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_ncurses_setupterm=yes +else + ac_cv_lib_ncurses_setupterm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_setupterm" >&5 +$as_echo "$ac_cv_lib_ncurses_setupterm" >&6; } +if test "x$ac_cv_lib_ncurses_setupterm" = xyes; then : + NCURSES_LIBS="-lncurses $NCURSES_LIBS" +else + tr_library_found=no +fi + + fi + + tr_NCURSES=$tr_library_found + TRI_NCURSES_VERSION="ncurses" +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } @@ -7392,7 +7375,7 @@ do for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in @@ -7458,7 +7441,7 @@ do for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in @@ -7642,122 +7625,13 @@ if test "x$ac_cv_header_curses_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_CURSES_H 1 _ACEOF - tr_NCURSES="yes" + else tr_NCURSES="no" fi done - - if test "x$tr_NCURSES" = xyes; then - - if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_ncurses" = xyes; then - tr_library_found=no - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking ncurses" >&5 -$as_echo_n "checking ncurses... " >&6; } - - tr_library="" - - for tr_path in $LDFLAGS; do - case $tr_path in - -L*) - path=`echo $tr_path | sed -e 's:^-L::'` - if test -f "$path/libncurses.a"; then - tr_library="$path/libncurses.a" - fi - ;; - esac - done - - - if test "x$tr_library" != x; then - NCURSES_LIBS="$tr_library $NCURSES_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_library" >&5 -$as_echo "$tr_library" >&6; } - tr_library_found=yes - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi - else - tr_library_found=yes - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setupterm in -lncurses" >&5 -$as_echo_n "checking for setupterm in -lncurses... " >&6; } -if ${ac_cv_lib_ncurses_setupterm+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lncurses $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char setupterm (); -int -main () -{ -return setupterm (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ncurses_setupterm=yes -else - ac_cv_lib_ncurses_setupterm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_setupterm" >&5 -$as_echo "$ac_cv_lib_ncurses_setupterm" >&6; } -if test "x$ac_cv_lib_ncurses_setupterm" = xyes; then : - NCURSES_LIBS="-lncurses $NCURSES_LIBS" -else - tr_library_found=no -fi - - fi - - tr_NCURSES=$tr_library_found - fi - - TRI_NCURSES_VERSION="ncurses" - fi -fi - -if test "x$tr_NCURSES" != xyes; then - as_fn_error $? "Please install the ncurses library and header files" "$LINENO" 5 -fi - - -for ac_header in curses.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "curses.h" "ac_cv_header_curses_h" "$ac_includes_default" -if test "x$ac_cv_header_curses_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_CURSES_H 1 -_ACEOF - tr_NCURSES="yes" -else - tr_NCURSES="no" -fi - -done - -if test "x$tr_NCURSES" != xyes; then - as_fn_error $? "Please install the ncurses header files" "$LINENO" 5 -fi - for ac_header in term.h do : ac_fn_c_check_header_mongrel "$LINENO" "term.h" "ac_cv_header_term_h" "$ac_includes_default" @@ -7765,23 +7639,23 @@ if test "x$ac_cv_header_term_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_TERM_H 1 _ACEOF - tr_NCURSES="yes" + else tr_NCURSES="no" fi done + if test "x$tr_NCURSES" != xyes; then as_fn_error $? "Please install the ncurses header files" "$LINENO" 5 fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking NCURSES version" >&5 $as_echo_n "checking NCURSES version... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_NCURSES_VERSION" >&5 $as_echo "$TRI_NCURSES_VERSION" >&6; } -CPPFLAGS="$CPPFLAGS -DHAVE_NCURSES=1" + NCURSES_CPPFLAGS="${NCURSES_CPPFLAGS} -DTRI_NCURSES_VERSION='\"${TRI_NCURSES_VERSION}\"'" @@ -7819,30 +7693,19 @@ NCURSES_CPPFLAGS="${NCURSES_CPPFLAGS} -DTRI_NCURSES_VERSION='\"${TRI_NCURSES_VER - if test x$tr_NCURSES = xyes; then - ENABLE_NCURSES_TRUE= - ENABLE_NCURSES_FALSE='#' -else - ENABLE_NCURSES_TRUE='#' - ENABLE_NCURSES_FALSE= -fi +LIB_INFO="$LIB_INFO|NCURSES VERSION: ${TRI_NCURSES_VERSION}" +LIB_INFO="$LIB_INFO|NCURSES_CPPLIBS: ${NCURSES_CPPLIBS}" +LIB_INFO="$LIB_INFO|NCURSES_LDLIBS: ${NCURSES_LDLIBS}" +LIB_INFO="$LIB_INFO|NCURSES_LIBS: ${NCURSES_LIBS}" -if test "x$tr_NCURSES" = xyes; then - LIB_INFO="$LIB_INFO|NCURSES VERSION: ${TRI_NCURSES_VERSION}" +LIB_INFO="$LIB_INFO|." - FLAG_INFO="$FLAG_INFO|NCURSES_CPPFLAGS: ${NCURSES_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|NCURSES_LDFLAGS: ${NCURSES_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|NCURSES_LIBS: ${NCURSES_LIBS}" - FLAG_INFO="$FLAG_INFO|." -else - LIB_INFO="$LIB_INFO|NCURSES VERSION: disabled" -fi # before readline @@ -8094,6 +7957,16 @@ rm -f conftest* fi +LIBS="$SAVE_LIBS" +LDFLAGS="$SAVE_LDFLAGS" +CPPFLAGS="$SAVE_CPPFLAGS" + +if test "x$tr_READLINE" = xyes; then + CPPFLAGS="$CPPFLAGS -DHAVE_READLINE=1" + READLINE_CPPFLAGS="${READLINE_CPPFLAGS} -DTRI_READLINE_VERSION='\"${TRI_READLINE_VERSION}\"'" +fi + + if test "x$tr_READLINE" = xyes; then ENABLE_READLINE_TRUE= ENABLE_READLINE_FALSE='#' @@ -8108,27 +7981,19 @@ fi -LIBS="$SAVE_LIBS" -LDFLAGS="$SAVE_LDFLAGS" -CPPFLAGS="$SAVE_CPPFLAGS" - -if test "x$tr_READLINE" = xyes; then - CPPFLAGS="$CPPFLAGS -DHAVE_READLINE=1" - READLINE_CPPFLAGS="${READLINE_CPPFLAGS} -DTRI_READLINE_VERSION='\"${TRI_READLINE_VERSION}\"'" -fi - - if test "x$tr_READLINE" = xyes; then LIB_INFO="$LIB_INFO|READLINE VERSION: ${TRI_READLINE_VERSION}" - FLAG_INFO="$FLAG_INFO|READLINE_CPPFLAGS: ${READLINE_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|READLINE_LDFLAGS: ${READLINE_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|READLINE_LIBS: ${READLINE_LIBS}" - FLAG_INFO="$FLAG_INFO|." + LIB_INFO="$LIB_INFO|READLINE_CPPLIBS: ${READLINE_CPPLIBS}" + LIB_INFO="$LIB_INFO|READLINE_LDLIBS: ${READLINE_LDLIBS}" + LIB_INFO="$LIB_INFO|READLINE_LIBS: ${READLINE_LIBS}" else LIB_INFO="$LIB_INFO|READLINE VERSION: disabled" fi +LIB_INFO="$LIB_INFO|." + + @@ -8567,7 +8432,7 @@ _ACEOF { $as_echo "$as_me:${as_lineno-$LINENO}: checking OPENSSL version" >&5 $as_echo_n "checking OPENSSL version... " >&6; } eval "$ac_cpp conftest.$ac_ext" | fgrep "long sdnhg36ed" | awk '{print $4 " " $5 " " $6 " " $7 " " $8 " " $9}' > conftest.output -TRI_OPENSSL_VERSION=`cat conftest.output` +TRI_OPENSSL_VERSION=`head -1 conftest.output | sed -e 's: *$::'` { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_OPENSSL_VERSION" >&5 $as_echo "$TRI_OPENSSL_VERSION" >&6; } rm -f conftest* @@ -8583,774 +8448,19 @@ OPENSSL_CPPFLAGS="${OPENSSL_CPPFLAGS} -DTRI_OPENSSL_VERSION='${TRI_OPENSSL_VERSI if test "x$tr_OPENSSL" = xyes; then LIB_INFO="$LIB_INFO|OPENSSL VERSION: ${TRI_OPENSSL_VERSION}" - FLAG_INFO="$FLAG_INFO|OPENSSL_CPPFLAGS: ${OPENSSL_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|OPENSSL_LDFLAGS: ${OPENSSL_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|OPENSSL_LIBS: ${OPENSSL_LIBS}" - FLAG_INFO="$FLAG_INFO|." + LIB_INFO="$LIB_INFO|OPENSSL_CPPFLAGS: ${OPENSSL_CPPFLAGS}" + LIB_INFO="$LIB_INFO|OPENSSL_LDFLAGS: ${OPENSSL_LDFLAGS}" + LIB_INFO="$LIB_INFO|OPENSSL_LIBS: ${OPENSSL_LIBS}" else LIB_INFO="$LIB_INFO|OPENSSL VERSION: disabled" fi +LIB_INFO="$LIB_INFO|." -if test "x$ALL_IN_ONE_ENABLE" = xyes; then - -LIBEV_CPPFLAGS="-I${srcdir}/3rdParty/libev" -LIBEV_LDFLAGS="" - -if test "x$tr_BITS" = x64; then - LIBEV_LIBS="${srcdir}/3rdParty/libev/ARCH.x64/.libs/libev.a" -else - LIBEV_LIBS="${srcdir}/3rdParty/libev/ARCH.ia32/.libs/libev.a" -fi - -TRI_LIBEV_VERSION="4.11" - - - if test "xyes" = xyes; then - ENABLE_LIBEV_TRUE= - ENABLE_LIBEV_FALSE='#' -else - ENABLE_LIBEV_TRUE='#' - ENABLE_LIBEV_FALSE= -fi - - - - - - -LIBEV_CPPFLAGS="${LIBEV_CPPFLAGS} -DTRI_LIBEV_VERSION='\"${TRI_LIBEV_VERSION}\"'" - - -LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" - -FLAG_INFO="$FLAG_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" -FLAG_INFO="$FLAG_INFO|." - - - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-LIBEV: enabled" -else - - -# Check whether --enable-libev was given. -if test "${enable_libev+set}" = set; then : - enableval=$enable_libev; tr_LIBEV="$enableval" -else - tr_LIBEV="maybe" - -fi - - - -# Check whether --with-libev was given. -if test "${with_libev+set}" = set; then : - withval=$with_libev; LIBEV_CPPFLAGS="-I$withval/include" - LIBEV_LDFLAGS="-L$withval/lib" - LIBEV="$withval" - -fi - - - -# Check whether --with-libev-lib was given. -if test "${with_libev_lib+set}" = set; then : - withval=$with_libev_lib; LIBEV_LDFLAGS="-L$withval" - -fi - - - - if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then - # Check whether --enable-static-libev was given. -if test "${enable_static_libev+set}" = set; then : - enableval=$enable_static_libev; tr_static_libev="$enableval" -else - tr_static_libev="no" - -fi - - else - tr_static_libev="no" - fi - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 -$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR LIBEV" >&5 -$as_echo "$as_me: CHECKING FOR LIBEV" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 -$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -if test "x$LIBEV_CPPFLAGS" != x; then - - if test "xLIBEV_CPPFLAGS" != "x"; then - if test "x$INCPREFIX" != "x-I"; then - LIBEV_CPPFLAGS=`echo $LIBEV_CPPFLAGS | sed -e "s:-I:$INCPREFIX:g"` - fi - fi - - - LIBEV_CPPFLAGS="$LIBEV_CPPFLAGS -DEV_MINIMAL=0" -fi - - -SAVE_CPPFLAGS="$CPPFLAGS" -CPPFLAGS="$CPPFLAGS $LIBEV_CPPFLAGS" - -SAVE_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS $LIBEV_LDFLAGS" - -SAVE_LIBS="$LIBS" - - -if test "x$tr_LIBEV" = xyes -o "x$tr_LIBEV" = xmaybe; then - ch_LIBEV="$tr_LIBEV" - - for ac_header in ev.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "ev.h" "ac_cv_header_ev_h" "$ac_includes_default" -if test "x$ac_cv_header_ev_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_EV_H 1 -_ACEOF - tr_LIBEV="yes" -else - tr_LIBEV="no" -fi - -done - - - if test "x$tr_LIBEV" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5 -$as_echo_n "checking for clock_gettime in -lrt... " >&6; } -if ${ac_cv_lib_rt_clock_gettime+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lrt $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char clock_gettime (); -int -main () -{ -return clock_gettime (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_rt_clock_gettime=yes -else - ac_cv_lib_rt_clock_gettime=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5 -$as_echo "$ac_cv_lib_rt_clock_gettime" >&6; } -if test "x$ac_cv_lib_rt_clock_gettime" = xyes; then : - LIBEV_LIBS="-lrt $LIBEV_LIBS" LIBS="-lrt $LIBS" -fi - - - - if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_libev" = xyes; then - tr_library_found=no - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking ev" >&5 -$as_echo_n "checking ev... " >&6; } - - tr_library="" - - for tr_path in $LDFLAGS; do - case $tr_path in - -L*) - path=`echo $tr_path | sed -e 's:^-L::'` - if test -f "$path/libev.a"; then - tr_library="$path/libev.a" - fi - ;; - esac - done - - - if test "x$tr_library" != x; then - LIBEV_LIBS="$tr_library $LIBEV_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_library" >&5 -$as_echo "$tr_library" >&6; } - tr_library_found=yes - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi - else - tr_library_found=yes - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ev_now in -lev" >&5 -$as_echo_n "checking for ev_now in -lev... " >&6; } -if ${ac_cv_lib_ev_ev_now+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lev $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char ev_now (); -int -main () -{ -return ev_now (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ev_ev_now=yes -else - ac_cv_lib_ev_ev_now=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ev_ev_now" >&5 -$as_echo "$ac_cv_lib_ev_ev_now" >&6; } -if test "x$ac_cv_lib_ev_ev_now" = xyes; then : - LIBEV_LIBS="-lev $LIBEV_LIBS" -else - tr_library_found=no -fi - - fi - - tr_LIBEV=$tr_library_found - fi - - if test "x$tr_LIBEV" = xyes; then - - if test "x$tr_static_libev" = xyes -a "xLIBEV_LIBS" != x; then - tr_libs="" - tr_special="" - - for tr_lib in $LIBEV_LIBS; do - case $tr_lib in - -lpthread|-lm|-lrt) - tr_special="$tr_special $tr_lib" - ;; - - -l*) - tr_libs="$tr_libs $tr_lib" - ;; - - *) - tr_libs="$tr_libs $tr_lib" - ;; - esac - done - - LIBEV_LIBS="$STATIC_LIBS $tr_libs $DYNAMIC_LIBS $tr_special" - fi - - else - if test "x$ch_LIBEV" = xyes; then - as_fn_error $? "Please install libev from http://software.schmorp.de/pkg/libev.html" "$LINENO" 5 - else - as_fn_error $? "Please install libev from http://software.schmorp.de/pkg/libev.html" "$LINENO" 5 - fi - fi -fi - - - if test "x$tr_LIBEV" = xyes; then - ENABLE_LIBEV_TRUE= - ENABLE_LIBEV_FALSE='#' -else - ENABLE_LIBEV_TRUE='#' - ENABLE_LIBEV_FALSE= -fi - - - - - - - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -main () { - long sdnhg36ed = EV_VERSION_MAJOR EV_VERSION_MINOR ; -} - -_ACEOF -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBEV version" >&5 -$as_echo_n "checking LIBEV version... " >&6; } -eval "$ac_cpp conftest.$ac_ext" | fgrep "long sdnhg36ed" | awk '{print $4 "." $5}' > conftest.output -TRI_LIBEV_VERSION=`cat conftest.output` -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_LIBEV_VERSION" >&5 -$as_echo "$TRI_LIBEV_VERSION" >&6; } -rm -f conftest* - - -LIBS="$SAVE_LIBS" -LDFLAGS="$SAVE_LDFLAGS" -CPPFLAGS="$SAVE_CPPFLAGS" - -LIBEV_CPPFLAGS="${LIBEV_CPPFLAGS} -DTRI_LIBEV_VERSION='\"${TRI_LIBEV_VERSION}\"'" - - -if test "x$tr_LIBEV" = xyes; then - LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" - - FLAG_INFO="$FLAG_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" - FLAG_INFO="$FLAG_INFO|." -else - LIB_INFO="$LIB_INFO|LIBEV VERSION: disabled" -fi - - - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-LIBEV: disabled" -fi - - -if test "x$ALL_IN_ONE_ENABLE" = xyes; then - - -V8_CPPFLAGS="-I${srcdir}/3rdParty/V8/include" -V8_LDFLAGS="" -V8_TARGET="native" - -if test x$tr_DARWIN == xyes; then - if test "x$tr_BITS" == x64; then - V8_TARGET="x64.release" - else - V8_TARGET="ia32.release" - fi - - V8_LIBS="${srcdir}/3rdParty/V8/out/$V8_TARGET/libv8_base.a ${srcdir}/3rdParty/V8/out/$V8_TARGET/libv8_nosnapshot.a" -else - if test "x$tr_BITS" == x64; then - V8_TARGET="x64.release" - else - V8_TARGET="ia32.release" - fi - - V8_LIBS="${srcdir}/3rdParty/V8/out/$V8_TARGET/obj.target/tools/gyp/libv8_base.a ${srcdir}/3rdParty/V8/out/$V8_TARGET/obj.target/tools/gyp/libv8_nosnapshot.a" -fi - -TRI_V8_VERSION="3.9.4" - - - - - - - -V8_CPPFLAGS="${V8_CPPFLAGS} -DTRI_V8_VERSION='\"${TRI_V8_VERSION}\"'" - - -LIB_INFO="$LIB_INFO|V8 VERSION: ${TRI_V8_VERSION}" - -FLAG_INFO="$FLAG_INFO|V8_TARGET: ${V8_TARGET}" -FLAG_INFO="$FLAG_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LIBS: ${V8_LIBS}" -FLAG_INFO="$FLAG_INFO|." - - - - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-V8: enabled" -else - - -V8_CPPFLAGS="" -V8_LDFLAGS="" -V8_LIBS="" - - -# Check whether --with-v8 was given. -if test "${with_v8+set}" = set; then : - withval=$with_v8; V8_CPPFLAGS="-I$withval/include" - V8_LDFLAGS="-L$withval/lib" - V8_LIB_PATH="$withval/lib" - V8="$withval" - -fi - - - -# Check whether --with-v8-lib was given. -if test "${with_v8_lib+set}" = set; then : - withval=$with_v8_lib; V8_LDFLAGS="-L$withval" - V8_LIB_PATH="$withval" - -fi - - - - if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then - # Check whether --enable-static-v8 was given. -if test "${enable_static_v8+set}" = set; then : - enableval=$enable_static_v8; tr_static_v8="$enableval" -else - tr_static_v8="no" - -fi - - else - tr_static_v8="no" - fi - - - -SAVE_CPPFLAGS="$CPPFLAGS" -CPPFLAGS="$CPPFLAGS $V8_CPPFLAGS" - -SAVE_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS $V8_LDFLAGS" - -SAVE_LIBS="$LIBS" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 -$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR GOOGLE V8" >&5 -$as_echo "$as_me: CHECKING FOR GOOGLE V8" >&6;} -{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 -$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} - -ac_ext=cpp -ac_cpp='$CXXCPP $CPPFLAGS' -ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_cxx_compiler_gnu - - -tr_V8="yes" - - as_ac_Lib=`$as_echo "ac_cv_lib_v8_v8::V8::GetVersion()" | $as_tr_sh` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for v8::V8::GetVersion() in -lv8" >&5 -$as_echo_n "checking for v8::V8::GetVersion() in -lv8... " >&6; } -if eval \${$as_ac_Lib+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS - LIBS="-lv8 $LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include - -int -main () -{ - -v8::V8::GetVersion() - - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_link "$LINENO"; then : - eval "$as_ac_Lib=yes" -else - eval "$as_ac_Lib=no" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS -fi -eval ac_res=\$$as_ac_Lib - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - if test `eval 'as_val=${'$as_ac_Lib'};$as_echo "$as_val"'` = yes; then : - V8_LIBS="-lv8" -else - tr_V8="no" -fi - -if test "x$tr_V8" != xyes; then - as_fn_error $? "Please install the V8 library from Google" "$LINENO" 5 -fi - -if test "x$V8_CPPFLAGS" != x; then - - if test "xV8_CPPFLAGS" != "x"; then - if test "x$INCPREFIX" != "x-I"; then - V8_CPPFLAGS=`echo $V8_CPPFLAGS | sed -e "s:-I:$INCPREFIX:g"` - fi - fi - -fi - - - - - - - -LIBS="$LIBS ${V8_LIBS}" -LDFLAGS="$LDFLAGS ${V8_LDFLAGS}" -CPPFLAGS="$CPPFLAGS ${V8_CPPFLAGS}" - - -if test "$cross_compiling" = yes; then : - TRI_V8_VERSION="V8" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot compute V8 version number when cross compiling" >&5 -$as_echo "$as_me: WARNING: cannot compute V8 version number when cross compiling" >&2;} -else - if test "x`type -t ac_fn_cxx_try_run`" = "xfunction" 2> /dev/null; then - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include - -int main (int, char**) { - printf("%s\n", v8::V8::GetVersion()); -} - -_ACEOF - - if test "x$V8_LIB_PATH" != x; then - if test "$USE_DYLD" = yes; then - save_DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH" - DYLD_LIBRARY_PATH="$V8_LIB_PATH:$DYLD_LIBRARY_PATH" - else - save_LD_LIBRARY_PATH="$LD_LIBRARY_PATH" - DYLD_LIBRARY_PATH="$V8_LIB_PATH:$LD_LIBRARY_PATH" - fi - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking V8 version" >&5 -$as_echo_n "checking V8 version... " >&6; } - - if ac_fn_cxx_try_run "$LINENO" >conftest.output; then - TRI_V8_VERSION=`cat conftest.output` - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_V8_VERSION" >&5 -$as_echo "$TRI_V8_VERSION" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 -$as_echo "failed" >&6; } - as_fn_error $? "Please install the V8 library from Google" "$LINENO" 5 - fi - - rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.beam conftest.$ac_ext conftest.output - - if test "x$V8_LIB_PATH" != x; then - if test "$USE_DYLD" = yes; then - DYLD_LIBRARY_PATH="$save_DYLD_LIBRARY_PATH" - else - LD_LIBRARY_PATH="$save_LD_LIBRARY_PATH" - fi - fi - else - TRI_V8_VERSION="V8" - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot compute V8 version number, old autoconf version" >&5 -$as_echo "$as_me: WARNING: cannot compute V8 version number, old autoconf version" >&2;} - fi -fi - - -LIBS="$SAVE_LIBS" -LDFLAGS="$SAVE_LDFLAGS" -CPPFLAGS="$SAVE_CPPFLAGS" - -V8_CPPFLAGS="${V8_CPPFLAGS} -DTRI_V8_VERSION='\"${TRI_V8_VERSION}\"'" - - -LIB_INFO="$LIB_INFO|V8 VERSION: ${TRI_V8_VERSION}" - -FLAG_INFO="$FLAG_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LIBS: ${V8_LIBS}" -FLAG_INFO="$FLAG_INFO|." - - - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-V8: disabled" -fi - - - - -# Check whether --enable-mruby was given. -if test "${enable_mruby+set}" = set; then : - enableval=$enable_mruby; tr_MRUBY="${enableval:-yes}" -else - tr_MRUBY=no - -fi - - -if test "x$tr_MRUBY" = "xyes"; then - MRUBY_CPPFLAGS="-I${srcdir}/3rdParty/mruby/include" - MRUBY_LDFLAGS="" - MRUBY_LIBS="${srcdir}/3rdParty/mruby/lib/libmruby.a" - - TRI_MRUBY_VERSION="2012-06-02 (92f192521865137c7e457b4a54c5df4ad2fbb049)" - - -cat >>confdefs.h <<_ACEOF -#define TRI_ENABLE_MRUBY 1 -_ACEOF - -fi - - if test "x$tr_MRUBY" = "xyes"; then - ENABLE_MRUBY_TRUE= - ENABLE_MRUBY_FALSE='#' -else - ENABLE_MRUBY_TRUE='#' - ENABLE_MRUBY_FALSE= -fi - - - - - - - -MRUBY_CPPFLAGS="${MRUBY_CPPFLAGS} -DTRI_MRUBY_VERSION='\"${TRI_MRUBY_VERSION}\"'" - - -if test "x$tr_MRUBY" = "xyes"; then - BASIC_INFO="$BASIC_INFO|MRUBY: enabled" - - LIB_INFO="$LIB_INFO|MRUBY VERSION: ${TRI_MRUBY_VERSION}" - - FLAG_INFO="$FLAG_INFO|MRUBY_CPPFLAGS: ${MRUBY_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|MRUBY_LDFLAGS: ${MRUBY_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|MRUBY_LIBS: ${MRUBY_LIBS}" - FLAG_INFO="$FLAG_INFO|." -else - BASIC_INFO="$BASIC_INFO|MRUBY: disabled" -fi - - - - - - - -PROTOBUF_CPPFLAGS="-I${srcdir}/3rdParty/protobuf-2.4.1/src" -PROTOBUF_LDFLAGS="" -PROTOBUF_LIBS="${srcdir}/3rdParty/protobuf-2.4.1/src/.libs/libprotobuf.a" - -TRI_PROTOBUF_VERSION="2.4.1" - - - - - - -PROTOBUF_CPPFLAGS="${PROTOBUF_CPPFLAGS} -DTRI_PROTOBUF_VERSION='\"${TRI_PROTOBUF_VERSION}\"'" - - -BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-PROTOBUF: enabled" - -LIB_INFO="$LIB_INFO|PROTOBUF VERSION: ${TRI_PROTOBUF_VERSION}" - -FLAG_INFO="$FLAG_INFO|PROTOBUF_CPPFLAGS: ${PROTOBUF_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|PROTOBUF_LDFLAGS: ${PROTOBUF_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|PROTOBUF_LIBS: ${PROTOBUF_LIBS}" -FLAG_INFO="$FLAG_INFO|." - - - - - - -# Check whether --enable-zeromq was given. -if test "${enable_zeromq+set}" = set; then : - enableval=$enable_zeromq; tr_ZEROMQ="${enableval:-yes}" -else - tr_ZEROMQ=no - -fi - - -if test "x$tr_ZEROMQ" = "xyes"; then - ZEROMQ_CPPFLAGS="-I${srcdir}/3rdParty/zeromq-2.2.0/BUILD/include -I${srcdir}/3rdParty/protobuf-2.4.1/src" - ZEROMQ_LDFLAGS="" - ZEROMQ_LIBS="${srcdir}/3rdParty/zeromq-2.2.0/BUILD/lib${tr_BITS}/libczmq.a ${srcdir}/3rdParty/zeromq-2.2.0/BUILD/lib${tr_BITS}/libzmq.a ${srcdir}/3rdParty/protobuf-2.4.1/src/.libs/libprotobuf.a -luuid -lrt" - - TRI_ZEROMQ_VERSION="2.2.0" - - -cat >>confdefs.h <<_ACEOF -#define TRI_ENABLE_ZEROMQ 1 -_ACEOF - -fi - - if test "x$tr_ZEROMQ" = "xyes"; then - ENABLE_ZEROMQ_TRUE= - ENABLE_ZEROMQ_FALSE='#' -else - ENABLE_ZEROMQ_TRUE='#' - ENABLE_ZEROMQ_FALSE= -fi - - - - - - - -ZEROMQ_CPPFLAGS="${ZEROMQ_CPPFLAGS} -DTRI_ZEROMQ_VERSION='\"${TRI_ZEROMQ_VERSION}\"'" - - -if test "x$tr_ZEROMQ" = "xyes"; then - BASIC_INFO="$BASIC_INFO|ZEROMQ: enabled" - - LIB_INFO="$LIB_INFO|ZEROMQ VERSION: ${TRI_ZEROMQ_VERSION}" - - FLAG_INFO="$FLAG_INFO|ZEROMQ_CPPFLAGS: ${ZEROMQ_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|ZEROMQ_LDFLAGS: ${ZEROMQ_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|ZEROMQ_LIBS: ${ZEROMQ_LIBS}" - FLAG_INFO="$FLAG_INFO|." -else - BASIC_INFO="$BASIC_INFO|ZEROMQ: disabled" -fi - - - - - -if test "x$tr_3RD_PARTY_BOOST" = xyes; then +if test "x$tr_ALL_IN_ONE_BOOST" = xyes; then BOOST_CPPFLAGS="-I${srcdir}/3rdParty/boost_1_48_0/include" @@ -9367,15 +8477,17 @@ TRI_BOOST_VERSION="1.48.0" BOOST_CPPFLAGS="${BOOST_CPPFLAGS} -DTRI_BOOST_VERSION='\"${TRI_BOOST_VERSION}\"'" +LIB_INFO="$LIB_INFO|BOOST: 3rdParty version" LIB_INFO="$LIB_INFO|BOOST VERSION: $TRI_BOOST_VERSION" -FLAG_INFO="$FLAG_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LIBS: ${BOOST_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LIBS: ${BOOST_LIBS}" + +LIB_INFO="$LIB_INFO|." + - BASIC_INFO="$BASIC_INFO|3RD-PARTY-BOOST: enabled" else @@ -9386,6 +8498,7 @@ $as_echo "$as_me: CHECKING FOR BOOST" >&6;} { $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 $as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} + ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -9708,22 +8821,1029 @@ CPPFLAGS="$SAVE_CPPFLAGS" BOOST_CPPFLAGS="${BOOST_CPPFLAGS} -DTRI_BOOST_VERSION='\"${TRI_BOOST_VERSION}\"'" +LIB_INFO="$LIB_INFO|BOOST: system version" LIB_INFO="$LIB_INFO|BOOST VERSION: $TRI_BOOST_VERSION" -FLAG_INFO="$FLAG_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LIBS: ${BOOST_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LIBS: ${BOOST_LIBS}" + +LIB_INFO="$LIB_INFO|." + - BASIC_INFO="$BASIC_INFO|3RD-PARTY-BOOST: disabled" fi +if test "x$tr_ALL_IN_ONE_LIBEV" = xyes; then + + +TRI_LIBEV_VERSION="4.11" + +LIBEV_CPPFLAGS="-I${srcdir}/3rdParty/libev" +LIBEV_LDFLAGS="" +LIBEV_LIBS="${srcdir}/3rdParty/libev/BUILD/.libs/libev.a" + + + + + + +LIBEV_CPPFLAGS="${LIBEV_CPPFLAGS} -DTRI_LIBEV_VERSION='\"${TRI_LIBEV_VERSION}\"'" + + +LIB_INFO="$LIB_INFO|LIBEV: 3rdParty version" +LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" + +LIB_INFO="$LIB_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" + +LIB_INFO="$LIB_INFO|." + + + +else + + + +# Check whether --with-libev was given. +if test "${with_libev+set}" = set; then : + withval=$with_libev; LIBEV_CPPFLAGS="-I$withval/include" + LIBEV_LDFLAGS="-L$withval/lib" + LIBEV="$withval" + +fi + + + +# Check whether --with-libev-lib was given. +if test "${with_libev_lib+set}" = set; then : + withval=$with_libev_lib; LIBEV_LDFLAGS="-L$withval" + +fi + + + + if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then + # Check whether --enable-static-libev was given. +if test "${enable_static_libev+set}" = set; then : + enableval=$enable_static_libev; tr_static_libev="$enableval" +else + tr_static_libev="no" + +fi + + else + tr_static_libev="no" + fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR LIBEV" >&5 +$as_echo "$as_me: CHECKING FOR LIBEV" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +if test "x$LIBEV_CPPFLAGS" != x; then + + if test "xLIBEV_CPPFLAGS" != "x"; then + if test "x$INCPREFIX" != "x-I"; then + LIBEV_CPPFLAGS=`echo $LIBEV_CPPFLAGS | sed -e "s:-I:$INCPREFIX:g"` + fi + fi + + + LIBEV_CPPFLAGS="$LIBEV_CPPFLAGS -DEV_MINIMAL=0" +fi + + +SAVE_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $LIBEV_CPPFLAGS" + +SAVE_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $LIBEV_LDFLAGS" + +SAVE_LIBS="$LIBS" + + +ch_LIBEV="$tr_LIBEV" + +for ac_header in ev.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "ev.h" "ac_cv_header_ev_h" "$ac_includes_default" +if test "x$ac_cv_header_ev_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_EV_H 1 +_ACEOF + tr_LIBEV="yes" +else + tr_LIBEV="no" +fi + +done + + +if test "x$tr_LIBEV" = xyes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5 +$as_echo_n "checking for clock_gettime in -lrt... " >&6; } +if ${ac_cv_lib_rt_clock_gettime+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lrt $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char clock_gettime (); +int +main () +{ +return clock_gettime (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_rt_clock_gettime=yes +else + ac_cv_lib_rt_clock_gettime=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5 +$as_echo "$ac_cv_lib_rt_clock_gettime" >&6; } +if test "x$ac_cv_lib_rt_clock_gettime" = xyes; then : + LIBEV_LIBS="-lrt $LIBEV_LIBS" LIBS="-lrt $LIBS" +fi + + + + if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_libev" = xyes; then + tr_library_found=no + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking ev" >&5 +$as_echo_n "checking ev... " >&6; } + + tr_library="" + + for tr_path in $LDFLAGS; do + case $tr_path in + -L*) + path=`echo $tr_path | sed -e 's:^-L::'` + if test -f "$path/libev.a"; then + tr_library="$path/libev.a" + fi + ;; + esac + done + + + if test "x$tr_library" != x; then + LIBEV_LIBS="$tr_library $LIBEV_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_library" >&5 +$as_echo "$tr_library" >&6; } + tr_library_found=yes + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + else + tr_library_found=yes + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ev_now in -lev" >&5 +$as_echo_n "checking for ev_now in -lev... " >&6; } +if ${ac_cv_lib_ev_ev_now+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lev $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char ev_now (); +int +main () +{ +return ev_now (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_ev_ev_now=yes +else + ac_cv_lib_ev_ev_now=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ev_ev_now" >&5 +$as_echo "$ac_cv_lib_ev_ev_now" >&6; } +if test "x$ac_cv_lib_ev_ev_now" = xyes; then : + LIBEV_LIBS="-lev $LIBEV_LIBS" +else + tr_library_found=no +fi + + fi + + tr_LIBEV=$tr_library_found +fi + +if test "x$tr_LIBEV" = xyes; then + + if test "x$tr_static_libev" = xyes -a "xLIBEV_LIBS" != x; then + tr_libs="" + tr_special="" + + for tr_lib in $LIBEV_LIBS; do + case $tr_lib in + -lpthread|-lm|-lrt) + tr_special="$tr_special $tr_lib" + ;; + + -l*) + tr_libs="$tr_libs $tr_lib" + ;; + + *) + tr_libs="$tr_libs $tr_lib" + ;; + esac + done + + LIBEV_LIBS="$STATIC_LIBS $tr_libs $DYNAMIC_LIBS $tr_special" + fi + +else + as_fn_error $? "Please install libev from http://software.schmorp.de/pkg/libev.html" "$LINENO" 5 +fi + + + + + + + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +main () { + long sdnhg36ed = EV_VERSION_MAJOR EV_VERSION_MINOR ; +} + +_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBEV version" >&5 +$as_echo_n "checking LIBEV version... " >&6; } +eval "$ac_cpp conftest.$ac_ext" | fgrep "long sdnhg36ed" | awk '{print $4 "." $5}' > conftest.output +TRI_LIBEV_VERSION=`cat conftest.output` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_LIBEV_VERSION" >&5 +$as_echo "$TRI_LIBEV_VERSION" >&6; } +rm -f conftest* + + +LIBS="$SAVE_LIBS" +LDFLAGS="$SAVE_LDFLAGS" +CPPFLAGS="$SAVE_CPPFLAGS" + +LIBEV_CPPFLAGS="${LIBEV_CPPFLAGS} -DTRI_LIBEV_VERSION='\"${TRI_LIBEV_VERSION}\"'" + + +LIB_INFO="$LIB_INFO|LIBEV: system version" +LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" + +LIB_INFO="$LIB_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" + +LIB_INFO="$LIB_INFO|." + + + +fi + + + + +MRUBY_CPPFLAGS="" +MRUBY_LDLAGS="" +MRUBY_LIBSLAGS="" + +# Check whether --enable-mruby was given. +if test "${enable_mruby+set}" = set; then : + enableval=$enable_mruby; tr_MRUBY="${enableval:-yes}" +else + tr_MRUBY=no + +fi + + +if test "x$tr_MRUBY" = "xyes"; then + MRUBY_CPPFLAGS="-I${srcdir}/3rdParty/mruby/include" + MRUBY_LDFLAGS="" + MRUBY_LIBS="${srcdir}/3rdParty/mruby/lib/libmruby.a" + + TRI_MRUBY_VERSION="2012-06-02 (92f192521865137c7e457b4a54c5df4ad2fbb049)" + + +cat >>confdefs.h <<_ACEOF +#define TRI_ENABLE_MRUBY 1 +_ACEOF + +fi + + if test "x$tr_MRUBY" = "xyes"; then + ENABLE_MRUBY_TRUE= + ENABLE_MRUBY_FALSE='#' +else + ENABLE_MRUBY_TRUE='#' + ENABLE_MRUBY_FALSE= +fi + + + + + + + +MRUBY_CPPFLAGS="${MRUBY_CPPFLAGS} -DTRI_MRUBY_VERSION='\"${TRI_MRUBY_VERSION}\"'" + + +if test "x$tr_MRUBY" = "xyes"; then + LIB_INFO="$LIB_INFO|MRUBY: 3rdParty version" + LIB_INFO="$LIB_INFO|MRUBY VERSION: ${TRI_MRUBY_VERSION}" + + LIB_INFO="$LIB_INFO|MRUBY_CPPFLAGS: ${MRUBY_CPPFLAGS}" + LIB_INFO="$LIB_INFO|MRUBY_LDFLAGS: ${MRUBY_LDFLAGS}" + LIB_INFO="$LIB_INFO|MRUBY_LIBS: ${MRUBY_LIBS}" +else + LIB_INFO="$LIB_INFO|MRUBY: disabled" +fi + +LIB_INFO="$LIB_INFO|." + + + + + +if test "x$tr_ALL_IN_ONE_PROTOBUF" = xyes; then + + +PROTOBUF_CPPFLAGS="-I${srcdir}/3rdParty/protobuf-2.4.1/src" +PROTOBUF_LDFLAGS="" +PROTOBUF_LIBS="${srcdir}/3rdParty/protobuf-2.4.1/src/.libs/libprotobuf.a" +PROTOBUF_PROTOC="${srcdir}/3rdParty/protobuf-2.4.1/BUILD/bin/protoc" + +TRI_PROTOBUF_VERSION="2.4.1" + +PROTOBUF_CPPFLAGS="${PROTOBUF_CPPFLAGS} -DTRI_PROTOBUF_VERSION='\"${TRI_PROTOBUF_VERSION}\"'" + + + + + + + +LIB_INFO="$LIB_INFO|PROTOBUF: 3rdParty" +LIB_INFO="$LIB_INFO|PROTOBUF VERSION: ${TRI_PROTOBUF_VERSION}" +LIB_INFO="$LIB_INFO|PROTOBUF COMPILER: ${PROTOBUF_PROTOC}" + +LIB_INFO="$LIB_INFO|PROTOBUF_CPPFLAGS: ${PROTOBUF_CPPFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LDFLAGS: ${PROTOBUF_LDFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LIBS: ${PROTOBUF_LIBS}" + +LIB_INFO="$LIB_INFO|." + + + +else + + + +# Check whether --with-protobuf was given. +if test "${with_protobuf+set}" = set; then : + withval=$with_protobuf; PROTOBUF_CPPFLAGS="-I$withval/include" + PROTOBUF_LDFLAGS="-L$withval/lib" + PROTOBUF="$withval" + +fi + + + +# Check whether --with-protobuf-lib was given. +if test "${with_protobuf_lib+set}" = set; then : + withval=$with_protobuf_lib; PROTOBUF_LDFLAGS="-L$withval" + +fi + + + + if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then + # Check whether --enable-static-protobuf was given. +if test "${enable_static_protobuf+set}" = set; then : + enableval=$enable_static_protobuf; tr_static_protobuf="$enableval" +else + tr_static_protobuf="no" + +fi + + else + tr_static_protobuf="no" + fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR PROTOBUF" >&5 +$as_echo "$as_me: CHECKING FOR PROTOBUF" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} + + +SAVE_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $PROTOBUF_CPPFLAGS" + +SAVE_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $PROTOBUF_LDFLAGS" + +SAVE_LIBS="$LIBS" + + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + + +for ac_header in google/protobuf/stubs/common.h +do : + ac_fn_cxx_check_header_mongrel "$LINENO" "google/protobuf/stubs/common.h" "ac_cv_header_google_protobuf_stubs_common_h" "$ac_includes_default" +if test "x$ac_cv_header_google_protobuf_stubs_common_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_GOOGLE_PROTOBUF_STUBS_COMMON_H 1 +_ACEOF + tr_PROTOBUF="yes" +else + tr_PROTOBUF="no" +fi + +done + + +PROTOBUF_LIBS="" + +if test "x$tr_PROTOBUF" = xyes; then + + if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_protobuf" = xyes; then + tr_library_found=no + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking protobuf" >&5 +$as_echo_n "checking protobuf... " >&6; } + + tr_library="" + + for tr_path in $LDFLAGS; do + case $tr_path in + -L*) + path=`echo $tr_path | sed -e 's:^-L::'` + if test -f "$path/libprotobuf.a"; then + tr_library="$path/libprotobuf.a" + fi + ;; + esac + done + + + if test "x$tr_library" != x; then + PROTOBUF_LIBS="$tr_library $PROTOBUF_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tr_library" >&5 +$as_echo "$tr_library" >&6; } + tr_library_found=yes + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + else + tr_library_found=yes + + as_ac_Lib=`$as_echo "ac_cv_lib_protobuf_google::protobuf::ShutdownProtobufLibrary()" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for google::protobuf::ShutdownProtobufLibrary() in -lprotobuf" >&5 +$as_echo_n "checking for google::protobuf::ShutdownProtobufLibrary() in -lprotobuf... " >&6; } +if eval \${$as_ac_Lib+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS + LIBS="-lprotobuf $LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include + +int +main () +{ + +google::protobuf::ShutdownProtobufLibrary() + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + eval "$as_ac_Lib=yes" +else + eval "$as_ac_Lib=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$ac_check_lib_save_LIBS +fi +eval ac_res=\$$as_ac_Lib + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + if test `eval 'as_val=${'$as_ac_Lib'};$as_echo "$as_val"'` = yes; then : + PROTOBUF_LIBS="-lprotobuf $PROTOBUF_LIBS" +else + tr_library_found=no +fi + fi + + tr_PROTOBUF=$tr_library_found +fi + +if test "x$tr_PROTOBUF" = xyes; then + + if test "x$tr_static_protobuf" = xyes -a "xPROTOBUF_LIBS" != x; then + tr_libs="" + tr_special="" + + for tr_lib in $PROTOBUF_LIBS; do + case $tr_lib in + -lpthread|-lm|-lrt) + tr_special="$tr_special $tr_lib" + ;; + + -l*) + tr_libs="$tr_libs $tr_lib" + ;; + + *) + tr_libs="$tr_libs $tr_lib" + ;; + esac + done + + PROTOBUF_LIBS="$STATIC_LIBS $tr_libs $DYNAMIC_LIBS $tr_special" + fi + +else + as_fn_error $? "Please install Google's protocol buffers from http://code.google.com/p/protobuf/" "$LINENO" 5 +fi + + +# Extract the first word of "protoc", so it can be a program name with args. +set dummy protoc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PROTOBUF_PROTOC+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PROTOBUF_PROTOC in + [\\/]* | ?:[\\/]*) + ac_cv_path_PROTOBUF_PROTOC="$PROTOBUF_PROTOC" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_path_PROTOBUF_PROTOC="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +PROTOBUF_PROTOC=$ac_cv_path_PROTOBUF_PROTOC +if test -n "$PROTOBUF_PROTOC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PROTOBUF_PROTOC" >&5 +$as_echo "$PROTOBUF_PROTOC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + +if test "x$PROTOBUF_PROTOC" = x; then + as_fn_error $? "Please install Google's protocol buffers from http://code.google.com/p/protobuf/" "$LINENO" 5 +fi + + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +main () { + long sdnhg36ed = GOOGLE_PROTOBUF_VERSION ; +} + +_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking PROTOBUF version" >&5 +$as_echo_n "checking PROTOBUF version... " >&6; } +eval "$ac_cpp conftest.$ac_ext" | fgrep "long sdnhg36ed" | awk '{m1 = int($4 / 1000000); m2 = int($4 / 1000) % 1000; m3 = ($4 % 1000); print m1 "." m2 "." m3}' > conftest.output +TRI_PROTOBUF_VERSION=`cat conftest.output` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_PROTOBUF_VERSION" >&5 +$as_echo "$TRI_PROTOBUF_VERSION" >&6; } +rm -f conftest* + +PROTOBUF_CPPFLAGS="${PROTOBUF_CPPFLAGS} -DTRI_PROTOBUF_VERSION='\"${TRI_PROTOBUF_VERSION}\"'" + + +LIBS="$SAVE_LIBS" +LDFLAGS="$SAVE_LDFLAGS" +CPPFLAGS="$SAVE_CPPFLAGS" + + + + + + + + +LIB_INFO="$LIB_INFO|PROTOBUF: system version" +LIB_INFO="$LIB_INFO|PROTOBUF VERSION: ${TRI_PROTOBUF_VERSION}" +LIB_INFO="$LIB_INFO|PROTOBUF COMPILER: ${PROTOBUF_PROTOC}" + +LIB_INFO="$LIB_INFO|PROTOBUF_CPPFLAGS: ${PROTOBUF_CPPFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LDFLAGS: ${PROTOBUF_LDFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LIBS: ${PROTOBUF_LIBS}" + +LIB_INFO="$LIB_INFO|." + + + +fi + + +if test "x$tr_ALL_IN_ONE_V8" = xyes; then + + +V8_CPPFLAGS="-I${srcdir}/3rdParty/V8/include" +V8_LDFLAGS="" +V8_TARGET="native" + +if test x$tr_DARWIN == xyes; then + if test "x$tr_BITS" == x64; then + V8_TARGET="x64.release" + else + V8_TARGET="ia32.release" + fi + + V8_LIBS="${srcdir}/3rdParty/V8/out/$V8_TARGET/libv8_base.a ${srcdir}/3rdParty/V8/out/$V8_TARGET/libv8_nosnapshot.a" +else + if test "x$tr_BITS" == x64; then + V8_TARGET="x64.release" + else + V8_TARGET="ia32.release" + fi + + V8_LIBS="${srcdir}/3rdParty/V8/out/$V8_TARGET/obj.target/tools/gyp/libv8_base.a ${srcdir}/3rdParty/V8/out/$V8_TARGET/obj.target/tools/gyp/libv8_nosnapshot.a" +fi + +TRI_V8_VERSION="3.9.4" + + + + + + + +V8_CPPFLAGS="${V8_CPPFLAGS} -DTRI_V8_VERSION='\"${TRI_V8_VERSION}\"'" + + +LIB_INFO="$LIB_INFO|V8: 3rdParty version" +LIB_INFO="$LIB_INFO|V8 VERSION: ${TRI_V8_VERSION}" + +LIB_INFO="$LIB_INFO|V8_TARGET: ${V8_TARGET}" + +LIB_INFO="$LIB_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" +LIB_INFO="$LIB_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" +LIB_INFO="$LIB_INFO|V8_LIBS: ${V8_LIBS}" + + + + +else + + +V8_CPPFLAGS="" +V8_LDFLAGS="" +V8_LIBS="" + + +# Check whether --with-v8 was given. +if test "${with_v8+set}" = set; then : + withval=$with_v8; V8_CPPFLAGS="-I$withval/include" + V8_LDFLAGS="-L$withval/lib" + V8_LIB_PATH="$withval/lib" + V8="$withval" + +fi + + + +# Check whether --with-v8-lib was given. +if test "${with_v8_lib+set}" = set; then : + withval=$with_v8_lib; V8_LDFLAGS="-L$withval" + V8_LIB_PATH="$withval" + +fi + + + + if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then + # Check whether --enable-static-v8 was given. +if test "${enable_static_v8+set}" = set; then : + enableval=$enable_static_v8; tr_static_v8="$enableval" +else + tr_static_v8="no" + +fi + + else + tr_static_v8="no" + fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: CHECKING FOR GOOGLE V8" >&5 +$as_echo "$as_me: CHECKING FOR GOOGLE V8" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: --------------------------------------------------------------------------------" >&5 +$as_echo "$as_me: --------------------------------------------------------------------------------" >&6;} + + +SAVE_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $V8_CPPFLAGS" + +SAVE_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $V8_LDFLAGS" + +SAVE_LIBS="$LIBS" + + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + +tr_V8="yes" + + as_ac_Lib=`$as_echo "ac_cv_lib_v8_v8::V8::GetVersion()" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for v8::V8::GetVersion() in -lv8" >&5 +$as_echo_n "checking for v8::V8::GetVersion() in -lv8... " >&6; } +if eval \${$as_ac_Lib+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS + LIBS="-lv8 $LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include + +int +main () +{ + +v8::V8::GetVersion() + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + eval "$as_ac_Lib=yes" +else + eval "$as_ac_Lib=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$ac_check_lib_save_LIBS +fi +eval ac_res=\$$as_ac_Lib + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + if test `eval 'as_val=${'$as_ac_Lib'};$as_echo "$as_val"'` = yes; then : + V8_LIBS="-lv8" +else + tr_V8="no" +fi + +if test "x$tr_V8" != xyes; then + as_fn_error $? "Please install the V8 library from Google" "$LINENO" 5 +fi + +if test "x$V8_CPPFLAGS" != x; then + + if test "xV8_CPPFLAGS" != "x"; then + if test "x$INCPREFIX" != "x-I"; then + V8_CPPFLAGS=`echo $V8_CPPFLAGS | sed -e "s:-I:$INCPREFIX:g"` + fi + fi + +fi + + + + + + + +LIBS="$LIBS ${V8_LIBS}" +LDFLAGS="$LDFLAGS ${V8_LDFLAGS}" +CPPFLAGS="$CPPFLAGS ${V8_CPPFLAGS}" + + +if test "$cross_compiling" = yes; then : + TRI_V8_VERSION="V8" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot compute V8 version number when cross compiling" >&5 +$as_echo "$as_me: WARNING: cannot compute V8 version number when cross compiling" >&2;} +else + if test "x`type -t ac_fn_cxx_try_run`" = "xfunction" 2> /dev/null; then + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include + +int main (int, char**) { + printf("%s\n", v8::V8::GetVersion()); +} + +_ACEOF + + if test "x$V8_LIB_PATH" != x; then + if test "$USE_DYLD" = yes; then + save_DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH" + DYLD_LIBRARY_PATH="$V8_LIB_PATH:$DYLD_LIBRARY_PATH" + else + save_LD_LIBRARY_PATH="$LD_LIBRARY_PATH" + DYLD_LIBRARY_PATH="$V8_LIB_PATH:$LD_LIBRARY_PATH" + fi + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking V8 version" >&5 +$as_echo_n "checking V8 version... " >&6; } + + if ac_fn_cxx_try_run "$LINENO" >conftest.output; then + TRI_V8_VERSION=`cat conftest.output` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TRI_V8_VERSION" >&5 +$as_echo "$TRI_V8_VERSION" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +$as_echo "failed" >&6; } + as_fn_error $? "Please install the V8 library from Google" "$LINENO" 5 + fi + + rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.beam conftest.$ac_ext conftest.output + + if test "x$V8_LIB_PATH" != x; then + if test "$USE_DYLD" = yes; then + DYLD_LIBRARY_PATH="$save_DYLD_LIBRARY_PATH" + else + LD_LIBRARY_PATH="$save_LD_LIBRARY_PATH" + fi + fi + else + TRI_V8_VERSION="V8" + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot compute V8 version number, old autoconf version" >&5 +$as_echo "$as_me: WARNING: cannot compute V8 version number, old autoconf version" >&2;} + fi +fi + + +LIBS="$SAVE_LIBS" +LDFLAGS="$SAVE_LDFLAGS" +CPPFLAGS="$SAVE_CPPFLAGS" + +V8_CPPFLAGS="${V8_CPPFLAGS} -DTRI_V8_VERSION='\"${TRI_V8_VERSION}\"'" + + +LIB_INFO="$LIB_INFO|V8: system version" +LIB_INFO="$LIB_INFO|V8 VERSION: ${TRI_V8_VERSION}" + +LIB_INFO="$LIB_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" +LIB_INFO="$LIB_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" +LIB_INFO="$LIB_INFO|V8_LIBS: ${V8_LIBS}" + + + + +fi + + + + +# Check whether --enable-zeromq was given. +if test "${enable_zeromq+set}" = set; then : + enableval=$enable_zeromq; tr_ZEROMQ="${enableval:-yes}" +else + tr_ZEROMQ=no + +fi + + +if test "x$tr_ZEROMQ" = "xyes"; then + ZEROMQ_CPPFLAGS="-I${srcdir}/3rdParty/zeromq-2.2.0/BUILD/include -I${srcdir}/3rdParty/protobuf-2.4.1/src" + ZEROMQ_LDFLAGS="" + ZEROMQ_LIBS="${srcdir}/3rdParty/zeromq-2.2.0/BUILD/lib${tr_BITS}/libczmq.a ${srcdir}/3rdParty/zeromq-2.2.0/BUILD/lib${tr_BITS}/libzmq.a ${srcdir}/3rdParty/protobuf-2.4.1/src/.libs/libprotobuf.a -luuid -lrt" + + TRI_ZEROMQ_VERSION="2.2.0" + + +cat >>confdefs.h <<_ACEOF +#define TRI_ENABLE_ZEROMQ 1 +_ACEOF + +fi + + if test "x$tr_ZEROMQ" = "xyes"; then + ENABLE_ZEROMQ_TRUE= + ENABLE_ZEROMQ_FALSE='#' +else + ENABLE_ZEROMQ_TRUE='#' + ENABLE_ZEROMQ_FALSE= +fi + + + + + + + +ZEROMQ_CPPFLAGS="${ZEROMQ_CPPFLAGS} -DTRI_ZEROMQ_VERSION='\"${TRI_ZEROMQ_VERSION}\"'" + + +if test "x$tr_ZEROMQ" = "xyes"; then + BASIC_INFO="$BASIC_INFO|ZEROMQ: enabled" + + LIB_INFO="$LIB_INFO|ZEROMQ VERSION: ${TRI_ZEROMQ_VERSION}" + + FLAG_INFO="$FLAG_INFO|ZEROMQ_CPPFLAGS: ${ZEROMQ_CPPFLAGS}" + FLAG_INFO="$FLAG_INFO|ZEROMQ_LDFLAGS: ${ZEROMQ_LDFLAGS}" + FLAG_INFO="$FLAG_INFO|ZEROMQ_LIBS: ${ZEROMQ_LIBS}" + FLAG_INFO="$FLAG_INFO|." +else + BASIC_INFO="$BASIC_INFO|ZEROMQ: disabled" +fi + + + + + BUILD_H="\$(top_srcdir)/build.h" -ac_config_files="$ac_config_files Makefile Doxygen/arango.template" +ac_config_files="$ac_config_files Makefile Documentation/arango.template" ac_config_headers="$ac_config_headers config/config.h lib/BasicsC/local-configuration.h" @@ -9836,54 +9956,38 @@ LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs -if test -z "${ENABLE_BISON_TRUE}" && test -z "${ENABLE_BISON_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_BISON\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_FLEX_TRUE}" && test -z "${ENABLE_FLEX_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_FLEX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${ENABLE_ERRORS_DEPENDENCY_TRUE}" && test -z "${ENABLE_ERRORS_DEPENDENCY_FALSE}"; then as_fn_error $? "conditional \"ENABLE_ERRORS_DEPENDENCY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_ALL_IN_ONE_TRUE}" && test -z "${ENABLE_ALL_IN_ONE_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_ALL_IN_ONE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_3RD_PARTY_BOOST_TRUE}" && test -z "${ENABLE_3RD_PARTY_BOOST_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_3RD_PARTY_BOOST\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${ENABLE_BOOST_TEST_TRUE}" && test -z "${ENABLE_BOOST_TEST_FALSE}"; then as_fn_error $? "conditional \"ENABLE_BOOST_TEST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_ALL_IN_ONE_LIBEV_TRUE}" && test -z "${ENABLE_ALL_IN_ONE_LIBEV_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_ALL_IN_ONE_LIBEV\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${ENABLE_ALL_IN_ONE_PROTOBUF_TRUE}" && test -z "${ENABLE_ALL_IN_ONE_PROTOBUF_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_ALL_IN_ONE_PROTOBUF\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${ENABLE_ALL_IN_ONE_V8_TRUE}" && test -z "${ENABLE_ALL_IN_ONE_V8_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_ALL_IN_ONE_V8\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_INSTALL_DBDIR_TRUE}" && test -z "${ENABLE_INSTALL_DBDIR_FALSE}"; then as_fn_error $? "conditional \"ENABLE_INSTALL_DBDIR\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_RELATIVE_SYSTEM_TRUE}" && test -z "${ENABLE_RELATIVE_SYSTEM_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_RELATIVE_SYSTEM\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_RELATIVE_DEVEL_TRUE}" && test -z "${ENABLE_RELATIVE_DEVEL_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_RELATIVE_DEVEL\" was never defined. +if test -z "${ENABLE_RELATIVE_TRUE}" && test -z "${ENABLE_RELATIVE_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_RELATIVE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_DARWIN_TRUE}" && test -z "${ENABLE_DARWIN_FALSE}"; then as_fn_error $? "conditional \"ENABLE_DARWIN\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 -$as_echo_n "checking that generated files are newer than configure... " >&6; } - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 -$as_echo "done" >&6; } if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' @@ -9908,18 +10012,6 @@ if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_64BIT_TRUE}" && test -z "${ENABLE_64BIT_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_64BIT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_32BIT_TRUE}" && test -z "${ENABLE_32BIT_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_32BIT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_FORCE_32BIT_TRUE}" && test -z "${ENABLE_FORCE_32BIT_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_FORCE_32BIT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${ENABLE_MEMFAIL_TRUE}" && test -z "${ENABLE_MEMFAIL_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MEMFAIL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -9952,12 +10044,16 @@ if test -z "${ENABLE_FLEX_TRUE}" && test -z "${ENABLE_FLEX_FALSE}"; then as_fn_error $? "conditional \"ENABLE_FLEX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_FLEX_TRUE}" && test -z "${ENABLE_FLEX_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_FLEX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_BISON_TRUE}" && test -z "${ENABLE_BISON_FALSE}"; then as_fn_error $? "conditional \"ENABLE_BISON\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_NCURSES_TRUE}" && test -z "${ENABLE_NCURSES_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_NCURSES\" was never defined. +if test -z "${ENABLE_BISON_TRUE}" && test -z "${ENABLE_BISON_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_BISON\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_READLINE_TRUE}" && test -z "${ENABLE_READLINE_FALSE}"; then @@ -9968,14 +10064,6 @@ if test -z "${ENABLE_OPENSSL_TRUE}" && test -z "${ENABLE_OPENSSL_FALSE}"; then as_fn_error $? "conditional \"ENABLE_OPENSSL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_LIBEV_TRUE}" && test -z "${ENABLE_LIBEV_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_LIBEV\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_LIBEV_TRUE}" && test -z "${ENABLE_LIBEV_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_LIBEV\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${ENABLE_MRUBY_TRUE}" && test -z "${ENABLE_MRUBY_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MRUBY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -10282,16 +10370,16 @@ if (echo >conf$$.file) 2>/dev/null; then # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. + # In both cases, we have to default to `cp -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' + as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else - as_ln_s='cp -pR' + as_ln_s='cp -p' fi else - as_ln_s='cp -pR' + as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null @@ -10351,16 +10439,28 @@ else as_mkdir_p=false fi - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in #( + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -10382,7 +10482,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # values after options handling. ac_log=" This file was extended by triAGENS ArangoDB $as_me 1.0.0, which was -generated by GNU Autoconf 2.69. Invocation command line was +generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -10449,10 +10549,10 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ triAGENS ArangoDB config.status 1.0.0 -configured by $0, generated by GNU Autoconf 2.69, +configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" -Copyright (C) 2012 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -10543,7 +10643,7 @@ fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then - set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' @@ -10579,7 +10679,7 @@ do case $ac_config_target in "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "Doxygen/arango.template") CONFIG_FILES="$CONFIG_FILES Doxygen/arango.template" ;; + "Documentation/arango.template") CONFIG_FILES="$CONFIG_FILES Documentation/arango.template" ;; "config/config.h") CONFIG_HEADERS="$CONFIG_HEADERS config/config.h" ;; "lib/BasicsC/local-configuration.h") CONFIG_HEADERS="$CONFIG_HEADERS lib/BasicsC/local-configuration.h" ;; @@ -11191,7 +11291,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;} # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but + # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. @@ -11225,19 +11325,21 @@ $as_echo X"$mf" | continue fi # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. + # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || diff --git a/configure.ac b/configure.ac index 836680385e..ed4cf61dc4 100644 --- a/configure.ac +++ b/configure.ac @@ -15,34 +15,6 @@ dnl ---------------------------------------------------------------------------- AC_CONFIG_AUX_DIR([config]) AC_CONFIG_MACRO_DIR([m4]) -dnl ============================================================================ -dnl --SECTION-- SCANNER & PARSER -dnl ============================================================================ - -dnl ---------------------------------------------------------------------------- -dnl BISON -dnl ---------------------------------------------------------------------------- - -AC_ARG_ENABLE(bison, - AS_HELP_STRING([--enable-bison], [enable BISON]), - [tr_BISON="${enableval:-yes}"], - [tr_BISON=no] -) - -AM_CONDITIONAL(ENABLE_BISON, test "x$tr_BISON" = xyes) - -dnl ---------------------------------------------------------------------------- -dnl FLEX -dnl ---------------------------------------------------------------------------- - -AC_ARG_ENABLE(flex, - AS_HELP_STRING([--enable-flex], [enable FLEX]), - [tr_FLEX="${enableval:-yes}"], - [tr_FLEX=no] -) - -AM_CONDITIONAL(ENABLE_FLEX, test "x$tr_FLEX" = xyes) - dnl ---------------------------------------------------------------------------- dnl ERRORS dnl ---------------------------------------------------------------------------- @@ -56,33 +28,9 @@ AC_ARG_ENABLE(errors-dependency, AM_CONDITIONAL(ENABLE_ERRORS_DEPENDENCY, test "x$tr_ERRORS_DEPENDENCY" = xyes) dnl ============================================================================ -dnl --SECTION-- LIBRARIES +dnl --SECTION-- 3RD-PARTY LIBRARIES dnl ============================================================================ -dnl ---------------------------------------------------------------------------- -dnl ALL-IN-ONE -dnl ---------------------------------------------------------------------------- - -AC_ARG_ENABLE(all-in-one, - AS_HELP_STRING([--enable-all-in-one], [use supplied V8 and LIBEV from 3rdParty directory]), - [ALL_IN_ONE_ENABLE="${enableval:-yes}"], - [ALL_IN_ONE_ENABLE=yes] -) - -AM_CONDITIONAL(ENABLE_ALL_IN_ONE, test "x$ALL_IN_ONE_ENABLE" = xyes) - -dnl ---------------------------------------------------------------------------- -dnl BOOST -dnl ---------------------------------------------------------------------------- - -AC_ARG_ENABLE(3rd-party-boost, - AS_HELP_STRING([--enable-3rd-party-boost], [use supplied BOOST from 3rdParty directory]), - [tr_3RD_PARTY_BOOST="${enableval:-yes}"], - [tr_3RD_PARTY_BOOST=yes] -) - -AM_CONDITIONAL(ENABLE_3RD_PARTY_BOOST, test "x$tr_3RD_PARTY_BOOST" = xyes) - dnl ---------------------------------------------------------------------------- dnl BOOST TEST dnl ---------------------------------------------------------------------------- @@ -94,6 +42,52 @@ AC_ARG_WITH([boost-test], AM_CONDITIONAL(ENABLE_BOOST_TEST, test "x$tr_BOOST_TEST" = xyes) +dnl ---------------------------------------------------------------------------- +dnl BOOST +dnl ---------------------------------------------------------------------------- + +AC_ARG_ENABLE(all-in-one-boost, + AS_HELP_STRING([--enable-all-in-one-boost], [use supplied BOOST from 3rdParty directory]), + [tr_ALL_IN_ONE_BOOST="${enableval:-yes}"], + [tr_ALL_IN_ONE_BOOST=yes] +) + +dnl ---------------------------------------------------------------------------- +dnl LIBEV +dnl ---------------------------------------------------------------------------- + +AC_ARG_ENABLE(all-in-one-libev, + AS_HELP_STRING([--enable-all-in-one-libev], [use supplied LIBEV from 3rdParty directory]), + [tr_ALL_IN_ONE_LIBEV="${enableval:-yes}"], + [tr_ALL_IN_ONE_LIBEV=yes] +) + +AM_CONDITIONAL(ENABLE_ALL_IN_ONE_LIBEV, test "x$tr_ALL_IN_ONE_LIBEV" = xyes) + +dnl ---------------------------------------------------------------------------- +dnl PROTOBUF +dnl ---------------------------------------------------------------------------- + +AC_ARG_ENABLE(all-in-one-protobuf, + AS_HELP_STRING([--enable-all-in-one-protobuf], [use supplied PROTOBUF from 3rdParty directory]), + [tr_ALL_IN_ONE_PROTOBUF="${enableval:-yes}"], + [tr_ALL_IN_ONE_PROTOBUF=yes] +) + +AM_CONDITIONAL(ENABLE_ALL_IN_ONE_PROTOBUF, test "x$tr_ALL_IN_ONE_PROTOBUF" = xyes) + +dnl ---------------------------------------------------------------------------- +dnl V8 +dnl ---------------------------------------------------------------------------- + +AC_ARG_ENABLE(all-in-one-v8, + AS_HELP_STRING([--enable-all-in-one-v8], [use supplied V8 from 3rdParty directory]), + [tr_ALL_IN_ONE_V8="${enableval:-yes}"], + [tr_ALL_IN_ONE_V8=yes] +) + +AM_CONDITIONAL(ENABLE_ALL_IN_ONE_V8, test "x$tr_ALL_IN_ONE_V8" = xyes) + dnl ============================================================================ dnl --SECTION-- OPTIONS dnl ============================================================================ @@ -115,23 +109,18 @@ dnl RELATIVE PATH dnl ---------------------------------------------------------------------------- AC_ARG_ENABLE(relative, - AS_HELP_STRING([--enable-relative], [all path are relative to the binary (yes/no/devel [default])]), - [tr_RELATIVE="${enableval:-devel}"], + AS_HELP_STRING([--enable-relative], [all path are relative to the binary (default: no)]), + [tr_RELATIVE="${enableval:-yes}"], [tr_RELATIVE=no] ) -if test "x$tr_RELATIVE" = xyes; then - AC_DEFINE_UNQUOTED(TRI_ENABLE_RELATIVE_SYSTEM, 1, [true if relative system paths should be used]) -else -if test "x$tr_RELATIVE" = xdevel; then - AC_DEFINE_UNQUOTED(TRI_ENABLE_RELATIVE_DEVEL, 1, [true if relative development paths should be used]) -else - tr_RELATIVE=no -fi -fi +AM_CONDITIONAL(ENABLE_RELATIVE, test "x$tr_RELATIVE" = xyes) -AM_CONDITIONAL(ENABLE_RELATIVE_SYSTEM, test "x$tr_RELATIVE" = xyes) -AM_CONDITIONAL(ENABLE_RELATIVE_DEVEL, test "x$tr_RELATIVE" = xdevel) +if test "x$tr_RELATIVE" != xno; then + BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: enabled" +else + BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: disabled" +fi dnl ============================================================================ dnl --SECTION-- CONFIGURATION @@ -141,35 +130,14 @@ m4_include([m4/configure.basics]) AC_PROG_RANLIB m4_include([m4/configure.static]) -m4_include([m4/configure.32bit]) m4_include([m4/configure.memory]) m4_include([m4/configure.logging]) m4_include([m4/configure.largefile]) m4_include([m4/configure.threads]) m4_include([m4/configure.dot]) m4_include([m4/configure.coverage]) - -if test "x$tr_FLEX" = xyes; then - m4_include([m4/configure.flex]) - BASIC_INFO="$BASIC_INFO|FLEX: enabled" -else - BASIC_INFO="$BASIC_INFO|FLEX: disabled" -fi - -if test "x$tr_BISON" = xyes; then - m4_include([m4/configure.bison]) - BASIC_INFO="$BASIC_INFO|BISON: enabled" -else - BASIC_INFO="$BASIC_INFO|BISON: disabled" -fi - -if test "x$tr_RELATIVE" != xno; then - BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: $tr_RELATIVE" -else - BASIC_INFO="$BASIC_INFO|RELATIVE PATHS: disabled" -fi - -FLAG_INFO="$FLAG_INFO|." +m4_include([m4/configure.flex]) +m4_include([m4/configure.bison]) dnl ============================================================================ dnl --SECTION-- EXTERNAL LIBRARIES @@ -200,27 +168,23 @@ dnl ---------------------------------------------------------------------------- m4_include([m4/external.openssl]) dnl ---------------------------------------------------------------------------- -dnl LIBEV +dnl BOOST dnl ---------------------------------------------------------------------------- -if test "x$ALL_IN_ONE_ENABLE" = xyes; then - m4_include([m4/all-in-one.libev]) - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-LIBEV: enabled" +if test "x$tr_ALL_IN_ONE_BOOST" = xyes; then + m4_include([m4/all-in-one.boost]) else - m4_include([m4/external.libev]) - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-LIBEV: disabled" + m4_include([m4/external.boost]) fi dnl ---------------------------------------------------------------------------- -dnl V8 +dnl LIBEV dnl ---------------------------------------------------------------------------- -if test "x$ALL_IN_ONE_ENABLE" = xyes; then - m4_include([m4/all-in-one.v8]) - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-V8: enabled" +if test "x$tr_ALL_IN_ONE_LIBEV" = xyes; then + m4_include([m4/all-in-one.libev]) else - m4_include([m4/external.v8]) - BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-V8: disabled" + m4_include([m4/external.libev]) fi dnl ---------------------------------------------------------------------------- @@ -233,7 +197,21 @@ dnl ---------------------------------------------------------------------------- dnl PROTOBUF dnl ---------------------------------------------------------------------------- -m4_include([m4/all-in-one.protobuf]) +if test "x$tr_ALL_IN_ONE_PROTOBUF" = xyes; then + m4_include([m4/all-in-one.protobuf]) +else + m4_include([m4/external.protobuf]) +fi + +dnl ---------------------------------------------------------------------------- +dnl V8 +dnl ---------------------------------------------------------------------------- + +if test "x$tr_ALL_IN_ONE_V8" = xyes; then + m4_include([m4/all-in-one.v8]) +else + m4_include([m4/external.v8]) +fi dnl ---------------------------------------------------------------------------- dnl ZEROMQ @@ -241,18 +219,6 @@ dnl ---------------------------------------------------------------------------- m4_include([m4/all-in-one.zeromq]) -dnl ---------------------------------------------------------------------------- -dnl BOOST -dnl ---------------------------------------------------------------------------- - -if test "x$tr_3RD_PARTY_BOOST" = xyes; then - m4_include([m4/all-in-one.boost]) - BASIC_INFO="$BASIC_INFO|3RD-PARTY-BOOST: enabled" -else - m4_include([m4/external.boost]) - BASIC_INFO="$BASIC_INFO|3RD-PARTY-BOOST: disabled" -fi - dnl ============================================================================ dnl --SECTION-- GENERATE FILES dnl ============================================================================ @@ -260,7 +226,7 @@ dnl ============================================================================ BUILD_H="\$(top_srcdir)/build.h" AC_SUBST(BUILD_H) -AC_CONFIG_FILES([Makefile Doxygen/arango.template]) +AC_CONFIG_FILES([Makefile Documentation/arango.template]) AC_CONFIG_HEADER([config/config.h lib/BasicsC/local-configuration.h]) AC_OUTPUT diff --git a/etc/relative/arangod.conf b/etc/relative/arangod.conf new file mode 100644 index 0000000000..570cdfdb44 --- /dev/null +++ b/etc/relative/arangod.conf @@ -0,0 +1,26 @@ +[database] +# directory= /var/arangodb +# maximal-journal-size = 1200000 +# remove-on-drop = true + +[server] +admin-directory= ./html/admin +disable-admin-interface = no +disable-authentication = yes +endpoint = tcp://localhost:8529 +threads = 5 + +[scheduler] +threads = 3 + +[javascript] +action-directory = ./js/actions/system +modules-path = ./js/server/modules;./js/common/modules + +[ruby] +action-directory = ./mr/actions/system +modules-path = ./mr/server/modules;./mr/common/modules + +[log] +level = info +severity = human diff --git a/etc/relative/arangosh.conf b/etc/relative/arangosh.conf new file mode 100644 index 0000000000..3668d48d26 --- /dev/null +++ b/etc/relative/arangosh.conf @@ -0,0 +1,2 @@ +[javascript] +modules-path = ./js/client/modules;./js/common/modules diff --git a/m4/Makefile.javascript b/js/Makefile.javascript similarity index 100% rename from m4/Makefile.javascript rename to js/Makefile.javascript diff --git a/js/client/client.js b/js/client/client.js index 8eaec871f7..2fe4a43458 100644 --- a/js/client/client.js +++ b/js/client/client.js @@ -91,7 +91,7 @@ function ArangoError (error) { ArangoError.prototype.toString = function() { var result = ""; - if (typeof(internal.COLOR_BRIGHT) !== "undefined") { + if (internal.COLOR_OUTPUT) { result = internal.COLOR_BRIGHT + "Error: " + internal.COLOR_OUTPUT_RESET; } else { @@ -252,15 +252,12 @@ ModuleCache["/arangosh"] = new Module("/arangosh"); function print_plain (data) { var internal = require("internal"); + var p = internal.PRETTY_PRINT; internal.PRETTY_PRINT = false; - var c = undefined; - - if (typeof(internal.COLOR_OUTPUT) !== "undefined") { - c = internal.COLOR_OUTPUT; - internal.COLOR_OUTPUT = undefined; - } + var c = internal.COLOR_OUTPUT; + internal.COLOR_OUTPUT = false; try { internal.print(data); @@ -330,14 +327,16 @@ function start_color_print (color) { var internal = require("internal"); if (typeof(color) === "string") { - internal.COLOR_OUTPUT = color; + internal.COLOR_OUTPUT_DEFAULT = color; } else { - internal.COLOR_OUTPUT = internal.COLOR_BRIGHT; + internal.COLOR_OUTPUT_DEFAULT = internal.COLOR_BRIGHT; } + internal.COLOR_OUTPUT = true; + internal.print("start " - + internal.COLOR_OUTPUT + + internal.COLOR_OUTPUT_DEFAULT + "color" + internal.COLOR_OUTPUT_RESET + " printing"); @@ -351,7 +350,7 @@ function stop_color_print () { var internal = require("internal"); internal.print("stop color printing"); - internal.COLOR_OUTPUT = undefined; + internal.COLOR_OUTPUT = false; } //////////////////////////////////////////////////////////////////////////////// diff --git a/js/client/js-client.h b/js/client/js-client.h index e62ec64ed3..906fae7080 100644 --- a/js/client/js-client.h +++ b/js/client/js-client.h @@ -92,7 +92,7 @@ static string JS_client_client = " ArangoError.prototype.toString = function() {\n" " var result = \"\";\n" "\n" - " if (typeof(internal.COLOR_BRIGHT) !== \"undefined\") {\n" + " if (internal.COLOR_OUTPUT) {\n" " result = internal.COLOR_BRIGHT + \"Error: \" + internal.COLOR_OUTPUT_RESET;\n" " }\n" " else {\n" @@ -253,15 +253,12 @@ static string JS_client_client = "\n" "function print_plain (data) {\n" " var internal = require(\"internal\");\n" + "\n" " var p = internal.PRETTY_PRINT;\n" " internal.PRETTY_PRINT = false;\n" "\n" - " var c = undefined;\n" - "\n" - " if (typeof(internal.COLOR_OUTPUT) !== \"undefined\") {\n" - " c = internal.COLOR_OUTPUT;\n" - " internal.COLOR_OUTPUT = undefined;\n" - " }\n" + " var c = internal.COLOR_OUTPUT;\n" + " internal.COLOR_OUTPUT = false;\n" " \n" " try {\n" " internal.print(data);\n" @@ -331,14 +328,16 @@ static string JS_client_client = " var internal = require(\"internal\");\n" "\n" " if (typeof(color) === \"string\") {\n" - " internal.COLOR_OUTPUT = color;\n" + " internal.COLOR_OUTPUT_DEFAULT = color;\n" " }\n" " else {\n" - " internal.COLOR_OUTPUT = internal.COLOR_BRIGHT;\n" + " internal.COLOR_OUTPUT_DEFAULT = internal.COLOR_BRIGHT;\n" " }\n" "\n" + " internal.COLOR_OUTPUT = true;\n" + "\n" " internal.print(\"start \"\n" - " + internal.COLOR_OUTPUT \n" + " + internal.COLOR_OUTPUT_DEFAULT\n" " + \"color\" \n" " + internal.COLOR_OUTPUT_RESET\n" " + \" printing\");\n" @@ -352,7 +351,7 @@ static string JS_client_client = " var internal = require(\"internal\");\n" "\n" " internal.print(\"stop color printing\");\n" - " internal.COLOR_OUTPUT = undefined;\n" + " internal.COLOR_OUTPUT = false;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" diff --git a/js/common/bootstrap/js-modules.h b/js/common/bootstrap/js-modules.h index e7f80e470a..a05cdac11f 100644 --- a/js/common/bootstrap/js-modules.h +++ b/js/common/bootstrap/js-modules.h @@ -296,7 +296,8 @@ static string JS_common_bootstrap_modules = "\n" " internal.ARANGO_QUIET = false;\n" "\n" - " internal.COLOR_OUTPUT = undefined;\n" + " internal.COLOR_OUTPUT = false;\n" + " internal.COLOR_OUTPUT_DEFAULT = \"\";\n" " internal.COLOR_OUTPUT_RESET = \"\";\n" " internal.COLOR_BRIGHT = \"\";\n" "\n" @@ -326,6 +327,26 @@ static string JS_common_bootstrap_modules = " internal.PRETTY_PRINT = PRETTY_PRINT;\n" " }\n" "\n" + " if (internal.COLOR_OUTPUT) {\n" + " internal.COLOR_OUTPUT_DEFAULT = internal.COLOR_BRIGHT;\n" + "\n" + " internal.COLOR_BLACK = COLOR_BLACK;\n" + " internal.COLOR_BOLD_BLACK = COLOR_BOLD_BLACK;\n" + " internal.COLOR_BLINK = COLOR_BLINK;\n" + " internal.COLOR_BLUE = COLOR_BLUE;\n" + " internal.COLOR_BOLD_BLUE = COLOR_BOLD_BLUE;\n" + " internal.COLOR_BRIGHT = COLOR_BRIGHT;\n" + " internal.COLOR_GREEN = COLOR_GREEN;\n" + " internal.COLOR_BOLD_GREEN = COLOR_BOLD_GREEN;\n" + " internal.COLOR_RED = COLOR_RED;\n" + " internal.COLOR_BOLD_RED = COLOR_BOLD_RED;\n" + " internal.COLOR_WHITE = COLOR_WHITE;\n" + " internal.COLOR_BOLD_WHITE = COLOR_BOLD_WHITE;\n" + " internal.COLOR_YELLOW = COLOR_YELLOW;\n" + " internal.COLOR_BOLD_YELLOW = COLOR_BOLD_YELLOW;\n" + " internal.COLOR_OUTPUT_RESET = COLOR_OUTPUT_RESET;\n" + " }\n" + "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief reads a file\n" "////////////////////////////////////////////////////////////////////////////////\n" diff --git a/js/common/bootstrap/js-print.h b/js/common/bootstrap/js-print.h index a33904850c..836f9c7aa6 100644 --- a/js/common/bootstrap/js-print.h +++ b/js/common/bootstrap/js-print.h @@ -81,7 +81,7 @@ static string JS_common_bootstrap_print = " }\n" " }\n" "\n" - " if (typeof(internal.COLOR_OUTPUT) !== \"undefined\") {\n" + " if (internal.COLOR_OUTPUT) {\n" " internal.output(internal.COLOR_OUTPUT_RESET);\n" " }\n" "\n" @@ -271,8 +271,8 @@ static string JS_common_bootstrap_print = "\n" " internal.printIndent(newLevel);\n" "\n" - " if (typeof(internal.COLOR_OUTPUT) !== \"undefined\") {\n" - " internal.output(internal.COLOR_OUTPUT,\n" + " if (internal.COLOR_OUTPUT) {\n" + " internal.output(internal.COLOR_OUTPUT_DEFAULT,\n" " k,\n" " internal.COLOR_OUTPUT_RESET, \n" " \" : \");\n" diff --git a/js/common/bootstrap/modules.js b/js/common/bootstrap/modules.js index 0f553d1166..c7ef42dd40 100644 --- a/js/common/bootstrap/modules.js +++ b/js/common/bootstrap/modules.js @@ -295,7 +295,8 @@ ModuleCache["/internal"] = new Module("/internal"); internal.ARANGO_QUIET = false; - internal.COLOR_OUTPUT = undefined; + internal.COLOR_OUTPUT = false; + internal.COLOR_OUTPUT_DEFAULT = ""; internal.COLOR_OUTPUT_RESET = ""; internal.COLOR_BRIGHT = ""; @@ -325,6 +326,26 @@ ModuleCache["/internal"] = new Module("/internal"); internal.PRETTY_PRINT = PRETTY_PRINT; } + if (internal.COLOR_OUTPUT) { + internal.COLOR_OUTPUT_DEFAULT = internal.COLOR_BRIGHT; + + internal.COLOR_BLACK = COLOR_BLACK; + internal.COLOR_BOLD_BLACK = COLOR_BOLD_BLACK; + internal.COLOR_BLINK = COLOR_BLINK; + internal.COLOR_BLUE = COLOR_BLUE; + internal.COLOR_BOLD_BLUE = COLOR_BOLD_BLUE; + internal.COLOR_BRIGHT = COLOR_BRIGHT; + internal.COLOR_GREEN = COLOR_GREEN; + internal.COLOR_BOLD_GREEN = COLOR_BOLD_GREEN; + internal.COLOR_RED = COLOR_RED; + internal.COLOR_BOLD_RED = COLOR_BOLD_RED; + internal.COLOR_WHITE = COLOR_WHITE; + internal.COLOR_BOLD_WHITE = COLOR_BOLD_WHITE; + internal.COLOR_YELLOW = COLOR_YELLOW; + internal.COLOR_BOLD_YELLOW = COLOR_BOLD_YELLOW; + internal.COLOR_OUTPUT_RESET = COLOR_OUTPUT_RESET; + } + //////////////////////////////////////////////////////////////////////////////// /// @brief reads a file //////////////////////////////////////////////////////////////////////////////// diff --git a/js/common/bootstrap/print.js b/js/common/bootstrap/print.js index ac52a84f84..dc019d17d2 100644 --- a/js/common/bootstrap/print.js +++ b/js/common/bootstrap/print.js @@ -80,7 +80,7 @@ } } - if (typeof(internal.COLOR_OUTPUT) !== "undefined") { + if (internal.COLOR_OUTPUT) { internal.output(internal.COLOR_OUTPUT_RESET); } @@ -270,8 +270,8 @@ internal.printIndent(newLevel); - if (typeof(internal.COLOR_OUTPUT) !== "undefined") { - internal.output(internal.COLOR_OUTPUT, + if (internal.COLOR_OUTPUT) { + internal.output(internal.COLOR_OUTPUT_DEFAULT, k, internal.COLOR_OUTPUT_RESET, " : "); diff --git a/lib/Admin/ApplicationAdminServer.cpp b/lib/Admin/ApplicationAdminServer.cpp index 6a8219c852..8cfcd8a0d0 100644 --- a/lib/Admin/ApplicationAdminServer.cpp +++ b/lib/Admin/ApplicationAdminServer.cpp @@ -169,7 +169,7 @@ void ApplicationAdminServer::allowVersion (string name, string version) { void ApplicationAdminServer::addBasicHandlers (HttpHandlerFactory* factory, string const& prefix) { if (_allowVersion) { - if (!_versionDataDirect) { + if (! _versionDataDirect) { _versionDataDirect = new RestVersionHandler::version_options_t; _versionDataDirect->_name = _name; _versionDataDirect->_version = _version; @@ -180,7 +180,7 @@ void ApplicationAdminServer::addBasicHandlers (HttpHandlerFactory* factory, stri RestHandlerCreator::createData, (void*) _versionDataDirect); - if (!_versionDataQueued) { + if (! _versionDataQueued) { _versionDataQueued = new RestVersionHandler::version_options_t; _versionDataQueued->_name = _name; _versionDataQueued->_version = _version; @@ -215,16 +215,14 @@ void ApplicationAdminServer::addHandlers (HttpHandlerFactory* factory, string co // ............................................................................. if (_allowAdminDirectory) { - if (! _adminDirectory.empty()) { - LOGGER_INFO << "using JavaScript front-end files stored at '" << _adminDirectory << "'"; + LOGGER_INFO << "using JavaScript front-end files stored at '" << _adminDirectory << "'"; - reinterpret_cast(_pathOptions)->path = _adminDirectory; - reinterpret_cast(_pathOptions)->contentType = "text/plain"; - reinterpret_cast(_pathOptions)->allowSymbolicLink = false; - reinterpret_cast(_pathOptions)->defaultFile = "index.html"; + reinterpret_cast(_pathOptions)->path = _adminDirectory; + reinterpret_cast(_pathOptions)->contentType = "text/plain"; + reinterpret_cast(_pathOptions)->allowSymbolicLink = false; + reinterpret_cast(_pathOptions)->defaultFile = "index.html"; - factory->addPrefixHandler(prefix + "/html", RestHandlerCreator::createData, _pathOptions); - } + factory->addPrefixHandler(prefix + "/html", RestHandlerCreator::createData, _pathOptions); } // ............................................................................. @@ -251,6 +249,10 @@ void ApplicationAdminServer::addHandlers (HttpHandlerFactory* factory, string co /// @{ //////////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////////// +/// {@inheritDoc} +//////////////////////////////////////////////////////////////////////////////// + void ApplicationAdminServer::setupOptions (map& options) { if (_allowAdminDirectory) { options[ApplicationServer::OPTIONS_SERVER + ":help-admin"] @@ -265,6 +267,19 @@ void ApplicationAdminServer::setupOptions (map&); +//////////////////////////////////////////////////////////////////////////////// +/// {@inheritDoc} +//////////////////////////////////////////////////////////////////////////////// + + bool prepare (); + //////////////////////////////////////////////////////////////////////////////// /// @} //////////////////////////////////////////////////////////////////////////////// diff --git a/lib/ApplicationServer/ApplicationServer.cpp b/lib/ApplicationServer/ApplicationServer.cpp index 483e2ac708..b879b2ee8a 100644 --- a/lib/ApplicationServer/ApplicationServer.cpp +++ b/lib/ApplicationServer/ApplicationServer.cpp @@ -313,7 +313,7 @@ bool ApplicationServer::parse (int argc, bool ok = _options.parse(_description, argc, argv); if (! ok) { - cout << _options.lastError() << endl; + cout << "cannot parse command line: " << _options.lastError() << endl; return false; } @@ -814,7 +814,7 @@ bool ApplicationServer::readConfigurationFile () { // but for some reason can not be parsed. Best to report an error. if (! ok) { - cout << _options.lastError() << endl; + cout << "cannot parse config file '" << _configFile << "': " << _options.lastError() << endl; } return ok; @@ -847,7 +847,7 @@ bool ApplicationServer::readConfigurationFile () { // but for some reason can not be parsed. Best to report an error. if (! ok) { - cout << _options.lastError() << endl; + cout << "cannot parse config file '" << homeDir << "': " << _options.lastError() << endl; } return ok; @@ -891,7 +891,7 @@ bool ApplicationServer::readConfigurationFile () { // but for some reason can not be parsed. Best to report an error. if (! ok) { - cout << _options.lastError() << endl; + cout << "cannot parse config file '" << sysDir << "': " << _options.lastError() << endl; } return ok; @@ -921,7 +921,7 @@ bool ApplicationServer::readConfigurationFile () { // but for some reason can not be parsed. Best to report an error. if (! ok) { - cout << _options.lastError() << endl; + cout << "cannot parse config file '" << sysDir << "': " << _options.lastError() << endl; } return ok; diff --git a/lib/BasicsC/local-configuration.h.in b/lib/BasicsC/local-configuration.h.in index 68f524ff87..f74c3587ae 100644 --- a/lib/BasicsC/local-configuration.h.in +++ b/lib/BasicsC/local-configuration.h.in @@ -41,18 +41,6 @@ /// @{ //////////////////////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////////////////////// -/// @brief enable relative system paths -//////////////////////////////////////////////////////////////////////////////// - -#undef TRI_ENABLE_RELATIVE_SYSTEM - -//////////////////////////////////////////////////////////////////////////////// -/// @brief enable relative development paths -//////////////////////////////////////////////////////////////////////////////// - -#undef TRI_ENABLE_RELATIVE_DEVEL - //////////////////////////////////////////////////////////////////////////////// /// @brief enable calculation of timing figures //////////////////////////////////////////////////////////////////////////////// diff --git a/lib/BasicsC/operating-system.h b/lib/BasicsC/operating-system.h index fc45dcd048..797b3c8063 100644 --- a/lib/BasicsC/operating-system.h +++ b/lib/BasicsC/operating-system.h @@ -86,6 +86,7 @@ #define TRI_HAVE_LINUX_SOCKETS 1 #define TRI_HAVE_MACOS_SPIN 1 +#define TRI_HAVE_NCURSES 1 #define TRI_HAVE_POSIX_THREADS 1 #define TRI_HAVE_GETPPID 1 @@ -147,6 +148,7 @@ #define TRI_HAVE_UNISTD_H 1 #define TRI_HAVE_LINUX_SOCKETS 1 +#define TRI_HAVE_NCURSES 1 #define TRI_HAVE_POSIX_SPIN 1 #define TRI_HAVE_POSIX_THREADS 1 @@ -220,6 +222,7 @@ #define TRI_HAVE_LINUX_PROC 1 #define TRI_HAVE_LINUX_SOCKETS 1 +#define TRI_HAVE_NCURSES 1 #define TRI_HAVE_POSIX_SPIN 1 #define TRI_HAVE_POSIX_THREADS 1 diff --git a/m4/Makefile.bison b/lib/Makefile.bison similarity index 79% rename from m4/Makefile.bison rename to lib/Makefile.bison index db2ca46556..db75210b1a 100644 --- a/m4/Makefile.bison +++ b/lib/Makefile.bison @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- PARSER -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief built sources @@ -10,6 +10,12 @@ BUILT_SOURCES += $(BISON_FILES) $(BISONXX_FILES) +################################################################################ +### @brief CLEANUP +################################################################################ + +CLEANUP += $(BISON_FILES) $(BISONXX_FILES) + ################################################################################ ### @brief BISON ################################################################################ @@ -24,15 +30,9 @@ BUILT_SOURCES += $(BISON_FILES) $(BISONXX_FILES) %.cpp: %.yy @top_srcdir@/config/bison-c++.sh $(BISON) $@ $< -################################################################################ -### @brief CLEANUP -################################################################################ - -CLEANUP += $(BISON_FILES) $(BISONXX_FILES) - -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/m4/Makefile.flex b/lib/Makefile.flex similarity index 79% rename from m4/Makefile.flex rename to lib/Makefile.flex index 66cd89d172..4cd61634b3 100644 --- a/m4/Makefile.flex +++ b/lib/Makefile.flex @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- SCANNER -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief built sources @@ -10,6 +10,12 @@ BUILT_SOURCES += $(FLEX_FILES) $(FLEXXX_FILES) +################################################################################ +### @brief cleanup +################################################################################ + +CLEANUP += $(FLEX_FILES) $(FLEXXX_FILES) + ################################################################################ ### @brief flex ################################################################################ @@ -24,15 +30,9 @@ BUILT_SOURCES += $(FLEX_FILES) $(FLEXXX_FILES) %.cpp: %.ll @top_srcdir@/config/flex-c++.sh $(LEX) $@ $< -################################################################################ -### @brief cleanup -################################################################################ - -CLEANUP += $(FLEX_FILES) $(FLEXXX_FILES) - -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/m4/Makefile.protobuf b/lib/Makefile.protobuf similarity index 71% rename from m4/Makefile.protobuf rename to lib/Makefile.protobuf index 5ce4d39ba5..db7280d6d4 100644 --- a/m4/Makefile.protobuf +++ b/lib/Makefile.protobuf @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- PROTOCOL BUFFERS -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief built sources @@ -10,14 +10,6 @@ BUILT_SOURCES += $(PROTOBUF_FILES) -################################################################################ -### @brief protocol buffers -################################################################################ - -%.pb.cpp: %.proto - @top_srcdir@/3rdParty/protobuf-2.4.1/BUILD/bin/protoc --cpp_out . $< - mv $(addsuffix .cc,$(basename $@)) $@ - ################################################################################ ### @brief cleanup ################################################################################ @@ -25,9 +17,17 @@ BUILT_SOURCES += $(PROTOBUF_FILES) CLEANUP += $(PROTOBUF_FILES) ################################################################################ -## --SECTION-- END-OF-FILE +### @brief protocol buffers ################################################################################ +%.pb.cpp: %.proto + @PROTOBUF_PROTOC@ --cpp_out . $< + mv $(addsuffix .cc,$(basename $@)) $@ + +## ----------------------------------------------------------------------------- +## --SECTION-- END-OF-FILE +## ----------------------------------------------------------------------------- + ## Local Variables: ## mode: outline-minor ## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" diff --git a/m4/all-in-one.boost b/m4/all-in-one.boost index aee8b05387..0c3b57d7cb 100644 --- a/m4/all-in-one.boost +++ b/m4/all-in-one.boost @@ -1,8 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for BOOST support -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- BOOST +dnl ---------------------------------------------------------------------------- BOOST_CPPFLAGS="-I${srcdir}/3rdParty/boost_1_48_0/include" BOOST_LDFLAGS="" @@ -10,9 +10,9 @@ BOOST_LIBS="" TRI_BOOST_VERSION="1.48.0" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(BOOST_CPPFLAGS) AC_SUBST(BOOST_LDFLAGS) @@ -20,16 +20,22 @@ AC_SUBST(BOOST_LIBS) BOOST_CPPFLAGS="${BOOST_CPPFLAGS} -DTRI_BOOST_VERSION='\"${TRI_BOOST_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +LIB_INFO="$LIB_INFO|BOOST: 3rdParty version" LIB_INFO="$LIB_INFO|BOOST VERSION: $TRI_BOOST_VERSION" -FLAG_INFO="$FLAG_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LIBS: ${BOOST_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LIBS: ${BOOST_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/all-in-one.libev b/m4/all-in-one.libev index 31ef0ee4e6..929612ea56 100644 --- a/m4/all-in-one.libev +++ b/m4/all-in-one.libev @@ -1,25 +1,18 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for LIBEV support -dnl ----------------------------------------------------------------------------------------- - -LIBEV_CPPFLAGS="-I${srcdir}/3rdParty/libev" -LIBEV_LDFLAGS="" - -if test "x$tr_BITS" = x64; then - LIBEV_LIBS="${srcdir}/3rdParty/libev/ARCH.x64/.libs/libev.a" -else - LIBEV_LIBS="${srcdir}/3rdParty/libev/ARCH.ia32/.libs/libev.a" -fi +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- LIBEV +dnl ---------------------------------------------------------------------------- TRI_LIBEV_VERSION="4.11" -dnl ----------------------------------------------------------------------------------------- -dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +LIBEV_CPPFLAGS="-I${srcdir}/3rdParty/libev" +LIBEV_LDFLAGS="" +LIBEV_LIBS="${srcdir}/3rdParty/libev/BUILD/.libs/libev.a" -AM_CONDITIONAL(ENABLE_LIBEV, test "xyes" = xyes) +dnl ---------------------------------------------------------------------------- +dnl add substitutions +dnl ---------------------------------------------------------------------------- AC_SUBST(LIBEV_CPPFLAGS) AC_SUBST(LIBEV_LDFLAGS) @@ -27,16 +20,22 @@ AC_SUBST(LIBEV_LIBS) LIBEV_CPPFLAGS="${LIBEV_CPPFLAGS} -DTRI_LIBEV_VERSION='\"${TRI_LIBEV_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +LIB_INFO="$LIB_INFO|LIBEV: 3rdParty version" LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" -FLAG_INFO="$FLAG_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/all-in-one.mruby b/m4/all-in-one.mruby index 9c23ffa541..3d44d925ac 100644 --- a/m4/all-in-one.mruby +++ b/m4/all-in-one.mruby @@ -1,8 +1,12 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for MRUBY support -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- MRUBY +dnl ---------------------------------------------------------------------------- + +MRUBY_CPPFLAGS="" +MRUBY_LDLAGS="" +MRUBY_LIBSLAGS="" AC_ARG_ENABLE(mruby, AS_HELP_STRING([--enable-mruby], [enable MRUBY]), @@ -22,9 +26,9 @@ fi AM_CONDITIONAL(ENABLE_MRUBY, test "x$tr_MRUBY" = "xyes") -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(MRUBY_CPPFLAGS) AC_SUBST(MRUBY_LDFLAGS) @@ -32,23 +36,26 @@ AC_SUBST(MRUBY_LIBS) MRUBY_CPPFLAGS="${MRUBY_CPPFLAGS} -DTRI_MRUBY_VERSION='\"${TRI_MRUBY_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$tr_MRUBY" = "xyes"; then - BASIC_INFO="$BASIC_INFO|MRUBY: enabled" - + LIB_INFO="$LIB_INFO|MRUBY: 3rdParty version" LIB_INFO="$LIB_INFO|MRUBY VERSION: ${TRI_MRUBY_VERSION}" - FLAG_INFO="$FLAG_INFO|MRUBY_CPPFLAGS: ${MRUBY_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|MRUBY_LDFLAGS: ${MRUBY_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|MRUBY_LIBS: ${MRUBY_LIBS}" - FLAG_INFO="$FLAG_INFO|." + LIB_INFO="$LIB_INFO|MRUBY_CPPFLAGS: ${MRUBY_CPPFLAGS}" + LIB_INFO="$LIB_INFO|MRUBY_LDFLAGS: ${MRUBY_LDFLAGS}" + LIB_INFO="$LIB_INFO|MRUBY_LIBS: ${MRUBY_LIBS}" else - BASIC_INFO="$BASIC_INFO|MRUBY: disabled" + LIB_INFO="$LIB_INFO|MRUBY: disabled" fi +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/all-in-one.protobuf b/m4/all-in-one.protobuf index c5e8a50d11..e6eb90f25e 100644 --- a/m4/all-in-one.protobuf +++ b/m4/all-in-one.protobuf @@ -1,37 +1,43 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for PROTOBUF support -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- PROTOBUF +dnl ---------------------------------------------------------------------------- PROTOBUF_CPPFLAGS="-I${srcdir}/3rdParty/protobuf-2.4.1/src" PROTOBUF_LDFLAGS="" PROTOBUF_LIBS="${srcdir}/3rdParty/protobuf-2.4.1/src/.libs/libprotobuf.a" +PROTOBUF_PROTOC="${srcdir}/3rdParty/protobuf-2.4.1/BUILD/bin/protoc" TRI_PROTOBUF_VERSION="2.4.1" -dnl ----------------------------------------------------------------------------------------- +PROTOBUF_CPPFLAGS="${PROTOBUF_CPPFLAGS} -DTRI_PROTOBUF_VERSION='\"${TRI_PROTOBUF_VERSION}\"'" + +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(PROTOBUF_CPPFLAGS) AC_SUBST(PROTOBUF_LDFLAGS) AC_SUBST(PROTOBUF_LIBS) -PROTOBUF_CPPFLAGS="${PROTOBUF_CPPFLAGS} -DTRI_PROTOBUF_VERSION='\"${TRI_PROTOBUF_VERSION}\"'" - -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- - -BASIC_INFO="$BASIC_INFO|ALL-IN-ONE-PROTOBUF: enabled" +dnl ---------------------------------------------------------------------------- +LIB_INFO="$LIB_INFO|PROTOBUF: 3rdParty" LIB_INFO="$LIB_INFO|PROTOBUF VERSION: ${TRI_PROTOBUF_VERSION}" +LIB_INFO="$LIB_INFO|PROTOBUF COMPILER: ${PROTOBUF_PROTOC}" -FLAG_INFO="$FLAG_INFO|PROTOBUF_CPPFLAGS: ${PROTOBUF_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|PROTOBUF_LDFLAGS: ${PROTOBUF_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|PROTOBUF_LIBS: ${PROTOBUF_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|PROTOBUF_CPPFLAGS: ${PROTOBUF_CPPFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LDFLAGS: ${PROTOBUF_LDFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LIBS: ${PROTOBUF_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/all-in-one.v8 b/m4/all-in-one.v8 index cc076dd1b0..29009f21d0 100644 --- a/m4/all-in-one.v8 +++ b/m4/all-in-one.v8 @@ -1,8 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for V8 support -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- V8 +dnl ---------------------------------------------------------------------------- V8_CPPFLAGS="-I${srcdir}/3rdParty/V8/include" V8_LDFLAGS="" @@ -28,9 +28,9 @@ fi TRI_V8_VERSION="3.9.4" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(V8_CPPFLAGS) AC_SUBST(V8_LDFLAGS) @@ -39,18 +39,24 @@ AC_SUBST(V8_TARGET) V8_CPPFLAGS="${V8_CPPFLAGS} -DTRI_V8_VERSION='\"${TRI_V8_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +LIB_INFO="$LIB_INFO|V8: 3rdParty version" LIB_INFO="$LIB_INFO|V8 VERSION: ${TRI_V8_VERSION}" -FLAG_INFO="$FLAG_INFO|V8_TARGET: ${V8_TARGET}" -FLAG_INFO="$FLAG_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LIBS: ${V8_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|V8_TARGET: ${V8_TARGET}" +LIB_INFO="$LIB_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" +LIB_INFO="$LIB_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" +LIB_INFO="$LIB_INFO|V8_LIBS: ${V8_LIBS}" + +dnl LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/configure.32bit b/m4/configure.32bit deleted file mode 100644 index 248a80bdc7..0000000000 --- a/m4/configure.32bit +++ /dev/null @@ -1,46 +0,0 @@ -dnl -*- mode: Autoconf; -*- - -dnl ----------------------------------------------------------------------------------------- -dnl option for 32bit/64bit compile -dnl ----------------------------------------------------------------------------------------- - -tr_BITS=32 -tr_BITS_32=no - -case $target_cpu in - x86_64*) - tr_BITS=64 - ;; -esac - -if test "x$tr_BITS" == "x64"; then - AC_ARG_ENABLE(32bit, - AS_HELP_STRING([--enable-32bit], [force 32bit compilation (default: no)]), - - if test "x$enableval" = xyes; then - CXXFLAGS="$CXXFLAGS -m32" - CFLAGS="$CFLAGS -m32" - LDFLAGS="$LDFLAGS -m32" - - tr_BITS=32 - tr_BITS_32=yes - fi, - ) -fi - -AM_CONDITIONAL(ENABLE_64BIT, test "x$tr_BITS" == x64) -AM_CONDITIONAL(ENABLE_32BIT, test "x$tr_BITS" == x32) -AM_CONDITIONAL(ENABLE_FORCE_32BIT, test "x$tr_BITS_32" = xyes) - -TRI_BITS="$tr_BITS" -AC_SUBST(TRI_BITS) - -dnl ----------------------------------------------------------------------------------------- -dnl informational output -dnl ----------------------------------------------------------------------------------------- - -if test "x$tr_32BIT" = xyes; then - BASIC_INFO="$BASIC_INFO|32bit: enabled" -else - BASIC_INFO="$BASIC_INFO|64bit: enabled" -fi diff --git a/m4/configure.basics b/m4/configure.basics index f12341a4f9..5d674d2f53 100644 --- a/m4/configure.basics +++ b/m4/configure.basics @@ -1,8 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks build system -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_MSG_NOTICE([................................................................................]) AC_MSG_NOTICE([CHECKING BUILD SYSTEM]) @@ -12,6 +12,10 @@ AC_CANONICAL_BUILD AC_CANONICAL_HOST AC_CANONICAL_TARGET +dnl ---------------------------------------------------------------------------- +dnl check for MacOS X +dnl ---------------------------------------------------------------------------- + tr_DARWIN="no" case $target in @@ -22,18 +26,33 @@ esac AM_CONDITIONAL(ENABLE_DARWIN, test "x$tr_DARWIN" = xyes) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl bits +dnl ---------------------------------------------------------------------------- + +tr_BITS=32 + +case $target_cpu in + x86_64*) + tr_BITS=64 + ;; +esac + +TRI_BITS="$tr_BITS" +AC_SUBST(TRI_BITS) + +dnl ---------------------------------------------------------------------------- dnl use automake to generate Makfile.in -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AM_INIT_AUTOMAKE([foreign subdir-objects]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks if the CC compiler supports an option dnl dnl usage: TRI_TRY_CC_OPTION(flag, action-if-ok, action-if-no-ok) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TRI_TRY_CC_OPTION], [AC_MSG_CHECKING([$1 for $CC]) @@ -43,11 +62,11 @@ AC_DEFUN([TRI_TRY_CC_OPTION], AC_MSG_RESULT([no]) [$3])]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks if the C++ compiler supports an option dnl dnl usage: TRI_TRY_CXX_OPTION(flag, action-if-ok, action-if-no-ok) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TRI_TRY_CXX_OPTION], [AC_MSG_CHECKING([$1] for $CXX) @@ -57,9 +76,9 @@ AC_DEFUN([TRI_TRY_CXX_OPTION], AC_MSG_RESULT([no]) [$3])]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks for compiler and basic settings -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_MSG_NOTICE([................................................................................]) AC_MSG_NOTICE([CHECKING C/C++ COMPILER AND LINKER]) @@ -92,9 +111,7 @@ AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET -CPPFLAGS="${CPPFLAGS}" -CFLAGS="${CFLAGS}" -CXXFLAGS="${CXXFLAGS}" +LDFLAGS=-g AC_ARG_ENABLE(error-on-warning, AS_HELP_STRING([--enable-error-on-warning], [treat warnings as errors (default: no)]), @@ -148,11 +165,9 @@ if test x$GCC == xyes; then CXXFLAGS="${GXXSTD} ${CXXFLAGS} ${WALLCXX}" fi -AC_SEARCH_LIBS([sincos], [m]) - -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl option for gnu style include -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_ARG_ENABLE(isystem, AS_HELP_STRING([--enable-isystem], [enables the use of -isystem instead of -I for system headers (default: no)]), @@ -170,9 +185,9 @@ if test "x$tr_ISYSTEM" = "xno"; then INCPREFIX="-I" fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks for linker settings -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- case $target in *-apple-darwin*) @@ -190,9 +205,9 @@ case $target in ;; esac -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl generate correct include, either -I oder -isystem -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TR_INCLUDE],[ if test "x$1" != "x"; then @@ -202,13 +217,13 @@ AC_DEFUN([TR_INCLUDE],[ fi ]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl find absolute path for library dnl dnl usage: TR_LIBRARY(library name) dnl dnl returns: tr_library -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TR_LIBRARY],[ tr_library="" @@ -225,11 +240,11 @@ AC_DEFUN([TR_LIBRARY],[ done ]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl static enable library dnl dnl usage: TR_STATIC_ENABLE(static-if-name) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TR_STATIC_ENABLE],[ if test "x$STATIC_LIBS" != x -o "x$ABS_STATIC_LIBS" = xyes; then @@ -243,7 +258,7 @@ AC_DEFUN([TR_STATIC_ENABLE],[ fi ]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl find static or shared C library dnl dnl usage: TR_FIND_C_LIBRARY(static-if-name, @@ -252,7 +267,7 @@ dnl lib environment, dnl function to check) dnl dnl returns: tr_library_found -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TR_FIND_C_LIBRARY],[ if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_$1" = xyes; then @@ -278,7 +293,7 @@ AC_DEFUN([TR_FIND_C_LIBRARY],[ fi ]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl find static or shared C++ library dnl dnl usage: TR_FIND_CXX_LIBRARY(static-if-name, @@ -288,7 +303,7 @@ dnl include header, dnl body source code) dnl dnl returns: tr_library_found -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TR_FIND_CXX_LIBRARY],[ if test "x$ABS_STATIC_LIBS" = xyes -a "x$tr_static_$1" = xyes; then @@ -315,13 +330,13 @@ AC_DEFUN([TR_FIND_CXX_LIBRARY],[ fi ]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl find absolute path for libraries dnl -dnl usage: TR_FIND_CXX_LIBRARY(lib environment) +dnl usage: TR_ABSOLUTE_LIBRARIES(lib environment) dnl dnl returns: tr_libraries_found -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_DEFUN([TR_ABSOLUTE_LIBRARIES], [if test "x$tr_static_$1" = xyes -a "x$ABS_STATIC_LIBS" = xyes; then diff --git a/m4/configure.bison b/m4/configure.bison index 0269383c52..97498aabb0 100644 --- a/m4/configure.bison +++ b/m4/configure.bison @@ -1,41 +1,62 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- BISON +dnl ---------------------------------------------------------------------------- + +AC_ARG_ENABLE(bison, + AS_HELP_STRING([--enable-bison], [enable BISON support (default: no)]), + [tr_BISON="${enableval:-yes}"], + [tr_BISON=no] +) + +AM_CONDITIONAL(ENABLE_BISON, test "x$tr_BISON" = xyes) + +dnl ---------------------------------------------------------------------------- dnl check for bison -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- -AC_MSG_NOTICE([................................................................................]) -AC_MSG_NOTICE([CHECKING BISON]) -AC_MSG_NOTICE([................................................................................]) +if test "x$tr_BISON" = xyes; then + AC_MSG_NOTICE([................................................................................]) + AC_MSG_NOTICE([CHECKING BISON]) + AC_MSG_NOTICE([................................................................................]) -AC_CHECK_PROG(BISON, bison, bison) + AC_CHECK_PROG(BISON, bison, bison) -tr_bison_usable=no + tr_bison_usable=no -if test "x$BISON" != x -a "x$BISON" != "x:"; then - AC_MSG_CHECKING([if bison supports required features]) + if test "x$BISON" != x -a "x$BISON" != "x:"; then + AC_MSG_CHECKING([if bison supports required features]) - [tr_bison_version=`$BISON --version | head -1 | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'`] + [tr_bison_version=`$BISON --version | head -1 | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'`] - if test "$tr_bison_version" -ge 20401; then - tr_bison_usable=yes + if test "$tr_bison_version" -ge 20401; then + tr_bison_usable=yes + fi + + AC_MSG_RESULT($tr_bison_usable) fi - AC_MSG_RESULT($tr_bison_usable) + if test "x$tr_bison_usable" != "xyes"; then + AC_MSG_ERROR([Please install bison version 2.4.1 or higher from http://ftp.gnu.org/gnu/bison/]) + fi + + AC_MSG_CHECKING([BISON version]) + TRI_BISON_VERSION=`$BISON --version | head -1` + AC_MSG_RESULT([$TRI_BISON_VERSION]) + + AM_CONDITIONAL(ENABLE_BISON, test "x$tr_bison_usable" = xyes) + + BASIC_INFO="$BASIC_INFO|BISON: ${TRI_BISON_VERSION}" +else + BASIC_INFO="$BASIC_INFO|BISON: disabled" fi -if test "x$tr_bison_usable" != "xyes"; then - AC_MSG_ERROR([Please install bison version 2.4.1 or higher from http://ftp.gnu.org/gnu/bison/]) -fi +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- -AC_MSG_CHECKING([BISON version]) -TRI_BISON_VERSION=`$BISON --version | head -1` -AC_MSG_RESULT([$TRI_BISON_VERSION]) - -AM_CONDITIONAL(ENABLE_BISON, test "x$tr_bison_usable" = xyes) - -dnl ----------------------------------------------------------------------------------------- -dnl informational output -dnl ----------------------------------------------------------------------------------------- - -LIB_INFO="$LIB_INFO|BISON VERSION: ${TRI_BISON_VERSION}" +dnl Local Variables: +dnl mode: outline-minor +dnl outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" +dnl End: diff --git a/m4/configure.dot b/m4/configure.dot index b2db0d7100..51bef4de7e 100644 --- a/m4/configure.dot +++ b/m4/configure.dot @@ -1,14 +1,18 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl checks for dot -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- DOT +dnl ---------------------------------------------------------------------------- AC_ARG_WITH(dot, AS_HELP_STRING([--with-dot=DIR], [where the dot executable is located]), tr_DOT_PATH="$withval", tr_DOT_PATH="$PATH") +dnl ---------------------------------------------------------------------------- +dnl checks for dot +dnl ---------------------------------------------------------------------------- + AC_PATH_PROG([DOT_PATH], [dot], [], [$tr_DOT_PATH]) if test -n "$DOT_PATH"; then @@ -21,12 +25,21 @@ fi AC_SUBST(HAVE_DOT) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$HAVE_DOT" = xyes; then - TOOL_INFO="$TOOL_INFO|DOT support: enabled ($DOT_PATH)" + BASIC_INFO="$BASIC_INFO|DOT support: enabled ($DOT_PATH)" else - TOOL_INFO="$TOOL_INFO|DOT support: disabled" + BASIC_INFO="$BASIC_INFO|DOT support: disabled" fi + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- + +dnl Local Variables: +dnl mode: outline-minor +dnl outline-regexp: "^\\(dnl --SECTION--\\)" +dnl End: diff --git a/m4/configure.flex b/m4/configure.flex index 5441f3f578..d1402e6b77 100644 --- a/m4/configure.flex +++ b/m4/configure.flex @@ -1,41 +1,62 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- FLEX +dnl ---------------------------------------------------------------------------- + +AC_ARG_ENABLE(flex, + AS_HELP_STRING([--enable-flex], [enable FLEX support (default: no)]), + [tr_FLEX="${enableval:-yes}"], + [tr_FLEX="no"] +) + +AM_CONDITIONAL(ENABLE_FLEX, test "x$tr_FLEX" = xyes) + +dnl ---------------------------------------------------------------------------- dnl check for flex -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- -AC_MSG_NOTICE([................................................................................]) -AC_MSG_NOTICE([CHECKING FLEX]) -AC_MSG_NOTICE([................................................................................]) +if test "x$tr_FLEX" = xyes; then + AC_MSG_NOTICE([................................................................................]) + AC_MSG_NOTICE([CHECKING FLEX]) + AC_MSG_NOTICE([................................................................................]) -AC_PROG_LEX + AC_PROG_LEX -tr_flex_usable=no + tr_flex_usable=no -if test "x$LEX" != x -a "x$LEX" != "x:"; then - AC_MSG_CHECKING([if flex supports required features]) + if test "x$LEX" != x -a "x$LEX" != "x:"; then + AC_MSG_CHECKING([if flex supports required features]) - [tr_flex_version=`$LEX --version | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'`] + [tr_flex_version=`$LEX --version | sed -e 's:^[^0-9]*::' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}'`] - if test "$tr_flex_version" -ge 20535; then - tr_flex_usable=yes + if test "$tr_flex_version" -ge 20535; then + tr_flex_usable=yes + fi + + AC_MSG_RESULT($tr_flex_usable) fi - AC_MSG_RESULT($tr_flex_usable) + if test "x$tr_flex_usable" != "xyes"; then + AC_MSG_ERROR([Please install flex version 2.5.35 or higher from http://ftp.gnu.org/gnu/flex/]) + fi + + AC_MSG_CHECKING([FLEX version]) + TRI_FLEX_VERSION=`$LEX --version` + AC_MSG_RESULT([$TRI_FLEX_VERSION]) + + AM_CONDITIONAL(ENABLE_FLEX, test "x$tr_flex_usable" = xyes) + + BASIC_INFO="$BASIC_INFO|FLEX: ${TRI_FLEX_VERSION}" +else + BASIC_INFO="$BASIC_INFO|FLEX: disabled" fi -if test "x$tr_flex_usable" != "xyes"; then - AC_MSG_ERROR([Please install flex version 2.5.35 or higher from http://ftp.gnu.org/gnu/flex/]) -fi +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- -AC_MSG_CHECKING([FLEX version]) -TRI_FLEX_VERSION=`$LEX --version` -AC_MSG_RESULT([$TRI_FLEX_VERSION]) - -AM_CONDITIONAL(ENABLE_FLEX, test "x$tr_flex_usable" = xyes) - -dnl ----------------------------------------------------------------------------------------- -dnl informational output -dnl ----------------------------------------------------------------------------------------- - -LIB_INFO="$LIB_INFO|FLEX VERSION: ${TRI_FLEX_VERSION}" +dnl Local Variables: +dnl mode: outline-minor +dnl outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" +dnl End: diff --git a/m4/external.boost b/m4/external.boost index a1b9dc7b08..e6d5e36289 100644 --- a/m4/external.boost +++ b/m4/external.boost @@ -1,13 +1,17 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl check for boost headers and libraries -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- BOOST +dnl ---------------------------------------------------------------------------- AC_MSG_NOTICE([--------------------------------------------------------------------------------]) AC_MSG_NOTICE([CHECKING FOR BOOST]) AC_MSG_NOTICE([--------------------------------------------------------------------------------]) +dnl ---------------------------------------------------------------------------- +dnl check for boost headers and libraries +dnl ---------------------------------------------------------------------------- + AC_LANG(C++) AC_LINK_IFELSE([AC_LANG_PROGRAM()]) # workaround for a bug in older autoconf @@ -19,9 +23,9 @@ else tr_BOOST="yes" fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl guess boost library suffix -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- BOOST_SUFFIX="" @@ -35,23 +39,23 @@ case $target in ;; esac -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl fix include and static libraries -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- TR_INCLUDE([BOOST_CPPFLAGS]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(BOOST_CPPFLAGS) AC_SUBST(BOOST_LDFLAGS) AC_SUBST(BOOST_LIBS) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl save flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- SAVE_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" @@ -59,9 +63,9 @@ CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" SAVE_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl grep boost version number -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -78,25 +82,31 @@ TRI_BOOST_VERSION=`cat conftest.output` AC_MSG_RESULT([$TRI_BOOST_VERSION]) rm -f conftest* -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl restore flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- LDFLAGS="$SAVE_LDFLAGS" CPPFLAGS="$SAVE_CPPFLAGS" BOOST_CPPFLAGS="${BOOST_CPPFLAGS} -DTRI_BOOST_VERSION='\"${TRI_BOOST_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +LIB_INFO="$LIB_INFO|BOOST: system version" LIB_INFO="$LIB_INFO|BOOST VERSION: $TRI_BOOST_VERSION" -FLAG_INFO="$FLAG_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|BOOST_LIBS: ${BOOST_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}" +LIB_INFO="$LIB_INFO|BOOST_LIBS: ${BOOST_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/external.libev b/m4/external.libev index aa004a349a..92a0059988 100644 --- a/m4/external.libev +++ b/m4/external.libev @@ -1,14 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for LIBEV support -dnl ----------------------------------------------------------------------------------------- - -AC_ARG_ENABLE(libev, - AS_HELP_STRING([--enable-libev], [enable libev support (default: yes)]), - tr_LIBEV="$enableval", - tr_LIBEV="maybe" -) +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- LIBEV +dnl ---------------------------------------------------------------------------- AC_ARG_WITH(libev, AS_HELP_STRING([--with-libev=DIR], [where the libev library and includes are located]), @@ -24,14 +18,14 @@ AC_ARG_WITH(libev-lib, TR_STATIC_ENABLE([libev]) -dnl ----------------------------------------------------------------------------------------- -dnl checks for the LIBEV library -dnl ----------------------------------------------------------------------------------------- - AC_MSG_NOTICE([--------------------------------------------------------------------------------]) AC_MSG_NOTICE([CHECKING FOR LIBEV]) AC_MSG_NOTICE([--------------------------------------------------------------------------------]) +dnl ---------------------------------------------------------------------------- +dnl checks for the LIBEV library +dnl ---------------------------------------------------------------------------- + AC_LANG(C) if test "x$LIBEV_CPPFLAGS" != x; then @@ -40,9 +34,9 @@ if test "x$LIBEV_CPPFLAGS" != x; then LIBEV_CPPFLAGS="$LIBEV_CPPFLAGS -DEV_MINIMAL=0" fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl save flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- SAVE_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $LIBEV_CPPFLAGS" @@ -52,46 +46,38 @@ LDFLAGS="$LDFLAGS $LIBEV_LDFLAGS" SAVE_LIBS="$LIBS" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl check for header and library -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- -if test "x$tr_LIBEV" = xyes -o "x$tr_LIBEV" = xmaybe; then - ch_LIBEV="$tr_LIBEV" +ch_LIBEV="$tr_LIBEV" - AC_CHECK_HEADERS(ev.h, [tr_LIBEV="yes"], [tr_LIBEV="no"]) +AC_CHECK_HEADERS(ev.h, [tr_LIBEV="yes"], [tr_LIBEV="no"]) - if test "x$tr_LIBEV" = xyes; then - AC_CHECK_LIB([rt], [clock_gettime], [LIBEV_LIBS="-lrt $LIBEV_LIBS" LIBS="-lrt $LIBS"], ) +if test "x$tr_LIBEV" = xyes; then + AC_CHECK_LIB([rt], [clock_gettime], [LIBEV_LIBS="-lrt $LIBEV_LIBS" LIBS="-lrt $LIBS"], ) - TR_FIND_C_LIBRARY([libev], [ev], [LIBEV_LIBS], [ev_now]) - tr_LIBEV=$tr_library_found - fi - - if test "x$tr_LIBEV" = xyes; then - TR_STATIC_LIBRARY([libev], [LIBEV_LIBS]) - else - if test "x$ch_LIBEV" = xyes; then - AC_MSG_ERROR([Please install libev from http://software.schmorp.de/pkg/libev.html]) - else - AC_MSG_ERROR([Please install libev from http://software.schmorp.de/pkg/libev.html]) - fi - fi + TR_FIND_C_LIBRARY([libev], [ev], [LIBEV_LIBS], [ev_now]) + tr_LIBEV=$tr_library_found fi -dnl ----------------------------------------------------------------------------------------- -dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +if test "x$tr_LIBEV" = xyes; then + TR_STATIC_LIBRARY([libev], [LIBEV_LIBS]) +else + AC_MSG_ERROR([Please install libev from http://software.schmorp.de/pkg/libev.html]) +fi -AM_CONDITIONAL(ENABLE_LIBEV, test "x$tr_LIBEV" = xyes) +dnl ---------------------------------------------------------------------------- +dnl add substitutions +dnl ---------------------------------------------------------------------------- AC_SUBST(LIBEV_CPPFLAGS) AC_SUBST(LIBEV_LDFLAGS) AC_SUBST(LIBEV_LIBS) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl grep libev version number -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -108,9 +94,9 @@ TRI_LIBEV_VERSION=`cat conftest.output` AC_MSG_RESULT([$TRI_LIBEV_VERSION]) rm -f conftest* -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl restore flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- LIBS="$SAVE_LIBS" LDFLAGS="$SAVE_LDFLAGS" @@ -118,20 +104,22 @@ CPPFLAGS="$SAVE_CPPFLAGS" LIBEV_CPPFLAGS="${LIBEV_CPPFLAGS} -DTRI_LIBEV_VERSION='\"${TRI_LIBEV_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- -if test "x$tr_LIBEV" = xyes; then - LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" +LIB_INFO="$LIB_INFO|LIBEV: system version" +LIB_INFO="$LIB_INFO|LIBEV VERSION: ${TRI_LIBEV_VERSION}" - FLAG_INFO="$FLAG_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" - FLAG_INFO="$FLAG_INFO|." -else - LIB_INFO="$LIB_INFO|LIBEV VERSION: disabled" -fi +LIB_INFO="$LIB_INFO|LIBEV_CPPFLAGS: ${LIBEV_CPPFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LDFLAGS: ${LIBEV_LDFLAGS}" +LIB_INFO="$LIB_INFO|LIBEV_LIBS: ${LIBEV_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/external.math b/m4/external.math index 368d1c6d6b..80118db22c 100644 --- a/m4/external.math +++ b/m4/external.math @@ -1,8 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl checks for the MATH library -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- MATH +dnl ---------------------------------------------------------------------------- AC_MSG_NOTICE([--------------------------------------------------------------------------------]) AC_MSG_NOTICE([CHECKING FOR MATH]) @@ -10,23 +10,23 @@ AC_MSG_NOTICE([----------------------------------------------------------------- AC_LANG(C) -dnl ----------------------------------------------------------------------------------------- -dnl check for library -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl checks for the MATH library +dnl ---------------------------------------------------------------------------- AC_CHECK_LIB([m], [sincos], [MATH_LIBS="-lm"], ) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(MATH_CPPFLAGS) AC_SUBST(MATH_LDFLAGS) AC_SUBST(MATH_LIBS) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$tr_MATH" = xyes; then FLAG_INFO="$FLAG_INFO|MATH_CPPFLAGS: ${MATH_CPPFLAGS}" @@ -34,6 +34,10 @@ if test "x$tr_MATH" = xyes; then FLAG_INFO="$FLAG_INFO|MATH_LIBS: ${MATH_LIBS}" fi +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- + dnl Local Variables: dnl mode: outline-minor dnl outline-regexp: "^\\(dnl --SECTION--\\)" diff --git a/m4/external.ncurses b/m4/external.ncurses index 023f8055ec..a64c509e40 100644 --- a/m4/external.ncurses +++ b/m4/external.ncurses @@ -1,115 +1,93 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for ncurses support -dnl ----------------------------------------------------------------------------------------- - -tr_NCURSES_DEFAULT="yes" - -AC_ARG_ENABLE(ncurses, - AS_HELP_STRING([--enable-curses], [enable ncurses support (default: $tr_NCURSES_DEFAULT)]), - tr_NCURSES="$enableval", - tr_NCURSES="$tr_NCURSES_DEFAULT" -) - -TR_STATIC_ENABLE([ncurses]) - -dnl ----------------------------------------------------------------------------------------- -dnl checks for ncurses headers and libraries -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- NCURSES +dnl ---------------------------------------------------------------------------- AC_MSG_NOTICE([--------------------------------------------------------------------------------]) AC_MSG_NOTICE([CHECKING FOR NCURSES]) AC_MSG_NOTICE([--------------------------------------------------------------------------------]) +TR_STATIC_ENABLE([ncurses]) + +dnl ---------------------------------------------------------------------------- +dnl checks for ncurses headers and libraries +dnl ---------------------------------------------------------------------------- + AC_LANG(C) -if test "x$tr_NCURSES" = xyes; then - AC_PATH_PROG(NCURSES_CONFIG, ncurses5-config, [], [$PATH:/usr/sbin/]) +tr_NCURSES="yes" - if test -z "$NCURSES_CONFIG"; then - AC_PATH_PROG(NCURSES_CONFIG, ncurses6-config, [], [$PATH:/usr/sbin/]) - fi +AC_PATH_PROG(NCURSES_CONFIG, ncurses5-config, [], [$PATH:/usr/sbin/]) - if test -n "$NCURSES_CONFIG"; then - NCURSES_LIBS="`$NCURSES_CONFIG --libs`" - NCURSES_CPPFLAGS="`$NCURSES_CONFIG --cflags`" - - TR_ABSOLUTE_LIBRARIES([ncurses], [NCURSES_LIBS]) - - if test "x$tr_libraries_found" != xyes; then - AC_MSG_ERROR([Please install the ncurses library]) - fi - - TRI_NCURSES_VERSION="`$NCURSES_CONFIG --version`" - else - AC_CHECK_HEADERS(curses.h, [tr_NCURSES="yes"], [tr_NCURSES="no"]) - - if test "x$tr_NCURSES" = xyes; then - TR_FIND_C_LIBRARY([ncurses], [ncurses], [NCURSES_LIBS], [setupterm]) - tr_NCURSES=$tr_library_found - fi - - TRI_NCURSES_VERSION="ncurses" - fi +if test -z "$NCURSES_CONFIG"; then + AC_PATH_PROG(NCURSES_CONFIG, ncurses6-config, [], [$PATH:/usr/sbin/]) fi -if test "x$tr_NCURSES" != xyes; then - AC_MSG_ERROR([Please install the ncurses library and header files]) +if test -n "$NCURSES_CONFIG"; then + NCURSES_LIBS="`$NCURSES_CONFIG --libs`" + NCURSES_CPPFLAGS="`$NCURSES_CONFIG --cflags`" + + TR_ABSOLUTE_LIBRARIES([ncurses], [NCURSES_LIBS]) + + if test "x$tr_libraries_found" != xyes; then + tr_NCURSES="no" + fi + + TRI_NCURSES_VERSION="`$NCURSES_CONFIG --version`" +else + TR_FIND_C_LIBRARY([ncurses], [ncurses], [NCURSES_LIBS], [setupterm]) + tr_NCURSES=$tr_library_found + TRI_NCURSES_VERSION="ncurses" fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl check if ncurses headers are present -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- -AC_CHECK_HEADERS(curses.h, [tr_NCURSES="yes"], [tr_NCURSES="no"]) +AC_CHECK_HEADERS(curses.h, [], [tr_NCURSES="no"]) +AC_CHECK_HEADERS(term.h, [], [tr_NCURSES="no"]) + if test "x$tr_NCURSES" != xyes; then AC_MSG_ERROR([Please install the ncurses header files]) fi -AC_CHECK_HEADERS(term.h, [tr_NCURSES="yes"], [tr_NCURSES="no"]) -if test "x$tr_NCURSES" != xyes; then - AC_MSG_ERROR([Please install the ncurses header files]) -fi - - AC_MSG_CHECKING([NCURSES version]) AC_MSG_RESULT([$TRI_NCURSES_VERSION]) -CPPFLAGS="$CPPFLAGS -DHAVE_NCURSES=1" + NCURSES_CPPFLAGS="${NCURSES_CPPFLAGS} -DTRI_NCURSES_VERSION='\"${TRI_NCURSES_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl fix include and static libraries -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- TR_INCLUDE([NCURSES_CPPFLAGS]) TR_STATIC_LIBRARY([ncurses], [NCURSES_LIBS]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- - -AM_CONDITIONAL(ENABLE_NCURSES, test x$tr_NCURSES = xyes) +dnl ---------------------------------------------------------------------------- AC_SUBST(NCURSES_CPPFLAGS) AC_SUBST(NCURSES_LDFLAGS) AC_SUBST(NCURSES_LIBS) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- -if test "x$tr_NCURSES" = xyes; then - LIB_INFO="$LIB_INFO|NCURSES VERSION: ${TRI_NCURSES_VERSION}" +LIB_INFO="$LIB_INFO|NCURSES VERSION: ${TRI_NCURSES_VERSION}" - FLAG_INFO="$FLAG_INFO|NCURSES_CPPFLAGS: ${NCURSES_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|NCURSES_LDFLAGS: ${NCURSES_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|NCURSES_LIBS: ${NCURSES_LIBS}" - FLAG_INFO="$FLAG_INFO|." -else - LIB_INFO="$LIB_INFO|NCURSES VERSION: disabled" -fi +LIB_INFO="$LIB_INFO|NCURSES_CPPLIBS: ${NCURSES_CPPLIBS}" +LIB_INFO="$LIB_INFO|NCURSES_LDLIBS: ${NCURSES_LDLIBS}" +LIB_INFO="$LIB_INFO|NCURSES_LIBS: ${NCURSES_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/external.openssl b/m4/external.openssl index e9b03ba14b..a157bac305 100644 --- a/m4/external.openssl +++ b/m4/external.openssl @@ -148,7 +148,7 @@ main () { _ACEOF AC_MSG_CHECKING([OPENSSL version]) eval "$ac_cpp conftest.$ac_ext" | fgrep "long sdnhg36ed" | awk '{print $4 " " $5 " " $6 " " $7 " " $8 " " $9}' > conftest.output -TRI_OPENSSL_VERSION=`cat conftest.output` +TRI_OPENSSL_VERSION=`head -1 conftest.output | sed -e 's: *$::'` AC_MSG_RESULT([$TRI_OPENSSL_VERSION]) rm -f conftest* @@ -169,14 +169,15 @@ dnl ---------------------------------------------------------------------------- if test "x$tr_OPENSSL" = xyes; then LIB_INFO="$LIB_INFO|OPENSSL VERSION: ${TRI_OPENSSL_VERSION}" - FLAG_INFO="$FLAG_INFO|OPENSSL_CPPFLAGS: ${OPENSSL_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|OPENSSL_LDFLAGS: ${OPENSSL_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|OPENSSL_LIBS: ${OPENSSL_LIBS}" - FLAG_INFO="$FLAG_INFO|." + LIB_INFO="$LIB_INFO|OPENSSL_CPPFLAGS: ${OPENSSL_CPPFLAGS}" + LIB_INFO="$LIB_INFO|OPENSSL_LDFLAGS: ${OPENSSL_LDFLAGS}" + LIB_INFO="$LIB_INFO|OPENSSL_LIBS: ${OPENSSL_LIBS}" else LIB_INFO="$LIB_INFO|OPENSSL VERSION: disabled" fi +LIB_INFO="$LIB_INFO|." + dnl Local Variables: dnl mode: outline-minor dnl outline-regexp: "^\\(dnl --SECTION--\\)" diff --git a/m4/external.protobuf b/m4/external.protobuf new file mode 100644 index 0000000000..591dbb1b60 --- /dev/null +++ b/m4/external.protobuf @@ -0,0 +1,127 @@ +dnl -*- mode: Autoconf; -*- + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- PROTOBUF +dnl ---------------------------------------------------------------------------- + +AC_ARG_WITH(protobuf, + AS_HELP_STRING([--with-protobuf=DIR], [where the protobuf library and includes are located]), + [PROTOBUF_CPPFLAGS="-I$withval/include" + PROTOBUF_LDFLAGS="-L$withval/lib" + PROTOBUF="$withval"] +) + +AC_ARG_WITH(protobuf-lib, + AS_HELP_STRING([--with-protobuf-lib=DIR], [where the protobuf library is located]), + [PROTOBUF_LDFLAGS="-L$withval"] +) + +TR_STATIC_ENABLE([protobuf]) + +AC_MSG_NOTICE([--------------------------------------------------------------------------------]) +AC_MSG_NOTICE([CHECKING FOR PROTOBUF]) +AC_MSG_NOTICE([--------------------------------------------------------------------------------]) + +dnl ---------------------------------------------------------------------------- +dnl save flags +dnl ---------------------------------------------------------------------------- + +SAVE_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $PROTOBUF_CPPFLAGS" + +SAVE_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $PROTOBUF_LDFLAGS" + +SAVE_LIBS="$LIBS" + +dnl ---------------------------------------------------------------------------- +dnl check for header and library +dnl ---------------------------------------------------------------------------- + +AC_LANG(C++) + +AC_CHECK_HEADERS(google/protobuf/stubs/common.h, [tr_PROTOBUF="yes"], [tr_PROTOBUF="no"]) + +PROTOBUF_LIBS="" + +if test "x$tr_PROTOBUF" = xyes; then + TR_FIND_CXX_LIBRARY([protobuf], [protobuf], [PROTOBUF_LIBS], [#include ], [google::protobuf::ShutdownProtobufLibrary()]) + tr_PROTOBUF=$tr_library_found +fi + +if test "x$tr_PROTOBUF" = xyes; then + TR_STATIC_LIBRARY([protobuf], [PROTOBUF_LIBS]) +else + AC_MSG_ERROR([Please install Google's protocol buffers from http://code.google.com/p/protobuf/]) +fi + +dnl ---------------------------------------------------------------------------- +dnl check for protoc +dnl ---------------------------------------------------------------------------- + +AC_PATH_PROG([PROTOBUF_PROTOC], [protoc], [], [$PATH]) + +if test "x$PROTOBUF_PROTOC" = x; then + AC_MSG_ERROR([Please install Google's protocol buffers from http://code.google.com/p/protobuf/]) +fi + +dnl ---------------------------------------------------------------------------- +dnl grep protobuf version number +dnl ---------------------------------------------------------------------------- + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +main () { + long sdnhg36ed = GOOGLE_PROTOBUF_VERSION ; +} + +_ACEOF +AC_MSG_CHECKING([PROTOBUF version]) +eval "$ac_cpp conftest.$ac_ext" | fgrep "long sdnhg36ed" | awk '{m1 = int($4 / 1000000); m2 = int($4 / 1000) % 1000; m3 = ($4 % 1000); print m1 "." m2 "." m3}' > conftest.output +TRI_PROTOBUF_VERSION=`cat conftest.output` +AC_MSG_RESULT([$TRI_PROTOBUF_VERSION]) +rm -f conftest* + +PROTOBUF_CPPFLAGS="${PROTOBUF_CPPFLAGS} -DTRI_PROTOBUF_VERSION='\"${TRI_PROTOBUF_VERSION}\"'" + +dnl ---------------------------------------------------------------------------- +dnl restore flags +dnl ---------------------------------------------------------------------------- + +LIBS="$SAVE_LIBS" +LDFLAGS="$SAVE_LDFLAGS" +CPPFLAGS="$SAVE_CPPFLAGS" + +dnl ---------------------------------------------------------------------------- +dnl add substitutions +dnl ---------------------------------------------------------------------------- + +AC_SUBST(PROTOBUF_PROTOC) +AC_SUBST(PROTOBUF_CPPFLAGS) +AC_SUBST(PROTOBUF_LDFLAGS) +AC_SUBST(PROTOBUF_LIBS) + +dnl ---------------------------------------------------------------------------- +dnl informational output +dnl ---------------------------------------------------------------------------- + +LIB_INFO="$LIB_INFO|PROTOBUF: system version" +LIB_INFO="$LIB_INFO|PROTOBUF VERSION: ${TRI_PROTOBUF_VERSION}" +LIB_INFO="$LIB_INFO|PROTOBUF COMPILER: ${PROTOBUF_PROTOC}" + +LIB_INFO="$LIB_INFO|PROTOBUF_CPPFLAGS: ${PROTOBUF_CPPFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LDFLAGS: ${PROTOBUF_LDFLAGS}" +LIB_INFO="$LIB_INFO|PROTOBUF_LIBS: ${PROTOBUF_LIBS}" + +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- + +dnl Local Variables: +dnl mode: outline-minor +dnl outline-regexp: "^\\(dnl --SECTION--\\)" +dnl End: diff --git a/m4/external.readline b/m4/external.readline index c222b825c8..393391aeb1 100644 --- a/m4/external.readline +++ b/m4/external.readline @@ -1,8 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for READLINE support -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- READLINE +dnl ---------------------------------------------------------------------------- AC_MSG_NOTICE([--------------------------------------------------------------------------------]) AC_MSG_NOTICE([CHECKING FOR READLINE]) @@ -30,17 +30,17 @@ AC_ARG_WITH(readline-lib, TR_STATIC_ENABLE([readline]) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks for the READLINE library -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$READLINE_CPPFLAGS" != x; then TR_INCLUDE([READLINE_CPPFLAGS]) fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl save flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- SAVE_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $READLINE_CPPFLAGS" @@ -50,9 +50,9 @@ LDFLAGS="$LDFLAGS $READLINE_LDFLAGS" SAVE_LIBS="$LIBS" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl check for header and library -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$tr_READLINE" = xyes -o "x$tr_READLINE" = xmaybe; then ch_READLINE="$tr_READLINE" @@ -78,9 +78,9 @@ if test "x$tr_READLINE" = xno; then AC_MSG_ERROR([Please install readline support]) fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl grep readline version number -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$tr_READLINE" = xyes; then @@ -110,19 +110,9 @@ rm -f conftest* fi -dnl ----------------------------------------------------------------------------------------- -dnl add substitutions -dnl ----------------------------------------------------------------------------------------- - -AM_CONDITIONAL(ENABLE_READLINE, test "x$tr_READLINE" = xyes) - -AC_SUBST(READLINE_CPPFLAGS) -AC_SUBST(READLINE_LDFLAGS) -AC_SUBST(READLINE_LIBS) - -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl restore flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- LIBS="$SAVE_LIBS" LDFLAGS="$SAVE_LDFLAGS" @@ -133,21 +123,36 @@ if test "x$tr_READLINE" = xyes; then READLINE_CPPFLAGS="${READLINE_CPPFLAGS} -DTRI_READLINE_VERSION='\"${TRI_READLINE_VERSION}\"'" fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl add substitutions +dnl ---------------------------------------------------------------------------- + +AM_CONDITIONAL(ENABLE_READLINE, test "x$tr_READLINE" = xyes) + +AC_SUBST(READLINE_CPPFLAGS) +AC_SUBST(READLINE_LDFLAGS) +AC_SUBST(READLINE_LIBS) + +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "x$tr_READLINE" = xyes; then LIB_INFO="$LIB_INFO|READLINE VERSION: ${TRI_READLINE_VERSION}" - FLAG_INFO="$FLAG_INFO|READLINE_CPPFLAGS: ${READLINE_CPPFLAGS}" - FLAG_INFO="$FLAG_INFO|READLINE_LDFLAGS: ${READLINE_LDFLAGS}" - FLAG_INFO="$FLAG_INFO|READLINE_LIBS: ${READLINE_LIBS}" - FLAG_INFO="$FLAG_INFO|." + LIB_INFO="$LIB_INFO|READLINE_CPPLIBS: ${READLINE_CPPLIBS}" + LIB_INFO="$LIB_INFO|READLINE_LDLIBS: ${READLINE_LDLIBS}" + LIB_INFO="$LIB_INFO|READLINE_LIBS: ${READLINE_LIBS}" else LIB_INFO="$LIB_INFO|READLINE VERSION: disabled" fi +LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- + dnl Local Variables: dnl mode: outline-minor dnl outline-regexp: "^\\(dnl --SECTION--\\)" diff --git a/m4/external.v8 b/m4/external.v8 index 13d31b4b3f..4b4515cac5 100644 --- a/m4/external.v8 +++ b/m4/external.v8 @@ -1,8 +1,8 @@ dnl -*- mode: Autoconf; -*- -dnl ----------------------------------------------------------------------------------------- -dnl option for V8 support -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- V8 +dnl ---------------------------------------------------------------------------- V8_CPPFLAGS="" V8_LDFLAGS="" @@ -24,9 +24,13 @@ AC_ARG_WITH(v8-lib, TR_STATIC_ENABLE([v8]) -dnl ----------------------------------------------------------------------------------------- +AC_MSG_NOTICE([--------------------------------------------------------------------------------]) +AC_MSG_NOTICE([CHECKING FOR GOOGLE V8]) +AC_MSG_NOTICE([--------------------------------------------------------------------------------]) + +dnl ---------------------------------------------------------------------------- dnl save flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- SAVE_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $V8_CPPFLAGS" @@ -36,13 +40,9 @@ LDFLAGS="$LDFLAGS $V8_LDFLAGS" SAVE_LIBS="$LIBS" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl checks for the V8 library -dnl ----------------------------------------------------------------------------------------- - -AC_MSG_NOTICE([--------------------------------------------------------------------------------]) -AC_MSG_NOTICE([CHECKING FOR GOOGLE V8]) -AC_MSG_NOTICE([--------------------------------------------------------------------------------]) +dnl ---------------------------------------------------------------------------- AC_LANG(C++) @@ -58,25 +58,25 @@ if test "x$V8_CPPFLAGS" != x; then TR_INCLUDE([V8_CPPFLAGS]) fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl add substitutions -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- AC_SUBST(V8_CPPFLAGS) AC_SUBST(V8_LDFLAGS) AC_SUBST(V8_LIBS) -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl save flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- LIBS="$LIBS ${V8_LIBS}" LDFLAGS="$LDFLAGS ${V8_LDFLAGS}" CPPFLAGS="$CPPFLAGS ${V8_CPPFLAGS}" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl grep V8 version number -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- if test "$cross_compiling" = yes; then : TRI_V8_VERSION="V8" @@ -130,9 +130,9 @@ _ACEOF fi fi -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl restore flags -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- LIBS="$SAVE_LIBS" LDFLAGS="$SAVE_LDFLAGS" @@ -140,16 +140,22 @@ CPPFLAGS="$SAVE_CPPFLAGS" V8_CPPFLAGS="${V8_CPPFLAGS} -DTRI_V8_VERSION='\"${TRI_V8_VERSION}\"'" -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- dnl informational output -dnl ----------------------------------------------------------------------------------------- +dnl ---------------------------------------------------------------------------- +LIB_INFO="$LIB_INFO|V8: system version" LIB_INFO="$LIB_INFO|V8 VERSION: ${TRI_V8_VERSION}" -FLAG_INFO="$FLAG_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" -FLAG_INFO="$FLAG_INFO|V8_LIBS: ${V8_LIBS}" -FLAG_INFO="$FLAG_INFO|." +LIB_INFO="$LIB_INFO|V8_CPPFLAGS: ${V8_CPPFLAGS}" +LIB_INFO="$LIB_INFO|V8_LDFLAGS: ${V8_LDFLAGS}" +LIB_INFO="$LIB_INFO|V8_LIBS: ${V8_LIBS}" + +dnl LIB_INFO="$LIB_INFO|." + +dnl ---------------------------------------------------------------------------- +dnl --SECTION-- END-OF-FILE +dnl ---------------------------------------------------------------------------- dnl Local Variables: dnl mode: outline-minor diff --git a/m4/Makefile.mruby b/mr/Makefile.mruby similarity index 100% rename from m4/Makefile.mruby rename to mr/Makefile.mruby diff --git a/bin/arango-dfdb.in b/utils/arango-dfdb.in similarity index 100% rename from bin/arango-dfdb.in rename to utils/arango-dfdb.in diff --git a/bin/arango-password.in b/utils/arango-password.in old mode 100755 new mode 100644 similarity index 100% rename from bin/arango-password.in rename to utils/arango-password.in From bb6f099b245340761b1d62b444c1fb02f182bbcd Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Thu, 30 Aug 2012 15:39:23 +0200 Subject: [PATCH 26/28] changes to allow SUBDIR build --- 3rdParty/Makefile.all-in-one-libev | 6 +- 3rdParty/Makefile.all-in-one-mruby | 6 +- 3rdParty/Makefile.all-in-one-protobuf | 6 +- 3rdParty/Makefile.all-in-one-v8 | 6 +- 3rdParty/Makefile.all-in-one-zeromq | 10 +- Makefile.am | 79 ++----- Makefile.in | 219 +++++++++++-------- UnitTests/Makefile.files | 2 +- arangoirb/MRClient/MRubyClientConnection.cpp | 3 +- arangosh/ArangoShell/ArangoClient.cpp | 2 +- js/Makefile.javascript | 21 +- js/server/arango-password.js | 5 + lib/Makefile.files | 8 +- mr/Makefile.mruby | 16 +- utils/Makefile.files | 69 ++++++ utils/arango-dfdb.in | 16 +- utils/arango-password.in | 25 ++- 17 files changed, 302 insertions(+), 197 deletions(-) create mode 100644 utils/Makefile.files diff --git a/3rdParty/Makefile.all-in-one-libev b/3rdParty/Makefile.all-in-one-libev index 3e894ee27a..31b871a069 100644 --- a/3rdParty/Makefile.all-in-one-libev +++ b/3rdParty/Makefile.all-in-one-libev @@ -10,9 +10,9 @@ BUILT_SOURCES += @LIBEV_LIBS@ -@LIBEV_LIBS@: .libev-build-@TRI_BITS@ +@LIBEV_LIBS@: @srcdir@/.libev-build-@TRI_BITS@ -.libev-build-@TRI_BITS@: +@srcdir@/.libev-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING LIBEV" @@ -23,7 +23,7 @@ BUILT_SOURCES += @LIBEV_LIBS@ cd @top_srcdir@/3rdParty/libev/BUILD && ../configure --disable-shared cd @top_srcdir@/3rdParty/libev/BUILD && $(MAKE) - touch .libev-build-@TRI_BITS@ + touch @srcdir@/.libev-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-mruby b/3rdParty/Makefile.all-in-one-mruby index 76e2ebd266..5b98fe4c13 100644 --- a/3rdParty/Makefile.all-in-one-mruby +++ b/3rdParty/Makefile.all-in-one-mruby @@ -10,9 +10,9 @@ BUILT_SOURCES += @MRUBY_LIBS@ -@MRUBY_LIBS@: .mruby-build-@TRI_BITS@ +@MRUBY_LIBS@: @srcdir@/.mruby-build-@TRI_BITS@ -.mruby-build-@TRI_BITS@: +@srcdir@/.mruby-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING LIBEV" @@ -21,7 +21,7 @@ BUILT_SOURCES += @MRUBY_LIBS@ cd @top_srcdir@/3rdParty/mruby && $(MAKE) -j1 - touch .mruby-build-@TRI_BITS@ + touch @srcdir@/.mruby-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-protobuf b/3rdParty/Makefile.all-in-one-protobuf index cbe0cd55ec..1b7b72aada 100644 --- a/3rdParty/Makefile.all-in-one-protobuf +++ b/3rdParty/Makefile.all-in-one-protobuf @@ -11,9 +11,9 @@ BUILT_SOURCES += @PROTOBUF_LIBS@ PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD -@PROTOBUF_LIBS@: .protobuf-build-@TRI_BITS@ +@PROTOBUF_LIBS@: @srcdir@/.protobuf-build-@TRI_BITS@ -.protobuf-build-@TRI_BITS@: +@srcdir@/.protobuf-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING Protocol Buffers" @@ -28,7 +28,7 @@ PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD --libdir=$(PROTOBUFDIR)/lib@TRI_BITS@ cd @top_srcdir@/3rdParty/protobuf-2.4.1 && $(MAKE) install - touch .protobuf-build-@TRI_BITS@ + touch @srcdir@/.protobuf-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-v8 b/3rdParty/Makefile.all-in-one-v8 index 6f1a4a5fb4..95dc0567d8 100644 --- a/3rdParty/Makefile.all-in-one-v8 +++ b/3rdParty/Makefile.all-in-one-v8 @@ -10,9 +10,9 @@ BUILT_SOURCES += @V8_LIBS@ -@V8_LIBS@: .v8-build-@TRI_BITS@ +@V8_LIBS@: @srcdir@/.v8-build-@TRI_BITS@ -.v8-build-@TRI_BITS@: +@srcdir@/.v8-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING V8" @@ -21,7 +21,7 @@ BUILT_SOURCES += @V8_LIBS@ cd @top_srcdir@/3rdParty/V8 && $(MAKE) library=static snapshot=off @V8_TARGET@ - touch .v8-build-@TRI_BITS@ + touch @srcdir@/.v8-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-zeromq b/3rdParty/Makefile.all-in-one-zeromq index 4822ad7c85..8cfcfbfc23 100644 --- a/3rdParty/Makefile.all-in-one-zeromq +++ b/3rdParty/Makefile.all-in-one-zeromq @@ -11,9 +11,9 @@ BUILT_SOURCES += @ZEROMQ_LIBS@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD -@ZEROMQ_LIBS@: .zeromq-build-@TRI_BITS@ .czmq-build-@TRI_BITS@ +@ZEROMQ_LIBS@: @srcdir@/.zeromq-build-@TRI_BITS@ @srcdir@/.czmq-build-@TRI_BITS@ -.zeromq-build-@TRI_BITS@: +@srcdir@/.zeromq-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING ZEROMQ" @@ -28,7 +28,7 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD --libdir=$(ZMQDIR)/lib@TRI_BITS@ cd @top_srcdir@/3rdParty/zeromq-2.2.0 && $(MAKE) install - touch .zeromq-build-@TRI_BITS@ + touch @srcdir@/.zeromq-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" @@ -36,7 +36,7 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD @echo "--------------------------------------------------------------------------------" @echo -.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ +@srcdir@/.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING CZMQ" @@ -54,7 +54,7 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD LIBS="-luuid -lrt -lstdc++" cd @top_srcdir@/3rdParty/czmq-1.1.0 && $(MAKE) install - touch .czmq-build-@TRI_BITS@ + touch @srcdir@/.czmq-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/Makefile.am b/Makefile.am index 53b67e03b6..2283b85b44 100644 --- a/Makefile.am +++ b/Makefile.am @@ -46,6 +46,24 @@ BISONXX_FILES = PROTOBUF_FILES = +## ----------------------------------------------------------------------------- +## --SECTION-- PATHS +## ----------------------------------------------------------------------------- + +if ENABLE_RELATIVE + +TRI_SBINDIR = ${abs_builddir}/bin +TRI_DATABASEDIR = +TRI_PKGDATADIR = . + +else + +TRI_SBINDIR = ${sbindir} +TRI_DATABASEDIR = ${localstatedir}/${PACKAGE_TARNAME} +TRI_PKGDATADIR = ${pkgdatadir} + +endif + ## ----------------------------------------------------------------------------- ## --SECTION-- FLAGS ## ----------------------------------------------------------------------------- @@ -273,6 +291,7 @@ include Makefile.files include lib/Makefile.files include arangod/Makefile.files include arangosh/Makefile.files +include utils/Makefile.files if ENABLE_MRUBY include arangoirb/Makefile.files @@ -318,66 +337,6 @@ clean-local: built-sources: build.h errorfiles $(JAVASCRIPT_HEADER) -################################################################################ -### @brief arango password -################################################################################ - -# exclude arango skripts from sources list -bin_arango_password_SOURCES = - -bin/arango-password: utils/arango-password.in - sed \ - -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ - -CLEANUP += bin/arango-password - -################################################################################ -### @brief arango upgrade -################################################################################ - -# exclude arango skripts from sources list -bin_arango_upgrade_SOURCES = - -bin/arango-upgrade: bin/arango-upgrade.in -if ENABLE_RELATIVE_DEVEL - sed \ - -e 's%@SBINDIR@%bin%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ -else - sed \ - -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ -endif - -CLEANUP += bin/arango-upgrade - -################################################################################ -### @brief arango datafile debugger -################################################################################ - -# exclude arango skrips from sources list -bin_arango_dfdb_SOURCES = - -bin/arango-dfdb: utils/arango-dfdb.in - sed \ - -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ - -CLEANUP += bin/arango-dfdb - ## ----------------------------------------------------------------------------- ## --SECTION-- DEPENDENCIES ## ----------------------------------------------------------------------------- diff --git a/Makefile.in b/Makefile.in index 24d6e1803b..4c8af09f18 100644 --- a/Makefile.in +++ b/Makefile.in @@ -32,9 +32,6 @@ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief library "libarango.a" ################################################################################ @@ -59,6 +56,12 @@ # -*- mode: Makefile; -*- +################################################################################ +### @brief arango password +################################################################################ + +# -*- mode: Makefile; -*- + ################################################################################ ################################################################################ @@ -88,18 +91,12 @@ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief sets up the directories ################################################################################ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief sets up the directories ################################################################################ @@ -222,16 +219,12 @@ DIST_COMMON = $(am__configure_deps) \ $(srcdir)/UnitTests/Makefile.files \ $(srcdir)/arangod/Makefile.files \ $(srcdir)/arangoirb/Makefile.files \ - $(srcdir)/arangosh/Makefile.files $(srcdir)/lib/Makefile.files \ - $(srcdir)/m4/Makefile.all-in-one-libev \ - $(srcdir)/m4/Makefile.all-in-one-mruby \ - $(srcdir)/m4/Makefile.all-in-one-protobuf \ - $(srcdir)/m4/Makefile.all-in-one-v8 \ - $(srcdir)/m4/Makefile.all-in-one-zeromq \ - $(srcdir)/m4/Makefile.bison $(srcdir)/m4/Makefile.flex \ - $(srcdir)/m4/Makefile.javascript $(srcdir)/m4/Makefile.mruby \ - $(srcdir)/m4/Makefile.protobuf \ - $(top_srcdir)/Doxygen/arango.template.in \ + $(srcdir)/arangosh/Makefile.files \ + $(srcdir)/js/Makefile.javascript $(srcdir)/lib/Makefile.bison \ + $(srcdir)/lib/Makefile.files $(srcdir)/lib/Makefile.flex \ + $(srcdir)/lib/Makefile.protobuf $(srcdir)/mr/Makefile.mruby \ + $(srcdir)/utils/Makefile.files \ + $(top_srcdir)/Documentation/arango.template.in \ $(top_srcdir)/config/config.h.in $(top_srcdir)/configure \ $(top_srcdir)/lib/BasicsC/local-configuration.h.in \ config/compile config/config.guess config/config.sub \ @@ -260,7 +253,7 @@ DIST_COMMON = $(am__configure_deps) \ @ENABLE_ERRORS_DEPENDENCY_TRUE@am__append_16 = \ @ENABLE_ERRORS_DEPENDENCY_TRUE@ errorfiles -@ENABLE_MRUBY_TRUE@am__append_17 = .setup-mr-directories +@ENABLE_MRUBY_TRUE@am__append_17 = @builddir@/.setup-mr-directories ################################################################################ ### @brief cleanup @@ -1019,10 +1012,11 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ BUILT_SOURCES = build.h Installation/arangod.conf $(JAVASCRIPT_HEADER) \ $(JAVASCRIPT_BROWSER) $(MRUBY_HEADER) $(am__append_16) \ - Documentation/.setup-directories .setup-js-directories \ - $(am__append_17) $(am__append_19) $(am__append_21) \ - $(PROTOBUF_FILES) $(am__append_23) $(am__append_24) \ - $(am__append_25) $(am__append_26) $(am__append_27) + Documentation/.setup-directories \ + @builddir@/.setup-js-directories $(am__append_17) \ + $(am__append_19) $(am__append_21) $(PROTOBUF_FILES) \ + $(am__append_23) $(am__append_24) $(am__append_25) \ + $(am__append_26) $(am__append_27) ################################################################################ ### @brief files to cleanup @@ -1040,11 +1034,11 @@ BUILT_SOURCES = build.h Installation/arangod.conf $(JAVASCRIPT_HEADER) \ ### @brief cleanup ################################################################################ CLEANUP = bin/arango-password bin/arango-upgrade bin/arango-dfdb \ - $(am__append_18) $(DOXYGEN) $(addsuffix .md,$(addprefix \ - Doxygen/xml/,$(WIKI))) $(addsuffix .md,$(addprefix \ - Doxygen/wiki/,$(WIKI))) $(JAVASCRIPT_HEADER) \ - .setup-js-directories $(am__append_20) $(am__append_22) \ - $(PROTOBUF_FILES) + $(DOXYGEN) $(addsuffix .md,$(addprefix \ + Documentation/xml/,$(WIKI))) $(addsuffix .md,$(addprefix \ + Documentation/wiki/,$(WIKI))) $(JAVASCRIPT_HEADER) \ + .setup-js-directories $(am__append_18) $(am__append_20) \ + $(am__append_22) $(PROTOBUF_FILES) ################################################################################ ### @brief flex files @@ -1101,6 +1095,12 @@ BISONXX_FILES = lib/JsonParserX/JsonParserX.cpp ### @brief protocol buffers ################################################################################ PROTOBUF_FILES = lib/ProtocolBuffers/arangodb.pb.cpp +@ENABLE_RELATIVE_FALSE@TRI_SBINDIR = ${sbindir} +@ENABLE_RELATIVE_TRUE@TRI_SBINDIR = ${abs_builddir}/bin +@ENABLE_RELATIVE_FALSE@TRI_DATABASEDIR = ${localstatedir}/${PACKAGE_TARNAME} +@ENABLE_RELATIVE_TRUE@TRI_DATABASEDIR = +@ENABLE_RELATIVE_FALSE@TRI_PKGDATADIR = ${pkgdatadir} +@ENABLE_RELATIVE_TRUE@TRI_PKGDATADIR = . ################################################################################ ### @brief m4 directory @@ -1501,6 +1501,23 @@ bin_arangoimp_SOURCES = \ arangosh/V8Client/V8ClientConnection.cpp \ arangosh/V8Client/arangoimp.cpp + +# exclude arango skripts from sources list +bin_arango_password_SOURCES = + +################################################################################ +### @brief arango upgrade +################################################################################ + +# exclude arango skripts from sources list +bin_arango_upgrade_SOURCES = + +################################################################################ +### @brief arango datafile debugger +################################################################################ + +# exclude arango skrips from sources list +bin_arango_dfdb_SOURCES = @ENABLE_MRUBY_TRUE@bin_arangoirb_CPPFLAGS = \ @ENABLE_MRUBY_TRUE@ -I@top_srcdir@/arangoirb \ @ENABLE_MRUBY_TRUE@ $(AM_CPPFLAGS) @@ -1600,7 +1617,7 @@ CLIENT_OPT := \ @ENABLE_BOOST_TEST_TRUE@ UnitTests/Jutland/StringBufferTest.cpp \ @ENABLE_BOOST_TEST_TRUE@ UnitTests/Jutland/StringUtilsTest.cpp -@ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_CPPFLAGS = -I@top_builddir@/arangod -I@top_builddir@/lib +@ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_CPPFLAGS = -I@top_srcdir@/arangod -I@top_builddir@/lib -I@top_srcdir@/lib @ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_LDADD = -L@top_builddir@/lib -larango -lboost_unit_test_framework @ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_DEPENDENCIES = @top_builddir@/lib/libarango.a @ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_SOURCES = \ @@ -1681,27 +1698,6 @@ UNITTESTS_CLIENT = $(addprefix --javascript.unit-tests ,$(SHELL_CLIENT)) ################################################################################ BITARRAY_COMMON = @top_srcdir@/js/common/tests/shell-bitarray-index.js UNITTESTS_SERVER_BITARRAY = $(addprefix --javascript.unit-tests ,$(BITARRAY_COMMON)) - -################################################################################ -### @brief arango password -################################################################################ - -# exclude arango skripts from sources list -bin_arango_password_SOURCES = - -################################################################################ -### @brief arango upgrade -################################################################################ - -# exclude arango skripts from sources list -bin_arango_upgrade_SOURCES = - -################################################################################ -### @brief arango datafile debugger -################################################################################ - -# exclude arango skrips from sources list -bin_arango_dfdb_SOURCES = @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD @ENABLE_ZEROMQ_TRUE@ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD all: $(BUILT_SOURCES) @@ -1711,7 +1707,7 @@ all: $(BUILT_SOURCES) .SUFFIXES: .c .cpp .o .obj am--refresh: @: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.files $(srcdir)/lib/Makefile.files $(srcdir)/arangod/Makefile.files $(srcdir)/arangosh/Makefile.files $(srcdir)/arangoirb/Makefile.files $(srcdir)/PerfTests/Makefile.files $(srcdir)/UnitTests/Makefile.files $(srcdir)/Documentation/Makefile.doxygen $(srcdir)/js/Makefile.javascript $(srcdir)/mr/Makefile.mruby $(srcdir)/lib/Makefile.flex $(srcdir)/lib/Makefile.bison $(srcdir)/lib/Makefile.protobuf $(srcdir)/3rdParty/Makefile.all-in-one-libev $(srcdir)/3rdParty/Makefile.all-in-one-protobuf $(srcdir)/3rdParty/Makefile.all-in-one-v8 $(srcdir)/3rdParty/Makefile.all-in-one-mruby $(srcdir)/3rdParty/Makefile.all-in-one-zeromq $(am__configure_deps) +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.files $(srcdir)/lib/Makefile.files $(srcdir)/arangod/Makefile.files $(srcdir)/arangosh/Makefile.files $(srcdir)/utils/Makefile.files $(srcdir)/arangoirb/Makefile.files $(srcdir)/PerfTests/Makefile.files $(srcdir)/UnitTests/Makefile.files $(srcdir)/Documentation/Makefile.doxygen $(srcdir)/js/Makefile.javascript $(srcdir)/mr/Makefile.mruby $(srcdir)/lib/Makefile.flex $(srcdir)/lib/Makefile.bison $(srcdir)/lib/Makefile.protobuf $(srcdir)/3rdParty/Makefile.all-in-one-libev $(srcdir)/3rdParty/Makefile.all-in-one-protobuf $(srcdir)/3rdParty/Makefile.all-in-one-v8 $(srcdir)/3rdParty/Makefile.all-in-one-mruby $(srcdir)/3rdParty/Makefile.all-in-one-zeromq $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -4540,6 +4536,25 @@ arangod/MRServer/bin_arangod-mr-actions.obj: arangod/MRServer/mr-actions.cpp @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangod/MRServer/mr-actions.cpp' object='arangod/MRServer/bin_arangod-mr-actions.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangod_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangod/MRServer/bin_arangod-mr-actions.obj `if test -f 'arangod/MRServer/mr-actions.cpp'; then $(CYGPATH_W) 'arangod/MRServer/mr-actions.cpp'; else $(CYGPATH_W) '$(srcdir)/arangod/MRServer/mr-actions.cpp'; fi` + +arangosh/ArangoShell/bin_arangoimp-ArangoClient.o: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangoimp-ArangoClient.o -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangoimp-ArangoClient.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp + +arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` + +arangosh/V8Client/bin_arangoimp-ImportHelper.o: arangosh/V8Client/ImportHelper.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/V8Client/bin_arangoimp-ImportHelper.o -MD -MP -MF arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Tpo -c -o arangosh/V8Client/bin_arangoimp-ImportHelper.o `test -f 'arangosh/V8Client/ImportHelper.cpp' || echo '$(srcdir)/'`arangosh/V8Client/ImportHelper.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Tpo arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Po @am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/V8Client/ImportHelper.cpp' object='arangosh/V8Client/bin_arangoimp-ImportHelper.o' libtool=no @AMDEPBACKSLASH@ @@ -4615,6 +4630,24 @@ arangoirb/MRClient/bin_arangoirb-arangoirb.obj: arangoirb/MRClient/arangoirb.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Tpo arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Po @am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangoirb/MRClient/arangoirb.cpp' object='arangoirb/MRClient/bin_arangoirb-arangoirb.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoirb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangoirb/MRClient/bin_arangoirb-arangoirb.obj `if test -f 'arangoirb/MRClient/arangoirb.cpp'; then $(CYGPATH_W) 'arangoirb/MRClient/arangoirb.cpp'; else $(CYGPATH_W) '$(srcdir)/arangoirb/MRClient/arangoirb.cpp'; fi` + +arangosh/ArangoShell/bin_arangosh-ArangoClient.o: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangosh-ArangoClient.o -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangosh-ArangoClient.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp + +arangosh/ArangoShell/bin_arangosh-ArangoClient.obj: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangosh-ArangoClient.obj -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangosh-ArangoClient.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` arangosh/V8Client/bin_arangosh-ImportHelper.o: arangosh/V8Client/ImportHelper.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/V8Client/bin_arangosh-ImportHelper.o -MD -MP -MF arangosh/V8Client/$(DEPDIR)/bin_arangosh-ImportHelper.Tpo -c -o arangosh/V8Client/bin_arangosh-ImportHelper.o `test -f 'arangosh/V8Client/ImportHelper.cpp' || echo '$(srcdir)/'`arangosh/V8Client/ImportHelper.cpp @@ -5218,8 +5251,29 @@ build.h: configure.ac ################################################################################ ################################################################################ -################################################################################ -################################################################################ +bin/arango-password: utils/arango-password.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +bin/arango-upgrade: bin/arango-upgrade.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +bin/arango-dfdb: utils/arango-dfdb.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ ################################################################################ ################################################################################ @@ -5580,12 +5634,11 @@ latex: Documentation/arango-latex.doxy $(DOXYGEN) ################################################################################ ################################################################################ -.setup-js-directories: - @test -d html/admin/js/modules || mkdir html/admin/js/modules - @test -d js || mkdir js - @test -d js/client || mkdir js/client - @test -d js/common/bootstrap || mkdir js/common/bootstrap - @test -d js/server || mkdir js/server +@builddir@/.setup-js-directories: + @test -d html/admin/js/modules || mkdir -p html/admin/js/modules + @test -d js/common/bootstrap || mkdir -p js/common/bootstrap + @test -d js/client || mkdir -p js/client + @test -d js/server || mkdir -p js/server @touch $@ ################################################################################ @@ -5610,12 +5663,9 @@ js/common/bootstrap/js-%.h: @srcdir@/js/common/bootstrap/%.js .setup-js-director js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @top_srcdir@/config/js2c.sh $< > $@ -################################################################################ -################################################################################ - -@ENABLE_MRUBY_TRUE@.setup-mr-directories: -@ENABLE_MRUBY_TRUE@ @test -d mr || mkdir mr -@ENABLE_MRUBY_TRUE@ @test -d mr/common/bootstrap || mkdir mr/common/bootstrap +@ENABLE_MRUBY_TRUE@@builddir@/.setup-mr-directories: +@ENABLE_MRUBY_TRUE@ @test -d mr/common/bootstrap || mkdir -p mr/common/bootstrap +@ENABLE_MRUBY_TRUE@ @test -d mr/server || mkdir -p mr/server @ENABLE_MRUBY_TRUE@ @touch $@ @ENABLE_MRUBY_TRUE@mr/common/bootstrap/mr-%.h: @srcdir@/mr/common/bootstrap/%.rb .setup-mr-directories @@ -5624,9 +5674,6 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@mr/server/mr-%.h: @srcdir@/mr/server/%.rb .setup-mr-directories @ENABLE_MRUBY_TRUE@ @top_srcdir@/config/mr2c.sh $< > $@ -################################################################################ -################################################################################ - ################################################################################ ### @brief flex ################################################################################ @@ -5663,9 +5710,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @PROTOBUF_PROTOC@ --cpp_out . $< mv $(addsuffix .cc,$(basename $@)) $@ -@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@LIBEV_LIBS@: .libev-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@LIBEV_LIBS@: @srcdir@/.libev-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_LIBEV_TRUE@.libev-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@srcdir@/.libev-build-@TRI_BITS@: @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "BUILDING LIBEV" @@ -5676,7 +5723,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ cd @top_srcdir@/3rdParty/libev/BUILD && ../configure --disable-shared @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ cd @top_srcdir@/3rdParty/libev/BUILD && $(MAKE) -@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ touch .libev-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ touch @srcdir@/.libev-build-@TRI_BITS@ @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5684,9 +5731,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo -@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@PROTOBUF_LIBS@: .protobuf-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@PROTOBUF_LIBS@: @srcdir@/.protobuf-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@.protobuf-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@srcdir@/.protobuf-build-@TRI_BITS@: @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "BUILDING Protocol Buffers" @@ -5701,7 +5748,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ --libdir=$(PROTOBUFDIR)/lib@TRI_BITS@ @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ cd @top_srcdir@/3rdParty/protobuf-2.4.1 && $(MAKE) install -@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ touch .protobuf-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ touch @srcdir@/.protobuf-build-@TRI_BITS@ @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5709,9 +5756,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo -@ENABLE_ALL_IN_ONE_V8_TRUE@@V8_LIBS@: .v8-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_V8_TRUE@@V8_LIBS@: @srcdir@/.v8-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_V8_TRUE@.v8-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_V8_TRUE@@srcdir@/.v8-build-@TRI_BITS@: @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "BUILDING V8" @@ -5720,7 +5767,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_V8_TRUE@ cd @top_srcdir@/3rdParty/V8 && $(MAKE) library=static snapshot=off @V8_TARGET@ -@ENABLE_ALL_IN_ONE_V8_TRUE@ touch .v8-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_V8_TRUE@ touch @srcdir@/.v8-build-@TRI_BITS@ @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5728,9 +5775,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo -@ENABLE_MRUBY_TRUE@@MRUBY_LIBS@: .mruby-build-@TRI_BITS@ +@ENABLE_MRUBY_TRUE@@MRUBY_LIBS@: @srcdir@/.mruby-build-@TRI_BITS@ -@ENABLE_MRUBY_TRUE@.mruby-build-@TRI_BITS@: +@ENABLE_MRUBY_TRUE@@srcdir@/.mruby-build-@TRI_BITS@: @ENABLE_MRUBY_TRUE@ @echo @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_MRUBY_TRUE@ @echo "BUILDING LIBEV" @@ -5739,7 +5786,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@ cd @top_srcdir@/3rdParty/mruby && $(MAKE) -j1 -@ENABLE_MRUBY_TRUE@ touch .mruby-build-@TRI_BITS@ +@ENABLE_MRUBY_TRUE@ touch @srcdir@/.mruby-build-@TRI_BITS@ @ENABLE_MRUBY_TRUE@ @echo @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5747,9 +5794,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_MRUBY_TRUE@ @echo -@ENABLE_ZEROMQ_TRUE@@ZEROMQ_LIBS@: .zeromq-build-@TRI_BITS@ .czmq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@@ZEROMQ_LIBS@: @srcdir@/.zeromq-build-@TRI_BITS@ @srcdir@/.czmq-build-@TRI_BITS@ -@ENABLE_ZEROMQ_TRUE@.zeromq-build-@TRI_BITS@: +@ENABLE_ZEROMQ_TRUE@@srcdir@/.zeromq-build-@TRI_BITS@: @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo "BUILDING ZEROMQ" @@ -5764,7 +5811,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ --libdir=$(ZMQDIR)/lib@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ cd @top_srcdir@/3rdParty/zeromq-2.2.0 && $(MAKE) install -@ENABLE_ZEROMQ_TRUE@ touch .zeromq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@ touch @srcdir@/.zeromq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5772,7 +5819,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo -@ENABLE_ZEROMQ_TRUE@.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@@srcdir@/.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo "BUILDING CZMQ" @@ -5790,7 +5837,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ LIBS="-luuid -lrt -lstdc++" @ENABLE_ZEROMQ_TRUE@ cd @top_srcdir@/3rdParty/czmq-1.1.0 && $(MAKE) install -@ENABLE_ZEROMQ_TRUE@ touch .czmq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@ touch @srcdir@/.czmq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" diff --git a/UnitTests/Makefile.files b/UnitTests/Makefile.files index e9269f062b..47a5e86da4 100755 --- a/UnitTests/Makefile.files +++ b/UnitTests/Makefile.files @@ -166,7 +166,7 @@ UnitTests_basics_suite_SOURCES = \ UnitTests/Jutland/StringBufferTest.cpp \ UnitTests/Jutland/StringUtilsTest.cpp -UnitTests_geo_suite_CPPFLAGS = -I@top_builddir@/arangod -I@top_builddir@/lib +UnitTests_geo_suite_CPPFLAGS = -I@top_srcdir@/arangod -I@top_builddir@/lib -I@top_srcdir@/lib UnitTests_geo_suite_LDADD = -L@top_builddir@/lib -larango -lboost_unit_test_framework UnitTests_geo_suite_DEPENDENCIES = @top_builddir@/lib/libarango.a diff --git a/arangoirb/MRClient/MRubyClientConnection.cpp b/arangoirb/MRClient/MRubyClientConnection.cpp index a6c7b7aa28..2085fa98a4 100644 --- a/arangoirb/MRClient/MRubyClientConnection.cpp +++ b/arangoirb/MRClient/MRubyClientConnection.cpp @@ -41,14 +41,13 @@ #include #include "Basics/StringUtils.h" +#include "BasicsC/json.h" #include "SimpleHttpClient/GeneralClientConnection.h" #include "SimpleHttpClient/SimpleHttpClient.h" #include "SimpleHttpClient/SimpleHttpResult.h" #include "Variant/VariantArray.h" #include "Variant/VariantString.h" -#include "json.h" - extern "C" { #include "mruby/array.h" #include "mruby/hash.h" diff --git a/arangosh/ArangoShell/ArangoClient.cpp b/arangosh/ArangoShell/ArangoClient.cpp index a848bf0f9b..6a215a33fe 100644 --- a/arangosh/ArangoShell/ArangoClient.cpp +++ b/arangosh/ArangoShell/ArangoClient.cpp @@ -522,7 +522,7 @@ void ArangoClient::printWelcomeInfo () { void ArangoClient::printByeBye () { if (! _quiet) { - cout << endl << "Bye Bye! Auf Wiedersehen! さようなら" << endl; + cout << endl << "Bye Bye! Auf Wiedersehen! До свидания! さようなら" << endl; } } diff --git a/js/Makefile.javascript b/js/Makefile.javascript index 90a4bba545..d614b7cf27 100644 --- a/js/Makefile.javascript +++ b/js/Makefile.javascript @@ -1,21 +1,20 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- JAVASCRIPT -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief sets up the directories ################################################################################ -BUILT_SOURCES += .setup-js-directories +BUILT_SOURCES += @builddir@/.setup-js-directories -.setup-js-directories: - @test -d html/admin/js/modules || mkdir html/admin/js/modules - @test -d js || mkdir js - @test -d js/client || mkdir js/client - @test -d js/common/bootstrap || mkdir js/common/bootstrap - @test -d js/server || mkdir js/server +@builddir@/.setup-js-directories: + @test -d html/admin/js/modules || mkdir -p html/admin/js/modules + @test -d js/common/bootstrap || mkdir -p js/common/bootstrap + @test -d js/client || mkdir -p js/client + @test -d js/server || mkdir -p js/server @touch $@ ################################################################################ @@ -46,9 +45,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories CLEANUP += $(JAVASCRIPT_HEADER) .setup-js-directories -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/js/server/arango-password.js b/js/server/arango-password.js index 1ff974e759..6c25d9f644 100644 --- a/js/server/arango-password.js +++ b/js/server/arango-password.js @@ -76,6 +76,11 @@ function main (argv) { var hash = internal.sha256(password); + if (username == "" ) { + internal.output("username must not be empty\n"); + return 1; + } + var user = users.firstExample({ user: username }); if (user == null) { diff --git a/lib/Makefile.files b/lib/Makefile.files index 4f3e9ec22e..4021f1fa4a 100644 --- a/lib/Makefile.files +++ b/lib/Makefile.files @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief library "libarango.a" @@ -239,9 +239,9 @@ BISONXX_FILES += \ PROTOBUF_FILES += \ lib/ProtocolBuffers/arangodb.pb.cpp -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/mr/Makefile.mruby b/mr/Makefile.mruby index a15c72e6c3..16433cfd09 100644 --- a/mr/Makefile.mruby +++ b/mr/Makefile.mruby @@ -1,18 +1,18 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- MRUBY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief sets up the directories ################################################################################ -BUILT_SOURCES += .setup-mr-directories +BUILT_SOURCES += @builddir@/.setup-mr-directories -.setup-mr-directories: - @test -d mr || mkdir mr - @test -d mr/common/bootstrap || mkdir mr/common/bootstrap +@builddir@/.setup-mr-directories: + @test -d mr/common/bootstrap || mkdir -p mr/common/bootstrap + @test -d mr/server || mkdir -p mr/server @touch $@ mr/common/bootstrap/mr-%.h: @srcdir@/mr/common/bootstrap/%.rb .setup-mr-directories @@ -27,9 +27,9 @@ mr/server/mr-%.h: @srcdir@/mr/server/%.rb .setup-mr-directories CLEANUP += $(MRUBY_HEADER) .setup-mr-directories -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/utils/Makefile.files b/utils/Makefile.files new file mode 100644 index 0000000000..3edf3db1d3 --- /dev/null +++ b/utils/Makefile.files @@ -0,0 +1,69 @@ +# -*- mode: Makefile; -*- + +## ----------------------------------------------------------------------------- +## --SECTION-- PATHS +## ----------------------------------------------------------------------------- + +## ----------------------------------------------------------------------------- +## --SECTION-- UTIL SCRIPTS +## ----------------------------------------------------------------------------- + +################################################################################ +### @brief arango password +################################################################################ + +# exclude arango skripts from sources list +bin_arango_password_SOURCES = + +bin/arango-password: utils/arango-password.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +CLEANUP += bin/arango-password + +################################################################################ +### @brief arango upgrade +################################################################################ + +# exclude arango skripts from sources list +bin_arango_upgrade_SOURCES = + +bin/arango-upgrade: bin/arango-upgrade.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +CLEANUP += bin/arango-upgrade + +################################################################################ +### @brief arango datafile debugger +################################################################################ + +# exclude arango skrips from sources list +bin_arango_dfdb_SOURCES = + +bin/arango-dfdb: utils/arango-dfdb.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +CLEANUP += bin/arango-dfdb + +## ----------------------------------------------------------------------------- +## --SECTION-- END-OF-FILE +## ----------------------------------------------------------------------------- + +## Local Variables: +## mode: outline-minor +## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" +## End: diff --git a/utils/arango-dfdb.in b/utils/arango-dfdb.in index a13fcd945d..b01963f06b 100644 --- a/utils/arango-dfdb.in +++ b/utils/arango-dfdb.in @@ -3,8 +3,9 @@ # Placeholders starting with @ will be replaced by make ARANGOD="@SBINDIR@/arangod" -DATABASE="@DATABASE@" -SCRIPT="@STATICFILES@/js/server/arango-dfdb.js" +DATABASE="@DATABASEDIR@" +MODULESPATH="@PKGDATADIR@/js/server/modules;@PKGDATADIR@/js/common/modules" +SCRIPT="@PKGDATADIR@/js/server/arango-dfdb.js" if [ "$1" == "--database" ] || [ "$1" == "--database.directory" ] ; then shift @@ -12,9 +13,18 @@ if [ "$1" == "--database" ] || [ "$1" == "--database.directory" ] ; then shift fi +if test -z "$DATABASE"; then + echo "$0: please specify a database directory using '--database'" + exit 1 +fi + if test ! -d "$DATABASE"; then echo "$0: database directory '$DATABASE' does not exist" exit 1 fi -$ARANGOD -c none --database.directory "$DATABASE" --javascript.script "$SCRIPT" +$ARANGOD \ + -c none \ + --database.directory "$DATABASE" \ + --javascript.modules-path "$MODULESPATH" \ + --javascript.script "$SCRIPT" diff --git a/utils/arango-password.in b/utils/arango-password.in index 428018214b..913de059fe 100644 --- a/utils/arango-password.in +++ b/utils/arango-password.in @@ -3,8 +3,9 @@ # Placeholders starting with @ will be replaced by make ARANGOD="@SBINDIR@/arangod" -DATABASE="@DATABASE@" -SCRIPT="@STATICFILES@/js/server/arango-password.js" +DATABASE="@DATABASEDIR@" +MODULESPATH="@PKGDATADIR@/js/server/modules;@PKGDATADIR@/js/common/modules" +SCRIPT="@PKGDATADIR@/js/server/arango-password.js" if [ "$#" -lt 1 ]; then echo "usage: $0 [--database ] []" @@ -22,6 +23,11 @@ if [ "$1" == "--database" ] || [ "$1" == "--database.directory" ] ; then shift fi +if test -z "$DATABASE"; then + echo "$0: please specify a database directory using '--database'" + exit 1 +fi + if test ! -d "$DATABASE"; then echo "$0: database directory '$DATABASE' does not exist" exit 1 @@ -35,7 +41,18 @@ if echo "$USER" | grep -q "[^a-zA-Z0-0_-]"; then fi if [ "$#" -lt 2 ]; then - $ARANGOD -c none --database.directory "$DATABASE" --javascript.script "$SCRIPT" --javascript.script-parameter "$USER" + $ARANGOD \ + -c none \ + --database.directory "$DATABASE" \ + --javascript.modules-path "$MODULESPATH" \ + --javascript.script "$SCRIPT" \ + --javascript.script-parameter "$USER" else - $ARANGOD -c none --database.directory "$DATABASE" --javascript.script "$SCRIPT" --javascript.script-parameter "$USER" --javascript.script-parameter "$2" + $ARANGOD \ + -c none \ + --database.directory "$DATABASE" \ + --javascript.modules-path "$MODULESPATH" \ + --javascript.script "$SCRIPT" \ + --javascript.script-parameter "$USER" \ + --javascript.script-parameter "$2" fi From 2ab77278d96899615bf15d2502d77a9346792f9c Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Thu, 30 Aug 2012 15:39:23 +0200 Subject: [PATCH 27/28] changes to allow SUBDIR build --- 3rdParty/Makefile.all-in-one-libev | 6 +- 3rdParty/Makefile.all-in-one-mruby | 6 +- 3rdParty/Makefile.all-in-one-protobuf | 6 +- 3rdParty/Makefile.all-in-one-v8 | 6 +- 3rdParty/Makefile.all-in-one-zeromq | 10 +- Makefile.am | 100 ++---- Makefile.in | 286 +++++++++++------- UnitTests/Makefile.files | 2 +- arangoirb/MRClient/MRubyClientConnection.cpp | 3 +- arangosh/ArangoShell/ArangoClient.cpp | 2 +- etc/Makefile.files | 42 +++ .../arangodb}/arangod.conf.in | 8 +- etc/arangodb/arangosh.conf.in | 5 + js/Makefile.javascript | 21 +- js/server/arango-password.js | 5 + lib/Makefile.files | 8 +- mr/Makefile.mruby | 16 +- utils/Makefile.files | 75 +++++ utils/arango-dfdb.in | 16 +- utils/arango-password.in | 25 +- 20 files changed, 410 insertions(+), 238 deletions(-) create mode 100644 etc/Makefile.files rename {Installation => etc/arangodb}/arangod.conf.in (56%) create mode 100644 etc/arangodb/arangosh.conf.in create mode 100644 utils/Makefile.files diff --git a/3rdParty/Makefile.all-in-one-libev b/3rdParty/Makefile.all-in-one-libev index 3e894ee27a..31b871a069 100644 --- a/3rdParty/Makefile.all-in-one-libev +++ b/3rdParty/Makefile.all-in-one-libev @@ -10,9 +10,9 @@ BUILT_SOURCES += @LIBEV_LIBS@ -@LIBEV_LIBS@: .libev-build-@TRI_BITS@ +@LIBEV_LIBS@: @srcdir@/.libev-build-@TRI_BITS@ -.libev-build-@TRI_BITS@: +@srcdir@/.libev-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING LIBEV" @@ -23,7 +23,7 @@ BUILT_SOURCES += @LIBEV_LIBS@ cd @top_srcdir@/3rdParty/libev/BUILD && ../configure --disable-shared cd @top_srcdir@/3rdParty/libev/BUILD && $(MAKE) - touch .libev-build-@TRI_BITS@ + touch @srcdir@/.libev-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-mruby b/3rdParty/Makefile.all-in-one-mruby index 76e2ebd266..5b98fe4c13 100644 --- a/3rdParty/Makefile.all-in-one-mruby +++ b/3rdParty/Makefile.all-in-one-mruby @@ -10,9 +10,9 @@ BUILT_SOURCES += @MRUBY_LIBS@ -@MRUBY_LIBS@: .mruby-build-@TRI_BITS@ +@MRUBY_LIBS@: @srcdir@/.mruby-build-@TRI_BITS@ -.mruby-build-@TRI_BITS@: +@srcdir@/.mruby-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING LIBEV" @@ -21,7 +21,7 @@ BUILT_SOURCES += @MRUBY_LIBS@ cd @top_srcdir@/3rdParty/mruby && $(MAKE) -j1 - touch .mruby-build-@TRI_BITS@ + touch @srcdir@/.mruby-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-protobuf b/3rdParty/Makefile.all-in-one-protobuf index cbe0cd55ec..1b7b72aada 100644 --- a/3rdParty/Makefile.all-in-one-protobuf +++ b/3rdParty/Makefile.all-in-one-protobuf @@ -11,9 +11,9 @@ BUILT_SOURCES += @PROTOBUF_LIBS@ PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD -@PROTOBUF_LIBS@: .protobuf-build-@TRI_BITS@ +@PROTOBUF_LIBS@: @srcdir@/.protobuf-build-@TRI_BITS@ -.protobuf-build-@TRI_BITS@: +@srcdir@/.protobuf-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING Protocol Buffers" @@ -28,7 +28,7 @@ PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD --libdir=$(PROTOBUFDIR)/lib@TRI_BITS@ cd @top_srcdir@/3rdParty/protobuf-2.4.1 && $(MAKE) install - touch .protobuf-build-@TRI_BITS@ + touch @srcdir@/.protobuf-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-v8 b/3rdParty/Makefile.all-in-one-v8 index 6f1a4a5fb4..95dc0567d8 100644 --- a/3rdParty/Makefile.all-in-one-v8 +++ b/3rdParty/Makefile.all-in-one-v8 @@ -10,9 +10,9 @@ BUILT_SOURCES += @V8_LIBS@ -@V8_LIBS@: .v8-build-@TRI_BITS@ +@V8_LIBS@: @srcdir@/.v8-build-@TRI_BITS@ -.v8-build-@TRI_BITS@: +@srcdir@/.v8-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING V8" @@ -21,7 +21,7 @@ BUILT_SOURCES += @V8_LIBS@ cd @top_srcdir@/3rdParty/V8 && $(MAKE) library=static snapshot=off @V8_TARGET@ - touch .v8-build-@TRI_BITS@ + touch @srcdir@/.v8-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/3rdParty/Makefile.all-in-one-zeromq b/3rdParty/Makefile.all-in-one-zeromq index 4822ad7c85..8cfcfbfc23 100644 --- a/3rdParty/Makefile.all-in-one-zeromq +++ b/3rdParty/Makefile.all-in-one-zeromq @@ -11,9 +11,9 @@ BUILT_SOURCES += @ZEROMQ_LIBS@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD -@ZEROMQ_LIBS@: .zeromq-build-@TRI_BITS@ .czmq-build-@TRI_BITS@ +@ZEROMQ_LIBS@: @srcdir@/.zeromq-build-@TRI_BITS@ @srcdir@/.czmq-build-@TRI_BITS@ -.zeromq-build-@TRI_BITS@: +@srcdir@/.zeromq-build-@TRI_BITS@: @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING ZEROMQ" @@ -28,7 +28,7 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD --libdir=$(ZMQDIR)/lib@TRI_BITS@ cd @top_srcdir@/3rdParty/zeromq-2.2.0 && $(MAKE) install - touch .zeromq-build-@TRI_BITS@ + touch @srcdir@/.zeromq-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" @@ -36,7 +36,7 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD @echo "--------------------------------------------------------------------------------" @echo -.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ +@srcdir@/.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" @echo "BUILDING CZMQ" @@ -54,7 +54,7 @@ ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD LIBS="-luuid -lrt -lstdc++" cd @top_srcdir@/3rdParty/czmq-1.1.0 && $(MAKE) install - touch .czmq-build-@TRI_BITS@ + touch @srcdir@/.czmq-build-@TRI_BITS@ @echo @echo "--------------------------------------------------------------------------------" diff --git a/Makefile.am b/Makefile.am index 53b67e03b6..f0bbcccc74 100644 --- a/Makefile.am +++ b/Makefile.am @@ -46,6 +46,26 @@ BISONXX_FILES = PROTOBUF_FILES = +## ----------------------------------------------------------------------------- +## --SECTION-- PATHS +## ----------------------------------------------------------------------------- + +if ENABLE_RELATIVE + +TRI_DATABASEDIR = +TRI_LOGDIR = /tmp +TRI_PKGDATADIR = . +TRI_SBINDIR = ${abs_builddir}/bin + +else + +TRI_DATABASEDIR = ${localstatedir}/${PACKAGE_TARNAME} +TRI_LOGDIR = ${localstatedir}/log/${PACKAGE_TARNAME} +TRI_PKGDATADIR = ${pkgdatadir} +TRI_SBINDIR = ${sbindir} + +endif + ## ----------------------------------------------------------------------------- ## --SECTION-- FLAGS ## ----------------------------------------------------------------------------- @@ -159,10 +179,7 @@ noinst_LIBRARIES = \ ################################################################################ sbin_PROGRAMS = \ - bin/arangod \ - bin/arango-password \ - bin/arango-upgrade \ - bin/arango-dfdb + bin/arangod ################################################################################ ### @brief /bin programs @@ -202,17 +219,8 @@ endif ################################################################################ arangosysconfdir=$(sysconfdir)/$(PACKAGE_TARNAME) -arangosysconf_DATA = Installation/arangod.conf -BUILT_SOURCES += Installation/arangod.conf - -Installation/arangod.conf: Installation/arangod.conf.in Makefile - @test -d Installation || mkdir Installation - sed \ - -e 's%@LOGDIR@%${TRI_LOG_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ +arangosysconf_DATA = $(shell find @builddir@/etc/arangodb -name "*.conf" -print) ################################################################################ ### @brief /share data @@ -244,7 +252,7 @@ endif if ENABLE_INSTALL_DBDIR install-data-local: - test -d $(DESTDIR)$(TRI_DATABASE_DIR) || mkdir -p $(DESTDIR)$(TRI_DATABASE_DIR) + test -d $(DESTDIR)$(TRI_DATABASEDIR) || mkdir -p $(DESTDIR)$(TRI_DATABASEDIR) endif @@ -273,6 +281,8 @@ include Makefile.files include lib/Makefile.files include arangod/Makefile.files include arangosh/Makefile.files +include etc/Makefile.files +include utils/Makefile.files if ENABLE_MRUBY include arangoirb/Makefile.files @@ -318,66 +328,6 @@ clean-local: built-sources: build.h errorfiles $(JAVASCRIPT_HEADER) -################################################################################ -### @brief arango password -################################################################################ - -# exclude arango skripts from sources list -bin_arango_password_SOURCES = - -bin/arango-password: utils/arango-password.in - sed \ - -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ - -CLEANUP += bin/arango-password - -################################################################################ -### @brief arango upgrade -################################################################################ - -# exclude arango skripts from sources list -bin_arango_upgrade_SOURCES = - -bin/arango-upgrade: bin/arango-upgrade.in -if ENABLE_RELATIVE_DEVEL - sed \ - -e 's%@SBINDIR@%bin%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ -else - sed \ - -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ -endif - -CLEANUP += bin/arango-upgrade - -################################################################################ -### @brief arango datafile debugger -################################################################################ - -# exclude arango skrips from sources list -bin_arango_dfdb_SOURCES = - -bin/arango-dfdb: utils/arango-dfdb.in - sed \ - -e 's%@SBINDIR@%${TRI_SBIN_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - chmod 755 $@ - -CLEANUP += bin/arango-dfdb - ## ----------------------------------------------------------------------------- ## --SECTION-- DEPENDENCIES ## ----------------------------------------------------------------------------- diff --git a/Makefile.in b/Makefile.in index 24d6e1803b..b7c92dd3bd 100644 --- a/Makefile.in +++ b/Makefile.in @@ -32,9 +32,6 @@ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief library "libarango.a" ################################################################################ @@ -59,6 +56,14 @@ # -*- mode: Makefile; -*- +# -*- mode: Makefile; -*- + +################################################################################ +### @brief /sbin programs +################################################################################ + +# -*- mode: Makefile; -*- + ################################################################################ ################################################################################ @@ -88,18 +93,12 @@ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief sets up the directories ################################################################################ # -*- mode: Makefile; -*- -################################################################################ -################################################################################ - ################################################################################ ### @brief sets up the directories ################################################################################ @@ -193,7 +192,7 @@ target_triplet = @target@ @ENABLE_MRUBY_TRUE@am__append_5 = @MRUBY_CPPFLAGS@ @MRUBY_LDFLAGS@ @ENABLE_MRUBY_TRUE@am__append_6 = @MRUBY_LIBS@ sbin_PROGRAMS = bin/arangod$(EXEEXT) bin/arango-password$(EXEEXT) \ - bin/arango-upgrade$(EXEEXT) bin/arango-dfdb$(EXEEXT) + bin/arango-dfdb$(EXEEXT) bin_PROGRAMS = bin/arangosh$(EXEEXT) bin/arangoimp$(EXEEXT) \ $(am__EXEEXT_1) noinst_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3) @@ -222,16 +221,12 @@ DIST_COMMON = $(am__configure_deps) \ $(srcdir)/UnitTests/Makefile.files \ $(srcdir)/arangod/Makefile.files \ $(srcdir)/arangoirb/Makefile.files \ - $(srcdir)/arangosh/Makefile.files $(srcdir)/lib/Makefile.files \ - $(srcdir)/m4/Makefile.all-in-one-libev \ - $(srcdir)/m4/Makefile.all-in-one-mruby \ - $(srcdir)/m4/Makefile.all-in-one-protobuf \ - $(srcdir)/m4/Makefile.all-in-one-v8 \ - $(srcdir)/m4/Makefile.all-in-one-zeromq \ - $(srcdir)/m4/Makefile.bison $(srcdir)/m4/Makefile.flex \ - $(srcdir)/m4/Makefile.javascript $(srcdir)/m4/Makefile.mruby \ - $(srcdir)/m4/Makefile.protobuf \ - $(top_srcdir)/Doxygen/arango.template.in \ + $(srcdir)/arangosh/Makefile.files $(srcdir)/etc/Makefile.files \ + $(srcdir)/js/Makefile.javascript $(srcdir)/lib/Makefile.bison \ + $(srcdir)/lib/Makefile.files $(srcdir)/lib/Makefile.flex \ + $(srcdir)/lib/Makefile.protobuf $(srcdir)/mr/Makefile.mruby \ + $(srcdir)/utils/Makefile.files \ + $(top_srcdir)/Documentation/arango.template.in \ $(top_srcdir)/config/config.h.in $(top_srcdir)/configure \ $(top_srcdir)/lib/BasicsC/local-configuration.h.in \ config/compile config/config.guess config/config.sub \ @@ -260,7 +255,7 @@ DIST_COMMON = $(am__configure_deps) \ @ENABLE_ERRORS_DEPENDENCY_TRUE@am__append_16 = \ @ENABLE_ERRORS_DEPENDENCY_TRUE@ errorfiles -@ENABLE_MRUBY_TRUE@am__append_17 = .setup-mr-directories +@ENABLE_MRUBY_TRUE@am__append_17 = @builddir@/.setup-mr-directories ################################################################################ ### @brief cleanup @@ -599,9 +594,6 @@ bin_arango_dfdb_LDADD = $(LDADD) am_bin_arango_password_OBJECTS = bin_arango_password_OBJECTS = $(am_bin_arango_password_OBJECTS) bin_arango_password_LDADD = $(LDADD) -am_bin_arango_upgrade_OBJECTS = -bin_arango_upgrade_OBJECTS = $(am_bin_arango_upgrade_OBJECTS) -bin_arango_upgrade_LDADD = $(LDADD) am__bin_arangod_SOURCES_DIST = arangod/Actions/actions.cpp \ arangod/Actions/ActionDispatcherThread.cpp \ arangod/Actions/RestActionHandler.cpp \ @@ -806,10 +798,10 @@ SOURCES = $(lib_libarango_a_SOURCES) $(lib_libarango_client_a_SOURCES) \ $(lib_libarango_v8_a_SOURCES) \ $(UnitTests_basics_suite_SOURCES) \ $(UnitTests_geo_suite_SOURCES) $(bin_arango_dfdb_SOURCES) \ - $(bin_arango_password_SOURCES) $(bin_arango_upgrade_SOURCES) \ - $(bin_arangod_SOURCES) $(bin_arangoimp_SOURCES) \ - $(bin_arangoirb_SOURCES) $(bin_arangosh_SOURCES) \ - $(bin_zclient_SOURCES) $(bin_zserver_SOURCES) + $(bin_arango_password_SOURCES) $(bin_arangod_SOURCES) \ + $(bin_arangoimp_SOURCES) $(bin_arangoirb_SOURCES) \ + $(bin_arangosh_SOURCES) $(bin_zclient_SOURCES) \ + $(bin_zserver_SOURCES) DIST_SOURCES = $(am__lib_libarango_a_SOURCES_DIST) \ $(lib_libarango_client_a_SOURCES) \ $(lib_libarango_fe_a_SOURCES) \ @@ -818,10 +810,9 @@ DIST_SOURCES = $(am__lib_libarango_a_SOURCES_DIST) \ $(am__UnitTests_basics_suite_SOURCES_DIST) \ $(am__UnitTests_geo_suite_SOURCES_DIST) \ $(bin_arango_dfdb_SOURCES) $(bin_arango_password_SOURCES) \ - $(bin_arango_upgrade_SOURCES) $(am__bin_arangod_SOURCES_DIST) \ - $(bin_arangoimp_SOURCES) $(am__bin_arangoirb_SOURCES_DIST) \ - $(bin_arangosh_SOURCES) $(bin_zclient_SOURCES) \ - $(bin_zserver_SOURCES) + $(am__bin_arangod_SOURCES_DIST) $(bin_arangoimp_SOURCES) \ + $(am__bin_arangoirb_SOURCES_DIST) $(bin_arangosh_SOURCES) \ + $(bin_zclient_SOURCES) $(bin_zserver_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -1017,12 +1008,14 @@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -BUILT_SOURCES = build.h Installation/arangod.conf $(JAVASCRIPT_HEADER) \ - $(JAVASCRIPT_BROWSER) $(MRUBY_HEADER) $(am__append_16) \ - Documentation/.setup-directories .setup-js-directories \ - $(am__append_17) $(am__append_19) $(am__append_21) \ - $(PROTOBUF_FILES) $(am__append_23) $(am__append_24) \ - $(am__append_25) $(am__append_26) $(am__append_27) +BUILT_SOURCES = build.h $(JAVASCRIPT_HEADER) $(JAVASCRIPT_BROWSER) \ + $(MRUBY_HEADER) etc/arangodb/arangod.conf \ + etc/arangodb/arangosh.conf $(am__append_16) \ + Documentation/.setup-directories \ + @builddir@/.setup-js-directories $(am__append_17) \ + $(am__append_19) $(am__append_21) $(PROTOBUF_FILES) \ + $(am__append_23) $(am__append_24) $(am__append_25) \ + $(am__append_26) $(am__append_27) ################################################################################ ### @brief files to cleanup @@ -1040,11 +1033,11 @@ BUILT_SOURCES = build.h Installation/arangod.conf $(JAVASCRIPT_HEADER) \ ### @brief cleanup ################################################################################ CLEANUP = bin/arango-password bin/arango-upgrade bin/arango-dfdb \ - $(am__append_18) $(DOXYGEN) $(addsuffix .md,$(addprefix \ - Doxygen/xml/,$(WIKI))) $(addsuffix .md,$(addprefix \ - Doxygen/wiki/,$(WIKI))) $(JAVASCRIPT_HEADER) \ - .setup-js-directories $(am__append_20) $(am__append_22) \ - $(PROTOBUF_FILES) + $(DOXYGEN) $(addsuffix .md,$(addprefix \ + Documentation/xml/,$(WIKI))) $(addsuffix .md,$(addprefix \ + Documentation/wiki/,$(WIKI))) $(JAVASCRIPT_HEADER) \ + .setup-js-directories $(am__append_18) $(am__append_20) \ + $(am__append_22) $(PROTOBUF_FILES) ################################################################################ ### @brief flex files @@ -1101,6 +1094,14 @@ BISONXX_FILES = lib/JsonParserX/JsonParserX.cpp ### @brief protocol buffers ################################################################################ PROTOBUF_FILES = lib/ProtocolBuffers/arangodb.pb.cpp +@ENABLE_RELATIVE_FALSE@TRI_DATABASEDIR = ${localstatedir}/${PACKAGE_TARNAME} +@ENABLE_RELATIVE_TRUE@TRI_DATABASEDIR = +@ENABLE_RELATIVE_FALSE@TRI_LOGDIR = ${localstatedir}/log/${PACKAGE_TARNAME} +@ENABLE_RELATIVE_TRUE@TRI_LOGDIR = /tmp +@ENABLE_RELATIVE_FALSE@TRI_PKGDATADIR = ${pkgdatadir} +@ENABLE_RELATIVE_TRUE@TRI_PKGDATADIR = . +@ENABLE_RELATIVE_FALSE@TRI_SBINDIR = ${sbindir} +@ENABLE_RELATIVE_TRUE@TRI_SBINDIR = ${abs_builddir}/bin ################################################################################ ### @brief m4 directory @@ -1133,7 +1134,7 @@ noinst_LIBRARIES = lib/libarango.a lib/libarango_v8.a \ ### @brief /etc data ################################################################################ arangosysconfdir = $(sysconfdir)/$(PACKAGE_TARNAME) -arangosysconf_DATA = Installation/arangod.conf +arangosysconf_DATA = $(shell find @builddir@/etc/arangodb -name "*.conf" -print) ################################################################################ ### @brief /share data @@ -1501,6 +1502,29 @@ bin_arangoimp_SOURCES = \ arangosh/V8Client/V8ClientConnection.cpp \ arangosh/V8Client/arangoimp.cpp + +# bin/arango-upgrade + +################################################################################ +### @brief arango password +################################################################################ + +# exclude arango skripts from sources list +bin_arango_password_SOURCES = + +################################################################################ +### @brief arango upgrade +################################################################################ + +# exclude arango skripts from sources list +bin_arango_upgrade_SOURCES = + +################################################################################ +### @brief arango datafile debugger +################################################################################ + +# exclude arango skrips from sources list +bin_arango_dfdb_SOURCES = @ENABLE_MRUBY_TRUE@bin_arangoirb_CPPFLAGS = \ @ENABLE_MRUBY_TRUE@ -I@top_srcdir@/arangoirb \ @ENABLE_MRUBY_TRUE@ $(AM_CPPFLAGS) @@ -1600,7 +1624,7 @@ CLIENT_OPT := \ @ENABLE_BOOST_TEST_TRUE@ UnitTests/Jutland/StringBufferTest.cpp \ @ENABLE_BOOST_TEST_TRUE@ UnitTests/Jutland/StringUtilsTest.cpp -@ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_CPPFLAGS = -I@top_builddir@/arangod -I@top_builddir@/lib +@ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_CPPFLAGS = -I@top_srcdir@/arangod -I@top_builddir@/lib -I@top_srcdir@/lib @ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_LDADD = -L@top_builddir@/lib -larango -lboost_unit_test_framework @ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_DEPENDENCIES = @top_builddir@/lib/libarango.a @ENABLE_BOOST_TEST_TRUE@UnitTests_geo_suite_SOURCES = \ @@ -1681,27 +1705,6 @@ UNITTESTS_CLIENT = $(addprefix --javascript.unit-tests ,$(SHELL_CLIENT)) ################################################################################ BITARRAY_COMMON = @top_srcdir@/js/common/tests/shell-bitarray-index.js UNITTESTS_SERVER_BITARRAY = $(addprefix --javascript.unit-tests ,$(BITARRAY_COMMON)) - -################################################################################ -### @brief arango password -################################################################################ - -# exclude arango skripts from sources list -bin_arango_password_SOURCES = - -################################################################################ -### @brief arango upgrade -################################################################################ - -# exclude arango skripts from sources list -bin_arango_upgrade_SOURCES = - -################################################################################ -### @brief arango datafile debugger -################################################################################ - -# exclude arango skrips from sources list -bin_arango_dfdb_SOURCES = @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@PROTOBUFDIR = @abs_top_srcdir@/3rdParty/protobuf-2.4.1/BUILD @ENABLE_ZEROMQ_TRUE@ZMQDIR = @abs_top_srcdir@/3rdParty/zeromq-2.2.0/BUILD all: $(BUILT_SOURCES) @@ -1711,7 +1714,7 @@ all: $(BUILT_SOURCES) .SUFFIXES: .c .cpp .o .obj am--refresh: @: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.files $(srcdir)/lib/Makefile.files $(srcdir)/arangod/Makefile.files $(srcdir)/arangosh/Makefile.files $(srcdir)/arangoirb/Makefile.files $(srcdir)/PerfTests/Makefile.files $(srcdir)/UnitTests/Makefile.files $(srcdir)/Documentation/Makefile.doxygen $(srcdir)/js/Makefile.javascript $(srcdir)/mr/Makefile.mruby $(srcdir)/lib/Makefile.flex $(srcdir)/lib/Makefile.bison $(srcdir)/lib/Makefile.protobuf $(srcdir)/3rdParty/Makefile.all-in-one-libev $(srcdir)/3rdParty/Makefile.all-in-one-protobuf $(srcdir)/3rdParty/Makefile.all-in-one-v8 $(srcdir)/3rdParty/Makefile.all-in-one-mruby $(srcdir)/3rdParty/Makefile.all-in-one-zeromq $(am__configure_deps) +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.files $(srcdir)/lib/Makefile.files $(srcdir)/arangod/Makefile.files $(srcdir)/arangosh/Makefile.files $(srcdir)/etc/Makefile.files $(srcdir)/utils/Makefile.files $(srcdir)/arangoirb/Makefile.files $(srcdir)/PerfTests/Makefile.files $(srcdir)/UnitTests/Makefile.files $(srcdir)/Documentation/Makefile.doxygen $(srcdir)/js/Makefile.javascript $(srcdir)/mr/Makefile.mruby $(srcdir)/lib/Makefile.flex $(srcdir)/lib/Makefile.bison $(srcdir)/lib/Makefile.protobuf $(srcdir)/3rdParty/Makefile.all-in-one-libev $(srcdir)/3rdParty/Makefile.all-in-one-protobuf $(srcdir)/3rdParty/Makefile.all-in-one-v8 $(srcdir)/3rdParty/Makefile.all-in-one-mruby $(srcdir)/3rdParty/Makefile.all-in-one-zeromq $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -4540,6 +4543,25 @@ arangod/MRServer/bin_arangod-mr-actions.obj: arangod/MRServer/mr-actions.cpp @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangod/MRServer/mr-actions.cpp' object='arangod/MRServer/bin_arangod-mr-actions.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangod_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangod/MRServer/bin_arangod-mr-actions.obj `if test -f 'arangod/MRServer/mr-actions.cpp'; then $(CYGPATH_W) 'arangod/MRServer/mr-actions.cpp'; else $(CYGPATH_W) '$(srcdir)/arangod/MRServer/mr-actions.cpp'; fi` + +arangosh/ArangoShell/bin_arangoimp-ArangoClient.o: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangoimp-ArangoClient.o -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangoimp-ArangoClient.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp + +arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangoimp-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangoimp-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` + +arangosh/V8Client/bin_arangoimp-ImportHelper.o: arangosh/V8Client/ImportHelper.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoimp_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/V8Client/bin_arangoimp-ImportHelper.o -MD -MP -MF arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Tpo -c -o arangosh/V8Client/bin_arangoimp-ImportHelper.o `test -f 'arangosh/V8Client/ImportHelper.cpp' || echo '$(srcdir)/'`arangosh/V8Client/ImportHelper.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Tpo arangosh/V8Client/$(DEPDIR)/bin_arangoimp-ImportHelper.Po @am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/V8Client/ImportHelper.cpp' object='arangosh/V8Client/bin_arangoimp-ImportHelper.o' libtool=no @AMDEPBACKSLASH@ @@ -4615,6 +4637,24 @@ arangoirb/MRClient/bin_arangoirb-arangoirb.obj: arangoirb/MRClient/arangoirb.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Tpo arangoirb/MRClient/$(DEPDIR)/bin_arangoirb-arangoirb.Po @am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangoirb/MRClient/arangoirb.cpp' object='arangoirb/MRClient/bin_arangoirb-arangoirb.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangoirb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangoirb/MRClient/bin_arangoirb-arangoirb.obj `if test -f 'arangoirb/MRClient/arangoirb.cpp'; then $(CYGPATH_W) 'arangoirb/MRClient/arangoirb.cpp'; else $(CYGPATH_W) '$(srcdir)/arangoirb/MRClient/arangoirb.cpp'; fi` + +arangosh/ArangoShell/bin_arangosh-ArangoClient.o: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangosh-ArangoClient.o -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangosh-ArangoClient.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.o `test -f 'arangosh/ArangoShell/ArangoClient.cpp' || echo '$(srcdir)/'`arangosh/ArangoShell/ArangoClient.cpp + +arangosh/ArangoShell/bin_arangosh-ArangoClient.obj: arangosh/ArangoShell/ArangoClient.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/ArangoShell/bin_arangosh-ArangoClient.obj -MD -MP -MF arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Tpo arangosh/ArangoShell/$(DEPDIR)/bin_arangosh-ArangoClient.Po +@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='arangosh/ArangoShell/ArangoClient.cpp' object='arangosh/ArangoShell/bin_arangosh-ArangoClient.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o arangosh/ArangoShell/bin_arangosh-ArangoClient.obj `if test -f 'arangosh/ArangoShell/ArangoClient.cpp'; then $(CYGPATH_W) 'arangosh/ArangoShell/ArangoClient.cpp'; else $(CYGPATH_W) '$(srcdir)/arangosh/ArangoShell/ArangoClient.cpp'; fi` arangosh/V8Client/bin_arangosh-ImportHelper.o: arangosh/V8Client/ImportHelper.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bin_arangosh_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT arangosh/V8Client/bin_arangosh-ImportHelper.o -MD -MP -MF arangosh/V8Client/$(DEPDIR)/bin_arangosh-ImportHelper.Tpo -c -o arangosh/V8Client/bin_arangosh-ImportHelper.o `test -f 'arangosh/V8Client/ImportHelper.cpp' || echo '$(srcdir)/'`arangosh/V8Client/ImportHelper.cpp @@ -5181,20 +5221,12 @@ uninstall-am: uninstall-arangosysconfDATA uninstall-binPROGRAMS \ uninstall-nobase_pkgdataDATA uninstall-sbinPROGRAMS -Installation/arangod.conf: Installation/arangod.conf.in Makefile - @test -d Installation || mkdir Installation - sed \ - -e 's%@LOGDIR@%${TRI_LOG_DIR}%g' \ - -e 's%@DATABASE@%${TRI_DATABASE_DIR}%g' \ - -e 's%@STATICFILES@%${TRI_PKGDATA_DIR}%g' \ - $< > $@ - ################################################################################ ### @brief /var data ################################################################################ @ENABLE_INSTALL_DBDIR_TRUE@install-data-local: -@ENABLE_INSTALL_DBDIR_TRUE@ test -d $(DESTDIR)$(TRI_DATABASE_DIR) || mkdir -p $(DESTDIR)$(TRI_DATABASE_DIR) +@ENABLE_INSTALL_DBDIR_TRUE@ test -d $(DESTDIR)$(TRI_DATABASEDIR) || mkdir -p $(DESTDIR)$(TRI_DATABASEDIR) ################################################################################ ### @brief version number @@ -5219,8 +5251,53 @@ build.h: configure.ac ################################################################################ ################################################################################ +### @brief server config ################################################################################ +etc/arangodb/arangod.conf: etc/arangodb/arangod.conf.in Makefile + @test -d etc/arangodb || mkdir -p etc/arangodb + sed \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@LOGDIR@%${TRI_LOGDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + +################################################################################ +### @brief client config +################################################################################ + +etc/arangodb/arangosh.conf: etc/arangodb/arangosh.conf.in Makefile + @test -d etc/arangodb || mkdir -p etc/arangodb + sed \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@LOGDIR@%${TRI_LOGDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + +bin/arango-password: utils/arango-password.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +bin/arango-upgrade: bin/arango-upgrade.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +bin/arango-dfdb: utils/arango-dfdb.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + ################################################################################ ################################################################################ @@ -5580,12 +5657,11 @@ latex: Documentation/arango-latex.doxy $(DOXYGEN) ################################################################################ ################################################################################ -.setup-js-directories: - @test -d html/admin/js/modules || mkdir html/admin/js/modules - @test -d js || mkdir js - @test -d js/client || mkdir js/client - @test -d js/common/bootstrap || mkdir js/common/bootstrap - @test -d js/server || mkdir js/server +@builddir@/.setup-js-directories: + @test -d html/admin/js/modules || mkdir -p html/admin/js/modules + @test -d js/common/bootstrap || mkdir -p js/common/bootstrap + @test -d js/client || mkdir -p js/client + @test -d js/server || mkdir -p js/server @touch $@ ################################################################################ @@ -5610,12 +5686,9 @@ js/common/bootstrap/js-%.h: @srcdir@/js/common/bootstrap/%.js .setup-js-director js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @top_srcdir@/config/js2c.sh $< > $@ -################################################################################ -################################################################################ - -@ENABLE_MRUBY_TRUE@.setup-mr-directories: -@ENABLE_MRUBY_TRUE@ @test -d mr || mkdir mr -@ENABLE_MRUBY_TRUE@ @test -d mr/common/bootstrap || mkdir mr/common/bootstrap +@ENABLE_MRUBY_TRUE@@builddir@/.setup-mr-directories: +@ENABLE_MRUBY_TRUE@ @test -d mr/common/bootstrap || mkdir -p mr/common/bootstrap +@ENABLE_MRUBY_TRUE@ @test -d mr/server || mkdir -p mr/server @ENABLE_MRUBY_TRUE@ @touch $@ @ENABLE_MRUBY_TRUE@mr/common/bootstrap/mr-%.h: @srcdir@/mr/common/bootstrap/%.rb .setup-mr-directories @@ -5624,9 +5697,6 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@mr/server/mr-%.h: @srcdir@/mr/server/%.rb .setup-mr-directories @ENABLE_MRUBY_TRUE@ @top_srcdir@/config/mr2c.sh $< > $@ -################################################################################ -################################################################################ - ################################################################################ ### @brief flex ################################################################################ @@ -5663,9 +5733,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @PROTOBUF_PROTOC@ --cpp_out . $< mv $(addsuffix .cc,$(basename $@)) $@ -@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@LIBEV_LIBS@: .libev-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@LIBEV_LIBS@: @srcdir@/.libev-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_LIBEV_TRUE@.libev-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@@srcdir@/.libev-build-@TRI_BITS@: @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "BUILDING LIBEV" @@ -5676,7 +5746,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ cd @top_srcdir@/3rdParty/libev/BUILD && ../configure --disable-shared @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ cd @top_srcdir@/3rdParty/libev/BUILD && $(MAKE) -@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ touch .libev-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_LIBEV_TRUE@ touch @srcdir@/.libev-build-@TRI_BITS@ @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5684,9 +5754,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_LIBEV_TRUE@ @echo -@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@PROTOBUF_LIBS@: .protobuf-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@PROTOBUF_LIBS@: @srcdir@/.protobuf-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@.protobuf-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@@srcdir@/.protobuf-build-@TRI_BITS@: @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "BUILDING Protocol Buffers" @@ -5701,7 +5771,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ --libdir=$(PROTOBUFDIR)/lib@TRI_BITS@ @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ cd @top_srcdir@/3rdParty/protobuf-2.4.1 && $(MAKE) install -@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ touch .protobuf-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ touch @srcdir@/.protobuf-build-@TRI_BITS@ @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5709,9 +5779,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_PROTOBUF_TRUE@ @echo -@ENABLE_ALL_IN_ONE_V8_TRUE@@V8_LIBS@: .v8-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_V8_TRUE@@V8_LIBS@: @srcdir@/.v8-build-@TRI_BITS@ -@ENABLE_ALL_IN_ONE_V8_TRUE@.v8-build-@TRI_BITS@: +@ENABLE_ALL_IN_ONE_V8_TRUE@@srcdir@/.v8-build-@TRI_BITS@: @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "BUILDING V8" @@ -5720,7 +5790,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_V8_TRUE@ cd @top_srcdir@/3rdParty/V8 && $(MAKE) library=static snapshot=off @V8_TARGET@ -@ENABLE_ALL_IN_ONE_V8_TRUE@ touch .v8-build-@TRI_BITS@ +@ENABLE_ALL_IN_ONE_V8_TRUE@ touch @srcdir@/.v8-build-@TRI_BITS@ @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5728,9 +5798,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ALL_IN_ONE_V8_TRUE@ @echo -@ENABLE_MRUBY_TRUE@@MRUBY_LIBS@: .mruby-build-@TRI_BITS@ +@ENABLE_MRUBY_TRUE@@MRUBY_LIBS@: @srcdir@/.mruby-build-@TRI_BITS@ -@ENABLE_MRUBY_TRUE@.mruby-build-@TRI_BITS@: +@ENABLE_MRUBY_TRUE@@srcdir@/.mruby-build-@TRI_BITS@: @ENABLE_MRUBY_TRUE@ @echo @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_MRUBY_TRUE@ @echo "BUILDING LIBEV" @@ -5739,7 +5809,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@ cd @top_srcdir@/3rdParty/mruby && $(MAKE) -j1 -@ENABLE_MRUBY_TRUE@ touch .mruby-build-@TRI_BITS@ +@ENABLE_MRUBY_TRUE@ touch @srcdir@/.mruby-build-@TRI_BITS@ @ENABLE_MRUBY_TRUE@ @echo @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5747,9 +5817,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_MRUBY_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_MRUBY_TRUE@ @echo -@ENABLE_ZEROMQ_TRUE@@ZEROMQ_LIBS@: .zeromq-build-@TRI_BITS@ .czmq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@@ZEROMQ_LIBS@: @srcdir@/.zeromq-build-@TRI_BITS@ @srcdir@/.czmq-build-@TRI_BITS@ -@ENABLE_ZEROMQ_TRUE@.zeromq-build-@TRI_BITS@: +@ENABLE_ZEROMQ_TRUE@@srcdir@/.zeromq-build-@TRI_BITS@: @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo "BUILDING ZEROMQ" @@ -5764,7 +5834,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ --libdir=$(ZMQDIR)/lib@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ cd @top_srcdir@/3rdParty/zeromq-2.2.0 && $(MAKE) install -@ENABLE_ZEROMQ_TRUE@ touch .zeromq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@ touch @srcdir@/.zeromq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @@ -5772,7 +5842,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo -@ENABLE_ZEROMQ_TRUE@.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@@srcdir@/.czmq-build-@TRI_BITS@: .zeromq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" @ENABLE_ZEROMQ_TRUE@ @echo "BUILDING CZMQ" @@ -5790,7 +5860,7 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories @ENABLE_ZEROMQ_TRUE@ LIBS="-luuid -lrt -lstdc++" @ENABLE_ZEROMQ_TRUE@ cd @top_srcdir@/3rdParty/czmq-1.1.0 && $(MAKE) install -@ENABLE_ZEROMQ_TRUE@ touch .czmq-build-@TRI_BITS@ +@ENABLE_ZEROMQ_TRUE@ touch @srcdir@/.czmq-build-@TRI_BITS@ @ENABLE_ZEROMQ_TRUE@ @echo @ENABLE_ZEROMQ_TRUE@ @echo "--------------------------------------------------------------------------------" diff --git a/UnitTests/Makefile.files b/UnitTests/Makefile.files index e9269f062b..47a5e86da4 100755 --- a/UnitTests/Makefile.files +++ b/UnitTests/Makefile.files @@ -166,7 +166,7 @@ UnitTests_basics_suite_SOURCES = \ UnitTests/Jutland/StringBufferTest.cpp \ UnitTests/Jutland/StringUtilsTest.cpp -UnitTests_geo_suite_CPPFLAGS = -I@top_builddir@/arangod -I@top_builddir@/lib +UnitTests_geo_suite_CPPFLAGS = -I@top_srcdir@/arangod -I@top_builddir@/lib -I@top_srcdir@/lib UnitTests_geo_suite_LDADD = -L@top_builddir@/lib -larango -lboost_unit_test_framework UnitTests_geo_suite_DEPENDENCIES = @top_builddir@/lib/libarango.a diff --git a/arangoirb/MRClient/MRubyClientConnection.cpp b/arangoirb/MRClient/MRubyClientConnection.cpp index a6c7b7aa28..2085fa98a4 100644 --- a/arangoirb/MRClient/MRubyClientConnection.cpp +++ b/arangoirb/MRClient/MRubyClientConnection.cpp @@ -41,14 +41,13 @@ #include #include "Basics/StringUtils.h" +#include "BasicsC/json.h" #include "SimpleHttpClient/GeneralClientConnection.h" #include "SimpleHttpClient/SimpleHttpClient.h" #include "SimpleHttpClient/SimpleHttpResult.h" #include "Variant/VariantArray.h" #include "Variant/VariantString.h" -#include "json.h" - extern "C" { #include "mruby/array.h" #include "mruby/hash.h" diff --git a/arangosh/ArangoShell/ArangoClient.cpp b/arangosh/ArangoShell/ArangoClient.cpp index a848bf0f9b..6a215a33fe 100644 --- a/arangosh/ArangoShell/ArangoClient.cpp +++ b/arangosh/ArangoShell/ArangoClient.cpp @@ -522,7 +522,7 @@ void ArangoClient::printWelcomeInfo () { void ArangoClient::printByeBye () { if (! _quiet) { - cout << endl << "Bye Bye! Auf Wiedersehen! さようなら" << endl; + cout << endl << "Bye Bye! Auf Wiedersehen! До свидания! さようなら" << endl; } } diff --git a/etc/Makefile.files b/etc/Makefile.files new file mode 100644 index 0000000000..5d11e6a0a6 --- /dev/null +++ b/etc/Makefile.files @@ -0,0 +1,42 @@ +# -*- mode: Makefile; -*- + +## ----------------------------------------------------------------------------- +## --SECTION-- CONFIGURATION FILES +## ----------------------------------------------------------------------------- + +BUILT_SOURCES += \ + etc/arangodb/arangod.conf \ + etc/arangodb/arangosh.conf + +################################################################################ +### @brief server config +################################################################################ + +etc/arangodb/arangod.conf: etc/arangodb/arangod.conf.in Makefile + @test -d etc/arangodb || mkdir -p etc/arangodb + sed \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@LOGDIR@%${TRI_LOGDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + +################################################################################ +### @brief client config +################################################################################ + +etc/arangodb/arangosh.conf: etc/arangodb/arangosh.conf.in Makefile + @test -d etc/arangodb || mkdir -p etc/arangodb + sed \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@LOGDIR@%${TRI_LOGDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + +## ----------------------------------------------------------------------------- +## --SECTION-- END-OF-FILE +## ----------------------------------------------------------------------------- + +## Local Variables: +## mode: outline-minor +## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" +## End: diff --git a/Installation/arangod.conf.in b/etc/arangodb/arangod.conf.in similarity index 56% rename from Installation/arangod.conf.in rename to etc/arangodb/arangod.conf.in index ce6c8ddb34..0788baaad7 100644 --- a/Installation/arangod.conf.in +++ b/etc/arangodb/arangod.conf.in @@ -1,20 +1,20 @@ [database] -directory= @DATABASE@ +directory= @DATABASEDIR@ # maximal-journal-size=33554432 # remove-on-drop=true [server] endpoint = tcp://localhost:8529 disable-admin-interface = no -admin-directory= @STATICFILES@/html/admin +admin-directory= @PKGDATADIR@/html/admin threads = 5 [scheduler] threads = 3 [javascript] -action-directory= @STATICFILES@/js/actions/system -modules-path = @STATICFILES@/js/server/modules;@STATICFILES@/js/common/modules +action-directory= @PKGDATADIR@/js/actions/system +modules-path = @PKGDATADIR@/js/server/modules;@PKGDATADIR@/js/common/modules [log] level = info diff --git a/etc/arangodb/arangosh.conf.in b/etc/arangodb/arangosh.conf.in new file mode 100644 index 0000000000..8499d72ef7 --- /dev/null +++ b/etc/arangodb/arangosh.conf.in @@ -0,0 +1,5 @@ +[server] +endpoint = tcp://localhost:8529 + +[javascript] +modules-path = @PKGDATADIR@/js/client/modules;@PKGDATADIR@/js/common/modules diff --git a/js/Makefile.javascript b/js/Makefile.javascript index 90a4bba545..d614b7cf27 100644 --- a/js/Makefile.javascript +++ b/js/Makefile.javascript @@ -1,21 +1,20 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- JAVASCRIPT -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief sets up the directories ################################################################################ -BUILT_SOURCES += .setup-js-directories +BUILT_SOURCES += @builddir@/.setup-js-directories -.setup-js-directories: - @test -d html/admin/js/modules || mkdir html/admin/js/modules - @test -d js || mkdir js - @test -d js/client || mkdir js/client - @test -d js/common/bootstrap || mkdir js/common/bootstrap - @test -d js/server || mkdir js/server +@builddir@/.setup-js-directories: + @test -d html/admin/js/modules || mkdir -p html/admin/js/modules + @test -d js/common/bootstrap || mkdir -p js/common/bootstrap + @test -d js/client || mkdir -p js/client + @test -d js/server || mkdir -p js/server @touch $@ ################################################################################ @@ -46,9 +45,9 @@ js/server/js-%.h: @srcdir@/js/server/%.js .setup-js-directories CLEANUP += $(JAVASCRIPT_HEADER) .setup-js-directories -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/js/server/arango-password.js b/js/server/arango-password.js index 1ff974e759..6c25d9f644 100644 --- a/js/server/arango-password.js +++ b/js/server/arango-password.js @@ -76,6 +76,11 @@ function main (argv) { var hash = internal.sha256(password); + if (username == "" ) { + internal.output("username must not be empty\n"); + return 1; + } + var user = users.firstExample({ user: username }); if (user == null) { diff --git a/lib/Makefile.files b/lib/Makefile.files index 4f3e9ec22e..4021f1fa4a 100644 --- a/lib/Makefile.files +++ b/lib/Makefile.files @@ -1,8 +1,8 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- LIBRARY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief library "libarango.a" @@ -239,9 +239,9 @@ BISONXX_FILES += \ PROTOBUF_FILES += \ lib/ProtocolBuffers/arangodb.pb.cpp -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/mr/Makefile.mruby b/mr/Makefile.mruby index a15c72e6c3..16433cfd09 100644 --- a/mr/Makefile.mruby +++ b/mr/Makefile.mruby @@ -1,18 +1,18 @@ # -*- mode: Makefile; -*- -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- MRUBY -################################################################################ +## ----------------------------------------------------------------------------- ################################################################################ ### @brief sets up the directories ################################################################################ -BUILT_SOURCES += .setup-mr-directories +BUILT_SOURCES += @builddir@/.setup-mr-directories -.setup-mr-directories: - @test -d mr || mkdir mr - @test -d mr/common/bootstrap || mkdir mr/common/bootstrap +@builddir@/.setup-mr-directories: + @test -d mr/common/bootstrap || mkdir -p mr/common/bootstrap + @test -d mr/server || mkdir -p mr/server @touch $@ mr/common/bootstrap/mr-%.h: @srcdir@/mr/common/bootstrap/%.rb .setup-mr-directories @@ -27,9 +27,9 @@ mr/server/mr-%.h: @srcdir@/mr/server/%.rb .setup-mr-directories CLEANUP += $(MRUBY_HEADER) .setup-mr-directories -################################################################################ +## ----------------------------------------------------------------------------- ## --SECTION-- END-OF-FILE -################################################################################ +## ----------------------------------------------------------------------------- ## Local Variables: ## mode: outline-minor diff --git a/utils/Makefile.files b/utils/Makefile.files new file mode 100644 index 0000000000..3cad54093f --- /dev/null +++ b/utils/Makefile.files @@ -0,0 +1,75 @@ +# -*- mode: Makefile; -*- + +## ----------------------------------------------------------------------------- +## --SECTION-- UTIL SCRIPTS +## ----------------------------------------------------------------------------- + +################################################################################ +### @brief /sbin programs +################################################################################ + +sbin_PROGRAMS += \ + bin/arango-password \ + bin/arango-dfdb + +# bin/arango-upgrade + +################################################################################ +### @brief arango password +################################################################################ + +# exclude arango skripts from sources list +bin_arango_password_SOURCES = + +bin/arango-password: utils/arango-password.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +CLEANUP += bin/arango-password + +################################################################################ +### @brief arango upgrade +################################################################################ + +# exclude arango skripts from sources list +bin_arango_upgrade_SOURCES = + +bin/arango-upgrade: bin/arango-upgrade.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +CLEANUP += bin/arango-upgrade + +################################################################################ +### @brief arango datafile debugger +################################################################################ + +# exclude arango skrips from sources list +bin_arango_dfdb_SOURCES = + +bin/arango-dfdb: utils/arango-dfdb.in + sed \ + -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ + -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ + -e 's%@PKGDATADIR@%${TRI_PKGDATADIR}%g' \ + $< > $@ + chmod 755 $@ + +CLEANUP += bin/arango-dfdb + +## ----------------------------------------------------------------------------- +## --SECTION-- END-OF-FILE +## ----------------------------------------------------------------------------- + +## Local Variables: +## mode: outline-minor +## outline-regexp: "^\\(### @brief\\|## --SECTION--\\|# -\\*- \\)" +## End: diff --git a/utils/arango-dfdb.in b/utils/arango-dfdb.in index a13fcd945d..b01963f06b 100644 --- a/utils/arango-dfdb.in +++ b/utils/arango-dfdb.in @@ -3,8 +3,9 @@ # Placeholders starting with @ will be replaced by make ARANGOD="@SBINDIR@/arangod" -DATABASE="@DATABASE@" -SCRIPT="@STATICFILES@/js/server/arango-dfdb.js" +DATABASE="@DATABASEDIR@" +MODULESPATH="@PKGDATADIR@/js/server/modules;@PKGDATADIR@/js/common/modules" +SCRIPT="@PKGDATADIR@/js/server/arango-dfdb.js" if [ "$1" == "--database" ] || [ "$1" == "--database.directory" ] ; then shift @@ -12,9 +13,18 @@ if [ "$1" == "--database" ] || [ "$1" == "--database.directory" ] ; then shift fi +if test -z "$DATABASE"; then + echo "$0: please specify a database directory using '--database'" + exit 1 +fi + if test ! -d "$DATABASE"; then echo "$0: database directory '$DATABASE' does not exist" exit 1 fi -$ARANGOD -c none --database.directory "$DATABASE" --javascript.script "$SCRIPT" +$ARANGOD \ + -c none \ + --database.directory "$DATABASE" \ + --javascript.modules-path "$MODULESPATH" \ + --javascript.script "$SCRIPT" diff --git a/utils/arango-password.in b/utils/arango-password.in index 428018214b..913de059fe 100644 --- a/utils/arango-password.in +++ b/utils/arango-password.in @@ -3,8 +3,9 @@ # Placeholders starting with @ will be replaced by make ARANGOD="@SBINDIR@/arangod" -DATABASE="@DATABASE@" -SCRIPT="@STATICFILES@/js/server/arango-password.js" +DATABASE="@DATABASEDIR@" +MODULESPATH="@PKGDATADIR@/js/server/modules;@PKGDATADIR@/js/common/modules" +SCRIPT="@PKGDATADIR@/js/server/arango-password.js" if [ "$#" -lt 1 ]; then echo "usage: $0 [--database ] []" @@ -22,6 +23,11 @@ if [ "$1" == "--database" ] || [ "$1" == "--database.directory" ] ; then shift fi +if test -z "$DATABASE"; then + echo "$0: please specify a database directory using '--database'" + exit 1 +fi + if test ! -d "$DATABASE"; then echo "$0: database directory '$DATABASE' does not exist" exit 1 @@ -35,7 +41,18 @@ if echo "$USER" | grep -q "[^a-zA-Z0-0_-]"; then fi if [ "$#" -lt 2 ]; then - $ARANGOD -c none --database.directory "$DATABASE" --javascript.script "$SCRIPT" --javascript.script-parameter "$USER" + $ARANGOD \ + -c none \ + --database.directory "$DATABASE" \ + --javascript.modules-path "$MODULESPATH" \ + --javascript.script "$SCRIPT" \ + --javascript.script-parameter "$USER" else - $ARANGOD -c none --database.directory "$DATABASE" --javascript.script "$SCRIPT" --javascript.script-parameter "$USER" --javascript.script-parameter "$2" + $ARANGOD \ + -c none \ + --database.directory "$DATABASE" \ + --javascript.modules-path "$MODULESPATH" \ + --javascript.script "$SCRIPT" \ + --javascript.script-parameter "$USER" \ + --javascript.script-parameter "$2" fi From 5f16b7bfbef3b9389f1f9c00b14fcb52d878f68e Mon Sep 17 00:00:00 2001 From: Frank Celler Date: Fri, 31 Aug 2012 09:31:39 +0200 Subject: [PATCH 28/28] moved to utils --- .gitignore | 1 + Makefile.in | 24 +++++++++++++----------- utils/Makefile.files | 7 +++---- {bin => utils}/arango-upgrade.in | 0 4 files changed, 17 insertions(+), 15 deletions(-) rename {bin => utils}/arango-upgrade.in (100%) diff --git a/.gitignore b/.gitignore index b4aad3efb1..4b9ff65d6c 100644 --- a/.gitignore +++ b/.gitignore @@ -164,3 +164,4 @@ UnitTests/Philadelphia/Runner.cpp .v8-build-* VC++ .zeromq-build-* +etc/arangodb/*.conf diff --git a/Makefile.in b/Makefile.in index 49a5c411c7..7551b3391c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -192,7 +192,7 @@ target_triplet = @target@ @ENABLE_MRUBY_TRUE@am__append_5 = @MRUBY_CPPFLAGS@ @MRUBY_LDFLAGS@ @ENABLE_MRUBY_TRUE@am__append_6 = @MRUBY_LIBS@ sbin_PROGRAMS = bin/arangod$(EXEEXT) bin/arango-password$(EXEEXT) \ - bin/arango-dfdb$(EXEEXT) + bin/arango-dfdb$(EXEEXT) bin/arango-upgrade$(EXEEXT) bin_PROGRAMS = bin/arangosh$(EXEEXT) bin/arangoimp$(EXEEXT) \ $(am__EXEEXT_1) noinst_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3) @@ -594,6 +594,9 @@ bin_arango_dfdb_LDADD = $(LDADD) am_bin_arango_password_OBJECTS = bin_arango_password_OBJECTS = $(am_bin_arango_password_OBJECTS) bin_arango_password_LDADD = $(LDADD) +am_bin_arango_upgrade_OBJECTS = +bin_arango_upgrade_OBJECTS = $(am_bin_arango_upgrade_OBJECTS) +bin_arango_upgrade_LDADD = $(LDADD) am__bin_arangod_SOURCES_DIST = arangod/Actions/actions.cpp \ arangod/Actions/ActionDispatcherThread.cpp \ arangod/Actions/RestActionHandler.cpp \ @@ -800,10 +803,10 @@ SOURCES = $(lib_libarango_a_SOURCES) $(lib_libarango_client_a_SOURCES) \ $(lib_libarango_v8_a_SOURCES) \ $(UnitTests_basics_suite_SOURCES) \ $(UnitTests_geo_suite_SOURCES) $(bin_arango_dfdb_SOURCES) \ - $(bin_arango_password_SOURCES) $(bin_arangod_SOURCES) \ - $(bin_arangoimp_SOURCES) $(bin_arangoirb_SOURCES) \ - $(bin_arangosh_SOURCES) $(bin_zclient_SOURCES) \ - $(bin_zserver_SOURCES) + $(bin_arango_password_SOURCES) $(bin_arango_upgrade_SOURCES) \ + $(bin_arangod_SOURCES) $(bin_arangoimp_SOURCES) \ + $(bin_arangoirb_SOURCES) $(bin_arangosh_SOURCES) \ + $(bin_zclient_SOURCES) $(bin_zserver_SOURCES) DIST_SOURCES = $(am__lib_libarango_a_SOURCES_DIST) \ $(lib_libarango_client_a_SOURCES) \ $(lib_libarango_fe_a_SOURCES) \ @@ -812,9 +815,10 @@ DIST_SOURCES = $(am__lib_libarango_a_SOURCES_DIST) \ $(am__UnitTests_basics_suite_SOURCES_DIST) \ $(am__UnitTests_geo_suite_SOURCES_DIST) \ $(bin_arango_dfdb_SOURCES) $(bin_arango_password_SOURCES) \ - $(am__bin_arangod_SOURCES_DIST) $(bin_arangoimp_SOURCES) \ - $(am__bin_arangoirb_SOURCES_DIST) $(bin_arangosh_SOURCES) \ - $(bin_zclient_SOURCES) $(bin_zserver_SOURCES) + $(bin_arango_upgrade_SOURCES) $(am__bin_arangod_SOURCES_DIST) \ + $(bin_arangoimp_SOURCES) $(am__bin_arangoirb_SOURCES_DIST) \ + $(bin_arangosh_SOURCES) $(bin_zclient_SOURCES) \ + $(bin_zserver_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -1505,8 +1509,6 @@ bin_arangoimp_SOURCES = \ arangosh/V8Client/arangoimp.cpp -# bin/arango-upgrade - ################################################################################ ### @brief arango password ################################################################################ @@ -5295,7 +5297,7 @@ bin/arango-password: utils/arango-password.in $< > $@ chmod 755 $@ -bin/arango-upgrade: bin/arango-upgrade.in +bin/arango-upgrade: utils/arango-upgrade.in sed \ -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ diff --git a/utils/Makefile.files b/utils/Makefile.files index 3cad54093f..4df660663a 100644 --- a/utils/Makefile.files +++ b/utils/Makefile.files @@ -10,9 +10,8 @@ sbin_PROGRAMS += \ bin/arango-password \ - bin/arango-dfdb - -# bin/arango-upgrade + bin/arango-dfdb \ + bin/arango-upgrade ################################################################################ ### @brief arango password @@ -38,7 +37,7 @@ CLEANUP += bin/arango-password # exclude arango skripts from sources list bin_arango_upgrade_SOURCES = -bin/arango-upgrade: bin/arango-upgrade.in +bin/arango-upgrade: utils/arango-upgrade.in sed \ -e 's%@SBINDIR@%${TRI_SBINDIR}%g' \ -e 's%@DATABASEDIR@%${TRI_DATABASEDIR}%g' \ diff --git a/bin/arango-upgrade.in b/utils/arango-upgrade.in similarity index 100% rename from bin/arango-upgrade.in rename to utils/arango-upgrade.in