summaryrefslogtreecommitdiff
path: root/dev-lang/gdl
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-10-06 19:22:30 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-10-06 19:22:30 +0100
commit744892aecb5cdf9ca0bbe504f7bbcdfb87b518fc (patch)
tree0b99b178b866e693a85d013eb47de3d1236e35b8 /dev-lang/gdl
parent275074c50dca7b941cc7cd7966a2ace71c29ecae (diff)
gentoo auto-resync : 06:10:2022 - 19:22:30
Diffstat (limited to 'dev-lang/gdl')
-rw-r--r--dev-lang/gdl/Manifest5
-rw-r--r--dev-lang/gdl/files/gdl-1.0.1-cmake.patch110
-rw-r--r--dev-lang/gdl/gdl-1.0.1.ebuild146
-rw-r--r--dev-lang/gdl/metadata.xml1
4 files changed, 261 insertions, 1 deletions
diff --git a/dev-lang/gdl/Manifest b/dev-lang/gdl/Manifest
index 650891085a2e..5dd212d270d1 100644
--- a/dev-lang/gdl/Manifest
+++ b/dev-lang/gdl/Manifest
@@ -1,4 +1,7 @@
AUX gdl-1.0.0_rc3-cmake.patch 3673 BLAKE2B 81ede9a3b1fc6147ab528f49efabb140ff505a687ac6a4c1c3f91f0d652b9d13b866ecaefc9d4106011207379afbf390ab1e395a45da63954fd25b0e80bc86f6 SHA512 b4407bf99154ad8e6ad5d7635273b51df6a49b62e06aa18ce420e046380bc27fda74c37e4559fa136d28b5b4723b23d325bfce1b3340208f4b79ee5e0ee6e9d1
+AUX gdl-1.0.1-cmake.patch 4639 BLAKE2B 53e8093ab8f3d33fdd4db3441060400c02418e1543c5a975129ba6097e25861823f51f0e923b989a8e94fa6780fe065eae4e8a753abac3b580c22a132bf11af5 SHA512 f6df405084ecfe0a8ac96431ac8a28501e68cb6d3d6619f86825f70910df14d47b0d2da8901d0436a4dfd1c7625beabdc297cfa898346d3f6cd65d2f4f6d4dfa
DIST gdl-1.0.0_rc3.tar.gz 32650313 BLAKE2B cdecfe0646e2271e2389e0a04f8da1e8de4534faf743f233169bccf326198025eff7fd7a7b62ed8bd05fa4a0222c6fd30f9469e3edf0f5b2991ef3ef545e616b SHA512 3fde22c7e709b9cdc72a23d2317c043037379c7903418211a699c7e5caa2ed17e78e32e6d2f9b4aa89200e729fc21555821140dfdd58a5a636a858e2841f6335
+DIST gdl-1.0.1.tar.gz 32775655 BLAKE2B 3428f33300403c98ae1f8f88cfa0e2346abe53d53b9f00c82ee5bf7f09f1f2f7d3021fa81173221ddd41ec29c94c2757cd1dc39b6e4d919c29d70af2e5045e6a SHA512 9d15f114d26d03c34dce6177a5d5115e81c128ec21752c01d171f8427e6cb21b9d0b69a44e29891b5e8fc2bd4d0b89d1a8dcd189f362a13c6e59182528b5842d
EBUILD gdl-1.0.0_rc3-r1.ebuild 3729 BLAKE2B 69a4bc43fe59e8e508312fed5756307065924677ea412ce8377f9a3140ff6e3d033e97039305c54c3847480bcbcedd41b1b889cd0262885b73d0bb6e5a0efb3d SHA512 e6e3467061d022ab3f05e6dadc1c4c6743aebd35030658635afd0eb949709ac220054d2f2a1cbe89de616f3c6a7b9461e2cafa6bb1414089b5fab2a2aa474eec
-MISC metadata.xml 1119 BLAKE2B e36af053e5044d594aeed2e45026dc38722b3c6dab634def3d96a7036de988570128ca84b74d33e88654825ebdbe7967bc5f147f0a6023e7bc81f621bb92571e SHA512 511a21fac0e0105f6175715f0b2d50575b3bb4f986e4abf961317a6ea5d0e83c802eea71b2317d581d0f3fc5a156e67bc3541a3707b5d68d2576180fa27da623
+EBUILD gdl-1.0.1.ebuild 3304 BLAKE2B e8932d790deb5e5cf227c319795fac1e1ef32301633465b9ae804101a54e8ed7a815d0ed206b52dfef7f250bfd91b52670bad060b8cb6ac520f3bdb6a81e2df6 SHA512 5be970de3f8611101329a02ca9514b235933b19bfc39d1afe376e4b14042bc9039257a73dab21a6cc9df9e041748978f6073c35664bc4261d71be2d84c496129
+MISC metadata.xml 1229 BLAKE2B 63a2756fcb9cb9b2f59502a692e2c5c6852a765c9c97f4ac5e23e9630d516150fa9fa1890c1a0821794a3057323ede1c17405285428496dbed85d89c8995618d SHA512 d70b1c5187d7452c3a8e0f93803b01afada76bbde14966dbf9334a38a97eb3fbd8df41746fa300954e17f2845031517ddafebb5fec54c1a9bf13a88e47fa8285
diff --git a/dev-lang/gdl/files/gdl-1.0.1-cmake.patch b/dev-lang/gdl/files/gdl-1.0.1-cmake.patch
new file mode 100644
index 000000000000..66c895250f97
--- /dev/null
+++ b/dev-lang/gdl/files/gdl-1.0.1-cmake.patch
@@ -0,0 +1,110 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6c07596..31dcaf2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -459,8 +459,10 @@ endif(CYGWIN OR NOT WIN32)
+
+ # 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})
+@@ -635,33 +637,16 @@ endif(GRAPHICSMAGICK_FOUND)
+ # -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)
+
+ ## not valid anymore I bet ## if GM or IM activated, we check whether Plplot is OK for that
+@@ -1037,20 +1022,8 @@ endif(GLPK)
+ # -DSHAPELIB=ON|OFF
+ # -DSHAPELIBDIR=DIR
+ if(SHAPELIB)
+- set(CMAKE_PREFIX_PATH ${SHAPELIBDIR})
+- find_package(SHAPELIB QUIET)
+- set(USE_SHAPELIB ${SHAPELIB_FOUND})
+- if(SHAPELIB_FOUND)
+- set(LIBRARIES ${LIBRARIES} ${SHAPELIB_LIBRARIES})
+- include_directories(${SHAPELIB_INCLUDE_DIR})
+- else(SHAPELIB_FOUND)
+- message(FATAL_ERROR "SHAPELIB (http://shapelib.maptools.org/) is required but was not found.\n"
+- "Use -DSHAPELIBDIR=DIR to specify the SHAPELIB-devel directory tree.\n"
+- "Use -DSHAPELIB=OFF to not use it.\n"
+- "shapelib is often in package libshp-devel.\n"
+- "(suitable Debian/Ubuntu package: libshp-dev)\n"
+- "(suitable Fedora/CentOS package: shapelib-devel)\n")
+- endif(SHAPELIB_FOUND)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(shapelib REQUIRED shapelib)
+ endif(SHAPELIB)
+ # EXPAT for IDLffXMLSAX and IDLffXMLDOM
+ # -DEXPAT=ON|OFF
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index f1923d2..6f1343e 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -193,9 +193,9 @@ ${WX_RC}
+ )
+ endif(HAVE_LIBWXWIDGETS AND WIN32)
+
+-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_SOURCE_DIR}/src ${CMAKE_BINARY_DIR})
+ link_directories(${LINK_DIRECTORIES})
+
+ if(PYTHON_MODULE) #GDL.so
+@@ -213,8 +213,7 @@ if(USE_OPENMP)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
+ endif(USE_OPENMP)
+
+-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-1.0.1.ebuild b/dev-lang/gdl/gdl-1.0.1.ebuild
new file mode 100644
index 000000000000..3dd1b363bd8f
--- /dev/null
+++ b/dev-lang/gdl/gdl-1.0.1.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.0-gtk3"
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit cmake python-single-r1 toolchain-funcs virtualx wxwidgets
+
+DESCRIPTION="GNU Data Language"
+HOMEPAGE="https://github.com/gnudatalanguage/gdl"
+SRC_URI="https://github.com/gnudatalanguage/gdl/archive/v${PV}.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 shapelib tiff udunits wxwidgets
+"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ dev-cpp/antlr-cpp:2=
+ dev-libs/expat
+ net-libs/libtirpc:=
+ sci-libs/gsl:0=
+ sci-libs/plplot:0=[cxx,-dynamic,wxwidgets?]
+ 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}
+ $(python_gen_cond_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ ')
+ )
+ shapelib? ( sci-libs/shapelib:= )
+ 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="
+ dev-util/intltool
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.0.1-cmake.patch )
+DOCS=( AUTHORS HACKING NEWS PYTHON.txt README README.md )
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ use python && python-single-r1_pkg_setup
+}
+
+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)
+ -DLIBPROJ=$(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)
+ -DPYTHON_MODULE=$(usex python)
+ -DPYTHON=$(usex python)
+ -DSHAPELIB=$(usex shapelib)
+ )
+
+ if use python; then
+ # automatically selection ignores EPYTHON
+ mycmakeargs+=(
+ -DPYTHONVERSION="${EPYTHON#python}"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ virtx cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ 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 18c3a80ae8f9..7babf54e25d6 100644
--- a/dev-lang/gdl/metadata.xml
+++ b/dev-lang/gdl/metadata.xml
@@ -16,6 +16,7 @@
<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="shapelib">Add support for manipulating ESRI Shapefiles with <pkg>sci-libs/shapelib</pkg></flag>
<flag name="udunits">Add support for manipulating units of physical quantities</flag>
</use>
<upstream>