Prototype MacPorts PortFile: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(Add -pthread and -D_THREAD_SAFE to fflags and cflags. Add -pthread to ldflags) |
||
Line 10: | Line 10: | ||
name octave-local | name octave-local | ||
version 3.7.0+ | version 3.7.0+ | ||
revision | revision 7 | ||
conflicts octave octave-devel | conflicts octave octave-devel | ||
categories math science | categories math science | ||
Line 87: | Line 87: | ||
TEXI2DVI="${prefix}/bin/texi2dvi" \ | TEXI2DVI="${prefix}/bin/texi2dvi" \ | ||
TEXI2PDF="${prefix}/bin/texi2pdf" | TEXI2PDF="${prefix}/bin/texi2pdf" | ||
configure. | configure.fflags -O0 -ggdb3 -D_THREAD_SAFE -pthread -gstabs | ||
configure.ldflags | configure.cflags -O0 -ggdb3 -D_THREAD_SAFE -pthread -gstabs | ||
configure.ldflags -pthread | |||
test.run yes | test.run yes | ||
Line 152: | Line 153: | ||
if {${gcc_version} != ""} { | if {${gcc_version} != ""} { | ||
set gcc_version_join [join [split ${gcc_version} "."] ""] | set gcc_version_join [join [split ${gcc_version} "."] ""] | ||
configure.ldflags "${prefix}/lib/gcc${gcc_version_join}/libstdc++.6.dylib" | configure.ldflags "${prefix}/lib/gcc${gcc_version_join}/libstdc++.6.dylib -pthread" | ||
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 169: | Line 170: | ||
livecheck.type regex | livecheck.type regex | ||
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+)*)</nowiki> | livecheck.regex Version (\\d+(\\.\\d+)*) | ||
</nowiki> |
Revision as of 19:34, 26 June 2012
This prototype MacPorts portfile is intended to be used to produce a Octave App bundle for MacOS X. Before using it, please verify that the version number of Octave is correct. If a change is made to the file, it is recommended that the revision number be incremented to ensure that MacPorts recognizes that the port is outdated and in need of being upgraded.
This portfile deviates significantly from the Octave portfile provided by MacPorts. Specifically, this portfile has fltk-devel, epstool, pstoedit, and transfig as required dependencies. In addition, METIS has been removed, as it's license is not compatible with GPL.
# -*- 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$ PortSystem 1.0 name octave-local version 3.7.0+ revision 7 conflicts octave octave-devel categories math science maintainers michaelld openmaintainer platforms darwin description a Matlab-like environment for numerical analysis long_description Octave provides a convenient command line interface \ for solving linear and nonlinear problems numerically, \ using a language that is mostly compatible with Matlab. \ It is easily extensible and customizable via \ user-defined functions or using dynamically loaded \ modules written in e.g. C++, C or Fortran. homepage http://www.gnu.org/software/octave/ master_sites http://alpha.gnu.org/gnu/octave/ dist_subdir octave distname octave-${version} checksums md5 a9849cbead1c6f02a25a22a3142d1c1c \ sha1 1ee3fcdfcdcea91b4859191f8e4664ca7965943f \ rmd160 2136309873c105bd9b06e01ed5726a4a281074f4 depends_build port:bison \ port:flex \ port:gawk \ port:gperf \ port:grep \ port:gsed \ path:bin/perl:perl5 \ port:texinfo depends_lib port:curl \ port:fftw-3 \ port:fftw-3-single \ port:ftgl \ port:fltk-devel \ port:ghostscript \ port:glpk \ port:GraphicsMagick \ port:gnuplot \ port:hdf5-18 \ port:less \ port:ncurses \ port:pcre \ port:readline \ port:qhull \ port:qrupdate \ port:SuiteSparse depends_run port:epstool \ port:transfig \ port:pstoedit universal_variant no # do not use CLANG (yet) if {${configure.compiler} == "clang"} { configure.compiler llvm-gcc-4.2 } configure.args --disable-dependency-tracking \ --without-x \ --disable-docs \ --with-cholmod="-lcholmod" # octave uses a number of other ports to create sources from template: # perl, gawk, gsed, flex, bison, texinfo. Make sure these are the # MacPorts' versions. Python is not used if perl is available, so # clear it out. grep is checked for in 'configure', but not used # except inside that script; include it here for completion. configure.perl ${prefix}/bin/perl configure.python ' ' configure.awk ${prefix}/bin/gawk configure.env-append GREP="${prefix}/bin/grep" \ SED="${prefix}/bin/gsed" \ TEXI2DVI="${prefix}/bin/texi2dvi" \ TEXI2PDF="${prefix}/bin/texi2pdf" configure.fflags -O0 -ggdb3 -D_THREAD_SAFE -pthread -gstabs configure.cflags -O0 -ggdb3 -D_THREAD_SAFE -pthread -gstabs configure.ldflags -pthread test.run yes test.target check variant gcc43 description {build with the macports gcc43 toolchain} conflicts gcc46 gcc45 gcc44 g95 {} variant gcc44 description {build with the macports gcc44 toolchain} conflicts gcc46 gcc45 gcc43 g95 {} variant gcc45 description {build with the macports gcc45 toolchain} conflicts gcc46 gcc44 gcc43 g95 {} variant gcc46 description {build with the macports gcc45 toolchain} conflicts gcc45 gcc44 gcc43 g95 {} variant g95 description {build with g95} conflicts gcc43 gcc44 gcc45 gcc46 { depends_build-append port:g95 configure.f77 "${prefix}/bin/g95" } variant atlas description {use BLAS from ATLAS} conflicts accelerate { depends_lib-append port:atlas } variant accelerate description {use BLAS from Apple's Accelerate.framework} conflicts atlas { depends_lib-append port:dotwrp configure.args-append --with-blas="-ldotwrp -Wl,-framework -Wl,Accelerate" configure.args-append --with-lapack="-Wl,-framework -Wl,Accelerate" } if {[variant_isset g95]} { default_variants +accelerate } elseif {![variant_isset accelerate]} { default_variants +atlas } # check for GCC / G95 variants. The default here must match the # default found in the 'atlas' port (but, this is not checked for). # check for setting the default variant (gcc44) if { ![variant_isset gcc43] && ![variant_isset gcc44] && \ ![variant_isset gcc45] && ![variant_isset gcc46] && \ ![variant_isset g95] } { default_variants +gcc44 } # check if the user disabled just the default variant: -gcc44 if { ![variant_isset gcc43] && ![variant_isset gcc44] && \ ![variant_isset gcc45] && ![variant_isset gcc46] && \ ![variant_isset g95] } { error "You cannot use the variant -gcc44 alone." } set gcc_version "" if {[variant_isset gcc43]} { set gcc_version "4.3" } elseif {[variant_isset gcc44]} { set gcc_version "4.4" } elseif {[variant_isset gcc45]} { set gcc_version "4.5" } elseif {[variant_isset gcc46]} { set gcc_version "4.6" } if {${gcc_version} != ""} { set gcc_version_join [join [split ${gcc_version} "."] ""] configure.ldflags "${prefix}/lib/gcc${gcc_version_join}/libstdc++.6.dylib -pthread" depends_build-append port:gcc${gcc_version_join} configure.compiler macports-gcc-${gcc_version} } variant docs description {Enable creation and installation of documentation} { depends_run-append port:texlive-basic configure.args-replace s|--disable-docs|--enable-docs| } variant x11 description {Enable use of X11} { configure.args-replace s|--without-x|--with-x| configure.args-append --x-includes=${prefix} } livecheck.type regex livecheck.url http://www.gnu.org/software/octave/news.html livecheck.regex Version (\\d+(\\.\\d+)*)