364
edits
(Remove "-pthread" as it triggers Qt4's moc command assume Octave's include files are placed in a "thread" subdirectory) |
(new portfile for Octave 3.6.4) |
||
Line 4: | Line 4: | ||
<nowiki># -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4 | <nowiki># -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4 | ||
# $Id$ | # $Id: Portfile 106065 2013-05-14 09:28:04Z ryandesign@macports.org $ | ||
PortSystem 1.0 | PortSystem 1.0 | ||
name octave-local | name octave-local | ||
version 3. | version 3.6.4 | ||
revision | revision 3 | ||
conflicts octave | conflicts octave, octave-devel | ||
categories math science | categories math science | ||
maintainers michaelld openmaintainer | maintainers michaelld openmaintainer | ||
license GPL-3 | |||
platforms darwin | platforms darwin | ||
description a Matlab-like environment for numerical analysis | description a Matlab-like environment for numerical analysis | ||
long_description Octave provides a convenient command line interface \ | long_description Octave provides a convenient command line interface \ | ||
Line 27: | Line 29: | ||
dist_subdir octave | dist_subdir octave | ||
distname octave-${version} | distname octave-${version} | ||
use_bzip2 yes | |||
checksums | checksums rmd160 b0356f0c5d9366b8129d72ac58bbde837fee1a95 \ | ||
sha256 fa185df9591f5d740f4d37ff6eaf06db576fdd3e0ddd9d0737365799e5d1c962 | |||
depends_build port:bison \ | depends_build port:bison \ | ||
Line 37: | Line 39: | ||
port:gperf \ | port:gperf \ | ||
port:grep \ | port:grep \ | ||
path:bin/perl:perl5 \ | path:bin/perl:perl5 \ | ||
port:pkgconfig \ | |||
port:texinfo | port:texinfo | ||
depends_lib | depends_lib port:curl \ | ||
port:fftw-3 \ | port:fftw-3 \ | ||
port:fftw-3-single \ | port:fftw-3-single \ | ||
port:ftgl \ | port:ftgl \ | ||
port:ghostscript \ | port:ghostscript \ | ||
port:glpk \ | port:glpk \ | ||
port:GraphicsMagick \ | port:GraphicsMagick \ | ||
port:gnuplot \ | port:gnuplot \ | ||
port:gsed \ | |||
port:hdf5-18 \ | port:hdf5-18 \ | ||
port:less \ | port:less \ | ||
port:ncurses \ | port:ncurses \ | ||
port:pcre \ | port:pcre \ | ||
port:qhull \ | port:qhull \ | ||
port:qrupdate \ | port:qrupdate \ | ||
port:readline \ | |||
port:SuiteSparse | port:SuiteSparse | ||
depends_run port:epstool \ | depends_run port:epstool \ | ||
port:pstoedit | port:pstoedit | ||
# allow us to disable checking for FLTK | |||
# via the environment variable "FLTK_CONFIG" | |||
patchfiles-append patch-configure.diff | |||
universal_variant no | universal_variant no | ||
# | # octave requires a fortran compiler, so require the use of one of the | ||
# MacPorts GCC ports (for now). | |||
compiler.blacklist gcc-3.3 gcc-4.0 gcc-4.2 llvm-gcc-4.2 \ | |||
apple-gcc-4.0 apple-gcc-4.2 clang macports-clang-2.9 \ | |||
macports-clang-3.0 macports-clang-3.1 macports-clang-3.2 \ | |||
macports-clang-3.3 macports-llvm-gcc-4.2 | |||
configure.args --disable-dependency-tracking \ | configure.args --disable-dependency-tracking \ | ||
--without-x \ | --without-x \ | ||
--disable-docs \ | --disable-docs \ | ||
--with-cholmod="-lcholmod" | --with-cholmod="-lcholmod" \ | ||
--with-umfpack="-lumfpack -lSuiteSparse" | |||
# octave uses a number of other ports to create sources from template: | # octave uses a number of other ports to create sources from template: | ||
Line 90: | Line 96: | ||
SED="${prefix}/bin/gsed" \ | SED="${prefix}/bin/gsed" \ | ||
TEXI2DVI="${prefix}/bin/texi2dvi" \ | TEXI2DVI="${prefix}/bin/texi2dvi" \ | ||
TEXI2PDF="${prefix}/bin/texi2pdf" | TEXI2PDF="${prefix}/bin/texi2pdf" \ | ||
configure.cppflags | APPLE_CXX="/usr/bin/g++" | ||
configure. | configure.cppflags | ||
configure.ldflags | |||
pre-build { | |||
reinplace "/'display\.cc'/s@\$(CXX)@\$(APPLE_CXX)@g" \ | |||
${worksrcpath}/src/Makefile | |||
} | |||
build.env-append APPLE_CXX="/usr/bin/g++" | |||
test.run yes | test.run yes | ||
test.target check | test.target check | ||
platform darwin 11 { | |||
# 10.7 requires an extra patch; this patch will break the build on | |||
# 10.6 and prior, so apply it only under 10.7. | |||
patchfiles-append patch-src-display.cc.diff | |||
} | |||
platform darwin 12 { | |||
# In 10.8 patch is required as above, also | |||
# the LANG environment variable needs to | |||
# be set to "C" otherwise /usr/bin/sed | |||
# fails with an error, if you installed gsed | |||
# with default name this should have no effect. | |||
patchfiles-append patch-src-display.cc.diff | |||
build.args-append LANG="C" | |||
} | |||
variant | variant gcc43 description {build with the macports gcc43 toolchain} conflicts gcc48 gcc47 gcc46 gcc45 gcc44 g95 {} | ||
variant | variant gcc44 description {build with the macports gcc44 toolchain} conflicts gcc48 gcc47 gcc46 gcc45 gcc43 g95 {} | ||
variant | variant gcc45 description {build with the macports gcc45 toolchain} conflicts gcc48 gcc47 gcc46 gcc44 gcc43 g95 {} | ||
variant g95 description {build with g95} conflicts gcc43 gcc44 | variant gcc46 description {build with the macports gcc46 toolchain} conflicts gcc48 gcc47 gcc45 gcc44 gcc43 g95 {} | ||
variant gcc47 description {build with the macports gcc47 toolchain} conflicts gcc48 gcc46 gcc45 gcc44 gcc43 g95 {} | |||
variant gcc48 description {build with the macports gcc48 toolchain} conflicts gcc47 gcc46 gcc45 gcc44 gcc43 g95 {} | |||
variant g95 description {build with g95} conflicts gcc48 gcc47 gcc46 gcc45 gcc44 gcc43 { | |||
depends_build-append port:g95 | depends_build-append port:g95 | ||
configure.f77 "${prefix}/bin/g95" | configure.f77 "${prefix}/bin/g95" | ||
Line 119: | Line 152: | ||
variant accelerate description {use BLAS from Apple's Accelerate.framework} conflicts atlas { | variant accelerate description {use BLAS from Apple's Accelerate.framework} conflicts atlas { | ||
depends_lib-append port:dotwrp | depends_lib-append port:dotwrp | ||
configure.args-append --with-blas="-ldotwrp -framework Accelerate" | configure.args-append --with-blas="-ldotwrp -Wl,-framework -Wl,Accelerate" | ||
configure.args-append --with-lapack="-framework Accelerate" | configure.args-append --with-lapack="-Wl,-framework -Wl,Accelerate" | ||
} | } | ||
Line 132: | Line 165: | ||
# default found in the 'atlas' port (but, this is not checked for). | # default found in the 'atlas' port (but, this is not checked for). | ||
# check for setting the default variant ( | # check for setting the default variant (gcc47) | ||
if { ![variant_isset gcc43] && ![variant_isset gcc44] && \ | |||
![variant_isset gcc46] && ![variant_isset g95] } { | if { ![variant_isset gcc43] && ![variant_isset gcc44] && \ | ||
default_variants + | ![variant_isset gcc45] && ![variant_isset gcc46] && \ | ||
![variant_isset gcc47] && ![variant_isset gcc48] && \ | |||
![variant_isset g95] } { | |||
default_variants +gcc47 | |||
} | } | ||
# check if the user disabled just the default variant: - | # check if the user disabled just the default variant: -gcc47 | ||
if { ![variant_isset gcc43] && ![variant_isset gcc44] && \ | |||
if { ![variant_isset gcc43] && ![variant_isset gcc44] && \ | |||
![variant_isset gcc45] && ![variant_isset gcc46] && \ | ![variant_isset gcc45] && ![variant_isset gcc46] && \ | ||
![variant_isset gcc47] && ![variant_isset gcc48] && \ | |||
![variant_isset g95] } { | ![variant_isset g95] } { | ||
pre-fetch { | pre-fetch { | ||
Line 156: | Line 194: | ||
} elseif {[variant_isset gcc46]} { | } elseif {[variant_isset gcc46]} { | ||
set gcc_version "4.6" | set gcc_version "4.6" | ||
} elseif {[variant_isset gcc47]} { | |||
set gcc_version "4.7" | |||
} elseif {[variant_isset gcc48]} { | |||
set gcc_version "4.8" | |||
} | } | ||
if {${gcc_version} != ""} { | if {${gcc_version} != ""} { | ||
set gcc_version_join [join [split ${gcc_version} "."] ""] | set gcc_version_join [join [split ${gcc_version} "."] ""] | ||
configure.ldflags | configure.ldflags "-L${prefix}/lib/gcc${gcc_version_join}" | ||
configure.ldflags-append -lstdc++ \ | |||
-lgfortran | |||
depends_build-append port:gcc${gcc_version_join} | depends_build-append port:gcc${gcc_version_join} | ||
configure.compiler macports-gcc-${gcc_version} | configure.compiler macports-gcc-${gcc_version} | ||
Line 167: | Line 211: | ||
variant docs description {Enable creation and installation of documentation} { | variant docs description {Enable creation and installation of documentation} { | ||
depends_run-append port:texlive-basic | depends_run-append port:texlive-basic | ||
# latex needed for lcircle10 font etc. | |||
depends_build-append port:texlive-latex | |||
configure.args-replace s|--disable-docs|--enable-docs| | configure.args-replace s|--disable-docs|--enable-docs| | ||
} | } | ||
Line 173: | Line 219: | ||
configure.args-replace s|--without-x|--with-x| | configure.args-replace s|--without-x|--with-x| | ||
configure.args-append --x-includes=${prefix} | configure.args-append --x-includes=${prefix} | ||
} | |||
variant fltk description {Include FLTK for graphical front-end} { | |||
depends_lib-append path:lib/libfltk.dylib:fltk | |||
configure.env-delete FLTK_CONFIG=no | |||
} | } | ||
Line 178: | Line 229: | ||
livecheck.url http://www.gnu.org/software/octave/news.html | livecheck.url http://www.gnu.org/software/octave/news.html | ||
livecheck.regex Version (\\d+(\\.\\d+)*) | livecheck.regex Version (\\d+(\\.\\d+)*) | ||
</nowiki> | </nowiki> |
edits