2010-08-03 23:58:39 +00:00
|
|
|
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
|
2008-02-25 06:07:05 +00:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
PortSystem 1.0
|
|
|
|
|
PortGroup texlive 1.0
|
|
|
|
|
PortGroup xcodeversion 1.0
|
|
|
|
|
PortGroup wxWidgets 1.0
|
2004-02-07 19:46:43 +00:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
name gnuplot
|
2025-12-21 15:45:38 -06:00
|
|
|
version 6.0.4
|
|
|
|
|
revision 0
|
2021-01-10 18:22:56 -05:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
categories math science
|
2011-09-27 17:44:28 +00:00
|
|
|
# the license has some inconvenient requirements that we're not meeting
|
|
|
|
|
# to be allowed to distribute binaries
|
2014-11-12 23:01:43 +00:00
|
|
|
license Restrictive
|
2011-09-27 17:44:28 +00:00
|
|
|
# luckily nothing has to link against this
|
2014-11-12 23:01:43 +00:00
|
|
|
installs_libs no
|
2025-01-15 07:25:39 -06:00
|
|
|
maintainers {mps @Schamschula} openmaintainer
|
2004-02-16 19:17:27 +00:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
description A command-driven interactive function plotting program
|
2010-08-03 23:58:39 +00:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
long_description Gnuplot is a command-driven interactive function \
|
|
|
|
|
plotting program. Plots any number of functions, \
|
|
|
|
|
built up of C operators, C library functions, and \
|
|
|
|
|
some things C does not have like **, sgn(), etc. \
|
|
|
|
|
Also support for plotting data files, to compare \
|
|
|
|
|
actual data to theoretical curves.
|
2010-08-03 23:58:39 +00:00
|
|
|
|
2025-04-26 21:55:18 -04:00
|
|
|
homepage https://gnuplot.sourceforge.net/
|
2014-11-12 23:01:43 +00:00
|
|
|
master_sites sourceforge:project/gnuplot/gnuplot/${version}
|
|
|
|
|
dist_subdir ${name}/${version}
|
2010-10-01 16:58:19 +00:00
|
|
|
|
2025-12-21 15:45:38 -06:00
|
|
|
checksums rmd160 b3c4022efeb8459b45922e4f22277608e4356c8b \
|
|
|
|
|
sha256 458d94769625e73d5f6232500f49cbadcb2b183380d43d2266a0f9701aeb9c5b \
|
|
|
|
|
size 7549894
|
2010-08-03 23:58:39 +00:00
|
|
|
|
2018-05-14 21:33:44 -05:00
|
|
|
depends_build port:pkgconfig
|
2013-08-15 20:08:49 +00:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
depends_lib port:expat \
|
|
|
|
|
port:fontconfig \
|
|
|
|
|
port:gd2 \
|
2016-02-26 14:40:48 +00:00
|
|
|
path:lib/libcaca.dylib:libcaca \
|
2014-11-12 23:01:43 +00:00
|
|
|
port:libcerf \
|
|
|
|
|
port:libiconv \
|
2025-07-09 10:30:18 +02:00
|
|
|
path:include/turbojpeg.h:libjpeg-turbo \
|
2014-11-12 23:01:43 +00:00
|
|
|
port:libpng \
|
|
|
|
|
port:ncurses \
|
2025-07-09 10:30:18 +02:00
|
|
|
port:openspecfun \
|
2014-11-12 23:01:43 +00:00
|
|
|
port:readline \
|
2025-07-09 10:30:18 +02:00
|
|
|
port:webp \
|
2014-11-12 23:01:43 +00:00
|
|
|
port:zlib
|
2004-02-16 19:17:27 +00:00
|
|
|
|
2014-11-12 23:01:43 +00:00
|
|
|
minimum_xcodeversions \
|
|
|
|
|
{9 3.1}
|
2008-09-06 10:01:27 +00:00
|
|
|
|
2017-04-07 23:35:39 +02:00
|
|
|
patchfiles patch-configure.diff
|
2015-08-04 09:33:04 +00:00
|
|
|
|
2019-11-03 06:39:42 -07:00
|
|
|
# If the compiler defaults to C++20, a header file `version` exists.
|
|
|
|
|
# `-I$(top_builddir)` will find the local file VERSION instead.
|
|
|
|
|
patchfiles-append patch-cxx20.diff
|
|
|
|
|
|
2015-02-23 09:39:27 +00:00
|
|
|
configure.args --with-caca=${prefix} \
|
2014-11-12 23:01:43 +00:00
|
|
|
--with-gd=${prefix} \
|
2015-02-23 09:39:27 +00:00
|
|
|
--with-readline=${prefix} \
|
2014-11-12 23:01:43 +00:00
|
|
|
--without-aquaterm \
|
|
|
|
|
--without-x \
|
|
|
|
|
--infodir='\${prefix}/share/info' \
|
|
|
|
|
--mandir='\${prefix}/share/man' \
|
|
|
|
|
--disable-wxwidgets \
|
|
|
|
|
--without-bitmap-terminals \
|
|
|
|
|
--without-cairo \
|
|
|
|
|
--without-latex \
|
|
|
|
|
--without-lua \
|
2024-09-20 21:49:04 -04:00
|
|
|
--without-qt
|
2004-02-16 19:17:27 +00:00
|
|
|
|
2025-07-09 10:30:18 +02:00
|
|
|
# the configure script fails to correctly parse pkgconfig/libcerf.pc
|
|
|
|
|
configure.env LIBCERF_CFLAGS=-I${prefix}/include \
|
|
|
|
|
LIBCERF_LIBS=-L${prefix}/lib -lcerf
|
|
|
|
|
|
2012-08-28 10:10:54 +00:00
|
|
|
variant aquaterm description "Enable AquaTerm terminal" {
|
2015-02-23 09:39:27 +00:00
|
|
|
depends_lib-append port:aquaterm
|
|
|
|
|
configure.args-replace --without-aquaterm --with-aquaterm
|
|
|
|
|
configure.cflags-append "-F${frameworks_dir}"
|
|
|
|
|
configure.ldflags-append "-F${frameworks_dir}"
|
2012-08-21 05:25:35 +00:00
|
|
|
}
|
|
|
|
|
|
2013-08-02 01:09:41 +00:00
|
|
|
variant x11 {
|
2015-02-23 09:39:27 +00:00
|
|
|
configure.args-replace --without-x --with-x
|
|
|
|
|
depends_lib-append port:xpm
|
2012-08-10 17:29:21 +00:00
|
|
|
}
|
|
|
|
|
|
2012-05-01 16:04:54 +00:00
|
|
|
variant luaterm description "Enable lua-based terminals" {
|
2023-03-12 09:00:09 -07:00
|
|
|
PortGroup lua 1.0
|
|
|
|
|
|
2015-02-23 09:39:27 +00:00
|
|
|
configure.args-replace --without-lua --with-lua
|
2023-03-12 09:00:09 -07:00
|
|
|
build.args-append LUA=${lua.bin}
|
|
|
|
|
# other libraries add ${prefix}/include to the CPPFLAGS before ${configure.cppflags}
|
|
|
|
|
# so if lua is installed, its headers will be found
|
|
|
|
|
lua.finds_default yes
|
2012-05-01 16:04:54 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
variant pangocairo description "Enable cairo-based terminals" {
|
2015-02-23 09:39:27 +00:00
|
|
|
configure.args-delete --without-cairo
|
2012-05-01 16:04:54 +00:00
|
|
|
}
|
|
|
|
|
|
2013-08-29 07:29:56 +00:00
|
|
|
variant wxwidgets description "Enable wxt terminal" {
|
2025-07-24 22:25:50 +10:00
|
|
|
if {${os.platform} eq "darwin" && ${os.major} >= 16} {
|
|
|
|
|
wxWidgets.use wxWidgets-3.2
|
|
|
|
|
} else {
|
|
|
|
|
wxWidgets.use wxWidgets-3.0
|
|
|
|
|
}
|
2015-02-23 09:39:27 +00:00
|
|
|
depends_lib-append port:${wxWidgets.port}
|
|
|
|
|
configure.args-replace --disable-wxwidgets --with-wx=${wxWidgets.wxdir}
|
2011-10-02 23:29:27 +00:00
|
|
|
}
|
2007-04-15 09:35:07 +00:00
|
|
|
|
2015-02-23 09:39:27 +00:00
|
|
|
variant qt conflicts qt5 description "Enable qt terminal with Qt 4" {
|
2015-10-06 19:43:29 +00:00
|
|
|
PortGroup qt4 1.0
|
2021-01-09 23:09:51 -05:00
|
|
|
|
2015-02-23 09:39:27 +00:00
|
|
|
configure.args-replace --without-qt --with-qt=qt4
|
2011-11-02 22:01:06 +00:00
|
|
|
}
|
|
|
|
|
|
2015-02-23 09:39:27 +00:00
|
|
|
variant qt5 conflicts qt description "Enable qt terminal with Qt 5" {
|
2017-07-09 10:51:13 -07:00
|
|
|
# Latest versions of Qt require C++11
|
|
|
|
|
PortGroup qt5 1.0
|
2015-12-09 10:45:06 +00:00
|
|
|
|
2021-01-09 23:09:51 -05:00
|
|
|
compiler.cxx_standard 2011
|
2021-01-10 12:40:54 -05:00
|
|
|
configure.cxxflags-append -std=c++11
|
2017-07-09 10:51:13 -07:00
|
|
|
|
2024-09-20 07:35:43 +10:00
|
|
|
qt5.depends_component qtsvg \
|
2017-07-09 10:51:13 -07:00
|
|
|
qttools
|
2015-02-23 09:39:27 +00:00
|
|
|
|
|
|
|
|
configure.args-replace --without-qt --with-qt=qt5
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2013-03-20 02:29:39 +00:00
|
|
|
# Ideally one would enable just PMB by default, but '--with-bitmap-terminals'
|
|
|
|
|
# enables lots of other obsolete terminals which clutter the output of 'set term'.
|
|
|
|
|
variant old_bitmap_terminals description "Enable PBM (Portable Bit Map) and other older bitmap terminals" {
|
2015-02-23 09:39:27 +00:00
|
|
|
configure.args-replace --without-bitmap-terminals --with-bitmap-terminals
|
2008-02-25 06:07:05 +00:00
|
|
|
}
|
|
|
|
|
|
2024-09-20 07:35:43 +10:00
|
|
|
default_variants +luaterm +pangocairo
|
|
|
|
|
if {![variant_isset qt] && ![variant_isset qt5]} {
|
|
|
|
|
if {${os.platform} eq "darwin" && ${os.major} < 19} {
|
|
|
|
|
default_variants-append +qt
|
|
|
|
|
} else {
|
|
|
|
|
default_variants-append +qt5
|
|
|
|
|
}
|
|
|
|
|
}
|
2021-11-11 07:58:42 -05:00
|
|
|
|
|
|
|
|
# aquaterm is currently not building on 10.4
|
|
|
|
|
if {${os.platform} eq "darwin" && ${os.major} > 8} {
|
|
|
|
|
default_variants-append +aquaterm
|
|
|
|
|
}
|
|
|
|
|
# wxWidgets 3.0 requires 10.5 or later (or non-Darwin)
|
|
|
|
|
if {${os.platform} ne "darwin" || ${os.major} > 8} {
|
|
|
|
|
default_variants-append +wxwidgets
|
|
|
|
|
}
|
2011-11-19 10:58:42 +00:00
|
|
|
|
2014-05-17 19:21:54 +00:00
|
|
|
if {[variant_isset pangocairo] || [variant_isset wxwidgets]} {
|
2015-02-23 09:39:27 +00:00
|
|
|
depends_lib-append path:lib/pkgconfig/pango.pc:pango
|
2014-05-17 19:21:54 +00:00
|
|
|
}
|
|
|
|
|
|
2013-03-20 02:29:39 +00:00
|
|
|
# Building and installing TeX macro files for TikZ could/should be done by gnuplot's Makefile,
|
|
|
|
|
# but without a patch that would require a dependency on texlive.
|
|
|
|
|
# Apart from that the files would fly to the wrong place in TDS,
|
|
|
|
|
# so that plain TeX and ConTeXt could not find them (an upstream bug).
|
|
|
|
|
# So we 'manually' generate and copy the necessary files.
|
|
|
|
|
post-build {
|
|
|
|
|
if {[variant_isset luaterm]} {
|
2023-03-12 09:00:09 -07:00
|
|
|
system -W ${worksrcpath}/share/LaTeX "${lua.bin} ../../term/lua/gnuplot-tikz.lua style"
|
2013-03-20 02:29:39 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2004-02-16 19:17:27 +00:00
|
|
|
post-destroot {
|
2013-03-20 02:29:39 +00:00
|
|
|
if {[variant_isset luaterm]} {
|
|
|
|
|
set texmf ${destroot}${texlive_texmfports}
|
2014-05-17 21:10:28 +00:00
|
|
|
set luadir ${worksrcpath}/share/LaTeX
|
2013-03-20 02:29:39 +00:00
|
|
|
xinstall -d -m 0755 ${texmf}/tex/context/third/gnuplot-lua-tikz
|
|
|
|
|
xinstall -d -m 0755 ${texmf}/tex/generic/gnuplot-lua-tikz
|
|
|
|
|
xinstall -d -m 0755 ${texmf}/tex/latex/gnuplot-lua-tikz
|
|
|
|
|
xinstall -d -m 0755 ${texmf}/tex/plain/gnuplot-lua-tikz
|
|
|
|
|
|
|
|
|
|
xinstall -m 0644 ${luadir}/t-gnuplot-lua-tikz.tex ${texmf}/tex/context/third/gnuplot-lua-tikz
|
|
|
|
|
xinstall -m 0644 ${luadir}/gnuplot-lua-tikz-common.tex ${texmf}/tex/generic/gnuplot-lua-tikz
|
|
|
|
|
xinstall -m 0644 ${luadir}/gnuplot-lua-tikz.sty ${texmf}/tex/latex/gnuplot-lua-tikz
|
|
|
|
|
xinstall -m 0644 ${luadir}/gnuplot-lua-tikz.tex ${texmf}/tex/plain/gnuplot-lua-tikz
|
|
|
|
|
}
|
|
|
|
|
|
2013-08-02 01:09:41 +00:00
|
|
|
set destdocdir ${destroot}${prefix}/share/doc/${name}
|
|
|
|
|
xinstall -d -m 0755 ${destdocdir}
|
2015-02-23 09:39:27 +00:00
|
|
|
xinstall -m 0644 ${worksrcpath}/docs/${name}.pdf ${destdocdir}
|
2012-08-10 17:29:21 +00:00
|
|
|
|
2013-08-02 01:09:41 +00:00
|
|
|
# copy demo files
|
2014-05-17 21:10:28 +00:00
|
|
|
file copy ${worksrcpath}/demo ${destdocdir}
|
2013-08-02 01:09:41 +00:00
|
|
|
foreach {makefile} {Makefile Makefile.in Makefile.am Makefile.am.in} {
|
|
|
|
|
delete ${destdocdir}/demo/${makefile}
|
2012-08-10 17:29:21 +00:00
|
|
|
}
|
|
|
|
|
}
|