summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2013-11-20 22:35:22 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2013-11-20 22:35:22 +0000
commitc0c8194ffdcab11b3fb83bef384914b64ed58010 (patch)
tree6df6eda406bd4893c697341dd2c5586bf2ad4f6f /dev-lang
parentRemove vulnerable version. (diff)
downloadhistorical-c0c8194ffdcab11b3fb83bef384914b64ed58010.tar.gz
historical-c0c8194ffdcab11b3fb83bef384914b64ed58010.tar.bz2
historical-c0c8194ffdcab11b3fb83bef384914b64ed58010.zip
Version bump, and backport fix to newer plplot (bug #491024) for older version
Package-Manager: portage-2.2.7-prefix/cvs/Linux x86_64 Manifest-Sign-Key: 0x13CB1360
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/gdl/ChangeLog10
-rw-r--r--dev-lang/gdl/Manifest22
-rw-r--r--dev-lang/gdl/files/0.9.3-plwidth.patch158
-rw-r--r--dev-lang/gdl/files/0.9.4-gsl.patch62
-rw-r--r--dev-lang/gdl/files/0.9.4-python.patch12
-rw-r--r--dev-lang/gdl/files/0.9.4-reorder.patch380
-rw-r--r--dev-lang/gdl/gdl-0.9.3-r2.ebuild6
-rw-r--r--dev-lang/gdl/gdl-0.9.4.ebuild155
-rw-r--r--dev-lang/gdl/metadata.xml1
9 files changed, 792 insertions, 14 deletions
diff --git a/dev-lang/gdl/ChangeLog b/dev-lang/gdl/ChangeLog
index 3bfac49bf0e5..0cb088f1455d 100644
--- a/dev-lang/gdl/ChangeLog
+++ b/dev-lang/gdl/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-lang/gdl
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/gdl/ChangeLog,v 1.42 2013/11/16 09:00:03 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/gdl/ChangeLog,v 1.43 2013/11/20 22:35:13 bicatali Exp $
+
+*gdl-0.9.4 (20 Nov 2013)
+
+ 20 Nov 2013; SĂ©bastien Fabbro <bicatali@gentoo.org>
+ +files/0.9.3-plwidth.patch, +files/0.9.4-gsl.patch, +files/0.9.4-python.patch,
+ +files/0.9.4-reorder.patch, +gdl-0.9.4.ebuild, gdl-0.9.3-r2.ebuild,
+ metadata.xml:
+ Version bump, and backport fix to newer plplot (bug #491024) for older version
16 Nov 2013; Ryan Hill <dirtyepic@gentoo.org> gdl-0.9.2-r2.ebuild,
gdl-0.9.3-r2.ebuild:
diff --git a/dev-lang/gdl/Manifest b/dev-lang/gdl/Manifest
index a498f3cb354d..bb6fc94a7924 100644
--- a/dev-lang/gdl/Manifest
+++ b/dev-lang/gdl/Manifest
@@ -8,21 +8,23 @@ AUX 0.9.2-proj4.patch 1185 SHA256 4c6b4d97823ddeebae4c3170dc80c14bb68681117de599
AUX 0.9.2-semaphore.patch 770 SHA256 cbdfe65ddd23a62f04b2beee46f9f6e80bd12ff55a3563ea7059a7e2c083aac4 SHA512 6f921539e3dc09af453403f3b4137fc3e7d6fd4b81f05cb3214b4ab6a2feecbe2f3aeae1cdf03d92db13e60f7562825fa1a9bebfd75ac47fc6625b88f367b5ac WHIRLPOOL e1b8a55f0ce9d2626b53882528d0ee7056ad28ea5bbf746a7d77b4074d63977c1940bba478eb6b54a56d1b64e843a55106f53a21fb166d6566197828aef16208
AUX 0.9.2-tests.patch 8616 SHA256 4cf7fa89353265361bdbcf38fbeb3bacb572f2b8920ca00a73ce1d66a57c5a9e SHA512 885d2196d617eb4d37bcba056ece4ffb06366847cc213f0ee8c0a693925d16f27131a5d5bd92c5a7a555876a8d40e0a27dd59113aab9f76c319288e38dccf01a WHIRLPOOL 1191100da88814048c8fbd1c3e5881b1ea99f03e1de4d5945214230b6c4617ed643794d5cadb497bb7228bc37c811fe4db2593eff711c447ae3a30a1f402524b
AUX 0.9.3-netcdf-cxx.patch 1384 SHA256 31593c77bd4000aff298bb8ee0d3e49e571a76808cd48121cc89eac03229c005 SHA512 60882a514b6666434aa4341dfd155a2b6910d98c3416211e285661db97c6bb54bfe51f602f42b39475a13204e2003087d1101fef6b3ae8d49a330a7ef4785720 WHIRLPOOL a4b4d1a8b0134e3d643ca4ca4146c7a39ae4b7550279b60487ae8e74b4cb768f1d8e76bd839d085b9ad6eac8341645a783d97ef38665748875673957506e5b75
+AUX 0.9.3-plwidth.patch 6795 SHA256 fe8e5c9e9d3aeaa424f775af099fda3fb2d7188a390eb053a26ec96a5e6a66de SHA512 3976743ce90397356134003bf07ddb8f7acb9269a5bbf0d75adae18e94eb5edceefa2a85b6c649d0a2c721a15be7a5b4dda7d6b7fdcb0deed63ef563d5a271af WHIRLPOOL cf093049b18453268bf26a78955f3238cc152577e089ec5a748a2cd0caece6a583f25314de8f6b31dfa3633a8539c6b4bd4df99f976da5fa0ea446ed5827068d
AUX 0.9.3-sstream.patch 891 SHA256 ef02cd0e1b2b80ee61096ea8867091b720b2111e841d6b4fe14b6986db4fa199 SHA512 d88c9ccab80ba0ec5d1e9b2e3d71be5d2c0c09aaef2ccf4d26cde2110a42eb23568b14f527ddefebc608f197a3e37bb539a2fc90a38a8059f76908dff3e3ddd7 WHIRLPOOL fac6aba02aa1d584a2d4d7bf17fc59bda8469fd5bfb241acfb3490e84dd518934c9c21a2b20d9a272cf6cb799c6f976964e7b71b204b5b39f9c27501b3d2c3a4
+AUX 0.9.4-gsl.patch 2263 SHA256 a3fe0744cfd6082d1fa7170a0df0a466024baa7bb8c2825d5ce7e988851641eb SHA512 6dd7cdd5d69cd3aa8948e0b1b40c95ddb5c8932f200a28653a08d9222e21a06158e3fab40f7a12d7c4d510f1b59db01ec851e7f89ec2fe6dde93c37e016b5468 WHIRLPOOL a15e13a9e53d49e6fe6c65d5d82e2fcc14be40a8354badf923a02f50fd1e24617d89f9bb26c2d9bf1488812ec5925477120b6fbc3c6c4716ff94b9d7d6311ce4
+AUX 0.9.4-python.patch 468 SHA256 2d5e4b886a848d739a0e88a3db4bc9046a34dff7ae61e6ddfcf7911d39cc7e4f SHA512 06da99316bfb77661fe2a6cbf7268c9c503a0684433d00375350bce5eef5f759a82006346fb37c80276acf4b358dd6cd348d30a622a6b0234c0a23247666ea4b WHIRLPOOL 6ba1f8df2082c6c40733b5228886d75f2df590339efc829048ca405124d048ad1ea218e6ed89c9ef53db28d4ef184772004272ef451480b3c0eedbef9df67c09
+AUX 0.9.4-reorder.patch 12680 SHA256 089680e37fcec56533d53953867a342e18cdb1d097a44603416bd3876c5f3c71 SHA512 ab3c41d808b91e1b1b854e0f96caf1e005f3ba229d6e3b34901505aef7d9df652611890e5646492e65d79bb377993c79e595ec3db2fb63bf6f8eca4d6013ba6b WHIRLPOOL 2b0ca937101d7a4f420d158d04cd9e0672b742b7a4d7becfda6f02bcf3f1f46b1ba5b13531b7808c772d8355e1519e0774d08978b29ff0640d2e87df60cb9663
DIST gdl-0.9.2.tar.gz 2436946 SHA256 59907d941877327e9653a9cda5d801ea0b45f67af4c7da22acfcdd7cad291acf SHA512 44531b03fa698f268eea7a4e9dfe9a2c5746b4432c0198d616eb0938e9d9228bb3a2e3cf70b86f26d4cd720bf626b8c85f19bb79d3218727eba57689e07c9367 WHIRLPOOL 6ee960519adb2f3850808fd690cfd77571ef625b1f82cbe81a93c30a96ae3a19f9716e00fd44e6d541abb3211d4c255b5f773113e095d0f64057493f1d33903d
DIST gdl-0.9.3.tar.gz 2540106 SHA256 6d3c30c06ce2772a1017b3685dfc8fb74308e5f9d258fcb764b765c33d20f500 SHA512 63bb656c1280c24429dd0f8093f9ec7aab69b32e33b489461b863068409c7f49843e1997c2ff423fecf58d042e5d95d9b745f00495be4ea37ccb911936722e7c WHIRLPOOL 1652519dbdf99f95ec4ba11528c2d5dcfc3d40c708a01b390900002f6a9933800bee7af6af175452a3ecde517ce213791a06f779c85161e34c95616e9f0ccf60
+DIST gdl-0.9.4.tar.gz 2191342 SHA256 e18010cd874cad7b1fd8c752e9386571156e1fb066f2d27ecbcc15bbfc9514fa SHA512 46921eb3333a6b890187a6c75f71758e5e234b76d61a194e17de81ace10760659a4a676060490a5ef7374fd1acadf47c7f565133c19ea165e04c54a577b3c723 WHIRLPOOL a760fcf37e47235e3d21c8c852b65560894e29cfe3684bfee6e83f2d1d060dcaa41a2f9e60e41cbae55d9e5a2036518a5aad22cfd6f07b951a978e1ba2446eae
EBUILD gdl-0.9.2-r2.ebuild 3901 SHA256 bd230110da2b25deea863af23d2947514dca0db4f44fc96dfa4ec42bc2eac06a SHA512 a578bd998a5a2fb778f038f3f793065dd77d2af69a0ecead5da1ec106870b9cf3c7621de75ae07ca500e352a51f1fc77205864fcf5b3bdef18ffb377d1b3639a WHIRLPOOL 7f0b71069b121468a161d03312a200c74a17689fb88ac2b3a46f0350b0932bb801005b30405b04ca663b056207fe4a1bb1b1c28fce2de0a6ddf2023a9a90075d
-EBUILD gdl-0.9.3-r2.ebuild 4132 SHA256 b35ceb57b765ba1ab57690b4fa4ab5fb5a0f24e04c6fff4dfe8baf2f1e5cf238 SHA512 4d00dd400c0636c1f8afbec89fd0b0bc2811dc2c8f7d23f793ee78c447f76e63dfc4213696d2e5bb61efea9e54f4d335f54ef20184c2af5cd3401bff07c1dba0 WHIRLPOOL 93eb5f96402a196654f0d93ac58a01b6dfb301d18391bf330295645687d8e63f6a25ef730d2672afb0710d257c041252f574ac30a171c245cefdfd4312bf794c
-MISC ChangeLog 9380 SHA256 d55bf91fc944509c51ee5b69e9a53557e41896265fbee26a8f4f6f66737e91ff SHA512 da86c3f9870232990b2a45e3752b3632767611a0b86859dec3376e27da6e1f1e22fa6633fa5077082c647b136810846989f30bb12c55a3081b21182a330683d3 WHIRLPOOL db34830a279ef8ea1506ca9081b56333f95d3424696075449c1dccbaf3002e634bfb4b0254c4933ccc361e16df07f08aec17199c0b1df95cecca6bd8e65d9689
-MISC metadata.xml 868 SHA256 8fe2970b31ca708b5948308b6de3ddb28c097df8f4a542bf051857ca724897d6 SHA512 1f95c2d1f7791e6644fdd27ec08fe0096d0ac7c4b9232c89c236e5d50b9f99130904b056d42fb663e005acfe97781246402a12e0e955812cee0b4dca0a1e4f56 WHIRLPOOL 31b23b40fb3209f0529917ce29f8e231f44bc04a88630f3a4a907a1ba5c01f1e51bdd21c84dfd4b2e2bce613a8151ae9371f284d16229eb08c0ab961dad833ab
+EBUILD gdl-0.9.3-r2.ebuild 4147 SHA256 71edc4326d9f02f41d565ff6f1f2074f83c0dd2315de4a2e1782c3e973b28f63 SHA512 8ffdc8ab7b40ef76e46ab5e1877707c0b325df675e3ae3df9c443cc644c2af20c492e7e9745212f0aaea0885295bf86e9cd8316d7565bb68a8b4fb9df79fb91e WHIRLPOOL f33622bc3d48af31d14b1ef94deb23ee6298ed6193e7dff42335f430e3c9ad59c98b7a191048f9088761bca7f9d0114aab419006e4009ccc484d7c09320e655c
+EBUILD gdl-0.9.4.ebuild 4181 SHA256 b4e1998435038a533c6a6447d9b6d49d1172f540d9ba3692e36cc880688b372f SHA512 d7a4fc1c3de03bae23b962991a46bc88ec8c3fb9d3a41ad3e01ab9d5a6b416c8173e6e204950bf1d33157658436145c932bbeb1b9d2d028cd1b33f3b57d97fe8 WHIRLPOOL c4312e318b5ed582b6b151cd8926c0f04cd927797a8543a8a3cf3825fbae5fc4ff3660a41e8989490cfa008e3148190e17a48a05548f9a5f1139cbc5244f8328
+MISC ChangeLog 9709 SHA256 f4349e70168ce2203d2ddfd2c3a1a57d9716b8a6235db13222626e0faf416583 SHA512 df4a6d9dbe60c60c42241525c23c68250945d2829addc4d3e916949272baa9eaffa14bd0f83b5c0cb09fe394497a54d0255e5ec75493569fb8dc3119b9fc11cd WHIRLPOOL 1829665c206b693d53cc0c3948f76bbb854e232133820c8aee928b3d4655d16dd4d40ea35bf744eaa965d7447338827b1fa62cd65456e985bf57bf844100e4eb
+MISC metadata.xml 950 SHA256 c224ccacd82fc8af6d5199581639b5c2f15295757a9f86fe7664e2a068065a77 SHA512 f1561aecdbec19fce4fee997803a5fe5614553fdf8416365661649eccf0da175ca19c1c6fb631ffa0c3f6d463aa0e9b5b73133ce0548d6c6fe572f37546e96e8 WHIRLPOOL 16131f68a591f9b542507257a52044d392973a032aaeef11dda70e55296d394da654319eaeffdd74d0efa13a5ddb8e2f6814f6bd23373a245af986b857478d7e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iQEcBAEBCAAGBQJShzZuAAoJEO04vUmVeoRjo8QH/RsQgx+9hlLhce9VDFm3jliY
-gVZ2N7HZCr8BnZW7arBFMbAwiUpwaMuginHhIkEn9/FHFm18t8P9x/N+ExBamo3z
-rJdEstfNXsBVaj0o7fAT104FW8yjA8UKR1DFpbZe2af/XPcKqCp+6wSXfFUbROru
-LMr4d7KYmNruesSNsKKp9nms5YrA8B2vJ1JyH2cqwgk8tq22UBv7Nf7zbPPi/s3I
-i3rT9raTuyuNmUjXopj6wNh+yUsM+E/dLWxqeKmaD6HAq9LFupkXrZk/1YUgp7pM
-Zy3tuCMy/jbPMuJIXPQCQwV7gOLtrRM8Kso/FFeWejV2ob9AJ4LbCndm05NnElU=
-=f34u
+iEYEAREIAAYFAlKNOSUACgkQ1ycZbhPLE2Bl8gCfYWy8K80Fc25l+/ZJdUuM0zF0
+ApAAnRkW1PFsMlXfmlQxmGs04dG0rgTY
+=MSe7
-----END PGP SIGNATURE-----
diff --git a/dev-lang/gdl/files/0.9.3-plwidth.patch b/dev-lang/gdl/files/0.9.3-plwidth.patch
new file mode 100644
index 000000000000..b09e1a88f5d3
--- /dev/null
+++ b/dev-lang/gdl/files/0.9.3-plwidth.patch
@@ -0,0 +1,158 @@
+diff -up gdl-0.9.3/CMakeLists.txt.plwidth gdl-0.9.3/CMakeLists.txt
+--- gdl-0.9.3/CMakeLists.txt.plwidth 2013-08-27 16:55:33.806600443 -0600
++++ gdl-0.9.3/CMakeLists.txt 2013-08-27 16:55:36.589590528 -0600
+@@ -23,6 +23,7 @@ include(CheckLibraryExists)
+ include(CheckFunctionExists)
+ include(CheckSymbolExists)
+ include(CheckCSourceRuns)
++include(CheckCXXSourceCompiles)
+ include(FindPkgConfig)
+ include(FindPackageHandleStandardArgs)
+
+@@ -302,6 +303,18 @@ if(PLPLOT_FOUND)
+ message(STATUS "warning, due to old plplot library, [XYZ]TICKFORMAT option for plot axis will not be supported.\n"
+ "you should upgrade to plplot version > 5.9.6")
+ endif(HAVE_PLPLOT_SLABELFUNC)
++ set(CMAKE_REQUIRED_INCLUDES "${PLPLOT_INCLUDE_DIR}")
++ set(CMAKE_REQUIRED_LIBRARIES "${PLPLOT_LIBRARIES}")
++ check_cxx_source_compiles("
++#include <plplot/plstream.h>
++int main(int argc, char **argv) {
++ plstream *p = new plstream();
++ PLFLT w = 0.5;
++ p->width(w);
++}" HAVE_PLPLOT_WIDTH)
++ if(HAVE_PLPLOT_WIDTH)
++ set(HAVE_PLPLOT_WIDTH 1)
++ endif(HAVE_PLPLOT_WIDTH)
+ check_library_exists("${PLPLOT_LIBRARIES}" plstrl "" PLPLOT_PRIVATE_NOT_HIDDEN)
+ if(PLPLOT_PRIVATE_NOT_HIDDEN)
+ set(PLPLOT_PRIVATE_NOT_HIDDEN 1)
+diff -up gdl-0.9.3/config.h.cmake.plwidth gdl-0.9.3/config.h.cmake
+--- gdl-0.9.3/config.h.cmake.plwidth 2013-08-27 16:55:33.808600436 -0600
++++ gdl-0.9.3/config.h.cmake 2013-08-27 16:55:36.589590528 -0600
+@@ -28,6 +28,7 @@
+ #cmakedefine HAVE_NEXTTOWARD 1
+ #cmakedefine HAVE_OLDPLPLOT 1
+ #cmakedefine HAVE_PLPLOT_SLABELFUNC 1
++#cmakedefine HAVE_PLPLOT_WIDTH 1
+ #cmakedefine PLPLOT_PRIVATE_NOT_HIDDEN 1
+ #cmakedefine PLPLOT_HAS_LEGEND
+ #ifndef HAVE_STDINT_H
+diff -up gdl-0.9.3/src/plotting_contour.cpp.plwidth gdl-0.9.3/src/plotting_contour.cpp
+--- gdl-0.9.3/src/plotting_contour.cpp.plwidth 2013-08-27 16:55:33.883600169 -0600
++++ gdl-0.9.3/src/plotting_contour.cpp 2013-08-27 16:55:36.590590524 -0600
+@@ -705,7 +705,11 @@ namespace lib
+ actStream->pat(1,&ori,&spa);
+
+ if (docolors) actStream->Color ( ( *colors )[i%colors->N_Elements ( )], decomposed, (PLINT)colorindex_table_0_color );
++#if (HAVE_PLPLOT_WIDTH)
++ if (dothick) actStream->width ( static_cast<PLFLT>(( *thick )[i%thick->N_Elements ( )]));
++#else
+ if (dothick) actStream->wid ( ( *thick )[i%thick->N_Elements ( )]);
++#endif
+ if (dostyle) gdlLineStyle(actStream, ( *style )[i%style->N_Elements ( )]);
+ actStream->shade( map, xEl, yEl, isLog?doIt:NULL, xStart, xEnd, yStart, yEnd,
+ clevel[i], clevel[i+1],
+@@ -788,7 +792,11 @@ namespace lib
+ actStream->stransform(gdl3dTo2dTransformContour, &Data3d);
+ }
+ if (docolors) actStream->Color ( ( *colors )[i%colors->N_Elements ( )], decomposed, 2);
++#if (HAVE_PLPLOT_WIDTH)
++ if (dothick) actStream->width ( static_cast<PLFLT>(( *thick )[i%thick->N_Elements ( )]));
++#else
+ if (dothick) actStream->wid ( ( *thick )[i%thick->N_Elements ( )]);
++#endif
+ if (dostyle) gdlLineStyle(actStream, ( *style )[i%style->N_Elements ( )]);
+ if (dolabels) actStream->setcontlabelparam ( LABELOFFSET, (PLFLT) label_size, LABELSPACING,
+ (PLINT)(*labels)[i%labels->N_Elements()] );
+diff -up gdl-0.9.3/src/plotting.cpp.plwidth gdl-0.9.3/src/plotting.cpp
+--- gdl-0.9.3/src/plotting.cpp.plwidth 2013-08-27 16:55:33.886600158 -0600
++++ gdl-0.9.3/src/plotting.cpp 2013-08-27 16:58:33.707952697 -0600
+@@ -1891,7 +1891,11 @@ namespace lib
+ DFloatGDL* charthickVect=e->GetKWAs<DFloatGDL>( charthickIx );
+ charthick=(*charthickVect)[0];
+ }
++#if (HAVE_PLPLOT_WIDTH)
++ a->width(static_cast<PLFLT>(charthick));
++#else
+ a->wid(charthick);
++#endif
+ }
+
+ void gdlSetAxisCharsize(EnvT *e, GDLGStream *a, string axis)
+@@ -1919,7 +1923,11 @@ namespace lib
+
+ e->AssureFloatScalarKWIfPresent("THICK", thick);
+ if ( thick<=0.0 ) thick=1.0;
++#if (HAVE_PLPLOT_WIDTH)
++ a->width(static_cast<PLFLT>(thick));
++#else
+ a->wid(static_cast<PLINT>(floor(thick-0.5)));
++#endif
+ }
+
+ //LINESTYLE
+@@ -2932,7 +2940,11 @@ namespace lib
+ a->smaj((PLFLT)OtherAxisSizeInMm, 1.0); //set base ticks to default 0.02 viewport converted to mm.
+ a->smin((PLFLT)OtherAxisSizeInMm/2.0,1.0); //idem min (plplt defaults)
+ //thick for box and ticks.
++#if (HAVE_PLPLOT_WIDTH)
++ a->width(static_cast<PLFLT>(Thick));
++#else
+ a->wid(Thick);
++#endif
+ //ticks or grid eventually with style and length:
+ if (abs(TickLen)<1e-6) Opt=""; else Opt="st"; //remove ticks if ticklen=0
+ if (TickLen<0) {Opt+="i"; TickLen=-TickLen;}
+@@ -2977,7 +2989,11 @@ namespace lib
+ else if (axis=="Y") a->box("", 0.0, 0 , Opt.c_str(), 0.0, 0);
+ }
+ //reset charsize & thick
++#if (HAVE_PLPLOT_WIDTH)
++ a->width(1.0);
++#else
+ a->wid(1);
++#endif
+ a->sizeChar(1.0);
+ }
+ return 0;
+@@ -3120,7 +3136,11 @@ namespace lib
+ a->smaj((PLFLT)OtherAxisSizeInMm, 1.0); //set base ticks to default 0.02 viewport converted to mm.
+ a->smin((PLFLT)OtherAxisSizeInMm/2.0,1.0); //idem min (plplt defaults)
+ //thick for box and ticks.
++#if (HAVE_PLPLOT_WIDTH)
++ a->width(static_cast<PLFLT>(Thick));
++#else
+ a->wid(Thick);
++#endif
+ //ticks or grid eventually with style and length:
+ if (abs(TickLen)<1e-6) Opt=""; else Opt="st"; //remove ticks if ticklen=0
+ if (TickLen<0) {Opt+="i"; TickLen=-TickLen;}
+@@ -3145,7 +3165,11 @@ namespace lib
+ else if (axis=="Z") a->box3("","",0,0,"","",0,0, Opt.c_str(), "", TickInterval, Minor);
+ }
+ //reset charsize & thick
++#if (HAVE_PLPLOT_WIDTH)
++ a->width(1.0);
++#else
+ a->wid(1);
++#endif
+ a->sizeChar(1.0);
+ }
+ return 0;
+diff -up gdl-0.9.3/src/plotting_xyouts.cpp.plwidth gdl-0.9.3/src/plotting_xyouts.cpp
+--- gdl-0.9.3/src/plotting_xyouts.cpp.plwidth 2013-08-27 16:55:33.892600137 -0600
++++ gdl-0.9.3/src/plotting_xyouts.cpp 2013-08-27 16:55:36.591590521 -0600
+@@ -339,7 +339,11 @@ namespace lib
+ //plot!
+ if (docharsize) actStream->sizeChar(( *size )[i%size->N_Elements ( )]);
+ if (docolor) actStream->Color ( ( *color )[i%color->N_Elements ( )], decomposed, 2);
++#if (HAVE_PLPLOT_WIDTH)
++ if (docharthick) actStream->width ( static_cast<PLFLT>(( *charthick )[i%charthick->N_Elements ( )]));
++#else
+ if (docharthick) actStream->wid ( ( *charthick )[i%charthick->N_Elements ( )]);
++#endif
+ //orientation word is not orientation page depending on axes increment direction [0..1] vs. [1..0]
+ PLFLT oriD=(( *orientation )[i%orientation->N_Elements ( )]); //ori DEVICE
+ PLFLT oriW=oriD; //ori WORLD
diff --git a/dev-lang/gdl/files/0.9.4-gsl.patch b/dev-lang/gdl/files/0.9.4-gsl.patch
new file mode 100644
index 000000000000..3a96a41adcde
--- /dev/null
+++ b/dev-lang/gdl/files/0.9.4-gsl.patch
@@ -0,0 +1,62 @@
+diff -up gdl-0.9.4/src/gsl_matrix.cpp.gsl gdl-0.9.4/src/gsl_matrix.cpp
+--- gdl-0.9.4/src/gsl_matrix.cpp.gsl 2013-09-20 10:10:02.000000000 -0600
++++ gdl-0.9.4/src/gsl_matrix.cpp 2013-10-03 13:50:41.089660703 -0600
+@@ -41,10 +41,11 @@ namespace lib {
+ const int szdbl=sizeof(DDouble);
+ const int szflt=sizeof(DFloat);
+ const int szlng=sizeof(DLong);
++ const int szlng64=sizeof(DLong64);
+
+ void ludc_pro( EnvT* e)
+ {
+- // cout << szdbl << " " <<szflt << " " << szlng << endl;
++ // cout << szdbl << " " <<szflt << " " << szlng << " " szlng64 << endl;
+
+ SizeT nParam=e->NParam(1);
+ // if( nParam == 0)
+@@ -120,9 +121,15 @@ namespace lib {
+ dimension dim1(&n, (SizeT) 1);
+ BaseGDL** p1D = &e->GetPar( 1);
+ GDLDelete((*p1D));
+- *p1D = new DLongGDL(dim1, BaseGDL::NOZERO);
+- memcpy(&(*(DLongGDL*) *p1D)[0], p->data,
+- p0->Dim(0)*szlng);
++ if (sizeof(size_t) == szlng) {
++ *p1D = new DLongGDL(dim1, BaseGDL::NOZERO);
++ memcpy(&(*(DLongGDL*) *p1D)[0], p->data,
++ p0->Dim(0)*szlng);
++ } else {
++ *p1D = new DLong64GDL(dim1, BaseGDL::NOZERO);
++ memcpy(&(*(DLong64GDL*) *p1D)[0], p->data,
++ p0->Dim(0)*szlng64);
++ }
+
+ // gsl_matrix_free(mat);
+ // gsl_permutation_free(p);
+@@ -189,10 +196,15 @@ namespace lib {
+ GDLGuard<gsl_matrix> g1(mat,gsl_matrix_free);
+ memcpy(mat->data, &(*p0D)[0], nEl*szdbl);
+
+- DLongGDL* p1L =e->GetParAs<DLongGDL>(1);
+ gsl_permutation *p = gsl_permutation_alloc (nEl1);
+ GDLGuard<gsl_permutation> g2(p,gsl_permutation_free);
+- memcpy(p->data, &(*p1L)[0], nEl1*szlng);
++ if (sizeof(size_t) == szlng) {
++ DLongGDL* p1L =e->GetParAs<DLongGDL>(1);
++ memcpy(p->data, &(*p1L)[0], nEl1*szlng);
++ } else {
++ DLong64GDL* p1L =e->GetParAs<DLong64GDL>(1);
++ memcpy(p->data, &(*p1L)[0], nEl1*szlng64);
++ }
+
+ DDoubleGDL *p2D = e->GetParAs<DDoubleGDL>(2);
+ gsl_vector *b = gsl_vector_alloc(nEl2);
+@@ -222,7 +234,7 @@ namespace lib {
+ DDoubleGDL* res = new DDoubleGDL( p2->Dim(), BaseGDL::NOZERO);
+ memcpy(&(*res)[0], x->data, nEl1*szdbl);
+
+-// gsl_matrix_free(mat);
++// gsl_matrix_free(mat);Parameter
+ // gsl_vector_free(x);
+ // gsl_permutation_free(p);
+ // b ???
diff --git a/dev-lang/gdl/files/0.9.4-python.patch b/dev-lang/gdl/files/0.9.4-python.patch
new file mode 100644
index 000000000000..709f8c140cd0
--- /dev/null
+++ b/dev-lang/gdl/files/0.9.4-python.patch
@@ -0,0 +1,12 @@
+diff -up gdl-0.9.4/src/pythongdl.cpp.python gdl-0.9.4/src/pythongdl.cpp
+--- gdl-0.9.4/src/pythongdl.cpp.python 2013-07-26 03:30:32.000000000 -0600
++++ gdl-0.9.4/src/pythongdl.cpp 2013-09-30 10:24:27.092666180 -0600
+@@ -373,7 +373,7 @@ PyObject *GDLSub( PyObject *self, PyObje
+ if( libCall)
+ e = new EnvT( NULL, sub);
+ else
+- e = new EnvUDT( NULL, sub);
++ e = new EnvUDT( NULL, static_cast<DSubUD*>(sub));
+
+ Guard< EnvBaseT> e_guard( e);
+
diff --git a/dev-lang/gdl/files/0.9.4-reorder.patch b/dev-lang/gdl/files/0.9.4-reorder.patch
new file mode 100644
index 000000000000..d871757a29d0
--- /dev/null
+++ b/dev-lang/gdl/files/0.9.4-reorder.patch
@@ -0,0 +1,380 @@
+diff -up gdl-0.9.4/src/allix.hpp.reorder gdl-0.9.4/src/allix.hpp
+--- gdl-0.9.4/src/allix.hpp.reorder 2012-12-11 10:39:35.000000000 -0700
++++ gdl-0.9.4/src/allix.hpp 2013-10-04 10:59:22.666594845 -0600
+@@ -344,9 +344,9 @@ private:
+ public:
+ AllIxAllIndexedT( ArrayIndexVectorT* ixList_, SizeT acRank_, SizeT nIx_, const SizeT* varStride_)
+ : ixList( ixList_)
++ , varStride( varStride_)
+ , acRank( acRank_)
+ , nIx( nIx_)
+- , varStride( varStride_)
+ {}
+ ~AllIxAllIndexedT() {}
+
+@@ -384,11 +384,11 @@ private:
+ public:
+ AllIxNewMultiT( ArrayIndexVectorT* ixList_, SizeT acRank_, SizeT nIx_, const SizeT* varStride_, SizeT* nIterLimit_, SizeT* stride_)
+ : ixList( ixList_)
+- , acRank( acRank_)
+- , nIx( nIx_)
+ , varStride( varStride_)
+ , nIterLimit( nIterLimit_)
+ , stride( stride_)
++ , acRank( acRank_)
++ , nIx( nIx_)
+ {
+ add = 0;
+ assert( varStride[0] == 1);
+@@ -440,10 +440,10 @@ private:
+ public:
+ AllIxNewMulti2DT( ArrayIndexVectorT* ixList_, SizeT nIx_, const SizeT* varStride_, SizeT* nIterLimit_, SizeT* stride_)
+ : ixList( ixList_)
+- , nIx( nIx_)
+ , varStride( varStride_)
+ , nIterLimit( nIterLimit_)
+ , stride( stride_)
++ , nIx( nIx_)
+ {
+ add = 0;
+ if( !(*ixList)[0]->Indexed())
+@@ -499,11 +499,11 @@ private:
+ public:
+ AllIxNewMultiNoneIndexedT( ArrayIndexVectorT* ixList_, SizeT acRank_, SizeT nIx_, const SizeT* varStride_, SizeT* nIterLimit_, SizeT* stride_)
+ : ixList( ixList_)
+- , acRank( acRank_)
+- , nIx( nIx_)
+ , varStride( varStride_)
+ , nIterLimit( nIterLimit_)
+ , stride( stride_)
++ , acRank( acRank_)
++ , nIx( nIx_)
+ {
+ assert( varStride[0] == 1);
+ add = 0;
+@@ -548,10 +548,10 @@ private:
+ public:
+ AllIxNewMultiNoneIndexed2DT( ArrayIndexVectorT* ixList_, SizeT nIx_, const SizeT* varStride_, SizeT* nIterLimit_, SizeT* stride_)
+ : ixList( ixList_)
+- , nIx( nIx_)
+ , varStride( varStride_)
+ , nIterLimit( nIterLimit_)
+ , stride( stride_)
++ , nIx( nIx_)
+ {
+ assert( varStride[0] == 1);
+ ixListStride[0] = (*ixList)[0]->GetStride();
+@@ -593,11 +593,11 @@ public:
+ AllIxNewMultiOneVariableIndexNoIndexT( RankT gt1Rank, SizeT add_,
+ ArrayIndexVectorT* ixList_, SizeT acRank_, SizeT nIx_, const SizeT* varStride_, SizeT* nIterLimit_, SizeT* stride_)
+ : ixList( ixList_)
+- , acRank( acRank_)
+- , nIx( nIx_)
+ , varStride( varStride_)
+ , nIterLimit( nIterLimit_)
+ , stride( stride_)
++ , acRank( acRank_)
++ , nIx( nIx_)
+ , add( add_)
+ , variableIndex( gt1Rank)
+ {
+@@ -642,11 +642,11 @@ public:
+ SizeT acRank_, SizeT nIx_, const SizeT* varStride_,
+ SizeT* nIterLimit_, SizeT* stride_)
+ : ixList( ixList_)
+- , acRank( acRank_)
+- , nIx( nIx_)
+ , varStride( varStride_)
+ , nIterLimit( nIterLimit_)
+ , stride( stride_)
++ , acRank( acRank_)
++ , nIx( nIx_)
+ , add( add_)
+ , variableIndex( gt1Rank)
+ {
+diff -up gdl-0.9.4/src/arrayindex.hpp.reorder gdl-0.9.4/src/arrayindex.hpp
+--- gdl-0.9.4/src/arrayindex.hpp.reorder 2013-09-17 10:46:19.000000000 -0600
++++ gdl-0.9.4/src/arrayindex.hpp 2013-10-04 11:00:58.849879562 -0600
+@@ -303,7 +303,7 @@ private:
+ RangeT s;
+ BaseGDL* rawData; // for overloaded object indexing
+
+- CArrayIndexScalar( const CArrayIndexScalar& c): s( c.s), sInit( c.sInit)
++ CArrayIndexScalar( const CArrayIndexScalar& c): sInit( c.sInit), s( c.s)
+ {
+ assert( c.rawData != NULL);
+ rawData = c.rawData->Dup();
+diff -up gdl-0.9.4/src/arrayindexlistnoassoct.hpp.reorder gdl-0.9.4/src/arrayindexlistnoassoct.hpp
+--- gdl-0.9.4/src/arrayindexlistnoassoct.hpp.reorder 2013-07-04 17:24:44.000000000 -0600
++++ gdl-0.9.4/src/arrayindexlistnoassoct.hpp 2013-10-04 11:24:02.893867004 -0600
+@@ -59,8 +59,8 @@ public:
+ { nParam = 0;}
+
+ ArrayIndexListOneNoAssocT( const ArrayIndexListOneNoAssocT& cp):
+- cleanupIx(),
+ ArrayIndexListT( cp),
++ cleanupIx(),
+ ix( cp.ix->Dup()),
+ allIx( NULL)
+ {
+diff -up gdl-0.9.4/src/arrayindexlistt.hpp.reorder gdl-0.9.4/src/arrayindexlistt.hpp
+--- gdl-0.9.4/src/arrayindexlistt.hpp.reorder 2013-09-17 10:46:19.000000000 -0600
++++ gdl-0.9.4/src/arrayindexlistt.hpp 2013-10-04 11:23:35.607069888 -0600
+@@ -130,8 +130,8 @@ public:
+ { nParam = 0;}
+
+ ArrayIndexListOneT( const ArrayIndexListOneT& cp):
+- cleanupIx(),
+ ArrayIndexListT( cp),
++ cleanupIx(),
+ ix( cp.ix->Dup()),
+ allIx( NULL)
+ {
+diff -up gdl-0.9.4/src/deviceps.hpp.reorder gdl-0.9.4/src/deviceps.hpp
+--- gdl-0.9.4/src/deviceps.hpp.reorder 2013-07-03 15:48:06.000000000 -0600
++++ gdl-0.9.4/src/deviceps.hpp 2013-10-04 13:14:48.283746779 -0600
+@@ -441,9 +441,9 @@ private:
+ }
+
+ public:
+- DevicePS(): Graphics(), fileName( "gdl.ps"), actStream( NULL), color(0),
+- decomposed( 0), encapsulated(false), scale(1.), XPageSize(17.78), YPageSize(12.7),
+- XOffset(0.0),YOffset(0.0)
++ DevicePS(): Graphics(), fileName( "gdl.ps"), actStream( NULL),
++ XPageSize(17.78), YPageSize(12.7), XOffset(0.0),YOffset(0.0),
++ color(0), decomposed( 0), encapsulated(false), scale(1.)
+ {
+ name = "PS";
+
+diff -up gdl-0.9.4/src/dnode.cpp.reorder gdl-0.9.4/src/dnode.cpp
+--- gdl-0.9.4/src/dnode.cpp.reorder 2012-09-18 08:19:18.000000000 -0600
++++ gdl-0.9.4/src/dnode.cpp 2013-10-04 12:02:48.601416601 -0600
+@@ -55,9 +55,10 @@ DNode::DNode( const DNode& cp):
+ // keepRight( false),
+ CommonAST( cp), //down(), right(),
+ lineNumber( cp.getLine()), cData(NULL),
+- var(cp.var), arrIxList(NULL),arrIxListNoAssoc(NULL),
++ var(cp.var),
+ libFun( cp.libFun),
+ libPro( cp.libPro),
++ arrIxList(NULL),arrIxListNoAssoc(NULL),
+ labelStart( cp.labelStart), labelEnd( cp.labelEnd)
+ {
+ if( cp.cData != NULL) cData = cp.cData->Dup();
+diff -up gdl-0.9.4/src/dnode.hpp.reorder gdl-0.9.4/src/dnode.hpp
+diff -up gdl-0.9.4/src/dpro.cpp.reorder gdl-0.9.4/src/dpro.cpp
+--- gdl-0.9.4/src/dpro.cpp.reorder 2013-09-17 03:03:25.000000000 -0600
++++ gdl-0.9.4/src/dpro.cpp 2013-10-04 13:05:23.169223727 -0600
+@@ -200,8 +200,8 @@ DSubUD::~DSubUD()
+ DSubUD::DSubUD(const string& n,const string& o,const string& f) :
+ DSub(n,o), file(f),
+ tree( NULL),
+- labelList(),
+ compileOpt(GDLParser::NONE),
++ labelList(),
+ nForLoops( 0)
+ {
+ if( o != "")
+diff -up gdl-0.9.4/src/envt.cpp.reorder gdl-0.9.4/src/envt.cpp
+--- gdl-0.9.4/src/envt.cpp.reorder 2013-09-25 05:55:21.000000000 -0600
++++ gdl-0.9.4/src/envt.cpp 2013-10-04 13:08:17.081114086 -0600
+@@ -107,15 +107,15 @@ void EnvUDT::operator delete( void *ptr)
+
+
+ EnvBaseT::EnvBaseT( ProgNodeP cN, DSub* pro_):
+- env(),
+ toDestroy(),
++ env(),
+ pro(pro_),
+- extra(NULL),
+- newEnv(NULL),
+ callingNode( cN),
+ lineNumber( 0),
+- obj(false)
+- ,ptrToReturnValue(NULL)
++ obj(false),
++ extra(NULL),
++ newEnv(NULL),
++ ptrToReturnValue(NULL)
+ //, toDestroyInitialIndex( toDestroy.size())
+ {}
+
+diff -up gdl-0.9.4/src/envt.hpp.reorder gdl-0.9.4/src/envt.hpp
+--- gdl-0.9.4/src/envt.hpp.reorder 2013-09-26 04:47:48.000000000 -0600
++++ gdl-0.9.4/src/envt.hpp 2013-10-04 10:55:21.892428311 -0600
+@@ -863,7 +863,7 @@ public:
+ typedef SizeT size_type;
+ typedef EnvUDT* pointer_type;
+
+- EnvStackT(): sz(defaultStackDepth), top(0)
++ EnvStackT(): top(0), sz(defaultStackDepth)
+ {
+ envStackFrame = new EnvUDT* [ sz+1];
+ envStack = envStackFrame + 1;
+diff -up gdl-0.9.4/src/gdlexception.cpp.reorder gdl-0.9.4/src/gdlexception.cpp
+--- gdl-0.9.4/src/gdlexception.cpp.reorder 2013-06-23 17:07:32.000000000 -0600
++++ gdl-0.9.4/src/gdlexception.cpp 2013-10-04 14:00:32.102348401 -0600
+@@ -43,9 +43,9 @@ GDLException::GDLException(DLong eC, con
+ errorNodeP( NULL),
+ errorCode(eC),
+ line( 0), col( 0), prefix( pre),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {
+ if(decorate && interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+@@ -97,9 +97,9 @@ GDLException::GDLException(const RefDNod
+ errorNodeP( NULL),
+ errorCode(-1),
+ line( 0), col( 0), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {
+ if(interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+@@ -122,9 +122,9 @@ GDLException::GDLException(DLong eC, con
+ errorNodeP( NULL),
+ errorCode(eC),
+ line( 0), col( 0), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {
+ if(interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+@@ -148,9 +148,9 @@ GDLException::GDLException(const ProgNod
+ errorNodeP( eN),
+ errorCode(-1),
+ line( 0), col( 0), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {
+ if( overWriteNode && interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+@@ -177,9 +177,9 @@ GDLException::GDLException(DLong eC, con
+ errorNodeP( eN),
+ errorCode(eC),
+ line( 0), col( 0), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {
+ if( overWriteNode && interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+@@ -207,9 +207,9 @@ GDLException::GDLException(SizeT l, Size
+ errorNodeP( NULL),
+ errorCode(-1),
+ line( l), col( c), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {
+ if(interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+@@ -232,8 +232,8 @@ GDLException::GDLException(DLong eC, Siz
+ errorNodeP( NULL),
+ errorCode(eC),
+ line( l), col( c), prefix( true),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ arrayexprIndexeeFailed(false),
++ targetEnv( NULL)
+ {
+ if(interpreter!=NULL && interpreter->CallStack().size()>0)
+ {
+diff -up gdl-0.9.4/src/gdlexception.hpp.reorder gdl-0.9.4/src/gdlexception.hpp
+--- gdl-0.9.4/src/gdlexception.hpp.reorder 2013-06-23 17:07:32.000000000 -0600
++++ gdl-0.9.4/src/gdlexception.hpp 2013-10-04 11:12:58.332125288 -0600
+@@ -66,18 +66,18 @@ public:
+ errorNodeP( NULL),
+ errorCode(-1),
+ line( 0), col( 0), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {}
+ GDLException( DLong eC): ANTLRException(),
+ errorNode(static_cast<RefDNode>(antlr::nullAST)),
+ errorNodeP( NULL),
+ errorCode(eC),
+ line( 0), col( 0), prefix( true),
++ arrayexprIndexeeFailed(false),
+ ioException( false),
+- targetEnv( NULL),
+- arrayexprIndexeeFailed(false)
++ targetEnv( NULL)
+ {}
+ GDLException(const std::string& s, bool pre = true, bool decorate=true);
+ GDLException(const RefDNode eN, const std::string& s);
+diff -up gdl-0.9.4/src/prognode.cpp.reorder gdl-0.9.4/src/prognode.cpp
+--- gdl-0.9.4/src/prognode.cpp.reorder 2013-09-27 18:47:49.000000000 -0600
++++ gdl-0.9.4/src/prognode.cpp 2013-10-04 14:01:11.490342867 -0600
+@@ -54,19 +54,19 @@ return nonCopyNodeLookupArray;
+
+ // tanslation RefDNode -> ProgNode
+ ProgNode::ProgNode( const RefDNode& refNode):
++ ttype( refNode->getType()),
++ text( refNode->getText()),
+ keepRight( false),
+ keepDown( false),
+ breakTarget( NULL),
+- ttype( refNode->getType()),
+- text( refNode->getText()),
+ down( NULL),
+ right( NULL),
+- lineNumber( refNode->getLine()),
+ cData( refNode->StealCData()), // stealing is crucial here because references might exist
++ var( refNode->var),
+ // as arrayindices
+- libPro( refNode->libPro),
+ libFun( refNode->libFun),
+- var( refNode->var),
++ libPro( refNode->libPro),
++ lineNumber( refNode->getLine()),
+ arrIxList( refNode->StealArrIxList()),
+ arrIxListNoAssoc( refNode->StealArrIxNoAssocList()),
+ // arrIxList( refNode->CloneArrIxList()),
+diff -up gdl-0.9.4/src/prognodeexpr.cpp.reorder gdl-0.9.4/src/prognodeexpr.cpp
+--- gdl-0.9.4/src/prognodeexpr.cpp.reorder 2013-09-26 05:08:39.000000000 -0600
++++ gdl-0.9.4/src/prognodeexpr.cpp 2013-10-04 13:20:36.660155916 -0600
+@@ -49,18 +49,18 @@ BinaryExprNC::BinaryExprNC( const RefDNo
+ }
+
+ ProgNode::ProgNode(): // for NULLProgNode
++ ttype( antlr::Token::NULL_TREE_LOOKAHEAD),
++ text( "NULLProgNode"),
+ keepRight( false),
+ keepDown( false),
+ breakTarget( NULL),
+- ttype( antlr::Token::NULL_TREE_LOOKAHEAD),
+- text( "NULLProgNode"),
+ down( NULL),
+ right( NULL),
+- lineNumber( 0),
+ cData( NULL),
+- libPro( NULL),
+- libFun( NULL),
+ var( NULL),
++ libFun( NULL),
++ libPro( NULL),
++ lineNumber( 0),
+ labelStart( 0),
+ labelEnd( 0)
+ {}
diff --git a/dev-lang/gdl/gdl-0.9.3-r2.ebuild b/dev-lang/gdl/gdl-0.9.3-r2.ebuild
index cdabddb8bf27..a623e175753a 100644
--- a/dev-lang/gdl/gdl-0.9.3-r2.ebuild
+++ b/dev-lang/gdl/gdl-0.9.3-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/gdl/gdl-0.9.3-r2.ebuild,v 1.2 2013/11/16 09:00:03 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/gdl/gdl-0.9.3-r2.ebuild,v 1.3 2013/11/20 22:35:13 bicatali Exp $
EAPI=4
@@ -26,7 +26,7 @@ RESTRICT=test
RDEPEND="
sci-libs/gsl
- sci-libs/plplot
+ <sci-libs/plplot-5.9.10
sys-libs/ncurses
sys-libs/readline
sys-libs/zlib
@@ -58,7 +58,7 @@ src_prepare() {
use hdf5 && has_version sci-libs/hdf5[mpi] && export CXX=mpicxx
epatch "${FILESDIR}"/0.9.2-{antlr,proj4,include,tests,semaphore}.patch
- epatch "${FILESDIR}"/0.9.3-{sstream,netcdf-cxx}.patch
+ epatch "${FILESDIR}"/0.9.3-{sstream,netcdf-cxx,plwidth}.patch
# make sure antlr includes are from system and rebuild the sources with it
# https://sourceforge.net/tracker/?func=detail&atid=618685&aid=3465878&group_id=97659
diff --git a/dev-lang/gdl/gdl-0.9.4.ebuild b/dev-lang/gdl/gdl-0.9.4.ebuild
new file mode 100644
index 000000000000..5fbad6c0049d
--- /dev/null
+++ b/dev-lang/gdl/gdl-0.9.4.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/gdl/gdl-0.9.4.ebuild,v 1.1 2013/11/20 22:35:13 bicatali Exp $
+
+EAPI=5
+
+WX_GTK_VER="2.8"
+PYTHON_COMPAT=( python{2_6,2_7} )
+
+inherit cmake-utils eutils python-r1 wxwidgets toolchain-funcs virtualx
+
+DESCRIPTION="Interactive Data Language compatible incremental compiler"
+HOMEPAGE="http://gnudatalanguage.sourceforge.net/"
+SRC_URI="mirror://sourceforge/gnudatalanguage/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+eigen fftw grib gshhs hdf hdf5 imagemagick netcdf openmp
+ proj postscript python static-libs udunits wxwidgets"
+
+RDEPEND="
+ sci-libs/gsl
+ sci-libs/plplot:=
+ sys-libs/ncurses
+ sys-libs/readline
+ sys-libs/zlib
+ x11-libs/libX11
+ fftw? ( >=sci-libs/fftw-3 )
+ grib? ( sci-libs/grib_api )
+ gshhs? ( sci-geosciences/gshhs-data sci-geosciences/gshhs )
+ hdf? ( sci-libs/hdf )
+ hdf5? ( sci-libs/hdf5 )
+ imagemagick? ( || (
+ media-gfx/graphicsmagick[cxx]
+ media-gfx/imagemagick[cxx] ) )
+ netcdf? ( sci-libs/netcdf )
+ proj? ( sci-libs/proj )
+ postscript? ( dev-libs/pslib )
+ python? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ udunits? ( sci-libs/udunits )
+ wxwidgets? ( x11-libs/wxGTK:2.8[X,-odbc] )"
+
+DEPEND="${RDEPEND}
+ >=dev-java/antlr-2.7.7-r5:0[cxx,java,script]
+ virtual/pkgconfig
+ eigen? ( dev-cpp/eigen:3 )"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+ "${FILESDIR}"/0.9.2-antlr.patch
+ "${FILESDIR}"/0.9.2-include.patch
+ "${FILESDIR}"/0.9.2-proj4.patch
+ "${FILESDIR}"/0.9.2-semaphore.patch
+ "${FILESDIR}"/0.9.3-plwidth.patch
+ "${FILESDIR}"/0.9.4-gsl.patch
+ "${FILESDIR}"/0.9.4-python.patch
+ "${FILESDIR}"/0.9.4-reorder.patch
+)
+
+pkg_setup() {
+ use openmp && [[ $(tc-getCXX)$ == *g++* ]] && ! tc-has-openmp && \
+ die "You have openmp enabled but your current g++ does not support it"
+}
+
+src_prepare() {
+ cmake-utils_src_prepare
+
+ use hdf5 && has_version sci-libs/hdf5[mpi] && export CXX=mpicxx
+
+ # make sure antlr includes are from system and rebuild the sources with it
+ # https://sourceforge.net/tracker/?func=detail&atid=618685&aid=3465878&group_id=97659
+ rm -r src/antlr || die
+ einfo "Regenerating grammar"
+ pushd src > /dev/null
+ local i
+ for i in *.g; do antlr ${i} || die ; done
+ popd > /dev/null
+
+ # gentoo: use proj instead of libproj4 (libproj4 last update: 2004)
+ sed -i \
+ -e 's:proj4:proj:' \
+ -e 's:lib_proj\.h:proj_api\.h:g' \
+ CMakeModules/FindLibproj4.cmake src/math_utl.hpp || die
+
+ # gentoo: avoid install files in datadir directory
+ sed -i \
+ -e '/AUTHORS/d' \
+ CMakeLists.txt || die
+}
+
+src_configure() {
+ # MPI is still very buggy
+ # x11=off does not compile
+ local mycmakeargs=(
+ -Wno-dev
+ -DMPICH=OFF
+ -DBUNDLED_ANTLR=OFF
+ -DX11=ON
+ $(cmake-utils_use fftw)
+ $(cmake-utils_use eigen EIGEN3)
+ $(cmake-utils_use grib)
+ $(cmake-utils_use gshhs)
+ $(cmake-utils_use hdf)
+ $(cmake-utils_use hdf5)
+ $(cmake-utils_use netcdf)
+ $(cmake-utils_use openmp)
+ $(cmake-utils_use proj LIBPROJ4)
+ $(cmake-utils_use postscript PSLIB)
+ $(cmake-utils_use udunits)
+ $(cmake-utils_use wxwidgets)
+ )
+ if use imagemagick; then
+ if has_version media-gfx/graphicsmagick[cxx]; then
+ mycmakeargs+=( -DGRAPHICSMAGICK=ON -DMAGICK=OFF )
+ else
+ mycmakeargs+=( -DGRAPHICSMAGICK=OFF -DMAGICK=ON )
+ fi
+ else
+ mycmakeargs+=( "-DGRAPHICSMAGICK=OFF -DMAGICK=OFF" )
+ fi
+ configuration() {
+ mycmakeargs+=( $@ )
+ cmake-utils_src_configure
+ }
+ configuration -DPYTHON_MODULE=OFF -DPYTHON=OFF
+ use python && python_foreach_impl configuration -DPYTHON_MODULE=ON -DPYTHON=ON
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use python && python_foreach_impl cmake-utils_src_make
+}
+
+src_test() {
+ # there is check target instead of the ctest to define some LDPATH
+ Xemake -C "${BUILD_DIR}" check
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use python; then
+ installation() {
+ python_export PYTHON_SITEDIR
+ exeinto "${PYTHON_SITEDIR#${EPREFIX}}"
+ newexe src/libgdl.so GDL.so
+ }
+ python_foreach_impl run_in_build_dir installation
+ dodoc PYTHON.txt
+ fi
+
+ echo "GDL_PATH=\"+${EROOT%/}/usr/share/gnudatalanguage\"" > 50gdl
+ doenvd 50gdl
+}
diff --git a/dev-lang/gdl/metadata.xml b/dev-lang/gdl/metadata.xml
index 267678864304..7929e3956bad 100644
--- a/dev-lang/gdl/metadata.xml
+++ b/dev-lang/gdl/metadata.xml
@@ -8,6 +8,7 @@
Information Solutions.
</longdescription>
<use>
+ <flag name='hdf'>Build matrix manipulation with <pkg>dev-cpp/eigen</pkg></flag>
<flag name='hdf'>Add support for the Hierarchical Data Format v.4</flag>
<flag name='gshhs'>Add support for projection adn continent maps with <pkg>sci-geosciences/gshhs-data</pkg></flag>