2013-01-01 21:11:43 +01:00
|
|
|
# Created by: thierry@pompo.net
|
2005-10-31 19:48:23 +01:00
|
|
|
# $FreeBSD$
|
|
|
|
|
|
|
|
PORTNAME= gnudatalanguage
|
2018-12-04 08:22:02 +01:00
|
|
|
PORTVERSION= 0.9.9
|
|
|
|
DISTVERSIONPREFIX= v
|
2020-11-18 06:27:28 +01:00
|
|
|
PORTREVISION= 16
|
2005-10-31 19:48:23 +01:00
|
|
|
CATEGORIES= science lang
|
|
|
|
.if defined(BUILD_PYTHON_MODULE)
|
|
|
|
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
|
|
|
.endif
|
|
|
|
|
|
|
|
MAINTAINER= thierry@FreeBSD.org
|
|
|
|
COMMENT?= GDL, a free IDL compatible incremental compiler
|
|
|
|
|
2011-11-13 15:00:04 +01:00
|
|
|
LICENSE= GPLv2
|
|
|
|
|
2018-12-04 08:22:02 +01:00
|
|
|
LIB_DEPENDS+= libgeotiff.so:graphics/libgeotiff\
|
|
|
|
libplplot.so:math/plplot \
|
|
|
|
libtiff.so:graphics/tiff \
|
2017-01-07 20:22:01 +01:00
|
|
|
libpng.so:graphics/png \
|
|
|
|
libsz.so:science/szip \
|
|
|
|
libps.so:print/pslib \
|
2016-04-01 16:25:16 +02:00
|
|
|
libgsl.so:math/gsl
|
2013-10-11 11:35:03 +02:00
|
|
|
|
2018-12-04 08:22:02 +01:00
|
|
|
USE_GITHUB= yes
|
|
|
|
GH_PROJECT= gdl
|
|
|
|
|
2019-11-07 18:17:53 +01:00
|
|
|
USES= cmake compiler:c++11-lang fortran ncurses pkgconfig readline \
|
|
|
|
tar:tgz xorg
|
2017-05-19 20:06:48 +02:00
|
|
|
USE_WX= 3.0+
|
2014-10-12 10:34:44 +02:00
|
|
|
USE_XORG= x11 sm ice xext
|
2013-10-11 11:35:03 +02:00
|
|
|
|
science/gnudatalanguage: unbreak with gcc6 on 10.*
src/CMakeFiles/gdl.dir/GDLInterpreter.cpp.o: In function `GDLInterpreter::l_decinc_dot_expr(ProgNode*, int)':
GDLInterpreter.cpp:(.text+0x4c24): undefined reference to `operator delete(void*, unsigned int)'
GDLInterpreter.cpp:(.text+0x4f51): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/GDLInterpreter.cpp.o: In function `GDLInterpreter::l_arrayexpr_mfcall_as_arrayexpr(ProgNode*, BaseGDL*)':
GDLInterpreter.cpp:(.text+0x51e9): undefined reference to `operator delete(void*, unsigned int)'
GDLInterpreter.cpp:(.text+0x5442): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/GDLInterpreter.cpp.o: In function `GDLInterpreter::l_arrayexpr_mfcall(ProgNode*, BaseGDL*)':
GDLInterpreter.cpp:(.text+0x5ab2): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/GDLInterpreter.cpp.o:GDLInterpreter.cpp:(.text._ZN5antlr15CharInputBufferD0Ev[_ZN5antlr15CharInputBufferD5Ev]+0x5d): more undefined references to `operator delete(void*, unsigned int)' follow
src/CMakeFiles/gdl.dir/basic_fun.cpp.o: In function `ForInfoListT<ForLoopInfoT, 32ull>::resize(unsigned long long)':
basic_fun.cpp:(.text._ZN12ForInfoListTI12ForLoopInfoTLy32EE6resizeEy[_ZN12ForInfoListTI12ForLoopInfoTLy32EE6resizeEy]+0x17e): undefined reference to `operator delete[](void*, unsigned int)'
src/CMakeFiles/gdl.dir/dcommon.cpp.o: In function `DCommon::~DCommon()':
dcommon.cpp:(.text+0xf5): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/dcommon.cpp.o: In function `DCommon::~DCommon()':
dcommon.cpp:(.text+0x154): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/dcommon.cpp.o: In function `DCommonRef::~DCommonRef()':
dcommon.cpp:(.text+0x3fd): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/dcommon.cpp.o: In function `DCommon::AddVar(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)':
dcommon.cpp:(.text+0x482): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/dcompiler.cpp.o: In function `DCompiler::ForwardFunction(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)':
dcompiler.cpp:(.text+0x226): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/dcompiler.cpp.o:dcompiler.cpp:(.text+0x314): more undefined references to `operator delete(void*, unsigned int)' follow
src/CMakeFiles/gdl.dir/envt.cpp.o: In function `ForInfoListT<ForLoopInfoT, 32ull>::~ForInfoListT()':
envt.cpp:(.text._ZN12ForInfoListTI12ForLoopInfoTLy32EED2Ev[_ZN12ForInfoListTI12ForLoopInfoTLy32EED5Ev]+0x76): undefined reference to `operator delete[](void*, unsigned int)'
src/CMakeFiles/gdl.dir/envt.cpp.o: In function `EnvUDT::~EnvUDT()':
envt.cpp:(.text._ZN6EnvUDTD2Ev[_ZN6EnvUDTD5Ev]+0xca): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/extrat.cpp.o: In function `ExtraT::ResolveExtra(EnvBaseT*)':
extrat.cpp:(.text+0x1aaa): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/fmtnode.cpp.o: In function `FMTNode::~FMTNode()':
fmtnode.cpp:(.text+0x44): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/gdlexception.cpp.o: In function `WarnAboutObsoleteRoutine(antlr::ASTRefCount<DNode>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)':
gdlexception.cpp:(.text+0x1c6f): undefined reference to `operator delete(void*, unsigned int)'
gdlexception.cpp:(.text+0x1eab): undefined reference to `operator delete(void*, unsigned int)'
src/CMakeFiles/gdl.dir/gdlxstream.cpp.o:gdlxstream.cpp:(.text._ZN10GDLXStreamD0Ev[_ZN10GDLXStreamD5Ev]+0x1d): more undefined references to `operator delete(void*, unsigned int)' follow
PR: 219300
Reported by: pkg-fallout
Submitted by: rakuco
2017-09-27 00:32:04 +02:00
|
|
|
# On FreeBSD < 11 libc++ lacks support for sized delete operators.
|
|
|
|
# GCC dropped the builtin version of these operators in 6+ by
|
|
|
|
# defaulting to gnu++14. Force c++11 instead.
|
|
|
|
# For a more detailed discussion see:
|
|
|
|
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219484
|
|
|
|
USE_CXXSTD= gnu++11
|
|
|
|
|
2010-09-14 21:23:00 +02:00
|
|
|
# Disable ncurses and readline from ports
|
2013-09-19 18:32:27 +02:00
|
|
|
# Disable ImageMagick (does'nt work with plplot because dynamic drivers
|
|
|
|
# are enabled by default)
|
2014-10-12 10:34:44 +02:00
|
|
|
# TODO: add a slave port for mpich
|
2017-01-07 20:22:01 +01:00
|
|
|
# TODO: create a port for Cmsvlib http://cow.physics.wisc.edu/~craigm/idl/down/cmsvlib.tar.gz
|
|
|
|
# TODO: create a port for Astron http://idlastro.gsfc.nasa.gov/ftp/astron.tar.gz
|
|
|
|
# TODO: create a port for TexToIdl http://physics.mnstate.edu/mcraig/textoidl/textoidl-2-1-2.tar
|
|
|
|
|
2018-04-07 22:06:19 +02:00
|
|
|
CMAKE_ARGS= -DREADLINEDIR:STRING="/usr" \
|
2018-12-04 08:22:02 +01:00
|
|
|
-DOPENMP:BOOL=NO \
|
2019-11-23 19:05:22 +01:00
|
|
|
-DNCURSESDIR:STRING="/usr"
|
2016-01-07 21:48:42 +01:00
|
|
|
CPPFLAGS+= ${CFLAGS} -fno-inline -DNPY_NO_DEPRECATED_API -DNPY_1_7_API_VERSION
|
2019-06-27 05:37:10 +02:00
|
|
|
CXXFLAGS+= -std=gnu++11 -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1
|
2015-03-24 23:17:41 +01:00
|
|
|
LDFLAGS+= -lpthread -L${LOCALBASE}/lib
|
2005-10-31 19:48:23 +01:00
|
|
|
|
|
|
|
SLAVEDIRS= science/py-gnudatalanguage
|
|
|
|
|
2019-11-23 19:05:22 +01:00
|
|
|
# Upstream prefer GraphicsMagick over ImageMackick but ATM it fails
|
|
|
|
# see https://github.com/gnudatalanguage/gdl/issues/611
|
|
|
|
#OPTIONS_DEFINE= EIGEN EXAMPLES FFTW GLPK GRAPHICSMAGICK GRIB HDF5 LIBPROJ4 MPI NETCDF PYTHON UDUNITS
|
|
|
|
#OPTIONS_DEFAULT=EIGEN FFTW GLPK GRAPHICSMAGICK GRIB HDF5 LIBPROJ4 NETCDF PYTHON UDUNITS
|
|
|
|
OPTIONS_DEFINE= EIGEN EXAMPLES FFTW GLPK IMAGEMAGICK GRIB HDF5 LIBPROJ4 MPI NETCDF PYTHON UDUNITS
|
|
|
|
OPTIONS_DEFAULT=EIGEN FFTW GLPK IMAGEMAGICK GRIB HDF5 LIBPROJ4 NETCDF PYTHON UDUNITS
|
2014-07-05 00:08:14 +02:00
|
|
|
|
2018-10-02 23:54:14 +02:00
|
|
|
EIGEN_DESC= Eigen3 support (boost performance)
|
2018-01-02 17:49:24 +01:00
|
|
|
EIGEN_USES= eigen:3
|
2014-10-12 10:34:44 +02:00
|
|
|
EIGEN_CMAKE_ON= -DEIGEN3:BOOL=YES
|
|
|
|
EIGEN_CMAKE_OFF= -DEIGEN3:BOOL=NO
|
2005-10-31 19:48:23 +01:00
|
|
|
|
2016-04-01 16:25:16 +02:00
|
|
|
FFTW_LIB_DEPENDS= libfftw3.so:math/fftw3 \
|
|
|
|
libfftw3f.so:math/fftw3-float
|
2014-10-12 10:34:44 +02:00
|
|
|
FFTW_CMAKE_ON= -DFFTW:BOOL=YES
|
|
|
|
FFTW_CMAKE_OFF= -DFFTW:BOOL=NO
|
2005-10-31 19:48:23 +01:00
|
|
|
|
2018-04-07 22:06:19 +02:00
|
|
|
GLPK_DESC= Support GLPK for Simplex (Linear programming)
|
|
|
|
GLPK_LIB_DEPENDS= libglpk.so:math/glpk
|
|
|
|
GLPK_CMAKE_ON= -DGLPK=ON:BOOL=YES
|
|
|
|
GLPK_CMAKE_OFF= -DGLPK=OFF:BOOL=NO
|
|
|
|
|
2019-11-23 19:05:22 +01:00
|
|
|
# Temporary swith to ImageMagick
|
|
|
|
#GRAPHICSMAGICK_DESC= Support GraphicsMagick
|
|
|
|
#GRAPHICSMAGICK_LIB_DEPENDS= libGraphicsMagick.so:graphics/GraphicsMagick
|
|
|
|
#GRAPHICSMAGICK_CMAKE_ON= -DGRAPHICSMAGICK:BOOL=YES
|
|
|
|
#GRAPHICSMAGICK_CMAKE_OFF= -DGRAPHICSMAGICK:BOOL=NO
|
|
|
|
IMAGEMAGICK_DESC= Support ImageMagick
|
|
|
|
IMAGEMAGICK_LIB_DEPENDS=libMagick++-6.so:graphics/ImageMagick6
|
|
|
|
IMAGEMAGICK_CMAKE_ON= -DGRAPHICSMAGICK:BOOL=NO -DMAGICK:BOOL=YES -DMAGICKDIR=${LOCALBASE}
|
|
|
|
IMAGEMAGICK_CMAKE_OFF= -DMAGICK:BOOL=NO
|
2005-10-31 19:48:23 +01:00
|
|
|
|
2014-10-12 10:34:44 +02:00
|
|
|
GRIB_DESC= Support GRIB messages
|
2016-04-01 16:25:16 +02:00
|
|
|
GRIB_LIB_DEPENDS= libgrib_api.so:science/grib_api
|
2014-10-12 10:34:44 +02:00
|
|
|
GRIB_CMAKE_ON= -DGRIB:BOOL=YES
|
|
|
|
GRIB_CMAKE_OFF= -DGRIB:BOOL=NO
|
2005-10-31 19:48:23 +01:00
|
|
|
|
2016-04-01 16:25:16 +02:00
|
|
|
HDF5_LIB_DEPENDS= libhdf5.so:science/hdf5
|
2014-10-12 10:34:44 +02:00
|
|
|
HDF5_CMAKE_ON= -DHDF5:BOOL=YES
|
|
|
|
HDF5_CMAKE_OFF= -DHDF5:BOOL=NO -DHDF:BOOL=NO
|
2013-10-11 11:35:03 +02:00
|
|
|
|
2014-10-12 10:34:44 +02:00
|
|
|
LIBPROJ4_DESC= Support cartographic processes
|
2017-01-08 01:06:42 +01:00
|
|
|
LIBPROJ4_LIB_DEPENDS= libproj.so:graphics/proj
|
2014-10-12 10:34:44 +02:00
|
|
|
LIBPROJ4_CMAKE_ON= -DLIBPROJ4:BOOL=YES
|
|
|
|
LIBPROJ4_CMAKE_OFF= -DLIBPROJ4:BOOL=NO
|
|
|
|
|
2018-10-02 23:54:14 +02:00
|
|
|
MPI_LIB_DEPENDS= libmpich.so:net/mpich
|
2018-12-04 08:22:02 +01:00
|
|
|
MPI_CMAKE_ON= -DMPICH:BOOL=ON
|
|
|
|
MPI_CMAKE_OFF= -DMPICH:BOOL=OFF
|
2014-10-12 10:34:44 +02:00
|
|
|
|
2016-04-01 16:25:16 +02:00
|
|
|
NETCDF_LIB_DEPENDS= libnetcdf.so:science/netcdf
|
2014-10-12 10:34:44 +02:00
|
|
|
NETCDF_CMAKE_ON= -DNETCDF:BOOL=YES -DHDF:BOOL=NO
|
|
|
|
NETCDF_CMAKE_OFF= -DNETCDF:BOOL=NO
|
|
|
|
|
2017-11-30 16:50:30 +01:00
|
|
|
PYTHON_USES= python:2.7
|
2014-10-12 10:34:44 +02:00
|
|
|
PYTHON_BUILD_DEPENDS= ${PYNUMPY}
|
|
|
|
PYTHON_RUN_DEPENDS= ${PYNUMPY} \
|
2020-09-19 16:15:42 +02:00
|
|
|
${PYTHON_PKGNAMEPREFIX}matplotlib2>0:math/py-matplotlib2@${PY_FLAVOR}
|
2014-10-12 10:34:44 +02:00
|
|
|
PYTHON_CMAKE_ON= -DPYTHON:BOOL=YES -DPYTHONVERSION:STRING="${PYTHON_VER}"
|
|
|
|
PYTHON_CMAKE_OFF= -DPYTHON:BOOL=NO
|
|
|
|
|
2018-12-04 08:22:02 +01:00
|
|
|
# QHULL IS NOT NEEDED YET!
|
|
|
|
#QHULL_DESC= Enable Triangulate and Qhull support
|
|
|
|
#QHULL_LIB_DEPENDS= libqhull.so:math/qhull
|
|
|
|
#QHULL_CMAKE_ON= -DQHULL:BOOL=YES
|
|
|
|
#QHULL_CMAKE_OFF= -DQHULL:BOOL=NO
|
2016-01-07 21:48:42 +01:00
|
|
|
|
2016-04-01 16:25:16 +02:00
|
|
|
UDUNITS_LIB_DEPENDS= libudunits2.so:science/udunits
|
2014-10-12 10:34:44 +02:00
|
|
|
UDUNITS_CMAKE_ON= -DUDUNITS:BOOL=YES
|
|
|
|
UDUNITS_CMAKE_OFF= -DUDUNITS:BOOL=NO
|
2013-10-11 11:35:03 +02:00
|
|
|
|
2014-10-12 10:34:44 +02:00
|
|
|
.if defined(BUILD_PYTHON_MODULE)
|
|
|
|
CATEGORIES+= python
|
2018-12-04 08:22:02 +01:00
|
|
|
CMAKE_ARGS+= -DPYTHON_MODULE:BOOL=YES
|
2017-11-02 05:07:23 +01:00
|
|
|
PLIST= ${.CURDIR}/pkg-plist.pymod
|
2005-10-31 19:48:23 +01:00
|
|
|
.else
|
2014-10-12 10:34:44 +02:00
|
|
|
CMAKE_ARGS+= -DPYTHON_MODULE:BOOL=NO
|
2005-10-31 19:48:23 +01:00
|
|
|
.endif
|
|
|
|
|
|
|
|
.if defined(BUILD_PYTHON_MODULE)
|
|
|
|
do-install:
|
2014-10-12 10:34:44 +02:00
|
|
|
${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}
|
2018-04-07 22:06:19 +02:00
|
|
|
${INSTALL_DATA} ${INSTALL_WRKSRC}/src/GDL.so ${STAGEDIR}${PYTHON_SITELIBDIR}/
|
2005-10-31 19:48:23 +01:00
|
|
|
.endif
|
|
|
|
|
|
|
|
.if !defined(BUILD_PYTHON_MODULE)
|
2016-12-02 12:58:21 +01:00
|
|
|
post-install:
|
2013-10-11 11:35:03 +02:00
|
|
|
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/testsuite
|
|
|
|
(cd ${WRKSRC}/testsuite && ${COPYTREE_SHARE} \* ${STAGEDIR}${EXAMPLESDIR}/testsuite/)
|
2005-10-31 19:48:23 +01:00
|
|
|
.endif
|
|
|
|
|
|
|
|
.if defined(MAINTAINER_MODE)
|
2007-03-23 23:20:25 +01:00
|
|
|
regression-test: install
|
2005-10-31 19:48:23 +01:00
|
|
|
. if defined(BUILD_PYTHON_MODULE)
|
|
|
|
@${ECHO_CMD} 'import GDL' > ${WRKDIR}/testgdl.py
|
|
|
|
@${ECHO_CMD} 'print GDL.function("sin",(1,))' >> ${WRKDIR}/testgdl.py
|
|
|
|
${PYTHON_CMD} ${WRKDIR}/testgdl.py
|
|
|
|
. else
|
2007-07-17 22:43:11 +02:00
|
|
|
@${ECHO_CMD} ".RUN ${EXAMPLESDIR}/testsuite/test_suite.pro" \
|
|
|
|
> ${WRKDIR}/testgdl
|
2005-10-31 19:48:23 +01:00
|
|
|
@${ECHO_CMD} "exit" >> ${WRKDIR}/testgdl
|
|
|
|
${PREFIX}/bin/gdl < ${WRKDIR}/testgdl
|
|
|
|
. endif
|
|
|
|
.endif
|
|
|
|
|
2015-04-03 13:26:48 +02:00
|
|
|
.include <bsd.port.mk>
|