summaryrefslogtreecommitdiff
path: root/dev-lang/gdl
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/gdl')
-rw-r--r--dev-lang/gdl/Manifest17
-rw-r--r--dev-lang/gdl/files/0.9.2-include.patch10
-rw-r--r--dev-lang/gdl/files/0.9.5-antlr.patch91
-rw-r--r--dev-lang/gdl/files/0.9.5-png.patch15
-rw-r--r--dev-lang/gdl/files/0.9.6-disable-tests-hanging-under-xvfb-run.patch80
-rw-r--r--dev-lang/gdl/files/0.9.6-fix-file-move.patch14
-rw-r--r--dev-lang/gdl/files/0.9.6-fix-python-function-call.patch30
-rw-r--r--dev-lang/gdl/files/0.9.6-formats.patch111
-rw-r--r--dev-lang/gdl/files/0.9.6-fun-fix.patch56
-rw-r--r--dev-lang/gdl/files/0.9.6-gcc6.patch31
-rw-r--r--dev-lang/gdl/files/0.9.6-python-use-path-and-startup.patch20
-rw-r--r--dev-lang/gdl/files/gdl-1.0.0_rc3-cmake.patch94
-rw-r--r--dev-lang/gdl/gdl-0.9.6-r3.ebuild161
-rw-r--r--dev-lang/gdl/gdl-1.0.0_rc3.ebuild152
-rw-r--r--dev-lang/gdl/metadata.xml1
15 files changed, 251 insertions, 632 deletions
diff --git a/dev-lang/gdl/Manifest b/dev-lang/gdl/Manifest
index 34149157162d..98b0cf899cf9 100644
--- a/dev-lang/gdl/Manifest
+++ b/dev-lang/gdl/Manifest
@@ -1,13 +1,4 @@
-AUX 0.9.2-include.patch 314 BLAKE2B 44f0f36503f9e2e9e588ef78a6d27fac00d2b63f5220a791fc90ac40fa90638731ac1f0989227b74eb6ad893420b781ef4ba005b75adab6459d2d6393ba16e6f SHA512 3dc426de776f004b9c9840f37af0002907036b6f9d370535c51a2ed6916156d34d640214bec2dba58c9553917c16b996b61194bf15bb3e1c6f2b6f81edb13a4c
-AUX 0.9.5-antlr.patch 3059 BLAKE2B abf4380e73e846960143c8c7e25ff7a81c99ae98c06750c7479f39c93cd1ec476d9adb9f6714e9d72c6797aa663f931c4446a48f7f407ed61523877515d23691 SHA512 2d8d47162fc0179319b728041421a72c965657023e396285de5ec2849b667e21117a587c771b88eb84c54f983747cb1635b7bfb0955762af1912efa88128593c
-AUX 0.9.5-png.patch 489 BLAKE2B d83cf980353485b8210bd888d41ee27254f89d850a4fb59381f27ed9905a87c0ef6d49f0b79c1c2148ecc624544d59b49cc3a5f1ee48a05d607aaa9777f9c36b SHA512 6a7b09286fb62ad18b57434804260a6155c1f4739d72a9ed440c6efe1d682b126a297885d092fbf0cb1e2809a663cb9c7755507c807613199b317f981df7cfc1
-AUX 0.9.6-disable-tests-hanging-under-xvfb-run.patch 1884 BLAKE2B 193e24b0842996f00773b1eec164a2c57eb40decefc7c80048aebec7ad51d7decfed55ad352e8fa911c4fa87a4376de88d14b5b01fa88ce3378edf8234c1b5b8 SHA512 00e97be57c6e278814d9bab8f41c294475f5bae3dad682d288814cec153b27adf1f45257851620dfdb450a184f39b621d5d8fa0c407c612e06c8639454c8f5f7
-AUX 0.9.6-fix-file-move.patch 639 BLAKE2B 664ced9bba24646ec2149e51af67866ed46ebb5941f2b9ab0a62b157088937549131d3fffb8abef60d85644feb8928030ad55e916af4d03059cd803415ce517e SHA512 761266807892aca4d9e8031ddf75b8066d364efc63c624151f6929ac74ee0d43dd4e7e189ba754bbb6d2b134f390f67fc919b33f0402ef8a221801ff678fb78a
-AUX 0.9.6-fix-python-function-call.patch 987 BLAKE2B 3cae08850e5a6ccccf90c072e9d965cbe79fec7c8a8234a1014f3264a9df30c2c43aa238519f3ed068cc7cab2e8344eecaddba574e2573bdaad8224fa36e290a SHA512 f75c8bee4dbbbdff6fbfe5fa5d41cdfda2acbfd4806e3233fb4d6b499680ea9e9653461a1f6686bf44738fa26fe49d22e14e6bf0e857fd9713655e9763103680
-AUX 0.9.6-formats.patch 4241 BLAKE2B 8513efa84b2f8b4f2a06ee0784df6e7194b59f321a95c00151eaf02caf92611baf2b92de7a5c520746718c802919b6e985774df67736c5fc89bd4b243d590612 SHA512 7f947b0a13d7a1f56df311ced9673cf9b85a77f351164a4162d386a35a5022ae4f914216a2d801b0a8a7e52341318d498e480cba1f9959b08500753150a6da07
-AUX 0.9.6-fun-fix.patch 2064 BLAKE2B 45d2f76e437cbd557460a51a6fd49881a8dde5c200b829dc3ace4a3f6483c74e5c528d57f0aae261bfe042d015ddab3fa8c2b773c6c911be8d105977db394d59 SHA512 e3bafb4803541442c39f35370cedf3e2a2dd4502f2011c72ff92eb9f1f846362e560da69ac60914c71fc0c759e186368cae644b6eff9baa78c057cee70d08bd9
-AUX 0.9.6-gcc6.patch 1255 BLAKE2B a529b29d007a0b71f1a1f2ecfc0940d73696ba97dc2a48bfd3be995d3d9e37b788b1fa6c1d13a7c63f2c5dbe2b07accfd86766f56f495f984baf0acb7ab6f27f SHA512 870231a918cd2d114ac31973bbd2c53733c3e64811c48eadf88c78f82a353aecf4d604e28dfa3a532efb3b0480e5d7209e8fad1fef793212027e89f53608c619
-AUX 0.9.6-python-use-path-and-startup.patch 682 BLAKE2B f4a3f07c7757e297a8a40056aad3f36705f035f8ca63dfd0d8c75dec15953b826d8074fbbf1b698ec8d9c92a4e364993c2eced1df3c86ef4a3915a17b2ed65ba SHA512 f6e20eadb6acfd3805d5f41bba8d90e9dba5230211577e0b47217638b97745dd921c657dad7adf935abeeb9316989554858976d915f14b79dc2082eb132f9418
-DIST gdl-0.9.6v2.tgz 1777167 BLAKE2B 4d92ed93f12e0979d591959d60ae9fa6785400e4f169a00f462103d263bce1aa02e615cc8467b53146791a12045850f9dae1da113f9caff4d6b44dd2a5798b3b SHA512 a816ee2e3822af380a1131a6138263c33560db7286cd699b864da305a1103d5afc881a1cd3574d2e243bfb7e65e759e46322c5e55c66ec15620d9c514565c2c5
-EBUILD gdl-0.9.6-r3.ebuild 4120 BLAKE2B 754ad88aab633d014a8c0bc16700001bc72bc4271792765ac7ea648f6a7ba33fee58fbe26694471cac44803a794181ac5163108c07a12310b072361837f856f9 SHA512 e639db3b5a75e450ef15fb54f8c2e90b3d9cedf19382f99a6ea4cd5e23903bbfa5c87029b976d357032b06a229243aa1217da8240ce3b2a3e54849e5072b9dc0
-MISC metadata.xml 1028 BLAKE2B bf82665c331acc8ebe611ea473e0ce9e68bef85cae01a89a5356c5db4a7b5c611fc580f5abbf116492d1b49c2f54379644c30cff099d2c0a7c6c317cb3a76aff SHA512 bbf8bafc0aa727148a15b800c096037ef4ad4f17de36ee76082fd51355d7e60a211faf57ddeb9ee1012258a78e67f948fca4c8a010dce891b1e0875cb088e23d
+AUX gdl-1.0.0_rc3-cmake.patch 3673 BLAKE2B 81ede9a3b1fc6147ab528f49efabb140ff505a687ac6a4c1c3f91f0d652b9d13b866ecaefc9d4106011207379afbf390ab1e395a45da63954fd25b0e80bc86f6 SHA512 b4407bf99154ad8e6ad5d7635273b51df6a49b62e06aa18ce420e046380bc27fda74c37e4559fa136d28b5b4723b23d325bfce1b3340208f4b79ee5e0ee6e9d1
+DIST gdl-1.0.0_rc3.tar.gz 32650313 BLAKE2B cdecfe0646e2271e2389e0a04f8da1e8de4534faf743f233169bccf326198025eff7fd7a7b62ed8bd05fa4a0222c6fd30f9469e3edf0f5b2991ef3ef545e616b SHA512 3fde22c7e709b9cdc72a23d2317c043037379c7903418211a699c7e5caa2ed17e78e32e6d2f9b4aa89200e729fc21555821140dfdd58a5a636a858e2841f6335
+EBUILD gdl-1.0.0_rc3.ebuild 3706 BLAKE2B 37eecea0adf2e4ee5f9be23ee82c7055c64ec5bc8e225868439e308832815150a73871077569036bb96857aecdfdb131015f1aaec7e60be4f96e79f783e36a8f SHA512 3e112af740afb1c548a8f18f74b1ce996e438f59270cd187ada7943459390b8ed42f0a13233df5476743ad23999791dd13a2bbe14833b6d0ea58cbc3bd63efa4
+MISC metadata.xml 1118 BLAKE2B 62643bcc8fb4f18696aaf9655818296bef05f32fe24c77d8a03b97820989e4281a714114b0dfd246b01e7ef496b810a0546e03406ae883cf2af17a65c462d1ad SHA512 b08af333e71c0cb79a09bc8643d7a38bbb607b3c003fadbe0a4c7d9036dbc0d9a8dcf5b9a7b99f47477608a31468540540576ee807c694878221294dd81e62ea
diff --git a/dev-lang/gdl/files/0.9.2-include.patch b/dev-lang/gdl/files/0.9.2-include.patch
deleted file mode 100644
index 49613da16e21..000000000000
--- a/dev-lang/gdl/files/0.9.2-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- gdl-0.9.2.orig/src/cformat.g 2010-07-25 17:59:19.000000000 +0100
-+++ gdl-0.9.2/src/cformat.g 2012-06-21 16:34:12.000000000 +0100
-@@ -16,6 +16,7 @@
- ***************************************************************************/
-
- header "pre_include_cpp" {
-+#include <cstdlib>
- #include "includefirst.hpp"
- }
-
diff --git a/dev-lang/gdl/files/0.9.5-antlr.patch b/dev-lang/gdl/files/0.9.5-antlr.patch
deleted file mode 100644
index f5b627ab444e..000000000000
--- a/dev-lang/gdl/files/0.9.5-antlr.patch
+++ /dev/null
@@ -1,91 +0,0 @@
- CMakeLists.txt | 14 +++++++++++---
- CMakeModules/FindANTLR.cmake | 11 +++++++++++
- src/CMakeLists.txt | 18 +++++++++++-------
- 3 files changed, 33 insertions(+), 10 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 407e39a..c4b3278 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -111,6 +111,8 @@ set(SZIPDIR "" CACHE PATH "GDL: Specify the SZip directory tree")
-
- set(GDL_DATA_DIR "/share/gnudatalanguage" CACHE PATH "GDL: data directory relative to CMAKE_INSTALL_PREFIX")
-
-+set(BUNDLED_ANTLR OFF CACHE BOOL "Use bundled ANTLR grammar ?")
-+set(ANTLRDIR "" CACHE PATH "Specify the system ANTLR directory tree")
-
- # check for 64-bit OS
- if(${CMAKE_SIZEOF_VOID_P} EQUAL 8)
-@@ -174,9 +176,15 @@ check_library_exists(m nexttoward "" HAVE_NEXTTOWARD)
- # mpi
- check_include_file(mpi.h HAVE_MPI_H)
-
--# SA: whithout it compilation of antlr fails if there's a conflicting
--# version of antlr in system-wide directories
--include_directories(src)
-+if(BUNDLED_ANTLR)
-+ # SA: whithout it compilation of antlr fails if there's a conflicting
-+ # version of antlr in system-wide directories
-+ include_directories(src)
-+else(BUNDLED_ANTLR)
-+ find_package(ANTLR QUIET)
-+ set(LIBRARIES ${LIBRARIES} ${ANTLR_LIBRARIES})
-+ include_directories(${ANTLR_INCLUDE_DIR})
-+endif(BUNDLED_ANTLR)
-
- if(WIN32 AND NOT CYGWIN)
- # For Win32 find Pdcureses instead of (N)Curses
-diff --git a/CMakeModules/FindANTLR.cmake b/CMakeModules/FindANTLR.cmake
-new file mode 100644
-index 0000000..b61cc5b
---- /dev/null
-+++ b/CMakeModules/FindANTLR.cmake
-@@ -0,0 +1,11 @@
-+
-+
-+find_library(ANTLR_LIBRARIES NAMES antlr)
-+find_path(ANTLR_INCLUDE_DIR NAMES antlr/ANTLRUtil.hpp)
-+include(FindPackageHandleStandardArgs)
-+find_package_handle_standard_args(ANTLR DEFAULT_MSG ANTLR_LIBRARIES ANTLR_INCLUDE_DIR)
-+
-+mark_as_advanced(
-+ANTLR_LIBRARIES
-+ANTLR_INCLUDE_DIR
-+)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 1f7ffec..776a1fd 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -262,9 +262,8 @@ widget.cpp
- widget.hpp
- )
-
--add_subdirectory(antlr)
-
--include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/antlr ${CMAKE_BINARY_DIR})
-+include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR})
- link_directories(${LINK_DIRECTORIES})
-
- if(PYTHON_MODULE) #libgdl
-@@ -275,11 +274,16 @@ else(PYTHON_MODULE) #gdl
- add_executable(gdl ${SOURCES})
- endif(PYTHON_MODULE)
-
--add_dependencies(gdl antlr) # be sure that antlr is built before gdl
--target_link_libraries(gdl antlr) # link antlr against gdl
--if (MINGW)
--target_link_libraries(gdl ws2_32)
--endif (MINGW)
-+if(BUNDLED_ANTLR)
-+ add_subdirectory(antlr)
-+ include_directories(${CMAKE_SOURCE_DIR}/src/antlr)
-+ add_dependencies(gdl antlr) # be sure that antlr is built before gdl
-+ target_link_libraries(gdl antlr) # link antlr against gdl
-+ if (MINGW)
-+ target_link_libraries(gdl ws2_32)
-+ endif (MINGW)
-+endif(BUNDLED_ANTLR)
-+
- target_link_libraries(gdl ${LIBRARIES})
- add_definitions(-DHAVE_CONFIG_H)
-
diff --git a/dev-lang/gdl/files/0.9.5-png.patch b/dev-lang/gdl/files/0.9.5-png.patch
deleted file mode 100644
index 1140fcc9ac75..000000000000
--- a/dev-lang/gdl/files/0.9.5-png.patch
+++ /dev/null
@@ -1,15 +0,0 @@
- CMakeLists.txt | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 407e39a..f24a087 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -270,7 +270,6 @@ if(PNGLIB)
- set(USE_PNGLIB ${PNG_FOUND})
- if(PNG_FOUND)
- set(LIBRARIES ${LIBRARIES} ${PNG_LIBRARIES})
-- set(LINK_DIRECTORIES ${LINK_DIRECTORIES} ${PNG_LIBRARY_DIRS})
- include_directories(${PNG_INCLUDE_DIRS})
- else(PNG_FOUND)
- message(FATAL_ERROR "libpng is required but was not found.\n"
diff --git a/dev-lang/gdl/files/0.9.6-disable-tests-hanging-under-xvfb-run.patch b/dev-lang/gdl/files/0.9.6-disable-tests-hanging-under-xvfb-run.patch
deleted file mode 100644
index 6ce92aff0ab7..000000000000
--- a/dev-lang/gdl/files/0.9.6-disable-tests-hanging-under-xvfb-run.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-Description: Disable tests which work fine with local X but hang under xvfb-run
-Author: Axel Beckert <abe@debian.org>
-Last-Update: 2014-10-10
-
---- a/testsuite/Makefile.am
-+++ b/testsuite/Makefile.am
-@@ -18,7 +18,6 @@
- test_bug_2876372.pro \
- test_bug_2892631.pro \
- test_bug_2949487.pro \
-- test_bug_2974380.pro \
- test_bug_3033108.pro \
- test_bug_3054361.pro \
- test_bug_3055720.pro \
-@@ -43,7 +42,6 @@
- test_bug_3152899.pro \
- test_bug_3189072.pro \
- test_bug_3199465.pro \
-- test_bug_3275334.pro \
- test_bug_3285659.pro \
- test_bug_3286031.pro \
- test_bug_3288652.pro \
-@@ -74,16 +72,12 @@
- test_ce.pro \
- test_clip.pro \
- test_common.pro \
-- test_congrid.pro \
- test_constants.pro \
- test_convert_coord.pro \
- test_correlate.pro \
- test_deriv.pro \
-- test_device.pro \
- test_dicom.pro \
- test_erfinv.pro \
-- test_execute.pro \
-- test_extra_keywords.pro \
- test_fft.pro \
- test_fft_dim.pro \
- test_fft_leak.pro \
-@@ -122,7 +116,6 @@
- test_memory.pro \
- test_message.pro \
- test_modulo.pro \
-- test_moment.pro \
- test_mpfit.pro \
- test_multiroots.pro \
- test_nans_in_sort_and_median.pro \
-@@ -130,10 +123,8 @@
- test_netcdf.pro \
- test_null.pro \
- test_obj_new.pro \
-- test_plot_oo.pro \
- test_plotting_ranges.pro \
- test_pmulti.pro \
-- test_pmulti_basic.pro \
- test_postscript.pro \
- test_product.pro \
- test_ps_decomposed.pro \
-@@ -144,7 +135,6 @@
- test_python_module_2.pro \
- test_qromb.pro \
- test_qromo.pro \
-- test_random.pro \
- test_readf.pro \
- test_reads.pro \
- test_rebin.pro \
-@@ -167,13 +157,11 @@
- test_suite.pro \
- test_systime.pro \
- test_trisol.pro \
-- test_tv.pro \
- test_typename.pro \
- test_url.pro \
- test_voigt.pro \
- test_wait.pro \
- test_wavelet.pro \
-- test_window_background.pro \
- test_where.pro \
- test_zeropoly.pro \
- test_zip.pro \
diff --git a/dev-lang/gdl/files/0.9.6-fix-file-move.patch b/dev-lang/gdl/files/0.9.6-fix-file-move.patch
deleted file mode 100644
index 31d4f066f49c..000000000000
--- a/dev-lang/gdl/files/0.9.6-fix-file-move.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Author: Ole Streicher <olebole@debian.org>
-Description: Remove trailing slash at the end of dir when moving files specified by wildcard
-Forwarded: https://sourceforge.net/p/gnudatalanguage/patches/97/
---- a/src/pro/file_move.pro
-+++ b/src/pro/file_move.pro
-@@ -31,7 +31,7 @@
- res=FILE_SEARCH(dir, FILE_BASENAME(source[ii]), /fully)
-
- for jj=0,N_ELEMENTS(res)-1 do begin
-- if(FILE_DIRNAME(res[jj], /MARK_DIRECTORY) eq dir) then flist=[flist, res[jj]] ;
-+ if(FILE_DIRNAME(res[jj]) eq dir) then flist=[flist, res[jj]] ;
- ;print, 'dir ', dir, ' res ', FILE_DIRNAME(res[jj])
- endfor
-
diff --git a/dev-lang/gdl/files/0.9.6-fix-python-function-call.patch b/dev-lang/gdl/files/0.9.6-fix-python-function-call.patch
deleted file mode 100644
index fe90774e5c7b..000000000000
--- a/dev-lang/gdl/files/0.9.6-fix-python-function-call.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Author: Ole Streicher <olebole@debian.org>
-Bug: https://sourceforge.net/p/gnudatalanguage/bugs/377
-Bug: https://sourceforge.net/p/gnudatalanguage/bugs/679
-Forwarded: https://sourceforge.net/p/gnudatalanguage/patches/91
- https://sourceforge.net/p/gnudatalanguage/patches/92
-Description: Fix Python calling GDL functions
- * user defined functions crash
- * data arrays of 64 bit element size are not completely converted to Python
---- a/src/pythongdl.cpp
-+++ b/src/pythongdl.cpp
-@@ -329,7 +329,7 @@
- }
- }
-
-- sub = proList[ proIx];
-+ sub = funList[ proIx];
- }
- }
- else
---- a/src/topython.cpp
-+++ b/src/topython.cpp
-@@ -67,7 +67,7 @@
- // TODO: free the memory: PyArray_Free(PyObject* op, void* ptr) ?
- throw GDLException("Failed to convert array to python.");
- }
-- memcpy(PyArray_DATA(ret), DataAddr(), this->N_Elements() * sizeof(Sp::t));
-+ memcpy(PyArray_DATA(ret), DataAddr(), this->N_Elements() * Data_<Sp>::Sizeof());
- return ret;
- }
-
diff --git a/dev-lang/gdl/files/0.9.6-formats.patch b/dev-lang/gdl/files/0.9.6-formats.patch
deleted file mode 100644
index 105fa9cb8eff..000000000000
--- a/dev-lang/gdl/files/0.9.6-formats.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-diff -up gdl-0.9.6/testsuite/test_formats.pro.formats gdl-0.9.6/testsuite/test_formats.pro
---- gdl-0.9.6/testsuite/test_formats.pro.formats 2015-09-06 13:15:01.000000000 -0600
-+++ gdl-0.9.6/testsuite/test_formats.pro 2016-01-12 14:26:18.811283030 -0700
-@@ -13,6 +13,10 @@
- ; is OK for negative input, wrong for positive one !!
- ; -- extra "\ ^J" added in GDL between the Re/Im parts for (D)Complex
- ;
-+; Changes:
-+; 2016-01612 : AC various changes for better managing paths,
-+; expecially for Cmake automatic tests !
-+;
- ; md5sum of current version of "formats.idl" (-1 et 12 ...)
- ; 5d1cfbc31312a833f62033e297f986a2 formats.idl
- ;
-@@ -53,7 +57,10 @@ end
- pro GENERATE_FORMATS_FILE, nb_cases, verbose=verbose, test=test
- ;
- filename='formats.'+GDL_IDL_FL()
--;
-+if FILE_TEST(filename) then begin
-+ FILE_MOVE, filename, filename+'_old', /overwrite
-+ MESSAGE,/cont, 'Copy of old file <<'+filename+'_old'+'>> done.'
-+endif
- ; value to be write : one negative, one positive
- ;
- struct_neg = {BYTE:-1b,short:-1us,ushort:-1us, $
-@@ -104,17 +111,53 @@ soft=GDL_IDL_FL(/verbose)
- ;
- GENERATE_FORMATS_FILE, nb_cases, verbose=verbose
- ;
--if (soft NE 'idl') AND ~FILE_TEST("formats.idl") then MESSAGE, "missing reference file <<formats.idl>>"
-+; locating then read back the reference idl.xdr:
-+;
-+; we need to add the current dir. into the path because new file(s)
-+; are writtent in it. Do we have a simple way to check whether a dir
-+; is already in !PATH ?
-+;
-+CD, current=current
-+new_path=!path+PATH_SEP(/SEARCH_PATH)+current
-+list_of_dirs=STRSPLIT(new_path, PATH_SEP(/SEARCH_PATH), /EXTRACT)
-+;
-+; only this reference file is mandatory !
-+;
-+filename='formats.idl'
-+file_fmt_idl=FILE_SEARCH(list_of_dirs+PATH_SEP()+filename)
-+;
-+if (soft NE 'idl') AND (STRLEN(file_fmt_idl) EQ 0) then begin
-+ MESSAGE, 'reference file <<'+filename+'>> not found in the !PATH', /continue
-+ if KEYWORD_SET(no_exit) OR KEYWORD_SET(test) then STOP
-+ EXIT, status=1
-+endif
-+if N_ELEMENTS(file_fmt_idl) GT 1 then print, 'multiple reference file <<'+filename+'>> found !'
-+file_fmt_idl=file_fmt_idl[0]
-+;
-+filename='formats.gdl'
-+file_fmt_gdl=FILE_SEARCH(list_of_dirs+PATH_SEP()+filename)
-+if N_ELEMENTS(file_fmt_gdl) GT 1 then begin
-+ print, 'multiple reference file <<'+filename+'>> found ! First used !!'
-+ print, TRANSPOSE(file_fmt_gdl)
-+ file_fmt_gdl=file_fmt_gdl[0]
-+endif
-+;
-+filename='formats.fl'
-+file_fmt_fl=FILE_SEARCH(list_of_dirs+PATH_SEP()+filename)
-+if N_ELEMENTS(file_fmt_fl) GT 1 then begin
-+ print, 'multiple reference file <<'+filename+'>> found !'
-+ print, TRANSPOSE(file_fmt_fl)
-+ file_fmt_fl=file_fmt_fl[0]
-+endif
- ;
- if (soft EQ 'idl') then begin
-- if ~FILE_TEST("formats.gdl") then MESSAGE, /cont, "missing file <<formats.gdl>>"
-- if ~FILE_TEST("formats.fl") then MESSAGE, /cont, "missing file <<formats.fl>>"
-- if ~FILE_TEST("formats.gdl") AND ~FILE_TEST("formats.fl") then begin
-- MESSAGE, /cont, "No useful file found for comparison. Just Reference file written."
-- endif
-- if FILE_TEST("formats.gdl") then soft='gdl' else begin
-- if FILE_TEST("formats.fl") then soft='fl'
-- endelse
-+ soft=''
-+ if ~FILE_TEST(file_fmt_fl) then MESSAGE, /cont, "missing file <<formats.fl>>" else soft='fl'
-+ if ~FILE_TEST(file_fmt_gdl) then MESSAGE, /cont, "missing file <<formats.gdl>>" else soft='gdl'
-+ if (soft EQ '') then begin
-+ MESSAGE, /cont, "No useful file found for comparison. Just Reference file written."
-+ return
-+ endif
- endif
- ;
- ; reading back the 2 files : one created ("formats.gdl" or
-@@ -123,9 +166,10 @@ endif
- print, "Files to be compared : formats.idl, formats."+soft
- ;
- GET_LUN, lun1
--OPENR, lun1, "formats.idl"
-+OPENR, lun1, file_fmt_idl
- GET_LUN, lun2
--OPENR, lun2, "formats."+soft
-+if (soft EQ 'gdl') then OPENR, lun2, file_fmt_gdl
-+if (soft EQ 'fl') then OPENR, lun2, file_fmt_fl
- ;
- ref=STRING("")
- val=STRING("")
-@@ -155,7 +199,7 @@ CLOSE, lun1, lun2
- FREE_LUN, lun1, lun2
- ;
- if (nb_errors GT 0) then begin
-- MESSAGE, /continue, 'Using a "diff formats.idl formats.gdl" in a shell'
-+ MESSAGE, /continue, 'Using a "diff formats.idl formats.{gdl|fl}" in a shell'
- MESSAGE, /continue, 'should help to debug !'
- endif
- ;
diff --git a/dev-lang/gdl/files/0.9.6-fun-fix.patch b/dev-lang/gdl/files/0.9.6-fun-fix.patch
deleted file mode 100644
index a3a4118ceb0a..000000000000
--- a/dev-lang/gdl/files/0.9.6-fun-fix.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Author: Vitaliy Tomin <highwaystar@users.sf.net>
-Description: Fix direct calling of direct function calls from Python
-Bug: https://sourceforge.net/p/gnudatalanguage/bugs/678
---- a/src/pythongdl.cpp
-+++ b/src/pythongdl.cpp
-@@ -392,25 +392,31 @@
-
- BaseGDL* retValGDL = NULL;
- Guard<BaseGDL> retValGDL_guard;
-- if( functionCall)
-- {
-- if( libCall)
-- retValGDL = static_cast<DLibFun*>(static_cast<EnvT*>(e)->
-- GetPro())->Fun()( static_cast<EnvT*>(e));
-- else
-- retValGDL = interpreter->call_fun(static_cast<DSubUD*>
-- (static_cast<EnvUDT*>(e)
-- ->GetPro())->GetTree());
-- retValGDL_guard.Reset( retValGDL);
-- }
-- else
-- {
-- if( libCall)
-- static_cast<DLibPro*>(e->GetPro())->Pro()(static_cast<EnvT*>(e)); // throws
-- else
-- interpreter->call_pro(static_cast<DSubUD*>
-- (e->GetPro())->GetTree()); //throws
-- }
-+
-+ if (functionCall) {
-+ DLibFun* sub_fun_chk = dynamic_cast<DLibFun *>(static_cast<EnvT *>(e)->GetPro());
-+ if (sub_fun_chk) {
-+ //handle direct call function first
-+ if (sub_fun_chk->DirectCall()) {
-+ BaseGDL* directCallParameter = e->GetParDefined(0);
-+ retValGDL = static_cast<DLibFunDirect*>(sub_fun_chk)->FunDirect()(directCallParameter, true /*isReference*/);
-+ }
-+ } else if (libCall)
-+ retValGDL = static_cast<DLibFun *>(static_cast<EnvT *>(e)->GetPro())
-+ ->Fun()(static_cast<EnvT *>(e));
-+ else
-+ retValGDL = interpreter->call_fun(
-+ static_cast<DSubUD *>(static_cast<EnvUDT *>(e)->GetPro())
-+ ->GetTree());
-+ retValGDL_guard.Reset(retValGDL);
-+ } else {
-+ if (libCall)
-+ static_cast<DLibPro *>(e->GetPro())
-+ ->Pro()(static_cast<EnvT *>(e)); // throws
-+ else
-+ interpreter->call_pro(
-+ static_cast<DSubUD *>(e->GetPro())->GetTree()); // throws
-+ }
-
- // copy back args and keywords
- success = CopyArgToPython( parRef, kwRef, *e, argTuple, kwDict);
diff --git a/dev-lang/gdl/files/0.9.6-gcc6.patch b/dev-lang/gdl/files/0.9.6-gcc6.patch
deleted file mode 100644
index e017255b0bef..000000000000
--- a/dev-lang/gdl/files/0.9.6-gcc6.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff -up gdl-0.9.6/src/specializations.hpp.gcc6 gdl-0.9.6/src/specializations.hpp
---- gdl-0.9.6/src/specializations.hpp.gcc6 2015-08-24 15:26:47.000000000 -0600
-+++ gdl-0.9.6/src/specializations.hpp 2016-03-03 16:30:46.694379312 -0700
-@@ -534,16 +534,6 @@ void Data_<SpDString>::MinMax( DLong* mi
-
- // default_io.cpp
- template<>
--std::istream& operator>>(std::istream& i, Data_<SpDFloat>& data_);
--template<>
--std::istream& operator>>(std::istream& i, Data_<SpDDouble>& data_);
--template<>
--std::istream& operator>>(std::istream& i, Data_<SpDComplex>& data_);
--template<>
--std::istream& operator>>(std::istream& i, Data_<SpDComplexDbl>& data_);
--template<>
--std::istream& operator>>(std::istream& is, Data_<SpDString>& data_);
--template<>
- std::ostream& Data_<SpDLong>::ToStream(std::ostream& o, SizeT w, SizeT* actPosPtr);
- template<>
- std::ostream& Data_<SpDULong>::ToStream(std::ostream& o, SizeT w, SizeT* actPosPtr);
---- gdl-0.9.6/src/typedefs.hpp.gcc6 2014/08/09 15:33:29 1.76
-+++ gdl-0.9.6/src/typedefs.hpp 2016/02/04 22:48:46 1.77
-@@ -235,7 +235,7 @@
-
- Guard& operator=( Guard& r)
- {
-- if( &r == this) return;
-+ if( &r == this) return *this;
- delete guarded;
- guarded = r.guarded;
- r.guarded = NULL;
diff --git a/dev-lang/gdl/files/0.9.6-python-use-path-and-startup.patch b/dev-lang/gdl/files/0.9.6-python-use-path-and-startup.patch
deleted file mode 100644
index a76cd8cb6275..000000000000
--- a/dev-lang/gdl/files/0.9.6-python-use-path-and-startup.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Author: Ole Streicher <olebole@debian.org>
-Description: Initialize GDL path if one is defined
-Forwarded: https://sourceforge.net/p/gnudatalanguage/patches/93/
---- a/src/pythongdl.cpp
-+++ b/src/pythongdl.cpp
-@@ -537,6 +537,14 @@
- // instantiate the interpreter (creates $MAIN$ environment)
- interpreter = new DInterpreter();
-
-+ string gdlPath=GetEnvString("GDL_PATH");
-+ if( gdlPath == "") gdlPath=GetEnvString("IDL_PATH");
-+ if( gdlPath == "")
-+ {
-+ gdlPath = "+" GDLDATADIR "/lib";
-+ }
-+ SysVar::SetGDLPath( gdlPath);
-+
- PyObject* m = Py_InitModule("GDL", GDLMethods);
-
- gdlError = PyErr_NewException((char*)"GDL.error", NULL, NULL);
diff --git a/dev-lang/gdl/files/gdl-1.0.0_rc3-cmake.patch b/dev-lang/gdl/files/gdl-1.0.0_rc3-cmake.patch
new file mode 100644
index 000000000000..dd7abcc54d90
--- /dev/null
+++ b/dev-lang/gdl/files/gdl-1.0.0_rc3-cmake.patch
@@ -0,0 +1,94 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -206,10 +206,6 @@
+ # mpi
+ check_include_file(mpi.h HAVE_MPI_H)
+
+-# SA: whithout it compilation of antlr fails if there's a conflicting
+-# version of antlr in system-wide directories
+-include_directories(src)
+-
+ if (NOT WIN32)
+ # Ncurses MANDATORY for readline on POSIX
+ # -DNCURSESDIR=DIR
+@@ -399,8 +395,10 @@
+
+ # PLplot MANDATORY
+ # -DPLPLOTDIR=DIR
+-set(CMAKE_PREFIX_PATH ${PLPLOTDIR})
+-find_package(Plplot QUIET)
++
++find_package(PkgConfig REQUIRED)
++pkg_check_modules(PLPLOT REQUIRED plplot plplot-c++)
++
+ set(HAVE_LIBPLPLOTCXXD ${PLPLOT_FOUND})
+ if(PLPLOT_FOUND)
+ set(LIBRARIES ${LIBRARIES} ${PLPLOT_LIBRARIES})
+@@ -490,33 +488,16 @@
+ # -DMAGICK=ON|OFF
+ # -DMAGICKDIR=DIR
+ if(MAGICK)
+- set(CMAKE_PREFIX_PATH ${MAGICKDIR})
+- find_package(ImageMagick QUIET COMPONENTS Magick++ MagickWand MagickCore)
+- mark_as_advanced(ImageMagick_EXECUTABLE_DIR ImageMagick_Magick++_INCLUDE_DIR ImageMagick_Magick++_LIBRARY
+- ImageMagick_MagickCore_INCLUDE_DIR ImageMagick_MagickCore_LIBRARY ImageMagick_MagickWand_INCLUDE_DIR ImageMagick_MagickWand_LIBRARY)
+- set(USE_MAGICK ${ImageMagick_FOUND})
+- if(ImageMagick_FOUND)
+- find_program(MAGICKXXCONFIG Magick++-config)
+- if(MAGICKXXCONFIG)
+- execute_process(COMMAND ${MAGICKXXCONFIG} "--libs" OUTPUT_VARIABLE MAGICKXXCONFIGLIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
+- set(LIBRARIES ${LIBRARIES} ${MAGICKXXCONFIGLIBS})
+- else(MAGICKXXCONFIG)
+- message(FATAL_ERROR "ImageMagick is required but was not found (Magick++-config).\n"
+- "Use -DMAGICKDIR=DIR to specify the ImageMagick directory.\n"
+- "Use -DMAGICK=OFF to not use it.\n"
+- "(suitable Debian/Ubuntu package: libmagick++-dev)\n"
+- "(suitable Fedora/CentOS package: ImageMagick-c++-devel)")
+- endif(MAGICKXXCONFIG)
+- set(LIBRARIES ${LIBRARIES} ${ImageMagick_LIBRARIES})
+- include_directories(${ImageMagick_INCLUDE_DIRS})
+- set(MAGICK_LIBRARIES ${ImageMagick_LIBRARIES})
+- else(ImageMagick_FOUND)
+- message(FATAL_ERROR "ImageMagick is required but was not found.\n"
+- "Use -DMAGICKDIR=DIR to specify the ImageMagick directory.\n"
+- "Use -DMAGICK=OFF to not use it.\n"
+- "(suitable Debian/Ubuntu package: libmagick++-dev)\n"
+- "(suitable Fedora/CentOS package: ImageMagick-c++-devel)")
+- endif(ImageMagick_FOUND)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(Magick++ REQUIRED Magick++)
++ pkg_check_modules(MagickWand REQUIRED MagickWand)
++ pkg_check_modules(MagickCore REQUIRED MagickCore)
++
++ set(MAGICK_LIBRARIES ${Magick++_LIBRARIES} ${MagickWand_LIBRARIES} ${MagickCore_LIBRARIES})
++ set(LIBRARIES ${LIBRARIES} ${MAGICK_LIBRARIES})
++ include_directories(${Magick++_INCLUDE_DIRS})
++ include_directories(${MagickWand_INCLUDE_DIRS})
++ include_directories(${MagickCore_INCLUDE_DIRS})
+ endif(MAGICK)
+
+ # if GM or IM activated, we check whether Plplot is OK for that
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -186,9 +186,9 @@
+ )
+ endif(USE_EXPAT)
+
+-add_subdirectory(antlr)
++find_library(ANTLR_LIBRARY NAMES antlr)
+
+-include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/antlr ${CMAKE_BINARY_DIR})
++include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR})
+ link_directories(${LINK_DIRECTORIES})
+
+ if(PYTHON_MODULE) #GDL.so
+@@ -203,8 +203,7 @@
+ add_executable(gdl ${SOURCES})
+ endif(PYTHON_MODULE)
+
+-add_dependencies(gdl antlr) # be sure that antlr is built before gdl
+-target_link_libraries(gdl antlr) # link antlr against gdl
++target_link_libraries(gdl ${ANTLR_LIBRARY}) # link antlr against gdl
+ if (MINGW)
+ target_link_libraries(gdl ws2_32)
+ endif (MINGW)
diff --git a/dev-lang/gdl/gdl-0.9.6-r3.ebuild b/dev-lang/gdl/gdl-0.9.6-r3.ebuild
deleted file mode 100644
index 3a51f5b1f4b9..000000000000
--- a/dev-lang/gdl/gdl-0.9.6-r3.ebuild
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-WX_GTK_VER="3.0"
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-utils eutils python-r1 wxwidgets toolchain-funcs virtualx
-
-DESCRIPTION="GNU Data Language"
-HOMEPAGE="https://github.com/gnudatalanguage/gdl"
-SRC_URI="mirror://sourceforge/gnudatalanguage/${P}v2.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+eigen fftw graphicsmagick gshhs hdf hdf5 +imagemagick netcdf openmp
- png proj postscript python static-libs udunits wxwidgets"
-
-RDEPEND="
- dev-cpp/antlr-cpp:2=
- sci-libs/gsl:0=
- sci-libs/plplot:0=[-dynamic]
- sys-libs/ncurses:0=
- sys-libs/readline:0=
- sys-libs/zlib:0=
- x11-libs/libX11:0=
- fftw? ( sci-libs/fftw:3.0= )
- gshhs? ( sci-geosciences/gshhs-data sci-geosciences/gshhs:0= )
- hdf? ( sci-libs/hdf:0= )
- hdf5? ( sci-libs/hdf5:0= )
- imagemagick? (
- !graphicsmagick? ( media-gfx/imagemagick:=[cxx] )
- graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
- )
- netcdf? ( sci-libs/netcdf )
- proj? ( sci-libs/proj )
- postscript? ( dev-libs/pslib )
- python? (
- ${PYTHON_DEPS}
- || (
- dev-python/numpy-python2[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- )
- )
- udunits? ( sci-libs/udunits )
- wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )"
-DEPEND="${RDEPEND}
- dev-java/antlr:0[java(+),script(+)]
- virtual/pkgconfig
- eigen? ( dev-cpp/eigen:3 )"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-PATCHES=(
- "${FILESDIR}"/0.9.2-include.patch
- "${FILESDIR}"/0.9.5-antlr.patch
- "${FILESDIR}"/0.9.5-png.patch
- "${FILESDIR}"/0.9.6-fix-file-move.patch
- "${FILESDIR}"/0.9.6-fix-python-function-call.patch
- "${FILESDIR}"/0.9.6-fun-fix.patch
- "${FILESDIR}"/0.9.6-python-use-path-and-startup.patch
- "${FILESDIR}"/0.9.6-disable-tests-hanging-under-xvfb-run.patch
- "${FILESDIR}"/0.9.6-gcc6.patch
- "${FILESDIR}"/0.9.6-formats.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_prepare() {
- use wxwidgets && need-wxwidgets unicode
- 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/p/gnudatalanguage/patches/39/
- rm -r src/antlr || die
- einfo "Regenerating grammar"
- pushd src >/dev/null || die
- local i
- for i in *.g; do
- antlr ${i} || die
- done
- popd >/dev/null || die
-
- # gentoo: avoid install files in datadir directory
- # and manually install them in src_install
- sed -e '/AUTHORS/d' -i CMakeLists.txt || die
- cmake-utils_src_prepare
-}
-
-src_configure() {
- # MPI is still very buggy
- # x11=off does not compile
- local mycmakeargs=(
- -DMPICH=OFF
- -DBUNDLED_ANTLR=OFF
- -DX11=ON
- -DEIGEN3="$(usex eigen)"
- -DFFTW="$(usex fftw)"
- -DGRIB=OFF
- -DGSHHS="$(usex gshhs)"
- -DHDF="$(usex hdf)"
- -DHDF5="$(usex hdf5)"
- -DLIBPROJ4="$(usex proj)"
- -DNETCDF="$(usex netcdf)"
- -DOPENMP="$(usex openmp)"
- -DPNGLIB="$(usex png)"
- -DPSLIB="$(usex postscript)"
- -DUDUNITS="$(usex udunits)"
- -DWXWIDGETS="$(usex wxwidgets)"
- )
-
- if use imagemagick; then
- if use graphicsmagick; 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
- virtx emake -C "${BUILD_DIR}" check
-}
-
-src_install() {
- cmake-utils_src_install
- if use python; then
- installation() {
- mv src/libgdl.so GDL.so || die
- python_domodule GDL.so
- }
- python_foreach_impl run_in_build_dir installation
- dodoc PYTHON.txt
- fi
- #dodoc AUTHORS README
- echo "GDL_PATH=\"+${EPREFIX}/usr/share/gnudatalanguage\"" > 50gdl || die
- doenvd 50gdl
-}
diff --git a/dev-lang/gdl/gdl-1.0.0_rc3.ebuild b/dev-lang/gdl/gdl-1.0.0_rc3.ebuild
new file mode 100644
index 000000000000..b5fb1c358bcb
--- /dev/null
+++ b/dev-lang/gdl/gdl-1.0.0_rc3.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+WX_GTK_VER="3.0-gtk3"
+PYTHON_COMPAT=( python3_{6..9} )
+
+# gdl's build system is a travesty, and actually calls
+# itself in the testsuite, which is something that ninja
+# obviously doesn't support.
+CMAKE_MAKEFILE_GENERATOR=emake
+
+inherit cmake python-r1 toolchain-funcs virtualx wxwidgets
+
+DESCRIPTION="GNU Data Language"
+HOMEPAGE="https://github.com/gnudatalanguage/gdl"
+SRC_URI="https://github.com/gnudatalanguage/gdl/archive/v$(ver_cut 1-3)-rc.$(ver_cut 5).tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+eigen fftw glpk graphicsmagick gshhs hdf hdf5 +imagemagick netcdf
+ openmp png proj postscript python tiff udunits wxwidgets"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ dev-cpp/antlr-cpp:2=
+ dev-libs/expat
+ sci-libs/gsl:0=
+ sci-libs/plplot:0=[cxx,-dynamic]
+ sys-libs/ncurses:0=
+ sys-libs/readline:0=
+ sys-libs/zlib
+ x11-libs/libX11
+ fftw? ( sci-libs/fftw:3.0= )
+ glpk? ( sci-mathematics/glpk:= )
+ gshhs? (
+ sci-geosciences/gshhs-data
+ sci-geosciences/gshhs:0=
+ )
+ hdf? ( sci-libs/hdf:0= )
+ hdf5? ( sci-libs/hdf5:0= )
+ imagemagick? (
+ !graphicsmagick? ( media-gfx/imagemagick:=[cxx] )
+ graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
+ )
+ netcdf? ( sci-libs/netcdf )
+ proj? ( sci-libs/proj )
+ postscript? ( dev-libs/pslib )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+ tiff? (
+ media-libs/tiff
+ sci-libs/libgeotiff
+ )
+ udunits? ( sci-libs/udunits )
+ wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )"
+DEPEND="${RDEPEND}
+ eigen? ( dev-cpp/eigen:3 )"
+BDEPEND="
+ virtual/pkgconfig
+ python? ( app-admin/chrpath )"
+
+S="${WORKDIR}/${PN}-$(ver_cut 1-3)-rc.$(ver_cut 5)"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.0.0_rc3-cmake.patch )
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ use wxwidgets && setup-wxwidgets unicode
+ use hdf5 && has_version sci-libs/hdf5[mpi] && export CXX=mpicxx
+
+ # remove bundled antlr
+ rm -r src/antlr || die
+
+ # gentoo: avoid install files in datadir directory
+ # and manually install them in src_install
+ sed -e '/AUTHORS/d' -i CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ # MPI is still very buggy
+ # x11=off does not compile
+ local mycmakeargs=(
+ -DMPI=OFF
+ -DREADLINE=ON
+ -DX11=ON
+ -DEXPAT=ON
+ -DEIGEN3=$(usex eigen)
+ -DFFTW=$(usex fftw)
+ -DGRIB=OFF
+ -DGLPK=$(usex glpk)
+ -DHDF=$(usex hdf)
+ -DHDF5=$(usex hdf5)
+ -DLIBPROJ4=$(usex proj)
+ -DNETCDF=$(usex netcdf)
+ -DOPENMP=$(usex openmp)
+ -DPNGLIB=$(usex png)
+ -DUDUNITS2=$(usex udunits)
+ -DWXWIDGETS=$(usex wxwidgets)
+ -DGRAPHICSMAGICK=$(usex imagemagick $(usex graphicsmagick))
+ -DMAGICK=$(usex imagemagick $(usex !graphicsmagick))
+ -DTIFF=$(usex tiff)
+ -DGEOTIFF=$(usex tiff)
+ -DSHAPELIB=OFF
+ -DPLPLOTDIR="${EPREFIX}"/usr/$(get_libdir)
+ )
+
+ configuration() {
+ mycmakeargs+=( "$@" )
+ cmake_src_configure
+ }
+ configuration -DPYTHON_MODULE=OFF -DPYTHON=OFF
+ use python && python_foreach_impl configuration -DPYTHON_MODULE=ON -DPYTHON=ON
+}
+
+src_compile() {
+ cmake_src_compile
+ use python && python_foreach_impl cmake_src_compile
+}
+
+src_test() {
+ # there is check target instead of the ctest to define some LDPATH
+ virtx cmake_build check
+}
+
+src_install() {
+ cmake_src_install
+ if use python; then
+ installation() {
+ chrpath -d src/GDL.so || die
+ python_domodule src/GDL.so
+ }
+ python_foreach_impl run_in_build_dir installation
+ dodoc PYTHON.txt
+ fi
+
+ newenvd - 50gdl <<-_EOF_
+ GDL_PATH="+${EPREFIX}/usr/share/gnudatalanguage"
+ _EOF_
+}
diff --git a/dev-lang/gdl/metadata.xml b/dev-lang/gdl/metadata.xml
index a0c94d341881..16e4a758b28f 100644
--- a/dev-lang/gdl/metadata.xml
+++ b/dev-lang/gdl/metadata.xml
@@ -13,6 +13,7 @@
<use>
<flag name="eigen">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="glpk">Use GNU Linear Programming Kit <pkg>sci-mathematics/glpk</pkg></flag>
<flag name="gshhs">Add support for projection adn continent maps with <pkg>sci-geosciences/gshhs-data</pkg></flag>
<flag name="proj">Add support for <pkg>sci-libs/proj</pkg> (geographic projections)</flag>
<flag name="udunits">Add support for manipulating units of physical quantities</flag>